I was wondering if it's possible to modify the MAC address of the 6670 at runtime. I'm using CSL_BootCfgGetMacIdentifier() to obtain the current address but it seems like I can't write to the EMAC_ID1, EMAC_ID2 registers.
Thanks,
Raj
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.
I was wondering if it's possible to modify the MAC address of the 6670 at runtime. I'm using CSL_BootCfgGetMacIdentifier() to obtain the current address but it seems like I can't write to the EMAC_ID1, EMAC_ID2 registers.
Thanks,
Raj
Raj,
The MAC address is deprecated through efuse_mac_address[6] and eeprom_mac_address[6] fields in EMAC_info structure. The MAC address is now defined in the new data structure PLATFORM_EMAC_EXT_info.
Find the use of PLATFORM_MAC_TYPE enum and PLATFORM_EMAC_EXT_info structure for MAC address.
See the platform_get_macaddr in the platform.c for how to get the MAC address from EFUSE or EEPROM.
For Ethernet Boot:
After initialization, the device will broadcast a ready frame containing its device ID and MAC address.
The Ethernet Host is responsible to receive the ready frame and follow up with the boot packets to the DSP using the device’s MAC address or ID.
I found the references that you mentioned. I can see how the MAC address is read when the EMAC is initialized. I was wondering if there was a way to manually configure the MAC address to an arbitrary value.
Rajan,
Did you assign the MAC address?
I think, you should disable efuse mac macro if used. Then assign the mac using the mac array variable.
Let us know if you need further support on this.