pub struct ConfigurationBlock { /* private fields */ }
Expand description

A serial NOR configuration block

This is the memory that you’ll need to properly place in memory in order to boot your i.MX RT system. Consider keeping the symbol name, and specifying a link section, so that you can more easily place the memory in your linker script.

Unless otherwise specified, all unset fields are set to a bitpattern of zero.

1170 notes

By default, isUniformBlockSize is set to 1, indicating that the block size and sector sizes are equal. Using block_size clears this field and allows you to differentiate the block size from the sector size.

use imxrt_boot_gen::serial_flash::nor;

#[no_mangle]
#[link_section = ".serial_nor_cb"]
static SERIAL_NOR_CONFIGURATION_BLOCK: nor::ConfigurationBlock =
    nor::ConfigurationBlock::new(FLEXSPI_CONFIGURATION_BLOCK)
        .page_size(256)
        .sector_size(4096)
        .ip_cmd_serial_clk_freq(nor::SerialClockFrequency::MHz30);

Implementations

Create a new serial NOR configuration block based on the FlexSPI configuration block

Set the serial NOR page size

Set the serial NOR sector size

Set the serial clock frequency

Trait Implementations

Returns a copy of the value. Read more
Performs copy-assignment from source. Read more
Formats the value using the given formatter. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

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

The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.