[U-Boot] PCIE supported networking cards?

Aaron Williams Aaron.Williams at caviumnetworks.com
Thu Feb 3 00:51:14 CET 2011


Thanks,

I took the patch but it looks like it's unable to read the eeprom. It's 
possible it may also have something to do with our PCIE implementation since 
I'm trying to bring that up with the updated u-boot. I also need to go through 
the code and make sure that the driver is 64-bit friendly since we load u-boot 
above 4GB when enough memory is loaded (virt_to_phys returns a 64-bit address 
on our platform).

In the Linux e1000e driver I do see some differences between the e1000_82573 
and the e1000_82574.

-Aaron

PCIe: Port 0 is SRIO, skipping.                                                                           
PCIe: Port 1 link active, 1 lanes, speed gen1                                                             
PCI Autoconfig: Bus Memory region: [0xf8000000-0xffffffff],                                               
                Physical Memory [f8000000-ffffffffx]                                                      
PCI Autoconfig: Bus I/O region: [0x100000-0x1000ffffe],                                                   
                Physical Memory: [100000-1000ffffe]                                                       
address=0x100000 bus_lower=0x100400PCI:   Bus Dev VenId DevId Class Int                                   
PCI Autoconfig: Bus Memory region: [0xf8000000-0xffffffff],                                               
                Physical Memory [f8000000-ffffffffx]                                                      
PCI Autoconfig: Bus I/O region: [0x100000-0x1000ffffe],                                                   
                Physical Memory: [100000-1000ffffe]                                                       
PCI Scan: Found Bus 0, Device 0, Function 0                                                               
PCI Autoconfig: BAR 0, Mem, size=0x20000, address=0xf8000000 
bus_lower=0xf8020000                         
PCI Autoconfig: BAR 1, Mem, size=0x80000, address=0xf8080000 
bus_lower=0xf8100000                         
PCI Autoconfig: BAR 2, I/O, size=0x20, address=0x100000 bus_lower=0x100020                                
PCI Autoconfig: BAR 3, Mem, size=0x4000, address=0xf8100000 
bus_lower=0xf8104000                          
PCIe: port=1, first_bus=0, last_bus=0   
e1000_initialize                                                                                   
e1000#0: iobase 0xf8000000                                                                                
e1000_set_mac_type                                                                                        
Found 52574, setting mac type to 17                                                                       
e1000_set_media_type                                                                                      
copper interface                                                                                          
e1000_reset_hw                                                                                            
Masking off all interrupts                                                                                
Issuing a global reset to MAC                                                                             
Masking off all interrupts                                                                                
e1000_init_eeprom_params                                                                                  
e1000_is_onboard_nvm_eeprom                                                                               
e1000_validate_eeprom_checksum                                                                            
e1000_read_eeprom                                                                                         
e1000_is_onboard_nvm_eeprom                                                                               
e1000_read_eeprom                                                                                         
e1000_is_onboard_nvm_eeprom                                                                               
e1000_read_eeprom                                                                                         
e1000_is_onboard_nvm_eeprom                                                                               
e1000_read_eeprom                                                                                         
e1000_is_onboard_nvm_eeprom                                                                               
e1000_read_eeprom                                                                                         
e1000_is_onboard_nvm_eeprom                                                                               
e1000_read_eeprom                                                                                         
e1000_is_onboard_nvm_eeprom                                                                               
e1000_read_eeprom                                                                                         
e1000_is_onboard_nvm_eeprom                                                                               
e1000_read_eeprom                                                                                         
e1000_is_onboard_nvm_eeprom                                                                               
e1000_read_eeprom                                                                                         
e1000_is_onboard_nvm_eeprom                                                                               
e1000_read_eeprom                                                                                         
e1000_is_onboard_nvm_eeprom                                                                               
e1000_read_eeprom                                                                                         
e1000_is_onboard_nvm_eeprom                                                                               
e1000_read_eeprom                                                                                         
e1000_is_onboard_nvm_eeprom                                                                               
e1000_read_eeprom                                                                                         
e1000_is_onboard_nvm_eeprom                                                                               
e1000_read_eeprom                                                                                         
e1000_is_onboard_nvm_eeprom                                                                               
e1000_read_eeprom                                                                                         
e1000_is_onboard_nvm_eeprom                                                                               
e1000_read_eeprom                                                                                         
e1000_is_onboard_nvm_eeprom                                                                               
e1000_read_eeprom                                                                                         
e1000_is_onboard_nvm_eeprom                                                                               
e1000_read_eeprom                                                                                         
e1000_is_onboard_nvm_eeprom                                                                               
e1000_read_eeprom                                                                                         
e1000_is_onboard_nvm_eeprom                                                                               
e1000_read_eeprom                                                                                         
e1000_is_onboard_nvm_eeprom                                                                               
e1000_read_eeprom                                                                                         
e1000_is_onboard_nvm_eeprom                                                                               
e1000_read_eeprom                                                                                         
e1000_is_onboard_nvm_eeprom                                                                               
e1000_read_eeprom                                                                                         
e1000_is_onboard_nvm_eeprom                                                                               
e1000_read_eeprom                                                                                         
e1000_is_onboard_nvm_eeprom                                                                               
e1000_read_eeprom                                                                                         
e1000_is_onboard_nvm_eeprom                                                                               
e1000_read_eeprom                                                                                         
e1000_is_onboard_nvm_eeprom                                                                               
e1000_read_eeprom                                                                                         
e1000_is_onboard_nvm_eeprom                                                                               
e1000_read_eeprom                                                                                         
e1000_is_onboard_nvm_eeprom                                                                               
e1000_read_eeprom                                                                                         
e1000_is_onboard_nvm_eeprom                                                                               
e1000_read_eeprom                                                                                         
e1000_is_onboard_nvm_eeprom                                                                               
e1000_read_eeprom                                                                                         
e1000_is_onboard_nvm_eeprom                                                                               
e1000_read_eeprom                                                                                         
e1000_is_onboard_nvm_eeprom                                                                               
e1000_read_eeprom                                                                                         
e1000_is_onboard_nvm_eeprom                                                                               
e1000_read_eeprom                                                                                         
e1000_is_onboard_nvm_eeprom                                                                               
e1000_read_eeprom                                                                                         
e1000_is_onboard_nvm_eeprom                                                                               
e1000_read_eeprom                                                                                         
e1000_is_onboard_nvm_eeprom                                                                               
e1000_read_eeprom                                                                                         
e1000_is_onboard_nvm_eeprom                                                                               
e1000_read_eeprom                                                                                         
e1000_is_onboard_nvm_eeprom                                                                               
e1000_read_eeprom                                                                                         
e1000_is_onboard_nvm_eeprom                                                                               
e1000_read_eeprom                                                                                         
e1000_is_onboard_nvm_eeprom                                                                               
e1000_read_eeprom                                                                                         
e1000_is_onboard_nvm_eeprom                                                                               
e1000_read_eeprom                                                                                         
e1000_is_onboard_nvm_eeprom                                                                               
e1000_read_eeprom                                                                                         
e1000_is_onboard_nvm_eeprom                                                                               
e1000_read_eeprom                                                                                         
e1000_is_onboard_nvm_eeprom                                                                               
e1000_read_eeprom                                                                                         
e1000_is_onboard_nvm_eeprom                                                                               
e1000_read_eeprom                                                                                         
e1000_is_onboard_nvm_eeprom                                                                               
e1000_read_eeprom                                                                                         
e1000_is_onboard_nvm_eeprom                                                                               
e1000_read_eeprom                                                                                         
e1000_is_onboard_nvm_eeprom                                                                               
e1000_read_eeprom                                                                                         
e1000_is_onboard_nvm_eeprom                                                                               
e1000_read_eeprom                                                                                         
e1000_is_onboard_nvm_eeprom                                                                               
e1000_read_eeprom                                                                                         
e1000_is_onboard_nvm_eeprom                                                                               
e1000_read_eeprom                                                                                         
e1000_is_onboard_nvm_eeprom                                                                               
e1000_read_eeprom                                                                                         
e1000_is_onboard_nvm_eeprom                                                                               
e1000_read_eeprom                                                                                         
e1000_is_onboard_nvm_eeprom                                                                               
e1000_read_eeprom                                                                                         
e1000_is_onboard_nvm_eeprom                                                                               
e1000_read_eeprom                                                                                         
e1000_is_onboard_nvm_eeprom                                                                               
e1000_read_eeprom                                                                                         
e1000_is_onboard_nvm_eeprom                                                                               
e1000_read_eeprom                                                                                         
e1000_is_onboard_nvm_eeprom                                                                               
e1000_read_eeprom                                                                                         
e1000_is_onboard_nvm_eeprom                                                                               
e1000_read_eeprom                                                                                         
e1000_is_onboard_nvm_eeprom                                                                               
e1000_read_eeprom                                                                                         
e1000_is_onboard_nvm_eeprom                                                                               
e1000_read_eeprom                                                                                         
e1000_is_onboard_nvm_eeprom                                                                               
e1000_read_eeprom                                                                                         
e1000_is_onboard_nvm_eeprom                                                                               
e1000_read_eeprom                                                                                         
e1000_is_onboard_nvm_eeprom 

