From nobody Sat Sep 12 02:12:04 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4hhZfs3DY7z6rl08 for ; Sat, 12 Sep 2026 02:12:05 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange x25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "YR2" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4hhZfr74PZz3QCJ for ; Sat, 12 Sep 2026 02:12:04 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1789179125; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=k9K1e4mLx8S2wTcKNbmZMkM1o1G72SA08thIHC71mVg=; b=bYbf0xHBDEFPoNjieu9xGVINZp2ughtNQsa11pq9MzAjhXXwRjn60KbKKt1bfCYIOoKEvv F5LX9yKaovejHJJ6uOGrTrt5yi9Uj3Pi1cEPX6JH6ujsDCS1xmlLHj3ojrHDpVUSP/MCcn ilJkeEECb2+f0aijEDuzotwHESDX77BGZA1apdd/rKB6beV9xwI4w2QuVYf/extDhxnBJ+ fAsAMdyo6zNUjd3ncK3LuDKr9E6ktSWOXWnP4C3+St/mIWAOQmpeMzAVZ3o2W4cace3gjK NAuNGEovB8K4W30ztgcOCxb+X0NbolFUYW0O6FFdT7nPdIKWFB2Dnnsis85vmg== ARC-Seal: i=1; a=rsa-sha256; d=freebsd.org; s=dkim; cv=none; t=1789179125; b=vJlSvWU20Vetffq62xQD9/ADAXLM1oQZpVMCxa1LjfhVVUt9g3J4+ZINp7jU1Ie52zNQol ocGMqqbX0dKMWstxelTPd6wYt3N7J/1jybEacdAY7KG0gdj66wh3gImLNxc84WYz1AFME+ XIG7i+50T/2BjwOHF9mKLFsjeuCGyGhJE5VvgP42elLL7cTcVvTLJFhdV3HFFfZdIHCcL5 Tu5MKsKV8R5taHYcw6UZ/lbTMkLJiap/GXzXKQ54EdUu313GbSSWyC4p8H5TvSODBXEjCB aI62ZEu+4qofwOU24h0sbLYgsZ9dYDqc0qGJpZnEYazwN+kXnaz2wL6kALv29A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1789179125; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=k9K1e4mLx8S2wTcKNbmZMkM1o1G72SA08thIHC71mVg=; b=WDECREBoTQInIQdKlEd848hzY0g3oqscKOnhtyxLHsV6BbBRQRZWSXalv9bndivBmNt4A9 voPTZJnxTzVgPhiY3Rv4a3MIC+jHeD9cht0dh4eNu2jxBshHvkJU/I4g/Jhqezlt9yz0ng nuXsQLkp4gpSoWaERIx5F3cP4O2BA/WqLPOenXnxskstsy3VUrjKK1FIBw2VUhy25viKDN j4zjhqa5KYCEnycp+eKa8+4vJ3hgbB+x1d8BadkZSvvEFsLrJHMKfZPwHdsISGKI7Jd6Kf OPloY5a2kzf4NAmqW6HIdrBzV1+I2UqA5Np+T1DdAOlMiTvd0gMjJQ9FjhiFTA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4hhZfr67r9zhBy for ; Sat, 12 Sep 2026 02:12:04 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 2480e by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Sat, 12 Sep 2026 02:12:04 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Justin Hibbits Subject: git: fc3eca391341 - main - powerpmac_thermal: Improve thermal regulation on G5 quad models List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org List-Id: List-Post: List-Help: List-Subscribe: List-Unsubscribe: List-Owner: Precedence: list MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhibbits X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: fc3eca391341f1d354340ef41e059c0fce6afa8e Auto-Submitted: auto-generated Date: Sat, 12 Sep 2026 02:12:04 +0000 Message-Id: <6aa4b4f4.2480e.79e0211f@gitrepo.freebsd.org> The branch main has been updated by jhibbits: URL: https://cgit.FreeBSD.org/src/commit/?id=fc3eca391341f1d354340ef41e059c0fce6afa8e commit fc3eca391341f1d354340ef41e059c0fce6afa8e Author: Justin Hibbits AuthorDate: 2025-03-10 03:10:49 +0000 Commit: Justin Hibbits CommitDate: 2026-09-12 02:05:06 +0000 powerpmac_thermal: Improve thermal regulation on G5 quad models Add a new "high temp" threshold below the max temp, in order to ramp the fans (or pump for liquid cooled quads) sooner, and avoid the maximum temperature. From the PR, this makes older G5 quads louder, but usable, instead of hitting max temperature and forcing a thermal shutdown. PR: 209202 Submitted by: gmbroome (PR) --- sys/powerpc/powermac/powermac_thermal.c | 6 +++--- sys/powerpc/powermac/powermac_thermal.h | 2 +- sys/powerpc/powermac/smu.c | 5 +++-- sys/powerpc/powermac/smusat.c | 5 +++-- 4 files changed, 10 insertions(+), 8 deletions(-) diff --git a/sys/powerpc/powermac/powermac_thermal.c b/sys/powerpc/powermac/powermac_thermal.c index a7e66cc2b80d..39490dca9cd4 100644 --- a/sys/powerpc/powermac/powermac_thermal.c +++ b/sys/powerpc/powermac/powermac_thermal.c @@ -42,7 +42,7 @@ #include "powermac_thermal.h" /* A 10 second timer for spinning down fans. */ -#define FAN_HYSTERESIS_TIMER 10 +#define FAN_HYSTERESIS_TIMER 30 static void fan_management_proc(void); static void pmac_therm_manage_fans(void); @@ -142,10 +142,10 @@ pmac_therm_manage_fans(void) average_excess = max_excess_zone = 0; SLIST_FOREACH(sensor, &sensors, entries) { temp = imin(sensor->last_val, - sensor->sensor->max_temp); + sensor->sensor->high_temp); frac_excess = (temp - sensor->sensor->target_temp)*100 / - (sensor->sensor->max_temp - temp + 1); + (sensor->sensor->high_temp - temp + 1); if (frac_excess < 0) frac_excess = 0; if (sensor->sensor->zone == fan->fan->zone) { diff --git a/sys/powerpc/powermac/powermac_thermal.h b/sys/powerpc/powermac/powermac_thermal.h index 96c6a8adfffe..4374416f7519 100644 --- a/sys/powerpc/powermac/powermac_thermal.h +++ b/sys/powerpc/powermac/powermac_thermal.h @@ -42,7 +42,7 @@ struct pmac_fan { }; struct pmac_therm { - int target_temp, max_temp; /* Tenths of a degree K */ + int target_temp, high_temp, max_temp; /* Tenths of a degree K */ char name[32]; int zone; diff --git a/sys/powerpc/powermac/smu.c b/sys/powerpc/powermac/smu.c index 8107ef8ef790..9025ec75ada4 100644 --- a/sys/powerpc/powermac/smu.c +++ b/sys/powerpc/powermac/smu.c @@ -1244,8 +1244,9 @@ smu_attach_sensors(device_t dev, phandle_t sensroot) if (sens->type == SMU_TEMP_SENSOR) { /* Make up some numbers */ - sens->therm.target_temp = 500 + 2731; /* 50 C */ - sens->therm.max_temp = 900 + 2731; /* 90 C */ + sens->therm.target_temp = 400 + 2732; /* 40 C */ + sens->therm.high_temp = 750 + 2732; /* 75 C */ + sens->therm.max_temp = 950 + 2732; /* 95 C */ sens->therm.read = (int (*)(struct pmac_therm *))smu_sensor_read; diff --git a/sys/powerpc/powermac/smusat.c b/sys/powerpc/powermac/smusat.c index 5639daa28501..7e9d7889e79d 100644 --- a/sys/powerpc/powermac/smusat.c +++ b/sys/powerpc/powermac/smusat.c @@ -181,8 +181,9 @@ smusat_attach(device_t dev) if (sens->type == SMU_TEMP_SENSOR) { /* Make up some numbers */ - sens->therm.target_temp = 500 + 2731; /* 50 C */ - sens->therm.max_temp = 900 + 2731; /* 90 C */ + sens->therm.target_temp = 400 + 2732; /* 40 C */ + sens->therm.high_temp = 750 + 2732; /* 75 C */ + sens->therm.max_temp = 950 + 2732; /* 95 C */ sens->therm.read = (int (*)(struct pmac_therm *))smusat_sensor_read; pmac_thermal_sensor_register(&sens->therm);