[riot-devel] CC2538dk Riotboot support

Brenton Chetty brent7984 at gmail.com
Wed May 29 15:23:53 CEST 2019


Hey guys, i kind of managed to get the riotboot tests to pass. Whenever i
program via terminal (gcc-arm) i receive the error "[FAILED] You're not
running riotboot". But when i program via the UniFlash tool, it works.
Note, so far only "tests_riotboot-slot0-combined.bin" works. I assume its
an offset issue as Gaƫtan mentioned. Also, I used the cortexm_base.ld
Linker Script.

Thanks for the help guys


On Wed, May 29, 2019 at 2:18 PM Brenton Chetty <brent7984 at gmail.com> wrote:

> Thanks for the advice guys, but I'm still struggling to get the cc2538dk
> to pass the riotboot tests.
> To: Francisco Acosta
>
> I provided the length and start variables to link the slots.
> I used the cc2538sf53.ld Linker Script.
> I was not sure how to get the offset required, so i used 255 as the
> offset, this value made the slot0.riot.bin file = 512KB.
> I assume this correct because whenever you compile an example (not with
> riotboot), it generates a .bin file with this size.
>
> Any ideas on what i could be doing wrong?
>
> With thanks!
> Brenton
>
>
> On Fri, May 24, 2019 at 2:33 PM Francisco Acosta <fco.ja.ac at gmail.com>
> wrote:
>
>> Hi Brenton!
>>
>> So far I remember we didn't take it into account, and I don't know if
>> someone is taking care of it.
>>
>> As far as I know, there are two ways of supporting that CPU:
>>
>> 1. The way we do it now, which is linking the image in another start
>> address so the bootloader can recognise it and boot it.
>>
>> 2. Modify the start address on the CC2538 register dedicated to this.
>> This might be a bit tricky but also interesting for the sake of research
>> and compatibility.
>>
>> However, I'd advice the first option to have the full benefits of the
>> bootloader and struggling less with the particular settings on that
>> chip.
>>
>> Overall, the steps would be the following:
>>
>> 1. Adapt the linker scripts to succeed tests/cortexm_common_ldscript.
>> This consists on making the linker scripts on cpu/cc2838/ldscripts
>> comply with cpu/cortexm_common/ldscrpts/cortexm.ld. You might take a
>> look how is it done for stm32 or sam0 families.
>>
>> 2. Provide the length and start variables to link slots correctly:
>>    - ROM_LEN
>>    - RAM_LEN
>>    - ROM_START_ADDR
>>    - RAM_START_ADDR
>>
>> Again, take a look on the supported CPUs as examples.
>>
>> 3. Make tests/riotboot pass
>>
>> 4. Perform a firmware update or flash different firmwares with different
>> versions so the bootloader choses the newest.
>>
>> Optionally you might want to test if the WIP SUIT update format works.
>>
>> Don't hesitate to make more questions if you have some!
>>
>> Cheers,
>>
>> Paco.
>>
>>
>> On 24/05/2019 13:43, Brenton Chetty wrote:
>> > Hey guys, has anyone succeeded in providing riotboot support for the
>> > cc2538dk board as yet?
>> >
>> > _______________________________________________
>> > devel mailing list
>> > devel at riot-os.org
>> > https://lists.riot-os.org/mailman/listinfo/devel
>> >
>> _______________________________________________
>> devel mailing list
>> devel at riot-os.org
>> https://lists.riot-os.org/mailman/listinfo/devel
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.riot-os.org/pipermail/devel/attachments/20190529/27fd9ccb/attachment.html>


More information about the devel mailing list