PCI device not working

Kumar Gala galak at kernel.crashing.org
Thu Sep 27 22:27:33 EST 2012


On Sep 27, 2012, at 6:43 AM, Davide Viti wrote:

> Hi,
> 
>> So its odd that scanning of the second bus didn't report any devices.  Do 
> you have code that implements ppc_md.pci_exclude_device ?
> 
> not that I'm aware 
> of
> 
>> You might also want to put some code in the indirect PCI ops (indirect.c) 
> to see what actual values you are getting from various indirect_read_config() 
> calls.
> 
> To make sure that  ppc_md.pci_exclude_device is not implemented, I've 
> put some printouts inside  indirect_read_config(): I print various parameters 
> when the function is called, and when it returns and note that:
> 
> 1. 
> indirect_read_config() is called 422 times: 
>     174 times for 
> [/pcie at ffe0a000] (controller where the device is not detected)
>     248 times 
> for [/pcie at ffe09000] 
> 2. ppc_md.pci_exclude_device is always NULL
> 3. the 
> function always returns with PCIBIOS_SUCCESSFUL
> 4. the only call to  
> indirect_read_config() inside which  bus_no=0x3, returns with the following 
> log:
> 
> pci_bus 0001:03: scanning bus
> -> ind_r_config - [/pcie at ffe0a000] 
> devfn=0x0 len=0x4 hose->indirect_type=0x16 hose->first_busno=0x2 bus-
>> number=0x3
> -> ind_r_config [/pcie at ffe0a000] - (bus_no=0x3 reg=0x0 
> cfg_data=0xffffffff len=0xff7eb004) val=0x4 PCIBIOS_SUCCESSFUL  

Can you see what bus_no actually gets set to in the case we scan 0001:03 ?

If its set to 03, can you try hack it to 1.

- k

> 
> the entire 
> log is about 116Kb and is available in [1] or [2] (didn't feel like pasting so 
> much data on the ML)
> thanx alot,
> 
> Davide
> 
> [1] http://pastebin.com/JaPGmmfs
> [2] 
> http://paste2.org/p/2273728
> 
> 
> Invita i tuoi amici e Tiscali ti premia! Il consiglio di un amico vale più di uno spot in TV. Per ogni nuovo abbonato 30 € di premio per te e per lui! Un amico al mese e parli e navighi sempre gratis: http://freelosophy.tiscali.it/



More information about the Linuxppc-dev mailing list