Score
0
1 Unstar Star 1 Fork 1

Gitee 极速下载 / OpenSBIC

Clone or download
fw.md
Copy Edit Web IDE Raw Normal History
Damien Le Moal   docs/firmware: Add top level document file 2019-01-23
OpenSBI Platform Firmwares==========================OpenSBI provides firmware builds for specific platforms. Different types offirmwares are supported to deal with the differences between different platformsearly boot stage. All firmwares will execute the same initialization procedureof the platform hardware according to the platform specific code as well as
Atish Patra   docs: Add a payload section describing different payloads. 2019-02-18
OpenSBI generic library code. The supported firmwares type will differ in how
Damien Le Moal   docs/firmware: Add top level document file 2019-01-23
the arguments passed by the platform early boot stage are handled, as well ashow the boot stage following the firmware will be handled and executed.
Anup Patel   docs: Add documentation about dynamic firmware 2019-04-29
OpenSBI currently supports three different types of firmwares.Firmware with Dynamic Information (*FW_DYNAMIC*)------------------------------------------------The *FW_DYNAMIC* firmware gets information about the next booting stage entry,e.g. a bootloader or an OS kernel, from previous booting stage at runtime.A *FW_DYNAMIC* firmware is particularly useful when the booting stage executedprior to OpenSBI firmware is capable of loading both the OpenSBI firmwareand the booting stage binary to follow OpenSBI firmware.
Damien Le Moal   docs/firmware: Add top level document file 2019-01-23
Firmware with Jump Address (*FW_JUMP*)--------------------------------------
Anup Patel   docs: Add documentation about dynamic firmware 2019-04-29
The *FW_JUMP* firmware assumes a fixed address of the next booting stage
Damien Le Moal   docs/firmware: Add top level document file 2019-01-23
entry, e.g. a bootloader or an OS kernel, without directly including thebinary code for this next stage.A *FW_JUMP* firmware is particularly useful when the booting stage executedprior to OpenSBI firmware is capable of loading both the OpenSBI firmwareand the booting stage binary to follow OpenSBI firmware.Firmware with Payload (*FW_PAYLOAD*)------------------------------------The *FW_PAYLOAD* firmware directly includes the binary code for the bootingstage to follow OpenSBI firmware execution. Typically, this payload will be abootloader or an OS kernel.A *FW_PAYLOAD* firmware is particularly useful when the booting stage executedprior to OpenSBI firmware is not capable of loading both OpenSBI firmware andthe booting stage to follow OpenSBI firmware.A *FW_PAYLOAD* firmware is also useful for cases where the booting stage priorto OpenSBI firmware does not pass a *flattened device tree (FDT file)*. In suchcase, a *FW_PAYLOAD* firmware allows embedding a flattened device tree in the.text section of the final firmware.Firmware Configuration and Compilation--------------------------------------
Anup Patel   firmware: Add common FW_FDT_PATH compile-time option 2020-10-14
All firmware types support the following common compile time configurationparameters:* **FW_TEXT_ADDR** - 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  argument by the prior booting stage.* **FW_FDT_PADDING** - Optional zero bytes padding to the embedded flattened  device tree binary file specified by **FW_FDT_PATH** option.
Damien Le Moal   docs/firmware: Add top level document file 2019-01-23
Additionally, each firmware type as a set of type specific configuration
Anup Patel   docs: Add documentation about dynamic firmware 2019-04-29
parameters. Detailed information for each firmware type can be found in the
Damien Le Moal   docs/firmware: Add top level document file 2019-01-23
following documents.
Anup Patel   docs: Add documentation about dynamic firmware 2019-04-29
* *[FW_DYNAMIC]*: The *Firmware with Dynamic Information (FW_DYNAMIC)* is  described in more details in the file *fw_dynamic.md*.
Damien Le Moal   docs/firmware: Add top level document file 2019-01-23
* *[FW_JUMP]*: The *Firmware with Jump Address (FW_JUMP)* is described in more  details in the file *fw_jump.md*.* *[FW_PAYLOAD]*: The *Firmware with Payload (FW_PAYLOAD)* is described in more  details in the file *fw_payload.md*.
Anup Patel   docs: Add documentation about dynamic firmware 2019-04-29
[FW_DYNAMIC]: fw_dynamic.md
Damien Le Moal   docs/firmware: Add top level document file 2019-01-23
[FW_JUMP]: fw_jump.md[FW_PAYLOAD]: fw_payload.md
Atish Patra   docs: Add a payload section describing different payloads. 2019-02-18
Providing different payloads to OpenSBI Firmware------------------------------------------------OpenSBI firmware can accept various payloads using a compile time option.Typically, these payloads refer to the next stage boot loader (e.g. U-Boot)or operating system kernel images (e.g. Linux). By default, OpenSBIautomatically provides a test payload if no specific payload is specifiedat compile time.To specify a payload at compile time, the make variable _FW_PAYLOAD_PATH_ isused.```make PLATFORM=<platform_subdir> FW_PAYLOAD_PATH=<payload path>```The instructions to build each payload is different and the details canbe found in the*docs/firmware/payload_<payload_name>.md* files.
Bin Meng   lib: Disable the boot prints if SBI_SCRATCH_NO_BOOT_PRINTS is set 2019-03-27
Options for OpenSBI Firmware behaviors--------------------------------------An optional compile time flag FW_OPTIONS can be used to control the OpenSBIfirmware run-time behaviors.```make PLATFORM=<platform_subdir> FW_OPTIONS=<options>```FW_OPTIONS is a bitwise or'ed value of various options, eg: *FW_OPTIONS=0x1*stands for disabling boot prints from the OpenSBI library.For all supported options, please check "enum sbi_scratch_options" in the*include/sbi/sbi_scratch.h* header file.
C
1
https://gitee.com/mirrors/OpenSBI.git
git@gitee.com:mirrors/OpenSBI.git
mirrors
OpenSBI
OpenSBI
master

Search

132457 8cb2edc1 1899542 131848 70c8d3a4 1899542