Expand description
Support for the RP235x Boot ROM’s “Block” structures
Blocks contain pointers, to form Block Loops.
The IMAGE_DEF
Block (here the ImageDef
type) tells the ROM how to boot a
firmware image. The PARTITION_TABLE
Block (here the PartitionTable
type)
tells the ROM how to divide the flash space up into partitions.
Structs§
- Block
- A Block as understood by the Boot ROM.
- Partition
- Describes a Partition
- Partition
Table Block - Describes a partition table.
- Unpartitioned
Space - Describes a unpartitioned space
Enums§
- Architecture
- The supported RP2350 CPU architectures
- Link
- Kinds of linked partition
- Partition
Flag - Flags that a Partition can have
- Permission
- Permissions that a Partition can have
- Security
- The kinds of Secure Boot we support
- Unpartitioned
Flag - Flags that a Partition can have
Constants§
- IMAGE_
TYPE_ DATA - A
ITEM_1BS_IMAGE_TYPE
value bitmask to mark an image as data - IMAGE_
TYPE_ EXE - A
ITEM_1BS_IMAGE_TYPE
value bitmask to mark an image as an executable - IMAGE_
TYPE_ EXE_ CHIP_ RP2040 - A
ITEM_1BS_IMAGE_TYPE
value bitmask to mark the CPU as an RP2040 - IMAGE_
TYPE_ EXE_ CHIP_ RP2350 - A
ITEM_1BS_IMAGE_TYPE
value bitmask to mark the CPU as an RP2350 - IMAGE_
TYPE_ EXE_ CPU_ ARM - A
ITEM_1BS_IMAGE_TYPE
value bitmask to mark the CPU type as Arm - IMAGE_
TYPE_ EXE_ CPU_ RISCV - A
ITEM_1BS_IMAGE_TYPE
value bitmask to mark the CPU type as RISC-V - IMAGE_
TYPE_ EXE_ TYPE_ SECURITY_ NS - A
ITEM_1BS_IMAGE_TYPE
value bitmask to mark the CPU security mode as Non Secure - IMAGE_
TYPE_ EXE_ TYPE_ SECURITY_ S - A
ITEM_1BS_IMAGE_TYPE
value bitmask to mark the CPU security mode as Non Secure - IMAGE_
TYPE_ EXE_ TYPE_ SECURITY_ UNSPECIFIED - A
ITEM_1BS_IMAGE_TYPE
value bitmask to mark the CPU security mode as unspecified - IMAGE_
TYPE_ INVALID - A
ITEM_1BS_IMAGE_TYPE
value bitmask to mark an image as invalid - IMAGE_
TYPE_ TBYB - A
ITEM_1BS_IMAGE_TYPE
value bitmask to mark the image as Try Before You Buy. - ITEM_
1BS_ ENTRY_ POINT - An item ID for encoding the image’s Entry Point
- ITEM_
1BS_ HASH_ VALUE - An item ID for encoding a Hash
- ITEM_
1BS_ IMAGE_ TYPE - An item ID for encoding an Image Type
- ITEM_
1BS_ ROLLING_ WINDOW_ DELTA - An item ID for encoding a Rolling Window Delta
- ITEM_
1BS_ SALT - An item ID for encoding a Salt
- ITEM_
1BS_ SIGNATURE - An item ID for encoding a Signature
- ITEM_
1BS_ VECTOR_ TABLE - An item ID for encoding a Vector Table address
- ITEM_
1BS_ VERSION - An item ID for encoding a Version
- ITEM_
2BS_ HASH_ DEF - An item ID for encoding the definition of a Hash
- ITEM_
2BS_ IGNORED - An item ID for encoding a placeholder entry that is ignored
- ITEM_
2BS_ LAST - An item ID for encoding the special last item in a Block
- ITEM_
2BS_ LOAD_ MAP - An item ID for encoding a Load Map
- ITEM_
2BS_ PARTITION_ TABLE - An item ID for encoding a Partition Table
- PARTITION_
TABLE_ MAX_ ITEMS - We make our partition table this fixed size.
Functions§
- item_
entry_ point - Create an Entry Point item.
- item_
generic_ 1bs - Make an item containing a tag, 1 byte length and two extra bytes.
- item_
generic_ 2bs - Make an item containing a tag, 2 byte length and one extra byte.
- item_
ignored - Create Image Type item, of type IGNORED.
- item_
image_ type_ data - Create Image Type item, of type DATA.
- item_
image_ type_ exe - Create Image Type item, of type EXE.
- item_
image_ type_ invalid - Create Image Type item, of type INVALID.
- item_
last - Create a Block Last item.
- item_
rolling_ window - Create an Rolling Window item.
- item_
vector_ table - Create a Vector Table item.
Type Aliases§
- Image
Def - An Image Definition has one item in it - an
ITEM_1BS_IMAGE_TYPE