Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Legion Slim 5 16APH8 - Type 82Y9 support #265

Open
Lontor opened this issue Oct 5, 2024 · 0 comments
Open

Legion Slim 5 16APH8 - Type 82Y9 support #265

Lontor opened this issue Oct 5, 2024 · 0 comments

Comments

@Lontor
Copy link

Lontor commented Oct 5, 2024

Problem Description

  1. Driver Loading Error
    When running sudo make reloadmodule, I encounter the following error:
legion_laptop: Loading legion_laptop
legion PNP0C09:00: legion_laptop platform driver probing
legion PNP0C09:00: Read identifying information: DMI_SYS_VENDOR: LENOVO; DMI_PRODUCT_NAME: 82Y9; DMI_BIOS_VERSION:M3CN43WW
legion_laptop: Read identifying information: DMI_SYS_VENDOR: LENOVO; DMI_PRODUCT_NAME: 82Y9; DMI_BIOS_VERSION:M3CN43WW
legion PNP0C09:00: is_denied: 0; is_allowed: 1; do_load_by_list: 1; do_load: 1
legion PNP0C09:00: Using configuration for system: M3CN
legion PNP0C09:00: Could not evaluate ACPI _STA
legion PNP0C09:00: Could not init ACPI access: -5
legion_laptop: Unloading legion shared
legion_laptop: Unloading legion shared done
legion PNP0C09:00: legion_laptop not loaded for this device
legion PNP0C09:00: probe with driver legion failed with error -5

However, when I run sudo make forcereloadmodule, the driver loads without errors, but there are issues with certain features, as described below.

  1. The Fan Curve menu is active, but when I try to read or apply settings, the application crashes with the following errors:
    Error on "Read from HW":
Traceback (most recent call last):
  File "/usr/lib/python3.12/site-packages/legion_linux/legion_gui.py", line 869, in on_read_fan_curve_from_hw
    self.model.read_fancurve_from_hw()
  File "/usr/lib/python3.12/site-packages/legion_linux/legion.py", line 1469, in read_fancurve_from_hw
    self.fan_curve = self.fancurve_io.read_fan_curve()
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.12/site-packages/legion_linux/legion.py", line 942, in read_fan_curve
    fan1_speed = self.get_fan_1_speed(point_id)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.12/site-packages/legion_linux/legion.py", line 848, in get_fan_1_speed
    return self._read_file(file_path)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.12/site-packages/legion_linux/legion.py", line 777, in _read_file
    return int(filepointer.read())
               ^^^^^^^^^^^^^^^^^^
OSError: [Errno 95] Operation not supported

Error on "Write to HW":

Traceback (most recent call last):
  File "/usr/lib/python3.12/site-packages/legion_linux/legion_gui.py", line 875, in on_write_fan_curve_to_hw
    self.model.read_fancurve_from_hw()
  File "/usr/lib/python3.12/site-packages/legion_linux/legion.py", line 1469, in read_fancurve_from_hw
    self.fan_curve = self.fancurve_io.read_fan_curve()
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.12/site-packages/legion_linux/legion.py", line 942, in read_fan_curve
    fan1_speed = self.get_fan_1_speed(point_id)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.12/site-packages/legion_linux/legion.py", line 848, in get_fan_1_speed
    return self._read_file(file_path)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.12/site-packages/legion_linux/legion.py", line 777, in _read_file
    return int(filepointer.read())
               ^^^^^^^^^^^^^^^^^^
OSError: [Errno 95] Operation not supported
  • Fn Lock: Working
  • Win Key Enabled: Working
  • Touchpad Enabled: Working
  • Camera Power Enabled: Not active (this model has a physical switch for camera)
  • Battery Conservation: Appears to be working
  • Rapid Charging: Appears to be working
  • Charge Output from USB Always On: Causes an error:
INFO:legion_linux.legion:Feature AlwaysOnUSBChargingFeature reading
INFO:legion_linux.legion:Feature AlwaysOnUSBChargingFeature reading: 1
INFO:legion_linux.legion:Click on UI Charge Output from U&SB always on element for AlwaysOnUSBChargingFeature
Error occured 
Traceback (most recent call last):
  File "/usr/lib/python3.12/site-packages/legion_linux/legion_gui.py", line 246, in update_feature_from_view
    self.feature.set(gui_value)
  File "/usr/lib/python3.12/site-packages/legion_linux/legion.py", line 490, in set
    raise NotImplementedError()
NotImplementedError
  • Display Overdrive: Working
  • Y-Logo Control: Active, but does not work (this laptop does not have this feature, it should be inactive)
  • IO-Port Control: Active, but should not be
  • Hybrid Mode: Might be working, but I'm unsure how to verify this
  • Power Mode/Platform Profile: Working
  • CPU Overclocking: Active, but not working

Model and Debug Info

Distribution: EndeavourOS (Arch)
Model name: 82Y9 Legion R7000P APH8 (Legion Slim 5 16APH8 - Type 82Y9)
CPU model: AMD Ryzen 7 7840H
GPU model: NVIDIA RTX 4060
Keyboard backlight: single color with off/medium/bright
Light in lid or logo: no
Light at IO-Ports at back: no

Output of sudo dmidecode -t system:

# dmidecode 3.6
Getting SMBIOS data from sysfs.
SMBIOS 3.4.0 present.

