1 2 3 Previous Next 109 Replies Latest reply on Aug 7, 2018 2:30 PM by Carlos_A

    eepromARMtool

    Green Belt

      Where do I find the eepromARMtool code?  I am working on an ARM based design that uses an i210.  I would like to program the NVM via this tool so that I can get the driver to load.

       

      Regards,

      Matt

        • 1. Re: eepromARMtool
          AdolfoS Brown Belt

          Hello pattiwack

           

          I sent you the eepromARMTool to your e-mail.

           

          You might want to check the following resources:

          I210 Datasheet

          I210 FAQ

          I210 detection issues under embedded linux  -- (i211)

           

          Hope this is useful to you.

           

          Best regards,

          Adolfo

          • 2. Re: eepromARMtool
            Green Belt

            Thanks Adolfo,

             

            We tried compiling and running the program but its failing with a bus error.  See below:

            [root@alarm eepromARMTool_0.6.7]# ./eepromARMtool

            Intel(R) Eeprom ARM Tool ARM OTP Programming Tool

            Provided under Unhandled fault: external abort on non-linefetch (0x1018) at 0x36e5f010

            Slave unsupported request

            the terms of a CNDA.  Do Not Distribute.

            Copyright(C) 2013 by Intel(R) Corporation

            NIC     BUS     DEV     FUN     Silicon Memory Type Present

            ===     ===     ===     ===     =====   ======================

            Bus error (core dumped)

            [root@alarm eepromARMTool_0.6.7]#

             

            Here's the lspci display of the i210's along with the PCIe switch they are attached to and the root complex (Xilinx Zynq SoC).

            [root@alarm eepromARMTool_0.6.7]# lspci

            00:00.0 PCI bridge: Xilinx Corporation Device 7012

            01:00.0 PCI bridge: PLX Technology, Inc. PEX 8605 PCI Express 4-port Gen2 Switch (rev ab)

            02:02.0 PCI bridge: PLX Technology, Inc. PEX 8605 PCI Express 4-port Gen2 Switch (rev ab)

            02:03.0 PCI bridge: PLX Technology, Inc. PEX 8605 PCI Express 4-port Gen2 Switch (rev ab)

            03:00.0 Ethernet controller: Intel Corporation Device 1531 (rev 03)

            04:00.0 Ethernet controller: Intel Corporation Device 1531 (rev 03)

            [root@alarm eepromARMTool_0.6.7]#

             

            Any ideas why the ARMtool is failing in this way?

             

            -Matt

            • 3. Re: eepromARMtool
              AdolfoS Brown Belt

              Hello pattiwack

               

              Sorry for the delay

               

              Our Intel engineers suggest two possibilities:

               

              1) A conflict because mixing endians, as suggested  in the user's guide from the eepromARMtool:

              Another thing to consider is that ARM systems can be Bi-Endian. Therefore, you should verify the Endianness being used, especially when programming values at the bit level.This document does not cover verifying Endianness. However, you should be aware that eepromARMtool reflects a Little Endian implementation to match the hardware datasheets.

               

              2) There is a possibility that for certain hardware the Operating System locks the page after it was allocated.

               

              Check the following thread that could be useful to you: I210 detection issues under embedded linux  -- (i211)

               

              Best Regards,

              Adolfo

              • 4. Re: eepromARMtool
                Green Belt

                So we preprogrammed one of the flash parts and then put it back on our board and then eepromARMtool would work.  Shouldn't the tool be able to identify and program a blank flash attached to a i210?

                 

                Regardless, we still can't bring up the ethernet interface.  We see the following error when we do:

                [root@alarm ~]# ifconfig enp3s0 up

                igb 0000:03:00.0: Error -22 getting interrupt

                SIOCSIFFLAGS: Invalid argument


                When we look at dmesg when linux is booting and loading the ethernet driver we see the following:

                [    0.842985] e1000e: Intel(R) PRO/1000 Network Driver - 2.3.2-k

                [    0.847423] e1000e: Copyright(c) 1999 - 2014 Intel Corporation.

                [    0.852178] igb: Intel(R) Gigabit Ethernet Network Driver - version 5.2.13-k

                [    0.857830] igb: Copyright (c) 2007-2014 Intel Corporation.

                [    0.862168] igb 0000:03:00.0: enabling device (0140 -> 0142)

                [    0.866457] igb 0000:03:00.0: enabling bus mastering

                [    0.899828] igb 0000:03:00.0: added PHC on eth0

                [    0.902993] igb 0000:03:00.0: Intel(R) Gigabit Ethernet Network Connection

                [    0.908527] igb 0000:03:00.0: eth0: (PCIe:unknown:unknown) 00:a0:c9:00:00:00

                [    0.914356] igb 0000:03:00.0: eth0: PBA No: 000300-000

                [    0.918110] igb 0000:03:00.0: Using legacy interrupts. 1 rx queue(s), 1 tx queue(s)

                [    0.924519] igb 0000:04:00.0: enabling device (0140 -> 0142)

                [    0.928804] igb 0000:04:00.0: enabling bus mastering

                [    0.961952] igb 0000:04:00.0: added PHC on eth1

                [    0.965143] igb 0000:04:00.0: Intel(R) Gigabit Ethernet Network Connection

                [    0.970711] igb 0000:04:00.0: eth1: (PCIe:unknown:unknown) 00:a0:c9:00:aa:aa

                [    0.976460] igb 0000:04:00.0: eth1: PBA No: 000300-000

                [    0.980225] igb 0000:04:00.0: Using legacy interrupts. 1 rx queue(s), 1 tx queue(s)

                .............

                [  301.965208] igb 0000:03:00.0: Error -22 getting interrupt

                [  309.444858] igb 0000:04:00.0: Error -22 getting interrupt

                [  327.846029] igb 0000:04:00.0: Error -22 getting interrupt

                [  328.093721] igb 0000:04:00.0: Error -22 getting interrupt


                Any idea what might cause the driver to complain with the interrupt error message?


                -Matt

                • 5. Re: eepromARMtool
                  AdolfoS Brown Belt

                  Hello Matt

                   

                  We are still investigating this issue, and will reply you back as soon as we have more meaningful informaton.

                  Thanks for your patience.

                   

                  Best Regards,

                  Adolfo

                  • 6. Re: eepromARMtool
                    AdolfoS Brown Belt

                    Hello Matt

                     

                    Sorry for the delay

                     

                    Could you please provide answers to these questions:

                     

                    Did you program the eeprom separately before using the eepromARMtool?

                     

                    Did you get the same errors before using the eepromARMtool?

                     

                    Best Regards,

                    Adolfo

                    • 7. Re: eepromARMtool
                      Green Belt

                      So when the flash parts were blank we could see the parts via lspci but their device id was 1531 (which I believe is correct for an unprogrammed i210).  However the eepromARMtool would not run.  We took the flash parts off the board and programmed them with a 3rd party programmed using one of intel's example binary images and then we saw the device id change to an i210 and the eepromARMtool then would work.  We would prefer to use the eepromARMtool to program blank parts so we wouldn't have to remove them (or preprogram them).

                       

                      Regardless of this, with the flash parts now programmed we can not bring up the ethernet interface.  The driver complains with "Error -22 getting interrupt".  As result we are currently blocked with getting this working.  Any ideas with might be causing this or how to further debug this problem?

                       

                      Regards,

                      Matt

                      • 8. Re: eepromARMtool
                        Green Belt

                        Adolfo,

                         

                        Here is some more info on our problem.

                         

                        Once the EEPROM is programmed and re-soldered to the board the igb driver loads and we are able to read and write to the EEPROM with eepromARMtool tool.  But the driver doesn’t configure correctly. The PCIe root complex supports MSI interrupts (not MSI-X), but the driver loaded using legacy interrupts:

                         

                        [    1.159680] pci 0000:00:00.0: enabling device (0144 -> 0147)

                        [    1.164007] pci 0000:01:00.0: enabling device (0140 -> 0143)

                        [    1.168325] pci 0000:02:02.0: enabling device (0140 -> 0143)

                        [    1.172663] igb 0000:03:00.0: enabling device (0140 -> 0142)

                        [    1.210435] igb 0000:03:00.0: added PHC on eth0

                        [    1.213606] igb 0000:03:00.0: Intel(R) Gigabit Ethernet Network Connection

                        [    1.219137] igb 0000:03:00.0: eth0: (PCIe:unknown:unknown) 00:a0:c9:00:00:00

                        [    1.224967] igb 0000:03:00.0: eth0: PBA No: 000300-000

                        [    1.228719] igb 0000:03:00.0: Using legacy interrupts. 1 rx queue(s), 1 tx queue(s)

                        [    1.235130] pci 0000:02:03.0: enabling device (0140 -> 0143)

                        [    1.239423] igb 0000:04:00.0: enabling device (0140 -> 0142)

                        [    1.277118] igb 0000:04:00.0: added PHC on eth1

                        [    1.280260] igb 0000:04:00.0: Intel(R) Gigabit Ethernet Network Connection

                        [    1.285838] igb 0000:04:00.0: eth1: (PCIe:unknown:unknown) 00:a0:c9:00:aa:aa

                        [    1.291626] igb 0000:04:00.0: eth1: PBA No: 000300-000

                        [    1.295394] igb 0000:04:00.0: Using legacy interrupts. 1 rx queue(s), 1 tx queue(s)

                         

                        Then when we try to connect the Ethernet port we get an error 22:

                         

                        [root@alarm ~]# ifconfig enp4s0 up

                        igb 0000:04:00.0: Error -22 getting interrupt

                        SIOCSIFFLAGS: Invalid argument

                         

                        Using modprobe with MSI option

                        [root@alarm ~]# modprobe igb IntMode=1

                        igb: unknown parameter 'IntMode' ignored

                        igb: Intel(R) Gigabit Ethernet Network Driver - version 5.2.13-k

                        igb: Copyright (c) 2007-2014 Intel Corporation.

                        igb 0000:03:00.0: added PHC on eth3

                        igb 0000:03:00.0: Intel(R) Gigabit Ethernet Network Connection

                        igb 0000:03:00.0 enp3s0: renamed from eth3

                        igb 0000:03:00.0: enp3s0: (PCIe:unknown:unknown) 00:a0:c9:00:00:00

                        igb 0000:03:00.0: enp3s0: PBA No: 000300-000

                        igb 0000:03:00.0: Using legacy interrupts. 1 rx queue(s), 1 tx queue(s)

                         

                        Didn’t load interrupt settings options (igb: unknown parameter 'IntMode' ignored). This seems odd, given the options is supported in the drivers README file.

                         

                        The board configuration is: Xilinx Zynq-7000 using the AXI-PCIe root complex (Gen 1 speed but Gen 2 support), connect to a PLX  PEX 8605 switch (upstream port) to two i210 MAC (downstream ports). We are running Linux 3.17.0-xilinx-00114-gda2d296  build with ArchLinux as RootFS.


                        Do you have updated documentation on command line options for loading the igb driver using modprobe?  Does your team have other suggestions for experiments we could try by loading the driver using modprobe?


                        -Matt

                        • 9. Re: eepromARMtool
                          Green Belt

                          One more piece of info.  This morning we reproduced the problem on a development platform that did not have the PLX switch present.  Just the i210 directly attached to the zynq part acting as the root complex.  Same result.

                          • 10. Re: eepromARMtool
                            AdolfoS Brown Belt

                            Hello pattiwack

                             

                            I will provide your information to our engineers I hope they will be able to give you more recommendations for your issue. Thanks for your patience.

                             

                            Best Regards,

                            Adolfo

                            • 11. Re: eepromARMtool
                              Green Belt

                              Here's the latest from the engineer working on debugging the driver...

                               

                              "I’m can build the IGB driver locally on the picoZed now (Linux alarm 3.17.0-xilinx #1 SMP PREEMPT Mon Feb 16 20:34:22 PST 2015 armv7l GNU/Linux). Below is the driver and loading information from several visions.  All are showing the same error -22 when connecting the network interface.  With debug level set to 16, both the 5.2.9.4 and 5.2.15 drivers are showing: Failed to initialize MSI interrupts.  Falling back to legacy interrupts.

                               

                              Please pass along to intel

                               

                              Van"

                               

                              Printout from the 5.2.9.4 driver:

                               

                              [root@alarm src]# modinfo igb

                              filename: /lib/modules/3.17.0-xilinx/kernel/drivers/net/igb/igb.ko

                              version:        5.2.9.4

                              license:        GPL

                              description:    Intel(R) Gigabit Ethernet Network Driver

                              author:         Intel Corporation, <e1000-devel@lists.sourceforge.net>

                              srcversion:     E377200391EBF74638FEDA2

                              alias: pci:v00008086d000010D6sv*sd*bc*sc*i*

                              alias: pci:v00008086d000010A9sv*sd*bc*sc*i*

                              alias: pci:v00008086d000010A7sv*sd*bc*sc*i*

                              alias: pci:v00008086d000010E8sv*sd*bc*sc*i*

                              alias: pci:v00008086d00001526sv*sd*bc*sc*i*

                              alias: pci:v00008086d0000150Dsv*sd*bc*sc*i*

                              alias: pci:v00008086d000010E7sv*sd*bc*sc*i*

                              alias: pci:v00008086d000010E6sv*sd*bc*sc*i*

                              alias: pci:v00008086d00001518sv*sd*bc*sc*i*

                              alias: pci:v00008086d0000150Asv*sd*bc*sc*i*

                              alias: pci:v00008086d000010C9sv*sd*bc*sc*i*

                              alias: pci:v00008086d00000440sv*sd*bc*sc*i*

                              alias: pci:v00008086d0000043Csv*sd*bc*sc*i*

                              alias: pci:v00008086d0000043Asv*sd*bc*sc*i*

                              alias: pci:v00008086d00000438sv*sd*bc*sc*i*

                              alias: pci:v00008086d00001516sv*sd*bc*sc*i*

                              alias: pci:v00008086d00001511sv*sd*bc*sc*i*

                              alias: pci:v00008086d00001510sv*sd*bc*sc*i*

                              alias: pci:v00008086d00001527sv*sd*bc*sc*i*

                              alias: pci:v00008086d0000150Fsv*sd*bc*sc*i*

                              alias: pci:v00008086d0000150Esv*sd*bc*sc*i*

                              alias: pci:v00008086d00001524sv*sd*bc*sc*i*

                              alias:          pci:v00008086d00001523sv*sd*bc*sc*i*

                              alias: pci:v00008086d00001522sv*sd*bc*sc*i*

                              alias: pci:v00008086d00001521sv*sd*bc*sc*i*

                              alias: pci:v00008086d00001539sv*sd*bc*sc*i*

                              alias: pci:v00008086d0000157Csv*sd*bc*sc*i*

                              alias: pci:v00008086d0000157Bsv*sd*bc*sc*i*

                              alias: pci:v00008086d00001538sv*sd*bc*sc*i*

                              alias: pci:v00008086d00001537sv*sd*bc*sc*i*

                              alias: pci:v00008086d00001536sv*sd*bc*sc*i*

                              alias: pci:v00008086d00001533sv*sd*bc*sc*i*

                              alias: pci:v00008086d00001F45sv*sd*bc*sc*i*

                              alias: pci:v00008086d00001F41sv*sd*bc*sc*i*

                              alias: pci:v00008086d00001F40sv*sd*bc*sc*i*

                              depends:

                              vermagic:       3.17.0-xilinx SMP preempt mod_unload modversions ARMv7 p2v8

                              parm: InterruptThrottleRate:Maximum interrupts per second, per vector, (max 100000), default 3=adaptive (array of int)

                              parm: IntMode:Change Interrupt Mode (0=Legacy, 1=MSI, 2=MSI-X), default 2 (array of int)

                              parm: Node:set the starting node to allocate memory on, default -1 (array of int)

                              parm: LLIPort:Low Latency Interrupt TCP Port (0-65535), default 0=off (array of int)

                              parm: LLIPush:Low Latency Interrupt on TCP Push flag (0,1), default 0=off (array of int)

                              parm: LLISize:Low Latency Interrupt on Packet Size (0-1500), default 0=off (array of int)

                              parm: RSS:Number of Receive-Side Scaling Descriptor Queues (0-8), default 1, 0=number of cpus (array of int)

                              parm: VMDQ:Number of Virtual Machine Device Queues: 0-1 = disable, 2-8 enable, default 0 (array of int)

                              parm: max_vfs:Number of Virtual Functions: 0 = disable, 1-7 enable, default 0 (array of int)

                              parm: MDD:Malicious Driver Detection (0/1), default 1 = enabled. Only available when max_vfs is greater than 0 (array of int)

                              parm: QueuePairs:Enable Tx/Rx queue pairs for interrupt handling (0,1), default 1=on (array of int)

                              parm: EEE:Enable/disable on parts that support the feature (array of int)

                              parm: DMAC:Disable or set latency for DMA Coalescing ((0=off, 1000-10000(msec), 250, 500 (usec)) (array of int)

                              parm: LRO:Large Receive Offload (0,1), default 0=off (array of int)

                              parm: debug:Debug level (0=none, ..., 16=all) (int)

                               

                              [root@alarm src]# modprob igb debug=16

                              -bash: modprob: command not found

                              [root@alarm src]# modprobe igb debug=16

                              Intel(R) Gigabit Ethernet Network Driver - version 5.2.9.4

                              Copyright (c) 2007-2014 Intel Corporation.

                              igb 0000:03:00.0: Failed to initialize MSI-X interrupts. Falling back to MSI interrupts.

                              igb 0000:03:00.0: Failed to initialize MSI interrupts. Falling back to legacy interrupts.

                              igb 0000:03:00.0: Intel(R) Gigabit Ethernet Network Connection

                              igb 0000:03:00.0 enp3s0: renamed from eth2

                              igb 0000:03:00.0: enp3s0: (PCIe:unknown:unknown)

                              igb 0000:03:00.0 enp3s0: MAC: 00:a0:c9:00:00:00

                              igb 0000:03:00.0: enp3s0: PBA No: 000300-000

                              igb 0000:03:00.0: LRO is disabled

                              igb 0000:03:00.0: Using legacy interrupts. 1 rx queue(s), 1 tx queue(s)

                               

                              [root@alarm src]# ifconfig -a

                              enp3s0: flags=4098<BROADCAST,MULTICAST>  mtu 1500

                                      ether 00:a0:c9:00:00:00  txqueuelen 1000  (Ethernet)

                                      RX packets 0 bytes 0 (0.0 B)

                                      RX errors 0 dropped 0  overruns 0  frame 0

                                      TX packets 0 bytes 0 (0.0 B)

                                      TX errors 0 dropped 0 overruns 0  carrier 0  collisions 0

                               

                              [root@alarm src]# ifconfig enp3s0 10.160.1.10/24 up

                              igb 0000:03:00.0: Error -22 getting interrupt

                              SIOCSIFFLAGS: Invalid argument

                              igb 0000:03:00.0: Error -22 getting interrupt

                              SIOCSIFFLAGS: Invalid argument

                               

                              Printout from the 5.2.13-k driver:

                               

                              [root@alarm linux-xlnx]# modinfo igb

                              filename: /lib/modules/3.17.0-xilinx/kernel/drivers/net/ethernet/intel/igb/igb.ko

                              version:        5.2.13-k

                              license:        GPL

                              description:    Intel(R) Gigabit Ethernet Network Driver

                              author:         Intel Corporation, <e1000-devel@lists.sourceforge.net>

                              srcversion:     C3003450663A2AF158B91CD

                              alias: pci:v00008086d000010D6sv*sd*bc*sc*i*

                              alias: pci:v00008086d000010A9sv*sd*bc*sc*i*

                              alias: pci:v00008086d000010A7sv*sd*bc*sc*i*

                              alias: pci:v00008086d000010E8sv*sd*bc*sc*i*

                              alias: pci:v00008086d00001526sv*sd*bc*sc*i*

                              alias: pci:v00008086d0000150Dsv*sd*bc*sc*i*

                              alias: pci:v00008086d000010E7sv*sd*bc*sc*i*

                              alias: pci:v00008086d000010E6sv*sd*bc*sc*i*

                              alias: pci:v00008086d00001518sv*sd*bc*sc*i*

                              alias: pci:v00008086d0000150Asv*sd*bc*sc*i*

                              alias: pci:v00008086d000010C9sv*sd*bc*sc*i*

                              alias: pci:v00008086d00000440sv*sd*bc*sc*i*

                              alias: pci:v00008086d0000043Csv*sd*bc*sc*i*

                              alias: pci:v00008086d0000043Asv*sd*bc*sc*i*

                              alias: pci:v00008086d00000438sv*sd*bc*sc*i*

                              alias: pci:v00008086d00001516sv*sd*bc*sc*i*

                              alias: pci:v00008086d00001511sv*sd*bc*sc*i*

                              alias: pci:v00008086d00001510sv*sd*bc*sc*i*

                              alias: pci:v00008086d00001527sv*sd*bc*sc*i*

                              alias: pci:v00008086d0000150Fsv*sd*bc*sc*i*

                              alias: pci:v00008086d0000150Esv*sd*bc*sc*i*

                              alias: pci:v00008086d00001524sv*sd*bc*sc*i*

                              alias: pci:v00008086d00001523sv*sd*bc*sc*i*

                              alias: pci:v00008086d00001522sv*sd*bc*sc*i*

                              alias: pci:v00008086d00001521sv*sd*bc*sc*i*

                              alias: pci:v00008086d0000157Csv*sd*bc*sc*i*

                              alias: pci:v00008086d0000157Bsv*sd*bc*sc*i*

                              alias: pci:v00008086d00001538sv*sd*bc*sc*i*

                              alias: pci:v00008086d00001537sv*sd*bc*sc*i*

                              alias: pci:v00008086d00001536sv*sd*bc*sc*i*

                              alias: pci:v00008086d00001533sv*sd*bc*sc*i*

                              alias: pci:v00008086d00001539sv*sd*bc*sc*i*

                              alias: pci:v00008086d00001F45sv*sd*bc*sc*i*

                              alias: pci:v00008086d00001F41sv*sd*bc*sc*i*

                              alias: pci:v00008086d00001F40sv*sd*bc*sc*i*

                              depends:

                              intree:         Y

                              vermagic:       3.17.0-xilinx SMP preempt mod_unload modversions ARMv7 p2v8

                              parm: debug:Debug level (0=none,...,16=all) (int)

                              [root@alarm linux-xlnx]# modprobe igb debug=16

                              igb: Intel(R) Gigabit Ethernet Network Driver - version 5.2.13-k

                              igb: Copyright (c) 2007-2014 Intel Corporation.

                              igb 0000:03:00.0: added PHC on eth2

                              igb 0000:03:00.0: Intel(R) Gigabit Ethernet Network Connection

                              igb 0000:03:00.0 enp3s0: renamed from eth2

                              igb 0000:03:00.0: enp3s0: (PCIe:unknown:unknown) 00:a0:c9:00:00:00

                              igb 0000:03:00.0: enp3s0: PBA No: 000300-000

                              igb 0000:03:00.0: Using legacy interrupts. 1 rx queue(s), 1 tx queue(s)

                               

                              [root@alarm linux-xlnx]# ifconfig -a

                              enp3s0: flags=4098<BROADCAST,MULTICAST>  mtu 1500

                                      ether 00:a0:c9:00:00:00  txqueuelen 1000  (Ethernet)

                                      RX packets 0 bytes 0 (0.0 B)

                                      RX errors 0 dropped 0  overruns 0  frame 0

                                      TX packets 0 bytes 0 (0.0 B)

                                      TX errors 0 dropped 0 overruns 0  carrier 0  collisions 0

                                      device memory 0x60000000-6007ffff

                               

                              [root@alarm linux-xlnx]# ifconfig enp3s0 10.160.1.10/24 up

                              igb 0000:03:00.0: Error -22 getting interrupt

                              SIOCSIFFLAGS: Invalid argument

                              igb 0000:03:00.0: Error -22 getting interrupt

                              SIOCSIFFLAGS: Invalid argument

                               

                              Printout from the 5.2.15 driver:

                               

                              [root@alarm src]# modinfo igb

                              filename:       /lib/modules/3.17.0-xilinx/kernel/drivers/net/igb/igb.ko

                              version:        5.2.15

                              license:        GPL

                              description:    Intel(R) Gigabit Ethernet Network Driver

                              author:         Intel Corporation, <e1000-devel@lists.sourceforge.net>

                              srcversion:     ED3CC1731051E90002E99E7

                              alias: pci:v00008086d000010D6sv*sd*bc*sc*i*

                              alias: pci:v00008086d000010A9sv*sd*bc*sc*i*

                              alias: pci:v00008086d000010A7sv*sd*bc*sc*i*

                              alias: pci:v00008086d000010E8sv*sd*bc*sc*i*

                              alias: pci:v00008086d00001526sv*sd*bc*sc*i*

                              alias: pci:v00008086d0000150Dsv*sd*bc*sc*i*

                              alias: pci:v00008086d000010E7sv*sd*bc*sc*i*

                              alias: pci:v00008086d000010E6sv*sd*bc*sc*i*

                              alias: pci:v00008086d00001518sv*sd*bc*sc*i*

                              alias: pci:v00008086d0000150Asv*sd*bc*sc*i*

                              alias: pci:v00008086d000010C9sv*sd*bc*sc*i*

                              alias: pci:v00008086d00000440sv*sd*bc*sc*i*

                              alias: pci:v00008086d0000043Csv*sd*bc*sc*i*

                              alias: pci:v00008086d0000043Asv*sd*bc*sc*i*

                              alias: pci:v00008086d00000438sv*sd*bc*sc*i*

                              alias: pci:v00008086d00001516sv*sd*bc*sc*i*

                              alias: pci:v00008086d00001511sv*sd*bc*sc*i*

                              alias: pci:v00008086d00001510sv*sd*bc*sc*i*

                              alias: pci:v00008086d00001527sv*sd*bc*sc*i*

                              alias: pci:v00008086d0000150Fsv*sd*bc*sc*i*

                              alias: pci:v00008086d0000150Esv*sd*bc*sc*i*

                              alias: pci:v00008086d00001524sv*sd*bc*sc*i*

                              alias:          pci:v00008086d00001523sv*sd*bc*sc*i*

                              alias: pci:v00008086d00001522sv*sd*bc*sc*i*

                              alias: pci:v00008086d00001521sv*sd*bc*sc*i*

                              alias: pci:v00008086d00001539sv*sd*bc*sc*i*

                              alias: pci:v00008086d0000157Csv*sd*bc*sc*i*

                              alias: pci:v00008086d0000157Bsv*sd*bc*sc*i*

                              alias: pci:v00008086d00001538sv*sd*bc*sc*i*

                              alias: pci:v00008086d00001537sv*sd*bc*sc*i*

                              alias: pci:v00008086d00001536sv*sd*bc*sc*i*

                              alias: pci:v00008086d00001533sv*sd*bc*sc*i*

                              alias: pci:v00008086d00001F45sv*sd*bc*sc*i*

                              alias: pci:v00008086d00001F41sv*sd*bc*sc*i*

                              alias: pci:v00008086d00001F40sv*sd*bc*sc*i*

                              depends:

                              vermagic:       3.17.0-xilinx SMP preempt mod_unload modversions ARMv7 p2v8

                              parm: InterruptThrottleRate:Maximum interrupts per second, per vector, (max 100000), default 3=adaptive (array of int)

                              parm: IntMode:Change Interrupt Mode (0=Legacy, 1=MSI, 2=MSI-X), default 2 (array of int)

                              parm: Node:set the starting node to allocate memory on, default -1 (array of int)

                              parm: LLIPort:Low Latency Interrupt TCP Port (0-65535), default 0=off (array of int)

                              parm: LLIPush:Low Latency Interrupt on TCP Push flag (0,1), default 0=off (array of int)

                              parm: LLISize:Low Latency Interrupt on Packet Size (0-1500), default 0=off (array of int)

                              parm: RSS:Number of Receive-Side Scaling Descriptor Queues (0-8), default 1, 0=number of cpus (array of int)

                              parm: VMDQ:Number of Virtual Machine Device Queues: 0-1 = disable, 2-8 enable, default 0 (array of int)

                              parm: max_vfs:Number of Virtual Functions: 0 = disable, 1-7 enable, default 0 (array of int)

                              parm: MDD:Malicious Driver Detection (0/1), default 1 = enabled. Only available when max_vfs is greater than 0 (array of int)

                              parm: QueuePairs:Enable Tx/Rx queue pairs for interrupt handling (0,1), default 1=on (array of int)

                              parm: EEE:Enable/disable on parts that support the feature (array of int)

                              parm: DMAC:Disable or set latency for DMA Coalescing ((0=off, 1000-10000(msec), 250, 500 (usec)) (array of int)

                              parm: LRO:Large Receive Offload (0,1), default 0=off (array of int)

                              parm: debug:Debug level (0=none, ..., 16=all) (int)

                               

                              [root@alarm src]# modprobe igb debug=16

                              Intel(R) Gigabit Ethernet Network Driver - version 5.2.15

                              Copyright (c) 2007-2014 Intel Corporation.

                              igb 0000:03:00.0: Failed to initialize MSI-X interrupts. Falling back to MSI interrupts.

                              igb 0000:03:00.0: Failed to initialize MSI interrupts. Falling back to legacy interrupts.

                              igb 0000:03:00.0 enp3s0: renamed from eth2

                              igb 0000:03:00.0: added PHC on enp3s0

                              igb 0000:03:00.0: Intel(R) Gigabit Ethernet Network Connection

                              igb 0000:03:00.0: enp3s0: (PCIe:unknown:unknown)

                              [root@alarm src]# igb 0000:03:00.0 enp3s0: MAC: 00:a0:c9:00:00:00

                              igb 0000:03:00.0: enp3s0: PBA No: 000300-000

                              igb 0000:03:00.0: LRO is disabled

                              igb 0000:03:00.0: Using legacy interrupts. 1 rx queue(s), 1 tx queue(s)

                               

                              [root@alarm src]# ifconfig -a

                              enp3s0: flags=4098<BROADCAST,MULTICAST>  mtu 1500

                                      ether 00:a0:c9:00:00:00  txqueuelen 1000  (Ethernet)

                                      RX packets 0 bytes 0 (0.0 B)

                                      RX errors 0 dropped 0  overruns 0  frame 0

                                      TX packets 0 bytes 0 (0.0 B)

                                      TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

                               

                              [root@alarm src]# ifconfig enp3s0 10.160.2.10/24 up

                              igb 0000:03:00.0: Error -22 getting interrupt

                              SIOCSIFFLAGS: Invalid argument

                              igb 0000:03:00.0: Error -22 getting interrupt

                              SIOCSIFFLAGS: Invalid argument

                               

                              Trying to force MSI mode:

                               

                              [root@alarm src]# modprobe igb debug=16 IntMode=1

                              Intel(R) Gigabit Ethernet Network Driver - version 5.2.15

                              Copyright (c) 2007-2014 Intel Corporation.

                              igb: 0000:03:00.0: igb_validate_option: Interrupt Mode set to 1

                              igb: 0000:03:00.0: igb_check_options: RSS is not supported when in MSI/Legacy Interrupt mode, using default of 1

                              igb 0000:03:00.0: Failed to initialize MSI interrupts. Falling back to legacy interrupts.

                              igb 0000:03:00.0: added PHC on eth2

                              igb 0000:03:00.0: Intel(R) Gigabit Ethernet Network Connection

                              igb 0000:03:00.0 enp3s0: renamed from eth2

                              igb 0000:03:00.0: enp3s0: (PCIe:unknown:unknown)

                              igb 0000:03:00.0 enp3s0: MAC: 00:a0:c9:00:00:00

                              igb 0000:03:00.0: enp3s0: PBA No: 000300-000

                              igb 0000:03:00.0: LRO is disabled

                              igb 0000:03:00.0: Using legacy interrupts. 1 rx queue(s), 1 tx queue(s)

                              • 12. Re: eepromARMtool
                                AdolfoS Brown Belt

                                Hello Matt

                                 

                                I will pass this information to our engineers, I hope to give you more meaningful information as soon as possible.

                                 

                                Best Regards,

                                Adolfo

                                • 13. Re: eepromARMtool
                                  AdolfoS Brown Belt

                                  Hello pattiwack

                                   

                                  Could you please tell me the name of the image that you are using to program this I210?

                                  Also if you are using I210-IS/AS or I210-IT/AT?

                                   

                                  Best Regards,

                                  Adolfo

                                  • 14. Re: eepromARMtool
                                    Green Belt

                                    Hi Adolfo,

                                     

                                    The image we used is Dev_Start_I210_Copper_NOMNG_8Mb_A2_3.25_0.03.bin

                                     

                                    Once that was preprogrammed in the flash then the eepromARMtool would work so we could program the mac address.  No other mod's were done.

                                     

                                    I210IT is the part  we are using.

                                     

                                    -Matt

                                    1 2 3 Previous Next