MBI-A-F-B-EABF-ECSB

Type: object

Boot Configuration Area settings. Default values are always loaded from application first.
BCA can be provided in one of three ways:
1. As a nested dictionary under the 'bca' key - copy values directly from the BCA.YAML template
2. As a path to a YAML file containing BCA configuration - use 'bca: path/to/bca.yaml'
3. As a path to a binary BCA file - use 'bca: path/to/bca.bin'

If any BCA configuration is provided, it will update the application values accordingly. The binary option completely replaces the BCA content, while the YAML and dictionary options selectively update BCA register values.

The chip family name

Type: enum (of string)

NXP chip family identifier.

Must be one of:

  • "mcxa345"
  • "mcxn527"
  • "mcxa143"
  • "kw45z41083"
  • "lpc5504"
  • "lpc5536"
  • "mc56f81748"
  • "mcxc242"
  • "mcxa152"
  • "mimxrt595s"
  • "mimxrt735s"
  • "lpc55s69"
  • "mcxa266"
  • "mcxe247"
  • "lpc55s28"
  • "mcxa174"
  • "kw47z42092"
  • "lpc5516"
  • "mc56f81646"
  • "lpc55s66"
  • "mcxa156"
  • "lpc5514"
  • "mcxa356"
  • "mcxe245"
  • "kw45z41053"
  • "nhs52s04"
  • "mc56f81666"
  • "mcxa186"
  • "mcxa256"
  • "mcxc141"
  • "lpc5502"
  • "lpc55s06"
  • "mcxw727a"
  • "kw45z41082"
  • "kw47b42z97"
  • "kw45z41052"
  • "mcxl253"
  • "mcxe315"
  • "mcxe317"
  • "mcxa132"
  • "mwct2012a"
  • "mcxa153"
  • "mimxrt758s"
  • "mwct2012"
  • "mcxn236"
  • "mcxw727d"
  • "kw47z420b3"
  • "mcxa154"
  • "kw47b42zb7"
  • "mc56f81648"
  • "mcxa133"
  • "mcxc443"
  • "lpc5528"
  • "mcxc444"
  • "k32w148"
  • "mc56f81766"
  • "mc56f81868"
  • "mwct20d2a"
  • "lpc55s36"
  • "mcxa185"
  • "mimxrt685s"
  • "mwct20d2"
  • "mcxc144"
  • "rw610"
  • "lpc5534"
  • "mcxa145"
  • "mcxl254"
  • "mc56f81746"
  • "lpc5506"
  • "mcxa355"
  • "mcxc244"
  • "kw47b42zb2"
  • "mcxe31b"
  • "mcxn947"
  • "mimxrt798s"
  • "mcxa175"
  • "lpc55s14"
  • "mcxn546"
  • "kw47b42zb3"
  • "mcxa146"
  • "kw47z42082"
  • "mcxa173"
  • "mcxe246"
  • "mcxn557s"
  • "mcxw716c"
  • "mcxw727c"
  • "mcxn526"
  • "mcxn556s"
  • "mcxa176"
  • "mc56f81866"
  • "mcxn537"
  • "mcxe316"
  • "mimxrt555s"
  • "mcxa344"
  • "kw47z420b2"
  • "kw45b41z5"
  • "lpc5512"
  • "mcxw236"
  • "kw47b42z83"
  • "mc56f81768"
  • "lpc5526"
  • "mcxl255"
  • "mcxa343"
  • "mcxc142"
  • "lpc55s16"
  • "mcxa346"
  • "mcxa142"
  • "mc56f81668"
  • "mcxn247"
  • "mcxa365"
  • "kw47b42zb6"
  • "mcxc243"
  • "kw47b42z96"
  • "mcxw235"
  • "lpc55s26"
  • "mcxc041"
  • "mcxn536"
  • "mcxa366"
  • "mcxn946"
  • "mcxa265"
  • "mcxc143"
  • "mcxn547"
  • "mcxn235"
  • "lpc55s04"
  • "mcxw716a"
  • "mcxa144"
  • "rw612"
  • "mcxa155"
  • "mcxa255"
  • "mimxrt533s"
  • "kw45b41z8"
  • "lpc553x"
  • "rt5xx"
  • "lpc55s6x"
  • "lpc551x"
  • "mcxe24x"
  • "nhs52sxx"
  • "lpc55s0x"
  • "mwct2x12"
  • "mcxn23x"
  • "kw47xx"
  • "lpc552x"
  • "k32w1xx"
  • "mc56f818xx"
  • "lpc55s3x"
  • "rt6xx"
  • "mwct2xd2"
  • "lpc550x"
  • "mcxn94x"
  • "rt7xx"
  • "mcxn54x"
  • "mcxw71xx"
  • "mc56f817xx"
  • "lpc55s1x"
  • "mcxa1xx"
  • "mc56f816xx"
  • "lpc55s2x"
  • "mcxn9xx"
  • "rw61x"
  • "kw45xx"

