TDA4VH-Q1: How should I troubleshoot a "Link up" failure issue?

Part Number: TDA4VH-Q1
Other Parts Discussed in Thread: TDA4VH

Tool/software:

Hi.
   

    The sgmii phy of 2-0 is debugged in rtos.


    TDA4VH  SDK0902    cpsw  port4  serdes1 lane1<-----sgmii----->switch.  

{ /* "P3" */
.macPort = ENET_MAC_PORT_4,
.mii = { ENET_MAC_LAYER_GMII, ENET_MAC_SUBLAYER_SERIAL }, /*ENET_MAC_SUBLAYER_SERIAL SGMII*/
.phyCfg =
{
.phyAddr = ENETPHY_INVALID_PHYADDR,
.isStrapped = BFALSE,
.skipExtendedCfg = BFALSE,
.extendedCfg = NULL,
.extendedCfgSize = 0U,
},
.sgmiiMode = ENET_MAC_SGMIIMODE_SGMII_FORCEDLINK,
.linkCfg = { ENET_SPEED_1GBIT, ENET_DUPLEX_FULL },
},

Board_STATUS Board_CfgSgmii_serdes1(void)
{
    CSL_SerdesResult result;
    CSL_SerdesLaneEnableStatus laneRetVal = CSL_SERDES_LANE_ENABLE_NO_ERR;
    CSL_SerdesLaneEnableParams serdesLane0EnableParams  = {0};
    memset(&serdesLane0EnableParams, 0, sizeof(serdesLane0EnableParams));

    /* SGMII Config */
    serdesLane0EnableParams.serdesInstance    = (CSL_SerdesInstance)CSL_TORRENT_SERDES1;
    serdesLane0EnableParams.baseAddr          = CSL_WIZ16B8M4CT3_1_WIZ16B8M4CT3_BASE;
    serdesLane0EnableParams.refClock          = CSL_SERDES_REF_CLOCK_100M;
    serdesLane0EnableParams.refClkSrc         = CSL_SERDES_REF_CLOCK_INT0;
    serdesLane0EnableParams.linkRate          = CSL_SERDES_LINK_RATE_1p25G;
    serdesLane0EnableParams.numLanes          = 0x1;
    serdesLane0EnableParams.laneMask          = 0x2;
    serdesLane0EnableParams.SSC_mode          = CSL_SERDES_NO_SSC;
    serdesLane0EnableParams.phyType           = CSL_SERDES_PHY_TYPE_SGMII;
    serdesLane0EnableParams.operatingMode     = CSL_SERDES_FUNCTIONAL_MODE;
    serdesLane0EnableParams.phyInstanceNum    = 0;//BOARD_SERDES_LANE_SELECT_CPSW;
    serdesLane0EnableParams.pcieGenType        = CSL_SERDES_PCIE_GEN3;

    serdesLane0EnableParams.laneCtrlRate[0]   = CSL_SERDES_LANE_FULL_RATE;
    serdesLane0EnableParams.loopbackMode[0]   = CSL_SERDES_LOOPBACK_DISABLED;

    serdesLane0EnableParams.laneCtrlRate[1]   = CSL_SERDES_LANE_FULL_RATE;
    serdesLane0EnableParams.loopbackMode[1]   = CSL_SERDES_LOOPBACK_DISABLED;

    CSL_serdesPorReset(serdesLane0EnableParams.baseAddr);
        /* Select the IP type, IP instance num, Serdes Lane Number */
    CSL_serdesIPSelect(CSL_CTRL_MMR0_CFG0_BASE,
                       serdesLane0EnableParams.phyType,
                       serdesLane0EnableParams.phyInstanceNum,
                       serdesLane0EnableParams.serdesInstance,
                       1U);
    result = CSL_serdesRefclkSel(CSL_CTRL_MMR0_CFG0_BASE,
                                 serdesLane0EnableParams.baseAddr,
                                 serdesLane0EnableParams.refClock,
                                 serdesLane0EnableParams.refClkSrc,
                                 serdesLane0EnableParams.serdesInstance,
                                 serdesLane0EnableParams.phyType);
    if (result != CSL_SERDES_NO_ERR)
    {
        return BOARD_FAIL;
    }
    /* Assert PHY reset and disable all lanes */
    CSL_serdesDisablePllAndLanes(serdesLane0EnableParams.baseAddr, serdesLane0EnableParams.numLanes, serdesLane0EnableParams.laneMask);
    /* Load the Serdes Config File */
    result = CSL_serdesEthernetInit(&serdesLane0EnableParams);
    /* Return error if input params are invalid */
    if (result != CSL_SERDES_NO_ERR)
    {
        return BOARD_FAIL;
    }
    /* Common Lane Enable API for lane enable, pll enable etc */
    laneRetVal = CSL_serdesLaneEnable(&serdesLane0EnableParams);
    if (laneRetVal != 0)
    {
        return BOARD_FAIL;
    }
    return BOARD_SOK;
}

Now devmem2 0x0c000414 is  0x00000030

How should I troubleshoot a "Link up" failure issue?

