10314c6acSEugene Shalygin.. SPDX-License-Identifier: GPL-2.0-or-later 20314c6acSEugene Shalygin 30314c6acSEugene ShalyginKernel driver asus_ec_sensors 40314c6acSEugene Shalygin================================= 50314c6acSEugene Shalygin 60314c6acSEugene ShalyginSupported boards: 79ccafe46SDebabrata Banerjee * PRIME X470-PRO 89ccafe46SDebabrata Banerjee * PRIME X570-PRO 99ccafe46SDebabrata Banerjee * Pro WS X570-ACE 10d7cc063fSEugene Shalygin * ProArt X570-CREATOR WIFI 11c7ba3e26Sfireflame90051 * ProArt B550-CREATOR 129ccafe46SDebabrata Banerjee * ROG CROSSHAIR VIII DARK HERO 132f66cb5bSEugene Shalygin * ROG CROSSHAIR VIII HERO (WI-FI) 149ccafe46SDebabrata Banerjee * ROG CROSSHAIR VIII FORMULA 159ccafe46SDebabrata Banerjee * ROG CROSSHAIR VIII HERO 169ccafe46SDebabrata Banerjee * ROG CROSSHAIR VIII IMPACT 17*790dec13SMichael Carns * ROG CROSSHAIR X670E HERO 188f9eb10fSMichael Carns * ROG MAXIMUS XI HERO 198f9eb10fSMichael Carns * ROG MAXIMUS XI HERO (WI-FI) 209ccafe46SDebabrata Banerjee * ROG STRIX B550-E GAMING 219ccafe46SDebabrata Banerjee * ROG STRIX B550-I GAMING 229ccafe46SDebabrata Banerjee * ROG STRIX X570-E GAMING 239ccafe46SDebabrata Banerjee * ROG STRIX X570-E GAMING WIFI II 249ccafe46SDebabrata Banerjee * ROG STRIX X570-F GAMING 250314c6acSEugene Shalygin * ROG STRIX X570-I GAMING 263a31e092SEugene Shalygin * ROG STRIX Z390-F GAMING 27bae26b80SShady Nawara * ROG STRIX Z690-A GAMING WIFI D4 289992b19dSUrs Schroffenegger * ROG ZENITH II EXTREME 29195f46e5SEric Nguyen * ROG ZENITH II EXTREME ALPHA 300314c6acSEugene Shalygin 310314c6acSEugene ShalyginAuthors: 320314c6acSEugene Shalygin - Eugene Shalygin <eugene.shalygin@gmail.com> 330314c6acSEugene Shalygin 340314c6acSEugene ShalyginDescription: 350314c6acSEugene Shalygin------------ 360314c6acSEugene ShalyginASUS mainboards publish hardware monitoring information via Super I/O 370314c6acSEugene Shalyginchip and the ACPI embedded controller (EC) registers. Some of the sensors 380314c6acSEugene Shalyginare only available via the EC. 390314c6acSEugene Shalygin 400314c6acSEugene ShalyginThe driver is aware of and reads the following sensors: 410314c6acSEugene Shalygin 420314c6acSEugene Shalygin1. Chipset (PCH) temperature 430314c6acSEugene Shalygin2. CPU package temperature 440314c6acSEugene Shalygin3. Motherboard temperature 450314c6acSEugene Shalygin4. Readings from the T_Sensor header 460314c6acSEugene Shalygin5. VRM temperature 470314c6acSEugene Shalygin6. CPU_Opt fan RPM 480314c6acSEugene Shalygin7. VRM heatsink fan RPM 490314c6acSEugene Shalygin8. Chipset fan RPM 500314c6acSEugene Shalygin9. Readings from the "Water flow meter" header (RPM) 510314c6acSEugene Shalygin10. Readings from the "Water In" and "Water Out" temperature headers 520314c6acSEugene Shalygin11. CPU current 53f545a2fdSEugene Shalygin12. CPU core voltage 540314c6acSEugene Shalygin 550314c6acSEugene ShalyginSensor values are read from EC registers, and to avoid race with the board 560314c6acSEugene Shalyginfirmware the driver acquires ACPI mutex, the one used by the WMI when its 570314c6acSEugene Shalyginmethods access the EC. 580314c6acSEugene Shalygin 590314c6acSEugene ShalyginModule Parameters 600314c6acSEugene Shalygin----------------- 610314c6acSEugene Shalygin * mutex_path: string 620314c6acSEugene Shalygin The driver holds path to the ACPI mutex for each board (actually, 630314c6acSEugene Shalygin the path is mostly identical for them). If ASUS changes this path 640314c6acSEugene Shalygin in a future BIOS update, this parameter can be used to override 650314c6acSEugene Shalygin the stored in the driver value until it gets updated. 66de8fbac5SEugene Shalygin A special string ":GLOBAL_LOCK" can be passed to use the ACPI 67de8fbac5SEugene Shalygin global lock instead of a dedicated mutex. 68