7900XTX Fan Curve

Hey I own a AMD 7900XTX and while I may be new to Garuda, I’ve used other Arch distros in the past.
But I always keep running into this major problem : Getting fan curves on my 7900XTX.
CoreCtrl Doesn’t work.
LACT Doesn’t work.
Trying to edit /sys/class/drm/card1/device/gpu_od/fan_ctrl/fan_curve doesn’t work ( or I did it wrong/permission issue ).

6.7 kernel was suppose to include a way for us to control RNDA 3 fan speeds right?
I’m on 6.7.5-zen1-1-zen.
I’m at my rope’s end on this and am utterly desperate. If this is something not possible with Arch at all, I really would like advice on another distro that would 100% work with this card.

What’s the problem with not posting garuda-inxi?
It contains additional, useful information about the status of your system.

:warning: Missing information requested in the template may result in not receiving assistance

Make sure you have done the following before you post:

Issue still unresolved? Then:

  • ONE issue per topic.

  • Describe your issue in detail. The more we know, the better we can help

  • Show us the results of your searches, and what you’ve tried

  • After rebooting, post the FULL output of garuda-inxi in the body of the post (not linked externally, or collapsed with the “hide details” feature)

  • Format terminal output (including your garuda-inxi) as a code block by clicking the preformatted text button (</>) , or put three tildes (~) above and below the text

Without garuda-inxi this request will be moved to 412 Precondition Failed

Seems new hardware in use, just wait a little or try M$.

1 Like

Ah sorry, here’s the inxi

