DRA821U: USXGMII Configuration issue

Part Number: DRA821U
Other Parts Discussed in Thread: DRA821

Tool/software:

Hi Team,

I am working on DRA821U based custom board. When am trying to configure usxgmii as phy mode in port 1 for validating 10G, getting the following error message in the kernel console.

[    1.568678] phy-gmii-sel 104044.phy: port1: unsupported mode: "usxgmii"

following is my dts settings


&cpsw5g_mdio {
       status = "okay";
       pinctrl-names = "default";
        pinctrl-0 = <&main_mdio_pins_default &main_10G_mdio_pins_default>;

       phy3: ethernet-phy@3 {
               reg = <3>;
               compatible = "ethernet-phy-ieee802.3-c22";
       };
        phy1: ethernet-phy@1 {
                reg = <1>;
               compatible = "ethernet-phy-ieee802.3-c45";
               device_type = "ethernet-phy";
               host-in-si1;
                phys = <&serdes0_qsgmii_link>;
        };

};

&cpsw0_port1 {
        status = "okay";
        phy-mode = "usxgmii";
        phy-handle = <&phy1>;
        phys = <&cpsw0_phy_gmii_sel 1>;

};


please help me to resolve the issue.

Regards
Madhusankar

  • Hi,

    What is the SDK you are using? The older SDKs (< 9.0) doesn't have USXGMII. For 9.1 and above, see "board-support/ti-linux-kernel-6.1.46+gitAUTOINC+5892b80d6b-g5892b80d6b/arch/arm64/boot/dts/ti/k3-j784s4-evm-usxgmii-exp1-exp2.dtso" for reference.

    Regards,
    Tanmay

  • Hi,Tammay

    SDK-version : 09_02_00_04
    Kernel: ti-processor-sdk-linux-j7200-evm-09_02_00_04-Linux-x86-Install/board-support/ti-linux-kernel-6.1.80+gitAUTOINC+1c154b1fe4-ti

    I have went through gmii selection driver(phy-gmii-sel.c) couldn't find any entry for USXGMII in the (struct phy_gmii_sel_soc_data phy_gmii_sel_cpsw5g_soc_j7200 ) structure.As far I know there should some entry for USXGMII also correct me if am wrong.








    Regards,
    Madhusankar

  • Hi Madhushankar,

    Yes, you are correct. For DRA821, you will need to add the USXGMII support flag in both "drivers/phy/ti/phy-gmii-sel.c" and in "j7200_cpswxg_pdata" at "drivers/net/ethernet/ti/am65-cpsw-nuss.c".

    Sorry for the overseeing this error.

    Regards,
    Tanmay

  • Hi Tammy,

    I have added the USXGMII support flag in both drivers that error has been solved thanks for the confirmation.

    I have one doubt about serdes configuration,for USXGMII and SGMII is anything need to add in serdes header file (include/dt-bindings/mux/ti-serdes.h).I can only see the following entries.

    #define J7200_SERDES0_LANE0_QSGMII_LANE3        0x0
    #define J7200_SERDES0_LANE0_PCIE1_LANE0         0x1
    #define J7200_SERDES0_LANE0_IP3_UNUSED          0x2
    #define J7200_SERDES0_LANE0_IP4_UNUSED          0x3

    #define J7200_SERDES0_LANE1_QSGMII_LANE4        0x0
    #define J7200_SERDES0_LANE1_PCIE1_LANE1         0x1
    #define J7200_SERDES0_LANE1_IP3_UNUSED          0x2
    #define J7200_SERDES0_LANE1_IP4_UNUSED          0x3

    #define J7200_SERDES0_LANE2_QSGMII_LANE1        0x0
    #define J7200_SERDES0_LANE2_PCIE1_LANE2         0x1
    #define J7200_SERDES0_LANE2_IP3_UNUSED          0x2
    #define J7200_SERDES0_LANE2_IP4_UNUSED          0x3

    #define J7200_SERDES0_LANE3_QSGMII_LANE2        0x0
    #define J7200_SERDES0_LANE3_PCIE1_LANE3         0x1
    #define J7200_SERDES0_LANE3_USB                 0x2
    #define J7200_SERDES0_LANE3_IP4_UNUSED          0x3



    am attaching my dts settings

    +&serdes_ln_ctrl {
    +       status = "okay";
    +       idle-states = <J7200_SERDES0_LANE0_PCIE1_LANE0>, <J7200_SERDES0_LANE1_PCIE1_LANE1>,
    +                     <J7200_SERDES0_LANE2_QSGMII_LANE1>, <J7200_SERDES0_LANE3_IP4_UNUSED>;
    +};



    with these dts is possible to test usxgmii and sgmii


    Regards,

    Madhusankar


  • Hi Madhusankar,

    Yes, Using QSGMII is the correct way. It will work with all the serial interfaces.

    Regards,
    Tanmay

  • Hi Tammay,

    whether the USXGMII/XFI will support backward compatible ? is it possible to test 1G with usxgmii mode?

    Regards,
    Madhusankar S P

  • Hi,

    whether the USXGMII/XFI will support backward compatible ? is it possible to test 1G with usxgmii mode?

    No, USXGMII can enable at 5Gbps/10Gbps but, you can't use for 1G.

    Best Regards,
    Sudheer

  • Hi Sudheer,

    Thanks for confirmation.Please close the thread

    Regards,
    Madhusankar SP