Intel B560 w/ 10th gen integrated graphics and drm-kmod+X not working

Hi all,
I'm having trouble getting X to work with a new computer I built. The motherboard is a B560 chipset (ASRock B560 Pro4) w/ integrated Intel UHD 630 graphics, along with an Intel 10th gen proc (10400). In /etc/rc.conf I have:

Code:
kld_list="i915kms"

However, when the system boots I can see FreeBSD 13.1 booting, but when the i915kms driver loads the monitor goes to a blank screen/no video input detected. It works fine otherwise while I'm SSHd in. If I remove kld_list from /etc/rc.conf then the console boots fine. However, once I kldload i915kms, the display goes blank.

Xorg.0.log looks like this:

Code:
  [    59.111]
X.Org X Server 1.20.14
X Protocol Version 11, Revision 0
[    59.111] Build Operating System: FreeBSD 13.0-RELEASE-p11 amd64
[    59.111] Current Operating System: FreeBSD 13.1-RELEASE FreeBSD 13.1-RELEASE releng/13.1-n250148-fc952ac2212 GENERIC amd64
[    59.111] Build Date: 07 June 2022  01:52:09AM
[    59.111]
[    59.111] Current version of pixman: 0.40.0
[    59.111]    Before reporting problems, check http://wiki.x.org
        to make sure that you have the latest version.
