I recently purchased an ASUS A17 laptop with an AMD 4800H processor. Of course I immediately installed Fedora 34 on it. Everything works well out of the box... except GPU switching.
The ASUS A17 comes with 2 GPUs. GPU0 is the integrated GPU (iGPU) on the 4800H processor. GPU1 is a discrete NVIDIA GTX1660Ti GPU. (dGPU)
My laptop is currently running with iGPU using AMD drivers under X11. I'm not a gamer. It works well for driving the 1920x1080 laptop screen but will not drive an external 4K monitor without blanking out.
I installed the proprietary NVIDIA drivers using akmod from the RPMFusion repository. lsmod shows both AMD and NVIDIA drivers installed on my machine.
There is a utility for controlling a number of ASUS hardware features called asusctl.
I'd rather not use this utility because it relies on custom kernels. I'd like my kernels to come straight from the Fedora repositories.
I'm OK with rebooting to swap GPUs. In laptop mode I'm fine using the iGPU. When I'm at my desktop, I need to use the dGPU to drive my external monitor.
Is there an (easy) way to set up grub to blacklist one driver or the other at boot time in order that the other driver can run and thus use the desired GPU ? Right now I'm blacklisting nouveau. Could I also create grub entries to blacklist the AMD or NVIDIA driver ?
Any other thoughts on doing this ?
Thanks
# lsmod | grep amd
edac_mce_amd 32768 0
kvm_amd 139264 0
kvm 1007616 1 kvm_amd
amdgpu 7049216 109
drm_ttm_helper 16384 1 amdgpu
ttm 77824 2 amdgpu,drm_ttm_helper
iommu_v2 24576 1 amdgpu
gpu_sched 45056 1 amdgpu
i2c_algo_bit 16384 1 amdgpu
drm_kms_helper 290816 2 amdgpu,nvidia_drm
drm 630784 22 gpu_sched,drm_kms_helper,nvidia,amdgpu,drm_ttm_helper,nvidia_drm,ttm
ccp 110592 1 kvm_amd
edac_mce_amd 32768 0
kvm_amd 139264 0
kvm 1007616 1 kvm_amd
amdgpu 7049216 109
drm_ttm_helper 16384 1 amdgpu
ttm 77824 2 amdgpu,drm_ttm_helper
iommu_v2 24576 1 amdgpu
gpu_sched 45056 1 amdgpu
i2c_algo_bit 16384 1 amdgpu
drm_kms_helper 290816 2 amdgpu,nvidia_drm
drm 630784 22 gpu_sched,drm_kms_helper,nvidia,amdgpu,drm_ttm_helper,nvidia_drm,ttm
ccp 110592 1 kvm_amd
# lsmod | grep nvidia
nvidia_drm 69632 2
nvidia_modeset 1200128 3 nvidia_drm
nvidia_uvm 1175552 0
nvidia 35319808 91 nvidia_uvm,nvidia_modeset
i2c_nvidia_gpu 16384 0
drm_kms_helper 290816 2 amdgpu,nvidia_drm
drm 630784 22 gpu_sched,drm_kms_helper,nvidia,amdgpu,drm_ttm_helper,nvidia_drm,ttm
nvidia_drm 69632 2
nvidia_modeset 1200128 3 nvidia_drm
nvidia_uvm 1175552 0
nvidia 35319808 91 nvidia_uvm,nvidia_modeset
i2c_nvidia_gpu 16384 0
drm_kms_helper 290816 2 amdgpu,nvidia_drm
drm 630784 22 gpu_sched,drm_kms_helper,nvidia,amdgpu,drm_ttm_helper,nvidia_drm,ttm
_______________________________________________ users mailing list -- users@xxxxxxxxxxxxxxxxxxxxxxx To unsubscribe send an email to users-leave@xxxxxxxxxxxxxxxxxxxxxxx Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/users@xxxxxxxxxxxxxxxxxxxxxxx Do not reply to spam on the list, report it: https://pagure.io/fedora-infrastructure