System:
Kernel: 6.7.5-zen1-1-zen arch: x86_64 bits: 64 compiler: gcc v: 13.2.1
clocksource: tsc avail: hpet,acpi_pm
parameters: BOOT_IMAGE=/@/boot/vmlinuz-linux-zen
root=UUID=05ff0ead-9d40-4317-a80c-782a377691ea rw rootflags=subvol=@
quiet loglevel=3 ibt=off
Desktop: KDE Plasma v: 5.27.10 tk: Qt v: 5.15.12 info: frameworks
v: 5.115.0 wm: kwin_wayland vt: 1 dm: SDDM Distro: Garuda base: Arch Linux
Machine:
Type: Desktop System: Gigabyte product: X570 AORUS ELITE WIFI v: -CF
serial: <superuser required>
Mobo: Gigabyte model: X570 AORUS ELITE WIFI serial: <superuser required>
uuid: <superuser required> UEFI: American Megatrends LLC. v: F38b
date: 03/23/2023
CPU:
Info: model: AMD Ryzen 9 5900X bits: 64 type: MT MCP arch: Zen 3+ gen: 4
level: v3 note: check built: 2022 process: TSMC n6 (7nm) family: 0x19 (25)
model-id: 0x21 (33) stepping: 0 microcode: 0xA201025
Topology: cpus: 1x cores: 12 tpc: 2 threads: 24 smt: enabled cache:
L1: 768 KiB desc: d-12x32 KiB; i-12x32 KiB L2: 6 MiB desc: 12x512 KiB
L3: 64 MiB desc: 2x32 MiB
Speed (MHz): avg: 2396 high: 2873 min/max: 2200/4950 boost: enabled
scaling: driver: acpi-cpufreq governor: ondemand cores: 1: 2799 2: 2777
3: 2770 4: 2268 5: 2263 6: 2261 7: 2205 8: 2429 9: 2250 10: 2235 11: 2200
12: 2200 13: 2200 14: 2228 15: 2650 16: 2239 17: 2200 18: 2453 19: 2200
20: 2602 21: 2873 22: 2818 23: 2200 24: 2207 bogomips: 177600
Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3 svm
Vulnerabilities: <filter>
Graphics:
Device-1: AMD Navi 31 [Radeon RX 7900 XT/7900 XTX/7900M]
vendor: Sapphire NITRO+ driver: amdgpu v: kernel arch: RDNA-3 code: Navi-3x
process: TSMC n5 (5nm) built: 2022+ pcie: gen: 4 speed: 16 GT/s lanes: 16
ports: active: DP-1,DP-2 empty: HDMI-A-1,HDMI-A-2 bus-ID: 0b:00.0
chip-ID: 1002:744c class-ID: 0300
Display: wayland server: X.org v: 1.21.1.11 with: Xwayland v: 23.2.4
compositor: kwin_wayland driver: X: loaded: amdgpu
unloaded: modesetting,radeon alternate: fbdev,vesa dri: radeonsi
gpu: amdgpu d-rect: 5120x1440 display-ID: 0
Monitor-1: DP-1 pos: right res: 2560x1440 size: N/A modes: N/A
Monitor-2: DP-2 pos: primary,left res: 2560x1440 size: N/A modes: N/A
API: EGL v: 1.5 hw: drv: amd radeonsi platforms: device: 0 drv: radeonsi
device: 1 drv: swrast surfaceless: drv: radeonsi wayland: drv: radeonsi x11:
drv: radeonsi inactive: gbm
API: OpenGL v: 4.6 compat-v: 4.5 vendor: amd mesa v: 24.0.1-arch1.1
glx-v: 1.4 direct-render: yes renderer: AMD Radeon RX 7900 XTX (radeonsi
navi31 LLVM 16.0.6 DRM 3.57 6.7.5-zen1-1-zen) device-ID: 1002:744c
memory: 23.44 GiB unified: no display-ID: :1.0
API: Vulkan v: 1.3.276 layers: 13 device: 0 type: discrete-gpu name: AMD
Radeon RX 7900 XTX (RADV NAVI31) driver: mesa radv v: 24.0.1-arch1.1
device-ID: 1002:744c surfaces: xcb,xlib,wayland device: 1 type: cpu
name: llvmpipe (LLVM 16.0.6 256 bits) driver: mesa llvmpipe
v: 24.0.1-arch1.1 (LLVM 16.0.6) device-ID: 10005:0000
surfaces: xcb,xlib,wayland
Audio:
Device-1: AMD Navi 31 HDMI/DP Audio driver: snd_hda_intel v: kernel pcie:
gen: 4 speed: 16 GT/s lanes: 16 bus-ID: 0b:00.1 chip-ID: 1002:ab30
class-ID: 0403
Device-2: AMD Starship/Matisse HD Audio vendor: Gigabyte
driver: snd_hda_intel v: kernel pcie: gen: 4 speed: 16 GT/s lanes: 16
bus-ID: 0d:00.4 chip-ID: 1022:1487 class-ID: 0403
Device-3: Audio-Technica ATR2100x-USB Microphone
driver: hid-generic,snd-usb-audio,usbhid type: USB rev: 2.0 speed: 480 Mb/s
lanes: 1 mode: 2.0 bus-ID: 3-6.1:5 chip-ID: 0909:004d class-ID: 0300
API: ALSA v: k6.7.5-zen1-1-zen status: kernel-api with: aoss
type: oss-emulator tools: N/A
Server-1: PipeWire v: 1.0.3 status: active with: 1: pipewire-pulse
status: active 2: wireplumber status: active 3: pipewire-alsa type: plugin
4: pw-jack type: plugin tools: pactl,pw-cat,pw-cli,wpctl
Network:
Device-1: Intel Dual Band Wireless-AC 3168NGW [Stone Peak] driver: iwlwifi
v: kernel pcie: gen: 1 speed: 2.5 GT/s lanes: 1 bus-ID: 04:00.0
chip-ID: 8086:24fb class-ID: 0280
IF: wlp4s0 state: down mac: <filter>
Device-2: Intel I211 Gigabit Network vendor: Gigabyte driver: igb
v: kernel pcie: gen: 1 speed: 2.5 GT/s lanes: 1 port: f000 bus-ID: 05:00.0
chip-ID: 8086:1539 class-ID: 0200
IF: enp5s0 state: up speed: 1000 Mbps duplex: full mac: <filter>
Info: services: NetworkManager, systemd-timesyncd, wpa_supplicant
Bluetooth:
Device-1: Intel Wireless-AC 3168 Bluetooth driver: btusb v: 0.8 type: USB
rev: 2.0 speed: 12 Mb/s lanes: 1 mode: 1.1 bus-ID: 3-5:3 chip-ID: 8087:0aa7
class-ID: e001
Report: btmgmt ID: hci0 rfk-id: 0 state: up address: <filter> bt-v: 4.2
lmp-v: 8 status: discoverable: no pairing: no class-ID: 6c0104
Drives:
Local Storage: total: 15.01 TiB used: 2.73 TiB (18.2%)
SMART Message: Unable to run smartctl. Root privileges required.
ID-1: /dev/nvme0n1 maj-min: 259:0 vendor: Western Digital
model: WD BLACK SN750 2TB size: 1.82 TiB block-size: physical: 512 B
logical: 512 B speed: 31.6 Gb/s lanes: 4 tech: SSD serial: <filter>
fw-rev: 112000WD temp: 48.9 C scheme: GPT
ID-2: /dev/sda maj-min: 8:0 vendor: Samsung model: SSD 860 EVO 1TB
size: 931.51 GiB block-size: physical: 512 B logical: 512 B speed: 6.0 Gb/s
tech: SSD serial: <filter> fw-rev: 4B6Q scheme: GPT
ID-3: /dev/sdb maj-min: 8:16 vendor: Western Digital
model: WD60PURX-64WY0Y1 size: 5.46 TiB block-size: physical: 4096 B
logical: 512 B speed: 6.0 Gb/s tech: HDD rpm: 5700 serial: <filter>
fw-rev: 0A80 scheme: GPT
ID-4: /dev/sdc maj-min: 8:32 vendor: Samsung model: SSD 850 EVO 500GB
size: 465.76 GiB block-size: physical: 512 B logical: 512 B speed: 6.0 Gb/s
tech: SSD serial: <filter> fw-rev: 2B6Q scheme: GPT
ID-5: /dev/sdd maj-min: 8:48 vendor: Samsung model: SSD 870 EVO 2TB
size: 1.82 TiB block-size: physical: 512 B logical: 512 B speed: 6.0 Gb/s
tech: SSD serial: <filter> fw-rev: 2B6Q scheme: GPT
ID-6: /dev/sde maj-min: 8:64 vendor: Western Digital
model: WD40EZAZ-00SF3B0 size: 3.64 TiB block-size: physical: 4096 B
logical: 512 B speed: 6.0 Gb/s tech: HDD rpm: 5400 serial: <filter>
fw-rev: 0A80 scheme: GPT
ID-7: /dev/sdf maj-min: 8:80 vendor: Western Digital
model: WD10EZEX-08WN4A0 size: 931.51 GiB block-size: physical: 4096 B
logical: 512 B speed: 6.0 Gb/s tech: HDD rpm: 7200 serial: <filter>
fw-rev: 1A02 scheme: GPT
Partition:
ID-1: / raw-size: 465.46 GiB size: 465.46 GiB (100.00%)
used: 47.78 GiB (10.3%) fs: btrfs dev: /dev/sdc2 maj-min: 8:34
ID-2: /boot/efi raw-size: 300 MiB size: 299.4 MiB (99.80%)
used: 588 KiB (0.2%) fs: vfat dev: /dev/sdc1 maj-min: 8:33
ID-3: /home raw-size: 465.46 GiB size: 465.46 GiB (100.00%)
used: 47.78 GiB (10.3%) fs: btrfs dev: /dev/sdc2 maj-min: 8:34
ID-4: /var/log raw-size: 465.46 GiB size: 465.46 GiB (100.00%)
used: 47.78 GiB (10.3%) fs: btrfs dev: /dev/sdc2 maj-min: 8:34
ID-5: /var/tmp raw-size: 465.46 GiB size: 465.46 GiB (100.00%)
used: 47.78 GiB (10.3%) fs: btrfs dev: /dev/sdc2 maj-min: 8:34
Swap:
Kernel: swappiness: 133 (default 60) cache-pressure: 100 (default) zswap: no
ID-1: swap-1 type: zram size: 31.26 GiB used: 1.8 MiB (0.0%) priority: 100
comp: zstd avail: lzo,lzo-rle,lz4,lz4hc,842 max-streams: 24 dev: /dev/zram0
Sensors:
System Temperatures: cpu: 49.9 C mobo: 30.0 C gpu: amdgpu temp: 59.0 C
mem: 64.0 C
Fan Speeds (rpm): N/A gpu: amdgpu fan: 0
Info:
Memory: total: 32 GiB available: 31.26 GiB used: 11.19 GiB (35.8%)
Processes: 481 Power: uptime: 1h 2m states: freeze,mem,disk suspend: deep
avail: s2idle wakeups: 0 hibernate: platform avail: shutdown, reboot,
suspend, test_resume image: 12.49 GiB services: org_kde_powerdevil,
power-profiles-daemon, upowerd Init: systemd v: 255 default: graphical
tool: systemctl
Packages: 1766 pm: pacman pkgs: 1758 libs: 538 tools: octopi,paru,yay
pm: flatpak pkgs: 8 Compilers: gcc: 13.2.1 Shell: garuda-inxi default: fish
v: 3.7.0 running-in: konsole inxi: 3.3.33
Garuda (2.6.23-1):
System install date:     2024-01-27
Last full system update: 2024-02-21
Is partially upgraded:   No
Relevant software:       snapper NetworkManager dracut
Windows dual boot:       Probably (Run as root to verify)
Failed units:

