Google is committed to advancing racial equity for Black communities. See how.

fuchsia.boot

PROTOCOLS

Arguments

Defined in fuchsia.boot/arguments.fidl

Protocol for retrieving boot arguments.

Collect

Get all boot arguments with keys starting with prefix. Returns a vector with strings of the form 'key=value'. TODO(fxb/33460) - remove Collect once boot arguments have been componentised.

Request

NameType
prefix string[64]

Response

NameType
results vector<string>[32]

GetBool

Get the boolean value of a boot argument keys, or return defaultval if the argument is not present. A key is considered to be false if its string value is exactly "off", "0", or "false". Any other value (including empty) is returned as true.

Request

NameType
key string[64]
defaultval bool

Response

NameType
value bool

GetBools

Get the boolean values of a list of boot arguments keys.key, or return keys.defaultval for each if not present.

Request

NameType
keys vector<BoolPair>[32]

Response

NameType
values vector<bool>[32]

GetString

Get the value of a boot argument key.

Request

NameType
key string[64]

Response

NameType
value string[128]?

GetStrings

Get the values of a list of arguments specified in keys.

Request

NameType
keys vector<string>[32]

Response

NameType
values vector<string>[193]

FactoryItems

Defined in fuchsia.boot/factory-items.fidl

Protocol for retrieving factory boot item payloads.

Get

Gets a payload for a ZBI_TYPE_STORAGE_BOOTFS_FACTORY boot item with extra field set to extra.

NOTE: We return the length of the item, as VMOs must be page-aligned.

Request

NameType
extra uint32

Response

NameType
payload handle<vmo>?
length uint32

Items

Defined in fuchsia.boot/items.fidl

Protocol for retrieving boot item payloads.

Get

Get a payload for a boot item of type and extra. NOTE: We return the length of the item, as VMOs must be page-aligned.

For a list of types, refer to <zircon/boot/image.h>. For a list of extras, refer to <zircon/boot/driver-config.h>.

Request

NameType
type uint32
extra uint32

Response

NameType
payload handle<vmo>?
length uint32

ReadOnlyLog

Defined in fuchsia.boot/log.fidl

Protocol for providing the kernel log, readable.

Get

Get read-only handle to the kernel log.

Request

NameType

Response

NameType
log handle<debuglog>

RootJob

Defined in fuchsia.boot/root-job.fidl

Protocol for providing the root job.

TODO(ZX-4072): Do not use this without first consulting the Zircon team.

Get

Get the root job.

Request

NameType

Response

NameType
job handle<job>

RootJobForInspect

Defined in fuchsia.boot/root-job.fidl

Protocol for providing the root job with restricted rights, specifically: INSPECT | ENUMERATE | DUPLICATE | TRANSFER

Get

Get the root job.

Request

NameType

Response

NameType
job handle<job>

RootResource

Defined in fuchsia.boot/root-resource.fidl

Protocol for providing the root resource.

Get

Get the root resource.

Request

NameType

Response

NameType
resource handle<resource>

WriteOnlyLog

Defined in fuchsia.boot/log.fidl

Protocol for providing the kernel log, writable.

Get

Get write-only handle to the kernel log.

Request

NameType

Response

NameType
log handle<debuglog>

STRUCTS

BoolPair

Defined in fuchsia.boot/arguments.fidl

NameTypeDescriptionDefault
key string[64] No default
defaultval bool No default

CONSTANTS

NameValueTypeDescription
MAX_ARGS_COLLECT_LENGTH 193 uint8
MAX_ARGS_NAME_LENGTH 64 uint8
MAX_ARGS_VALUE_LENGTH 128 uint8
MAX_ARGS_VECTOR_LENGTH 32 uint8