This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Tool/software:
Hi expert,
My customer would like to use 10/100Mbps PHY with MII interface. In AM263Px datasheet, AM263Px CPSW support MII interface. However, syscfg doesn't have such pinmux option. Can you please check?
2. Can two external port support different interfaces? For example port1 usse RGMII, port2 uses MII? How do they set in syscfg?
3. Since AM263Px can output 50MHz reference clock for RMII interface, but I can not see any setting in syscfg. Do you have any suggestion?
Since PinMUX code is generated by syscfg automatically, customer needs us solve this issue in next version of SDK and provide workaround for SDK10.0.
We need help from team to overcome this problem.
Regards
Andre
Hi Andre,
1. I will share the plans for MII support in syscfg to you tomorrow after having an internal discussion with the team.
2. This is not supported as of now due to limitations in Syscfg tool, it only lets you select one mode and both the ports have the code auto-generated accordingly. Customer will have to disable auto-generation and write this configuration themselves.
3. This setting is not available in syscfg. By default the reference clock used is 50MHz.
Regards,
Shaunak
Shaunak,
2. Since many CPSW options need help from syscfg to configure properly, may I know how to disable pinmux code auto generation in Enet(CPSW)?
3. Is ref 50MHz supplied by external Pin by default?
Regards
Andre
Hi Andre,
1. I'm still waiting for confirmation on support plan for this.
2. In example.syscfg, you can disable the auto-generation of these two files (ti_board_config.c and ti_pinmux_config.c). The code changes in these two files if you change the pinmux from RGMII to RMII. Similar would be the case for RMII. I would recommend keeping a copy of the files to see what exact functions and modules are configured and having a file do the similar configuration (just that the code is not auto-generated but manually configured) and make sure this compiles with the project.
3. By default, the ref_clk is given from the pin rgmii_rxc/R17). You can change this pin based on the schematics to provide external pin. For example on the HSEC Board, the pin-out for this is PR0_PRU0_GPIO6.
Regards,
Shaunak
Shaunak,
2. After reinspecting code generated by syscfg, even we can configure pinmux manually. there are some codes are hard coding to support RGMII and MII only.
We can't set/eliminate CPSE pinmux config from RGMII/RMII to MII.
The code generated in ti_enet_soc.c
int32_t EnetSoc_getMacPortMii(Enet_Type enetType,
uint32_t instId,
Enet_MacPort macPort,
EnetMacPort_Interface *mii)
{
EnetMac_LayerType *enetLayer = &mii->layerType;
EnetMac_SublayerType *enetSublayer = &mii->sublayerType;
uint32_t modeSel = CPSW_ENET_CTRL_MODE_RGMII;
int32_t status = ENET_EFAIL;
switch (enetType)
{
case ENET_CPSW_3G:
status = EnetSoc_getMcuEnetControl(macPort, &modeSel);
break;
default:
Enet_devAssert(false, "Invalid peripheral type: %u\n", enetType);
break;
}
....
.....
static uint32_t EnetSoc_getMcuEnetControl(Enet_MacPort macPort,
uint32_t *modeSel)
{
CSL_mss_ctrlRegs *mssCtrlRegs = (CSL_mss_ctrlRegs *)CSL_MSS_CTRL_U_BASE;
int32_t status = ENET_SOK;
switch (macPort)
{
case ENET_MAC_PORT_1:
*modeSel = CSL_FEXT(mssCtrlRegs->CPSW_CONTROL,MSS_CTRL_CPSW_CONTROL_PORT1_MODE_SEL);
break;
case ENET_MAC_PORT_2:
*modeSel = CSL_FEXT(mssCtrlRegs->CPSW_CONTROL,MSS_CTRL_CPSW_CONTROL_PORT2_MODE_SEL);
break;
default:
status = ENET_EINVALIDPARAMS;
break;
}
if (status == ENET_SOK)
{
switch (*modeSel)
{
case CPSW_ENET_CTRL_MODE_RMII:
case CPSW_ENET_CTRL_MODE_RGMII:
break;
default:
status = ENET_EINVALIDPARAMS;
break;
}
}
return status;
}
We still need help to provide MII interface support. We also looking for Ethernet-IND-Addon card demo with DP83826E. Please update our plan to support MII and addon card. Thanks.
Regards
Andre
Hi Andre,
1. The MII support is being currently re-reviewed. This proper fix will be a part of the 11.0 release (1Q2025), Since that would be too late for you, I will prepare a patch and provide it to you as soon as I have a confirmation from the networking team internally.
2. Ethernet-IND add-on card demo for DP83826E is already available. Please checkout the documentation here; https://software-dl.ti.com/mcu-plus-sdk/esd/AM263PX/latest/exports/docs/api_guide_am263px/ETHERNET_ADDON_BOARDS_TOP.html
Right now the add-on board support has been added for DP83826E and DP83ttg720
Regards,
Shaunak
Shaunak,
I feel confusing, user guide describes only automotive add-on card support in SDK https://software-dl.ti.com/mcu-plus-sdk/esd/AM263PX/latest/exports/docs/api_guide_am263px/ETHERNET_ADDON_BOARDS_TOP.html
I also checked industrial ethernet add-on card which uses DP83926E with MII interface. If current SDK can't support MII. I don't understand how sdk support dp83826e?
Please help to clarify how sdk supports DP83826e add-on card in SDK?
Regards
Andre
Hi Andre,
Apologies for the confusion, I re-confirmed with the team internally.
1. The SDK documentation incorrectly mentions the support for only Auto PHY. The industrial PHY support (DP83826E) exists in the 10.00.00.35 MCU_PLUS_SDK for AM263Px.
2. The MII support is not present yet. The interface used is RMII 100 Mbps right now.
Regards,
Shaunak
Shuanak,
I tried several projects. After I set MAC configuration to RMII. The code can't be complied.
syscfg is set to am263px-cc-addon-ind and RMII as below.
One more. DP83826E add-on card use PR0_PRU1_REF_CLK to provide 50MHz reference clock which is necessary for RMII. I did not see any code in demo project.
Please help to check.
Regards
Andre
BTW, IO expender driver has issue in SDK10.0.035. The correct io expender should be set to use I2C1. Otherwise CPSW MII/RMII path will not route to add on card.
void TCA6424_Params_init(TCA6424_Params *params)
{
if(NULL != params)
{
params->i2cInstance = 1U;
params->i2cAddress = 0x22U;
}
return;
}
Regards
Andre
Hi Andre,
Apologies for a delayed response.
I tried several projects. After I set MAC configuration to RMII. The code can't be complied.
syscfg is set to am263px-cc-addon-ind and RMII as below.
Yes, I was able to reproduce this on my end as well. I have communicated the same to the SDK Networking team.
BTW, IO expender driver has issue in SDK10.0.035. The correct io expender should be set to use I2C1. Otherwise CPSW MII/RMII path will not route to add on card.
This is also a known issue, already fixed internally.
We have a lot of pending issues open/ in progress right now. Appreciate your patience.
Regards,
Shaunak