On Tuesday, February 01, 2011 08:18:27 pm Kumar Gala wrote:
> You may want to look at the following patch that adds support for 0x10d3:
> 
> http://patchwork.ozlabs.org/patch/79788/
> 
> - k
> 
> On Feb 1, 2011, at 3:32 PM, Aaron Williams wrote:
> > This is an Intel EXPI9301 PRO/1000 OEM card, vendor ID 0x8086, device ID
> > 0x10d3. I added it to the list but I don't know what the MAC type is. 
> > I'll look into the Linux driver and see if I can see what it is.
> > 
> > -Aaron
> > 
> > On Tuesday, February 01, 2011 11:19:24 am Scott Wood wrote:
> >> On Tue, 1 Feb 2011 13:15:01 -0600
> >> 
> >> Kumar Gala <galak at kernel.crashing.org> wrote:
> >>> We utilize e1000 PCIe cards all the time
> >> 
> >> Aren't there some versions that work, and some that don't?
> >> 
> >> -Scott
> >> 
> >>> - k
> >>> 
> >>> On Feb 1, 2011, at 1:10 PM, Aaron Williams wrote:
> >>>> Are there any PCIE networking cards that are supported? So far I've
> >>>> tried an Intel card and a Realtek RTL8168 card, but neither is
> >>>> supported. It looks like the E1000 driver only supports PCI and PCIX
> >>>> based cards (Linux uses the e1000e card for PCIe cards).
> >>>> 
> >>>> -Aaron
> >>>> _______________________________________________
> >>>> U-Boot mailing list
> >>>> U-Boot at lists.denx.de
> >>>> http://lists.denx.de/mailman/listinfo/u-boot
> >>> 
> >>> _______________________________________________
> >>> U-Boot mailing list
> >>> U-Boot at lists.denx.de
> >>> http://lists.denx.de/mailman/listinfo/u-boot


More information about the U-Boot mailing list