Open lilongueti opened 1 year ago
We can try but I am not sure if all features will work. Which features are the most useful for you?
To this end, please provide the following information so that I can configure the driver:
# Install required tools
sudo apt install fwts
# Create folder for all the new files
mkdir fwts_re
cd fwts_re
sudo fwts wmi - > fwts_wmi.log
Then upload files.
# Install requiered tools
sudo apt install acpica-tools
# Create folder for all the new files
mkdir acpi_re
cd acpi_re
# List ACPI tables and copy them
ls /sys/firmware/acpi/tables/
sudo cp --no-preserve=mode /sys/firmware/acpi/tables/*SDT* .
# Disassemble tables to output DSDT.dsl
iasl -e SSDT* -d DSDT
Then upload files.
If you have Windows, then the following information are very very useful to make use of the ACPI methods. If you do not have Windows skip it. Open powershell as admin in Windows and run the following script. It will list all available lenovo WMI methods. Copy output to a file and upload.
$wmi_classes = Get-WmiObject -Namespace 'ROOT/WMI' -List -Class "*LENOVO*"
foreach ($wmi_class in $wmi_classes){
Write-Host "########################################"
Write-Host "########################################"
Write-Host "########################################"
Write-Host "Name:" $wmi_class.Name
Write-Host "Class Name:" $wmi_class.Name
Write-Host "Class GUID:" $wmi_class.Qualifiers["guid"].Value
Write-Host "Description:" $wmi_class.Methods.Count
Write-Host "Methods:"
foreach ($method in $wmi_class.Methods){
Write-Host "Name:" $method.Name
Write-Host "WmiMethodId:" $method.Qualifiers["WmiMethodId"].Value
Write-Host "Class Name:" $wmi_class.Name
Write-Host "Class GUID:" $wmi_class.Qualifiers["guid"].Value
Write-Host "Description:" $method.Qualifiers["Description"].Value
Write-Host "Implemented:" $method.Qualifiers["Implemented"].Value
Write-Host ""
}
Write-Host ""
}
I added your model to the driver to get more information. Please get the newest version and try to load it. Then, please provide the output of the following commands:
sudo cat /sys/kernel/debug/legion/ecmemoryram | hexdump -C
sudo cat /sys/kernel/debug/legion/ecmemory | hexdump -C
sudo cat /sys/kernel/debug/legion/fancurve
sudo dmesg | grep legion
sudo cat /sys/kernel/debug/legion/ecmemoryram | hexdump -C
00000000 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff |................|
*
00000600
sudo cat /sys/kernel/debug/legion/ecmemory | hexdump -C
00000000 00 00 00 00 00 00 22 00 00 00 00 00 00 49 56 00 |......"......IV.|
00000010 00 00 80 00 05 00 09 02 00 01 07 00 00 00 00 00 |................|
00000020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
*
00000040 00 00 00 00 00 00 00 00 00 00 00 00 71 4d 00 00 |............qM..|
00000050 00 00 00 0f 00 00 56 00 00 00 00 00 00 00 00 00 |......V.........|
00000060 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
*
00000080 00 00 00 00 08 00 00 00 80 00 c2 01 00 00 00 53 |...............S|
00000090 4d 50 00 31 31 00 00 00 4c 31 36 4d 34 50 42 30 |MP.11...L16M4PB0|
000000a0 00 08 00 86 00 00 00 61 64 00 00 00 64 25 02 00 |.......ad...d%..|
000000b0 55 00 00 00 00 00 00 00 02 11 00 00 00 00 11 00 |U...............|
000000c0 70 02 cd 07 f7 02 bd 3c 00 3c 70 17 ff 13 27 13 |p......<.<p...'.|
000000d0 fc 05 a7 05 00 00 00 29 3a 06 0b 00 00 00 00 00 |.......):.......|
000000e0 00 00 19 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
000000f0 01 00 00 00 75 4b 30 43 00 00 00 00 00 00 24 00 |....uK0C......$.|
00000100 82 00 00 00 00 00 03 03 1d 1d 37 1d 1d 1d 25 1d |..........7...%.|
00000110 fe 00 16 03 00 00 ff 03 00 00 00 00 00 00 00 00 |................|
00000120 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
*
00000150 21 29 37 42 48 50 5a 5a 21 29 37 42 48 50 5a 5a |!)7BHPZZ!)7BHPZZ|
00000160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
*
00000190 00 1c 24 32 3d 43 4b 55 00 1c 24 32 3d 43 4b 55 |..$2=CKU..$2=CKU|
000001a0 00 13 17 19 1d 1f 21 23 00 10 15 17 1f 21 23 25 |......!#.....!#%|
000001b0 83 0d 46 0e 23 25 07 03 56 00 00 00 00 00 00 00 |..F.#%..V.......|
000001c0 00 00 00 3c 43 50 55 55 00 00 00 3c 43 50 55 55 |...<CPUU...<CPUU|
000001d0 00 00 00 00 37 3e 4b 50 00 00 00 00 37 3e 4b 50 |....7>KP....7>KP|
000001e0 00 00 00 00 1d 1f 21 23 00 00 00 00 1f 21 23 25 |......!#.....!#%|
000001f0 00 00 00 00 cd 07 00 00 03 07 00 00 23 25 5a 5a |............#%ZZ|
00000200 23 25 00 00 00 00 00 00 00 00 00 00 00 04 00 00 |#%..............|
00000210 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
*
00000230 00 00 00 00 00 00 00 00 00 00 00 00 00 02 00 00 |................|
00000240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
*
00000280 32 fc 64 06 00 00 00 00 00 00 00 00 00 00 00 00 |2.d.............|
00000290 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
000002a0 00 40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |.@..............|
000002b0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
*
000002e0 00 00 00 00 00 00 00 64 00 00 00 00 00 00 00 00 |.......d........|
000002f0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
00000300
sudo cat /sys/kernel/debug/legion/fancurve
EC Chip ID: 8226
EC Chip Version: 1a2
legion_laptop features: fancurve powermode platformprofile platformprofilenotify minifancurve
legion_laptop ec_readonly: 0
ACPI CFG error: 0
ACPI CFG: 3155031318
temperature access method: 1
CPU temperature error: 0
CPU temperature: 33
CPU temperature EC error: 0
CPU temperature EC: 33
CPU temperature ACPI error: 0
CPU temperature ACPI: 94
CPU temperature WMI error: 0
CPU temperature WMI: 0
CPU temperature WMI2 error: -14
CPU temperature WMI2: 0
CPU temperature WMI3 error: -14
CPU temperature WMI3: 0
GPU temperature error: 0
GPU temperature: 35
GPU temperature EC error: 0
GPU temperature EC: 35
GPU temperature ACPI error: -5
GPU temperature ACPI: 35
GPU temperature WMI error: 0
GPU temperature WMI: 0
GPU temperature WMI2 error: -14
GPU temperature WMI2: 0
GPU temperature WMI3 error: -14
GPU temperature WMI3: 0
fan speed access method: 1
1 fanspeed error: 0
1 fanspeed: 0
1 fanspeed EC error: 0
1 fanspeed EC: 0
1 fanspeed ACPI error: 0
1 fanspeed ACPI: 3400
1 fanspeed WMI error: 0
1 fanspeed WMI: 3400
1 fanspeed WMI2 error: -14
1 fanspeed WMI2: 3400
1 fanspeed WMI3 error: -14
1 fanspeed WMI3: 3400
2 fanspeed error: 0
2 fanspeed: 0
2 fanspeed EC error: 0
2 fanspeed EC: 0
2 fanspeed ACPI error: 0
2 fanspeed ACPI: 3600
2 fanspeed WMI error: 0
2 fanspeed WMI: 3600
2 fanspeed WMI2 error: -14
2 fanspeed WMI2: 3600
2 fanspeed WMI3 error: -14
2 fanspeed WMI3: 3600
powermode access method: 3
powermode error: 0
powermode: 0
powermode EC error: 0
powermode EC: 0
powermode ACPI error: -5
powermode ACPI: 0
powermode WMI error: 0
powermode WMI: 0
has custom powermode: 1
ACPI rapidcharge error: 0
ACPI rapidcharge: 0
WMI backlight 2 state: 0
WMI backlight 3 state: -5
WMI light IO port: -5
WMI light y logo/lid: -5
EC minifancurve feature enabled: 1
EC minifancurve on cool: error
EC lockfancontroller error: 0
EC lockfancontroller: false
EC fanfullspeed error: false
EC fanfullspeed status: 0
EC fan curve current point id: 0
EC fan curve points size: 0
Current fan curve in hardware:
rpm1|rpm2|acceleration|deceleration|cpu_min_temp|cpu_max_temp|gpu_min_temp|gpu_max_temp|ic_min_temp|ic_max_temp
=====================
Current fan curve in hardware (WMI; might be empty)
rpm1|rpm2|acceleration|deceleration|cpu_min_temp|cpu_max_temp|gpu_min_temp|gpu_max_temp|ic_min_temp|ic_max_temp
=====================
sudo dmesg | grep legion
[ 1191.727387] legion_laptop: legion_laptop starts loading
[ 1191.727449] legion PNP0C09:00: legion_laptop platform driver probing
[ 1191.727452] legion PNP0C09:00: Read identifying information: DMI_SYS_VENDOR: LENOVO; DMI_PRODUCT_NAME: 80VR; DMI_BIOS_VERSION:4GCN38WW
[ 1191.727454] legion_laptop: Read identifying information: DMI_SYS_VENDOR: LENOVO; DMI_PRODUCT_NAME: 80VR; DMI_BIOS_VERSION:4GCN38WW
[ 1191.727458] legion PNP0C09:00: is_denied: 0; is_allowed: 1; do_load_by_list: 1; do_load: 1
[ 1191.727461] legion PNP0C09:00: Using configuration for system: 4GCN
[ 1191.727509] legion PNP0C09:00: ACPI CFG: 3155031318
[ 1191.727511] legion_laptop: Creating RAM access to embedded controller
[ 1191.727528] legion_laptop: Succeffuly mapped embedded controller: 0xfe00d400 (in RAM)/0x0 (in EC) to virtual 0x000000000826a862
[ 1191.727675] legion PNP0C09:00: Read embedded controller ID 0x8226
[ 1191.727677] legion PNP0C09:00: Creating debugfs inteface
[ 1191.727690] legion_laptop: Creating sysfs inteface
[ 1191.727712] legion_laptop: Creating hwmon interface
[ 1191.727884] legion_laptop: Creating platform profile support
[ 1191.727889] legion_laptop: Init WMI driver support
[ 1191.727924] legion_wmi 887B54E3-DDDC-4B2C-8B88-68A26A8835D0: Register after probing for WMI.
[ 1191.727973] legion_wmi BFD42481-AEE3-4501-A107-AFB68425C5F8: Register after probing for WMI.
[ 1191.727996] legion_wmi D062906B-12D4-4510-999D-4831EE80E985: Register after probing for WMI.
[ 1191.728014] legion_wmi BFD42481-AEE3-4502-A107-AFB68425C5F8: Register after probing for WMI.
[ 1191.728037] legion_wmi BC72A435-E8C1-4275-B3E2-D8B8074ABA59: Register after probing for WMI.
[ 1191.728057] legion_wmi 10AFC6D9-EA8B-4590-A2E7-1CD3C84BB4B1: Register after probing for WMI.
[ 1191.728084] legion_laptop: Init keyboard backlight LED driver
[ 1191.728087] legion_laptop: ACPI evaluation error for: 8C5B9127-ECD4-4657-980F-851019F99CA5:1
[ 1191.728089] legion_laptop: Error for WMI method call to get brightness
[ 1191.728090] legion_laptop: Error reading keyboard brighntess
[ 1191.728091] legion PNP0C09:00: Init keyboard backlight LED driver failed. Skipping ...
[ 1191.728093] legion_laptop: Init Y-Logo LED driver
[ 1191.728094] legion_laptop: ACPI evaluation error for: 8C5B9127-ECD4-4657-980F-851019F99CA5:1
[ 1191.728096] legion_laptop: Error for WMI method call to get brightness
[ 1191.728097] legion_laptop: Error reading brighntess for light: 3
[ 1191.728098] legion PNP0C09:00: Init Y-Logo LED driver failed. Skipping ...
[ 1191.728100] legion_laptop: Init IO-Port LED driver
[ 1191.728101] legion_laptop: ACPI evaluation error for: 8C5B9127-ECD4-4657-980F-851019F99CA5:1
[ 1191.728103] legion_laptop: Error for WMI method call to get brightness
[ 1191.728103] legion_laptop: Error reading brighntess for light: 5
[ 1191.728105] legion PNP0C09:00: Init IO-Port LED driver failed. Skipping ...
[ 1191.728106] legion PNP0C09:00: legion_laptop loaded for this device
[ 2804.066647] legion_laptop: WMI evaluation error for: 92549549-4bde-4f06-ac04-ce8bf898dbaa:8
[ 2804.066651] legion_laptop: WMI evaluation error for: dc2a8805-3a8c-41ba-a6f7-092e0089cd3b:17
[ 2804.066894] legion_laptop: WMI evaluation error for: 92549549-4bde-4f06-ac04-ce8bf898dbaa:8
[ 2804.066897] legion_laptop: WMI evaluation error for: dc2a8805-3a8c-41ba-a6f7-092e0089cd3b:17
[ 2804.067281] legion_laptop: WMI evaluation error for: 92549549-4bde-4f06-ac04-ce8bf898dbaa:7
[ 2804.067283] legion_laptop: WMI evaluation error for: dc2a8805-3a8c-41ba-a6f7-092e0089cd3b:17
[ 2804.067702] legion_laptop: WMI evaluation error for: 92549549-4bde-4f06-ac04-ce8bf898dbaa:7
[ 2804.067705] legion_laptop: WMI evaluation error for: dc2a8805-3a8c-41ba-a6f7-092e0089cd3b:17
[ 2804.068438] legion_laptop: ACPI evaluation error for: 8C5B9127-ECD4-4657-980F-851019F99CA5:1
[ 2804.068441] legion_laptop: Error for WMI method call to get brightness
[ 2804.068442] legion_laptop: ACPI evaluation error for: 8C5B9127-ECD4-4657-980F-851019F99CA5:1
[ 2804.068444] legion_laptop: Error for WMI method call to get brightness
[ 2804.068445] legion_laptop: ACPI evaluation error for: 8C5B9127-ECD4-4657-980F-851019F99CA5:1
[ 2804.068446] legion_laptop: Error for WMI method call to get brightness
[ 2804.068517] legion_laptop: Unexpected value in MINIFANCURVE register:0
[ 2804.075799] legion_laptop: Size of object: 48
[ 2804.075807] legion_laptop: ACPI evaluation error for: 92549549-4bde-4f06-ac04-ce8bf898dbaa:5
[ 2804.075810] legion_laptop fan table wmi buffer00000000e6651b36: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
[ 2804.075814] legion_laptop fan table wmi buffer000000001ce4a090: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
[ 2804.075816] legion_laptop fan table wmi buffer000000008ee8fcc5: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
[ 2804.075819] legion_laptop fan table wmi buffer00000000fd9daa0b: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
[ 2804.075821] legion_laptop fan table wmi buffer00000000eea50ed3: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
[ 2804.075823] legion_laptop fan table wmi buffer000000005eadaa2e: 00 00 00 00 00 00 00 00
Log output look promising. I guess fan control might work.
Please upload the files to github, e.g. as a zip file, so they will be stored for a longer period combined with this repo. You can do that by drag/dropping them into the text field.
i've updated the comment with the zip file, as for which features are the most useful for me, its just the fan curve really, it's sub woofer has never worked under linux (i've tried with hdajackretask), but i'm guessing this isn't related to this chip and outside the scope of this repo
@lilongueti you can test with the latest commit if features work?
it doesnt seem to be much diffrent, however i tried poking /sys/module/legion_laptop/drivers/platform\:legion/PNP0C09\:00/hwmon/hwmon6/pwm*_auto_point*_pwm
with diffrent values, but it does weird things, it seems like no matter what value i put it just stops the fan for a couple seconds and then goes back to regular speed, besides it was first running the left fan, then i rebooted and now its doing the same thing with the right one and the left one doesnt move at all even with a load, also pwm1 and pwm2 seems to behave as the same thing, also it does the same on points 2-9, point1 doesn't do anything
sudo cat /sys/kernel/debug/legion/ecmemoryram | hexdump -C
00000000 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff |................|
*
00000600
sudo cat /sys/kernel/debug/legion/ecmemory | hexdump -C
00000000 00 01 00 00 00 00 00 00 00 00 10 00 00 24 2c 00 |.............$,.|
00000010 00 00 80 00 05 00 09 02 00 01 07 00 00 00 00 00 |................|
00000020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
*
00000040 00 00 00 00 00 00 00 00 00 00 00 00 71 4d 00 00 |............qM..|
00000050 00 00 00 22 00 00 2c 00 00 00 00 00 00 00 00 00 |..."..,.........|
00000060 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
*
00000080 00 00 00 00 08 00 00 00 c0 00 c2 01 00 00 00 53 |...............S|
00000090 4d 50 00 31 31 00 00 00 4c 31 36 4d 34 50 42 30 |MP.11...L16M4PB0|
000000a0 00 08 00 06 00 00 00 61 64 00 00 00 64 25 00 00 |.......ad...d%..|
000000b0 2c 00 00 00 00 00 00 00 02 11 00 00 00 00 01 00 |,...............|
000000c0 74 01 17 08 f7 02 71 39 00 3c 70 17 95 11 2e 24 |t.....q9.<p....$|
000000d0 2a fa f5 f9 00 00 00 1d a5 05 00 00 00 00 00 00 |*...............|
000000e0 00 00 18 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
000000f0 01 00 00 00 75 4b 30 43 00 00 00 00 00 00 15 00 |....uK0C........|
00000100 82 00 00 00 00 00 06 06 1d 1d 1d 25 25 25 1e 1d |...........%%%..|
00000110 06 00 be 03 00 00 ff 03 00 00 00 00 00 00 00 00 |................|
00000120 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
00000130 00 00 00 00 00 00 04 00 00 00 00 00 00 00 00 00 |................|
00000140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
00000150 00 00 00 00 00 00 00 00 00 00 37 42 48 50 5a 5a |..........7BHPZZ|
00000160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
*
00000190 00 00 00 00 00 00 00 00 00 00 24 32 3d 43 4b 55 |..........$2=CKU|
000001a0 00 00 00 00 00 00 00 00 00 00 15 17 1f 21 23 25 |.............!#%|
000001b0 00 00 70 08 00 15 07 00 2c 00 00 00 00 00 00 00 |..p.....,.......|
000001c0 00 00 00 00 00 00 00 00 00 00 00 3c 43 50 55 55 |...........<CPUU|
000001d0 00 00 00 00 00 00 00 00 00 00 00 00 37 3e 4b 50 |............7>KP|
000001e0 00 00 00 00 1d 1f 21 23 00 00 00 00 1f 21 23 25 |......!#.....!#%|
000001f0 00 00 00 00 17 08 00 00 03 02 00 00 00 15 19 46 |...............F|
00000200 00 15 00 00 00 00 00 00 00 00 00 00 00 04 00 00 |................|
00000210 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
*
00000230 00 00 00 00 00 00 00 00 00 00 00 00 00 02 00 00 |................|
00000240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
*
00000280 fe f1 64 06 00 00 00 00 00 00 00 00 00 00 00 00 |..d.............|
00000290 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
000002a0 00 40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |.@..............|
000002b0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
*
000002e0 00 00 00 00 00 00 00 64 00 00 00 00 00 00 00 00 |.......d........|
000002f0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
00000300
fancurve
EC Chip ID: 8226
EC Chip Version: 1a2
legion_laptop features: fancurve powermode platformprofile platformprofilenotify minifancurve
legion_laptop ec_readonly: 0
ACPI CFG error: 0
ACPI CFG: 3155031318
temperature access method: 1
CPU temperature error: 0
CPU temperature: 33
CPU temperature EC error: 0
CPU temperature EC: 33
CPU temperature ACPI error: 0
CPU temperature ACPI: 42
CPU temperature WMI error: 0
CPU temperature WMI: 0
CPU temperature WMI2 error: -14
CPU temperature WMI2: 0
CPU temperature WMI3 error: -14
CPU temperature WMI3: 0
GPU temperature error: 0
GPU temperature: 35
GPU temperature EC error: 0
GPU temperature EC: 35
GPU temperature ACPI error: -5
GPU temperature ACPI: 35
GPU temperature WMI error: 0
GPU temperature WMI: 0
GPU temperature WMI2 error: -14
GPU temperature WMI2: 0
GPU temperature WMI3 error: -14
GPU temperature WMI3: 0
fan speed access method: 1
1 fanspeed error: 0
1 fanspeed: 0
1 fanspeed EC error: 0
1 fanspeed EC: 0
1 fanspeed ACPI error: 0
1 fanspeed ACPI: 0
1 fanspeed WMI error: 0
1 fanspeed WMI: 0
1 fanspeed WMI2 error: -14
1 fanspeed WMI2: 0
1 fanspeed WMI3 error: -14
1 fanspeed WMI3: 0
2 fanspeed error: 0
2 fanspeed: 0
2 fanspeed EC error: 0
2 fanspeed EC: 0
2 fanspeed ACPI error: 0
2 fanspeed ACPI: 2100
2 fanspeed WMI error: 0
2 fanspeed WMI: 2100
2 fanspeed WMI2 error: -14
2 fanspeed WMI2: 2100
2 fanspeed WMI3 error: -14
2 fanspeed WMI3: 2100
powermode access method: 3
powermode error: 0
powermode: 0
powermode EC error: 0
powermode EC: 0
powermode ACPI error: -5
powermode ACPI: 0
powermode WMI error: 0
powermode WMI: 0
has custom powermode: 1
ACPI rapidcharge error: 0
ACPI rapidcharge: 0
WMI backlight 2 state: 0
WMI backlight 3 state: -5
WMI light IO port: -5
WMI light Y logo/lid: -5
EC minifancurve feature enabled: 1
EC minifancurve on cool: true
EC lockfancontroller error: 0
EC lockfancontroller: false
fanfullspeed error: -22
fanfullspeed: 0
fanfullspeed EC error: 0
fanfullspeed EC: 0
EC fan curve current point id: 0
EC fan curve points size: 0
Current fan curve in hardware:
rpm1|rpm2|acceleration|deceleration|cpu_min_temp|cpu_max_temp|gpu_min_temp|gpu_max_temp|ic_min_temp|ic_max_temp
=====================
Current fan curve in hardware (WMI; might be empty)
rpm1|rpm2|acceleration|deceleration|cpu_min_temp|cpu_max_temp|gpu_min_temp|gpu_max_temp|ic_min_temp|ic_max_temp
=====================
dmesg
[ 35.551905] legion_laptop: Loading legion_laptop
[ 35.551960] legion PNP0C09:00: legion_laptop platform driver probing
[ 35.551962] legion PNP0C09:00: Read identifying information: DMI_SYS_VENDOR: LENOVO; DMI_PRODUCT_NAME: 80VR; DMI_BIOS_VERSION:4GCN38WW
[ 35.551964] legion_laptop: Read identifying information: DMI_SYS_VENDOR: LENOVO; DMI_PRODUCT_NAME: 80VR; DMI_BIOS_VERSION:4GCN38WW
[ 35.551968] legion PNP0C09:00: is_denied: 0; is_allowed: 1; do_load_by_list: 1; do_load: 1
[ 35.551970] legion PNP0C09:00: Using configuration for system: 4GCN
[ 35.552006] legion PNP0C09:00: ACPI CFG: 3155031318
[ 35.552008] legion_laptop: Creating RAM access to embedded controller
[ 35.552020] legion_laptop: Successfully mapped embedded controller: 0xfe00d400 (in RAM)/0x0 (in EC) to virtual 0x00000000d3a98658
[ 35.552161] legion PNP0C09:00: Read embedded controller ID 0x8226
[ 35.552163] legion PNP0C09:00: Creating debugfs interface
[ 35.552170] legion_laptop: Creating sysfs interface
[ 35.552186] legion_laptop: Creating hwmon interface
[ 35.552291] legion_laptop: Creating platform profile support
[ 35.552294] legion_laptop: Init WMI driver support
[ 35.552324] legion_wmi 887B54E3-DDDC-4B2C-8B88-68A26A8835D0: Register after probing for WMI.
[ 35.552349] legion_wmi BFD42481-AEE3-4501-A107-AFB68425C5F8: Register after probing for WMI.
[ 35.552363] legion_wmi D062906B-12D4-4510-999D-4831EE80E985: Register after probing for WMI.
[ 35.552376] legion_wmi BFD42481-AEE3-4502-A107-AFB68425C5F8: Register after probing for WMI.
[ 35.552387] legion_wmi BC72A435-E8C1-4275-B3E2-D8B8074ABA59: Register after probing for WMI.
[ 35.552399] legion_wmi 10AFC6D9-EA8B-4590-A2E7-1CD3C84BB4B1: Register after probing for WMI.
[ 35.552417] legion_laptop: Init keyboard backlight LED driver
[ 35.552420] legion_laptop: ACPI evaluation error for: 8C5B9127-ECD4-4657-980F-851019F99CA5:1
[ 35.552421] legion_laptop: Error for WMI method call to get brightness
[ 35.552422] legion_laptop: Error reading keyboard brightness
[ 35.552422] legion PNP0C09:00: Failed to init keyboard backlight LED driver. Skipping ...
[ 35.552423] legion_laptop: Init Y-Logo LED driver
[ 35.552424] legion_laptop: ACPI evaluation error for: 8C5B9127-ECD4-4657-980F-851019F99CA5:1
[ 35.552425] legion_laptop: Error for WMI method call to get brightness
[ 35.552426] legion_laptop: Error reading brightness for light: 3
[ 35.552427] legion PNP0C09:00: Failed to init Y-Logo LED driver. Skipping ...
[ 35.552428] legion_laptop: Init IO-Port LED driver
[ 35.552429] legion_laptop: ACPI evaluation error for: 8C5B9127-ECD4-4657-980F-851019F99CA5:1
[ 35.552430] legion_laptop: Error for WMI method call to get brightness
[ 35.552430] legion_laptop: Error reading brightness for light: 5
[ 35.552431] legion PNP0C09:00: Failed to init IO-Port LED driver. Skipping ...
[ 35.552432] legion PNP0C09:00: legion_laptop loaded for this device
[ 399.711094] legion_laptop: Set fancurve
[ 452.631225] legion_laptop: Set fancurve
[ 469.843168] legion_laptop: Set fancurve
[ 512.423389] legion_laptop: Set fancurve
Hi,
So, I tried to run on my Y720, but was unsuccessful, just like @lilongueti. Fortunately, I have an image from the original disk that came with it, so I booted it up, and got the WMI from windows and some WMI logs as well.
Interestingly, I noticed that the module echoes PNP0C09:00
, and windows event log uses PNP0C14
, so it maybe the problem for us...
Thanks @johnfanv2 and @MrDuartePT for your continued support!
Here is the data I got: WMI Fan Event
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<Events>
<Event xmlns='http://schemas.microsoft.com/win/2004/08/events/event'>
<System>
<Provider Name='Microsoft-Windows-WMI-Activity'
Guid='{1418ef04-b0b4-4623-bf7e-d74ab47bbdaa}' />
<EventID>12</EventID>
<Version>0</Version>
<Level>4</Level>
<Task>0</Task>
<Opcode>0</Opcode>
<Keywords>0x8000000000000000</Keywords>
<TimeCreated SystemTime='2024-04-20T21:21:33.4139462Z' />
<EventRecordID>28</EventRecordID>
<Correlation ActivityID='{7470b5d2-91ad-4089-a605-01da43274e57}' />
<Execution ProcessID='4112' ThreadID='11944' />
<Channel>Microsoft-Windows-WMI-Activity/Trace</Channel>
<Computer>LAPTOP-********</Computer>
<Security UserID='S-1-5-18' />
</System>
<UserData>
<Operation_Provider_Info_New xmlns='http://manifests.microsoft.com/win/2006/windows/WMI'>
<GroupOperationId>815</GroupOperationId>
<Operation>Provider::ExecMethod - WMIProv :
LENOVO_GAMEZONE_DATA.InstanceName="ACPI\\PNP0C14\\GMZN_0"::GetFanCoolingStatus</Operation>
<HostId>9280</HostId>
<ProviderName>WMIProv</ProviderName>
<ProviderGuid>{D2D588B5-D081-11d0-99E0-00C04FC2F8EC}</ProviderGuid>
<Path>%systemroot%\system32\wbem\wmiprov.dll</Path>
</Operation_Provider_Info_New>
</UserData>
</Event>
</Events>
Windows Powershell Script Result
##############################################
##############################################
##############################################
Name: LENOVO_GAMEZONE_FAN_COOLING_EVENT
Class Name: LENOVO_GAMEZONE_FAN_COOLING_EVENT
Class GUID: {BC72A435-E8C1-4275-B3E2-D8B8074ABA59}
Description: 0
Methods:
##############################################
##############################################
##############################################
Name: LENOVO_GAMEZONE_KEYLOCK_STATUS_EVENT
Class Name: LENOVO_GAMEZONE_KEYLOCK_STATUS_EVENT
Class GUID: {10AFC6D9-EA8B-4590-A2E7-1CD3C84BB4B1}
Description: 0
Methods:
##############################################
##############################################
##############################################
Name: LENOVO_GAMEZONE_TEMP_EVENT
Class Name: LENOVO_GAMEZONE_TEMP_EVENT
Class GUID: {BFD42481-AEE3-4501-A107-AFB68425C5F8}
Description: 0
Methods:
##############################################
##############################################
##############################################
Name: LENOVO_GAMEZONE_OC_EVENT
Class Name: LENOVO_GAMEZONE_OC_EVENT
Class GUID: {D062906B-12D4-4510-999D-4831EE80E985}
Description: 0
Methods:
##############################################
##############################################
##############################################
Name: LENOVO_GAMEZONE_GPU_TEMP_EVENT
Class Name: LENOVO_GAMEZONE_GPU_TEMP_EVENT
Class GUID: {BFD42481-AEE3-4502-A107-AFB68425C5F8}
Description: 0
Methods:
##############################################
##############################################
##############################################
Name: LENOVO_GAMEZONE_DATA
Class Name: LENOVO_GAMEZONE_DATA
Class GUID: {887B54E3-DDDC-4B2C-8B88-68A26A8835D0}
Description: 30
Methods:
Name: GetIRTemp
WmiMethodId: 1
Class Name: LENOVO_GAMEZONE_DATA
Class GUID: {887B54E3-DDDC-4B2C-8B88-68A26A8835D0}
Description: Get IR temp
Implemented: True
Name: GetThermalTableID
WmiMethodId: 2
Class Name: LENOVO_GAMEZONE_DATA
Class GUID: {887B54E3-DDDC-4B2C-8B88-68A26A8835D0}
Description: Get ThermalTable ID
Implemented: True
Name: SetThermalTableID
WmiMethodId: 3
Class Name: LENOVO_GAMEZONE_DATA
Class GUID: {887B54E3-DDDC-4B2C-8B88-68A26A8835D0}
Description: Set ThermalTable ID
Implemented: True
Name: IsSupportGpuOC
WmiMethodId: 4
Class Name: LENOVO_GAMEZONE_DATA
Class GUID: {887B54E3-DDDC-4B2C-8B88-68A26A8835D0}
Description: Is SupportGpu OverClock
Implemented: True
Name: GetGpuGpsState
WmiMethodId: 5
Class Name: LENOVO_GAMEZONE_DATA
Class GUID: {887B54E3-DDDC-4B2C-8B88-68A26A8835D0}
Description: Get GpuGpsState
Implemented: True
Name: SetGpuGpsState
WmiMethodId: 6
Class Name: LENOVO_GAMEZONE_DATA
Class GUID: {887B54E3-DDDC-4B2C-8B88-68A26A8835D0}
Description: Set GpuGpsState
Implemented: True
Name: GetFanCount
WmiMethodId: 7
Class Name: LENOVO_GAMEZONE_DATA
Class GUID: {887B54E3-DDDC-4B2C-8B88-68A26A8835D0}
Description: Get Fan Count
Implemented: True
Name: GetFan1Speed
WmiMethodId: 8
Class Name: LENOVO_GAMEZONE_DATA
Class GUID: {887B54E3-DDDC-4B2C-8B88-68A26A8835D0}
Description: Get Fan1 Speed
Implemented: True
Name: GetFan2Speed
WmiMethodId: 9
Class Name: LENOVO_GAMEZONE_DATA
Class GUID: {887B54E3-DDDC-4B2C-8B88-68A26A8835D0}
Description: Get Fan2 Speed
Implemented: True
Name: GetFanMaxSpeed
WmiMethodId: 10
Class Name: LENOVO_GAMEZONE_DATA
Class GUID: {887B54E3-DDDC-4B2C-8B88-68A26A8835D0}
Description: Get Fan Max Speed
Implemented: True
Name: GetVersion
WmiMethodId: 11
Class Name: LENOVO_GAMEZONE_DATA
Class GUID: {887B54E3-DDDC-4B2C-8B88-68A26A8835D0}
Description: Get AslCode Version
Implemented: True
Name: IsSupportFanCooling
WmiMethodId: 12
Class Name: LENOVO_GAMEZONE_DATA
Class GUID: {887B54E3-DDDC-4B2C-8B88-68A26A8835D0}
Description: Fan cooling capabilty
Implemented: True
Name: SetFanCooling
WmiMethodId: 13
Class Name: LENOVO_GAMEZONE_DATA
Class GUID: {887B54E3-DDDC-4B2C-8B88-68A26A8835D0}
Description: Set Fan cooling on/off
Implemented: True
Name: IsSupportCpuOC
WmiMethodId: 14
Class Name: LENOVO_GAMEZONE_DATA
Class GUID: {887B54E3-DDDC-4B2C-8B88-68A26A8835D0}
Description: cpu oc capability
Implemented: True
Name: IsBIOSSupportOC
WmiMethodId: 15
Class Name: LENOVO_GAMEZONE_DATA
Class GUID: {887B54E3-DDDC-4B2C-8B88-68A26A8835D0}
Description: bios has overclock capability
Implemented: True
Name: SetBIOSOC
WmiMethodId: 16
Class Name: LENOVO_GAMEZONE_DATA
Class GUID: {887B54E3-DDDC-4B2C-8B88-68A26A8835D0}
Description: enble or disable overclock in bios
Implemented: True
Name: GetTriggerTemperatureValue
WmiMethodId: 17
Class Name: LENOVO_GAMEZONE_DATA
Class GUID: {887B54E3-DDDC-4B2C-8B88-68A26A8835D0}
Description: Get temperature change trigger temp value
Implemented: True
Name: GetCPUTemp
WmiMethodId: 18
Class Name: LENOVO_GAMEZONE_DATA
Class GUID: {887B54E3-DDDC-4B2C-8B88-68A26A8835D0}
Description: Get CPU temperature
Implemented: True
Name: GetGPUTemp
WmiMethodId: 19
Class Name: LENOVO_GAMEZONE_DATA
Class GUID: {887B54E3-DDDC-4B2C-8B88-68A26A8835D0}
Description: Get GPU temperature
Implemented: True
Name: GetFanCoolingStatus
WmiMethodId: 20
Class Name: LENOVO_GAMEZONE_DATA
Class GUID: {887B54E3-DDDC-4B2C-8B88-68A26A8835D0}
Description: Get Fan cooling on/off status
Implemented: True
Name: IsSupportDisableWinKey
WmiMethodId: 21
Class Name: LENOVO_GAMEZONE_DATA
Class GUID: {887B54E3-DDDC-4B2C-8B88-68A26A8835D0}
Description: EC support disable windows key capability
Implemented: True
Name: SetWinKeyStatus
WmiMethodId: 22
Class Name: LENOVO_GAMEZONE_DATA
Class GUID: {887B54E3-DDDC-4B2C-8B88-68A26A8835D0}
Description: Set windows key disable/enable
Implemented: True
Name: GetWinKeyStatus
WmiMethodId: 23
Class Name: LENOVO_GAMEZONE_DATA
Class GUID: {887B54E3-DDDC-4B2C-8B88-68A26A8835D0}
Description: Get windows key disable/enable status
Implemented: True
Name: IsSupportDisableTP
WmiMethodId: 24
Class Name: LENOVO_GAMEZONE_DATA
Class GUID: {887B54E3-DDDC-4B2C-8B88-68A26A8835D0}
Description: EC support disable touchpad capability
Implemented: True
Name: SetTPStatus
WmiMethodId: 25
Class Name: LENOVO_GAMEZONE_DATA
Class GUID: {887B54E3-DDDC-4B2C-8B88-68A26A8835D0}
Description: Set touchpad disable/enable
Implemented: True
Name: GetTPStatus
WmiMethodId: 26
Class Name: LENOVO_GAMEZONE_DATA
Class GUID: {887B54E3-DDDC-4B2C-8B88-68A26A8835D0}
Description: Get touchpad disable/enable status
Implemented: True
Name: GetGPUPow
WmiMethodId: 27
Class Name: LENOVO_GAMEZONE_DATA
Class GUID: {887B54E3-DDDC-4B2C-8B88-68A26A8835D0}
Description: Get GPU normal mode max TDP(W)
Implemented: True
Name: GetGPUOCPow
WmiMethodId: 28
Class Name: LENOVO_GAMEZONE_DATA
Class GUID: {887B54E3-DDDC-4B2C-8B88-68A26A8835D0}
Description: Get GPU OC mode max TDP(W)
Implemented: True
Name: GetGPUOCType
WmiMethodId: 29
Class Name: LENOVO_GAMEZONE_DATA
Class GUID: {887B54E3-DDDC-4B2C-8B88-68A26A8835D0}
Description: Get GPU OC Type
Implemented: True
Name: GetKeyboardfeaturelist
WmiMethodId: 30
Class Name: LENOVO_GAMEZONE_DATA
Class GUID: {887B54E3-DDDC-4B2C-8B88-68A26A8835D0}
Description: Get Keyboard Feature List
Implemented: True
##############################################
##############################################
##############################################
Name: Lenovo_SystemElement
Class Name: Lenovo_SystemElement
Class GUID:
Description: 0
Methods:
##############################################
##############################################
##############################################
Name: Lenovo_BatteryInformation
Class Name: Lenovo_BatteryInformation
Class GUID: C3A03776-51AC-49AA-AD0F-F2F7D62C3F3C
Description: 0
Methods:
##############################################
##############################################
##############################################
Name: LENOVO_GAMEZONE_CPU_OC_DATA
Class Name: LENOVO_GAMEZONE_CPU_OC_DATA
Class GUID: {887B54E1-DDDC-4B2C-8B88-68A26A8835D0}
Description: 0
Methods:
##############################################
##############################################
##############################################
Name: LENOVO_GAMEZONE_GPU_OC_DATA
Class Name: LENOVO_GAMEZONE_GPU_OC_DATA
Class GUID: {887B54E2-DDDC-4B2C-8B88-68A26A8835D0}
Description: 0
Methods:
I know it's an older model, but it always had overheating problems (99 C while gaming) and i was hoping this would help
Distribution: Pop!_OS 22.04 LTS Model name: Legion Y720 CPU model: Intel i7 7700HQ GPU model: Nvidia GTX 1060 Keyboard backlight: single color with off/medium/bright Light in lid or logo: yes, but i dont think its configurable, at least not on windows Light at IO-Ports at back: no
Output of
sudo dmidecode -t system
. Please remove Serial Number and UUID for privacy:Output of
sudo dmidecode -t bios
:Output of
sudo cat /sys/kernel/debug/legion/fancurve
: