template <typename... Items>

class DevicetreeBootShim

Defined at line 59 of file ../../zircon/kernel/phys/lib/boot-shim/include/lib/boot-shim/devicetree-boot-shim.h

A DevicetreeBootShim represents a collection of items, which look into the devicetree itself

to gather information to produce ZBI items.

A devicetree item requires inspecting the devicetree. In addition to the API requirements from a

BootShim's item it must fulfill a devicetree Matcher API. |DevicetreeItemBase| provides the

expected API for the |DevicetreeBootShim|'s items.

Prefer inheriting from |DevicetreeItemBase| when possible.

Public Methods

void DevicetreeBootShim<Items...> (const char * name, devicetree::Devicetree dt, FILE * log)

Defined at line 68 of file ../../zircon/kernel/phys/lib/boot-shim/include/lib/boot-shim/devicetree-boot-shim.h

void DevicetreeBootShim<Items...> (const char * name, devicetree::Devicetree dt, FILE * log)

Defined at line 68 of file ../../zircon/kernel/phys/lib/boot-shim/include/lib/boot-shim/devicetree-boot-shim.h

bool Init ()

Initializes all devicetree boot shim items. As part of the initialization

each matcher's `Init(shim_name, log)` is called, followed by a single

invocation of `devicetree::Match| allowing each provided matcher to

collect information from the devicetree.

Defined at line 75 of file ../../zircon/kernel/phys/lib/boot-shim/include/lib/boot-shim/devicetree-boot-shim.h

const devicetree::Devicetree & devicetree ()

Defined at line 86 of file ../../zircon/kernel/phys/lib/boot-shim/include/lib/boot-shim/devicetree-boot-shim.h

const Allocator & allocator ()

Defined at line 88 of file ../../zircon/kernel/phys/lib/boot-shim/include/lib/boot-shim/devicetree-boot-shim.h

const DevicetreeBootShimMmioObserver & mmio_observer ()

Defined at line 92 of file ../../zircon/kernel/phys/lib/boot-shim/include/lib/boot-shim/devicetree-boot-shim.h

void set_allocator (Allocator && allocator)

Defined at line 97 of file ../../zircon/kernel/phys/lib/boot-shim/include/lib/boot-shim/devicetree-boot-shim.h

void set_allocator (Allocator && allocator)

Defined at line 97 of file ../../zircon/kernel/phys/lib/boot-shim/include/lib/boot-shim/devicetree-boot-shim.h

void set_allocator (Allocator && allocator)

Defined at line 97 of file ../../zircon/kernel/phys/lib/boot-shim/include/lib/boot-shim/devicetree-boot-shim.h

void set_allocator (Allocator && allocator)

Defined at line 97 of file ../../zircon/kernel/phys/lib/boot-shim/include/lib/boot-shim/devicetree-boot-shim.h

void set_mmio_observer (DevicetreeBootShimMmioObserver && observer)

Optional: Set a callback for MMIO Ranges of interest for each |Item|

of the shim.

Defined at line 101 of file ../../zircon/kernel/phys/lib/boot-shim/include/lib/boot-shim/devicetree-boot-shim.h

void set_mmio_observer (DevicetreeBootShimMmioObserver && observer)

Optional: Set a callback for MMIO Ranges of interest for each |Item|

of the shim.

Defined at line 101 of file ../../zircon/kernel/phys/lib/boot-shim/include/lib/boot-shim/devicetree-boot-shim.h

void set_mmio_observer (DevicetreeBootShimMmioObserver && observer)

Optional: Set a callback for MMIO Ranges of interest for each |Item|

of the shim.

Defined at line 101 of file ../../zircon/kernel/phys/lib/boot-shim/include/lib/boot-shim/devicetree-boot-shim.h

void set_mmio_observer (DevicetreeBootShimMmioObserver && observer)

Optional: Set a callback for MMIO Ranges of interest for each |Item|

of the shim.

Defined at line 101 of file ../../zircon/kernel/phys/lib/boot-shim/include/lib/boot-shim/devicetree-boot-shim.h