Kernel cannot see PCI device
Bjorn Helgaas
bhelgaas at google.com
Thu May 19 00:14:57 EST 2011
On Wed, May 18, 2011 at 4:02 AM, Prashant Bhole
<prashantsmailcenter at gmail.com> wrote:
> On Mon, May 2, 2011 at 10:21 AM, Prashant Bhole
> <prashantsmailcenter at gmail.com> wrote:
>>
>> Hi,
>> I have a custom made powerpc 460EX board. On that board u-boot
>> can see a PCI device but Linux kernel cannot see it. What could be the problem?
>>
>> On u-boot "pci 2" commands displays following device:
>> Scanning PCI devices on bus 2
>> BusDevFun VendorId DeviceId Device Class Sub-Class
>> _____________________________________________________________
>> 02.00.00 0x1000 0x0072 Mass storage controller 0x00
>>
>> And when the kernel is booted, there is only one pci device (bridge):
>> #ls /sys/bus/pci/devices
>> 0000:80:00.0
>>
>
> I am still facing in this problem.
>
> a call to pci_bus_read_config_dword(bus, devfn, PCI_VENDOR_ID, &l) returns
> positive value in the function pci_scan_device(), which means VENDOR_ID reading
> failed. I could not find the reason. Any hints?
Hmm... probably powerpc-related, so I added linuxppc-dev.
My guess would be that Linux didn't find the host bridge to the
hierarchy containing bus 2. I would guess the host bridge info is
supposed to come from OF. More information, like the complete u-boot
PCI scan and the kernel dmesg log, would be useful. And maybe u-boot
has a way to dump the OF device tree?
More information about the Linuxppc-dev
mailing list