Hi Champs,
Are the MAC addresses of the CPSW ports efused? Also, could you please point to the API to configure these addresses?
Thank you.
Best regards,
François.
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.
Hi Champs,
Are the MAC addresses of the CPSW ports efused? Also, could you please point to the API to configure these addresses?
Thank you.
Best regards,
François.
Hi Francois,
The eFuse register contains one MAC address and the EEPROM also contains three MAC addresses.
Together we have a pool of FOUR mac addresses. These can be found in the syscfg auto generated files for the application.
You can find the source code for the APIs at "mcu_plus_sdk/source/networking/enet/core/enet_soc.h"
int32_t EnetSoc_getEFusedMacAddrs(uint8_t macAddr[][ENET_MAC_ADDR_LEN], uint32_t *num);
The above function should fetch the MAC address from eFuse register.
Regards,
Shaunak
Hi Shaunak,
Thank you. Is there a specific reason for which we store the extra MAC addresses in EEPROM? I asume that a customer could store them in the flash memory along with their firmware, right?
Best regards,
François.
Hi Francois,
The extra MAC addresses are stored in EEPROM because we only have one MAC address in eFuse register. In case you want to use the CPSW in dual MAC mode, you would need additional MAC addresses.
There is one drawback in having MAC in firmware from customer production point of view. If the customer has the same firmware for all their devices, that would cause all the devices to have the same MAC address.
If you have only a single device or different firmware for all devices, then there should be no issue as long as the read of MAC address from flash and configuration in application is handled correctly
Regards,
Shaunak
Hi SHaunak,
Thank you very much Closing this case.
Best regards,
François.