Micochip/Atmel Studio 7 ARM linker script and device packs

I’m trying to develop code for the ATSAM3X8E ARM processor and want to use FreeRTOS with it. In the FreeRTOS demonstration examples (the latest version, 10.00) it uses their own linker script. I’d like to use the linker scripts that come with the latest Atmel “device packs”, i.e. “C:\Program Files (x86)\Atmel\Studio\7.0\packs\atmel\SAM3X_DFP\1.0.50\gcc\gcc”. Is there some particular reason for not using these?

That should be ok. Mainly startup and possibly heap related code need some symbols defined in linker scripts. That’s not really FreeRTOS specific.

Tracing through things, the FreeRTOS 10 port uses calls to Studio 6 libraries; we’re on Studio 7 now and there are some serious differences between the two, both in the files themselves and in the file names and directory structure. It’s really more than I can do on my end, and requires some modification of the FreeRTOS code itself to match things up.

I can make do with what’s there, but this port really needs to be updated. If nothing else, it enables the user to access bug fixes in the device pack updates.

To which FreeRTOS 10 port do you refer to ?
The FreeRTOS provided ARM_CM3 port doesn’t use any (A)Studio libraries.

The FreeRTOS port to the ARM Cortex-M family has no dependency on any third party libraries - not even CMSIS (the port actually predates CMSIS). I suspect you are referring to files used by an demo project rather than files used by FreeRTOS. You should just be able to get the Atmel tool to generate a project for you using whatever are the latest libraries.

Yes, I took the code right from the demo project provided with the download. How do I set it up otherwise? Perhaps I missed some instructions somewhere.
I’m used to having Studio doing all of the setup through the START utility, but they haven’t implemented START for this processor family.

I wonder that the not-so-new ATSAM3X8E isn’t fully supported by Microchip.
I’m not familiar with START but there is a DFP (device family pack) so basically it is supported by AStudio7. Maybe you contact Microchip regarding Studio Issues.

ATSAM3x is supported in Studio. If there are specific questions you can address it to support@microchip.com. Hope this helps. You may send your questions to me too and I will check on how best we can help

1 Like

Thank you. Yes, the processor is supported, but the basic problem is how to write for the board without the use of either ASF or START and their driver libraries. Major pain.

Oh, and another gripe: can we please add to Studio the ability to incorporate existing directory structures and their contents into the Solution Explorer? For using something like FreeRTOS, I have to incorporate their “source” directory structure, which means that I have to manually make the folders and than incorporate the existing files. Again, major pain.

Shridhar did contact me, below. Thank you.
After looking carefully, the basic problem wasn’t with FREERtos per se but with the ASF files used in the Demo packages. They are all Studio 6 versions, which probably stems from the fact that MicroChip hasn’t updated that processor’s ASF data since that time. It just happens that some things changed between then and now so there are collisions with the device packs. I can compile the demos as-is, if I disallow the device packs entirely, which means that any errors fixed between then and now are still in there and I can’t update the support code.