Skip to content

Commit

Permalink
hwmon: (asus-ec-sensors) add support for Strix Z690-a D4
Browse files Browse the repository at this point in the history
[ Upstream commit bae26b8 ]

adds T_Sensor and VRM Temp sensors for the Asus Strix z690-a D4 motherboard

Signed-off-by: Shady Nawara <shady.nawara@outlook.com>
Signed-off-by: Eugene Shalygin <eugene.shalygin@gmail.com>
Link: https://lore.kernel.org/r/20220603122758.1561064-1-eugene.shalygin@gmail.com
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
Stable-dep-of: 88700d1 ("hwmon: (asus-ec-sensors) autoload module via DMI data")
Signed-off-by: Sasha Levin <sashal@kernel.org>
  • Loading branch information
ShadyNawara authored and gregkh committed Sep 15, 2022
1 parent c4a068c commit 4091d4f
Show file tree
Hide file tree
Showing 2 changed files with 19 additions and 0 deletions.
1 change: 1 addition & 0 deletions Documentation/hwmon/asus_ec_sensors.rst
Expand Up @@ -19,6 +19,7 @@ Supported boards:
* ROG STRIX X570-E GAMING WIFI II
* ROG STRIX X570-F GAMING
* ROG STRIX X570-I GAMING
* ROG STRIX Z690-A GAMING WIFI D4

Authors:
- Eugene Shalygin <eugene.shalygin@gmail.com>
Expand Down
18 changes: 18 additions & 0 deletions drivers/hwmon/asus-ec-sensors.c
Expand Up @@ -54,6 +54,8 @@ static char *mutex_path_override;
/* ACPI mutex for locking access to the EC for the firmware */
#define ASUS_HW_ACCESS_MUTEX_ASMX "\\AMW0.ASMX"

#define ASUS_HW_ACCESS_MUTEX_RMTW_ASMX "\\RMTW.ASMX"

#define MAX_IDENTICAL_BOARD_VARIATIONS 3

/* Moniker for the ACPI global lock (':' is not allowed in ASL identifiers) */
Expand Down Expand Up @@ -139,6 +141,7 @@ enum board_family {
family_unknown,
family_amd_400_series,
family_amd_500_series,
family_intel_600_series
};

/* All the known sensors for ASUS EC controllers */
Expand Down Expand Up @@ -197,6 +200,12 @@ static const struct ec_sensor_info sensors_family_amd_500[] = {
EC_SENSOR("Water_Out", hwmon_temp, 1, 0x01, 0x01),
};

static const struct ec_sensor_info sensors_family_intel_600[] = {
[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),
};

/* Shortcuts for common combinations */
#define SENSOR_SET_TEMP_CHIPSET_CPU_MB \
(SENSOR_TEMP_CHIPSET | SENSOR_TEMP_CPU | SENSOR_TEMP_MB)
Expand Down Expand Up @@ -330,6 +339,12 @@ static const struct ec_board_info board_info[] = {
.mutex_path = ASUS_HW_ACCESS_MUTEX_ASMX,
.family = family_amd_500_series,
},
{
.board_names = {"ROG STRIX Z690-A GAMING WIFI D4"},
.sensors = SENSOR_TEMP_T_SENSOR | SENSOR_TEMP_VRM,
.mutex_path = ASUS_HW_ACCESS_MUTEX_RMTW_ASMX,
.family = family_intel_600_series,
},
{}
};

Expand Down Expand Up @@ -799,6 +814,9 @@ static int __init asus_ec_probe(struct platform_device *pdev)
case family_amd_500_series:
ec_data->sensors_info = sensors_family_amd_500;
break;
case family_intel_600_series:
ec_data->sensors_info = sensors_family_intel_600;
break;
default:
dev_err(dev, "Unknown board family: %d",
ec_data->board_info->family);
Expand Down

0 comments on commit 4091d4f

Please sign in to comment.