[ipxe-devel] [External] FW: [PATCH] [intel] Add Intel I210 Gigabit Ethernet PCI ID

Post, Donald L UTAS Donald.Post at utas.utc.com
Wed Feb 5 02:21:26 UTC 2014


Hi,

So I pulled the code to read the iNVM from the linux driver and added it to intel.c and was able to read the correct mac address and validated that I can now boot over the i210 flash-less. I noticed that the correct MAC address is reported as "autoloaded" but the preferred address (ie the one used is the one read from the eeprom/invm) and I was wondering why?  I changed to logic to be if the autoloaded MAC address is valid then use it, otherwise try to read the eeprom or invm based on the device. Is there a reason the autoloaded address is not used by default?

 I will generate a patch tomorrow with my changes and can send it to someone knowledgeable to morph into a correct patch or should I post the patch to the email list... Not sure what the correct procedure is..

Thanks!

-Don

-----Original Message-----
From: ipxe-devel-bounces at ipxe.org [mailto:ipxe-devel-bounces at ipxe.org] On Behalf Of Post, Donald L UTAS
Sent: Tuesday, February 04, 2014 9:40 AM
To: Robin Smidsrød; ipxe-devel at ipxe.org
Subject: Re: [ipxe-devel] [External] FW: [PATCH] [intel] Add Intel I210 Gigabit Ethernet PCI ID

Hi Robin,

Below is the output from my debug run. I have tracked down the device and it is the Intel i210 Flash-Less Copper device (i210-LT). The board has 4 ethernets, one (eth0) is a i217-LM and reports the proper MAC address. The other three are the troublesome i210-LT Flashless Copper devices. I am guessing that the iPXE intel driver has not been updated to support the flashless device.  From other patches I have seen (linux) it looks like the MAC address needs to be read differently for the "flash-less" devices.

Thanks!

-Don

boot: 1                                                                         
Loading /boot/ipxe.lkrn...                                                      
Loading shellscript.ipxe...ready.                                                      
v---RED---v
iPXE initialising devices...INTEL 0xbe894 MAC reset (ctrl 08100261)             
INTEL 0xbe894 has autoloaded MAC address 00:17:3c:02:44:7d                      
INTEL 0xbe894 has large-format EERD                                             
INTEL 0xbe894 has EEPROM MAC address 19:00:00:17:19:02 (port 0)                 
INTEL 0xbe894 link status is 00280383            
v---GREEN---v                                
INTEL 0xbea84 MAC reset (ctrl 08100261)                                         
INTEL 0xbea84 has autoloaded MAC address 00:17:3c:02:44:7e                      
INTEL 0xbea84 has large-format EERD                                             
INTEL 0xbea84 has EEPROM MAC address 19:00:00:17:19:02 (port 0)                  
INTEL 0xbea84 link status is 00280383                                           
v--- Orange ---v
INTEL 0xbec74 MAC reset (ctrl 081c0261)                                          
INTEL 0xbec74 has autoloaded MAC address 00:17:3c:02:44:7f                       
INTEL 0xbec74 has large-format EERD                                             
INTEL 0xbec74 has EEPROM MAC address 19:00:00:17:19:02 (port 0)                 
INTEL 0xbec74 link status is 00280383                                           
v--- White ---v
ok                  

