PEX 8111 PCI-Express to PCI Bridge and FreeBSD
Konstantin Dimitrov
kosio.dimitrov at gmail.com
Fri Dec 28 14:39:17 PST 2007
On Dec 28, 2007 8:04 PM, John Baldwin <jhb at freebsd.org> wrote:
> On Thursday 27 December 2007 08:16:59 am Konstantin Dimitrov wrote:
> > hello All,
> >
> > as far as i understand the documentation of the PEX 8111 PCI
> > Express-to-PCI Bridge, which is freely available here:
> >
> > http://www.plxtech.com/products/expresslane/pex8111.asp
> >
> > it is "Fully Transparent PCI Express to PCI Bridge", but under FreeBSD
> > it doesn't seem to behave as transparent, i.e. it doesn't seem to work
> > well with the standard FreeBSD PCI-PCI bridge driver, because it's not
> > possible to read/write from/to the PCI IC behind PEX 8111.
>
> Can you provide more detail on what you mean by read/write? Can you not do
> config space transactions to child devices of the bridge or can you not
> access mapped BARs of child devices or what exactly?
i can access the PCI configuration registers of the child device
(Envy24HT) connected to the bridge (PEX 8111):
# pciconf -lv
.................
pcib5 at pci0:4:0:0: class=0x060400 card=0x00000000 chip=0x811110b5 rev=0x21
hdr=0x01
vendor = 'PLX Technology Inc.'
device = 'PEX 8111 PCI Express-to-PCI Bridge'
class = bridge
subclass = PCI-PCI
none1 at pci0:5:4:0: class=0x040100 card=0x41543138 chip=0x17241412 rev=0x01
hdr=0x00
vendor = 'VIA Technologies Inc (Was: IC Ensemble Inc)'
device = 'VT1720/24 Envy24PT/HT PCI Multi-Channel Audio Controller'
class = multimedia
subclass = audio
and i can read them:
# pciconf -r pci0:5:4:0: 0:31
17241412 02100005 04010001 00002000
0000a001 0000a401 00000000 00000000
and write to them:
# pciconf -w pci0:5:4:0 0x04 0x04
# pciconf -r pci0:5:4:0: 0:31
17241412 02100004 04010001 00002000
0000a001 0000a401 00000000 00000000
and all those values are the correct values for the child device, but
i can't access mapped BARs of the child device, the code that i'm
testing with is very simple:
http://xkodi.svobodno.com/xkodi/xkodi.c
http://xkodi.svobodno.com/xkodi/xkodi.h
http://xkodi.svobodno.com/xkodi/Makefile
and works if the child (Envy24HT) is connected directly (without the
PEX 8111 bridge) to the PCI bus.
>
> --
> John Baldwin
>
More information about the freebsd-drivers
mailing list