Difference between revisions of "DESK-MX6UL-L/Peripherals/Ethernet"

From DAVE Developer's Wiki
Jump to: navigation, search
m (Minor update for DESK MX6UL 4.0.0 rel)
Line 7: Line 7:
 
! style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#73B2C7; padding:5px; color:white" |Notes
 
! style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#73B2C7; padding:5px; color:white" |Notes
 
|-
 
|-
| style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#edf8fb; padding:5px; color:#000000" |{{oldid|14244|1.0.0}}
+
| style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#edf8fb; padding:5px; color:#000000" |1.0.0
 
| style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#edf8fb; padding:5px; color:#000000" |Apr 2021
 
| style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#edf8fb; padding:5px; color:#000000" |Apr 2021
 
| style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#edf8fb; padding:5px; color:#000000" |First DESK release
 
| style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#edf8fb; padding:5px; color:#000000" |First DESK release
 
|-
 
|-
 
| style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#edf8fb; padding:5px; color:#000000" |2.0.0
 
| style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#edf8fb; padding:5px; color:#000000" |2.0.0
| style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#edf8fb; padding:5px; color:#000000" |Mar 2022
+
| style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#edf8fb; padding:5px; color:#000000" |Feb 2022
| style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#edf8fb; padding:5px; color:#000000" |DESK 3.0.0 release
+
| style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#edf8fb; padding:5px; color:#000000" |3.0.0 DESK release
 +
|-
 +
| style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#edf8fb; padding:5px; color:#000000" |3.0.0
 +
| style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#edf8fb; padding:5px; color:#000000" |Apr 2023
 +
| style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#edf8fb; padding:5px; color:#000000" |4.0.0 DESK release
 
|-
 
|-
 
|}
 
|}
Line 34: Line 38:
 
         pinctrl-0 = <&pinctrl_enet1>;
 
         pinctrl-0 = <&pinctrl_enet1>;
 
         phy-mode = "rmii";
 
         phy-mode = "rmii";
         phy-handle = <&ethphy0>;
+
         phy-handle = <&\ethphy0>;
 
         status = "okay";
 
         status = "okay";
  
Line 44: Line 48:
 
                         compatible = "ethernet-phy-ieee802.3-c22";
 
                         compatible = "ethernet-phy-ieee802.3-c22";
 
                         reg = <3>;
 
                         reg = <3>;
 +
micrel,led-mode = <1>;
 +
clocks = <&clks IMX6UL_CLK_ENET_REF>;
 +
clock-names = "rmii-ref";
 
                 };
 
                 };
 
         };
 
         };
Line 82: Line 89:
 
...
 
...
 
...
 
...
[    2.542709] libphy: fec_enet_mii_bus: probed
+
[    1.771162] fec 2188000.ethernet eth0: registered PHC device 0
[    2.550888] fec 2188000.ethernet eth0: registered PHC device 0
+
23.370105] fec 2188000.ethernet eth0: Link is Up - 100Mbps/Full - flow control rx/tx
28.416349] fec 2188000.ethernet eth0: Link is Up - 100Mbps/Full - flow control rx/tx
 
 
...
 
...
 
...
 
...
25.277622] Micrel KSZ8081 or KSZ8091 2188000.ethernet-1:03: attached PHY driver [Micrel KSZ8081 or KSZ8091] (mii_bus:phy_addr=2188000.ethernet-1:03, irq=POLL)
+
20.262485] Micrel KSZ8081 or KSZ8091 2188000.ethernet-1:03: attached PHY driver (mii_bus:phy_addr=2188000.ethernet-1:03, irq=POLL)
 
...
 
...
 
...
 
...
Line 97: Line 103:
 
...
 
...
 
...
 
...
[ 194.804822] fec 2188000.ethernet eth0: Link is Up - 100Mbps/Full - flow control rx/tx
+
[   93.046409] fec 2188000.ethernet eth0: Link is Up - 100Mbps/Full - flow control rx/tx
[  194.812820] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
 
 
...
 
...
 
...
 
...
Line 108: Line 113:
 
root@desk-mx6ul-axelulite:~# ifconfig eth0
 
root@desk-mx6ul-axelulite:~# ifconfig eth0
 
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
 
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
         inet 192.168.4.79 netmask 255.255.255.0  broadcast 192.168.4.255
