All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] hwmon: (asus-ec-sensors) add MAXIMUS IX EXTREME
@ 2026-10-15 16:09 ` Remy Demangeot via B4 Relay
  0 siblings, 0 replies; 3+ messages in thread
From: Remy Demangeot @ 2026-10-15 16:09 UTC (permalink / raw)
  To: Guenter Roeck, Jonathan Corbet, Shuah Khan, Randy Dunlap,
	Eugene Shalygin
  Cc: linux-hwmon, linux-doc, linux-kernel, Remy Demangeot

Add support for the ROG MAXIMUS IX EXTREME (Intel Z270). The board
uses the same EC layout as the PRIME Z270-A for the chipset and
T_Sensor temperatures, and additionally exposes the VRM temperature
at the same register as the 300-series boards (bank 0, 0x3e), so add
that sensor to the Intel 200-series family.

The hardware access mutex is \_SB_.PCI0.LPCB.SIO1.MUT0, as on the
PRIME Z270-A (verified in the board's DSDT).

Readings were checked against HWiNFO 8.54 on the same machine
(Chipset 47 C, T_Sensor 25 C, VRM 32 C).

Signed-off-by: Remy Demangeot <remy@demangeot.net>
---
The board's EC also exposes more sensors that HWiNFO reads, but they
need access patterns the driver does not have yet:
 - three extension card fans (EXT_FAN1-3): write 0x0a/0x0b/0x0c to
   bank 0 register 0x43 (selector), then read 0x57:0x58 (BE RPM);
 - EXT_Sensor1-3 temperatures at bank 0, 0x60-0x62;
 - Water_In/Out and Water_In2/Out2 on a second EC (firmware ID
   "RGE2-Z270-0109") at I/O ports 0x68/0x6c, bank 1, registers
   0x0d/0x0b/0x13/0x11 (same offsets as Water_In/Out on AMD boards).

I have a working out-of-tree driver for these and can prepare follow-up
patches if this approach would be acceptable.
---
 Documentation/hwmon/asus_ec_sensors.rst |  1 +
 drivers/hwmon/asus-ec-sensors.c         | 10 ++++++++++
 2 files changed, 11 insertions(+)

diff --git a/Documentation/hwmon/asus_ec_sensors.rst b/Documentation/hwmon/asus_ec_sensors.rst
index 7032c40731d900f6b345c3f52512eab4866cbe93..6d1fa99acefc94bf018b70715ae2f057d1d58fa6 100644
--- a/Documentation/hwmon/asus_ec_sensors.rst
+++ b/Documentation/hwmon/asus_ec_sensors.rst
@@ -5,6 +5,7 @@ Kernel driver asus_ec_sensors
 
 Supported boards:
  * MAXIMUS VI HERO
+ * MAXIMUS IX EXTREME
  * PRIME X470-PRO
  * PRIME X570-PRO
  * PRIME X670E-PRO WIFI
diff --git a/drivers/hwmon/asus-ec-sensors.c b/drivers/hwmon/asus-ec-sensors.c
index 19f423e45ce5e4b2cfdd5befea2450318ac626ba..3c97ae09cc19acad54696bff9e65d6bc4f3ce835 100644
--- a/drivers/hwmon/asus-ec-sensors.c
+++ b/drivers/hwmon/asus-ec-sensors.c
@@ -358,6 +358,7 @@ static const struct ec_sensor_info sensors_family_intel_200[] = {
 		EC_SENSOR("Motherboard", hwmon_temp, 1, 0x00, 0x3c),
 	[ec_sensor_temp_t_sensor] =
 		EC_SENSOR("T_Sensor", hwmon_temp, 1, 0x00, 0x3d),
+	[ec_sensor_temp_vrm] = EC_SENSOR("VRM", hwmon_temp, 1, 0x00, 0x3e),
 	[ec_sensor_fan_cpu_opt] =
 		EC_SENSOR("CPU_Opt", hwmon_fan, 2, 0x00, 0xbc),
 };
@@ -520,6 +521,13 @@ static const struct ec_board_info board_info_maximus_vi_hero = {
 	.family = family_intel_300_series,
 };
 
+static const struct ec_board_info board_info_maximus_ix_extreme = {
+	.sensors = SENSOR_TEMP_CHIPSET | SENSOR_TEMP_T_SENSOR |
+		SENSOR_TEMP_VRM,
+	.mutex_path = ASUS_HW_ACCESS_MUTEX_SB_PCI0_LPCB_SIO1_MUT0,
+	.family = family_intel_200_series,
+};
+
 static const struct ec_board_info board_info_maximus_x_hero = {
 	.sensors = SENSOR_SET_TEMP_CHIPSET_CPU_MB |
 		SENSOR_TEMP_T_SENSOR |
@@ -882,6 +890,8 @@ static const struct ec_board_info board_info_zenith_ii_extreme = {
 static const struct dmi_system_id dmi_table[] = {
 	DMI_EXACT_MATCH_ASUS_BOARD_NAME("MAXIMUS VI HERO",
 					&board_info_maximus_vi_hero),
+	DMI_EXACT_MATCH_ASUS_BOARD_NAME("MAXIMUS IX EXTREME",
+					&board_info_maximus_ix_extreme),
 	DMI_EXACT_MATCH_ASUS_BOARD_NAME("PRIME X470-PRO",
 					&board_info_prime_x470_pro),
 	DMI_EXACT_MATCH_ASUS_BOARD_NAME("PRIME X570-PRO",

---
base-commit: 4781ca52761e666cf18b591e6bb0478396c90320
change-id: 20261015-b4-m9e-extreme-ca6a969c0ef8

Best regards,
-- 
Remy Demangeot <remy@demangeot.net>


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* [PATCH] hwmon: (asus-ec-sensors) add MAXIMUS IX EXTREME
@ 2026-10-15 16:09 ` Remy Demangeot via B4 Relay
  0 siblings, 0 replies; 3+ messages in thread