MCU revision

Type: enum (of string)

Revision of silicon. The 'latest' name, means most current revision.

Must be one of:

  • "b1"
  • "latest"

Application target

Type: enum (of string)

Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence.

Must be one of:

  • "xip"
  • "load-to-ram"
  • "Internal flash (XIP)"
  • "External flash (XIP)"
  • "Internal Flash (XIP)"
  • "External Flash (XIP)"
  • "RAM"
  • "ram"

Type of boot image authentication

Type: enum (of string)

Specification of final master boot image authentication.

Must be one of:

  • "plain"
  • "crc"
  • "signed"
  • "signed-encrypted"
  • "signed-nxp"
  • "nxp_signed"
  • "nbu-signed"
  • "Plain"
  • "CRC"
  • "Signed"
  • "Encrypted + Signed"
  • "NXP Signed"
  • "NXP signed"
  • "NBU Signed"
  • "encrypted"

Output Image name

Type: stringFormat: file_name

The path for result binary file.

Plain application image

Type: stringFormat: file

The input application image to by modified to Master Boot Image.


mc56f81646

Type: object

BACKDOOR_KEY


Offset: 0x00000000, Width: 64b; Backdoor Comparison Key. Refer to Verify Backdoor Access Key Command and Unsecuring the Chip Using Backdoor Key Access.

Type: string or number
Type: object
No Additional Properties

Type: string or number

BACKDOOR_KEY


Offset: 0x00000000, Width: 64b; Backdoor Comparison Key. Refer to Verify Backdoor Access Key Command and Unsecuring the Chip Using Backdoor Key Access.

Type: string or number
Type: object
No Additional Properties

Type: string or number

FPROT


Offset: 0x00000008, Width: 32b; Program flash protection bytes. Refer to the description of the Program Flash Protection Registers (FPROT0-3).

Type: string or number
Type: object
No Additional Properties

Type: string or number
Type: object
No Additional Properties

Type: object

FPROT3

Type: string or number

Offset: 0b, Width: 8b, Program Flash Protection Registers (FPROT3)

FPROT2

Type: string or number

Offset: 8b, Width: 8b, Program Flash Protection Registers (FPROT2)

FPROT1

Type: string or number

Offset: 16b, Width: 8b, Program Flash Protection Registers (FPROT1)

FPROT0

Type: string or number

Offset: 24b, Width: 8b, Program Flash Protection Registers (FPROT0)

Type: object
No Additional Properties

FPROT3

Type: string or number

Offset: 0b, Width: 8b, Program Flash Protection Registers (FPROT3)

FPROT2

Type: string or number

Offset: 8b, Width: 8b, Program Flash Protection Registers (FPROT2)

FPROT1

Type: string or number

Offset: 16b, Width: 8b, Program Flash Protection Registers (FPROT1)

FPROT0

Type: string or number

Offset: 24b, Width: 8b, Program Flash Protection Registers (FPROT0)

FPROT


Offset: 0x00000008, Width: 32b; Program flash protection bytes. Refer to the description of the Program Flash Protection Registers (FPROT0-3).

