-
Notifications
You must be signed in to change notification settings - Fork 39
Open
Description
Description
When connecting an external AMD GPU (eGPU) in addition to the internal AMD GPU, requiring the use of Mesa for both, GPU‑related functionality in hhd fails to start. This prevents the CPU power-profile-daemon from starting, which in turn stops scheduling adjustments from working.
Steps to Reproduce
- Connect an external AMD GPU to a system already using an AMD iGPU.
- Start hhd.service
Expected Behavior
- Both GPUs should be correctly detected and initialized.
- AMD GPU plugin should load without errors.
power-profile-daemonshould start and allow CPU scheduling modifications.
Actual Behavior
- AMD GPU plugin fails to start due to missing
pp_od_clk_voltagepath. - Related functions are disabled, causing
power-profile-daemonnot to launch. - CPU scheduling adjustments cannot be applied.
System Information
OS: CachyOS x86_64
Host: GPD Win Max 2 (G1619-04, Ver.1.0)
Kernel: Linux 6.16.2-2-cachyos-lto
DE: GNOME 48.4 (Wayland)
CPU: AMD Ryzen 7 7840U (16) @ 5.13 GHz
GPU 1: AMD Radeon RX 9070 XT [Discrete, External]
GPU 2: AMD Radeon 780M Graphics [Integrated]
RAM: 46.85 GiB
Locale: zh_CN.UTF-8
Relevant Logs
2025-08-26 21:40:17,679 logging INFO Handheld Daemon starting...
2025-08-26 21:40:17,680 __main__ INFO Trying to acquire hhd lock...
2025-08-26 21:40:17,681 utils INFO Running under Linux distro 'arch'.
2025-08-26 21:40:17,691 __main__ INFO Running autodetection...
2025-08-26 21:40:17,725 __main__ INFO Found plugin providers: adjustor, aura, ayaneo, bootc, debug, generic, gpd_win, legion_go, msi_claw, onexplayer, orange_pi, overlay, power, powerbuttond, rgb, rog_ally
2025-08-26 21:40:17,735 __main__ INFO Loaded the following plugins:
- adjustor: adjustor_smu, adjustor_smu_qam, adjustor_init, adjustor_main, adjustor_battery, adjustor_ppd
- gpd_win: gpd_win_controllers@'GPD Win Max 2 (04)', gpd_wincontrols@'GPD Win Max 2 (04)'
- overlay: overlay
- power: power
- powerbuttond: powerbuttond@'GPD Win Max 2'
- rgb: controller_rgb
2025-08-26 21:40:17,736 __main__ INFO Loaded the following locales:
- adjustor (20): /usr/lib/python3.13/site-packages/hhd/i18n/./
- hhd (10): /usr/lib/python3.13/site-packages/hhd/i18n/./
2025-08-26 21:40:17,737 __init__ INFO Found thermal zones:
2025-08-26 21:40:17,737 __init__ INFO /sys/class/thermal/thermal_zone0/temp: hot @ 105C
2025-08-26 21:40:17,737 __init__ INFO Found battery:
/sys/class/power_supply/BAT0
2025-08-26 21:40:17,739 __main__ INFO Reloading configuration.
2025-08-26 21:40:17,786 __main__ INFO Handheld Daemon Version: 3.19.4
2025-08-26 21:40:17,787 __main__ INFO Adjustor Version: 3.11.4
2025-08-26 21:40:17,790 __main__ INFO Overlay Version:
2025-08-26 21:40:17,791 __main__ INFO No profiles found.
2025-08-26 21:40:17,791 __main__ INFO Initialization Complete!
2025-08-26 21:40:17,798 __main__ INFO AC status is: True
2025-08-26 21:40:17,805 acpi INFO 'acpi_call' modprobe output:
2025-08-26 21:40:17,807 __init__ WARNING Setting battery alarm to 164985/3882000 mAh/mWh (5%)
2025-08-26 21:40:17,841 __init__ INFO Starting shortcut loop with:
kbd: True, touch: True, custom: False, ctrl: True, disable_touch: False
2025-08-26 21:40:17,842 sdl ERROR Failed to load SDL gamepad mappings from /usr/share/sdl/gamecontrollerdb.txt:
[Errno 2] No such file or directory: '/usr/share/sdl/gamecontrollerdb.txt'
2025-08-26 21:40:17,937 events INFO Starting ACPI Event handler.
2025-08-26 21:40:17,937 hhd INFO Starting FUSE mount for /sys.
2025-08-26 21:40:17,938 utils INFO Found GPU at:
'/sys/devices/pci0000:00/0000:00:01.1/0000:01:00.0/0000:02:00.0/0000:03:00.0/hwmon/hwmon6'
2025-08-26 21:40:17,939 utils INFO Creating bind mount for:
'/sys/devices/pci0000:00/0000:00:01.1/0000:01:00.0/0000:02:00.0/0000:03:00.0/hwmon/hwmon6'
to:
'/run/hhd-tdp/hwmon'
2025-08-26 21:40:17,941 utils INFO Making bind mount private.
2025-08-26 21:40:17,942 utils INFO Launching FUSE mount over:
'/sys/devices/pci0000:00/0000:00:01.1/0000:01:00.0/0000:02:00.0/0000:03:00.0/hwmon/hwmon6'
2025-08-26 21:40:17,962 utils INFO Starting TDP client on socket:
'/run/hhd-tdp/socket'
2025-08-26 21:40:17,963 utils INFO Connected to TDP socket.
2025-08-26 21:40:17,964 base INFO Starting isa keyboard powerbutton handler for device 'GPD Win Max 2'.
2025-08-26 21:40:17,965 base INFO Waiting for steam to launch.
2025-08-26 21:40:17,971 __main__ INFO Reloading settings.
2025-08-26 21:40:17,978 __init__ ERROR Failed to get AMD GPU status:
[Errno 2] No such file or directory: '/sys/devices/pci0000:00/0000:00:01.1/0000:01:00.0/0000:02:00.0/0000:03:00.0/hwmon/hwmon6/device/pp_od_clk_voltage'
2025-08-26 21:40:17,978 __init__ ERROR Traceback (most recent call last):
File "/usr/lib/python3.13/site-packages/adjustor/drivers/gpu/__init__.py", line 102, in settings
status = get_igpu_status()
File "/usr/lib/python3.13/site-packages/adjustor/fuse/gpu.py", line 84, in get_igpu_status
with open(os.path.join(hwmon, GPU_FREQUENCY_PATH), "r") as f:
~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
FileNotFoundError: [Errno 2] No such file or directory: '/sys/devices/pci0000:00/0000:00:01.1/0000:01:00.0/0000:02:00.0/0000:03:00.0/hwmon/hwmon6/device/pp_od_clk_voltage'
2025-08-26 21:40:17,979 __init__ ERROR Could not get frequency status. Disabling AMD GPU plugin.
2025-08-26 21:40:17,983 platform INFO Could not enumerate platform profile choices. Disabling platform profile.
2025-08-26 21:40:18,010 alib INFO Sending SMU command with 4 parameters:
- fast_limit (0x06): 20
- slow_limit (0x07): 20
- skin_limit (0x2e): 18
- stapm_limit (0x05): 18
2025-08-26 21:40:18,011 acpi INFO Executing ACPI call:
'\_SB.ALIB 0x0c b160006204e000007204e00002e504600000550460000'
2025-08-26 21:40:18,063 base INFO Launching emulated controller.
2025-08-26 21:40:18,065 outputs INFO Gamepadui closed. Disabling touchpad emulation.
2025-08-26 21:40:18,132 __init__ INFO Opening virtual device 'Xbox Elite'.
2025-08-26 21:40:18,142 __init__ ERROR Monkey patch probably failed. Could not create evdev device with uniq:
[Errno 22] Invalid argument
2025-08-26 21:40:18,144 base INFO Emulated controller launched, have fun!
2025-08-26 21:40:19,846 controllers INFO Found new shortcut devices:
- 'GXTP7385:00 27C6:0113' [27c6:0113] (Touchscreen[GPD Win Max 2 (04)])
Additional Notes
- Issue occurs only when both GPUs are AMD and require Mesa simultaneously.
- Disabling one GPU allows
hhdto function normally.
Metadata
Metadata
Assignees
Labels
No labels