22 Replies Latest reply on Jan 22, 2018 7:42 AM by Carlos_A

    I210 - unused MDI pins when configuring 100BASE-T

    Bert_L Green Belt

      I am using the I210IT in my design as a fixed 100BASE-T controller. As there are only two transformers used which are connected to MDI-0 and MDI-1, the MDI-2 and MDI-3 pins are not in use. Can I leave these unused pins open or do I have to terminate them?

        • Re: I210 - unused MDI pins when configuring 100BASE-T
          Carlos_A Brown Belt

          Hello, Bert_L:

           

          Thank you for contacting Intel Embedded Community.

           

          It is unclear for us if your design is in 1000BASE-T, 100BASE-TX, or 10BASE-T mode. However, the information that may help you is stated in the third row of Table 2-7, on page 27 of the Intel(R) Ethernet Controller I210 Datasheet document # 333016.

           

          We hope that this information may help you.

           

          Best regards,

          Carlos_A.

            • Re: I210 - unused MDI pins when configuring 100BASE-T
              Bert_L Green Belt

              Hello Carlos,

               

              Thanks for your suggestion. The design uses the 100BASE-TX mode. When following the related content in table 2-7 of the datasheet, the unused MDI pins are stated as 'unused'. Furthermore, the note in paragraph 2.3.6: 'The I210 has built in termination resistors. As a result, external termination resistors should not be used.' give me the idea that these pins can be left open. However, in paragraph 12.5.5, figure 12-12 the unused MDI pins are pulled to a supply (being +1.5V in the figure, +1.9V in the text) through 50ohm resistors so I am in doubt.

              Currently in the design the pins are open. It functions as expected but we see occasionally (e.g. once a day) that the link is lost for a short time. I was wondering if this link loss has anything to do with the unused/open MDI pins?

               

              Thanks in advance,

              Bert

                • Re: I210 - unused MDI pins when configuring 100BASE-T
                  Carlos_A Brown Belt

                  Hello, Bert_L:

                   

                  Thanks for your reply.

                   

                  They can be left as NC as long as there are no traces coming off of the pad.

                   

                  We hope that this information may help you.

                   

                  Best regards,

                  Carlos_A.

                    • Re: I210 - unused MDI pins when configuring 100BASE-T
                      Bert_L Green Belt

                      Hello Carlos,

                       

                      Thanks for your information. Unfortunately there are traces present: approx. 0.5 inch of (well-shielded) trace and a 31mil testspot for testability reason. Do you think this can cause the problem that we are chasing after (sporadic link loss?).

                       

                      Best regards,

                      Bert

                        • Re: I210 - unused MDI pins when configuring 100BASE-T
                          Carlos_A Brown Belt

                          Hello, Bert_L:

                           

                          Thanks for your update.

                           

                          In order to find a solution to this inconvenience, could you please add a 10k pull down to each of those lines and let us know the outcomes of these changes?

                           

                          Waiting for your reply.

                           

                          Best regards,

                          Carlos_A.

                            • Re: I210 - unused MDI pins when configuring 100BASE-T
                              Bert_L Green Belt

                              Hello Carlos,

                               

                              I have added 10kohm pulldown resistors on the testspots which are connected to the MDI_2_N, MDI_2_P, MDI_3_N and MDI_3_P pins. I retested the setup but unfortunately the link loss still occurs.

                              As the link loss problem only appears on the 100BASE-TX ports and not on the other 1000BASE-T ports I am doubting if the controllers are configured correctly. Which configuration setting is needed for setting the I210 to fixed 100BASE-TX?

                               

                              Best regards,

                              Bert

                                • Re: I210 - unused MDI pins when configuring 100BASE-T
                                  zygmuntturkiewicz Green Belt

                                  Hello Bert,

                                                     please apply the rules as described in i210 data sheet, chapter: 12.5.5 Designing the I210 as a 10/100 Mb/s Only Device.

                                  Install the 50 ohm resistors to 1.5V rail as discussed in the data sheet if the unused MDI lines do not go to magnetics.

                                   

                                  It is also very important to disable the 1G operation as stated in the data sheet in chapter 12.5.5:

                                   

                                  1. Set bit 4 of the Software Defined Pins Control (LAN Base Address + Word 0x20) to 0b. Setting bit 4
                                  to 1b disables 1000 Mb/s (GbE) operation in all power modes.

                                   

                                  If you install the resistors and disable 1G mode, then all shall work well.

                                   

                                  Thanks,

                                  Zygmunt

                                    • Re: I210 - unused MDI pins when configuring 100BASE-T
                                      Bert_L Green Belt

                                      Hello Zygmunt,

                                       

                                      Thanks for your advice. We have installed the 50 ohm resistors as shown in figure 12-12 of the data sheet because our circuit cannot be connected to magnetics easily.

                                      Unfortunately it is not clear for us how to set bit 4 of this register in our system persistently. We have tried to change the register content in EEUPDATE as well as in LANCONF but we could not see changed results in supported link modes and advertised link modes when listing the modified NIC through (Linux) ethtool. Maybe this is due to our unfamiliarity with these tools. Or it is needed to patch the .bin file and reprogram the flash?

                                       

                                      I hope you can give us an advice how to set the bit and how to check if this is succeeded.

                                       

                                      Thanks in advance,

                                      Bert

                                        • Re: I210 - unused MDI pins when configuring 100BASE-T
                                          zygmuntturkiewicz Green Belt

                                          Hi Bert,

                                                          were you able to change the bit 4 in Word 0x20using Lanconf?

                                          After you set the bit, save the changed file and then cycle the power to your system, so the i210 bbots up with the new value of bit 4.

                                           

                                           

                                          Cycling power is a key here after correct modification of Word 0x20.

                                           

                                          Please tell me what image you are using in this design, just post the name of the image (as it shows in our dev starter package) and we may  be able to modify it for you for 10/100mbps only application.

                                           

                                          Thanks,

                                          Zygmunt

                                            • Re: I210 - unused MDI pins when configuring 100BASE-T
                                              Bert_L Green Belt

                                              Hello Zygmunt,

                                               

                                               

                                              Thanks for your explanation. Yes we were able and did a power cycle but we were not sure whether or not the 10/100 limitation was active.

                                              We are using the Dev_Start_I210_Copper_NOMNG_8Mb_A2_3.25_0.03.bin image in our design. It would be great if you can do the modification.

                                               

                                              Thanks in advance,

                                              Bert

                                               

                                               

                                                • Re: I210 - unused MDI pins when configuring 100BASE-T
                                                  Bert_L Green Belt

                                                  Hello Zygmunt,

                                                   

                                                  In relation to the previous post I have an additional question: can you please confirm what the advertising of the port will be after setting it to 100Mbit? Until now we keep seeing 1Gbit but we expect 100Mbit.

                                                   

                                                  Best regards,

                                                  Bert

                                                    • Re: I210 - unused MDI pins when configuring 100BASE-T
                                                      zygmuntturkiewicz Green Belt

                                                      Hello Bert,

                                                                          I will try to get you the modified image file.

                                                       

                                                      On the advertising question, would you please attach a screen shot showing the advertising of 1G?  I do not know what you actually use to see the advertising?

                                                       

                                                      Thanks,

                                                      Zygmunt

                                                        • Re: I210 - unused MDI pins when configuring 100BASE-T
                                                          Bert_L Green Belt

                                                          Hello Zygmunt,

                                                           

                                                          We are using the ethtool for showing the supported and the advertised speed. See attached screenshot of the result (after having modified the bit and having cycled the power):

                                                          WP_20171115_001.jpg

                                                           

                                                          Best regards,

                                                          Bert

                                                            • Re: I210 - unused MDI pins when configuring 100BASE-T
                                                              Bert_L Green Belt

                                                              Hello Zygmunt,

                                                               

                                                              In meanwhile we have results from the endurance test executed on three instruments which were modified (50 ohm pullups installed and changed bit 4 of word 0x20 through EEUPDATE). Two out of three instruments have been running for one week without link loss but unfortunately the third unit still shows link losses occasionally.

                                                              As we are not sure if the modification of bit 4 in this particular case has been carried out correctly we would like to have a possibility to read back the actual content of the register in which the bit 4 is changed. We thought that the listing from ETHTOOL could ensure us that we had changed the bit correctly but as you can see from previous post this seems not to be the the case.

                                                              Did you have the chance to check if ETHTOOL can show the modification in terms of supported / advertised speed?

                                                              Or maybe there is another way to check if the modification has been carried out correctly e.g. direct readout from the register? We really would like to see what went wrong in the third instrument of the endurance test.

                                                               

                                                              Thanks in advance,

                                                              Bert

                                                                • Re: I210 - unused MDI pins when configuring 100BASE-T
                                                                  zygmuntturkiewicz Green Belt

                                                                  Hello Bert,

                                                                                       From what I read, bit 4 in wod0x20 is set as we require.

                                                                   

                                                                  The issue must be with the board #3.  Probably some hardware related issue or even link partner.

                                                                  Please describe how the test is run?

                                                                   

                                                                  Can you read PHY registers off the i210?  Curious if CRC errors are being reported?

                                                                   

                                                                  If the links is lost, do you have to reset the i210? Or the link recovers on its own?

                                                                   

                                                                  And what driver do you use with i210?

                                                                   

                                                                  Thanks,

                                                                  Zygmunt

                                                                    • Re: I210 - unused MDI pins when configuring 100BASE-T
                                                                      Bert_L Green Belt

                                                                      Hello Zygmunt,

                                                                       

                                                                      In meanwhile we have evaluated the results of the endurance tests on all three instruments. It appeared that all of them showed the link down issue so we don't believe that it is related to one instrument.

                                                                       

                                                                      To come back to your questions from the previous post:

                                                                      [1] describe how the test is run
                                                                      In the endurance test all functions of the instrument are tested simultaneously on their specific performance. For the ethernet interfaces external loopback cables are connected between the i210 controllers. Linking through the external loopback cables is arranged in the iptables rules.
                                                                      In the specific test step for ethernet the iperf tool is started at the server and at the client side for 60 seconds and the throughput result is monitored.

                                                                       

                                                                      [2] CRC errors
                                                                      When we checked in former testing we didn’t saw errors (CRC or other) on the ports.
                                                                      (used command ‘ethtool –S eth…’ or ‘netstat –I‘) 

                                                                       

                                                                      [3] i210 reset
                                                                      When the link is lost the i210 is reset by the driver as reported from the kernel:
                                                                      2017-10-27T09:50:00.987+00:00 snow kernel:: igb: eth9 NIC Link is Down
                                                                      2017-10-27T09:50:00.987+00:00 snow kernel:: igb: eth11 NIC Link is Down
                                                                      2017-10-27T09:50:00.987+00:00 snow kernel:: igb 0000:0b:00.0 eth9: Reset adapter
                                                                      2017-10-27T09:50:03.059+00:00 snow kernel:: igb: eth9 NIC Link is Up 100 Mbps Full Duplex, Flow Control: RX/TX
                                                                      2017-10-27T09:50:03.059+00:00 snow kernel:: igb: eth11 NIC Link is Up 100 Mbps Full Duplex, Flow Control: RX/TX

                                                                       

                                                                      [4] driver
                                                                      We use the igb driver version 4.1.2-k but we saw the same behavior with the latest driver in former tests.

                                                                       

                                                                      I hope that the answers give more information on the possible cause of the issue.

                                                                       

                                                                      Furthermore we have some additional questions:
                                                                      -Can you provide dedicated firmware for Fast-Ethernet use of the device.
                                                                      -Can we double check that the setting of word 0x20 is used in the device and how?
                                                                      -Is it possible to make a telephone conference on this issue?

                                                                       

                                                                       

                                                                      Best regards,
                                                                      Bert

                                                                        • Re: I210 - unused MDI pins when configuring 100BASE-T
                                                                          zygmuntturkiewicz Green Belt

                                                                          Hi Bert,

                                                                                          I would like to open IPS ticket on this issue.

                                                                           

                                                                          The driver may be contributing to this issue, because it looks to me as an old driver.

                                                                          Please go to sourceforge and use the latest driver for i210:

                                                                           

                                                                          Intel Ethernet Drivers and Utilities - Browse Files at SourceForge.net

                                                                           

                                                                          Please confirm what kernel version you are running?

                                                                           

                                                                           

                                                                           

                                                                           

                                                                           

                                                                           

                                                                           

                                                                          it should work similarly,
                                                                          but the igb driver is quite different between the kernel and standalone

                                                                           

                                                                           

                                                                          Was the board design reviewed by Intel?

                                                                           

                                                                          I am also not sure about the test setup.  Try to run two i210s as link partners and see if the link issue appears.

                                                                           

                                                                          Thanks,

                                                                          Zygmunt

                                                                            • Re: I210 - unused MDI pins when configuring 100BASE-T
                                                                              Bert_L Green Belt

                                                                              Hello Zygmunt,

                                                                               

                                                                              To come back to your questions:

                                                                              -The issuing of the IPS ticket is ongoing, I have asked Intel Customer Support for assistance with the IPS access.

                                                                              -The double-checking of the driver is also ongoing

                                                                              -We are using Red Hat kernel version #1 SMP Mon Jun 27 08:23:03 CEST 2016

                                                                              -The board design was not reviewed by Intel

                                                                               

                                                                               

                                                                              Best regards,

                                                                              Bert

                                                                              • Re: I210 - unused MDI pins when configuring 100BASE-T
                                                                                Bert_L Green Belt

                                                                                Hello Zygmunt,

                                                                                 

                                                                                 

                                                                                In addition to the answers posted on dec. 4th I have the following information:

                                                                                 

                                                                                [1] we have tested with the newest driver but unfortunately we see the same problems. The 50 ohm pullups were installed and the bit 4 of word 0x20 was modified.

                                                                                There were 5 fails when running for 1 day. I have added the kernel loggings and the statistics below. We don't know if the (red-marked) error values reported are the cause for the link down or an effect after link down event.

                                                                                 

                                                                                [2] the link down event is also seen on the other gigabit interfaces when they are operating in fast Ethernet mode. These interfaces are similar to the 100BASE-TX interfaces but have all MDI pins connected to the magnetics.

                                                                                 

                                                                                 

                                                                                Best regards,

                                                                                Bert

                                                                                 

                                                                                P.S. Up to now the IPS ticket is not issued yet because I do not have access to the IPS tool. I have asked SMG Customer Support for help.

                                                                                 

                                                                                 

                                                                                [root@snow ~]# cat /var/log/messages | grep igb
                                                                                2017-12-05T12:45:18.262+00:00 snow kernel:: igb 0000:0b:00.0 eth9: igb: eth9 NIC Link is Down
                                                                                2017-12-05T12:45:18.262+00:00 snow kernel:: igb 0000:0d:00.0 eth11: igb: eth11 NIC Link is Down
                                                                                2017-12-05T12:45:20.510+00:00 snow kernel:: igb 0000:0d:00.0 eth11: igb: eth11 NIC Link is Up 100 Mbps Full Duplex, Flow Control: RX/TX
                                                                                2017-12-05T12:45:20.510+00:00 snow kernel:: igb 0000:0b:00.0 eth9: igb: eth9 NIC Link is Up 100 Mbps Full Duplex, Flow Control: RX/TX
                                                                                2017-12-05T13:24:12.674+00:00 snow kernel:: igb 0000:0d:00.0 eth11: igb: eth11 NIC Link is Down
                                                                                2017-12-05T13:24:12.674+00:00 snow kernel:: igb 0000:0b:00.0 eth9: igb: eth9 NIC Link is Down
                                                                                2017-12-05T13:24:14.834+00:00 snow kernel:: igb 0000:0b:00.0 eth9: igb: eth9 NIC Link is Up 100 Mbps Full Duplex, Flow Control: RX/TX
                                                                                2017-12-05T13:24:14.834+00:00 snow kernel:: igb 0000:0d:00.0 eth11: igb: eth11 NIC Link is Up 100 Mbps Full Duplex, Flow Control: RX/TX
                                                                                2017-12-05T13:26:37.090+00:00 snow kernel:: igb 0000:0b:00.0 eth9: igb: eth9 NIC Link is Down
                                                                                2017-12-05T13:26:37.090+00:00 snow kernel:: igb 0000:0d:00.0 eth11: igb: eth11 NIC Link is Down
                                                                                2017-12-05T13:26:39.650+00:00 snow kernel:: igb 0000:0d:00.0 eth11: igb: eth11 NIC Link is Up 100 Mbps Full Duplex, Flow Control: RX/TX
                                                                                2017-12-05T13:26:39.650+00:00 snow kernel:: igb 0000:0b:00.0 eth9: igb: eth9 NIC Link is Up 100 Mbps Full Duplex, Flow Control: RX/TX

                                                                                2017-12-05T02:08:59.102+00:00 snow kernel:: igb 0000:0b:00.0 eth9: igb: eth9 NIC Link is Down
                                                                                2017-12-05T02:08:59.102+00:00 snow kernel:: igb 0000:0d:00.0 eth11: igb: eth11 NIC Link is Down
                                                                                2017-12-05T02:09:01.222+00:00 snow kernel:: igb 0000:0d:00.0 eth11: igb: eth11 NIC Link is Up 100 Mbps Full Duplex, Flow Control: RX/TX
                                                                                2017-12-05T02:09:01.354+00:00 snow kernel:: igb 0000:0b:00.0 eth9: igb: eth9 NIC Link is Up 100 Mbps Full Duplex, Flow Control: RX/TX
                                                                                2017-12-05T02:39:00.382+00:00 snow kernel:: igb 0000:0b:00.0 eth9: igb: eth9 NIC Link is Down
                                                                                2017-12-05T02:39:00.382+00:00 snow kernel:: igb 0000:0d:00.0 eth11: igb: eth11 NIC Link is Down
                                                                                2017-12-05T02:39:02.538+00:00 snow kernel:: igb 0000:0d:00.0 eth11: igb: eth11 NIC Link is Up 100 Mbps Full Duplex, Flow Control: RX/TX
                                                                                2017-12-05T02:39:02.538+00:00 snow kernel:: igb 0000:0b:00.0 eth9: igb: eth9 NIC Link is Up 100 Mbps Full Duplex, Flow Control: RX/TX

                                                                                [root@snow ~]# ethtool -S eth9

                                                                                NIC statistics:
                                                                                     rx_packets: 214061405
                                                                                     tx_packets: 565312430
                                                                                     rx_bytes: 14987005182
                                                                                     tx_bytes: 858009858836
                                                                                     rx_broadcast: 0
                                                                                     tx_broadcast: 0
                                                                                     rx_multicast: 0
                                                                                     tx_multicast: 0
                                                                                     multicast: 0
                                                                                     collisions: 0
                                                                                     rx_crc_errors: 0
                                                                                     rx_no_buffer_count: 0
                                                                                     rx_missed_errors: 0
                                                                                     tx_aborted_errors: 0
                                                                                     tx_carrier_errors: 0
                                                                                     tx_window_errors: 0
                                                                                     tx_abort_late_coll: 0
                                                                                     tx_deferred_ok: 0
                                                                                     tx_single_coll_ok: 0
                                                                                     tx_multi_coll_ok: 0
                                                                                     tx_timeout_count: 5
                                                                                     rx_long_length_errors: 0
                                                                                     rx_short_length_errors: 0
                                                                                     rx_align_errors: 0
                                                                                     tx_tcp_seg_good: 12642934
                                                                                     tx_tcp_seg_failed: 0
                                                                                     rx_flow_control_xon: 0
                                                                                     rx_flow_control_xoff: 0
                                                                                     tx_flow_control_xon: 0
                                                                                     tx_flow_control_xoff: 0
                                                                                     rx_long_byte_count: 14987005182
                                                                                     tx_dma_out_of_sync: 0
                                                                                     lro_aggregated: 0
                                                                                     lro_flushed: 0
                                                                                     tx_smbus: 0
                                                                                     rx_smbus: 0
                                                                                     dropped_smbus: 0
                                                                                     os2bmc_rx_by_bmc: 0
                                                                                     os2bmc_tx_by_bmc: 0
                                                                                     os2bmc_tx_by_host: 0
                                                                                     os2bmc_rx_by_host: 0
                                                                                     tx_hwtstamp_timeouts: 0
                                                                                     rx_hwtstamp_cleared: 0
                                                                                     rx_errors: 0
                                                                                     tx_errors: 0
                                                                                     tx_dropped: 0
                                                                                     rx_length_errors: 0
                                                                                     rx_over_errors: 0
                                                                                     rx_frame_errors: 0
                                                                                     rx_fifo_errors: 0
                                                                                     tx_fifo_errors: 0
                                                                                     tx_heartbeat_errors: 0
                                                                                     tx_queue_0_packets: 565357252
                                                                                     tx_queue_0_bytes: 855816462544
                                                                                     tx_queue_0_restart: 0
                                                                                     rx_queue_0_packets: 214078298
                                                                                     rx_queue_0_bytes: 14131874660
                                                                                     rx_queue_0_drops: 0
                                                                                     rx_queue_0_csum_err: 0
                                                                                     rx_queue_0_alloc_failed: 0

                                                                                [root@snow ~]# ethtool -S eth11
                                                                                NIC statistics:
                                                                                     rx_packets: 566220467
                                                                                     tx_packets: 214405358
                                                                                     rx_bytes: 859388034040
                                                                                     tx_bytes: 15011086308
                                                                                     rx_broadcast: 0
                                                                                     tx_broadcast: 0
                                                                                     rx_multicast: 0
                                                                                     tx_multicast: 0
                                                                                     multicast: 0
                                                                                     collisions: 0
                                                                                     rx_crc_errors: 2
                                                                                     rx_no_buffer_count: 0
                                                                                     rx_missed_errors: 0
                                                                                     tx_aborted_errors: 0
                                                                                     tx_carrier_errors: 0
                                                                                     tx_window_errors: 0
                                                                                     tx_abort_late_coll: 0
                                                                                     tx_deferred_ok: 0
                                                                                     tx_single_coll_ok: 0
                                                                                     tx_multi_coll_ok: 0
                                                                                     tx_timeout_count: 0
                                                                                     rx_long_length_errors: 0
                                                                                     rx_short_length_errors: 0
                                                                                     rx_align_errors: 3
                                                                                     tx_tcp_seg_good: 0
                                                                                     tx_tcp_seg_failed: 0
                                                                                     rx_flow_control_xon: 0
                                                                                     rx_flow_control_xoff: 0
                                                                                     tx_flow_control_xon: 0
                                                                                     tx_flow_control_xoff: 0
                                                                                     rx_long_byte_count: 859388034040
                                                                                     tx_dma_out_of_sync: 0
                                                                                     lro_aggregated: 0
                                                                                     lro_flushed: 0
                                                                                     tx_smbus: 0
                                                                                     rx_smbus: 0
                                                                                     dropped_smbus: 0
                                                                                     os2bmc_rx_by_bmc: 0
                                                                                     os2bmc_tx_by_bmc: 0
                                                                                     os2bmc_tx_by_host: 0
                                                                                     os2bmc_rx_by_host: 0
                                                                                     tx_hwtstamp_timeouts: 0
                                                                                     rx_hwtstamp_cleared: 0
                                                                                     rx_errors: 10
                                                                                     tx_errors: 0
                                                                                     tx_dropped: 0
                                                                                     rx_length_errors: 0
                                                                                     rx_over_errors: 0
                                                                                     rx_frame_errors: 3
                                                                                     rx_fifo_errors: 0
                                                                                     tx_fifo_errors: 0
                                                                                     tx_heartbeat_errors: 0
                                                                                     tx_queue_0_packets: 214405358
                                                                                     tx_queue_0_bytes: 14153464876
                                                                                     tx_queue_0_restart: 0
                                                                                     rx_queue_0_packets: 566220462
                                                                                     rx_queue_0_bytes: 857123148356
                                                                                     rx_queue_0_drops: 0
                                                                                     rx_queue_0_csum_err: 0
                                                                                     rx_queue_0_alloc_failed: 0

                                                                              • Re: I210 - unused MDI pins when configuring 100BASE-T
                                                                                Carlos_A Brown Belt

                                                                                Hello, Bert_L:

                                                                                 

                                                                                Thanks for your reply.

                                                                                 

                                                                                In order to help you, we will contact you via email.

                                                                                 

                                                                                Best regards,

                                                                                Carlos_A.