Thanks and regards,

 jun

  • Hi,

    Can you please confirm, have you configured SerDes1 clock with 100MHz clock?
    By default TI SDK using SerDes2 as per EVM connectivity.

    Can you please share the ETHFW log to check if any errors reported?

    Also, make sure SerDes1 not being used by Linux for any purpose?

    Check SGMII mode & Auto negotiation capabilities at PHY.
    By default SGMII with FORCED Link configured MAC in Master Mode and disables Auto-negotiation. 

    Best Regards,
    Sudheer

  • HI.
    1.

    Board_STATUS Board_CfgSgmii_serdes1(void)
    {
        CSL_SerdesResult result;
        CSL_SerdesLaneEnableStatus laneRetVal = CSL_SERDES_LANE_ENABLE_NO_ERR;
        CSL_SerdesLaneEnableParams serdesLane0EnableParams  = {0};
        memset(&serdesLane0EnableParams, 0, sizeof(serdesLane0EnableParams));
    
        /* SGMII Config */
        serdesLane0EnableParams.serdesInstance    = (CSL_SerdesInstance)CSL_TORRENT_SERDES1;
        serdesLane0EnableParams.baseAddr          = CSL_WIZ16B8M4CT3_1_WIZ16B8M4CT3_BASE;
        serdesLane0EnableParams.refClock          = CSL_SERDES_REF_CLOCK_100M; // CSL_SERDES_REF_CLOCK_156p25M; //CSL_SERDES_REF_CLOCK_100M;
        serdesLane0EnableParams.refClkSrc         = CSL_SERDES_REF_CLOCK_INT0;  //CSL_SERDES_REF_CLOCK_INT1;//CSL_SERDES_REF_CLOCK_INT0;
        serdesLane0EnableParams.linkRate          = CSL_SERDES_LINK_RATE_1p25G;//CSL_SERDES_LINK_RATE_3p125G;//CSL_SERDES_LINK_RATE_1p25G;
        serdesLane0EnableParams.numLanes          = 0x1;
        serdesLane0EnableParams.laneMask          = 0x2;
        serdesLane0EnableParams.SSC_mode          = CSL_SERDES_NO_SSC;
        serdesLane0EnableParams.phyType           = CSL_SERDES_PHY_TYPE_SGMII; //CSL_SERDES_PHY_TYPE_XAUI;//CSL_SERDES_PHY_TYPE_SGMII;
        serdesLane0EnableParams.operatingMode     = CSL_SERDES_FUNCTIONAL_MODE;
        serdesLane0EnableParams.phyInstanceNum    = 0;//BOARD_SERDES_LANE_SELECT_CPSW;
        serdesLane0EnableParams.pcieGenType        = CSL_SERDES_PCIE_GEN3;
    
        serdesLane0EnableParams.laneCtrlRate[0]   = CSL_SERDES_LANE_FULL_RATE;
        serdesLane0EnableParams.loopbackMode[0]   = CSL_SERDES_LOOPBACK_DISABLED;
    
        serdesLane0EnableParams.laneCtrlRate[1]   = CSL_SERDES_LANE_FULL_RATE;
        serdesLane0EnableParams.loopbackMode[1]   = CSL_SERDES_LOOPBACK_DISABLED;
    
        CSL_serdesPorReset(serdesLane0EnableParams.baseAddr);
            /* Select the IP type, IP instance num, Serdes Lane Number */
        CSL_serdesIPSelect(CSL_CTRL_MMR0_CFG0_BASE,
                           serdesLane0EnableParams.phyType,
                           serdesLane0EnableParams.phyInstanceNum,
                           serdesLane0EnableParams.serdesInstance,
                           1U);
        result = CSL_serdesRefclkSel(CSL_CTRL_MMR0_CFG0_BASE,
                                     serdesLane0EnableParams.baseAddr,
                                     serdesLane0EnableParams.refClock,
                                     serdesLane0EnableParams.refClkSrc,
                                     serdesLane0EnableParams.serdesInstance,
                                     serdesLane0EnableParams.phyType);
        if (result != CSL_SERDES_NO_ERR)
        {
            return BOARD_FAIL;
        }
        /* Assert PHY reset and disable all lanes */
        CSL_serdesDisablePllAndLanes(serdesLane0EnableParams.baseAddr, serdesLane0EnableParams.numLanes, serdesLane0EnableParams.laneMask);
        /* Load the Serdes Config File */
        result = CSL_serdesEthernetInit(&serdesLane0EnableParams);
        /* Return error if input params are invalid */
        if (result != CSL_SERDES_NO_ERR)
        {
            return BOARD_FAIL;
        }
        /* Common Lane Enable API for lane enable, pll enable etc */
        laneRetVal = CSL_serdesLaneEnable(&serdesLane0EnableParams);
        if (laneRetVal != 0)
        {
            return BOARD_FAIL;
        }
        return BOARD_SOK;
    }

    2. mcu2-0 log;
    [MCU2_0] 4.475869 s: ### CPU Frequency = 1000000000 Hz
    [MCU2_0] 4.475894 s: CPU is running FreeRTOS
    [MCU2_0] 4.475912 s: APP: Init ... !!!
    [MCU2_0] 4.475945 s: SCICLIENT: Init ... !!!
    [MCU2_0] 4.476062 s: SCICLIENT: DMSC FW version [9.0.6--v09.00.06 (Kool Koala)]
    [MCU2_0] 4.476089 s: SCICLIENT: DMSC FW revision 0x9
    [MCU2_0] 4.476108 s: SCICLIENT: DMSC FW ABI revision 3.1
    [MCU2_0] 4.476127 s: SCICLIENT: Init ... Done !!!
    [MCU2_0] 4.476145 s: UDMA: Init ... !!!
    [MCU2_0] 4.476920 s: UDMA: Init ... Done !!!
    [MCU2_0] 4.476951 s: UDMA: Init for CSITX/CSIRX ... !!!
    [MCU2_0] 4.477375 s: UDMA: Init for CSITX/CSIRX ... Done !!!
    [MCU2_0] 4.477402 s: MEM: Init ... !!!
    [MCU2_0] 4.477424 s: MEM: Created heap (DDR_LOCAL_MEM, id=0, flags=0x00000004) @ bb000000 of size 6291456 bytes !!!
    [MCU2_0] 4.477465 s: MEM: Created heap (L3_MEM, id=1, flags=0x00000000) @ 60000000 of size 262144 bytes !!!
    [MCU2_0] 4.477500 s: MEM: Created heap (DDR_CACHE_WT_MEM, id=7, flags=0x00000000) @ bb600000 of size 2097152 bytes !!!
    [MCU2_0] 4.477535 s: MEM: Init ... Done !!!
    [MCU2_0] 4.477551 s: IPC: Init ... !!!
    [MCU2_0] 4.477582 s: IPC: 11 CPUs participating in IPC !!!
    [MCU2_0] 4.477611 s: IPC: Waiting for HLOS to be ready ... !!!
    [MCU2_0] 12.564335 s: IPC: HLOS is ready !!!
    [MCU2_0] 12.571084 s: IPC: Init ... Done !!!
    [MCU2_0] 12.571126 s: APP: Syncing with 10 CPUs ... !!!
    [MCU2_0] 12.789073 s: APP: Syncing with 10 CPUs ... Done !!!
    [MCU2_0] 12.789099 s: REMOTE_SERVICE: Init ... !!!
    [MCU2_0] 12.789495 s: REMOTE_SERVICE: Init ... Done !!!
    [MCU2_0] 12.789572 s: ETHFW: Init ... !!!
    [MCU2_0] 12.794351 s: ZD: autox_Board_serdesCfgSgmii
    [MCU2_0] 12.794406 s: ZD: autox_Board_serdesCfgSgmii 4
    [MCU2_0] 12.796029 s: ETHFW: Warning: Using 6 random MAC address(es)
    [MCU2_0] 12.796062 s: ETHFW: Warning: Using 6 MAC address(es) from static pool
    [MCU2_0] 12.796131 s: ETHFW: Shared multicasts:
    [MCU2_0] 12.796161 s: ETHFW: 01:00:5e:00:00:01
    [MCU2_0] 12.796185 s: ETHFW: 01:00:5e:00:00:fb
    [MCU2_0] 12.796208 s: ETHFW: 01:00:5e:00:00:fc
    [MCU2_0] 12.796232 s: ETHFW: 33:33:00:00:00:01
    [MCU2_0] 12.796256 s: ETHFW: 33:33:ff:1d:92:c2
    [MCU2_0] 12.796279 s: ETHFW: 01:80:c2:00:00:00
    [MCU2_0] 12.796302 s: ETHFW: 01:80:c2:00:00:03
    [MCU2_0] 12.796322 s: ETHFW: Reserved multicasts:
    [MCU2_0] 12.796347 s: ETHFW: 01:80:c2:00:00:0e
    [MCU2_0] 12.796370 s: ETHFW: 01:1b:19:00:00:00
    [MCU2_0] 12.796399 s: ETHFW: CPSW recovery is not enabled
    [MCU2_0] 12.796424 s: EthFw_initMcm EnetMcm_init
    [MCU2_0] 12.796496 s: EthFw_initMcm EnetMcm_init done
    [MCU2_0] 12.796527 s: EthFw_initMcm EnetMcm_getCmdIf done
    [MCU2_0] 12.796570 s: EnetMcm: CPSW_9G on MAIN NAVSS
    [MCU2_0] 12.806960 s: EthFw_initLinkArgs into macPort=3
    [MCU2_0] 12.807001 s: EthFwBoard_findPortCfg
    [MCU2_0] 12.807034 s: EthFwBoard_findPortCfg chk port 0 3
    [MCU2_0] 12.807064 s: EthFwBoard_findPortCfg chk port 1 3
    [MCU2_0] 12.807094 s: EthFwBoard_findPortCfg chk port 3 3
    [MCU2_0] 12.807126 s: EthFw_initLinkArgs into macPort=3 status 0
    [MCU2_0] 12.807158 s: EthFw_initLinkArgs done i=1 macPort=3
    [MCU2_0] 12.807347 s: get SGMII portNum 3, force set is sgmiiStatus.bIsLinkUp =1
    [MCU2_0] 12.807505 s: CpswMacPort_open status : 0
    [MCU2_0] 12.807557 s: CPSW_MACPORT_IOCTL_GET_SGMII_LINK_STATUS *linkUp = CpswMacPort_getSgmiiStatus(sgmiiRegs, macPort) =0
    [MCU2_0] 12.807618 s: CPSW_MACPORT_IOCTL_GET_SGMII_LINK_STATUS *linkUp = CpswMacPort_getSgmiiStatus(sgmiiRegs, macPort) =0
    [MCU2_0] 12.807678 s: CPSW_MACPORT_IOCTL_GET_SGMII_LINK_STATUS *linkUp = CpswMacPort_getSgmiiStatus(sgmiiRegs, macPort) =0
    [MCU2_0] 12.807743 s: CPSW_MACPORT_IOCTL_GET_SGMII_LINK_STATUS *linkUp = CpswMacPort_getSgmiiStatus(sgmiiRegs, macPort) =0
    [MCU2_0] 12.807801 s: CPSW_MACPORT_IOCTL_GET_SGMII_LINK_STATUS *linkUp = CpswMacPort_getSgmiiStatus(sgmiiRegs, macPort) =0

    3.
    The Linux device tree being used is the pre-built device tree from the TI EVM.

  • Hi, 

    Can you please check SERDES LANE CTRL registers from CTRL MMR register set, to check whether serdes lanes configured for CPSW ports or Other functionality. 

    Best Regards, 

    Sudheer

  • HI.Sudheer
    root@j784s4-evm:~# devmem2 0x104094
    /dev/mem opened.
    Memory mapped at address 0xffffb2d1f000.
    Read at address 0x00104094 (0xffffb2d1f094): 0x00000000

    0010 4094h 32 4094h CFG0 CTRL_MMR_CFG0_SERDES1_LN1_CTRL 31:2 RESERVED
    0010 4094h 32 4094h CFG0 CTRL_MMR_CFG0_SERDES1_LN1_CTRL 1:0 SERDES1_LN1_CTRL_LANE_FUNC_SEL
    Selects the SERDES1 lane1 function
    Field values (Others are reserved):
    2'b00
     

    root@j784s4-evm:~# devmem2 0x104050
    /dev/mem opened.
    Memory mapped at address 0xffffa8a71000.
    Read at address 0x00104050 (0xffffa8a71050): 0x00000003

    0010 4050h  CTRL_MMR_CFG0_ENET4_CTRL 

    2:0 ENET4_CTRL_PORT_MODE_SEL

    Field values (Others are reserved):
    3'b000-GMII/MII (not supported)
    3'b001-RMII (not supported)
    3'b010-RGMII (not supported)
    3'b011-SGMII
    3'b100-QSGMII
    3'b101-USXGMII/XFI
    3'b110-QSGMII_SUB
    3'b111-Reserved

    Best Regards, 
    jun

  • Hi, 

    Let me check and respond back to you in early next week. 

    Best Regards, 

    Sudheer

  • HI Sudheer
       

    Board_STATUS Board_CfgSgmii_serdes1(void)
    {
        CSL_SerdesResult result;
        CSL_SerdesLaneEnableStatus laneRetVal = CSL_SERDES_LANE_ENABLE_NO_ERR;
        CSL_SerdesLaneEnableParams serdesLane0EnableParams  = {0};
        memset(&serdesLane0EnableParams, 0, sizeof(serdesLane0EnableParams));
    
        /* SGMII Config */
        serdesLane0EnableParams.serdesInstance    = (CSL_SerdesInstance)CSL_TORRENT_SERDES1;
        serdesLane0EnableParams.baseAddr          = CSL_WIZ16B8M4CT3_1_WIZ16B8M4CT3_BASE;
        serdesLane0EnableParams.refClock          = CSL_SERDES_REF_CLOCK_100M; // CSL_SERDES_REF_CLOCK_156p25M; //CSL_SERDES_REF_CLOCK_100M;
        serdesLane0EnableParams.refClkSrc         = CSL_SERDES_REF_CLOCK_INT0;  //CSL_SERDES_REF_CLOCK_INT1;//CSL_SERDES_REF_CLOCK_INT0;
        serdesLane0EnableParams.linkRate          = CSL_SERDES_LINK_RATE_1p25G;//CSL_SERDES_LINK_RATE_3p125G;//CSL_SERDES_LINK_RATE_1p25G;
        serdesLane0EnableParams.numLanes          = 0x1;
        serdesLane0EnableParams.laneMask          = 0x2;
        serdesLane0EnableParams.SSC_mode          = CSL_SERDES_NO_SSC;
        serdesLane0EnableParams.phyType           = CSL_SERDES_PHY_TYPE_SGMII; //CSL_SERDES_PHY_TYPE_XAUI;//CSL_SERDES_PHY_TYPE_SGMII;
        serdesLane0EnableParams.operatingMode     = CSL_SERDES_FUNCTIONAL_MODE;
        serdesLane0EnableParams.phyInstanceNum    = 0;//BOARD_SERDES_LANE_SELECT_CPSW;
        serdesLane0EnableParams.pcieGenType        = CSL_SERDES_PCIE_GEN3;
    
        serdesLane0EnableParams.laneCtrlRate[0]   = CSL_SERDES_LANE_FULL_RATE;
        serdesLane0EnableParams.loopbackMode[0]   = CSL_SERDES_LOOPBACK_DISABLED;
    
        serdesLane0EnableParams.laneCtrlRate[1]   = CSL_SERDES_LANE_FULL_RATE;
        serdesLane0EnableParams.loopbackMode[1]   = CSL_SERDES_LOOPBACK_DISABLED;
    
        CSL_serdesPorReset(serdesLane0EnableParams.baseAddr);
            /* Select the IP type, IP instance num, Serdes Lane Number */
        CSL_serdesIPSelect(CSL_CTRL_MMR0_CFG0_BASE,
                           serdesLane0EnableParams.phyType,
                           serdesLane0EnableParams.phyInstanceNum,
                           serdesLane0EnableParams.serdesInstance,
                           1U);
        result = CSL_serdesRefclkSel(CSL_CTRL_MMR0_CFG0_BASE,
                                     serdesLane0EnableParams.baseAddr,
                                     serdesLane0EnableParams.refClock,
                                     serdesLane0EnableParams.refClkSrc,
                                     serdesLane0EnableParams.serdesInstance,
                                     serdesLane0EnableParams.phyType);
        if (result != CSL_SERDES_NO_ERR)
        {
            return BOARD_FAIL;
        }
        /* Assert PHY reset and disable all lanes */
        CSL_serdesDisablePllAndLanes(serdesLane0EnableParams.baseAddr, serdesLane0EnableParams.numLanes, serdesLane0EnableParams.laneMask);
        /* Load the Serdes Config File */
        result = CSL_serdesEthernetInit(&serdesLane0EnableParams);
        /* Return error if input params are invalid */
        if (result != CSL_SERDES_NO_ERR)
        {
            return BOARD_FAIL;
        }
        /* Common Lane Enable API for lane enable, pll enable etc */
        laneRetVal = CSL_serdesLaneEnable(&serdesLane0EnableParams);
        if (laneRetVal != 0)
        {
            return BOARD_FAIL;
        }
        return BOARD_SOK;
    }
    static void EthFwBoard_configTorrentClks(void)
    {
        uint32_t moduleId;
        uint32_t clkId;
        uint32_t clkRateHz;
    
        moduleId  = TISCI_DEV_SERDES_10G2;
        clkId     = TISCI_DEV_SERDES_10G2_CORE_REF_CLK;
        clkRateHz = 100000000U;
        EnetAppUtils_clkRateSet(moduleId, clkId, clkRateHz);
    
        EnetAppUtils_setDeviceState(moduleId, TISCI_MSG_VALUE_DEVICE_SW_STATE_ON, 0U);
    }

     
    RE: PROCESSOR-SDK-J784S4: Need to change ETHFW configuration from 1G to 2.5G as PHY supports 2.5G 

       I followed this modification but there is no link up.
       How can I modify this to support 2.5 Gbps?
       What else needs to be modified?

     Best Regards, 

     jun

  • Hi, 

    For 2.5Gbps, you need to use 156.25MHz clock at SerDes side. 

    Above configuration mapping serdes clock of 100MHz.

    Best Regards, 

    Sudheer

  • Hi, Sudheer
     If the switch side is set to 1 Gbps, the SerDes can establish a link at 1 Gbps. However, when the switch is changed to 2.5 Gbps and the configuration is adjusted accordingly, the link cannot be established

        

          /* SGMII Config */
    serdesLaneEnableParams.serdesInstance = (CSL_SerdesInstance)CSL_TORRENT_SERDES1;
    serdesLaneEnableParams.baseAddr = CSL_WIZ16B8M4CT3_1_WIZ16B8M4CT3_BASE;
    serdesLaneEnableParams.refClock = CSL_SERDES_REF_CLOCK_156p25M; //CSL_SERDES_REF_CLOCK_100M;
    serdesLaneEnableParams.refClkSrc = CSL_SERDES_REF_CLOCK_INT1; //CSL_SERDES_REF_CLOCK_INT1;
    serdesLaneEnableParams.linkRate = CSL_SERDES_LINK_RATE_3p125G; //CSL_SERDES_LINK_RATE_1p25G;
    serdesLaneEnableParams.numLanes = 1U;
    serdesLaneEnableParams.laneMask = laneMask;
    serdesLaneEnableParams.SSC_mode = CSL_SERDES_NO_SSC;
    serdesLaneEnableParams.phyType = CSL_SERDES_PHY_TYPE_XAUI; //CSL_SERDES_PHY_TYPE_SGMII;
    serdesLaneEnableParams.operatingMode = CSL_SERDES_FUNCTIONAL_MODE;
    serdesLaneEnableParams.phyInstanceNum = 0;
    serdesLaneEnableParams.pcieGenType = CSL_SERDES_PCIE_GEN3;

     
    Best Regards, 

     jun

  • Hi, 

    You can use refClkSrc as CSL_SERDES_REF_CLOCK_INT0

    You have to configure SerDes1 clock as 156.25MHz from board_j784s4_evm.c file from ethfw/utils/board/soc/ folder. 

     If the switch side is set to 1 Gbps, the SerDes can establish a link at 1 Gbps

    You mean switch connected to MAC? If so, clock setting of SerDes matters. 

    Best Regards, 

    Sudheer

  • Hi.Sudheer
      
    Is this the correct configuration? I have already tested it, but it cannot establish a link.

    serdesLaneEnableParams.serdesInstance = (CSL_SerdesInstance)CSL_TORRENT_SERDES1;
    serdesLaneEnableParams.baseAddr = CSL_WIZ16B8M4CT3_1_WIZ16B8M4CT3_BASE;//
    serdesLaneEnableParams.refClock = CSL_SERDES_REF_CLOCK_156p25M; //
    serdesLaneEnableParams.refClkSrc = CSL_SERDES_REF_CLOCK_INT0;
    serdesLaneEnableParams.linkRate = CSL_SERDES_LINK_RATE_3p125G;
    serdesLaneEnableParams.numLanes = 1U;
    serdesLaneEnableParams.laneMask = laneMask;
    serdesLaneEnableParams.SSC_mode = CSL_SERDES_NO_SSC;
    serdesLaneEnableParams.phyType = CSL_SERDES_PHY_TYPE_XAUI;
    serdesLaneEnableParams.operatingMode = CSL_SERDES_FUNCTIONAL_MODE;
    serdesLaneEnableParams.phyInstanceNum = 0;
    serdesLaneEnableParams.pcieGenType = CSL_SERDES_PCIE_GEN3;


    Best Regards, 
     jun

  • Hi,

    Is this the correct configuration? I have already tested it, but it cannot establish a link.

    The above SerDes configuration is correct for XAUI.

    What about SerDes clock setting from ethfw/utils/board/src/j784s4/board_j784s4_evm.c file 
    Clock setting for XAUI has to be as follows.


    Also, ensure that switch side XAUI/2.5G Link settings are enabled.

    Best Regards,
    Sudheer

  • HI.
    After changing to 156.25 MHz, an error occurred.

    moduleId = TISCI_DEV_SERDES_10G2;
    clkId = TISCI_DEV_SERDES_10G2_CORE_REF_CLK;
    clkRateHz = 156250000U;//100000000U;
    EnetAppUtils_clkRateSet(moduleId, clkId, clkRateHz);
    EnetAppUtils_setDeviceState(moduleId, TISCI_MSG_VALUE_DEVICE_SW_STATE_ON, 0U);


    [MCU2_0] 13.268010 s: EthFwBoard_configTorrentClks
    [MCU2_0] 13.269002 s: PMLIBClkRateSet failed for clock Id = 6
    [MCU2_0] 13.269045 s: Assertion @ Line: 188 in enet_apputils_k3.c: BFALSE : failed !!!



    Best Regards, 
     jun

  • Hi,

    moduleId = TISCI_DEV_SERDES_10G2;
    clkId = TISCI_DEV_SERDES_10G2_CORE_REF_CLK;
    clkRateHz = 156250000U;//100000000U;

    You need to use SerDes1 as per your connections, as follows.

    moduleId = TISCI_DEV_SERDES_10G1;
    clkId = TISCI_DEV_SERDES_10G1_CORE_REF_CLK;

    On the TI EVM, we only have the SerDes2 pinout for the network interface, so the above I have shared is for SerDes2.

    Best Regards,
    Sudheer
  • Hi,
    I already tested it yesterday, and got the same error.

    moduleId = TISCI_DEV_SERDES_10G1;
    clkId = TISCI_DEV_SERDES_10G1_CORE_REF_CLK;
    clkRateHz = 156250000U;//100000000U;
    EnetAppUtils_clkRateSet(moduleIdclkIdclkRateHz);
    EnetAppUtils_setDeviceState(moduleIdTISCI_MSG_VALUE_DEVICE_SW_STATE_ON0U);

    [MCU2_0] 13.268010 s: EthFwBoard_configTorrentClks
    [MCU2_0] 13.269002 s: PMLIBClkRateSet failed for clock Id = 6
    [MCU2_0] 13.269045 s: Assertion @ Line: 188 in enet_apputils_k3.c: BFALSE : failed !!!

    Best Regards, 
     jun
  • Hi,

    [MCU2_0] 13.268010 s: EthFwBoard_configTorrentClks
    [MCU2_0] 13.269002 s: PMLIBClkRateSet failed for clock Id = 6
    [MCU2_0] 13.269045 s: Assertion @ Line: 188 in enet_apputils_k3.c: BFALSE : failed !!!

    Can you please confirm, SerDes1 is enabled at u-boot, i.e., before MCU2_0 owning SerDes1? By default, Serdes1 is enabled at U-Boot for PCIe functionality from the TI SDK.

    To confirm this, can you check just by invoking the below alone without EnetAppUtils_clkRateSet from the SerDes torrent clock configuration?
    EnetAppUtils_setDeviceState(moduleIdTISCI_MSG_VALUE_DEVICE_SW_STATE_ON0U);
    If the above request fails, then SerDes1 is already enabled and owned by another core, mostly the A72 core.

    We haven't observed any errors on the TI EVM for SerDes2, as it is only enabled at MCU2_0 ETHFW.

    Best Regards,
    Sudheer

  • Hi

      There is no error reported when only calling EnetAppUtils_setDeviceState(moduleIdTISCI_MSG_VALUE_DEVICE_SW_STATE_ON0U);
    Best Regards, 
     jun

  • Hi,

      There is no error reported when only calling EnetAppUtils_setDeviceState(moduleIdTISCI_MSG_VALUE_DEVICE_SW_STATE_ON0U);

    Can you please share the U-Boot and Linux log to check if SerDes1 is already enabled or not?

    Also, can you check with the below once?
    EnetAppUtils_setDeviceState(moduleId,TISCI_MSG_VALUE_DEVICE_HW_STATE_OFF0U);


    Best Regards,
    Sudheer

  • HI.
      SerDes1 
     called EnetAppUtils_setDeviceState(moduleId,TISCI_MSG_VALUE_DEVICE_HW_STATE_OFF0U);
    mcu2_0 log:

    [MCU2_0] 13.001808 s: ETHFW: Init ... !!!
    [MCU2_0] 13.002277 s: EthFwBoard_configTorrentClks 2.5Gbps test.
    [MCU2_0] 13.002324 s: TISCI_DEV_SERDES_10G1 405 clkId 6 clkRateHz 156250000
    [MCU2_1] 4.179808 s: CIO: Init ... Done !!!
    [MCU2_1] 4.179859 s: ### CPU Frequency = 1000000000 Hz
    [MCU2_1] 4.179883 s: CPU is running FreeRTOS
    [MCU2_1] 4.179899 s: APP: Init ... !!!
    [MCU2_1] 4.179930 s: SCICLIENT: Init ... !!!
    [MCU2_1] 4.180070 s: SCICLIENT: DMSC FW version [9.0.6-
    ....
    C7x_4 ] 13.012821 s: IPC: Echo status: mpu1_0[x] mcu2_0[x] mcu2_1[P] mcu3_0[P] mcu3_1[P] mcu4_0[x] mcu4_1[P] c7x_1[P] c7x_2[P] c7x_3[P] c7x_4[s]
    [C7x_4 ] 13.029930 s: IPC: Echo status: mpu1_0[x] mcu2_0[x] mcu2_1[P] mcu3_0[P] mcu3_1[P] mcu4_0[P] mcu4_1[P] c7x_1[P] c7x_2[P] c7x_3[P] c7x_4[s]
    [MCU2_0] 29.163640 s: [FATAL]: Core has Aborted!!!
    [MCU2_0] DFAR =0x81a6 DFSR =0x8
    [MCU2_0] 29.163675 s: IFAR =0x0 IFSR =0x0
    [MCU2_0] 29.163693 s: CPSR =0x20080197 SP =0xa3ffffe0
    [MCU2_0] 29.163713 s: LR =0x2008001f R0 =0x2008001f
    [MCU2_0] 29.163732 s: R1 =0x0 R2 =0x81a6
    [MCU2_0] 29.163748 s: R3 =0x100 R4 =0xa32f93ff
    [MCU2_0] 29.163765 s: R5 =0x81a6 R6 =0x2
    [MCU2_0] 29.163781 s: R7 =0xa2fcdb78 R8 =0x4a
    [MCU2_0] 29.163798 s: R9 =0xffffffff R10 =0xa2100000
    [MCU2_0] 29.163817 s: R11 =0xa33e33b4 R12 =0xa32f93f8

    uboot kernel log:|

    U-Boot SPL 2023.04-gbd74e615a6 (Sep 06 2023 - 10:09:25 +0000)
    EEPROM not available at 0x50, trying to read at 0x51
    Reading on-board EEPROM at 0x51 failed -121
    SYSFW ABI: 3.1 (firmware rev 0x0009 '9.0.6--v09.00.06 (Kool Koala)')
    SPL initial stack usage: 13424 bytes
    Trying to boot from SPI
    Warning: Detected image signing certificate on GP device. Skipping certificate to prevent boot failure. This will fail if the image was also encrypted
    Warning: Detected image signing certificate on GP device. Skipping certificate to prevent boot failure. This will fail if the image was also encrypted
    Warning: Detected image signing certificate on GP device. Skipping certificate to prevent boot failure. This will fail if the image was also encrypted
    Warning: Detected image signing certificate on GP device. Skipping certificate to prevent boot failure. This will fail if the image was also encrypted
    Warning: Detected image signing certificate on GP device. Skipping certificate to prevent boot failure. This will fail if the image was also encrypted
    Loading Environment from nowhere... OK
    Starting ATF on ARM64 core...
    
    NOTICE:  BL31: v2.11.0(release):v2.11.0-906-g58b25570c9-dirty
    NOTICE:  BL31: Built : 04:20:32, Nov  1 2024
    NOTICE:  Upgrade Firmwares for Power off functionality
    ERROR:   Failed to get response (-19)
    ERROR:   Transfer send failed (-19)
    ERROR:   Unable to query firmware capabilities (-19)
    I/TC: 
    I/TC: OP-TEE version: 4.4.0-dev (gcc version 13.3.0 (GCC)) #1 Fri Oct 18 17:45:27 UTC 2024 aarch64
    I/TC: WARNING: This OP-TEE configuration might be insecure!
    I/TC: WARNING: Please check https://optee.readthedocs.io/en/latest/architecture/porting_guidelines.html
    I/TC: Primary CPU initializing
    I/TC: GIC redistributor base address not provided
    I/TC: Assuming default GIC group status and modifier
    I/TC: SYSFW ABI: 3.1 (firmware rev 0x0009 '9.0.6--v09.00.06 (Kool Koala)')
    I/TC: Activated SA2UL device
    I/TC: Fixing SA2UL firewall owner for GP device
    I/TC: Enabled firewalls for SA2UL TRNG device
    I/TC: SA2UL TRNG initialized
    I/TC: SA2UL Drivers initialized
    I/TC: HUK Initialized
    I/TC: Primary CPU switching to normal world boot
    
    U-Boot SPL 2024.04-ti-ga970f6e51043 (Nov 13 2024 - 14:26:23 +0000)
    SYSFW ABI: 3.1 (firmware rev 0x0009 '9.0.6--v09.00.06 (Kool Koala)')
    Trying to boot from SPI
    jedec_spi_nor flash@0: Software reset enable failed: -524
    k3-navss-ringacc ringacc@2b800000: Ring Accelerator probed rings:286, gp-rings[96,20] sci-dev-id:328
    k3-navss-ringacc ringacc@2b800000: dma-ring-reset-quirk: disabled
    Warning: Detected image signing certificate on GP device. Skipping certificate to prevent boot failure. This will fail if the image was also encrypted
    Warning: Detected image signing certificate on GP device. Skipping certificate to prevent boot failure. This will fail if the image was also encrypted
    
    
    U-Boot 2023.04-ti-ti-gf9b966c67473 (Nov 27 2023 - 16:11:04 +0000)
    
    SoC:   J784S4 SR1.0 GP
    Model: Texas Instruments J784S4 EVM
    
     0xaa 0x55 0x33 0xee 0x4a 0x37 0x38 0x34 0x53 0x34 0x58 0x2d 0x45 0x56 0x4d 0x00
     0x00 0x00 0x00 0x00 0x00 0x45 0x34 0x00 0x30 0x31 0x00 0x30 0x31 0x39 0x30 0x00
     0x01 0x70 0xff 0x76 0x1e 0xc3 0x10 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
     0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
     0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
     0x00 0x00 0x00 0x00
     ---------cp done
    Board: J784S4X-EVM rev E4
    
     0xaa 0x55 0x33 0xee 0x4a 0x37 0x38 0x34 0x53 0x34 0x58 0x2d 0x45 0x56 0x4d 0x00
     0x00 0x00 0x00 0x00 0x00 0x45 0x34 0x00 0x30 0x31 0x00 0x30 0x31 0x39 0x30 0x00
     0x01 0x70 0xff 0x76 0x1e 0xc3 0x10 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
     0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
     0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
     0x00 0x00 0x00 0x00
    DRAM:  2 GiB (effective 32 GiB)
    idle-statesCore:  94 devices, 35 uclasses, devicetree: separate
    Flash: 0 Bytes
    MMC:   mmc@4f80000: 0, mmc@4fb0000: 1
    Loading Environment from nowhere... OK
    In:    serial@2880000
    Out:   serial@2880000
    Err:   serial@2880000
    am65_cpsw_nuss ethernet@46000000: K3 CPSW: nuss_ver: 0x6BA02102 cpsw_ver: 0x6BA82102 ale_ver: 0x00293904 Ports:1 mdio_freq:1000000
    Net:   Could not get PHY for ethernet@46000000port@1: addr 0
    am65_cpsw_nuss_port ethernet@46000000port@1: phy_connect() failed
    No ethernet found.
    
    Hit any key to stop autoboot:  0 
    jedec_spi_nor flash@0: Software reset enable failed: -524
    k3-navss-ringacc ringacc@2b800000: Ring Accelerator probed rings:286, gp-rings[96,20] sci-dev-id:328
    k3-navss-ringacc ringacc@2b800000: dma-ring-reset-quirk: disabled
    SF: Detected mt25qu512a with page size 256 Bytes, erase size 64 KiB, total 64 MiB
    device 0 offset 0x680000, size 0x20000
    SF: 131072 bytes @ 0x680000 Read: OK
    Loaded env from qspi
    Importing environment from ospi ...
    k3_r5f_rproc r5f@41000000: Core 1 is already in use. No rproc commands work
    Device at ufs@4e84000 up at:cdns-ufs-pltfm ufs@4e84000: [RX, TX]: gear=[3, 3], lane[2, 2], pwr[FAST MODE, FAST MODE], rate = 2
    scanning bus for devices...
      Device 0: (0:0) Vendor: TOSHIBA Prod.: THGAF8G9T43BAIRB Rev: 0300
                Type: Hard Disk
                Capacity: 30531.9 MB = 29.8 GB (7816191 x 4096)
    Failed to load '/lib/firmware/j784s4-mcu-r5f0_1-fw'
    9812560 bytes read in 34 ms (275.2 MiB/s)
    Load Remote Processor 2 with data@addr=0x82000000 9812560 bytes: Success!
    322804 bytes read in 24 ms (12.8 MiB/s)
    Load Remote Processor 3 with data@addr=0x82000000 322804 bytes: Success!
    150752 bytes read in 24 ms (6 MiB/s)
    Load Remote Processor 4 with data@addr=0x82000000 150752 bytes: Success!
    150752 bytes read in 24 ms (6 MiB/s)
    Load Remote Processor 5 with data@addr=0x82000000 150752 bytes: Success!
    478460 bytes read in 25 ms (18.3 MiB/s)
    Load Remote Processor 6 with data@addr=0x82000000 478460 bytes: Success!
    150752 bytes read in 24 ms (6 MiB/s)
    Load Remote Processor 7 with data@addr=0x82000000 150752 bytes: Success!
    15470920 bytes read in 40 ms (368.9 MiB/s)
    Load Remote Processor 8 with data@addr=0x82000000 15470920 bytes: Success!
    15864024 bytes read in 40 ms (378.2 MiB/s)
    Load Remote Processor 9 with data@addr=0x82000000 15864024 bytes: Success!
    15475016 bytes read in 39 ms (378.4 MiB/s)
    Load Remote Processor 10 with data@addr=0x82000000 15475016 bytes: Success!
    15475016 bytes read in 40 ms (369 MiB/s)
    Load Remote Processor 11 with data@addr=0x82000000 15475016 bytes: Success!
    19444224 bytes read in 43 ms (431.2 MiB/s)
    115581 bytes read in 23 ms (4.8 MiB/s)
    Working FDT set to 88000000
    3943 bytes read in 23 ms (167 KiB/s)
    14954 bytes read in 24 ms (608.4 KiB/s)
    ## Flattened Device Tree blob at 88000000
       Booting using the fdt blob at 0x88000000
    Working FDT set to 88000000
    ERROR: reserving fdt memory region failed (addr=880000000 size=80000000 flags=4)
       Loading Device Tree to 000000008fee0000, end 000000008fffffff ... OK
    Working FDT set to 8fee0000
    
    Starting kernel ...
    
    
    [    0.000000] Booting Linux on physical CPU 0x0000000000 [0x411fd080]
    [    0.000000] Linux version 6.1.80-ti-g2e423244f8c0 (oe-user@oe-host) (aarch64-oe-linux-gcc (GCC) 11.4.0, GNU ld (GNU Binutils) 2.38.20220708) #1 SMP PREEMPT Mon N3
    [    0.000000] Machine model: Texas Instruments J784S4 EVM
    [    0.000000] earlycon: ns16550a0 at MMIO32 0x0000000002880000 (options '')
    [    0.000000] printk: bootconsole [ns16550a0] enabled
    [    0.000000] efi: UEFI not found.
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a0000000, size 1 MiB
    [    0.000000] OF: reserved mem: initialized node vision-apps-r5f-dma-memory@a0000000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a0100000, size 15 MiB
    [    0.000000] OF: reserved mem: initialized node vision-apps-r5f-memory@a0100000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a1000000, size 1 MiB
    [    0.000000] OF: reserved mem: initialized node vision-apps-r5f-dma-memory@a1000000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a1100000, size 15 MiB
    [    0.000000] OF: reserved mem: initialized node vision-apps-r5f-memory@a1100000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a2000000, size 1 MiB
    [    0.000000] OF: reserved mem: initialized node vision-apps-r5f-dma-memory@a2000000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a2100000, size 31 MiB
    [    0.000000] OF: reserved mem: initialized node vision-apps-r5f-memory@a2100000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a4000000, size 1 MiB
    [    0.000000] OF: reserved mem: initialized node vision-apps-r5f-dma-memory@a4000000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a4100000, size 15 MiB
    [    0.000000] OF: reserved mem: initialized node vision-apps-r5f-memory@a4100000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a5000000, size 1 MiB
    [    0.000000] OF: reserved mem: initialized node vision-apps-r5f-dma-memory@a5000000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a5100000, size 15 MiB
    [    0.000000] OF: reserved mem: initialized node vision-apps-r5f-memory@a5100000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a6000000, size 1 MiB
    [    0.000000] OF: reserved mem: initialized node vision-apps-r5f-dma-memory@a6000000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a6100000, size 15 MiB
    [    0.000000] OF: reserved mem: initialized node vision-apps-r5f-memory@a6100000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a7000000, size 1 MiB
    [    0.000000] OF: reserved mem: initialized node vision-apps-r5f-dma-memory@a7000000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a7100000, size 15 MiB
    [    0.000000] OF: reserved mem: initialized node vision-apps-r5f-memory@a7100000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a8000000, size 1 MiB
    [    0.000000] OF: reserved mem: initialized node vision-apps-r5f-dma-memory@a8000000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a8100000, size 15 MiB
    [    0.000000] OF: reserved mem: initialized node vision-apps-r5f-memory@a8100000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000ac000000, size 48 MiB
    [    0.000000] OF: reserved mem: initialized node vision-apps-rtos-ipc-memory-region@ac000000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000af000000, size 48 MiB
    [    0.000000] OF: reserved mem: initialized node vision-apps-dma-memory@af000000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000b2000000, size 1 MiB
    [    0.000000] OF: reserved mem: initialized node vision-apps-c71-dma-memory@b2000000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000b2100000, size 5 MiB
    [    0.000000] OF: reserved mem: initialized node vision-apps-c71_0-memory@b2100000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000b4000000, size 1 MiB
    [    0.000000] OF: reserved mem: initialized node vision-apps-c71_1-dma-memory@b4000000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000b4100000, size 5 MiB
    [    0.000000] OF: reserved mem: initialized node vision-apps-c71_1-memory@b4100000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000b6000000, size 1 MiB
    [    0.000000] OF: reserved mem: initialized node vision-apps-c71_2-dma-memory@b6000000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000b6100000, size 5 MiB
    [    0.000000] OF: reserved mem: initialized node vision-apps-c71_2-memory@b6100000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000b8000000, size 1 MiB
    [    0.000000] OF: reserved mem: initialized node vision-apps-c71_3-dma-memory@b8000000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000b8100000, size 5 MiB
    [    0.000000] OF: reserved mem: initialized node vision-apps-c71_3-memory@b8100000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000ba000000, size 64 MiB
    [    0.000000] OF: reserved mem: initialized node vision-apps-core-heap-memory-lo@ba000000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000be000000, size 8 MiB
    [    0.000000] OF: reserved mem: initialized node vision-apps-r5f-virtual-eth-queues@be000000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000be800000, size 24 MiB
    [    0.000000] OF: reserved mem: initialized node vision-apps-r5f-virtual-eth-buffers@be800000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x0000000880000000, size 2048 MiB
    [    0.000000] OF: reserved mem: initialized node vision-apps-core-heap-memory-hi@880000000, compatible id shared-dma-pool
    [    0.000000] OF: reserved mem: initialized node vision_apps_shared-memories, compatible id dma-heap-carveout
    [    0.000000] Reserved memory: created CMA memory pool at 0x0000000980000000, size 1792 MiB
    [    0.000000] OF: reserved mem: initialized node linux-cma-buffers@980000000, compatible id shared-dma-pool
    [    0.000000] Zone ranges:
    [    0.000000]   DMA      [mem 0x0000000080000000-0x00000000ffffffff]
    [    0.000000]   DMA32    empty
    [    0.000000]   Normal   [mem 0x0000000100000000-0x0000000fffffffff]
    [    0.000000] Movable zone start for each node
    [    0.000000] Early memory node ranges
    [    0.000000]   node   0: [mem 0x0000000080000000-0x000000009e7fffff]
    [    0.000000]   node   0: [mem 0x000000009e800000-0x00000000a8ffffff]
    [    0.000000]   node   0: [mem 0x00000000a9000000-0x00000000abffffff]
    [    0.000000]   node   0: [mem 0x00000000ac000000-0x00000000b2603fff]
    [    0.000000]   node   0: [mem 0x00000000b2604000-0x00000000b3ffffff]
    [    0.000000]   node   0: [mem 0x00000000b4000000-0x00000000b4603fff]
    [    0.000000]   node   0: [mem 0x00000000b4604000-0x00000000b5ffffff]
    [    0.000000]   node   0: [mem 0x00000000b6000000-0x00000000b6603fff]
    [    0.000000]   node   0: [mem 0x00000000b6604000-0x00000000b7ffffff]
    [    0.000000]   node   0: [mem 0x00000000b8000000-0x00000000b8603fff]
    [    0.000000]   node   0: [mem 0x00000000b8604000-0x00000000b9ffffff]
    [    0.000000]   node   0: [mem 0x00000000ba000000-0x00000000bfffffff]
    [    0.000000]   node   0: [mem 0x00000000c0000000-0x00000000ffffffff]
    [    0.000000]   node   0: [mem 0x0000000880000000-0x00000008ffffffff]
    [    0.000000]   node   0: [mem 0x0000000900000000-0x0000000fffffffff]
    [    0.000000] Initmem setup node 0 [mem 0x0000000080000000-0x0000000fffffffff]
    [    0.000000] psci: probing for conduit method from DT.
    [    0.000000] psci: PSCIv1.1 detected in firmware.
    [    0.000000] psci: Using standard PSCI v0.2 function IDs
    [    0.000000] psci: Trusted OS migration not required
    [    0.000000] psci: SMC Calling Convention v1.5
    [    0.000000] percpu: Embedded 20 pages/cpu s41064 r8192 d32664 u81920
    [    0.000000] pcpu-alloc: s41064 r8192 d32664 u81920 alloc=20*4096
    [    0.000000] pcpu-alloc: [0] 0 [0] 1 [0] 2 [0] 3 [0] 4 [0] 5 [0] 6 [0] 7 
    [    0.000000] Detected PIPT I-cache on CPU0
    [    0.000000] CPU features: detected: GIC system register CPU interface
    [    0.000000] CPU features: detected: Spectre-v3a
    [    0.000000] CPU features: detected: Spectre-BHB
    [    0.000000] CPU features: detected: ARM erratum 1742098
    [    0.000000] CPU features: detected: ARM errata 1165522, 1319367, or 1530923
    [    0.000000] alternatives: applying boot alternatives
    [    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 8257536
    [    0.000000] Kernel command line: console=ttyS2,115200n8 earlycon=ns16550a,mmio32,0x02880000 root=/dev/sda1 rootwait
    [    0.000000] Dentry cache hash table entries: 4194304 (order: 13, 33554432 bytes, linear)
    [    0.000000] Inode-cache hash table entries: 2097152 (order: 12, 16777216 bytes, linear)
    [    0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off
    [    0.000000] software IO TLB: area num 8.
    [    0.000000] software IO TLB: mapped [mem 0x00000000fbfff000-0x00000000fffff000] (64MB)
    [    0.000000] Memory: 27524624K/33554432K available (11776K kernel code, 1260K rwdata, 3828K rodata, 1984K init, 440K bss, 4194800K reserved, 1835008K cma-reserved)
    [    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=8, Nodes=1
    [    0.000000] rcu: Preemptible hierarchical RCU implementation.
    [    0.000000] rcu:     RCU event tracing is enabled.
    [    0.000000] rcu:     RCU restricting CPUs from NR_CPUS=256 to nr_cpu_ids=8.
    [    0.000000]  Trampoline variant of Tasks RCU enabled.
    [    0.000000]  Tracing variant of Tasks RCU enabled.
    [    0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 25 jiffies.
    [    0.000000] rcu: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=8
    [    0.000000] NR_IRQS: 64, nr_irqs: 64, preallocated irqs: 0
    [    0.000000] GICv3: [Firmware Bug]: GICR region 0x0000000001900000 has overlapping address
    [    0.000000] GICv3: GIC: Using split EOI/Deactivate mode
    [    0.000000] GICv3: 960 SPIs implemented
    [    0.000000] GICv3: 0 Extended SPIs implemented
    [    0.000000] Root IRQ handler: gic_handle_irq
    [    0.000000] GICv3: GICv3 features: 16 PPIs
    [    0.000000] GICv3: CPU0: found redistributor 0 region 0:0x0000000001900000
    [    0.000000] ITS [mem 0x01820000-0x0182ffff]
    [    0.000000] GIC: enabling workaround for ITS: Socionext Synquacer pre-ITS
    [    0.000000] ITS@0x0000000001820000: Devices Table too large, reduce ids 20->19
    [    0.000000] ITS@0x0000000001820000: allocated 524288 Devices @93c800000 (flat, esz 8, psz 64K, shr 0)
    [    0.000000] ITS: using cache flushing for cmd queue
    [    0.000000] GICv3: using LPI property table @0x000000093c050000
    [    0.000000] GIC: using cache flushing for LPI property table
    [    0.000000] GICv3: CPU0: using allocated LPI pending table @0x000000093c060000
    [    0.000000] rcu: srcu_init: Setting srcu_struct sizes based on contention.
    [    0.000000] arch_timer: cp15 timer(s) running at 200.00MHz (phys).
    [    0.000000] clocksource: arch_sys_counter: mask: 0x3ffffffffffffff max_cycles: 0x2e2049d3e8, max_idle_ns: 440795210634 ns
    [    0.000000] sched_clock: 58 bits at 200MHz, resolution 5ns, wraps every 4398046511102ns
    [    0.008417] Console: colour dummy device 80x25
    [    0.012987] Calibrating delay loop (skipped), value calculated using timer frequency.. 400.00 BogoMIPS (lpj=800000)
    [    0.023658] pid_max: default: 32768 minimum: 301
    [    0.028395] LSM: Security Framework initializing
    [    0.033210] Mount-cache hash table entries: 65536 (order: 7, 524288 bytes, linear)
    [    0.041030] Mountpoint-cache hash table entries: 65536 (order: 7, 524288 bytes, linear)
    [    0.050107] cblist_init_generic: Setting adjustable number of callback queues.
    [    0.057502] cblist_init_generic: Setting shift to 3 and lim to 1.
    [    0.063764] cblist_init_generic: Setting adjustable number of callback queues.
    [    0.071149] cblist_init_generic: Setting shift to 3 and lim to 1.
    [    0.077451] rcu: Hierarchical SRCU implementation.
    [    0.082348] rcu:     Max phase no-delay instances is 1000.
    [    0.087827] Platform MSI: msi-controller@1820000 domain created
    [    0.094014] PCI/MSI: /bus@100000/interrupt-controller@1800000/msi-controller@1820000 domain created
    [    0.103442] EFI services will not be available.
    [    0.108268] smp: Bringing up secondary CPUs ...
    [    0.121331] Detected PIPT I-cache on CPU1
    [    0.121388] GICv3: CPU1: found redistributor 1 region 0:0x0000000001920000
    [    0.121402] GICv3: CPU1: using allocated LPI pending table @0x000000093c070000
    [    0.121432] CPU1: Booted secondary processor 0x0000000001 [0x411fd080]
    [    0.129881] Detected PIPT I-cache on CPU2
    [    0.129924] GICv3: CPU2: found redistributor 2 region 0:0x0000000001940000
    [    0.129937] GICv3: CPU2: using allocated LPI pending table @0x000000093c080000
    [    0.129960] CPU2: Booted secondary processor 0x0000000002 [0x411fd080]
    [    0.138364] Detected PIPT I-cache on CPU3
    [    0.138407] GICv3: CPU3: found redistributor 3 region 0:0x0000000001960000
    [    0.138420] GICv3: CPU3: using allocated LPI pending table @0x000000093c090000
    [    0.138443] CPU3: Booted secondary processor 0x0000000003 [0x411fd080]
    [    0.146891] Detected PIPT I-cache on CPU4
    [    0.146971] GICv3: CPU4: found redistributor 100 region 0:0x0000000001980000
    [    0.146985] GICv3: CPU4: using allocated LPI pending table @0x000000093c0a0000
    [    0.147016] CPU4: Booted secondary processor 0x0000000100 [0x411fd080]
    [    0.155473] Detected PIPT I-cache on CPU5
    [    0.155521] GICv3: CPU5: found redistributor 101 region 0:0x00000000019a0000
    [    0.155534] GICv3: CPU5: using allocated LPI pending table @0x000000093c0b0000
    [    0.155558] CPU5: Booted secondary processor 0x0000000101 [0x411fd080]
    [    0.163985] Detected PIPT I-cache on CPU6
    [    0.164037] GICv3: CPU6: found redistributor 102 region 0:0x00000000019c0000
    [    0.164051] GICv3: CPU6: using allocated LPI pending table @0x000000093c0c0000
    [    0.164074] CPU6: Booted secondary processor 0x0000000102 [0x411fd080]
    [    0.172496] Detected PIPT I-cache on CPU7
    [    0.172547] GICv3: CPU7: found redistributor 103 region 0:0x00000000019e0000
    [    0.172560] GICv3: CPU7: using allocated LPI pending table @0x000000093c0d0000
    [    0.172583] CPU7: Booted secondary processor 0x0000000103 [0x411fd080]
    [    0.172627] smp: Brought up 1 node, 8 CPUs
    [    0.353602] SMP: Total of 8 processors activated.
    [    0.358407] CPU features: detected: 32-bit EL0 Support
    [    0.363663] CPU features: detected: CRC32 instructions
    [    0.368954] CPU: All CPU(s) started at EL2
    [    0.373143] alternatives: applying system-wide alternatives
    [    0.379807] devtmpfs: initialized
    [    0.393249] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns
    [    0.403226] futex hash table entries: 2048 (order: 5, 131072 bytes, linear)
    [    0.434287] pinctrl core: initialized pinctrl subsystem
    [    0.439936] DMI not present or invalid.
    [    0.444181] NET: Registered PF_NETLINK/PF_ROUTE protocol family
    [    0.451484] DMA: preallocated 4096 KiB GFP_KERNEL pool for atomic allocations
    [    0.459509] DMA: preallocated 4096 KiB GFP_KERNEL|GFP_DMA pool for atomic allocations
    [    0.468231] DMA: preallocated 4096 KiB GFP_KERNEL|GFP_DMA32 pool for atomic allocations
    [    0.476462] audit: initializing netlink subsys (disabled)
    [    0.482073] audit: type=2000 audit(0.340:1): state=initialized audit_enabled=0 res=1
    [    0.482268] thermal_sys: Registered thermal governor 'step_wise'
    [    0.489992] thermal_sys: Registered thermal governor 'power_allocator'
    [    0.496211] cpuidle: using governor menu
    [    0.506938] hw-breakpoint: found 6 breakpoint and 4 watchpoint registers.
    [    0.513960] ASID allocator initialised with 65536 entries
    [    0.527636] platform a40000.pinctrl: Fixed dependency cycle(s) with /bus@100000/pinctrl@a40000/mcu-cpsw-cpts
    [    0.539665] KASLR disabled due to lack of seed
    [    0.547049] HugeTLB: registered 1.00 GiB page size, pre-allocated 0 pages
    [    0.553997] HugeTLB: 0 KiB vmemmap can be freed for a 1.00 GiB page
    [    0.560402] HugeTLB: registered 32.0 MiB page size, pre-allocated 0 pages
    [    0.567337] HugeTLB: 0 KiB vmemmap can be freed for a 32.0 MiB page
    [    0.573739] HugeTLB: registered 2.00 MiB page size, pre-allocated 0 pages
    [    0.580673] HugeTLB: 0 KiB vmemmap can be freed for a 2.00 MiB page
    [    0.587075] HugeTLB: registered 64.0 KiB page size, pre-allocated 0 pages
    [    0.594010] HugeTLB: 0 KiB vmemmap can be freed for a 64.0 KiB page
    [    0.601085] k3-chipinfo 43000014.chipid: Family:J784S4 rev:SR1.0 JTAGID[0x0bb8002f] Detected
    [    0.610645] iommu: Default domain type: Translated 
    [    0.615630] iommu: DMA domain TLB invalidation policy: strict mode 
    [    0.622150] SCSI subsystem initialized
    [    0.626047] libata version 3.00 loaded.
    [    0.626119] usbcore: registered new interface driver usbfs
    [    0.631739] usbcore: registered new interface driver hub
    [    0.637178] usbcore: registered new device driver usb
    [    0.642532] pps_core: LinuxPPS API ver. 1 registered
    [    0.647603] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
    [    0.656940] PTP clock support registered
    [    0.661022] EDAC MC: Ver: 3.0.0
    [    0.664687] FPGA manager framework
    [    0.668193] Advanced Linux Sound Architecture Driver Initialized.
    [    0.674797] clocksource: Switched to clocksource arch_sys_counter
    [    0.681132] VFS: Disk quotas dquot_6.6.0
    [    0.685156] VFS: Dquot-cache hash table entries: 512 (order 0, 4096 bytes)
    [    0.695138] Carveout Heap: Exported 960 MiB at 0x0000000900000000
    [    0.701415] NET: Registered PF_INET protocol family
    [    0.706742] IP idents hash table entries: 262144 (order: 9, 2097152 bytes, linear)
    [    0.719604] tcp_listen_portaddr_hash hash table entries: 16384 (order: 6, 262144 bytes, linear)
    [    0.728628] Table-perturb hash table entries: 65536 (order: 6, 262144 bytes, linear)
    [    0.736555] TCP established hash table entries: 262144 (order: 9, 2097152 bytes, linear)
    [    0.745642] TCP bind hash table entries: 65536 (order: 9, 2097152 bytes, linear)
    [    0.754050] TCP: Hash tables configured (established 262144 bind 65536)
    [    0.760925] UDP hash table entries: 16384 (order: 7, 524288 bytes, linear)
    [    0.768276] UDP-Lite hash table entries: 16384 (order: 7, 524288 bytes, linear)
    [    0.776147] NET: Registered PF_UNIX/PF_LOCAL protocol family
    [    0.782195] RPC: Registered named UNIX socket transport module.
    [    0.788249] RPC: Registered udp transport module.
    [    0.793053] RPC: Registered tcp transport module.
    [    0.797856] RPC: Registered tcp NFSv4.1 backchannel transport module.
    [    0.804440] NET: Registered PF_XDP protocol family
    [    0.809343] PCI: CLS 0 bytes, default 64
    [    0.813938] hw perfevents: enabled with armv8_cortex_a72 PMU driver, 7 counters available
    [    0.823190] Initialise system trusted keyrings
    [    0.827834] workingset: timestamp_bits=46 max_order=23 bucket_order=0
    [    0.836361] squashfs: version 4.0 (2009/01/31) Phillip Lougher
    [    0.842553] NFS: Registering the id_resolver key type
    [    0.847730] Key type id_resolver registered
    [    0.852001] Key type id_legacy registered
    [    0.856118] nfs4filelayout_init: NFSv4 File Layout Driver Registering...
    [    0.862966] nfs4flexfilelayout_init: NFSv4 Flexfile Layout Driver Registering...
    [    0.889740] Key type asymmetric registered
    [    0.893924] Asymmetric key parser 'x509' registered
    [    0.898931] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 245)
    [    0.906557] io scheduler mq-deadline registered
    [    0.911189] io scheduler kyber registered
    [    0.917509] pinctrl-single 4301c000.pinctrl: 13 pins, size 52
    [    0.923489] pinctrl-single 4301c038.pinctrl: 11 pins, size 44
    [    0.929511] pinctrl-single 4301c068.pinctrl: 72 pins, size 288
    [    0.935724] pinctrl-single 4301c190.pinctrl: 1 pins, size 4
    [    0.941544] pinctrl-single 11c000.pinctrl: 72 pins, size 288
    [    0.947942] pinctrl-single a40000.pinctrl: 512 pins, size 2048
    [    0.957368] Serial: 8250/16550 driver, 12 ports, IRQ sharing enabled
    [    0.969067] loop: module loaded
    [    0.972940] megasas: 07.719.03.00-rc1
    [    0.978179] tun: Universal TUN/TAP device driver, 1.6
    [    0.983721] VFIO - User Level meta-driver version: 0.3
    [    0.989332] usbcore: registered new interface driver usb-storage
    [    0.995787] i2c_dev: i2c /dev entries driver
    [    1.000707] sdhci: Secure Digital Host Controller Interface driver
    [    1.007024] sdhci: Copyright(c) Pierre Ossman
    [    1.011588] sdhci-pltfm: SDHCI platform and OF driver helper
    [    1.017899] ledtrig-cpu: registered to indicate activity on CPUs
    [    1.024130] SMCCC: SOC_ID: ARCH_SOC_ID not implemented, skipping ....
    [    1.030871] usbcore: registered new interface driver usbhid
    [    1.036564] usbhid: USB HID core driver
    [    1.040976] optee: probing for conduit method.
    [    1.045535] optee: revision 4.4 (8f645256efc0dc66)
    [    1.061929] optee: dynamic shared memory is enabled
    [    1.072024] optee: initialized driver
    [    1.076770] Initializing XFRM netlink socket
    [    1.081150] NET: Registered PF_PACKET protocol family
    [    1.086356] Key type dns_resolver registered
    [    1.090879] registered taskstats version 1
    [    1.095088] Loading compiled-in X.509 certificates
    [    1.106192] ti-sci 44083000.system-controller: ABI: 3.1 (firmware rev 0x0009 '9.0.6--v09.00.06 (Kool Koala)')
    [    1.155002] omap_i2c 42120000.i2c: bus 1 rev0.12 at 400 kHz
    [    1.161296] pca953x 0-0021: supply vcc not found, using dummy regulator
    [    1.168121] pca953x 0-0021: using no AI
    [    1.195385] omap_i2c 2000000.i2c: bus 0 rev0.12 at 400 kHz
    [    1.201327] omap_i2c 2010000.i2c: bus 2 rev0.12 at 400 kHz
    [    1.207256] omap_i2c 2030000.i2c: bus 3 rev0.12 at 400 kHz
    [    1.213262] pca953x 4-0074: supply vcc not found, using dummy regulator
    [    1.220069] pca953x 4-0074: using no AI
    [    1.247329] omap_i2c 2040000.i2c: bus 4 rev0.12 at 400 kHz
    [    1.253246] omap_i2c 2050000.i2c: bus 5 rev0.12 at 400 kHz
    [    1.259033] ti-sci-intr 42200000.interrupt-controller: Interrupt Router 177 domain created
    [    1.267567] ti-sci-intr bus@100000:interrupt-controller@a00000: Interrupt Router 10 domain created
    [    1.276813] ti-sci-intr 310e0000.interrupt-controller: Interrupt Router 283 domain created
    [    1.285444] ti-sci-inta 33d00000.msi-controller: Interrupt Aggregator domain 321 created
    [    1.297465] ti-udma 311a0000.dma-controller: Number of rings: 48
    [    1.304198] ti-udma 311a0000.dma-controller: Channels: 24 (bchan: 0, tchan: 8, rchan: 16)
    [    1.313343] k3-ringacc 2b800000.ringacc: Ring Accelerator probed rings:286, gp-rings[96,20] sci-dev-id:328
    [    1.323220] k3-ringacc 2b800000.ringacc: dma-ring-reset-quirk: disabled
    [    1.329980] k3-ringacc 2b800000.ringacc: RA Proxy rev. 66349100, num_proxies:64
    [    1.338851] k3-ringacc 3c000000.ringacc: Ring Accelerator probed rings:1024, gp-rings[878,128] sci-dev-id:315
    [    1.348992] k3-ringacc 3c000000.ringacc: dma-ring-reset-quirk: disabled
    [    1.355750] k3-ringacc 3c000000.ringacc: RA Proxy rev. 66349100, num_proxies:64
    [    1.363629] 40a00000.serial: ttyS1 at MMIO 0x40a00000 (irq = 218, base_baud = 6000000) is a 8250
    [    1.373046] 2880000.serial: ttyS2 at MMIO 0x2880000 (irq = 219, base_baud = 3000000) is a 8250
    [    1.381900] printk: console [ttyS2] enabled
    [    1.390341] printk: bootconsole [ns16550a0] disabled
    [    1.438802] davinci_mdio 46000f00.mdio: davinci mdio revision 9.7, bus freq 1000000
    [    1.446871] mdio_bus 46000f00.mdio: MDIO device at address 0 is missing.
    [    1.453576] am65-cpsw-nuss 46000000.ethernet: initializing am65 cpsw nuss version 0x6BA02102, cpsw version 0x6BA82102 Ports: 2 quirks:00000000
    [    1.466444] am65-cpsw-nuss 46000000.ethernet: initialized cpsw ale version 1.4
    [    1.473653] am65-cpsw-nuss 46000000.ethernet: ALE Table size 64
    [    1.479803] pps pps0: new PPS source ptp0
    [    1.483936] am65-cpsw-nuss 46000000.ethernet: CPTS ver 0x4e8a010b, freq:500000000, add_val:1 pps:1
    [    1.494111] am65-cpts 310d0000.cpts: CPTS ver 0x4e8a010c, freq:250000000, add_val:3 pps:0
    [    1.502805] cdns-ufshcd 4e84000.ufs: ufshcd_populate_vreg: Unable to find vdd-hba-supply regulator, assuming enabled
    [    1.513307] cdns-ufshcd 4e84000.ufs: ufshcd_populate_vreg: Unable to find vcc-supply regulator, assuming enabled
    [    1.523459] cdns-ufshcd 4e84000.ufs: ufshcd_populate_vreg: Unable to find vccq-supply regulator, assuming enabled
    [    1.533698] cdns-ufshcd 4e84000.ufs: ufshcd_populate_vreg: Unable to find vccq2-supply regulator, assuming enabled
    [    1.544632] scsi host0: ufshcd
    [    1.549890] mmc0: CQHCI version 5.10
    [    1.587180] scsi 0:0:0:49488: Well-known LUN    TOSHIBA  THGAF8G9T43BAIRB 0300 PQ: 0 ANSI: 6
    [    1.593382] mmc0: SDHCI controller on 4f80000.mmc [4f80000.mmc] using ADMA 64-bit
    [    1.596347] scsi 0:0:0:49476: Well-known LUN    TOSHIBA  THGAF8G9T43BAIRB 0300 PQ: 0 ANSI: 6
    [    1.612135] cdns-ufshcd 4e84000.ufs: ufshcd_scsi_add_wlus: BOOT WLUN not found
    [    1.619673] scsi 0:0:0:0: Direct-Access     TOSHIBA  THGAF8G9T43BAIRB 0300 PQ: 0 ANSI: 6
    [    1.628458] sd 0:0:0:0: [sda] 7816192 4096-byte logical blocks: (32.0 GB/29.8 GiB)
    [    1.636047] sd 0:0:0:0: [sda] Write Protect is off
    [    1.640832] sd 0:0:0:0: [sda] Mode Sense: 00 32 00 10
    [    1.640886] sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, supports DPO and FUA
    [    1.649399] sd 0:0:0:0: [sda] Preferred minimum I/O size 65536 bytes
    [    1.655745] sd 0:0:0:0: [sda] Optimal transfer size 65536 bytes
    [    1.662641]  sda: sda1
    [    1.665109] sd 0:0:0:0: [sda] Attached SCSI disk
    [    1.837555] tps6594-rtc tps6594-rtc.4.auto: registered as rtc0
    [    1.843512] tps6594-rtc tps6594-rtc.4.auto: hctosys: unable to read the hardware clock
    [    1.851742] omap-mailbox 31f80000.mailbox: omap mailbox rev 0x66fca100
    [    1.858520] omap-mailbox 31f81000.mailbox: omap mailbox rev 0x66fca100
    [    1.865292] omap-mailbox 31f82000.mailbox: omap mailbox rev 0x66fca100
    [    1.872065] omap-mailbox 31f83000.mailbox: omap mailbox rev 0x66fca100
    [    1.878839] omap-mailbox 31f84000.mailbox: omap mailbox rev 0x66fca100
    [    1.885616] omap-mailbox 31f85000.mailbox: omap mailbox rev 0x66fca100
    [    1.894036] ti-udma 285c0000.dma-controller: Channels: 22 (tchan: 11, rchan: 11, gp-rflow: 8)
    [    1.903965] ti-udma 31150000.dma-controller: Channels: 66 (tchan: 33, rchan: 33, gp-rflow: 16)
    [    2.315638] spi-nand: probe of spi0.0 failed with error -110
    [    2.323385] spi-nor spi1.0: mt25qu512a (65536 Kbytes)
    [    2.328477] 7 fixed-partitions partitions found on MTD device 47050000.spi.0
    [    2.335514] Creating 7 MTD partitions on "47050000.spi.0":
    [    2.340988] 0x000000000000-0x000000100000 : "qspi.tiboot3"
    [    2.347123] 0x000000100000-0x000000300000 : "qspi.tispl"
    [    2.352975] 0x000000300000-0x000000700000 : "qspi.u-boot"
    [    2.358862] 0x000000700000-0x000000740000 : "qspi.env"
    [    2.364509] 0x000000740000-0x000000780000 : "qspi.env.backup"
    [    2.370775] 0x000000800000-0x000003fc0000 : "qspi.rootfs"
    [    2.376669] 0x000003fc0000-0x000004000000 : "qspi.phypattern"
    [    2.422802] davinci_mdio 46000f00.mdio: davinci mdio revision 9.7, bus freq 1000000
    [    2.430872] mdio_bus 46000f00.mdio: MDIO device at address 0 is missing.
    [    2.437575] am65-cpsw-nuss 46000000.ethernet: initializing am65 cpsw nuss version 0x6BA02102, cpsw version 0x6BA82102 Ports: 2 quirks:00000000
    [    2.450439] am65-cpsw-nuss 46000000.ethernet: initialized cpsw ale version 1.4
    [    2.457646] am65-cpsw-nuss 46000000.ethernet: ALE Table size 64
    [    2.463804] pps pps0: new PPS source ptp1
    [    2.467943] am65-cpsw-nuss 46000000.ethernet: CPTS ver 0x4e8a010b, freq:500000000, add_val:1 pps:1
    [    2.477870] am65-cpsw-nuss 46000000.ethernet: set new flow-id-base 48
    [    2.486448] debugfs: Directory 'pd:74' with parent 'pm_genpd' already present!
    [    2.493709] debugfs: Directory 'pd:73' with parent 'pm_genpd' already present!
    [    2.500939] debugfs: Directory 'pd:72' with parent 'pm_genpd' already present!
    [    2.508618] debugfs: Directory 'pd:335' with parent 'pm_genpd' already present!
    [    2.515933] debugfs: Directory 'pd:333' with parent 'pm_genpd' already present!
    [    2.523247] debugfs: Directory 'pd:332' with parent 'pm_genpd' already present!
    [    2.539228] ALSA device list:
    [    2.542189]   No soundcards found.
    [    2.547135] EXT4-fs (sda1): INFO: recovery required on readonly filesystem
    [    2.554001] EXT4-fs (sda1): write access will be enabled during recovery
    [    2.582532] EXT4-fs (sda1): recovery complete
    [    2.587463] EXT4-fs (sda1): mounted filesystem with ordered data mode. Quota mode: none.
    [    2.595571] VFS: Mounted root (ext4 filesystem) readonly on device 8:1.
    [    2.604341] devtmpfs: mounted
    [    2.607999] Freeing unused kernel memory: 1984K
    [    2.612618] Run /sbin/init as init process
    [    2.616706]   with arguments:
    [    2.616708]     /sbin/init
    [    2.616709]   with environment:
    [    2.616711]     HOME=/
    [    2.616712]     TERM=linux
    [    2.651158] systemd[1]: System time before build time, advancing clock.
    [    2.668266] NET: Registered PF_INET6 protocol family
    [    2.673769] Segment Routing with IPv6
    [    2.677444] In-situ OAM (IOAM) with IPv6
    [    2.689710] systemd[1]: systemd 250.5+ running in system mode (+PAM -AUDIT -SELINUX -APPARMOR +IMA -SMACK +SECCOMP -GCRYPT -GNUTLS -OPENSSL +ACL +BLKID -CURL -EL)
    [    2.721194] systemd[1]: Detected architecture arm64.
    [    2.775090] systemd[1]: Hostname set to <j784s4-evm>.
    [    2.821553] systemd-sysv-generator[185]: SysV service '/etc/init.d/S20urandom' lacks a native systemd unit file. Automatically generating a unit file for compati.
    [    2.846065] systemd-sysv-generator[185]: SysV service '/etc/init.d/thermal-zone-init' lacks a native systemd unit file. Automatically generating a unit file for .
    [    2.870852] systemd-sysv-generator[185]: SysV service '/etc/init.d/S01logging' lacks a native systemd unit file. Automatically generating a unit file for compati.
    [    2.894883] systemd-sysv-generator[185]: SysV service '/etc/init.d/rcK' lacks a native systemd unit file. Automatically generating a unit file for compatibility..
    [    2.918273] systemd-sysv-generator[185]: SysV service '/etc/init.d/rcS' lacks a native systemd unit file. Automatically generating a unit file for compatibility..
    [    3.022721] systemd[1]: /etc/systemd/system/sync-clocks.service:11: Standard output type syslog is obsolete, automatically updating to journal. Please update you.
    [    3.062824] systemd[1]: Queued start job for default target Multi-User System.
    [    3.110255] systemd[1]: Created slice Slice /system/getty.
    [    3.132008] systemd[1]: Created slice Slice /system/modprobe.
    [    3.155854] systemd[1]: Created slice Slice /system/serial-getty.
    [    3.179709] systemd[1]: Created slice User and Session Slice.
    [    3.202950] systemd[1]: Started Dispatch Password Requests to Console Directory Watch.
    [    3.226901] systemd[1]: Started Forward Password Requests to Wall Directory Watch.
    [    3.250954] systemd[1]: Reached target Path Units.
    [    3.266853] systemd[1]: Reached target Remote File Systems.
    [    3.286842] systemd[1]: Reached target Slice Units.
    [    3.302852] systemd[1]: Reached target Swaps.
    [    3.344709] systemd[1]: Listening on RPCbind Server Activation Socket.
    [    3.366900] systemd[1]: Reached target RPC Port Mapper.
    [    3.389236] systemd[1]: Listening on Process Core Dump Socket.
    [    3.410951] systemd[1]: Listening on initctl Compatibility Named Pipe.
    [    3.435098] systemd[1]: Listening on Journal Audit Socket.
    [    3.455018] systemd[1]: Listening on Journal Socket (/dev/log).
    [    3.475034] systemd[1]: Listening on Journal Socket.
    [    3.491069] systemd[1]: Listening on Network Service Netlink Socket.
    [    3.515075] systemd[1]: Listening on udev Control Socket.
    [    3.534959] systemd[1]: Listening on udev Kernel Socket.
    [    3.554992] systemd[1]: Listening on User Database Manager Socket.
    [    3.595016] systemd[1]: Mounting Huge Pages File System...
    [    3.613032] systemd[1]: Mounting POSIX Message Queue File System...
    [    3.637037] systemd[1]: Mounting Kernel Debug File System...
    [    3.655010] systemd[1]: Kernel Trace File System was skipped because of a failed condition check (ConditionPathExists=/sys/kernel/tracing).
    [    3.670083] systemd[1]: Mounting Temporary Directory /tmp...
    [    3.689238] systemd[1]: Starting Create List of Static Device Nodes...
    [    3.712781] systemd[1]: Starting Load Kernel Module configfs...
    [    3.732901] systemd[1]: Starting Load Kernel Module drm...
    [    3.749069] systemd[1]: Starting Load Kernel Module fuse...
    [    3.754959] fuse: init (API version 7.37)
    [    3.770386] systemd[1]: Starting Start psplash boot splash screen...
    [    3.793524] systemd[1]: Starting RPC Bind...
    [    3.809206] systemd[1]: Starting File System Check on Root Device...
    [    3.834450] systemd[1]: Starting Journal Service...
    [    3.843120] systemd[1]: Starting Load Kernel Modules...
    [    3.851242] cryptodev: loading out-of-tree module taints kernel.
    [    3.860756] cryptodev: driver 1.12 loaded.
    [    3.862740] systemd[1]: Starting Generate network units from Kernel command line...
    [    3.889670] systemd[1]: Starting Coldplug All udev Devices...
    [    3.911313] systemd[1]: Started RPC Bind.
    [    3.927092] systemd[1]: Started Journal Service.
    [    4.255635] EXT4-fs (sda1): re-mounted. Quota mode: none.
    [    4.414706] systemd-journald[205]: Received client request to flush runtime journal.
    [    4.572975] audit: type=1334 audit(1651167746.920:2): prog-id=5 op=LOAD
    [    4.579599] audit: type=1334 audit(1651167746.928:3): prog-id=6 op=LOAD
    [    4.679728] random: crng init done
    [    4.706747] CAN device driver interface
    [    4.713937] mc: Linux media interface: v0.10
    [    4.721684] Error: Driver 'ti-j721e-ufs' is already registered, aborting...
    [    4.722150] j721e-pcie-host 2900000.pcie: host bridge /bus@100000/pcie@2900000 ranges:
    [    4.729761] videodev: Linux video capture interface: v2.00
    [    4.737441] j721e-pcie-host 2900000.pcie:       IO 0x0010001000..0x0010010fff -> 0x0010001000
    [    4.753603] j721e-pcie-host 2900000.pcie:      MEM 0x0010011000..0x0017ffffff -> 0x0010011000
    [    4.758639] k3-dsp-rproc 64800000.dsp: assigned reserved memory node vision-apps-c71-dma-memory@b2000000
    [    4.765004] j721e-pcie-host 2900000.pcie:   IB MEM 0x0000000000..0xffffffffffff -> 0x0000000000
    [    4.784611] k3-dsp-rproc 64800000.dsp: configured DSP for IPC-only mode
    [    4.791808] remoteproc remoteproc0: 64800000.dsp is available
    [    4.803013] remoteproc remoteproc0: attaching to 64800000.dsp
    [    4.815382] remoteproc remoteproc0: unsupported resource 65538
    [    4.821698] k3-dsp-rproc 64800000.dsp: DSP initialized in IPC-only mode
    [    4.823685] Error: Driver 'ti-j721e-ufs' is already registered, aborting...
    [    4.833611] rproc-virtio rproc-virtio.7.auto: assigned reserved memory node vision-apps-c71-dma-memory@b2000000
    [    4.864087] platform 41000000.r5f: R5F core may have been powered on by a different host, programmed state (0) != actual state (1)
    [    4.879030] platform 41000000.r5f: configured R5F for IPC-only mode
    [    4.885797] platform 41000000.r5f: assigned reserved memory node vision-apps-r5f-dma-memory@a0000000
    [    4.897745] remoteproc remoteproc1: 41000000.r5f is available
    [    4.898987] virtio_rpmsg_bus virtio0: rpmsg host is online
    [    4.903555] virtio_rpmsg_bus virtio0: creating channel rpmsg_chrdev addr 0xd
    [    4.906850] remoteproc remoteproc1: attaching to 41000000.r5f
    [    4.908494] platform 41000000.r5f: R5F core initialized in IPC-only mode
    [    4.908510] rproc-virtio rproc-virtio.8.auto: assigned reserved memory node vision-apps-r5f-dma-memory@a0000000
    [    4.909343] rproc-virtio rproc-virtio.7.auto: registered virtio0 (type 7)
    [    4.917041] virtio_rpmsg_bus virtio1: rpmsg host is online
    [    4.921809] remoteproc remoteproc0: remote processor 64800000.dsp is now attached
    [    4.921817] k3-dsp-rproc 64800000.dsp: register pm nitifiers in remoteproc mode
    [    4.928564] rproc-virtio rproc-virtio.8.auto: registered virtio1 (type 7)
    [    4.937804] virtio_rpmsg_bus virtio1: creating channel ti.ipc4.ping-pong addr 0xd
    [    4.939977] k3-dsp-rproc 65800000.dsp: assigned reserved memory node vision-apps-c71_1-dma-memory@b4000000
    [    4.940305] virtio_rpmsg_bus virtio1: creating channel rpmsg_chrdev addr 0xe
    [    4.945404] remoteproc remoteproc1: remote processor 41000000.r5f is now attached
    [    4.951336] k3-dsp-rproc 65800000.dsp: configured DSP for IPC-only mode
    [    4.978278] platform 5c00000.r5f: configured R5F for IPC-only mode
    [    4.984859] remoteproc remoteproc2: 65800000.dsp is available
    [    4.989827] platform 5c00000.r5f: assigned reserved memory node vision-apps-r5f-dma-memory@a2000000
    [    4.996751] remoteproc remoteproc2: attaching to 65800000.dsp
    [    4.997202] Error: Driver 'cdns-ufshcd' is already registered, aborting...
    [    4.997291] remoteproc remoteproc2: unsupported resource 65538
    [    4.997332] k3-dsp-rproc 65800000.dsp: DSP initialized in IPC-only mode
    [    4.997343] rproc-virtio rproc-virtio.9.auto: assigned reserved memory node vision-apps-c71_1-dma-memory@b4000000
    [    5.004382] virtio_rpmsg_bus virtio2: rpmsg host is online
    [    5.007298] remoteproc remoteproc3: 5c00000.r5f is available
    [    5.007347] remoteproc remoteproc3: attaching to 5c00000.r5f
    [    5.007464] m_can_platform 40528000.can: m_can device registered (irq=587, version=32)
    [    5.007836] virtio_rpmsg_bus virtio2: creating channel rpmsg_chrdev addr 0xd
    [    5.008029] platform 5c00000.r5f: R5F core initialized in IPC-only mode
    [    5.008104] rproc-virtio rproc-virtio.10.auto: assigned reserved memory node vision-apps-r5f-dma-memory@a2000000
    [    5.010478] m_can_platform 40568000.can: m_can device registered (irq=588, version=32)
    [    5.017966] virtio_rpmsg_bus virtio3: rpmsg host is online
    [    5.018201] m_can_platform 26a1000.can: m_can device registered (irq=589, version=32)
    [    5.023121] rproc-virtio rproc-virtio.9.auto: registered virtio2 (type 7)
    [    5.024541] virtio_rpmsg_bus virtio3: creating channel rpmsg_chrdev addr 0xd
    [    5.032080] rproc-virtio rproc-virtio.10.auto: registered virtio3 (type 7)
    [    5.037799] remoteproc remoteproc2: remote processor 65800000.dsp is now attached
    [    5.044637] remoteproc remoteproc3: remote processor 5c00000.r5f is now attached
    [    5.050494] k3-dsp-rproc 65800000.dsp: register pm nitifiers in remoteproc mode
    [    5.051038] k3-dsp-rproc 66800000.dsp: assigned reserved memory node vision-apps-c71_2-dma-memory@b6000000
    [    5.078616] platform 5d00000.r5f: configured R5F for IPC-only mode
    [    5.084733] k3-dsp-rproc 66800000.dsp: configured DSP for IPC-only mode
    [    5.092541] platform 5d00000.r5f: assigned reserved memory node vision-apps-r5f-dma-memory@a4000000
    [    5.099411] remoteproc remoteproc4: 66800000.dsp is available
    [    5.107502] remoteproc remoteproc5: 5d00000.r5f is available
    [    5.117094] remoteproc remoteproc4: attaching to 66800000.dsp
    [    5.124424] remoteproc remoteproc5: attaching to 5d00000.r5f
    [    5.129715] Error: Driver 'cdns-ufshcd' is already registered, aborting...
    [    5.129830] remoteproc remoteproc4: unsupported resource 65538
    [    5.129968] k3-dsp-rproc 66800000.dsp: DSP initialized in IPC-only mode
    [    5.129980] rproc-virtio rproc-virtio.11.auto: assigned reserved memory node vision-apps-c71_2-dma-memory@b6000000
    [    5.130309] virtio_rpmsg_bus virtio4: rpmsg host is online
    [    5.130323] rproc-virtio rproc-virtio.11.auto: registered virtio4 (type 7)
    [    5.130327] remoteproc remoteproc4: remote processor 66800000.dsp is now attached
    [    5.130331] k3-dsp-rproc 66800000.dsp: register pm nitifiers in remoteproc mode
    [    5.130755] k3-dsp-rproc 67800000.dsp: assigned reserved memory node vision-apps-c71_3-dma-memory@b8000000
    [    5.131861] k3-dsp-rproc 67800000.dsp: configured DSP for IPC-only mode
    [    5.132857] remoteproc remoteproc6: 67800000.dsp is available
    [    5.132900] remoteproc remoteproc6: attaching to 67800000.dsp
    [    5.133085] remoteproc remoteproc6: unsupported resource 65538
    [    5.133129] k3-dsp-rproc 67800000.dsp: DSP initialized in IPC-only mode
    [    5.133142] rproc-virtio rproc-virtio.12.auto: assigned reserved memory node vision-apps-c71_3-dma-memory@b8000000
    [    5.133489] virtio_rpmsg_bus virtio4: creating channel rpmsg_chrdev addr 0xd
    [    5.133547] virtio_rpmsg_bus virtio5: rpmsg host is online
    [    5.133571] rproc-virtio rproc-virtio.12.auto: registered virtio5 (type 7)
    [    5.133575] remoteproc remoteproc6: remote processor 67800000.dsp is now attached
    [    5.133579] k3-dsp-rproc 67800000.dsp: register pm nitifiers in remoteproc mode
    [    5.136713] virtio_rpmsg_bus virtio5: creating channel rpmsg_chrdev addr 0xd
    [    5.137728] platform 5d00000.r5f: R5F core initialized in IPC-only mode
    [    5.181475] omap_rng 4e10000.rng: Random Number Generator ver. 241b34c
    [    5.189409] m_can_platform 40568000.can mcu_mcan1: renamed from can1
    [    5.189930] rproc-virtio rproc-virtio.13.auto: assigned reserved memory node vision-apps-r5f-dma-memory@a4000000
    [    5.412846] virtio_rpmsg_bus virtio6: rpmsg host is online
    [    5.419119] virtio_rpmsg_bus virtio6: creating channel rpmsg_chrdev addr 0xd
    [    5.423543] rproc-virtio rproc-virtio.13.auto: registered virtio6 (type 7)
    [    5.437449] remoteproc remoteproc5: remote processor 5d00000.r5f is now attached
    [    5.438728] platform 5e00000.r5f: configured R5F for IPC-only mode
    [    5.451237] platform 5e00000.r5f: assigned reserved memory node vision-apps-r5f-dma-memory@a5000000
    [    5.460749] remoteproc remoteproc7: 5e00000.r5f is available
    [    5.466460] remoteproc remoteproc7: attaching to 5e00000.r5f
    [    5.472394] platform 5e00000.r5f: R5F core initialized in IPC-only mode
    [    5.479009] rproc-virtio rproc-virtio.14.auto: assigned reserved memory node vision-apps-r5f-dma-memory@a5000000
    [    5.489591] virtio_rpmsg_bus virtio7: rpmsg host is online
    [    5.495097] rproc-virtio rproc-virtio.14.auto: registered virtio7 (type 7)
    [    5.495631] virtio_rpmsg_bus virtio7: creating channel rpmsg_chrdev addr 0xd
    [    5.501974] remoteproc remoteproc7: remote processor 5e00000.r5f is now attached
    [    5.509154] platform 5f00000.r5f: configured R5F for IPC-only mode
    [    5.517148] m_can_platform 40528000.can mcu_mcan0: renamed from can0
    [    5.522946] platform 5f00000.r5f: assigned reserved memory node vision-apps-r5f-dma-memory@a6000000
    [    5.538618] remoteproc remoteproc8: 5f00000.r5f is available
    [    5.549498] remoteproc remoteproc8: attaching to 5f00000.r5f
    [    5.555958] platform 5f00000.r5f: R5F core initialized in IPC-only mode
    [    5.562574] rproc-virtio rproc-virtio.15.auto: assigned reserved memory node vision-apps-r5f-dma-memory@a6000000
    [    5.573172] virtio_rpmsg_bus virtio8: rpmsg host is online
    [    5.579130] virtio_rpmsg_bus virtio8: creating channel rpmsg_chrdev addr 0xd
    [    5.583850] rproc-virtio rproc-virtio.15.auto: registered virtio8 (type 7)
    [    5.598420] remoteproc remoteproc8: remote processor 5f00000.r5f is now attached
    [    5.607423] platform 5900000.r5f: configured R5F for IPC-only mode
    [    5.618470] platform 5900000.r5f: assigned reserved memory node vision-apps-r5f-dma-memory@a7000000
    [    5.629207] remoteproc remoteproc9: 5900000.r5f is available
    [    5.634916] remoteproc remoteproc9: attaching to 5900000.r5f
    [    5.637462] m_can_platform 26a1000.can main_mcan16: renamed from can2
    [    5.640987] platform 5900000.r5f: R5F core initialized in IPC-only mode
    [    5.653771] rproc-virtio rproc-virtio.16.auto: assigned reserved memory node vision-apps-r5f-dma-memory@a7000000
    [    5.664651] virtio_rpmsg_bus virtio9: rpmsg host is online
    [    5.670595] virtio_rpmsg_bus virtio9: creating channel rpmsg_chrdev addr 0xd
    [    5.675138] rproc-virtio rproc-virtio.16.auto: registered virtio9 (type 7)
    [    5.689814] remoteproc remoteproc9: remote processor 5900000.r5f is now attached
    [    5.697384] platform 5a00000.r5f: configured R5F for IPC-only mode
    [    5.703819] platform 5a00000.r5f: assigned reserved memory node vision-apps-r5f-dma-memory@a8000000
    [    5.719258] remoteproc remoteproc10: 5a00000.r5f is available
    [    5.725511] remoteproc remoteproc10: attaching to 5a00000.r5f
    [    5.731631] platform 5a00000.r5f: R5F core initialized in IPC-only mode
    [    5.743766] rproc-virtio rproc-virtio.17.auto: assigned reserved memory node vision-apps-r5f-dma-memory@a8000000
    [    5.754553] virtio_rpmsg_bus virtio10: rpmsg host is online
    [    5.760145] rproc-virtio rproc-virtio.17.auto: registered virtio10 (type 7)
    [    5.760516] virtio_rpmsg_bus virtio10: creating channel rpmsg_chrdev addr 0xd
    [    5.767102] remoteproc remoteproc10: remote processor 5a00000.r5f is now attached
    [    5.781881] virtio_rpmsg_bus virtio4: creating channel rpmsg_chrdev addr 0x15
    [    5.789293] virtio_rpmsg_bus virtio5: creating channel rpmsg_chrdev addr 0x15
    [    5.795173] j721e-pcie-host 2900000.pcie: PCI host bridge to bus 0000:00
    [    5.801766] virtio_rpmsg_bus virtio4: creating channel ti.ipc4.ping-pong addr 0xe
    [    5.808230] pci_bus 0000:00: root bus resource [bus 00-ff]
    [    5.815906] virtio_rpmsg_bus virtio0: creating channel rpmsg_chrdev addr 0x15
    [    5.821491] pci_bus 0000:00: root bus resource [io  0x0000-0xffff] (bus address [0x10001000-0x10010fff])
    [    5.828704] virtio_rpmsg_bus virtio5: creating channel ti.ipc4.ping-pong addr 0xe
    [    5.837837] pci_bus 0000:00: root bus resource [mem 0x10011000-0x17ffffff]
    [    5.837871] pci 0000:00:00.0: [104c:b00d] type 01 class 0x060400
    [    5.845608] virtio_rpmsg_bus virtio10: creating channel rpmsg_chrdev addr 0x15
    [    5.852180] pci_bus 0000:00: 2-byte config write to 0000:00:00.0 offset 0x4 may corrupt adjacent RW1C bits
    [    5.858289] virtio_rpmsg_bus virtio2: creating channel rpmsg_chrdev addr 0x15
    [    5.865482] pci 0000:00:00.0: supports D1
    [    5.875336] virtio_rpmsg_bus virtio9: creating channel rpmsg_chrdev addr 0x15
    [    5.882126] pci 0000:00:00.0: PME# supported from D0 D1 D3hot
    [    5.884394] pci 0000:00:00.0: bridge configuration invalid ([bus 00-00]), reconfiguring
    [    5.886226] virtio_rpmsg_bus virtio10: creating channel ti.ipc4.ping-pong addr 0xe
    [    5.893400] pci_bus 0000:01: busn_res: [bus 01-ff] end is updated to 01
    [    5.899056] virtio_rpmsg_bus virtio3: creating channel rpmsg_chrdev addr 0x15
    [    5.906974] pci 0000:00:00.0: PCI bridge to [bus 01]
    [    5.914754] virtio_rpmsg_bus virtio6: creating channel rpmsg_chrdev addr 0x15
    [    5.921445] pcieport 0000:00:00.0: PME: Signaling with IRQ 601
    [    5.928271] virtio_rpmsg_bus virtio2: creating channel ti.ipc4.ping-pong addr 0xe
    [    5.933341] pcieport 0000:00:00.0: AER: enabled with IRQ 601
    [    5.940601] virtio_rpmsg_bus virtio0: creating channel ti.ipc4.ping-pong addr 0xe
    [    5.953633] j721e-pcie-host 2910000.pcie: host bridge /bus@100000/pcie@2910000 ranges:
    [    5.959279] virtio_rpmsg_bus virtio9: creating channel ti.ipc4.ping-pong addr 0xe
    [    5.966746] j721e-pcie-host 2910000.pcie:       IO 0x0018001000..0x0018010fff -> 0x0018001000
    [    5.974824] virtio_rpmsg_bus virtio7: creating channel rpmsg_chrdev addr 0x15
    [    5.982131] j721e-pcie-host 2910000.pcie:      MEM 0x0018011000..0x001fffffff -> 0x0018011000
    [    5.990785] virtio_rpmsg_bus virtio8: creating channel rpmsg_chrdev addr 0x15
    [    5.997749] j721e-pcie-host 2910000.pcie:   IB MEM 0x0000000000..0xffffffffffff -> 0x0000000000
    [    6.006681] virtio_rpmsg_bus virtio6: creating channel ti.ipc4.ping-pong addr 0xe
    [    6.031030] virtio_rpmsg_bus virtio7: creating channel ti.ipc4.ping-pong addr 0xe
    [    6.042722] virtio_rpmsg_bus virtio8: creating channel ti.ipc4.ping-pong addr 0xe
    [    6.245173] audit: type=1334 audit(1651364286.396:4): prog-id=7 op=LOAD
    [    6.254643] audit: type=1334 audit(1651364286.404:5): prog-id=8 op=LOAD
    [    6.355949] cfg80211: Loading compiled-in X.509 certificates for regulatory database
    [    6.373409] cfg80211: Loaded X.509 cert 'sforshee: 00b28ddf47aef9cea7'
    [    6.380230] cfg80211: Loaded X.509 cert 'wens: 61c038651aabdcf94bd0ac7ff06c7248db18c600'
    [    6.388375] platform regulatory.0: Direct firmware load for regulatory.db failed with error -2
    [    6.396990] cfg80211: failed to load regulatory.db
    [    7.038992] j721e-pcie-host 2910000.pcie: PCI host bridge to bus 0001:00
    [    7.039848] pci_bus 0001:00: root bus resource [bus 00-ff]
    [    7.040540] pci_bus 0001:00: root bus resource [io  0x10000-0x1ffff] (bus address [0x18001000-0x18010fff])
    [    7.041752] pci_bus 0001:00: root bus resource [mem 0x18011000-0x1fffffff]
    [    7.042646] pci 0001:00:00.0: [104c:b013] type 01 class 0x060400
    [    7.043424] pci_bus 0001:00: 2-byte config write to 0001:00:00.0 offset 0x4 may corrupt adjacent RW1C bits
    [    7.044771] pci 0001:00:00.0: supports D1
    [    7.045277] pci 0001:00:00.0: PME# supported from D0 D1 D3hot
    [    7.046026] pci 0001:00:00.0: reg 0x224: [mem 0x00000000-0x003fffff 64bit]
    [    7.046898] pci 0001:00:00.0: VF(n) BAR0 space: [mem 0x00000000-0x00ffffff 64bit] (contains BAR0 for 4 VFs)
    [    7.050322] pci 0001:00:00.0: bridge configuration invalid ([bus 00-00]), reconfiguring
    [    7.051507] pci_bus 0001:01: busn_res: [bus 01-ff] end is updated to 01
    [    7.052356] pci 0001:00:00.0: BAR 7: assigned [mem 0x18400000-0x193fffff 64bit]
    [    7.053280] pci 0001:00:00.0: PCI bridge to [bus 01]
    [    7.054296] pcieport 0001:00:00.0: PME: Signaling with IRQ 605
    [    7.055351] pcieport 0001:00:00.0: AER: enabled with IRQ 605
    [   12.410603] audit: type=1334 audit(1651364292.560:6): prog-id=9 op=LOAD
    [   12.411474] audit: type=1334 audit(1651364292.564:7): prog-id=10 op=LOAD
    [   12.576769] audit: type=1006 audit(1651364292.728:8): pid=586 uid=0 old-auid=4294967295 auid=0 tty=(none) old-ses=4294967295 ses=1 res=1
    [   12.578329] audit: type=1300 audit(1651364292.728:8): arch=c00000b7 syscall=64 success=yes exit=1 a0=8 a1=fffff1205ea8 a2=1 a3=ffffaefc1020 items=0 ppid=1 pid=58)
    [   12.581648] audit: type=1327 audit(1651364292.728:8): proctitle="(systemd)"
    [   12.588646] audit: type=1334 audit(1651364292.740:9): prog-id=11 op=LOAD
    [   12.589502] audit: type=1300 audit(1651364292.740:9): arch=c00000b7 syscall=280 success=yes exit=8 a0=5 a1=ffffd1910b80 a2=78 a3=0 items=0 ppid=1 pid=586 auid=0 )
    [   12.592689] audit: type=1327 audit(1651364292.740:9): proctitle="(systemd)"
    [   12.593571] audit: type=1334 audit(1651364292.740:10): prog-id=11 op=UNLOAD
    [   12.594472] audit: type=1334 audit(1651364292.740:11): prog-id=12 op=LOAD
    [   17.067715] platform main-r5fss-cpsw9g-virt-mac1: deferred probe pending
    [   17.068568] platform main-r5fss-cpsw9g-virt-mac0: deferred probe pending
    [   17.069410] platform regulator-sd: deferred probe pending
    [   17.070089] platform dp0-connector: deferred probe pending
    [   17.070777] platform regulator-dp0-prw: deferred probe pending
    [   17.071523] platform regulator-dp1-prw: deferred probe pending
    
    


       We will need sedser1 lane0 and lane2 to connect to PCIe devices running on A72 Linux.
       How can we route sedser1 lane1 SGMII at 2.5 Gbps to the switch?
    Best Regards,
    Sudheer

  • Hi,

    [MCU2_0] 13.002277 s: EthFwBoard_configTorrentClks 2.5Gbps test.
    [MCU2_0] 13.002324 s: TISCI_DEV_SERDES_10G1 405 clkId 6 clkRateHz 156250000

    How are you getting above print, without setting SerDes1 clock from ETHFW?

       We will need sedser1 lane0 and lane2 to connect to PCIe devices running on A72 Linux.
       How can we route sedser1 lane1 SGMII at 2.5 Gbps to the switch?

    If you need PCIe + 2.5G SGMII and PCIe using Linux and SGMII from RTOS, then the boot loader has to configure the SerDes.
    U-boot SerDes doesn't support 2.5G XAUI configuration.

    The above combination is not possible from the TI SDK.

    Best Regards,
    Sudheer

  • Hi,

    1.   How are you getting above print, without setting SerDes1 clock from ETHFW?

    From the log I provided.
    Does this mean that u-boot has already configured SerDes1?

    2. 
    If you need PCIe + 2.5G SGMII and PCIe using Linux and SGMII from RTOS, then the boot loader has to configure the SerDes.
    U-boot SerDes doesn't support 2.5G XAUI configuration.
    The above combination is not possible from the TI SDK.


    If we disable the SerDes configuration in u-boot, and configure lane1 as SGMII 2.5 Gbps in RTOS, can Linux still support PCIe on lane0 and lane2? Or does PCIe only work when SGMII1 is 1 Gbps?

    Are Serdes2 lane0 and lane1 operating at SGMII 1 Gbps, and Serdes2 lane2 and lane3 at 10 Gbps XFI, and are all these configurations supported under RTOS?

     Best Regards, 
     jun

  • Hi,


    From the log I provided.
    Does this mean that u-boot has already configured SerDes1?

    It appears that prints are being added without configuring the SerDes.
    It doesn't mean U-Boot has already configured SerDes1.


    If we disable the SerDes configuration in u-boot, and configure lane1 as SGMII 2.5 Gbps in RTOS, can Linux still support PCIe on lane0 and lane2? Or does PCIe only work when SGMII1 is 1 Gbps?

    When you want to use SerDes for two protocols, you need to configure it in SerDes Multilink mode.

    PCIe+ XAUI (2.5G SGMII)  -> Not supported in RTOS/Linux SDK.

    PCIe + SGMII (1Gbps) -> Supported from TI Linux SDK. Need to configure from the boot loader i.e., U-boot.

    Are Serdes2 lane0 and lane1 operating at SGMII 1 Gbps, and Serdes2 lane2 and lane3 at 10 Gbps XFI, and are all these configurations supported under RTOS?

    SerDes MultiLink configuration of  SGMII + USXGMI was supported by TI RTOS SDK.

    Best Regards,
    Sudheer

  • HI,

    I'm using the prebuilt U-Boot on the EVM. How can I disable the SerDes1 configuration in U-Boot?
    Can I disable it in the DTS?

     Best Regards, 
     jun
  • Hi,

    I'm using the prebuilt U-Boot on the EVM. How can I disable the SerDes1 configuration in U-Boot?
    Can I disable it in the DTS?

    Yes, you can set the status as disabled in DTS files.

    Also, disable from Linux DTS files as well for the safe side.

    Best Regards,
    Sudheer

  • Hi,

       Could you please give me a specific example regarding SerDes MultiLink configuration?

     Best Regards, 
     jun

  • HI, 

     Could you please give me a specific example regarding SerDes MultiLink configuration

    Can you please share what combination you are expecting, only few are supported from RTOS sdk. 

    Linux support more combinations. 

    Also, freom where you want to configure the SerDes Multi-lnk like U-boot/Linux/RTOS? 

    Best Regards, 

    Sudheer

  • Hi. 
    RTOS configure Serdes.
    A SerDes with two lanes supports SGMII at 1 Gbps and 2.5 Gbps..
    A SerDes with two lanes supports SGMII at 1 Gbps and 10 Gbps.
     Best Regards, 
     jun

  • Hi Sudheer

    The link between cpsw9g<-->sgmii 2.5Gbps<--->switch fails to come up probabilistically during power-up or reboot.

    How can I troubleshoot this issue?

    Best Regards, 
     jun

  • Hi,

    The link between cpsw9g<-->sgmii 2.5Gbps<--->switch fails to come up probabilistically during power-up or reboot.

    Check switch side configuration, and ensure CPSW9G side configured in XAUI interface with 156.25MHz clock and SerDes should not be configured from
    u-boot or Linux.

    A SerDes with two lanes supports SGMII at 1 Gbps and 2.5 Gbps..

    Which is not supported out of Box SDK. Need a patch for this.
    Patch:
    SerDes4_Multilink_configuration_L0_SGMII_L3_XAUI.zip

    A SerDes with two lanes supports SGMII at 1 Gbps and 10 Gbps.

    Refer to below for the SerDes Multi-link configuration.

    static Board_STATUS Board_Cfg_SerDes_1(void)
    {
        CSL_SerdesResult result;
        uint32_t laneNum;
        //CSL_SerdesLaneEnableStatus laneRetVal = CSL_SERDES_LANE_ENABLE_NO_ERR;
        CSL_SerdesLaneEnableParams serdesLaneEnableParams  = {0};
        CSL_SerdesLaneEnableParams serdesLaneEnableParams1  = {0};
        CSL_SerdesMultilink multiLinkId = CSL_SERDES_USXGMII_SGMII_MULTILINK;
        CSL_SerdesInstance serdesInstanceId = CSL_TORRENT_SERDES2;
    
        memset(&serdesLaneEnableParams, 0, sizeof(serdesLaneEnableParams));
        memset(&serdesLaneEnableParams1, 0, sizeof(serdesLaneEnableParams1));
    
        /* serdes lane 3 USXGMII */
        serdesLaneEnableParams.serdesInstance    = (CSL_SerdesInstance)CSL_TORRENT_SERDES2;
        serdesLaneEnableParams.baseAddr          = CSL_WIZ16B8M4CT3_2_WIZ16B8M4CT3_BASE;
        serdesLaneEnableParams.refClock          = CSL_SERDES_REF_CLOCK_156p25M;
        serdesLaneEnableParams.refClkSrc         = CSL_SERDES_REF_CLOCK_INT1;
        serdesLaneEnableParams.linkRate          = CSL_SERDES_LINK_RATE_10p3125G;
        serdesLaneEnableParams.numLanes          = 1;
        serdesLaneEnableParams.laneMask          = 0x4; /* Lane 2 is USXGMII */
        serdesLaneEnableParams.SSC_mode          = CSL_SERDES_NO_SSC;
        serdesLaneEnableParams.phyType           = CSL_SERDES_PHY_TYPE_USXGMII;
        serdesLaneEnableParams.pcieGenType       = CSL_SERDES_PCIE_GEN3;
        serdesLaneEnableParams.operatingMode     = CSL_SERDES_FUNCTIONAL_MODE;
        serdesLaneEnableParams.phyInstanceNum    = 1;
    
        for(laneNum=0;laneNum<CSL_SERDES_MAX_LANES;laneNum++)
        {
            if ((serdesLaneEnableParams.laneMask & (1<<laneNum))!=0)
            {
                serdesLaneEnableParams.laneCtrlRate[laneNum] = CSL_SERDES_LANE_FULL_RATE;
                serdesLaneEnableParams.loopbackMode[laneNum] = CSL_SERDES_LOOPBACK_DISABLED;
            }
        }
    
        /* serdes lane 2 SGMII */
        serdesLaneEnableParams1.serdesInstance    = (CSL_SerdesInstance)CSL_TORRENT_SERDES2;
        serdesLaneEnableParams1.baseAddr          = CSL_WIZ16B8M4CT3_2_WIZ16B8M4CT3_BASE;
        serdesLaneEnableParams1.refClock          = CSL_SERDES_REF_CLOCK_100M;
        serdesLaneEnableParams1.refClkSrc         = CSL_SERDES_REF_CLOCK_INT0;
        serdesLaneEnableParams1.linkRate          = CSL_SERDES_LINK_RATE_1p25G;
        serdesLaneEnableParams1.numLanes          = 1;
        serdesLaneEnableParams1.laneMask          = 0x8; /* Lane 3 is SGMII */
        serdesLaneEnableParams1.SSC_mode          = CSL_SERDES_NO_SSC;
        serdesLaneEnableParams1.phyType           = CSL_SERDES_PHY_TYPE_SGMII;
        serdesLaneEnableParams1.pcieGenType       = CSL_SERDES_PCIE_GEN3;
        serdesLaneEnableParams1.operatingMode     = CSL_SERDES_FUNCTIONAL_MODE;
        serdesLaneEnableParams1.phyInstanceNum    = 1;
    
        for(laneNum=0;laneNum<CSL_SERDES_MAX_LANES;laneNum++)
        {
            if ((serdesLaneEnableParams1.laneMask & (1<<laneNum))!=0)
            {
                serdesLaneEnableParams1.laneCtrlRate[laneNum] = CSL_SERDES_LANE_FULL_RATE;
                serdesLaneEnableParams1.loopbackMode[laneNum] = CSL_SERDES_LOOPBACK_DISABLED;
            }
        }
    
        CSL_serdesPorReset(serdesLaneEnableParams.baseAddr);
    
        /* Select the IP type, IP instance num, Serdes Lane Number */
        CSL_serdesIPSelect(CSL_CTRL_MMR0_CFG0_BASE,
            serdesLaneEnableParams.phyType,
            serdesLaneEnableParams.phyInstanceNum,
            serdesLaneEnableParams.serdesInstance,
            2);
    
        CSL_serdesIPSelect(CSL_CTRL_MMR0_CFG0_BASE,
    
            serdesLaneEnableParams1.phyType,
            serdesLaneEnableParams1.phyInstanceNum,
            serdesLaneEnableParams1.serdesInstance,
            3);
    
        result = CSL_serdesRefclkSel(CSL_CTRL_MMR0_CFG0_BASE,
                                     serdesLaneEnableParams1.baseAddr,
                                     serdesLaneEnableParams1.refClock,
                                     serdesLaneEnableParams1.refClkSrc,
                                     serdesLaneEnableParams1.serdesInstance,
                                     serdesLaneEnableParams1.phyType);
    
        if (result != CSL_SERDES_NO_ERR)
        {
            return BOARD_FAIL;
        }
    
        result = CSL_serdesRefclkSel1(CSL_CTRL_MMR0_CFG0_BASE,
                                    serdesLaneEnableParams.baseAddr,
                                    serdesLaneEnableParams.refClock,
                                    serdesLaneEnableParams.refClkSrc,
                                    serdesLaneEnableParams.serdesInstance,
                                    serdesLaneEnableParams.phyType);
    
        if (result != CSL_SERDES_NO_ERR)
        {
            return BOARD_FAIL;
        }
    
        /* Load the Serdes Config File */
           result = CSL_serdesMultiLinkInit(multiLinkId,
                                         serdesInstanceId,
                                         &serdesLaneEnableParams,
                                         &serdesLaneEnableParams1);
    
        /* Return error if input params are invalid */
        if (result != CSL_SERDES_NO_ERR)
        {
            return BOARD_FAIL;
        }
    
        /* Lane Enable API for lane enable, pll enable etc */
        for(laneNum=0;laneNum<CSL_SERDES_MAX_LANES;laneNum++)
        {
            if ((serdesLaneEnableParams.laneMask & (1<<laneNum))!=0)
            {
                CSL_serdesEnableLanes(serdesLaneEnableParams.baseAddr,
                                    laneNum, serdesLaneEnableParams.phyType,
                                    serdesLaneEnableParams.linkRate,
                                    serdesLaneEnableParams.operatingMode);
            }
        }
    
        for(laneNum=0;laneNum<CSL_SERDES_MAX_LANES;laneNum++)
        {
            if ((serdesLaneEnableParams1.laneMask & (1<<laneNum))!=0)
            {
                CSL_serdesEnableLanes(serdesLaneEnableParams1.baseAddr,
                                    laneNum, serdesLaneEnableParams1.phyType,
                                    serdesLaneEnableParams1.linkRate,
                                    serdesLaneEnableParams1.operatingMode);
            }
        }
    
        /* Release PHY Reset*/
        CSL_serdesReleaseReset(serdesLaneEnableParams.baseAddr);
    
        return BOARD_SOK;
    }



    Best Regards,
    Sudheer