Type: string or number
Type: object
No Additional Properties

Type: string or number
Type: object
No Additional Properties

Type: object

FPROT3

Type: string or number

Offset: 0b, Width: 8b, Program Flash Protection Registers (FPROT3)

FPROT2

Type: string or number

Offset: 8b, Width: 8b, Program Flash Protection Registers (FPROT2)

FPROT1

Type: string or number

Offset: 16b, Width: 8b, Program Flash Protection Registers (FPROT1)

FPROT0

Type: string or number

Offset: 24b, Width: 8b, Program Flash Protection Registers (FPROT0)

Type: object
No Additional Properties

FPROT3

Type: string or number

Offset: 0b, Width: 8b, Program Flash Protection Registers (FPROT3)

FPROT2

Type: string or number

Offset: 8b, Width: 8b, Program Flash Protection Registers (FPROT2)

FPROT1

Type: string or number

Offset: 16b, Width: 8b, Program Flash Protection Registers (FPROT1)

FPROT0

Type: string or number

Offset: 24b, Width: 8b, Program Flash Protection Registers (FPROT0)

LIFECYCLE


Offset: 0x0000000C, Width: 8b; DSA Secure Lifecycle state

Type: string or number
Type: object
No Additional Properties

Type: string or number
Type: object
No Additional Properties

Type: object

LIFECYCLE_STATE

Type: string or number

Offset: 0b, Width: 8b, DSA Secure Lifecycle state
- OEMOPENROP0, (254): Most permissive state - full ISP command set available in all conditions
- OEMCLOSEDROP1, (144): Moderate security - partial ISP commands on normal boot, full commands via ROMAPI
- OEM
CLOSEDROP2, (149): Higher security - no ISP commands on normal boot, partial commands via ROMAPI or invalid image
- OEMCLOSEDROP3, (155): Very high security - no ISP commands except ReceiveSBFile via ROMAPI for secure devices only
- OEM
CLOSEDNORETURN, (107): Maximum security - no ISP commands available in any condition, device cannot be reprogrammed

Type: object
No Additional Properties

LIFECYCLE_STATE

Type: string or number

Offset: 0b, Width: 8b, DSA Secure Lifecycle state
- OEMOPENROP0, (254): Most permissive state - full ISP command set available in all conditions
- OEMCLOSEDROP1, (144): Moderate security - partial ISP commands on normal boot, full commands via ROMAPI
- OEM
CLOSEDROP2, (149): Higher security - no ISP commands on normal boot, partial commands via ROMAPI or invalid image
- OEMCLOSEDROP3, (155): Very high security - no ISP commands except ReceiveSBFile via ROMAPI for secure devices only
- OEM
CLOSEDNORETURN, (107): Maximum security - no ISP commands available in any condition, device cannot be reprogrammed

LIFECYCLE


Offset: 0x0000000C, Width: 8b; DSA Secure Lifecycle state

Type: string or number
Type: object
No Additional Properties

Type: string or number
Type: object
No Additional Properties

Type: object

LIFECYCLE_STATE

Type: string or number

Offset: 0b, Width: 8b, DSA Secure Lifecycle state
- OEMOPENROP0, (254): Most permissive state - full ISP command set available in all conditions
- OEMCLOSEDROP1, (144): Moderate security - partial ISP commands on normal boot, full commands via ROMAPI
- OEM
CLOSEDROP2, (149): Higher security - no ISP commands on normal boot, partial commands via ROMAPI or invalid image
- OEMCLOSEDROP3, (155): Very high security - no ISP commands except ReceiveSBFile via ROMAPI for secure devices only
- OEM
CLOSEDNORETURN, (107): Maximum security - no ISP commands available in any condition, device cannot be reprogrammed

Type: object
No Additional Properties

LIFECYCLE_STATE

Type: string or number