From: Remy Demangeot via B4 Relay @ 2026-10-15 16:09 UTC (permalink / raw)
  To: Guenter Roeck, Jonathan Corbet, Shuah Khan, Randy Dunlap,
	Eugene Shalygin
  Cc: linux-hwmon, linux-doc, linux-kernel, Remy Demangeot

From: Remy Demangeot <remy@demangeot.net>

Add support for the ROG MAXIMUS IX EXTREME (Intel Z270). The board
uses the same EC layout as the PRIME Z270-A for the chipset and
T_Sensor temperatures, and additionally exposes the VRM temperature
at the same register as the 300-series boards (bank 0, 0x3e), so add
that sensor to the Intel 200-series family.

The hardware access mutex is \_SB_.PCI0.LPCB.SIO1.MUT0, as on the
PRIME Z270-A (verified in the board's DSDT).

Readings were checked against HWiNFO 8.54 on the same machine
(Chipset 47 C, T_Sensor 25 C, VRM 32 C).

Signed-off-by: Remy Demangeot <remy@demangeot.net>
---
The board's EC also exposes more sensors that HWiNFO reads, but they
need access patterns the driver does not have yet:
 - three extension card fans (EXT_FAN1-3): write 0x0a/0x0b/0x0c to
   bank 0 register 0x43 (selector), then read 0x57:0x58 (BE RPM);
 - EXT_Sensor1-3 temperatures at bank 0, 0x60-0x62;
 - Water_In/Out and Water_In2/Out2 on a second EC (firmware ID
   "RGE2-Z270-0109") at I/O ports 0x68/0x6c, bank 1, registers
   0x0d/0x0b/0x13/0x11 (same offsets as Water_In/Out on AMD boards).

I have a working out-of-tree driver for these and can prepare follow-up
patches if this approach would be acceptable.
---
 Documentation/hwmon/asus_ec_sensors.rst |  1 +
 drivers/hwmon/asus-ec-sensors.c         | 10 ++++++++++
 2 files changed, 11 insertions(+)

diff --git a/Documentation/hwmon/asus_ec_sensors.rst b/Documentation/hwmon/asus_ec_sensors.rst
index 7032c40731d900f6b345c3f52512eab4866cbe93..6d1fa99acefc94bf018b70715ae2f057d1d58fa6 100644
--- a/Documentation/hwmon/asus_ec_sensors.rst
+++ b/Documentation/hwmon/asus_ec_sensors.rst
@@ -5,6 +5,7 @@ Kernel driver asus_ec_sensors
 
 Supported boards:
  * MAXIMUS VI HERO
+ * MAXIMUS IX EXTREME
  * PRIME X470-PRO
  * PRIME X570-PRO
  * PRIME X670E-PRO WIFI
diff --git a/drivers/hwmon/asus-ec-sensors.c b/drivers/hwmon/asus-ec-sensors.c
index 19f423e45ce5e4b2cfdd5befea2450318ac626ba..3c97ae09cc19acad54696bff9e65d6bc4f3ce835 100644
--- a/drivers/hwmon/asus-ec-sensors.c
+++ b/drivers/hwmon/asus-ec-sensors.c
@@ -358,6 +358,7 @@ static const struct ec_sensor_info sensors_family_intel_200[] = {
 		EC_SENSOR("Motherboard", hwmon_temp, 1, 0x00, 0x3c),
 	[ec_sensor_temp_t_sensor] =
 		EC_SENSOR("T_Sensor", hwmon_temp, 1, 0x00, 0x3d),
+	[ec_sensor_temp_vrm] = EC_SENSOR("VRM", hwmon_temp, 1, 0x00, 0x3e),
 	[ec_sensor_fan_cpu_opt] =
 		EC_SENSOR("CPU_Opt", hwmon_fan, 2, 0x00, 0xbc),
 };
@@ -520,6 +521,13 @@ static const struct ec_board_info board_info_maximus_vi_hero = {
 	.family = family_intel_300_series,
 };
 
+static const struct ec_board_info board_info_maximus_ix_extreme = {
+	.sensors = SENSOR_TEMP_CHIPSET | SENSOR_TEMP_T_SENSOR |
+		SENSOR_TEMP_VRM,
+	.mutex_path = ASUS_HW_ACCESS_MUTEX_SB_PCI0_LPCB_SIO1_MUT0,
+	.family = family_intel_200_series,
+};
+
 static const struct ec_board_info board_info_maximus_x_hero = {
 	.sensors = SENSOR_SET_TEMP_CHIPSET_CPU_MB |
 		SENSOR_TEMP_T_SENSOR |
@@ -882,6 +890,8 @@ static const struct ec_board_info board_info_zenith_ii_extreme = {
 static const struct dmi_system_id dmi_table[] = {
 	DMI_EXACT_MATCH_ASUS_BOARD_NAME("MAXIMUS VI HERO",
 					&board_info_maximus_vi_hero),
+	DMI_EXACT_MATCH_ASUS_BOARD_NAME("MAXIMUS IX EXTREME",
+					&board_info_maximus_ix_extreme),
 	DMI_EXACT_MATCH_ASUS_BOARD_NAME("PRIME X470-PRO",
 					&board_info_prime_x470_pro),
 	DMI_EXACT_MATCH_ASUS_BOARD_NAME("PRIME X570-PRO",

---
base-commit: 4781ca52761e666cf18b591e6bb0478396c90320
change-id: 20261015-b4-m9e-extreme-ca6a969c0ef8

Best regards,
-- 
Remy Demangeot <remy@demangeot.net>



^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH] hwmon: (asus-ec-sensors) add MAXIMUS IX EXTREME
  2026-10-15 16:09 ` Remy Demangeot via B4 Relay
  (?)
@ 2026-10-15 16:15 ` sashiko-bot
  -1 siblings, 0 replies; 3+ messages in thread
From: sashiko-bot @ 2026-10-15 16:15 UTC (permalink / raw)
  To: Remy Demangeot; +Cc: linux-hwmon

> From: Remy Demangeot <remy@demangeot.net>
> 
> Add support for the ROG MAXIMUS IX EXTREME (Intel Z270). The board
> uses the same EC layout as the PRIME Z270-A for the chipset and
> T_Sensor temperatures, and additionally exposes the VRM temperature
> at the same register as the 300-series boards (bank 0, 0x3e), so add
> that sensor to the Intel 200-series family.
> 
> The hardware access mutex is \_SB_.PCI0.LPCB.SIO1.MUT0, as on the
> PRIME Z270-A (verified in the board's DSDT).
> 
> Readings were checked against HWiNFO 8.54 on the same machine
> (Chipset 47 C, T_Sensor 25 C, VRM 32 C).
> 
> Signed-off-by: Remy Demangeot <remy@demangeot.net>

Sashiko has reviewed this patch and found no issues. It looks great!

-- 
Sashiko AI review · https://sashiko.dev/#/patchset/20261015-b4-m9e-extreme-v1-1-621da921e320@demangeot.net?part=1


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2026-10-15 16:15 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-10-15 16:09 [PATCH] hwmon: (asus-ec-sensors) add MAXIMUS IX EXTREME Remy Demangeot
2026-10-15 16:09 ` Remy Demangeot via B4 Relay
2026-10-15 16:15 ` sashiko-bot

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.