From mboxrd@z Thu Jan 1 00:00:00 1970 From: Aaron Williams Date: Wed, 9 Feb 2011 17:25:39 -0800 Subject: [U-Boot] PCIE supported networking cards? In-Reply-To: <201102022205.53280.Aaron.Williams@caviumnetworks.com> References: <4D485ABE.9010604@caviumnetworks.com> <201102021551.15060.Aaron.Williams@caviumnetworks.com> <201102022205.53280.Aaron.Williams@caviumnetworks.com> Message-ID: <201102091725.39425.Aaron.Williams@caviumnetworks.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de I got it working, thanks to the patch. I had to make a few minor patches for our platform to map pointers to 64-bit physical addresses and a wrapper to access the PCI BAR address space and it works well. -Aaron On Wednesday, February 02, 2011 10:05:52 pm Aaron Williams wrote: > Disregard my previous email. I'm running into some issues trying to get > PCIe working in u-boot. > > -Aaron > > On Wednesday, February 02, 2011 03:51:14 pm Aaron Williams wrote: > > 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 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