Skip to content

Commit 705ecfa

Browse files
committed
Document GPU-mode-specific GRUB settings
Update English and Dutch known-issues documentation with separate GRUB command-line settings for Integrated versus Hybrid/Ultimate GPU modes, including regeneration and reboot instructions.
1 parent c8d2622 commit 705ecfa

2 files changed

Lines changed: 38 additions & 2 deletions

File tree

src/content/docs/known-issues.md

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -104,7 +104,25 @@ sudo reboot
104104

105105
Working theory for why: in Hybrid mode the eDP panel may not actually be routed to the AMD iGPU by the hardware MUX the way Integrated mode routes it. `amdgpu.backlight=0` forces PWM signalling on `amdgpu_bl2`, but if `amdgpu_bl2` isn't the GPU actually driving the connector in this mode, that's moot. `nvidia_0`'s lack of effect might instead be explained by `nvidia.NVreg_EnableBacklightHandler=0`, a parameter that's been in the cmdline since early testing above (when it had no effect on `nvidia_wmi_ec_backlight`) but was never tested against `nvidia_0`, a device that only exists once `acpi_backlight=native` is set. If that flag disables the nvidia driver's backend for its own native backlight device, `nvidia_0` writes would succeed at the sysfs level while being silently dropped before reaching hardware. Not yet tested, next thing to try.
106106

107-
Because of this regression, the practical way to ship the Integrated fix without breaking Hybrid/Ultimate is a **dedicated GRUB boot entry** carrying the extra parameters, selected only when booting into Integrated mode, rather than editing `GRUB_CMDLINE_LINUX_DEFAULT`. Since a GPU mode change already requires a reboot on this hardware, picking the matching boot entry at the same reboot isn't extra overhead. Not yet set up. Tracked as follow-up work.
107+
Because of this regression, there's no single `GRUB_CMDLINE_LINUX_DEFAULT` that works for every mode. Use whichever of these two matches the GPU mode you're switching to, since a mode change already needs a reboot on this hardware anyway:
108+
109+
**Integrated mode** (adds `acpi_backlight=native amdgpu.backlight=0`):
110+
```bash
111+
GRUB_CMDLINE_LINUX_DEFAULT='nowatchdog nvme_load=YES splash loglevel=3 nvidia.NVreg_EnableBacklightHandler=0 nvidia.NVreg_RegistryDwords=EnableBrightnessControl=0 acpi_backlight=native amdgpu.backlight=0'
112+
```
113+
114+
**Hybrid or Ultimate mode** (leaves the backlight interface at its working default):
115+
```bash
116+
GRUB_CMDLINE_LINUX_DEFAULT='nowatchdog nvme_load=YES splash loglevel=3 nvidia.NVreg_EnableBacklightHandler=0 nvidia.NVreg_RegistryDwords=EnableBrightnessControl=0'
117+
```
118+
119+
Both include the base CachyOS boot flags from this install (`nowatchdog nvme_load=YES splash loglevel=3`) plus the two NVIDIA parameters ruled out earlier in this write-up, kept in both since they've never shown a negative effect. If your own `GRUB_CMDLINE_LINUX_DEFAULT` has different base flags, or you're on Bazzite (`grub2-mkconfig`, different config path), keep your existing flags and just add or drop `acpi_backlight=native amdgpu.backlight=0` at the end when you switch modes.
120+
121+
After editing `/etc/default/grub`:
122+
```bash
123+
sudo grub-mkconfig -o /boot/grub/grub.cfg
124+
sudo reboot
125+
```
108126