Offset: 0b, Width: 8b, DSA Secure Lifecycle state
- OEMOPENROP0, (254): Most permissive state - full ISP command set available in all conditions
- OEMCLOSEDROP1, (144): Moderate security - partial ISP commands on normal boot, full commands via ROMAPI
- OEM
CLOSEDROP2, (149): Higher security - no ISP commands on normal boot, partial commands via ROMAPI or invalid image
- OEMCLOSEDROP3, (155): Very high security - no ISP commands except ReceiveSBFile via ROMAPI for secure devices only
- OEM
CLOSEDNORETURN, (107): Maximum security - no ISP commands available in any condition, device cannot be reprogrammed

OPTION_BYTE


Offset: 0x0000000D, Width: 8b; Flash nonvolatile option byte. Refer to the description of the Flash Option Register (FOPT).

Type: string or number
Type: object
No Additional Properties

Type: string or number
Type: object
No Additional Properties

Type: object

POWER_MODE

Type: string or number

Offset: 0b, Width: 1b, Controls which power mode register takes effect
- SIMPWRMODE, (1): Writing SIMPWRMODE register takes effect, writing SIMPWR register doesn't take effect
- SIM
PWR, (0): Writing SIMPWRMODE register doesn't take effect, writing SIMPWR register takes effect

reserved_field00D-bits1-7

Type: string or number

Offset: 1b, Width: 7b, N/A

reserved_field00D-bits1-7

Type: string or number

Offset: 1b, Width: 7b, N/A

Type: object
No Additional Properties

POWER_MODE

Type: string or number

Offset: 0b, Width: 1b, Controls which power mode register takes effect
- SIMPWRMODE, (1): Writing SIMPWRMODE register takes effect, writing SIMPWR register doesn't take effect
- SIM
PWR, (0): Writing SIMPWRMODE register doesn't take effect, writing SIMPWR register takes effect

reserved_field00D-bits1-7

Type: string or number

Offset: 1b, Width: 7b, N/A

reserved_field00D-bits1-7

Type: string or number

Offset: 1b, Width: 7b, N/A

OPTION_BYTE


Offset: 0x0000000D, Width: 8b; Flash nonvolatile option byte. Refer to the description of the Flash Option Register (FOPT).

Type: string or number
Type: object
No Additional Properties

Type: string or number
Type: object
No Additional Properties

Type: object

POWER_MODE

Type: string or number

Offset: 0b, Width: 1b, Controls which power mode register takes effect
- SIMPWRMODE, (1): Writing SIMPWRMODE register takes effect, writing SIMPWR register doesn't take effect
- SIM
PWR, (0): Writing SIMPWRMODE register doesn't take effect, writing SIMPWR register takes effect

reserved_field00D-bits1-7

Type: string or number

Offset: 1b, Width: 7b, N/A

reserved_field00D-bits1-7

Type: string or number

Offset: 1b, Width: 7b, N/A

Type: object
No Additional Properties

POWER_MODE

Type: string or number

Offset: 0b, Width: 1b, Controls which power mode register takes effect
- SIMPWRMODE, (1): Writing SIMPWRMODE register takes effect, writing SIMPWR register doesn't take effect
- SIM
PWR, (0): Writing SIMPWRMODE register doesn't take effect, writing SIMPWR register takes effect

reserved_field00D-bits1-7

Type: string or number

Offset: 1b, Width: 7b, N/A

reserved_field00D-bits1-7

Type: string or number

Offset: 1b, Width: 7b, N/A

Type: stringFormat: file

Path to FCF configuration or binary file


mc56f81646

Type: object

TAG


Offset: 0x00000000, Width: 32b; Tag: Magic number to verify bootloader configuration is valid. Must be set to 'KCFG'

Type: string or number
Type: object
No Additional Properties

Type: string or number

TAG


Offset: 0x00000000, Width: 32b; Tag: Magic number to verify bootloader configuration is valid. Must be set to 'KCFG'

Type: string or number
Type: object
No Additional Properties

Type: string or number

CRC_START_ADDRESS


Offset: 0x00000004, Width: 32b; Start address for application image CRC check

Type: string or number
Type: object
No Additional Properties

Type: string or number

CRC_START_ADDRESS