+
         inet 192.168.4.159 netmask 255.255.255.0  broadcast 192.168.4.255
         inet6 fe80::ec4e:d7ff:fe22:686b prefixlen 64  scopeid 0x20<link>
+
         inet6 fe80::bc0a:b6ff:fe9b:b0f8 prefixlen 64  scopeid 0x20<link>
         ether ee:4e:d7:22:68:6b txqueuelen 1000  (Ethernet)
+
         ether be:0a:b6:9b:b0:f8 txqueuelen 1000  (Ethernet)
         RX packets 360 bytes 87455 (85.4 KiB)
+
         RX packets 331 bytes 36636 (35.7 KiB)
         RX errors 0  dropped 95 overruns 0  frame 0
+
         RX errors 0  dropped 47 overruns 0  frame 0
         TX packets 134 bytes 20021 (19.5 KiB)
+
         TX packets 77 bytes 11278 (11.0 KiB)
 
         TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
 
         TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
 
</pre>
 
</pre>
Line 122: Line 127:
 
root@desk-mx6ul-axelulite:~# iperf3 -t 5 -c 192.168.4.47
 
root@desk-mx6ul-axelulite:~# iperf3 -t 5 -c 192.168.4.47
 
Connecting to host 192.168.4.47, port 5201
 
Connecting to host 192.168.4.47, port 5201
[  5] local 192.168.4.79 port 57824 connected to 192.168.4.47 port 5201
+
[  5] local 192.168.4.159 port 56244 connected to 192.168.4.47 port 5201
 
[ ID] Interval          Transfer    Bitrate        Retr  Cwnd
 
[ ID] Interval          Transfer    Bitrate        Retr  Cwnd
[  5]  0.00-1.00  sec  11.1 MBytes  93.0 Mbits/sec    0    150 KBytes       
+
[  5]  0.00-1.00  sec  11.3 MBytes  94.7 Mbits/sec    0    143 KBytes       
[  5]  1.00-2.00  sec  10.9 MBytes  91.3 Mbits/sec    0    150 KBytes       
+
[  5]  1.00-2.00  sec  10.8 MBytes  90.4 Mbits/sec    0    143 KBytes       
[  5]  2.00-3.00  sec  10.8 MBytes  90.2 Mbits/sec    0    150 KBytes       
+
[  5]  2.00-3.00  sec  10.8 MBytes  90.1 Mbits/sec    0    150 KBytes       
[  5]  3.00-4.00  sec  10.8 MBytes  90.7 Mbits/sec    0    150 KBytes       
+
[  5]  3.00-4.00  sec  10.9 MBytes  91.2 Mbits/sec    0    150 KBytes       
[  5]  4.00-5.00  sec  10.6 MBytes  89.0 Mbits/sec    0    150 KBytes       
+
[  5]  4.00-5.00  sec  10.8 MBytes  90.3 Mbits/sec    0    157 KBytes       
 
- - - - - - - - - - - - - - - - - - - - - - - - -
 
- - - - - - - - - - - - - - - - - - - - - - - - -
 
[ ID] Interval          Transfer    Bitrate        Retr
 
[ ID] Interval          Transfer    Bitrate        Retr
[  5]  0.00-5.00  sec  54.2 MBytes  90.8 Mbits/sec    0            sender
+
[  5]  0.00-5.00  sec  54.4 MBytes  91.3 Mbits/sec    0            sender
[  5]  0.00-5.02   sec  53.9 MBytes  90.0 Mbits/sec                  receiver
+
[  5]  0.00-5.05   sec  54.1 MBytes  89.9 Mbits/sec                  receiver
  
 
iperf Done.
 
iperf Done.

Revision as of 14:56, 3 April 2023

History
Version Issue Date Notes
1.0.0 Apr 2021 First DESK release
2.0.0 Feb 2022 3.0.0 DESK release
3.0.0 Apr 2023 4.0.0 DESK release



Peripheral Ethernet[edit | edit source]

The ethernet interface is made available through the i.MX6UL fec interface which should be initialized on the device tree.

Device tree configuration[edit | edit source]

Here below an example of device tree configuration used on standard DAVE's kit for the AXEL ULite SOM:

From imx6ul-axelulite.dtsi:

