Display Brightness Low & Controls Inverted on Vanilla Manjaro Install on HP Victus 15

Display Brightness Inversion on Vanilla Install of Manjaro on HP Victus 15

I wanted to try out Linux on my newly purchased HP Victus 15, so I nuked the Windows 11 it came with and installed Windows 10 LTSC and started out by installing Arch + KDE. Turns out the brightness levels were much too low and barely usable in daytime. I don’t think I mucked up anything in the install afaik, but I thought it’d be safe to install Manjaro instead and booted up the Live ISO only to be greeted by the same bug.

The Problem

This is very weird, and in all my Linux installs so far, I haven’t come across such behaviour. Here’s what happens -

  • The default brightness is set too low, barely visible
  • Brightness control keys work, however their behaviour is inverted
    • When I press the increase brightness hotkey (F3) the brightness decreases in steps of 5% till it reaches 0%, this would usually be the 20% brightness state in Windows
    • When I press the decrease brightness hotkey (F2) the brightness increases in steps of 5% till it reaches 100% but the screen backlight is the dimmest here, and unusable
  • EDIT - This is an important detail that I forgot to mention the first time around but the backlight is at max brightness during the grub screen and halfway into the verbose boot process
    • But halfway into the boot, just around the time when the systemd backlight service is invoked the screen dims all the way down and stays that way

So, its not like the display is incapable of displaying max brightness within Linux environments (some combination of kernel params results in max brightness too).

Then, maybe an isolated issue with Manjaro, or so I thought?

Problem Persists across Distros

My first thought is that was that this could be a KDE related error, or a particular distro issue but no - this problem persists across distro, here are all the distros I have tried in the last two days - when they boot into the Live environment, all of them present me with a very dim screen and inverted brightness

  • EndeavourOS - All three of their latest versions
    • EndeavourOS Cassini
    • EndeavourOS Artemis Nova
    • EndeavourOS Artemis
  • Fedora
    • Fedora 37
    • Fedora 36
  • Pop OS
    • Pop OS 21 Nvidia

I also naively thought mhwd could be an issue, so I tried distros other than Manjaro, but I finally found the balance between usability and having access to the AUR in Manjaro, so I have a fully updated Manjaro KDE install now, hardware details are as follows

Hardware Info

Device - HP Victus 15 FB0xxx

CPU - Ryzen 5 5600H
GPU - Nvidia RTX 3050Ti Mobile
Display - 144hz 1080p panel

OS - Manjaro KDE
Kernel - Linux 5.15.84 Manjaro
DE - Plasma 5.26

DGPU Driver - Nvidia video-hybrid-amd-nvidia-prime 525.60.11
IGPU Driver - video-linux

I read somewhere that Secure Boot could be a potential nuisance, so I double checked that it was disabled (it is) and my HP BIOS does not have a Discrete Graphics Only Option or a Mux Switch so that seems out of the equation here right?

Relevant News Info

The Victus 15 is a derivative of the Omen 15, so from what I can gather the Omen 15 is running Linux smoothly

  • This is independently tested on Phoronix

Output Logs

Let me provide you guys with some logs so the picture of my hardware config is clearer


uname -r returns 5.15.81-1-MANJARO

Nvidia SMI

Nvidia SMI shows the following

| NVIDIA-SMI 525.60.11    Driver Version: 525.60.11    CUDA Version: 12.0     |
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|                               |                      |               MIG M. |
|   0  NVIDIA GeForce ...  Off  | 00000000:01:00.0 Off |                  N/A |
| N/A   43C    P3    N/A /  N/A |      6MiB /  4096MiB |      0%      Default |
|                               |                      |                  N/A |

| Processes:                                                                  |
|  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
|        ID   ID                                                   Usage      |
|    0   N/A  N/A       590      G   /usr/lib/Xorg                       4MiB |


mhwd -li gives

              NAME               VERSION          FREEDRIVER           TYPE

       video-linux            2018.05.04                true            PCI
video-hybrid-amd-nvidia-prime            2021.11.04               false            PCI

INXI Output

