-->
Page 1 of 2

Correct linker script?

PostPosted: Fri Oct 03, 2014 9:58 am
by cnlohr
So, I've noticed the linker scripts that come with the 0.9.1 SDK all vary slightly in the memory section. Does anyone know what's up with this? Which one is correct?

Also, perhaps we should have a standard linker script?

eagle.app.v6.app1.ld
Code: Select all  irom0_0_seg :                          org = 0x40211000, len = 0x2B000


eagle.app.v6.app2.ld
Code: Select all  irom0_0_seg :                         org = 0x40251000, len = 0x2B000


eagle.app.v6.ld
Code: Select all  irom0_0_seg :                          org = 0x40240000, len = 0x32000


This goes hand-in-hand with why do we need long calls?

Re: Correct linker script?

PostPosted: Fri Oct 03, 2014 10:14 am
by Squonk
No, please take a look at my post:
viewtopic.php?f=5&t=9&p=889&sid=aa8de357b2a1c3e8db597f40012134e9#p889

Basically, the newer SDK provide an OTA (Over The Air) update capability. In order to recover when the procedure does not succeed, the Flash now contains a leading bootloader, and 2 user applications, doing ping-pong flashing/running betwwen the 2. Each user application contains a flash section and an irom0 section.

Re: Correct linker script?

PostPosted: Fri Oct 03, 2014 10:37 am
by cnlohr
So, to do cloud updating, we have to do their little dance and use app1 or app2 - if we don't care about that and just want to do serial flashing, we can use the first script?

*EDIT* Good grief, if I ever get this crazy chip figured out, it'll keep my youtube channel pumping out videos for the next 5 years.

Re: Correct linker script?

PostPosted: Fri Oct 03, 2014 1:28 pm
by wififofum
It is flexible where you can put the ROM section in flash (aside from the config sections) which is very nice. You can organize flash how you want.