Offset: 0x00000004, Width: 32b; Start address for application image CRC check

Type: string or number
Type: object
No Additional Properties

Type: string or number

CRC_BYTE_COUNT


Offset: 0x00000008, Width: 32b; Byte count for application image CRC check

Type: string or number
Type: object
No Additional Properties

Type: string or number

CRC_BYTE_COUNT


Offset: 0x00000008, Width: 32b; Byte count for application image CRC check

Type: string or number
Type: object
No Additional Properties

Type: string or number

CRC_EXPECTED_VALUE


Offset: 0x0000000C, Width: 32b; Expected CRC value for application CRC check

Type: string or number
Type: object
No Additional Properties

Type: string or number

CRC_EXPECTED_VALUE


Offset: 0x0000000C, Width: 32b; Expected CRC value for application CRC check

Type: string or number
Type: object
No Additional Properties

Type: string or number

ENABLED_PERIPHERALS


Offset: 0x00000010, Width: 8b; Bitfield of peripherals to enable. Bootloader will enable the peripheral if corresponding bit is set to 1

Type: string or number
Type: object
No Additional Properties

Type: object
No Additional Properties

Type: object

UART_SCI

Type: string or number

Offset: 0b, Width: 1b, Enable UART/SCI peripheral
- DISABLE, (0): Disable UART/SCI peripheral
- ENABLE, (1): Enable UART/SCI peripheral

LPI2C

Type: string or number

Offset: 1b, Width: 1b, Enable LPI2C peripheral
- DISABLE, (0): Disable LPI2C peripheral
- ENABLE, (1): Enable LPI2C peripheral

reserved_field010-bits2-7

Type: string or number

Offset: 2b, Width: 6b, N/A

reserved_field010-bits2-7

Type: string or number

Offset: 2b, Width: 6b, N/A

Type: object
No Additional Properties

UART_SCI

Type: string or number

Offset: 0b, Width: 1b, Enable UART/SCI peripheral
- DISABLE, (0): Disable UART/SCI peripheral
- ENABLE, (1): Enable UART/SCI peripheral

LPI2C

Type: string or number

Offset: 1b, Width: 1b, Enable LPI2C peripheral
- DISABLE, (0): Disable LPI2C peripheral
- ENABLE, (1): Enable LPI2C peripheral

reserved_field010-bits2-7

Type: string or number

Offset: 2b, Width: 6b, N/A

reserved_field010-bits2-7

Type: string or number

Offset: 2b, Width: 6b, N/A

ENABLED_PERIPHERALS


Offset: 0x00000010, Width: 8b; Bitfield of peripherals to enable. Bootloader will enable the peripheral if corresponding bit is set to 1

Type: string or number
Type: object
No Additional Properties

Type: string or number
Type: object
No Additional Properties

Type: object

UART_SCI

Type: string or number

Offset: 0b, Width: 1b, Enable UART/SCI peripheral
- DISABLE, (0): Disable UART/SCI peripheral
- ENABLE, (1): Enable UART/SCI peripheral

LPI2C

Type: string or number

Offset: 1b, Width: 1b, Enable LPI2C peripheral
- DISABLE, (0): Disable LPI2C peripheral
- ENABLE, (1): Enable LPI2C peripheral

reserved_field010-bits2-7

Type: string or number

Offset: 2b, Width: 6b, N/A

reserved_field010-bits2-7

Type: string or number

Offset: 2b, Width: 6b, N/A

Type: object
No Additional Properties

UART_SCI

Type: string or number

Offset: 0b, Width: 1b, Enable UART/SCI peripheral
- DISABLE, (0): Disable UART/SCI peripheral
- ENABLE, (1): Enable UART/SCI peripheral

LPI2C

Type: string or number

Offset: 1b, Width: 1b, Enable LPI2C peripheral
- DISABLE, (0): Disable LPI2C peripheral
- ENABLE, (1): Enable LPI2C peripheral

reserved_field010-bits2-7

Type: string or number

Offset: 2b, Width: 6b, N/A

reserved_field010-bits2-7

