Also read this thread...
viewtopic.php?f=16&t=1069&hilit=ccm
It has more discussion about this topic...
Hitting the road now, so I will check in tonight and see what is happening...
-John Scott
CCM section & "section `.bss' will not fit in region `ram'"
Moderator: RoccoMarco
Re: CCM section & "section `.bss' will not fit in region `ra
This .ld file is pretty much the default ChibiOS CCM .ld file. So, in it original form, does it make sense all? Is that an issue that it does not work as is?
Here is the original file http://svn.code.sf.net/p/chibios/svn/br ... 7xG_CCM.ld
Here is the original file http://svn.code.sf.net/p/chibios/svn/br ... 7xG_CCM.ld
- Giovanni
- Site Admin
- Posts: 14891
- Joined: Wed May 27, 2009 8:48 am
- Has thanked: 1202 times
- Been thanked: 996 times
Re: CCM section & "section `.bss' will not fit in region `ra
Hi,
I think that adding .ccm.* sections is the correct fix, GCC generates a different section for each object when the garbage collector is enabled (it is enabled by default in ChibiOS makefikes).
Giovanni
I think that adding .ccm.* sections is the correct fix, GCC generates a different section for each object when the garbage collector is enabled (it is enabled by default in ChibiOS makefikes).
Giovanni
Re: CCM section & "section `.bss' will not fit in region `ra
Ah, I though that I was using the unmodified version of STM32F407xG_CCM.ld, but it seems I had changed it as indicated by that other thread...
The default STM32F407xG_CCM.ld does work and does make sense, but as it is
now, you have to modify it to add your own variables to the CCM.
As mentioned there are two reasons to use CCM.
1. Like your case where you are using a lot of ram and need a place to store stuff.
2. Like my case where I am running three fast & large DMA transactions and also
want to do some more number crunching at the same time. With CCM I can do that without my memory accesses being impacted by memory conflicts from the DMA.
-John Scott
The default STM32F407xG_CCM.ld does work and does make sense, but as it is
now, you have to modify it to add your own variables to the CCM.
As mentioned there are two reasons to use CCM.
1. Like your case where you are using a lot of ram and need a place to store stuff.
2. Like my case where I am running three fast & large DMA transactions and also
want to do some more number crunching at the same time. With CCM I can do that without my memory accesses being impacted by memory conflicts from the DMA.
-John Scott
Re: CCM section & "section `.bss' will not fit in region `ra
Giovanni, can you add the .ccm.* sections to STM32F407xG_CCM.ld when you get a chance? That way we have one less 'system' file we have to modify in applications where CCM is needed / wanted.
I will be happy to test it out.
-John Scott
I will be happy to test it out.
-John Scott
- Giovanni
- Site Admin
- Posts: 14891
- Joined: Wed May 27, 2009 8:48 am
- Has thanked: 1202 times
- Been thanked: 996 times
Re: CCM section & "section `.bss' will not fit in region `ra
Ok, so it looks like the basic CCM issue is resolved...
Now we just need to figure out what is going on with pendingBuffer..
Can you do a rebuild and post the build reports?
I would still like to the the compiler output that lists warning and
errors.
-John Scott
Now we just need to figure out what is going on with pendingBuffer..
Can you do a rebuild and post the build reports?
I would still like to the the compiler output that lists warning and
errors.
-John Scott
- Giovanni
- Site Admin
- Posts: 14891
- Joined: Wed May 27, 2009 8:48 am
- Has thanked: 1202 times
- Been thanked: 996 times
Re: CCM section & "section `.bss' will not fit in region `ra
Great, i will pull that file and tweak my code to test it.
Probably later today.
Thanks
Probably later today.
Thanks