This is an FYI but nvidia drivers do not work when AMD Secure Memory Encryption is enabled in the kernel.
The only relevant message in dmesg is this one :
nvidia 0000:41:00.0: SME is active, device will require DMA bounce buffers
Kernel configuration to disable:
Processor type and features -->
Tested against 4.14.31/32 but is probably the same on 14.15.x
This feature was introduced in 4.14.x as far as I understand, so not a problem before this version.
Maybe worth adding it to the wiki.
What doesn't work when AMD Secure Memory Encryption is enabled?
The kernel modules load properly, but when starting sddm I get a blank screen.
My bad, the nvidia modules do not initialize properly at all, I missed the logs earlier
[ 31.630667] nvidia 0000:41:00.0: SME is active, device will require DMA bounce buffers
[ 31.832968] NVRM: RmInitAdapter failed! (0x24:0x1e:1087)
[ 31.832991] NVRM: rm_init_adapter failed for device bearing minor number 0
[ 44.433] (**) NVIDIA(0): Depth 24, (--) framebuffer bpp 32
[ 44.433] (==) NVIDIA(0): RGB weight 888
[ 44.433] (==) NVIDIA(0): Default visual is TrueColor
[ 44.433] (==) NVIDIA(0): Using gamma correction (1.0, 1.0, 1.0)
[ 44.433] (**) NVIDIA(0): Enabling 2D acceleration
[ 44.650] (EE) NVIDIA(GPU-0): Failed to initialize the NVIDIA GPU at PCI:65:0:0. Please
[ 44.650] (EE) NVIDIA(GPU-0): check your system's kernel log for additional error
[ 44.650] (EE) NVIDIA(GPU-0): messages and refer to Chapter 8: Common Problems in the
[ 44.650] (EE) NVIDIA(GPU-0): README for additional information.
[ 44.650] (EE) NVIDIA(GPU-0): Failed to initialize the NVIDIA graphics device!
[ 44.650] (EE) NVIDIA(0): Failing initialization of X screen 0
By the way this was tested against sys-kernel/gentoo-sources-4.15.15
Again, disabling CONFIG_AMD_MEM_ENCRYPT makes things work again.
Update for kernel 4.18.5 (at the time of this writing this is a supposedly a supported kernel version by NVidia)
The nvidia drivers now works when CONFIG_AMD_MEM_ENCRYPT is enabled, but not if SME is enabled by default, with CONFIG_AMD_MEM_ENCRYPT_ACTIVE_BY_DEFAULT.
Which is roughly the same to say that it does not work with SME.
Same error messages.