LS1021AIOT eTSEC3 - RTL8365 ethernet switch not working

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

LS1021AIOT eTSEC3 - RTL8365 ethernet switch not working

Jump to solution
3,469 Views
arunkr
Contributor III

Hi,

I am having LS1021AIOT board, (LS1021A Rev 1.0, IOT boar Rev X2).
The Realtek RTL8365MB 4+1 port Gigabit ethernet Switch in connected in eth2 (eTSEC3).

SDK is Yocto (QorIQ-SDK-V1.8).

I cannot communicate through the switch on this reference board with this code. ie, LS1021AIOT eTSEC3 - RTL8365 ethernet switch not working.

The RCW for eth3 is set for RGMII (000). In the Dts file in kernel, eth2 was set as rgmii-id, and in gianfar.c it was checking only rgmii. I have changed it.
Now on booting, it is verified that code runs through "Configuring RGMII mode" in gianfar.c. If I up/down eth2, it gets configured  as RGMII (code runs, not sure whether PHY actually configured).

I can ping from on device connected to this switch to another device connected in the same switch. But I cannot communicate with other network.

brctl showstp br-lan command shows:

root@OpenWrt:~# brctl showstp br-lan

br-lan

bridge id              7fff.001f7b6301aa

designated root        7fff.001f7b6301aa

root port                 0                    path cost                  0

max age                  20.00                 bridge max age            20.00

hello time                2.00                 bridge hello time          2.00

forward delay             2.00                 bridge forward delay       2.00

ageing time             300.00

hello timer               0.64                 tcn timer                  0.00

topology change timer     0.00                 gc timer                 117.76

flags

eth0

port id                8001                    state                  disabled

designated root        7fff.001f7b6301aa       path cost                  4

designated bridge      7fff.001f7b6301aa       message age timer          0.00

designated port        8001                    forward delay timer        0.00

designated cost           0                    hold timer                 0.00

flags

eth1

port id                8002                    state                  disabled

designated root        7fff.001f7b6301aa       path cost                100

designated bridge      7fff.001f7b6301aa       message age timer          0.00

designated port        8002                    forward delay timer        0.00

designated cost           0                    hold timer                 0.00

flags

The default br-lan bridge interface is up by default, and both eth0 and eth1 is added as shown above. I cannot ping from eth0 or eth1 to this eth2 How this can be resolved ?

Labels (1)
0 Kudos
Reply
1 Solution
2,500 Views
arunkr
Contributor III

Hi Pavel,

We have solved the issue, the issue was with RTL switch initialization. The SDK provided with the reference board was not initializing the RTL switch, so we integrated user space application for configuring the RTL Switch over DSPI, now its working.

View solution in original post

4 Replies
2,500 Views
Pavel
NXP Employee
NXP Employee

It looks like that configuration of your network is incorrect. It looks like that gateway and DNS server is not defined for your board.


Have a great day,
Pavel

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 Kudos
Reply
2,501 Views
arunkr
Contributor III

Hi Pavel,

We have solved the issue, the issue was with RTL switch initialization. The SDK provided with the reference board was not initializing the RTL switch, so we integrated user space application for configuring the RTL Switch over DSPI, now its working.

2,500 Views
wilkxt
Contributor I

Hi

I have the same problem, where you change RTL switch initialization?  I can't find this in the current SDK?

this SDk https://nxp.flexnetoperations.com/control/frse/product?child_plneID=684021&cert_num=727175607&ver=AR...  support LS1021A-IOT board?

0 Kudos
Reply
2,500 Views
arunkr
Contributor III

Hi

"The RTL L2 switch will be initialized on boot, the interface name is "eth2", use below command to add it to bridge:

  $ ifconfig eth2 up

  $ brctl addif br-lan eth2"

I have done the step.

If I run 'ethtool eth2' command on fsl-image-rds,  I am getting the below :

# ethtool eth2

Settings for eth2:

        Supported ports: [ MII ]

        Supported link modes:   10baseT/Half 10baseT/Full

                                100baseT/Half 100baseT/Full

                                1000baseT/Full

        Supported pause frame use: Symmetric Receive-only

        Supports auto-negotiation: Yes

        Advertised link modes:  10baseT/Half 10baseT/Full

                                100baseT/Half 100baseT/Full

                                1000baseT/Full

        Advertised pause frame use: No

        Advertised auto-negotiation: Yes

        Speed: 1000Mb/s

        Duplex: Full

        Port: MII

        PHYAD: 2

        Transceiver: external

        Auto-negotiation: off

        Supports Wake-on: g

        Wake-on: d

        Current message level: 0x0000003f (63)

                               drv probe link timer ifdown ifup

        Link detected: yes

It shows the eth2 is configured in MII.

I am using LS1021A-IoT Gateway Reference Design SDK Source ISO (REV 1.8).The Hardware is configured for RGMII, and in device tree by default it was initializing as MII only, not RGMII. I have change it to rgmii-id now, and on booting, I gets prints of eth2 configured in RGMII. Still on 'ethtool eth2' command, I am getting MII only. What could be the problem ?

0 Kudos
Reply