I have also an AMD 7900 XTX (Sapphire Nitro+), but I am sorry to say, with my limited knowledge, I was not able to get the fan control working, as a test for you (I do not need it controlled, it just works for me).
I have tried:
CoreCtrl
LACT
TuxClocker
None of them are reading the fan speeds. Even garuda-inxi is showing “fan: 0” on Sensors. Reading temperatures or wattage is usually fine, though. If anyone else has any ideas, I might help testing.

System:
Kernel: 6.7.5-zen1-1-zen arch: x86_64 bits: 64 compiler: gcc v: 13.2.1
clocksource: tsc avail: hpet,acpi_pm
parameters: BOOT_IMAGE=/@/boot/vmlinuz-linux-zen
root=UUID=e69eb184-4f60-4c60-a81f-aa5e53e9580b rw rootflags=subvol=@
quiet loglevel=3 ibt=off
Desktop: KDE Plasma v: 5.27.10 tk: Qt v: 5.15.12 info: frameworks
v: 5.115.0 wm: kwin_wayland vt: 1 dm: SDDM Distro: Garuda base: Arch Linux
Machine:
Type: Desktop System: ASUS product: N/A v: N/A serial: <superuser required>
Mobo: ASUSTeK model: ROG STRIX B650E-F GAMING WIFI v: Rev 1.xx
serial: <superuser required> part-nu: SKU uuid: <superuser required>
UEFI: American Megatrends v: 2214 date: 01/02/2024
CPU:
Info: model: AMD Ryzen 7 7800X3D bits: 64 type: MT MCP arch: Zen 4 gen: 5
level: v4 note: check built: 2022+ process: TSMC n5 (5nm) family: 0x19 (25)
model-id: 0x61 (97) stepping: 2 microcode: 0xA601206
Topology: cpus: 1x cores: 8 tpc: 2 threads: 16 smt: enabled cache:
L1: 512 KiB desc: d-8x32 KiB; i-8x32 KiB L2: 8 MiB desc: 8x1024 KiB
L3: 96 MiB desc: 1x96 MiB
Speed (MHz): avg: 2597 high: 4394 min/max: 400/5050 scaling:
driver: amd-pstate-epp governor: powersave cores: 1: 3545 2: 3993 3: 4306
4: 400 5: 400 6: 3764 7: 400 8: 3751 9: 4394 10: 4385 11: 400 12: 400
13: 3586 14: 3909 15: 400 16: 3528 bogomips: 134393
Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3 svm
Vulnerabilities: <filter>
Graphics:
Device-1: AMD Navi 31 [Radeon RX 7900 XT/7900 XTX/7900M]
vendor: Sapphire NITRO+ driver: amdgpu v: kernel arch: RDNA-3 code: Navi-3x
process: TSMC n5 (5nm) built: 2022+ pcie: gen: 4 speed: 16 GT/s lanes: 16
ports: active: DP-1 empty: DP-2,HDMI-A-1,HDMI-A-2 bus-ID: 03:00.0
chip-ID: 1002:744c class-ID: 0300
Device-2: AMD Raphael vendor: ASUSTeK driver: amdgpu v: kernel
arch: RDNA-2 code: Navi-2x process: TSMC n7 (7nm) built: 2020-22 pcie:
gen: 4 speed: 16 GT/s lanes: 16 ports: active: none empty: DP-3,HDMI-A-3
bus-ID: 0e:00.0 chip-ID: 1002:164e class-ID: 0300 temp: 39.0 C
Display: wayland server: X.org v: 1.21.1.11 with: Xwayland v: 23.2.4
compositor: kwin_wayland driver: X: loaded: amdgpu
unloaded: modesetting,radeon alternate: fbdev,vesa dri: radeonsi
gpu: amdgpu,amdgpu display-ID: 0
Monitor-1: DP-1 res: 2560x1440 size: N/A modes: N/A
API: EGL v: 1.5 hw: drv: amd radeonsi platforms: device: 0 drv: radeonsi
device: 1 drv: radeonsi device: 2 drv: swrast gbm: drv: radeonsi
surfaceless: drv: radeonsi wayland: drv: radeonsi x11: drv: radeonsi
API: OpenGL v: 4.6 compat-v: 4.5 vendor: amd mesa v: 24.0.1-arch1.1
glx-v: 1.4 direct-render: yes renderer: AMD Radeon RX 7900 XTX (radeonsi
navi31 LLVM 16.0.6 DRM 3.57 6.7.5-zen1-1-zen) device-ID: 1002:744c
memory: 23.44 GiB unified: no display-ID: :1.0
API: Vulkan v: 1.3.276 layers: 10 device: 0 type: discrete-gpu name: AMD
Radeon RX 7900 XTX (RADV NAVI31) driver: mesa radv v: 24.0.1-arch1.1
device-ID: 1002:744c surfaces: xcb,xlib,wayland device: 1
type: integrated-gpu name: AMD Radeon Graphics (RADV RAPHAEL_MENDOCINO)
driver: mesa radv v: 24.0.1-arch1.1 device-ID: 1002:164e
surfaces: xcb,xlib,wayland device: 2 type: cpu name: llvmpipe (LLVM
16.0.6 256 bits) driver: mesa llvmpipe v: 24.0.1-arch1.1 (LLVM 16.0.6)
device-ID: 10005:0000 surfaces: xcb,xlib,wayland
Audio:
Device-1: AMD Navi 31 HDMI/DP Audio driver: snd_hda_intel v: kernel pcie:
gen: 4 speed: 16 GT/s lanes: 16 bus-ID: 03:00.1 chip-ID: 1002:ab30
class-ID: 0403
Device-2: AMD Rembrandt Radeon High Definition Audio vendor: ASUSTeK
driver: snd_hda_intel v: kernel pcie: gen: 4 speed: 16 GT/s lanes: 16
bus-ID: 0e:00.1 chip-ID: 1002:1640 class-ID: 0403
Device-3: ASUSTek USB Audio driver: hid-generic,snd-usb-audio,usbhid
type: USB rev: 2.0 speed: 480 Mb/s lanes: 1 mode: 2.0 bus-ID: 1-6:2
chip-ID: 0b05:1a52 class-ID: 0300
API: ALSA v: k6.7.5-zen1-1-zen status: kernel-api with: aoss
type: oss-emulator tools: N/A
Server-1: PipeWire v: 1.0.3 status: active with: 1: pipewire-pulse
status: active 2: wireplumber status: active 3: pipewire-alsa type: plugin
4: pw-jack type: plugin tools: pactl,pw-cat,pw-cli,wpctl
Network:
Device-1: Intel Ethernet I225-V vendor: ASUSTeK driver: igc v: kernel pcie:
gen: 2 speed: 5 GT/s lanes: 1 port: N/A bus-ID: 0a:00.0 chip-ID: 8086:15f3
class-ID: 0200
IF: eno1 state: up speed: 1000 Mbps duplex: full mac: <filter>
Info: services: NetworkManager,systemd-timesyncd
Drives:
Local Storage: total: 2.73 TiB used: 308.63 GiB (11.0%)
SMART Message: Unable to run smartctl. Root privileges required.
ID-1: /dev/nvme0n1 maj-min: 259:0 vendor: Samsung model: SSD 980 PRO 2TB
size: 1.82 TiB block-size: physical: 512 B logical: 512 B speed: 63.2 Gb/s
lanes: 4 tech: SSD serial: <filter> fw-rev: 5B2QGXA7 temp: 39.9 C
scheme: GPT
ID-2: /dev/nvme1n1 maj-min: 259:1 vendor: Samsung model: SSD 980 PRO 1TB
size: 931.51 GiB block-size: physical: 512 B logical: 512 B speed: 63.2 Gb/s
lanes: 4 tech: SSD serial: <filter> fw-rev: 5B2QGXA7 temp: 37.9 C
scheme: GPT
Partition:
ID-1: / raw-size: 1.82 TiB size: 1.82 TiB (100.00%) used: 129.14 GiB (6.9%)
fs: btrfs dev: /dev/nvme0n1p2 maj-min: 259:4
ID-2: /boot/efi raw-size: 300 MiB size: 299.4 MiB (99.80%)
used: 584 KiB (0.2%) fs: vfat dev: /dev/nvme0n1p1 maj-min: 259:3
ID-3: /home raw-size: 1.82 TiB size: 1.82 TiB (100.00%)
used: 129.14 GiB (6.9%) fs: btrfs dev: /dev/nvme0n1p2 maj-min: 259:4
ID-4: /var/log raw-size: 1.82 TiB size: 1.82 TiB (100.00%)
used: 129.14 GiB (6.9%) fs: btrfs dev: /dev/nvme0n1p2 maj-min: 259:4
ID-5: /var/tmp raw-size: 1.82 TiB size: 1.82 TiB (100.00%)
used: 129.14 GiB (6.9%) fs: btrfs dev: /dev/nvme0n1p2 maj-min: 259:4
Swap:
Kernel: swappiness: 133 (default 60) cache-pressure: 100 (default) zswap: no
ID-1: swap-1 type: zram size: 62.02 GiB used: 0 KiB (0.0%) priority: 100
comp: zstd avail: lzo,lzo-rle,lz4,lz4hc,842 max-streams: 16 dev: /dev/zram0
Sensors:
System Temperatures: cpu: 43.1 C mobo: N/A
Fan Speeds (rpm): N/A
GPU: device: amdgpu temp: 39.0 C device: amdgpu temp: 52.0 C mem: 58.0 C
fan: 93 watts: 25.00
Info:
Memory: total: 64 GiB available: 62.02 GiB used: 5.11 GiB (8.2%)
Processes: 383 Power: uptime: 0m states: freeze,mem,disk suspend: deep
avail: s2idle wakeups: 0 hibernate: platform avail: shutdown, reboot,
suspend, test_resume image: 24.8 GiB services: org_kde_powerdevil,
power-profiles-daemon, upowerd Init: systemd v: 255 default: graphical
tool: systemctl
Packages: pm: pacman pkgs: 1457 libs: 456 tools: octopi,paru Compilers:
clang: 16.0.6 gcc: 13.2.1 Shell: garuda-inxi default: fish v: 3.7.0
running-in: konsole inxi: 3.3.33
Garuda (2.6.23-1):
System install date:     2024-01-25
Last full system update: 2024-02-21
Is partially upgraded:   No
Relevant software:       snapper NetworkManager dracut
Windows dual boot:       No/Undetected
Failed units:

Have you tried just downloading fancontrol-gui and setting to the amdgpu sensor of choice there for fan control. In my inxi it shows fan 0 and speed N/A but it is working and controls to the curve i set, i use it through fancontrol-kcm so its there in my system settings. i can easily verify its working by setting to 100 percent at lowest temp and hearing the fans lift off.

That ones a negative too.
Tried fancontrol-gui-git. Made a new profile, set the fan curve values all to 100%, started and enabled the services : no effect, no fan movement.
I know the fans of my GPU works during under load and in windows but in linux it has zero rpm enabled by default.

I recently got sick of the issue where HWMON devices can move around from boot to boot in the /sys filesystem, changing their absolute path, so I tried fan2go and found it very helpful because it talks directly to the HWMON nodes.

Not the same issue you’re having exactly, but you might find that it succeeds in your case where others failed. If it shows up in a fan2go detect then you’ll be able to control it.

It should also be noted that fancontrol-gui doesn’t handle multiple devices well and churns out broken configurations right now if you have multiple HWMON platforms in the one machine:
https://github.com/Maldela/fancontrol-gui/issues/78

Beyond that, fan2go is awesome in general because you can do very complex control schemes.

I hope you have some luck!

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.