[    59.111] Markers: (--) probed, (**) from config file, (==) default setting,
        (++) from command line, (!!) notice, (II) informational,
        (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
[    59.111] (==) Log file: "/var/log/Xorg.0.log", Time: Thu Jun 23 20:12:59 2022
[    59.112] (==) Using system config directory "/usr/local/share/X11/xorg.conf.d"
[    59.112] (==) No Layout section.  Using the first Screen section.
[    59.112] (==) No screen section available. Using defaults.
[    59.112] (**) |-->Screen "Default Screen Section" (0)
[    59.112] (**) |   |-->Monitor "<default monitor>"
[    59.112] (==) No monitor specified for screen "Default Screen Section".
        Using a default monitor configuration.
[    59.112] (==) Automatically adding devices
[    59.112] (==) Automatically enabling devices
[    59.112] (==) Not automatically adding GPU devices
[    59.113] (==) Max clients allowed: 256, resource mask: 0x1fffff
[    59.116] (==) FontPath set to:
        /usr/local/share/fonts/misc/,
        /usr/local/share/fonts/TTF/,
        /usr/local/share/fonts/OTF/,
        /usr/local/share/fonts/Type1/,
        /usr/local/share/fonts/100dpi/,
        /usr/local/share/fonts/75dpi/,
        catalogue:/usr/local/etc/X11/fontpath.d
[    59.116] (==) ModulePath set to "/usr/local/lib/xorg/modules"
[    59.116] (II) The server relies on udev to provide the list of input devices.
        If no devices become available, reconfigure udev or disable AutoAddDevices.
[    59.116] (II) Loader magic: 0x435f60
[    59.116] (II) Module ABI versions:
[    59.116]    X.Org ANSI C Emulation: 0.4
[    59.116]    X.Org Video Driver: 24.1
[    59.116]    X.Org XInput driver : 24.1
[    59.116]    X.Org Server Extension : 10.0
[    59.116] (--) PCI:*(0@0:2:0) 8086:9bc8:1849:9bc8 rev 3, Mem @ 0x6000000000/16777216, 0x4000000000/268435456, I/O @ 0x00003000/64, BIOS @ 0x????????/65536
[    59.116] (II) LoadModule: "glx"
[    59.116] (II) Loading /usr/local/lib/xorg/modules/extensions/libglx.so
[    59.118] (II) Module glx: vendor="X.Org Foundation"
[    59.118]    compiled for 1.20.14, module version = 1.0.0
[    59.118]    ABI class: X.Org Server Extension, version 10.0
[    59.118] (==) Matched intel as autoconfigured driver 0
[    59.118] (==) Matched modesetting as autoconfigured driver 1
[    59.118] (==) Matched scfb as autoconfigured driver 2
[    59.118] (==) Matched vesa as autoconfigured driver 3
[    59.118] (==) Assigned the driver to the xf86ConfigLayout
[    59.118] (II) LoadModule: "intel"
[    59.118] (II) Loading /usr/local/lib/xorg/modules/drivers/intel_drv.so
[    59.120] (II) Module intel: vendor="X.Org Foundation"
[    59.120]    compiled for 1.20.14, module version = 2.99.917
[    59.120]    Module class: X.Org Video Driver
[    59.120]    ABI class: X.Org Video Driver, version 24.1
[    59.120] (II) LoadModule: "modesetting"
[    59.121] (II) Loading /usr/local/lib/xorg/modules/drivers/modesetting_drv.so
[    59.121] (II) Module modesetting: vendor="X.Org Foundation"
[    59.121]    compiled for 1.20.14, module version = 1.20.14
[    59.121]    Module class: X.Org Video Driver
[    59.121]    ABI class: X.Org Video Driver, version 24.1
[    59.121] (II) LoadModule: "scfb"
[    59.121] (II) Loading /usr/local/lib/xorg/modules/drivers/scfb_drv.so
[    59.121] (II) Module scfb: vendor="X.Org Foundation"
[    59.121]    compiled for 1.20.14, module version = 0.0.5
[    59.121]    ABI class: X.Org Video Driver, version 24.1
[    59.121] (II) LoadModule: "vesa"
[    59.121] (II) Loading /usr/local/lib/xorg/modules/drivers/vesa_drv.so
[    59.122] (II) Module vesa: vendor="X.Org Foundation"
[    59.122]    compiled for 1.20.14, module version = 2.5.0
[    59.122]    Module class: X.Org Video Driver
[    59.122]    ABI class: X.Org Video Driver, version 24.1
[    59.122] (II) intel: Driver for Intel(R) Integrated Graphics Chipsets:
        i810, i810-dc100, i810e, i815, i830M, 845G, 854, 852GM/855GM, 865G,
        915G, E7221 (i915), 915GM, 945G, 945GM, 945GME, Pineview GM,
        Pineview G, 965G, G35, 965Q, 946GZ, 965GM, 965GME/GLE, G33, Q35, Q33,
        GM45, 4 Series, G45/G43, Q45/Q43, G41, B43
[    59.122] (II) intel: Driver for Intel(R) HD Graphics
[    59.122] (II) intel: Driver for Intel(R) Iris(TM) Graphics
[    59.122] (II) intel: Driver for Intel(R) Iris(TM) Pro Graphics
[    59.122] (II) modesetting: Driver for Modesetting Kernel Drivers: kms
[    59.122] (II) scfb: driver for wsdisplay framebuffer: scfb
[    59.122] (II) VESA: driver for VESA chipsets: vesa
[    59.122] (--) Using syscons driver with X support (version 2.0)
[    59.122] (--) using VT number 9

[    59.123] (WW) Falling back to old probe method for modesetting
[    59.123] (WW) Falling back to old probe method for scfb
[    59.123] scfb trace: probe start
[    59.123] scfb trace: probe done
[    59.123] (WW) VGA arbiter: cannot open kernel arbiter, no multi-card support
[    59.123] (II) intel(0): Creating default Display subsection in Screen section
        "Default Screen Section" for depth/fbbpp 24/32
[    59.123] (==) intel(0): Depth 24, (--) framebuffer bpp 32
[    59.123] (==) intel(0): RGB weight 888
[    59.123] (==) intel(0): Default visual is TrueColor
[    59.123] (--) intel(0): Integrated Graphics Chipset: Intel(R) HD Graphics
[    59.123] (**) intel(0): Relaxed fencing enabled
[    59.123] (**) intel(0): Wait on SwapBuffers? enabled
[    59.123] (**) intel(0): Triple buffering? enabled
[    59.123] (**) intel(0): Framebuffer tiled
[    59.123] (**) intel(0): Pixmaps tiled
[    59.123] (**) intel(0): 3D buffers tiled
[    59.123] (**) intel(0): SwapBuffers wait enabled
[    59.123] (==) intel(0): video overlay key set to 0x101fe
[    59.123] (WW) intel(0): No outputs definitely connected, trying again...
[    59.123] (WW) intel(0): Unable to find connected outputs - setting 1024x768 initial framebuffer
[    59.123] (II) intel(0): Kernel page flipping support detected, enabling
[    59.123] (==) intel(0): Using gamma correction (1.0, 1.0, 1.0)
[    59.123] (EE) intel(0): No modes.
[    59.123] (II) UnloadModule: "intel"
[    59.123] (EE) Screen(s) found, but none have a usable configuration.
[    59.123] (EE)
Fatal server error:
[    59.123] (EE) no screens found(EE)
[    59.123] (EE)
Please consult the The X.Org Foundation support
         at http://wiki.x.org
 for help.
[    59.123] (EE) Please also check the log file at "/var/log/Xorg.0.log" for additional information.
[    59.123] (EE)
[    59.123] (EE) Server terminated with error (1). Closing log file.

I've tried reinstalling drm-fbsd13-kmod-5.4.144.g20220223, removing xf86-video-intel-2.99.917.916_1,1, and using latest (which upgraded drm-fbsd-13-kmod to drm-fbsd13-kmod-5.4.191.g20220604_1), all to no effect.

Any ideas?

Thanks!
 
Still not making any progress on getting this working. It seems like graphics on the Intel i5-10400 processor (Intel UHD 630 graphics) isn't supported, but I've read multiple places where the 630 graphics is supported as of the drm-fbsd13-kmod-5.4 driver.
 
You have to build this package from the ports
Hey Tuxador,
I'm not seeing many substantial changes to drm-fbsd13-kmod in Freshports since the version that's already installed ( drm-fbsd13-kmod-5.4.144.g20220223). Are you seeing something else that changed in the package that would cause a 10th gen processor w/ UHD 630 graphics to work?

I know there's a v5.10 of this kernel module ( drm-510-kmod, which will probably be in FreeBSD 14 (but is also supported in FreeBSD 13.1). I tried building it from ports, but a kldload threw an error ( i915kms.ko: depends on kernel - not available or version mismatch), so I'm guessing I need to build the kernel from scratch?

Thanks!
 
No you do not need to build a new kernel. I use drm-510-kmod on my 13.1 Release machine. Works well for me.
On the Freshports page it says the driver collides with all other drm-kmod drivers. Have you removed them before
you tried to build drm-510-kmod?
 
Looks like I never switched over to the releng/13.1 branch in /usr/src when I originally built drm-510-kmod. I rebuilt it against releng/13.1 and this time the module loads, but I still get the blank screen and startx reports (EE) no screens found(EE).

The output of the module loading is:

Code:
drmn0: <drmn> on vgapci0
vgapci0: child drmn0 requested pci_enable_io
drmn drmn0: drm_WARN_ON(!IS_PLATFORM(dev_priv, INTEL_TIGERLAKE) && !IS_PLATFORM(dev_priv, INTEL_ROCKETLAKE))
[drm] Unable to create a private tmpfs mount, hugepage support will be disabled(-19).
[drm] Got stolen memory base 0x0, size 0x0
drmn0: [drm] *ERROR* crtc 51: Can't calculate constants, dotclock = 0!
drmn drmn0: drm_WARN_ON_ONCE(drm_drv_uses_atomic_modeset(dev))drmn drmn0: drm_WARN_ON(!pll->info->funcs->get_hw_state(dev_priv, pll, &pipe_config->dpll_hw_state))crtc active state 
sysctl_warn_reuse: can't re-use a leaf (hw.dri.debug)!
[drm] Initialized i915 1.6.0 20200917 for drmn0 on minor 0
drmn0: [drm] Cannot find any crtc or sizes
drmn0: successfully loaded firmware image 'i915/kbl_dmc_ver1_04.bin'
drmn0: [drm] Finished loading DMC firmware i915/kbl_dmc_ver1_04.bin (v1.4)

Interestingly, drm_info reports no Connectors. On another computer I have that works fine (older graphics), drm_info reports HDMI and other connectors.
 
I have some drm warnings too
Code:
drmn0: <drmn> on vgapci0
vgapci0: child drmn0 requested pci_enable_io
vgapci0: child drmn0 requested pci_enable_io
[drm] Unable to create a private tmpfs mount, hugepage support will be disabled(-19).
[drm] Got stolen memory base 0x0, size 0x0
drmn0: successfully loaded firmware image 'i915/tgl_dmc_ver2_08.bin'
drmn0: [drm] Finished loading DMC firmware i915/tgl_dmc_ver2_08.bin (v2.8)
drmn drmn0: drm_WARN_ON(val == 0xffffffff)drmn drmn0: drm_WARN_ON(val == 0xffffffff)

But X works.

drm_info prints :
Code:
lanin@freebsd6:~# drm_info | grep "Driver\|Device"
├───Driver: i915 (Intel Graphics) version 1.6.0 (20200917)
├───Device: PCI 8086:9a49 Intel Corporation TigerLake-LP GT2 [Iris Xe Graphics]
 
Back
Top