Messages in this thread | | | Subject | Re: SDVO on E6xx | Date | Wed, 21 Nov 2012 17:38:08 +0100 | From | roman@hodek ... |
| |
Hi Alan,
> There is an Intel driver with open kernel code and proprietary userspace for > the Imagination 3D engine (EMGD) although only for an out of maintenance > Fedora and for Meego and in both cases for ancient kernels.
I knew about EMGD, but not that there's code available for parts of it.
> The fully open driver is built by extracting the relevant information and > code from these releases.
Ah, ok. Then I'll try to extract even a bit more ;-) Thanks very much for that hint!
> If you unpack that it contains a tar ball which you can unpack which > contains the driver. > > emgd/pal/sdvo > > looks kind of promising.
Got it now (it's common/drm/emgd_drm.tgz).
I started to look around there, and emgd/display/pi/tnc/i2c_gmbus_tnc.c looks as a good source of infos. At least it mentions E6xx quite often, and it uses functions read/write_mmio_reg_tnc on TunnelCreek.
From there I got to an interesting comment:
#ifdef CONFIG_TNC /* Based on display port determine which mmio base to use: * port_type == SDVO ==> use 0:3:0 device mmio * port_type == LVDS ==> use 0:2:0 device mmio * port_type == LPC ==> use 0:31:0 device mmio */
Indeed, I have those additional PCI devices, and the BARs of 0:03.0 look much like those of 0:02.0. It has PCI ID 8086:8182 and class 0x0400 (multimedia/video). And in BAR 0 at offset 0x5100 there are values that look more like GMBUS... (0:1f.0 exists, it declares itself as ISA bridge, and it has no BARs assigned.)
Ok, I'll go down that road, poke around a bit there, and we'll see how far I can get!
Roman
| |