ValleyView

Alexander Mishurov alexander.m.mishurov at gmail.com
Thu Feb 4 08:14:37 UTC 2016


Hi!

I started enabling ValleyView in drm2 and faced some problems.

Target device: Acer E3-112 laptop. Celeron N2840.

VGA: pci0:0:2:0, 0x0f318086
HOST-PCI: pci0:0:0:0, 0x0f008086

I use these docs as reference:
https://01.org/linuxgraphics/documentation/hardware-specification-prms

Particularly these two documents:
1. This one for ValleyView PCI configurations space registers
https://01.org/sites/default/files/documentation/intel_os_gfx_prm_vol11_-_gfx_interface.pdf
2. And this one for Haswell PCI configurations space registers to 
compare because Haswell already exist
https://01.org/sites/default/files/documentation/intel-gfx-prm-osrc-hsw-pcie-config-registers.pdf

I enabled my device id in
dev/drm2/drm_pciids.h
dev/drm2/i915/i915_drv.c

And turned on "i915_enable_unsupported" variable.

And faced kernel crash with following problem:
Fatal trap 12: page fault while in kernel mode
device_get_softc() at device_get_softc+0x4/frame 0xfffffe023131c3c0
intel_gtt_get_bridge_device() at intel_gtt_get_bridge_device+0x11/frame 
0xfffffe023131c3d0
i915_driver_load() at i915_driver_load+0x3ac/frame 0xfffffe023131c550
drm_get_pci_dev() at drm_get_pci_dev+0x436/frame 0xfffffe023131c5b0
drm_attach_helper() at drm_attach_helper+0x13f/frame 0xfffffe023131c600
i915_attach() at i915_attach+0x53/frame 0xfffffe023131c610
device_attach() at device_attach+0x41d/frame 0xfffffe023131c670

So I figured out I need to get agp working. I added device id to
dev/agp/agp_i810.c

Nothing happens, some debugging revealed that all functions:
agp_sb_check_active()
agp_sb_get_stolen_size()
agp_sb_get_gtt_total_entries()
and others that in order call
pci_read_config()
and read pci registers from bridge device, always return zeros.
I checked constants in
dev/agp/agpreg.h
All Sandy Bridge constants for config registers match those in documents 
for HSW and VLV mentioned above.

So I don't know what's causing the problem. I'm running dev kernel on 
EFI booted machine with xorg and xf86-video-scfb.











More information about the freebsd-x11 mailing list