On Sat, Oct 24, 2015 at 11:48:01PM +0200, Mark Kettenis wrote: > The diff below makes inteldrm(4) attach directly to pci(4) instead of > vga(1). Because inteldrm(4) depends on intagp(4), this also make > intagp(4) a child of inteldrm(4). Ultimately I'd like to integrate > intagp(4) into inteldrm(4), but that's going to be a bit more work. > > This diff is needed to make inteldrm(4) work when OpenBSD gets booted > by UEFI firmware. It will also make inteldrm(4) work on machines with > discrete graphics.
On the Thinkpad Helix 2 (UEFI only machine) inteldrm now attaches. However, it crashes shortly after: inteldrm0 at pci0 dev 2 function 0 "Intel HD Graphics 5300" rev 0x09 drm1 at inteldrm inteldrm0: msi inteldrm0: 1920x1080 wsdisplay1 at inteldrm0 mux 1 uvm_fault(0xffffffff81928280, 0x20, 0, 2) -> e kernel: page fault trap code = 0 Stopped at rasops_doswitch+0x76: mvol $0x1,0x20(%r14) ddb> Keyboard is unresponsive. Also, the screen is shifted left such that most lines start on the right half of the screen and flow back in on the left hand side. So the above actually appears like this on the screen: inteldrm0 at pci0 dev 2 function 0 "Intel HD Graphics 5300" rev 0x09 drm1 at inteldrm inteldrm0: msi inteldrm0: 1920x1080 wsdisplay1 at inteldrm0 mux 1 uvm_fault(0xffffffff81928280, 0x20 , 0, 2) -> e kernel: page fault trap code = 0 Stopped at rasops_doswitch+0x 76: mvol $0x1,0x20(%r14) ddb>