inxi -Fxxz gives the following output

  Kernel: 6.0.12-arch1-1 arch: x86_64 bits: 64 compiler: gcc v: 12.2.0
    Desktop: KDE Plasma v: 5.26.4 tk: Qt v: 5.15.7 wm: kwin_x11 dm: SDDM
    Distro: EndeavourOS base: Arch Linux
  Type: Laptop System: HP product: Victus by HP Gaming Laptop 15-fb0xxx v: N/A
    serial: <superuser required> Chassis: type: 10 serial: <superuser required>
  Mobo: HP model: 8A3C v: 35.42 serial: <superuser required> UEFI: AMI
    v: F.14 date: 09/05/2022
  ID-1: BAT0 charge: 63.6 Wh (86.4%) condition: 73.6/73.6 Wh (100.0%)
    volts: 16.5 min: 15.4 model: HP Primary serial: <filter> status: discharging
  Info: 6-core model: AMD Ryzen 5 5600H with Radeon Graphics bits: 64
    type: MT MCP arch: Zen 3 rev: 0 cache: L1: 384 KiB L2: 3 MiB L3: 16 MiB
  Speed (MHz): avg: 458 high: 1098 min/max: 400/4280 boost: enabled cores:
    1: 400 2: 400 3: 400 4: 400 5: 400 6: 400 7: 400 8: 400 9: 400 10: 1098
    11: 400 12: 400 bogomips: 79082
  Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3 svm
  Device-1: NVIDIA GA107M [GeForce RTX 3050 Ti Mobile] vendor: Hewlett-Packard
    driver: nvidia v: 525.60.11 arch: Ampere pcie: speed: 8 GT/s lanes: 8
    bus-ID: 01:00.0 chip-ID: 10de:25a0
  Device-2: AMD Cezanne [Radeon Vega Series / Radeon Mobile Series]
    vendor: Hewlett-Packard driver: amdgpu v: kernel arch: GCN-5.1 pcie:
    speed: 8 GT/s lanes: 16 ports: active: eDP-1 empty: DP-1 bus-ID: 06:00.0
    chip-ID: 1002:1638 temp: 46.0 C
  Device-3: Chicony HP Wide Vision HD Camera type: USB driver: uvcvideo
    bus-ID: 1-3:2 chip-ID: 04f2:b766
  Display: x11 server: X.Org v: 21.1.6 compositor: kwin_x11 driver: X:
    loaded: amdgpu unloaded: modesetting alternate: fbdev,vesa dri: radeonsi
    gpu: amdgpu display-ID: :0 screens: 1
  Screen-1: 0 s-res: 1920x1080 s-dpi: 96
  Monitor-1: eDP-1 mapped: eDP model: ChiMei InnoLux 0x1521 res: 1920x1080
    dpi: 142 diag: 394mm (15.5")
  API: OpenGL v: 4.6 Mesa 22.3.1 renderer: AMD Radeon Graphics (renoir LLVM
    14.0.6 DRM 3.48 6.0.12-arch1-1) direct render: Yes
  Device-1: NVIDIA vendor: Hewlett-Packard driver: snd_hda_intel v: kernel
    pcie: speed: 8 GT/s lanes: 8 bus-ID: 01:00.1 chip-ID: 10de:2291
  Device-2: AMD Renoir Radeon High Definition Audio vendor: Hewlett-Packard
    driver: snd_hda_intel v: kernel pcie: speed: 8 GT/s lanes: 16
    bus-ID: 06:00.1 chip-ID: 1002:1637
  Device-3: AMD ACP/ACP3X/ACP6x Audio Coprocessor vendor: Hewlett-Packard
    driver: snd_rn_pci_acp3x v: kernel pcie: speed: 8 GT/s lanes: 16
    bus-ID: 06:00.5 chip-ID: 1022:15e2
  Device-4: AMD Family 17h/19h HD Audio vendor: Hewlett-Packard
    driver: snd_hda_intel v: kernel pcie: speed: 8 GT/s lanes: 16
    bus-ID: 06:00.6 chip-ID: 1022:15e3
  Sound API: ALSA v: k6.0.12-arch1-1 running: yes
  Sound Server-1: PulseAudio v: 16.1 running: no
  Sound Server-2: PipeWire v: 0.3.63 running: yes
  Device-1: Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet
    vendor: Hewlett-Packard driver: r8169 v: kernel pcie: speed: 2.5 GT/s
    lanes: 1 port: e000 bus-ID: 02:00.0 chip-ID: 10ec:8168
  IF: eno1 state: down mac: <filter>
  Device-2: MEDIATEK MT7921 802.11ax PCI Express Wireless Network Adapter
    vendor: AzureWave driver: mt7921e v: kernel pcie: speed: 5 GT/s lanes: 1
    bus-ID: 03:00.0 chip-ID: 14c3:7961
  IF: wlan0 state: up mac: <filter>
  Device-1: IMC Networks Wireless_Device type: USB driver: btusb v: 0.8
    bus-ID: 1-4:3 chip-ID: 13d3:3567
  Report: rfkill ID: hci0 rfk-id: 0 state: down bt-service: disabled
    rfk-block: hardware: no software: no address: see --recommends
  Alert: No swap data was found.
  System Temperatures: cpu: 48.9 C mobo: N/A gpu: amdgpu temp: 45.0 C
  Fan Speeds (RPM): fan-1: 0 fan-2: 0
  Kernel: 5.15.84-1-MANJARO arch: x86_64 bits: 64 compiler: gcc v: 12.2.0
    Desktop: KDE Plasma v: 5.26.4 tk: Qt v: 5.15.7 wm: kwin_x11 dm: SDDM
    Distro: Manjaro Linux base: Arch Linux

LSPCI Output

lspci -v | grep 2D 3D VGA output pertaining to graphics

01:00.0 VGA compatible controller: NVIDIA Corporation GA107M [GeForce RTX 3050 Ti Mobile] (rev a1) (prog-if 00 [VGA controller])
	DeviceName: NVIDIA Graphics Device
	Subsystem: Hewlett-Packard Company Device 8a3c
	Physical Slot: 0
	Flags: bus master, fast devsel, latency 0, IRQ 93, IOMMU group 11
	Memory at fb000000 (32-bit, non-prefetchable) [size=16M]
	Memory at fe00000000 (64-bit, prefetchable) [size=4G]
	Memory at ff00000000 (64-bit, prefetchable) [size=32M]
	I/O ports at f000 [size=128]
	Expansion ROM at fc000000 [virtual] [disabled] [size=512K]
	Capabilities: <access denied>
	Kernel driver in use: nvidia
	Kernel modules: nouveau, nvidia_drm, nvidia


06:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Cezanne [Radeon Vega Series / Radeon Vega Mobile Series] (rev c6) (prog-if 00 [VGA controller])
	DeviceName:  Onboard IGD
	Subsystem: Hewlett-Packard Company Device 8a3c
	Flags: bus master, fast devsel, latency 0, IRQ 52, IOMMU group 16
	Memory at d0000000 (64-bit, prefetchable) [size=256M]
	Memory at e0000000 (64-bit, prefetchable) [size=2M]
	I/O ports at d000 [size=256]
	Memory at fc500000 (32-bit, non-prefetchable) [size=512K]
	Capabilities: <access denied>
	Kernel driver in use: amdgpu
	Kernel modules: amdgpu

Fixes I have Tried

SysFS Directory

I did some reading from the backlight page of Arch wiki and tried out the steps one by one

ls /sys/class/backlight shows amdgpu_bl0

  • Shouldn’t there be two entries there for each controller, or is this normal?
    • Maybe the reason there aren’t two entries is because I am running on hybrid mode

So, the manual override on amdgpu_bl0/brightness with a value works, but this still doesn’t fix my problem (increasing the value continues to decrease the brightness output)

Immediate Thought - SysFS via Terminal

echo xxx > /sys/class/backlight/amdgpu_bl0/brightness changes the values of brightness here, but this behaviour is in line with the hotkey behaviour (ie, 255 corresponds to min brightness and 0 corresponds to max brightness)

Kernel Parameters

Other online sources say that passing kernel parameters is a potential solution, so I tried various combinations that lead to interesting results

  • Suddenly my display would show max brightness, but all attempts to change it would be futile and I would be left with a very bright screen that is agonizing to look at during night time
  • This also introduces a heavy UI lag and tons of dropped frames while rendering regular KDE UI components

Short summary of the fixes I have tried

  • nowatchdog nvme_load=YES amdgpu.backlight=0 > max brightness, no control, high UI lag

  • nowatchdog nvme_load=YES amdgpu.backlight=1 acpi_backlight=video > max brightness, no control, medium UI lag

  • nowatchdog nvme_load=YES amdgpu.backlight=0 acpi_backlight=video nvidia-drm.modeset=1 nvidia.NVreg_RegistryDwords=EnableBrightnessControl=1 video.use_native_backlight=1 > no perceptible difference from initial low brightness scenario, brightness controls still inverted

I would rather use this laptop at a low brightness than at full and burn my retinas, there is also the associated lag which is too much to deal with so this is not a solution for me and I rolled back to the default kernel parameters

  • This is nowatchdog nvme_load=YES amdgpu.backlight=0

Various ACPI Backlight Combinations

I tried various parameters for acpi_backlight as suggested elsewhere - video/native/none and for acpi_osi with Linux/Windows 2012/Windows 2015

Nvidia NVREG Parameter

The nvidia.NVreg_RegistryDwords=EnableBrightnessControl=1 parameter passed through the kernel seems to hit the nail on the head for some people online using Optimus, but trying this option too was futile

  • It could be that I’m not doing this right through a .conf file (I am passing it as a kernel parameter directly), so if that’s the case please let me know and I will try that as well

TLDR - Help Needed

I hope these details provided are enough for a diagnosis. I’ve been reading around a bit to try and resolve this issue for the last 48 hours, and I have struck nothing. I have tried different things as follows -

  • The Nvidia NVReg Parameter > No difference
  • The amdgpu.backlight=0 > Results in full brightness, but very laggy and unusably bright at all times
  • Secure Boot disabled > changed nothing
  • Various acpi_backlight parameters > erratic behaviour, no viable solution

Can this be a problem with the Nvidia Driver?

  • Maybe there is something wrong with the brightness control on the latest Nvidia driver, or maybe I haven’t configured it correctly? If so, please tell me how to configure my way out of this situation.

So, any ideas on how I can make my Victus 15 brightness control behave as expected? Have any of you faced any similar problems, if so what was your solution?

1 Like

Sometimes enabling Full Composition Pipeline can resolve Nvidia-related display issues, including brightness, gamma, and flickering.

In your case, you have hybrid graphics, and I’m assuming it defaults to the AMD GPU unless you’re gaming or doing GPU-intensive work?

However, what you’re describing (such as the inverted hotkeys to increase/decrease the backlight; but “reversed”) sounds like the HP laptop’s hardware is built exclusively for Windows 11, and if you can get Linux to work on it they don’t care either way. (As is evident by any desktop environment of any distro, even from a live ISO.)

1 Like

Yes, I am on Hybrid Graphics now and it defaults to the AMD GPU.

So, technically if I were to pass acpi calls using the acpi_osi=Windows 2022 parameter, it should have fooled it into thinking its a Windows machine right? It does not, its still the same.

It’s a gaming laptop and it has special keys that I would assume are also ACPI dependent, none of them have any hiccups, for instance all of these work as intended

  • Volume Up, Down
  • Disable Windows/Super Key Button
  • Disable Trackpad Button
  • There’s a Calculator button and it even launches kcalc rightly
  • Most interestingly, the keyboard backlight which is usually a more common hiccup among laptops works (when pressing F4)

As for what you said, I have none of these options available in nvidia settings which makes me wonder if this drivers are correctly installed? I don’t have any such option or an advanced tab.

For now, I am going to rerun my ACPI parameters using OSI as Windows 2021, and will let you posted.

Hi, I have the same laptop model and I’m facing the exact same problem. Is there any update on this issue?

hi . iam also facing same issue. have you get any solution?