Handle 0x0001, DMI type 1, 27 bytes
System Information
        Manufacturer: LENOVO
        Product Name: 82Y9
        Version: Legion R7000P APH8
        Serial Number: 
        UUID: 
        Wake-up Type: Power Switch
        SKU Number: LENOVO_MT_82Y9_BU_idea_FM_Legion R7000P APH8
        Family: Legion R7000P APH8

Handle 0x001B, DMI type 12, 5 bytes
System Configuration Options
        Option 1: String1 for Type12 Equipment Manufacturer
        Option 2: String2 for Type12 Equipment Manufacturer
        Option 3: String3 for Type12 Equipment Manufacturer
        Option 4: String4 for Type12 Equipment Manufacturer

Handle 0x002A, DMI type 32, 20 bytes
System Boot Information
        Status: No errors detected

Output of sudo dmidecode -t bios:

# dmidecode 3.6
Getting SMBIOS data from sysfs.
SMBIOS 3.4.0 present.

Handle 0x0000, DMI type 0, 26 bytes
BIOS Information
        Vendor: LENOVO
        Version: M3CN43WW
        Release Date: 04/11/2024
        Address: 0xE0000
        Runtime Size: 128 kB
        ROM Size: 32 MB
        Characteristics:
                PCI is supported
                BIOS is upgradeable
                BIOS shadowing is allowed
                Boot from CD is supported
                Selectable boot is supported
                EDD is supported
                Japanese floppy for NEC 9800 1.2 MB is supported (int 13h)
                Japanese floppy for Toshiba 1.2 MB is supported (int 13h)
                5.25"/360 kB floppy services are supported (int 13h)
                5.25"/1.2 MB floppy services are supported (int 13h)
                3.5"/720 kB floppy services are supported (int 13h)
                3.5"/2.88 MB floppy services are supported (int 13h)
                8042 keyboard services are supported (int 9h)
                CGA/mono video services are supported (int 10h)
                ACPI is supported
                USB legacy is supported
                BIOS boot specification is supported
                Targeted content distribution is supported
                UEFI is supported
        BIOS Revision: 1.43
        Firmware Revision: 1.43

Handle 0x001C, DMI type 13, 22 bytes
BIOS Language Information
        Language Description Format: Long
        Installable Languages: 4
                en|US|iso8859-1
                fr|FR|iso8859-1
                ja|JP|unicode
                zh|TW|unicode
        Currently Installed Language: en|US|iso8859-1

Output of sudo cat /sys/kernel/debug/legion/fancurve:

EC Chip ID: 8227
EC Chip Version: 2a4
legion_laptop features: fancurve powermode platformprofile platformprofilenotify minifancurve
legion_laptop ec_readonly: 0
ACPI CFG error: 0
ACPI CFG: 4228186128
temperature access method: 5
CPU temperature error: 0
CPU temperature: 51
CPU temperature EC error: 0
CPU temperature EC: 0
CPU temperature ACPI error: -5
CPU temperature ACPI: 0
CPU temperature WMI error: 0
CPU temperature WMI: 51
CPU temperature WMI2 error: 0
CPU temperature WMI2: 0
CPU temperature WMI3 error: 0
CPU temperature WMI3: 51
GPU temperature error: 0
GPU temperature: 46
GPU temperature EC error: 0
GPU temperature EC: 0
GPU temperature ACPI error: -5
GPU temperature ACPI: 0
GPU temperature WMI error: 0
GPU temperature WMI: 46
GPU temperature WMI2 error: 0
GPU temperature WMI2: 0
GPU temperature WMI3 error: 0
GPU temperature WMI3: 46
fan speed access method: 5
1 fanspeed error: 0
1 fanspeed: 1500
1 fanspeed EC error: 0
1 fanspeed EC: 0
1 fanspeed ACPI error: -5
1 fanspeed ACPI: 0
1 fanspeed WMI error: 0
1 fanspeed WMI: 0
1 fanspeed WMI2 error: 0
1 fanspeed WMI2: 0
1 fanspeed WMI3 error: 0
1 fanspeed WMI3: 1500
2 fanspeed error: 0
2 fanspeed: 1500
2 fanspeed EC error: 0
2 fanspeed EC: 0
2 fanspeed ACPI error: 0
2 fanspeed ACPI: 1500
2 fanspeed WMI error: 0
2 fanspeed WMI: 0
2 fanspeed WMI2 error: 0
2 fanspeed WMI2: 0
2 fanspeed WMI3 error: 0
2 fanspeed WMI3: 1500
powermode access method: 3
powermode error: 0
powermode: 255
powermode EC error: 0
powermode EC: 230
powermode ACPI error: -5
powermode ACPI: 0
powermode WMI error: 0
powermode WMI: 255
has custom powermode: 1
ACPI rapidcharge error: 0
ACPI rapidcharge: 0
WMI backlight 2 state: 0
WMI backlight 3 state: 0
WMI light IO port: 1
WMI light Y logo/lid: 1
EC minifancurve feature enabled: 0
EC minifancurve on cool: error
EC lockfancontroller error: 0
EC lockfancontroller: false
fanfullspeed error: 0
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
=====================

If you need any further information or logs, feel free to ask! Thank you for looking into this issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant