* [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.