mirror of
https://github.com/riscv-software-src/opensbi.git
synced 2025-08-24 15:31:22 +01:00
firmware: remove FW_TEXT_START
Now opensbi can run at any address via dynamic relocation. We can remove FW_TEXT_START. Signed-off-by: Xiang W <wxjstz@126.com> Reviewed-by: Anup Patel <anup@brainfault.org> Tested-by: Anup Patel <anup@brainfault.org>
This commit is contained in:
@@ -61,8 +61,6 @@ Firmware Configuration and Compilation
|
||||
All firmware types support the following common compile time configuration
|
||||
parameters:
|
||||
|
||||
* **FW_TEXT_START** - Defines the execution address of the OpenSBI firmware.
|
||||
This configuration parameter is mandatory.
|
||||
* **FW_FDT_PATH** - Path to an external flattened device tree binary file to
|
||||
be embedded in the *.rodata* section of the final firmware. If this option
|
||||
is not provided then the firmware will expect the FDT to be passed as an
|
||||
|
@@ -35,7 +35,7 @@ follows:
|
||||
At least one of *FW_JUMP_ADDR* and *FW_JUMP_OFFSET* (see below) should be
|
||||
defined. Compilation errors will result from not defining one of them.
|
||||
|
||||
* **FW_JUMP_OFFSET** - Address offset from the *FW_TEXT_START* where the
|
||||
* **FW_JUMP_OFFSET** - Address offset from the opensbi load address where the
|
||||
entry point of the next booting stage is located. This offset is used as
|
||||
relocatable address of the next booting stage entry point. If *FW_JUMP_ADDR*
|
||||
is also defined, the firmware will prefer *FW_JUMP_ADDR*.
|
||||
@@ -62,7 +62,7 @@ follows:
|
||||
echo fdt overlaps kernel, increase FW_JUMP_FDT_ADDR
|
||||
```
|
||||
|
||||
* **FW_JUMP_FDT_OFFSET** - Address offset from the *FW_TEXT_START* where
|
||||
* **FW_JUMP_FDT_OFFSET** - Address offset from the opensbi load address where
|
||||
the FDT will be passed to the next booting stage. This offset is used
|
||||
as relocatable address of the FDT passed to the next booting stage. If
|
||||
*FW_JUMP_FDT_ADDR* is also defined, the firmware will prefer
|
||||
|
@@ -36,8 +36,8 @@ options. These configuration parameters can be defined using either the top
|
||||
level `make` command line or the target platform *objects.mk* configuration
|
||||
file. The parameters currently defined are as follows:
|
||||
|
||||
* **FW_PAYLOAD_OFFSET** - Offset from *FW_TEXT_START* where the payload binary
|
||||
will be linked in the final *FW_PAYLOAD* firmware binary image. This
|
||||
* **FW_PAYLOAD_OFFSET** - Offset from the opensbi load address where the payload
|
||||
binary will be linked in the final *FW_PAYLOAD* firmware binary image. This
|
||||
configuration parameter is mandatory if *FW_PAYLOAD_ALIGN* is not defined.
|
||||
Compilation errors will result from an incorrect definition of
|
||||
*FW_PAYLOAD_OFFSET* or of *FW_PAYLOAD_ALIGN*, or if neither of these
|
||||
@@ -62,7 +62,7 @@ file. The parameters currently defined are as follows:
|
||||
firmware will pass the FDT address passed by the previous booting stage
|
||||
to the next booting stage.
|
||||
|
||||
* **FW_PAYLOAD_FDT_OFFSET** - Address offset from the *FW_TEXT_START* where
|
||||
* **FW_PAYLOAD_FDT_OFFSET** - Address offset from the opensbi load address where
|
||||
the FDT will be passed to the next booting stage. This offset is used as
|
||||
relocatable address of the FDT passed to the next booting stage. If
|
||||
*FW_PAYLOAD_FDT_ADDR* is also defined, the firmware will prefer *FW_PAYLOAD_FDT_ADDR*.
|
||||
|
@@ -9,10 +9,9 @@ boards.
|
||||
|
||||
By default, the generic FDT platform makes following assumptions:
|
||||
|
||||
1. platform FW_TEXT_START is 0x80000000
|
||||
2. platform features are default
|
||||
3. platform stack size is default
|
||||
4. platform has no quirks or work-arounds
|
||||
1. platform features are default
|
||||
2. platform stack size is default
|
||||
3. platform has no quirks or work-arounds
|
||||
|
||||
The above assumptions (except 1) can be overridden by adding special platform
|
||||
callbacks which will be called based on FDT root node compatible string.
|
||||
@@ -33,10 +32,6 @@ Users of the generic FDT platform will have to ensure that:
|
||||
To build the platform-specific library and firmware images, provide the
|
||||
*PLATFORM=generic* parameter to the top level `make` command.
|
||||
|
||||
For custom FW_TEXT_START, we can build the platform-specific library and
|
||||
firmware images by passing *PLATFORM=generic FW_TEXT_START=<custom_text_start>*
|
||||
parameter to the top level `make` command.
|
||||
|
||||
Platform Options
|
||||
----------------
|
||||
|
||||
|
Reference in New Issue
Block a user