Type: string or number

Offset: 2b, Width: 6b, N/A

I2C_SLAVE_ADDRESS


Offset: 0x00000011, Width: 8b; If not 0xFF, used as the 7-bit I2C slave address

Type: string or number
Type: object
No Additional Properties

Type: string or number

I2C_SLAVE_ADDRESS


Offset: 0x00000011, Width: 8b; If not 0xFF, used as the 7-bit I2C slave address

Type: string or number
Type: object
No Additional Properties

Type: string or number

PERIPHERAL_DETECTION_TIMEOUT


Offset: 0x00000012, Width: 16b; Timeout in milliseconds for active peripheral detection

Type: object
No Additional Properties

PERIPHERAL_DETECTION_TIMEOUT


Offset: 0x00000012, Width: 16b; Timeout in milliseconds for active peripheral detection

Type: string or number
Type: object
No Additional Properties

Type: string or number

BOOT_FLAGS


Offset: 0x0000001E, Width: 8b; One's complement of direct boot flag. 0xFE represents direct boot

Type: string or number
Type: object
No Additional Properties

Type: string or number
Type: object
No Additional Properties

Type: object

DIRECT_BOOT

Type: string or number

Offset: 0b, Width: 1b, Enable direct boot
- ENABLE, (0): Enable direct boot
- DISABLE, (1): Disable direct boot - standard boot with ISP

reserved_field01E-bits1-7

Type: string or number

Offset: 1b, Width: 7b, N/A

reserved_field01E-bits1-7

Type: string or number

Offset: 1b, Width: 7b, N/A

Type: object
No Additional Properties

DIRECT_BOOT

Type: string or number

Offset: 0b, Width: 1b, Enable direct boot
- ENABLE, (0): Enable direct boot
- DISABLE, (1): Disable direct boot - standard boot with ISP

reserved_field01E-bits1-7

Type: string or number

Offset: 1b, Width: 7b, N/A

reserved_field01E-bits1-7

Type: string or number

Offset: 1b, Width: 7b, N/A

BOOT_FLAGS


Offset: 0x0000001E, Width: 8b; One's complement of direct boot flag. 0xFE represents direct boot

Type: string or number
Type: object
No Additional Properties

Type: string or number
Type: object
No Additional Properties

Type: object

DIRECT_BOOT

Type: string or number

Offset: 0b, Width: 1b, Enable direct boot
- ENABLE, (0): Enable direct boot
- DISABLE, (1): Disable direct boot - standard boot with ISP

reserved_field01E-bits1-7

Type: string or number

Offset: 1b, Width: 7b, N/A

reserved_field01E-bits1-7

Type: string or number

Offset: 1b, Width: 7b, N/A

Type: object
No Additional Properties

DIRECT_BOOT

Type: string or number

Offset: 0b, Width: 1b, Enable direct boot
- ENABLE, (0): Enable direct boot
- DISABLE, (1): Disable direct boot - standard boot with ISP

reserved_field01E-bits1-7

Type: string or number

Offset: 1b, Width: 7b, N/A

reserved_field01E-bits1-7

Type: string or number

Offset: 1b, Width: 7b, N/A

IMAGE_SIZE


Offset: 0x00000020, Width: 32b; The information about total size of the image

Type: string or number
Type: object
No Additional Properties

Type: string or number

IMAGE_SIZE


Offset: 0x00000020, Width: 32b; The information about total size of the image

Type: string or number
Type: object
No Additional Properties

Type: string or number

FIRMWARE_VERSION


Offset: 0x00000024, Width: 32b; Firmware version, stored in little endian format. Used for anti-rollback protection. New firmware must have the same or higher FW version

Type: string or number
Type: object
No Additional Properties

Type: string or number

FIRMWARE_VERSION


Offset: 0x00000024, Width: 32b; Firmware version, stored in little endian format. Used for anti-rollback protection. New firmware must have the same or higher FW version

Type: string or number
Type: object
No Additional Properties

Type: string or number
Type: stringFormat: file

Path to BCA configuration or binary file