Skip to main content

BootGraphicsResourceTable

Struct BootGraphicsResourceTable 

Source
#[repr(C, packed(1))]
pub struct BootGraphicsResourceTable { pub header: SDTHeader, pub version: u16, pub status: u8, pub image_type: u8, pub image_address: u64, pub image_offset_x: u32, pub image_offset_y: u32, }
Expand description

§Boot Graphics Resource Table (BGRT)

The Boot Graphics Resource Table (BGRT) is an optional table that provides a mechanism to indicate that an image was drawn on the screen during boot, and some information about the image.

The table is written when the image is drawn on the screen. This should be done after it is expected that any firmware components that may write to the screen are done doing so and it is known that the image is the only thing on the screen. If the boot path is interrupted (e.g., by a key press), the Displayed bit within the status field should be changed to 0 to indicate to the OS that the current image is invalidated.

This table is only supported on UEFI systems.

Fields§

§header: SDTHeader
  • Signature - “BGRT”
§version: u16

2-bytes (16 bit) version ID. This value must be 1.

§status: u8
  • Bits [[7:3]] - Reserved
  • Bits [[2:1]] - Orientation Offset. These bits describe the clockwise degree offset from the image’s default orientation.
    • 0b00 - 0, no offset
    • 0b01 - 90
    • 0b10 - 180
    • 0b11 - 270
  • Bit [[0]] - Displayed. A one indicates the boot image graphic is displayed.
§image_type: u8
  • 0x00 - Bitmap

The rest of the values are reserved.

§image_address: u64

8-byte (64 bit) physical address pointing to the firmware’s in-memory copy of the image bitmap.

§image_offset_x: u32

A 4-byte (32-bit) unsigned long describing the display X-offset of the boot image.

(X, Y) display offset of the top left corner of the boot image. The top left corner of the display is at offset (0, 0).

§image_offset_y: u32

A 4-byte (32-bit) unsigned long describing the display Y-offset of the boot image.

(X, Y) display offset of the top left corner of the boot image. The top left corner of the display is at offset (0, 0).

Trait Implementations§

Source§

impl Clone for BootGraphicsResourceTable

Source§

fn clone(&self) -> BootGraphicsResourceTable

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Copy for BootGraphicsResourceTable

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.