109127
**Related, still separate:** getting the GPU *mode switch itself* to apply reliably is a different bug (#318 above) with its own workaround (write directly to the sysfs attribute that needs to change, bypassing asusd's batched write: see the firmware-attribute table in the "GPU mode switching" section of the [asusctl page]({{< relref "/docs/hardware/asusctl-rog-control" >}})), needed only on installs not yet on the fixed `asusctl` `6.5.0`.
110128

src/content/docs/known-issues.nl.md

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -104,7 +104,25 @@ sudo reboot
104104

105105
Werktheorie waarom: in Hybrid mode is het eDP-paneel via de hardware-MUX mogelijk niet daadwerkelijk naar de AMD-iGPU gerouteerd zoals in Integrated mode. `amdgpu.backlight=0` forceert PWM-signalering op `amdgpu_bl2`, maar als `amdgpu_bl2` niet de GPU is die de connector in deze mode daadwerkelijk aanstuurt, doet dat er niet toe. Het gebrek aan effect bij `nvidia_0` kan mogelijk verklaard worden door `nvidia.NVreg_EnableBacklightHandler=0`, een parameter die al sinds vroeg testen hierboven in de cmdline staat (toen zonder effect op `nvidia_wmi_ec_backlight`) maar nooit getest is tegen `nvidia_0`, een device dat pas bestaat zodra `acpi_backlight=native` staat. Als die vlag de backend van de nvidia-driver voor zijn eigen native backlight-device uitschakelt, zouden writes naar `nvidia_0` op sysfs-niveau slagen terwijl ze stilletjes verdwijnen voor ze de hardware bereiken. Nog niet getest, volgende stap.
106106

107-
Door deze regressie is de praktische manier om de Integrated-fix te leveren zonder Hybrid/Ultimate te breken een **apart GRUB-bootmenu-item** met de extra parameters, alleen gekozen bij het opstarten in Integrated mode, in plaats van `GRUB_CMDLINE_LINUX_DEFAULT` te bewerken. Omdat een GPU-modewissel op deze hardware toch al een reboot vereist, is de juiste boot-entry kiezen bij diezelfde reboot geen extra moeite. Nog niet opgezet. Bijgehouden als vervolgwerk.
107+
Door deze regressie bestaat er geen enkele `GRUB_CMDLINE_LINUX_DEFAULT` die voor elke mode werkt. Gebruik welke van deze twee past bij de GPU-mode waar je naartoe wisselt, want een modewissel vereist op deze hardware toch al een reboot:
108+
109+
**Integrated mode** (voegt `acpi_backlight=native amdgpu.backlight=0` toe):
110+
```bash
111+
GRUB_CMDLINE_LINUX_DEFAULT='nowatchdog nvme_load=YES splash loglevel=3 nvidia.NVreg_EnableBacklightHandler=0 nvidia.NVreg_RegistryDwords=EnableBrightnessControl=0 acpi_backlight=native amdgpu.backlight=0'
112+
```
113+
114+
**Hybrid of Ultimate mode** (laat de backlight-interface op de werkende standaard staan):
115+
```bash
116+
GRUB_CMDLINE_LINUX_DEFAULT='nowatchdog nvme_load=YES splash loglevel=3 nvidia.NVreg_EnableBacklightHandler=0 nvidia.NVreg_RegistryDwords=EnableBrightnessControl=0'
117+
```
118+
119+
Beide bevatten de basis CachyOS-bootflags van deze installatie (`nowatchdog nvme_load=YES splash loglevel=3`) plus de twee NVIDIA-parameters die eerder in dit stuk zijn uitgesloten, in beide gehouden omdat ze nooit een negatief effect hebben laten zien. Heeft jouw eigen `GRUB_CMDLINE_LINUX_DEFAULT` andere basisflags, of zit je op Bazzite (`grub2-mkconfig`, ander configpad), houd dan je eigen flags aan en voeg alleen `acpi_backlight=native amdgpu.backlight=0` toe of haal die weg aan het eind wanneer je van mode wisselt.
120+
121+
Na het bewerken van `/etc/default/grub`:
122+
```bash
123+
sudo grub-mkconfig -o /boot/grub/grub.cfg
124+
sudo reboot
125+
```
108126

109127
**Gerelateerd, maar apart:** de GPU-*modewissel zelf* betrouwbaar laten toepassen is een andere bug (#318 hierboven) met een eigen workaround (rechtstreeks schrijven naar het sysfs-attribuut dat moet veranderen, buiten asusd's batch-write om: zie de firmware-attributentabel in de sectie "GPU mode switching" op de [asusctl-pagina]({{< relref "/docs/hardware/asusctl-rog-control" >}})), alleen nodig op installaties die nog niet op de gefixte `asusctl` `6.5.0` zitten.
110128

0 commit comments

Comments
 (0)