freebsd / drm-kmod

drm driver for FreeBSD
148 stars 68 forks source link

i915kms ThinkPad X13 Gen4 does not work #272

Closed takawata closed 6 months ago

takawata commented 6 months ago

Describe the bug i915kms ThinkPad X13 Gen4 use Raptor Rake P, which does not suppored yet, but check at a grance, it may work with adding ID. So I tried but failed.

FreeBSD version FreeBSD yuudachi.init-main.com 15.0-CURRENT FreeBSD 15.0-CURRENT #1 takawata-wip-n266816-62d47a4db457-dirty: Tue Dec 5 23:42:45 JST 2023 takawata@yuudachi.init-main.com:/usr/obj/home/takawata/projects/freebsd/src/amd64.amd64/sys/LIEUTENANT amd64

PCI Info

hostb0@pci0:0:0:0: class=0x060000 rev=0x01 hdr=0x00 vendor=0x8086 device=0x a708 subvendor=0x17aa subdevice=0x230c vendor = 'Intel Corporation' device = 'Raptor Lake-P/U 2p+8e cores Host Bridge/DRAM Controller' class = bridge subclass = HOST-PCI vgapci0@pci0:0:2:0: class=0x030000 rev=0x04 hdr=0x00 vendor=0x8086 device=0xa7a1 subvendor=0x17aa subdevice=0x230c vendor = 'Intel Corporation' device = 'Raptor Lake-P [Iris Xe Graphics]' class = display subclass = VGA none0@pci0:0:4:0: class=0x118000 rev=0x01 hdr=0x00 vendor=0x8086 device=0xa71d subvendor=0x17aa subdevice=0x230c vendor = 'Intel Corporation' device = 'Raptor Lake Dynamic Platform and Thermal Framework Processor Participant' class = dasp pcib1@pci0:0:6:0: class=0x060400 rev=0x01 hdr=0x01 vendor=0x8086 device=0xa74d subvendor=0x17aa subdevice=0x230c vendor = 'Intel Corporation' device = 'Raptor Lake PCIe 4.0 Graphics Port' class = bridge

pciconf -lv

Paste the output of pciconf -lv

DRM KMOD version HEAD of main (as of today) with modification. diff --git a/drivers/gpu/drm/i915/i915_pci.c b/drivers/gpu/drm/i915/i915_pci.c index b1dab7058d..37ad2383ac 100644 --- a/drivers/gpu/drm/i915/i915_pci.c +++ b/drivers/gpu/drm/i915/i915_pci.c @@ -1133,6 +1133,7 @@ static const struct pci_device_id pciidlist[] = { INTEL_ADLP_IDS(&adl_p_info), INTEL_DG1_IDS(&dg1_info), INTEL_RPLS_IDS(&adl_s_info),

+/ RPL-U / +#define INTEL_RPLU_IDS(info) \

To Reproduce load i915kms.ko (success and recognized) and start X without using xf86-video-intel driver. (using modeset driver)

Screenshots If applicable, add screenshots to help explain your problem.

Additional context Starting X makes the screen black with cursor remained. The OS does not hang and can log in with ssh, and killing X from remote will recover normal operation.

Xorg.0.log shows [ 287.456] failed to add fb -19 [ 287.456] (EE) modeset(0): failed to set mode: Operation not supported by device

And using ktrace shows following result.

2113 MainThread RET ioctl 0 2113 MainThread CALL ioctl(0xe,0xc00464be,0x820d947e8) 2113 MainThread RET ioctl 0 2113 MainThread CALL ioctl(0x10,0xc0106461,0x820d96550) 2113 MainThread RET ioctl 0 2113 MainThread CALL ioctl(0x10,0xc00c642d,0x820d96508) 2113 MainThread RET ioctl 0 2113 MainThread CALL ioctl(0x11,0xc00c642e,0x820d96508) 2113 MainThread RET ioctl 0 2113 MainThread CALL close(0x5) 2113 MainThread RET close 0 2113 MainThread CALL ioctl(0xe,0xc06864b8,0x820d96650) 2113 MainThread RET ioctl -1 errno 19 Operation not supported by device 2113 MainThread CALL write(0x2,0x820d96270,0x15) 2113 MainThread GIO fd 2 wrote 21 bytes "failed to add fb -19 " 2113 MainThread RET write 21/0x15

What shall I check next?

evadot commented 6 months ago

As you said it's not supported yet, you need to wait.

takawata commented 6 months ago

I know, but I want to know what tha last failed ioctl means.

takawata commented 6 months ago

Thanks it works on 6.1!

rosorio commented 5 months ago

@takawata did you do something specific, I'm a little bit confused. I have drm-61-kmod installed in a FBSD15 and my Raptor Lake P (0xa7a0) isn't recognized

takawata commented 5 months ago

I tried on the HEAD of master branch as of Dec 29 2023.