Skip to content

Instantly share code, notes, and snippets.

@pwyoung
Last active November 14, 2021 01:51
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save pwyoung/e5bf9e41e166cb89ad63b6e7782ce311 to your computer and use it in GitHub Desktop.
Save pwyoung/e5bf9e41e166cb89ad63b6e7782ce311 to your computer and use it in GitHub Desktop.
Boot troubles with Rog G733QSA
GOAL: Be able to utilize Asus Rog G733QSA "properly":
- without fear of getting "stuck" at a black screen
- with the ability to use an external monitor or the internal monitor
- without fear that my stack is running relatively unsecured/ungoverned and/or very old code.
- ideally, with the ability to run Windows via QEMU and VFIO
CURRENT PAIN POINTS:
- Booting to almost all Linux Live USB distros results in a black screen.
PopOS21.10 is the only exception (details below).
- Sometimes booting results in a black screen.
Changing things like HDMI connections, grub parameters does affect the success of these atttempts (details below).
- Conflicting and patronizing advice.
After relaying to discord that I did what the auther of asusctl told me to do,
other people seem to hear what I've tried and found to work and replied "don't try things just to try them".
Need to not ask for help after 8 hours of banging head since it has lead to me lumping helpful folks in with the
ones who are self-serving and not helpful.
- Linux Desktop has well-known problems.
This post and the embedded video is spot-on https://itvision.altervista.org/why.linux.is.not.ready.for.the.desktop.current.html
But, you can see where his desire to make Linux work has lead to immense frustration, undiplomatic language,
and some unfair or crude criticism.
He is also trying to not give up on Linux as daily driver desktop system. Let's see if we can get all the things working...
- Blissful ignorance.
Since I'd been running System76 machines and PopOS on non-System76 hardware and using VMs for other OSes for about 4 years,
I thought the above problems had been largely addressed. In 2017, Cannonical abandoned Mir and I had thought there
would be more success out of the box.
THINGS CONFIRMED TO WORK:
- PopOS-21.10 Live USB and vanilla installed OS works perfectly, albeit with much older software stack.
- Many Live USB installers and OSes boot if grub args are edited.
Found that "quiet" needs to be removed.
In some cases (i.e. after fully updating Fedora-35 and adding asus-linux stuff) "rhgb" had to also be removed.
- Some black-screen situations can be fixed by adding an HDMI-connected monitor *AND* removing "quiet" boot arg.
WHAT CAN BE EXPECTED TO WORK:
- Booting with (supergfxctl) "hybrid" mode with an HDMI-connected.
Xorg is the default with this setup.
Even in this mode, only Xorg ran on the dGPU. Could not get other apps to run on dGPU.
- Running with (supergfxctl) "dedicated" mode with or without HDM-connected external monitor.
Wayland does come up by default.
KNOWN PROBLEMS:
- Nouveau general pain:
This system freezes up for long periods with Nouveau driver making installation slow.
Use USB mouse to get around when installing until this is removed.
- Wayland + Hybrid mode is not working (yet) on Fedora-35.
See https://discord.com/channels/725125934759411753/768083676952657990/907954440550637658
- The problems are, AFAIK, outside the asus-linux stuff, residing in:
- Wayland vs and with Xorg
E.g. GDM has killed Wayland when it was working and requied udev rule editing (or editing /etc/gdm/custom.conf)
Linux seems to be moving to Wayland, but it has trouble with some Dekstop Environments and Widget sets, and
some people think it's not even the ight way to go.
- NVIDIA driver changes.
Nvidia has recently been trying hard to support Linux (i.e. with Windows existing features)
but this has (at least temporarily) made some Linux apps not run well. I don't understand all those details and there
are a lot of them.
PROBLEMS THAT SEEM UKNOWN/UNACKNOWLEDGED:
- The latest Live USBs from Arch, Endeavour, and Fedora boot to a black screen on this laptop (without changing some config).
Telling folks this has resulted in unhelpful comments to say the least.
But one helpful person acknowledges that they have few (or no) people on G733QSA yet.
So... try to figure this out to make my life and theirs easier.
- timeshift doesn't work on Fedora-35.
Did not tinker, but it might be this: https://github.com/teejee2008/timeshift/issues/425
Building timeshift requires a lot of dependency setup compared to most apps.
THEORY:
Noting that ...
- PopOs uses SystemD boot loader while most others use grub.
- Chaning boot arg switches such as "quiet" and "rhgb" just increase chances of boot success.
- Not all combinations of (supergfxctl mode, monitor presence, grub arg set) seem to work all the time.
... perhaps SystemD can be used (e.g. in Fedora, or in Arch where it is the default) to get this working.
PRACTICE: FAILED ATTEMPT ... SWITCHED FEDORA-35 TO USE SYSTEMD BOOT LOADER ... CHANGED NOTHING
- Switched Fedora to use SystemD boot loader
- Same behaviour. Booted ok with HDMI-connected monitor.
- Then rebooted without it and got black-screen...
BACK TO POP-OS - NOW HAS LINUX KERNEL 5.15.0
- This is sooner than Manjaro, but later than EndeavourOS, or asus-linux custom Fedora kernel
- Seems asus-linux patches are not in this kernel (e.g. "asusctl -s" shows no power fan support which is available with their Fedora kernel)
- Biggest risk: even after I got F35-rog working, with supergfxctl, running in "integrated" mode, booting
with the HDMI-connected monitor in windows, and back switched to "hybrid" mode (apparently) and I booted
Fedora to a black screen. This risk is unacceptable.
The recovery (boot and halt grub, add "nomodeset 3", ctrl-x, login, run supergfxctl -m "dedicated") is a PITA
and I'm worried that it will someday stop working (e.g. when the kernel/packages update)
- PopOS-21.10 install and update:
- Install PopOs-21.10 from Live USB with or without external monitor connected (and without editing boot args)
- Update OS and Upgrade (to kernel 5.15.0 etc). Yes, some of these are repair/cleanup steps beyond minimal necessary.
- sudo apt update
- sudo apt clean
- sudo apt update -m
- sudo dpkg --configure -a
- sudo apt install -f
- sudo apt dist-upgrade
- sudo apt autoremove --purge
- journalctl -u pop-upgrade > ~/pop-upgrade.log
- reboot
- Confirm the following:
- nvidia-smi # shows Xorg and gnome-shell running on Nvidia GPU
- uname -r # Shows kernel 5.15.0
- opening Pop!_Shop shows no errors (i.e. https://github.com/pop-os/shop/issues/289)
- Personal config (these tools are confirmed to work):
- sudo apt install htop emacs-nox glances ndu tree refind timeshift -y
- Details of further setup:
- https://gist.github.com/pwyoung/4fb4a99915cd44d39f7fd2a67a61d798
DETAILS OF "WHAT WORKS":
- PopOS-21.10 live USB
Can boot without an external monitor or editing boot args.
Supports DisplayPort! This did not work with Fedora-35 (with Nvidia 470 or 495 drivers or with AMDGPU)
- PopOS-21.10 after initial installation
NVIDIA and AMDGPU drivers are loaded
Can boot without an external monitor or editing boot args
Can connect or disconnect external monitor via HDMI and it works
- Fedora 35 with asus-linux following steps here: https://gist.github.com/pwyoung/62ccadc78f820df20a69de7a86ac748a
- REMOVED "quiet" and "rhgb" options and replaced with "splash"
- Current boot command
pm_debug_messages amd_pmc.enable_stb=1 amd_pmc.dyndbg="+p" acpi.dyndbg="file drivers/acpi/x86/s2idle.c +p" BOOT_IMAGE=(hd1,gpt3)/vmlinuz-5.14.17-301.rog.fc35.x86_64 root=UUID=139080c0-500a-4312-a51f-05d9070020ff ro rootflags=subvol=root00 rd.driver.blacklist=nouveau modprobe.blacklist=nouveau nvidia-drm.modeset=0 splash
- Set "supergfxctl -m integrated":
- Can boot with or without external monitor
- Confirmed only AMDGPU drivers are loaded
- Gnome-shell is running in Wayland.
- Did not edit /etc/gdm/cusom.conf to disable Wayland
- Did not edit /lib/udev/rules.d/61-gdm.rules (as I had been advised to do in discord by dev)
- Set "supergfxctl -m hybrid": <HERE BE DRAGONS>
- switch did work after logout/in (without reboot) - nice
- confirmed NVIDIA and AMDGPU drivers were loaded
- Can boot with or without external monitor
- Confirmed only AMDGPU drivers are loaded
- Gnome-shell is running in X11*
- The only thing running on Nvidia (according to nvidia-smi) is Xorg
- Apps opened with "run on dGPU" do not appear in nvidia-smi
- This DOES work on PopOS-21.10 (live USB and vanilla install)
- DRAGONS...
- If the laptop is booted with "hybrid" graphics but without an external monitor, it
will boot to a black screen. This may well be the GDM udev rules kicking in and stopping
Wayland. Possible workarounds:
- comment out udev rules for gdm (per dev advice)
- force gdm to never use wayland (in /etc/gdm/custom.conf). This is what PopOS-21.10 does.
- RECOVERY:
- Boot and add "nomodeset 3" to actually get to a text login.
- change modes with "supergfxctl -m integrated".
This will cause the X session to start.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment