NXP Secure Provisioning SDK

Secure Provisioning SDK (SPSDK) for NXP MCU portfolio

To support interaction with NXP’s SPSDK during production, an SBC can be included in the PPC.

For example, to program a DUT using the built-in bootloader.

Sample Test Plan

title: Program NXP mimxrt1010 EVK using SPSDK
suite:
 - title: Defines
   steps:
    - command: define FIRMWARE.mbi "tinyuf2.bin"
    - command: define SBC.uart "UART2"
    - command: define SBC.vidpid "6666:8001"
 - title: New SBC Session
   steps:
    - command: usb detect
      id: "6666:8001"
    - command: uartCfg %SBC.uart% 115200
      id: "6666:8001"
    - command: sleepms 500
    - command: uart %SBC.uart%
      send: "\x03\r\n\x03\r\n\x04\x04"
    - command: uart %SBC.uart%
      send: "\r\n\x04"
      expect: "pltagent:PASS"
      timeout: 30s
 - title: Write firmware to ramdisk
   steps:
    - command: uart %SBC.uart%
      send: "\r\npltagent-msc-present\r\n"
      expect: "pltagent-msc-present:PASS"
      timeout: 5s
    - command: usb storage mount ramdisk
      id: "6666:8001"
    - command: usb storage write ramdisk %FIRMWARE.bin%
    - command: usb storage unmount ramdisk
    - command: uart %SBC.uart%
      send: "\r\npltagent-msc-mount -forced_eject\r\n"
      expect: "pltagent-msc-mount:PASS"
      timeout: 5s
 - title: Program i.MX-RT1010EVK flash via SPSDK
   steps:
    - command: uart %SBC.uart%
      send: "\r\nsdphost -u 0x1fc9,0x0145 -- write-file 0x20206400 %FIRMWARE.bin%\r\n"
      expect: "Response status = 2290649224 (0x88888888) Write File Success."
      timeout: 30s
    - command: uart %SBC.uart%
      send: "\r\nsdphost -u 0x1fc9,0x0145 -- jump-address 0x20207000 && && echo retval:$?\r\n"
      expect: "retval:0"
      timeout: 5s

References