[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
kern/44262: ppb may fail to setup some PCIe busses correctly
>Synopsis: ppb may fail to setup some PCIe busses correctly
>Arrival-Date: Wed Dec 22 16:55:00 +0000 2010
>Originator: Dr. W. Stukenbrock
>Release: NetBSD 5.1
Dr. Nagler & Company GmbH
System: NetBSD test-s0 4.0 NetBSD 4.0 (NSW-WS) #0: Tue Aug 17 17:28:09 CEST
2010 wgstuken@test-s0:/usr/src/sys/arch/amd64/compile/NSW-WS amd64
The ppb_fix_pcix() routine at line 75 in /usr/src/sys/dev/pci/ppb.c
correct some setups to get PCIe working as expected for NetBSD.
It will do only something, if it is a PCIe bus.
(currently only the notification events gets disabled if they are
Accedently the routine checks the returned value from
PCI_CAP_PCIEXPRESS register and
if it does not match excactly the value 0x00010000, an error about an
"unsupported PCI Express version" is printed and no corrections to the
setup is done.
(I think the value 0x0001000 belongs to PCIe 1.0, but I'm not shure ...)
Now if you have a system with PCIe 2.0 (as we have with a Supermicro
X8SIL), you get
the (confusing) message during boot.
Neverless the PCIe bus seems to work anyway and but I'm not shure if it
will also work
if e.g. notification events - if they are also available in PCIe2.0 -
are enabled too.
Someone should have a look at this and should either silently ignore
any "unknown" PCIe
version or should catch the currently recent version (1.0, 1.x, 2.0,
...) and print only
an error message if it is a realy unknown version.
Perhaps it makes sence to print the deteted version on the screen, that
may make the search
for the reason and a way to fix it faster ...
Get a system with e.g. an Supermicro X8SIL board (Intel 3400 based) and
You will see the message during boot.
Not known, because I'm not realy confirmed with PCIe details.
If it makes sence to diasable notfication events on busses where
returns 0x00010000, than this may make sence also on some other busses
- e.g. PCIe2.0
Main Index |
Thread Index |