Quantcast
Channel: Raspberry Pi Forums
Viewing all articles
Browse latest Browse all 4861

SDK • Re: What is the code path to main()?

$
0
0
The last is perhaps the most challenging part to subvert if one wants to extend BS2, have it larger than 252 bytes.
The fallacy is you would actually replace it. There is no real reason to look into it except for evaluation of risk. (For example failure modes.)

The only possible issue that exists is, does the SDK play nice with itself? I can create an application which is a bootloader using the SDK. However can I create a loadable application using the SDK? If so, which versions are compatible with a given SDK?

The boot 2 stage is defined by the boot ROM, so it is hardware. It is not under the domain of the SDK. A boot loader application however is under the domain of the SDK. The programmer is allowed and intended to work at this layer. The programmer can hide the SDK if they choose. (The ARM ABI is broken by XIP, and no one really cares.)

People use layers to manage things. The cost here is complexity for cost reduction which reduces boot performance. If the programmer manages things correctly or evaluates the RP2040 before hand these issues do not matter. (Aka, no one really cares!)

We use operating systems normally to insulate us from this. However microcontrollers generally do not support certain programming models. (Static models may make more sense compared to dynamic models. Static models come with costs which have to be managed explicitly.)

Statistics: Posted by dthacher — Sun May 19, 2024 7:02 pm



Viewing all articles
Browse latest Browse all 4861

Trending Articles