iPXE 1.0.0+ -- Open Source Network Boot Firmware -- http://ipxe.org             
Features: AoE HTTP iSCSI DNS TFTP SRP bzImage ELF MBOOT PXE PXEXT Menu          
iPXE> ifconfig
Configuring (net0 00:17:3c:02:44:7c).................. Error 0x040ee119 (http://
ipxe.org/040ee119)                                                              
INTEL 0xbe894 ring 03800 is at [7ff5b600,7ff5b700)                              
INTEL 0xbe894 ring 02800 is at [7ff5b580,7ff5b600)                               
INTEL 0xbe894 link status is 00280383                                           
INTEL 0xbe894 link status is 00280383                                           
Configuring (net1 19:00:00:17:19:02).................. Error 0x040ee119 (http://
ipxe.org/040ee119)                                                               
INTEL 0xbe894 MAC reset (ctrl 081c0261)                                         
INTEL 0xbea84 ring 03800 is at [7ff5b600,7ff5b700)                               
INTEL 0xbea84 ring 02800 is at [7ff5b580,7ff5b600)                               
INTEL 0xbea84 link status is 00280383                                            
INTEL 0xbea84 link status is 00280383                                            
Configuring (net2 19:00:00:17:19:02).................. Error 0x040ee119 (http:///
ipxe.org/040ee119)                                                              
INTEL 0xbea84 MAC reset (ctrl 08140261)                                         
INTEL 0xbec74 ring 03800 is at [7ff5b600,7ff5b700)                              
INTEL 0xbec74 ring 02800 is at [7ff5b580,7ff5b600)                              
INTEL 0xbec74 link status is 00280383                                           
INTEL 0xbec74 link status is 00280383
Configuring (net3 19:00:00:17:19:02).................. Error 0x040ee119 (http://
ipxe.org/040ee119)                                                              
INTEL 0xbec74 MAC reset (ctrl 081c0261

-----Original Message-----
From: ipxe-devel-bounces at ipxe.org [mailto:ipxe-devel-bounces at ipxe.org] On Behalf Of Robin Smidsrød
Sent: Tuesday, February 04, 2014 4:31 AM
To: ipxe-devel at ipxe.org
Subject: Re: [ipxe-devel] [External] FW: [PATCH] [intel] Add Intel I210 Gigabit Ethernet PCI ID

Compile with DEBUG=intel and report which of the tests at http://ipxe.org/dev/driver fail (with the PCI_ROM line in place).
Accompanying screenshots of the red debug text output would be most useful in tracking things down, as it shows the register state when things go wrong. If you have a serial cable you can of course use that instead of taking a photo.

-- Robin

On 04.02.2014 00:47, Post, Donald L UTAS wrote:
> Also MAC address being reported for the three devices is bogus. If I boot linux, I can view the mac addresses and they are what I expect (correct first 3 hex digits for vendor, etc..). ifconf reports the same MAC address for all three and it does not have the right vendor OUI..  The driver is working somewhat in that the link state is reported correctly. If I unplug the link and ifconf the link is reported as down. Plugged in and it is reported as up.
> 
> Any help is greatly appreciated...
> 
> -Don
> 
> -----Original Message-----
> From: ipxe-devel-bounces at ipxe.org [mailto:ipxe-devel-bounces at ipxe.org]
> On Behalf Of Post, Donald L UTAS
> Sent: Monday, February 03, 2014 6:39 PM
> To: ipxe-devel at ipxe.org
> Subject: [External] [ipxe-devel] FW: [PATCH] [intel] Add Intel I210 
> Gigabit Ethernet PCI ID
> 
> Hi,
> 
> We just upgraded to a new version of our SBC and it has 3 of the Intel i210 devices and they were not being recognized. The device number was different than the one mentioned in this patch. My i210 device is 0x8086,0x157b. I added this device id to the list in intel.c. 
> 
> PCI_ROM ( 0x8086, 0x157b, "i210-x", "I210 x",  0 ),
> 
>  ifconf now detects the devices, but reports a configuration error of 0x040ee119. 
> 
> Configuring (net0 xx:xx:xx:xx:xx:xx)............................ Error
> 0x040ee119
> 
> I was wondering if anyone has tried using an i210 with this device id and if so what changes may be necessary.  I pulled my snapshot via git at 11am this morning.
> 
> Thanks!
> 
> -Don
> 
> -----Original Message-----
> From: ipxe-devel-bounces at ipxe.org [mailto:ipxe-devel-bounces at ipxe.org]
> On Behalf Of Jens Rottmann
> Sent: Wednesday, February 06, 2013 8:25 AM
> To: ipxe-devel at ipxe.org
> Subject: [ipxe-devel] [PATCH] [intel] Add Intel I210 Gigabit Ethernet 
> PCI ID
> 
> [intel] Add Intel I210 Gigabit Ethernet PCI ID
> 
> Managed to net-boot without further changes, obviously chip is similar enough to its predecessors.
> 
> Signed-off-by: Jens Rottmann <JRottmann at LiPPERTembedded.de>
> ---
> 
> --- ipxe-b757df7/src/drivers/net/intel.c
> +++ ipxe/src/drivers/net/intel.c
> @@ -945,6 +945,7 @@
>  	PCI_ROM ( 0x8086, 0x1525, "82567v-4", "82567V-4", 0 ),
>  	PCI_ROM ( 0x8086, 0x1526, "82576-5", "82576", 0 ),
>  	PCI_ROM ( 0x8086, 0x1527, "82580-f2", "82580 Fiber", 0 ),
> +	PCI_ROM ( 0x8086, 0x1533, "i210", "I210", 0 ),
>  	PCI_ROM ( 0x8086, 0x294c, "82566dc-2", "82566DC-2", 0 ),
>  	PCI_ROM ( 0x8086, 0x2e6e, "cemedia", "CE Media Processor", 0 ),  }; 
> _
> 
> _______________________________________________
> ipxe-devel mailing list
> ipxe-devel at lists.ipxe.org
> https://lists.ipxe.org/mailman/listinfo.cgi/ipxe-devel
> _______________________________________________
> ipxe-devel mailing list
> ipxe-devel at lists.ipxe.org
> https://lists.ipxe.org/mailman/listinfo.cgi/ipxe-devel
> _______________________________________________
> ipxe-devel mailing list
> ipxe-devel at lists.ipxe.org
> https://lists.ipxe.org/mailman/listinfo.cgi/ipxe-devel
> 

_______________________________________________
ipxe-devel mailing list
ipxe-devel at lists.ipxe.org
https://lists.ipxe.org/mailman/listinfo.cgi/ipxe-devel
_______________________________________________
ipxe-devel mailing list
ipxe-devel at lists.ipxe.org
https://lists.ipxe.org/mailman/listinfo.cgi/ipxe-devel



More information about the ipxe-devel mailing list