&fec1 {
        pinctrl-names = "default";
        pinctrl-0 = <&pinctrl_enet1>;
        phy-mode = "rmii";
        phy-handle = <&\ethphy0>;
        status = "okay";

        mdio {
                #address-cells = <1>;
                #size-cells = <0>;

                ethphy0: ethernet-phy@3 {
                        compatible = "ethernet-phy-ieee802.3-c22";
                        reg = <3>;
			micrel,led-mode = <1>;
			clocks = <&clks IMX6UL_CLK_ENET_REF>;
			clock-names = "rmii-ref";
                };
        };
};
...
...
&iomuxc {
...
...
                pinctrl_enet1: enet1grp {
                        fsl,pins = <
                                MX6UL_PAD_ENET1_RX_EN__ENET1_RX_EN      0x1b0b0
                                MX6UL_PAD_ENET1_RX_ER__ENET1_RX_ER      0x1b0b0
                                MX6UL_PAD_ENET1_RX_DATA0__ENET1_RDATA00 0x1b0b0
                                MX6UL_PAD_ENET1_RX_DATA1__ENET1_RDATA01 0x1b0b0
                                MX6UL_PAD_ENET1_TX_EN__ENET1_TX_EN      0x1b0b0
                                MX6UL_PAD_ENET1_TX_DATA0__ENET1_TDATA00 0x1b0b0
                                MX6UL_PAD_ENET1_TX_DATA1__ENET1_TDATA01 0x1b0b0
                                MX6UL_PAD_ENET1_TX_CLK__ENET1_REF_CLK1  0x4001b0a8
                                MX6UL_PAD_GPIO1_IO07__ENET1_MDC         0x1b0b0
                                MX6UL_PAD_GPIO1_IO06__ENET1_MDIO        0x1b0b0
                                MX6UL_PAD_SNVS_TAMPER1__GPIO5_IO01      0x1b0b0         /* ETH_PHY_RST */
                                MX6UL_PAD_SNVS_TAMPER2__GPIO5_IO02      0x1b0b0         /* ETH_INT */
                        >;
                };

...
...
};

Accessing the peripheral[edit | edit source]

AXEL ULite SOM provides the primary network interface mapped at eth0.

Linux messages at boot time[edit | edit source]

...
...
[    1.771162] fec 2188000.ethernet eth0: registered PHC device 0
[   23.370105] fec 2188000.ethernet eth0: Link is Up - 100Mbps/Full - flow control rx/tx
...
...
[   20.262485] Micrel KSZ8081 or KSZ8091 2188000.ethernet-1:03: attached PHY driver (mii_bus:phy_addr=2188000.ethernet-1:03, irq=POLL)
...
...

Cable connection:

...
...
[   93.046409] fec 2188000.ethernet eth0: Link is Up - 100Mbps/Full - flow control rx/tx
...
...

Check the interface with ifconfig[edit | edit source]

root@desk-mx6ul-axelulite:~# ifconfig eth0
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.4.159  netmask 255.255.255.0  broadcast 192.168.4.255
        inet6 fe80::bc0a:b6ff:fe9b:b0f8  prefixlen 64  scopeid 0x20<link>
        ether be:0a:b6:9b:b0:f8  txqueuelen 1000  (Ethernet)
        RX packets 331  bytes 36636 (35.7 KiB)
        RX errors 0  dropped 47  overruns 0  frame 0
        TX packets 77  bytes 11278 (11.0 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

Test with iperf[edit | edit source]

root@desk-mx6ul-axelulite:~# iperf3 -t 5 -c 192.168.4.47
Connecting to host 192.168.4.47, port 5201
[  5] local 192.168.4.159 port 56244 connected to 192.168.4.47 port 5201
[ ID] Interval           Transfer     Bitrate         Retr  Cwnd
[  5]   0.00-1.00   sec  11.3 MBytes  94.7 Mbits/sec    0    143 KBytes       
[  5]   1.00-2.00   sec  10.8 MBytes  90.4 Mbits/sec    0    143 KBytes       
[  5]   2.00-3.00   sec  10.8 MBytes  90.1 Mbits/sec    0    150 KBytes       
[  5]   3.00-4.00   sec  10.9 MBytes  91.2 Mbits/sec    0    150 KBytes       
[  5]   4.00-5.00   sec  10.8 MBytes  90.3 Mbits/sec    0    157 KBytes       
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate         Retr
[  5]   0.00-5.00   sec  54.4 MBytes  91.3 Mbits/sec    0             sender
[  5]   0.00-5.05   sec  54.1 MBytes  89.9 Mbits/sec                  receiver

iperf Done.