Raising the power limit on my AMD RedDevil 6900XT

Hello everyone. I am trying to raise the power limit on my AMD GPU. I’ve tried CoreCtrl, but it didn’t let me raise it as high as I wanted. I also tried to change it like the arch wiki mentions on the manual overclocking section, but it seemingly doesn’t support going higher than 293W? I know that my card can handle close to 340W (that’s around the point I had while I was on Windows).

Any and all help appreciated.

~ screenfetch
 ██████████████████  ████████     monni@monni-monjaro
 ██████████████████  ████████     OS: Manjaro 22.1.0 Talos
 ██████████████████  ████████     Kernel: x86_64 Linux 6.1.25-1-MANJARO
 ██████████████████  ████████     Uptime: 1h 10m
 ████████            ████████     Packages: 1520
 ████████  ████████  ████████     Shell: zsh 5.9
 ████████  ████████  ████████     Resolution: 6560x2560
 ████████  ████████  ████████     DE: KDE 5.104.0 / Plasma 5.27.4
 ████████  ████████  ████████     WM: KWin
 ████████  ████████  ████████     GTK Theme: Breeze [GTK2/3]
 ████████  ████████  ████████     Icon Theme: candy-icons
 ████████  ████████  ████████     Disk: 383G / 924G (44%)
 ████████  ████████  ████████     CPU: AMD Ryzen 9 3900X 12-Core @ 24x 3.8GHz
 ████████  ████████  ████████     GPU: AMD Radeon RX 6900 XT (navi21, LLVM 15.0.7, DRM 3.49, 6.1.25-1-MANJARO)
                                  RAM: 4082MiB / 15881MiB
~ inxi -a -G
Graphics:
  Device-1: AMD Navi 21 [Radeon RX 6800/6800 XT / 6900 XT] vendor: Tul /
    PowerColor Red Devil 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: DP-1,DP-2 empty: DP-3,HDMI-A-1 bus-ID: 0c:00.0
    chip-ID: 1002:73bf class-ID: 0300
  Device-2: Logitech C922 Pro Stream Webcam type: USB
    driver: snd-usb-audio,uvcvideo bus-ID: 7-2:2 chip-ID: 046d:085c
    class-ID: 0102 serial: AA79661F
  Display: x11 server: X.Org v: 21.1.8 with: Xwayland v: 23.1.1
    compositor: kwin_x11 driver: X: loaded: amdgpu unloaded: modesetting,radeon
    alternate: fbdev,vesa dri: radeonsi gpu: amdgpu display-ID: :0 screens: 1
  Screen-1: 0 s-res: 6560x2560 s-dpi: 96 s-size: 1735x677mm (68.31x26.65")
    s-diag: 1862mm (73.32")
  Monitor-1: DP-1 mapped: DisplayPort-0 pos: primary,bottom-l
    model: Samsung LC49G95T serial: H4ZN601010 built: 2020 res: 5120x1440
    hz: 120 dpi: 109 gamma: 1.2 size: 1190x340mm (46.85x13.39")
    diag: 1239mm (48.8") modes: max: 5120x1440 min: 720x400
  Monitor-2: DP-2 mapped: DisplayPort-1 pos: top-right
    model: Gigabyte AORUS AD27QD serial: 19120B001035 built: 2019 res: 1440x2560
    dpi: 103 gamma: 1.2 size: 355x609mm (13.98x23.98") diag: 705mm (27.8")
    ratio: 15:9 modes: max: 2560x1440 min: 720x400
  API: OpenGL v: 4.6 Mesa 23.0.2 renderer: AMD Radeon RX 6900 XT (navi21
    LLVM 15.0.7 DRM 3.49 6.1.25-1-MANJARO) direct-render: Yes

You need to unlock all (dangerous) features with this flag in kernel parameters:

amdgpu.ppfeaturemask=0xffffffff

https://wiki.archlinux.org/title/AMDGPU#Overclocking

Sorry I didn’t mention it in the post, I did do the

printf 'amdgpu.ppfeaturemask=0x%x\n' "$(($(cat /sys/module/amdgpu/parameters/ppfeaturemask) | 0x4000))"

and placed the value in my grub config files kernel parameters and ran mkconfig again.
CoreCtrl still has limit of 293W.

When trying to edit /sys/class/drm/card0/device/hwmon/hwmon5/power1_cap directly changing the value of 293000000 to 340000000 is met with “invalid argument” error in nano.

Probably that’s bug, see 7900 XTX unable to set power1_cap (#2356) · Issues · drm / amd · GitLab

I’m reading through it and found this linked in the thread 7900 XTX Default Power Cap lower than on Windows (#2400) · Issues · drm / amd · GitLab

Based on that it might be reporting the right value already? But then after that somebody is reporting unclear values that got later fixed to the appropriate ones. :confused: unsure of how to proceed. I’m on 6.1.25 so shouldn’t the patch mentioned in your thread be applied to the kernel already?

Yes it should be applied since kernel 6.1 as you can check in sources

https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/tree/drivers/gpu/drm/amd/pm/swsmu/smu13?h=linux-6.1.y