Continuing the discussion from Linux driver 595.71.05 still tries to use screen_info struct which was refactored in 7.0 kernel:
As the Title says we’ve been having a lot of fun for the past week or so in openSUSE TumbleWeed with boots failing with a conflict in sysfb requiring the use of initcall_blacklist=sysfb_init to get any output to the screen. The above post provides a patch that applies cleanly to NVIDIA-Linux-x86_64-595.80 (tested, successful, 3070ti) and does also apply to NVIDIA-Linux-x86_64-580.159.04 with some fuzz (untested):
dart@windeath:~/Downloads/NVIDIA-Linux-x86_64-580.159.04> patch -p1 -i ../nvidia_patch_595
patching file kernel-open/common/inc/nv-linux.h
Hunk #1 succeeded at 182 (offset 13 lines).
patching file kernel-open/nvidia/nv.c
Hunk #1 succeeded at 6230 (offset -179 lines).
Hunk #2 succeeded at 6246 (offset -179 lines).
Hunk #3 succeeded at 6264 (offset -179 lines).
I am asking nvidia to incorporate this patch into the 580, 595 and upcoming 610 series if it is not already there. Also a patch for the closed versions would be appreciated as well.