Loading...
 

SW4STM32 and SW4Linux fully supports the STM32MP1 asymmetric multicore Cortex/A7+M4 MPUs

   With System Workbench for Linux, Embedded Linux on the STM32MP1 family of MPUs from ST was never as simple to build and maintain, even for newcomers in the Linux world. And, if you install System Workbench for Linux in System Workbench for STM32 you can seamlessly develop and debug asymmetric applications running partly on Linux, partly on the Cortex-M4.
You can get more information from the ac6-tools website and download (registration required) various documents highlighting:

System Workbench for STM32


MAC Address

I am designing an ethernet board with STM32F4. The MAC address is set in a header file. What is suggested for:

  • Allocating MAC addresses in production?
  • programming them into each chip?
IEEE manages MAC address allocation. They sell blocks (large and small) at reasonable prices.

Thanks, Alec. I was aware of buying numbers from IEEE. Your answer implies that STM has no small lots of numbers available for low volume designs. Is that true?

The other part of my question is, how does each board get its MAC at manufacture/configuration time?

Do I have to set up a patch system to inject the MAC into the loadable firmware at load time? That would be bad for post-ship updates.

Does the HAL have any provision for storing MAC and other config in a small Flash segment that is not wiped in a firmware load?

Or does each developer have to come up with their own scheme? It’s not that hard, we’ve all done it, but I don’t want to do it myself if a standard mechanism exists for STM32.


I have not done an Ethernet board, so I don’t have detailed answers.

The STM device I’m using has a “One-time Programmable” section of Flash, which could probably be used to store a factory programmed MAC for the life of the device.
How to do that will depend on what interfaces you have available. If your board supports a Bootloader, consider using a separate RAM based firmware to program the OTP.


Thank you, Alec. I will look for OTP Flash on my chip, and will not search the Cube libraries for a method to do this task.