Current-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: HEADS UP: riastradh-drm2 branch merged

On 2014-03-23, at 6:06 PM, David H. Gutteridge wrote:
> On 2014-03-20, at 6:27 PM, David H. Gutteridge wrote:
>> On Tue, 18 Mar 2014 at 19:17:01, Taylor R Campbell wrote:
>>> I merged the riastradh-drm2 branch to HEAD today.  This shouldn't
>>> cause any problems for anyone, because it touched very little outside
>>> sys/external/bsd/drm2 -- it's not hooked into any kernels other than
>>> the new amd64/DRMKMS one.  But let me know if you observe any fallout.
>>> Update to userland should be coming soon, so that userlands can
>>> take advantage of the new DRM/KMS drivers.
>> Hello,
>> I doubt I'm telling you anything you don't already know, but I tried
>> compiling a DRMKMS kernel for both amd64 and i386 to test, and
>> neither compiled.
>> With i386, I hit this first:
>> In file included from 
>> /usr/builds/netbsd-current/src/sys/external/bsd/drm2/dist/include/drm/drmP.h:52:0,
>>                from 
>> /usr/builds/netbsd-current/src/sys/external/bsd/drm2/dist/drm/drm_agpsupport.c:34:
>> /usr/builds/netbsd-current/src/sys/external/bsd/drm2/include/linux/pci.h: In 
>> function 'pci_bus_alloc_resource':
>> /usr/builds/netbsd-current/src/sys/external/bsd/drm2/include/linux/pci.h:255:6:
>>  error: large integer implicitly truncated to unsigned type
>> *** [drm_agpsupport.o] Error code 1
>> I realize you only provided an amd64 kernel, the implication being
>> i386 might not yet be supported, but I tried it anyway, as the machine
>> I'd test with isn't capable of running 64-bit code.
>> From looking at the code, it's clear you're already aware of the
>> issue, given your "XXX" notation.
>> error = bus_space_alloc(bst, start, 0xffffffffffffffffULL /* XXX */,
>>          size, align, 0, 0, &resource->start, &resource->r_bsh);
> If this is of interest to anyone, I opened a PR detailing some issues
> that prevent this code from being used on i386. (The PR is 48676.)
> Dave

Recent changes by riastradh@ have made i386 kernels with drm2 enabled
buildable, so I've now tested on my somewhat aged machine with an
i945GME chipset. Details follow for the curious.

With is_console=1 set in src/sys/external/bsd/drm2/i915drm/i915_pci.c
the kernel tries to probe/attach to the graphics chipset (I'm not
sure exactly how far it gets, the messages flash by too fast) and
then fails, causing an apparent kernel panic (or at least a freeze).
I'm not able to get any dmesg output saved from it, and the screen
simply goes black. The machine doesn't respond to network activity.

With is_console=0 set, the kernel boots successfully, but the console
is unusable. (A small, fixed white cursor appears in the top left of
the screen, and I cannot switch VTs to other text consoles.) The
machine does boot multi-user, though, and responds to network
activity, so I've gleaned the following dmesg details.



: vendor 0x8086 product 0x27ac (rev. 0x03)
agp0 at pchb0: detected 7932k stolen memory
agp0: aperture at 0xc0000000, size 0x10000000
i915drmkms0 at pci0 dev 2 function 0
: vendor 0x8086 product 0x27ae (rev. 0x03)
drmkms0 at i915drmkms0
drm: Memory usable by graphics device = 256M
drm: MTRR allocation failed.  Graphics performance may suffer.
drm: Supports vblank timestamp caching Rev 1 (10.10.2010).
drm: Driver supports precise vblank timestamp query.
i915drmkms0: unable to map ROM
drm: failed to find VBIOS tables
i915drmkms0: unable to map VGA registersdrm kern warning: composite sync not 
drm: initialized overlay support
drmkms0: interrupting at ioapic0 pin 16 (i915)


drm kern warning: composite sync not supported
render error detected, EIR: 0x00000010
page table error
  PGTBL_ER: 0x00000100
DRM error in i915_report_and_clear_eir: EIR stuck: 0x00000010, masking
render error detected, EIR: 0x00000010
page table error
  PGTBL_ER: 0x00000100
i915drmkms0: framebuffer at 0xda82b000, size 1024x600, depth 32, stride 4096
wsdisplay1 at i915drmkms0 kbdmux 1
wsmux1: connecting to wsdisplay1
fixme: max PWM is zero
drmkms0: info: registered panic notifier

Home | Main Index | Thread Index | Old Index