User Guide - pfr#
This user’s guide describes how to use pfr application.
Command line interface#
pfr#
Utility for generating and parsing Protected Flash Region data (CMPA, CFPA).
pfr [OPTIONS] COMMAND [ARGS]...
Options
- -v, --verbose#
Print more detailed information
- -vv, --debug#
Display more debugging information.
- --version#
Show the version and exit.
- --help#
Show this message and exit.
erase-cmpa#
Erase CMPA PFR page in the device if is not sealed.
pfr erase-cmpa [OPTIONS]
Options
- -p, --port <COM[,speed>#
Serial port configuration. Default baud rate is 57600. Use ‘nxpdevscan’ utility to list devices on serial port.
- -u, --usb <VID:PID|USB_PATH|DEV_NAME>#
USB device identifier.
Following formats are supported: <vid>, <vid:pid> or <vid,pid>, device/instance path, device name.<vid>: hex or dec string; e.g. 0x0AB12, 43794.<vid/pid>: hex or dec string; e.g. 0x0AB12:0x123, 1:3451.Use ‘nxpdevscan’ utility to list connected device names.
- -l, --lpcusbsio <usb,VID:PID|USB_PATH|SER_NUM,]spi|i2c>#
USB-SIO bridge interface.
Optional USB device filtering formats: [usb,vid:pid|usb_path|serial_number]
Following serial interfaces are supported:
spi[index][,port,pin,speed_kHz,polarity,phase]- index … optional index of SPI peripheral. Example: “spi1” (default=0)- port … bridge GPIO port used as SPI SSEL(default=0)- pin … bridge GPIO pin used as SPI SSELdefault SSEL is set to 0.15 which worksfor the LPCLink2 bridge. The MCULink OBbridge ignores the SSEL value anyway.(default=15)- speed_kHz … SPI clock in kHz (default 1000)- polarity … SPI CPOL option (default=1)- phase … SPI CPHA option (default=1)i2c[index][,address,speed_kHz]- index … optional index of I2C peripheral. Example: “i2c1” (default=0)- address … I2C device address (default 0x10)- speed_kHz … I2C clock in kHz (default 100)
- -b, --buspal <spi[,speed,polarity,phase,lsb|msb] | i2c[,address,speed>#
Buspal settings
- --timeout <ms>#
Sets timeout when waiting on data over a serial line. The default is 5000 milliseconds.
- -f, --family <family>#
Required Device to use
- Options:
lpc550x | lpc551x | lpc552x | lpc553x | lpc55s0x | lpc55s1x | lpc55s2x | lpc55s3x | lpc55s6x | mcxa1xx | mcxn23x | mcxn9xx | nhs52sxx
- -r, --revision <revision>#
Chip revision; if not specified, most recent one will be used
generate-binary#
Generate binary data.
pfr generate-binary [OPTIONS]
Options
- -e, --rot-config <rot_config>#
Specify Root Of Trust from MBI or Cert block configuration file
- -sf, --secret-file <secret_file>#
Secret file (certificate, public key, private key); can be defined multiple times
- -c, --config <config>#
Required Path to the YAML/JSON configuration file.
- -o, --output <output>#
Required Path to a file, where to store the output.
- -a, --add-seal#
Add seal mark digest at the end.
- -p, --password <password>#
Password when using Encrypted private keys as –secret-file
- -x, --force#
Force to generate binary even the config validation fails.
get-template#
Generate user configuration template file.
pfr get-template [OPTIONS]
Options
- -t, --type <area>#
Required Select PFR partition
- Options:
cmpa | cfpa
- -f, --family <family>#
Required Device to use
- Options:
lpc550x | lpc551x | lpc552x | lpc553x | lpc55s0x | lpc55s1x | lpc55s2x | lpc55s3x | lpc55s6x | mcxa1xx | mcxn23x | mcxn9xx | nhs52sxx
- -r, --revision <revision>#
Chip revision; if not specified, most recent one will be used
- -o, --output <output>#
Required Path to a file, where to store the output.
- --force#
Force overwriting of existing files.
parse-binary#
Parse binary and extract configuration.
pfr parse-binary [OPTIONS]
Options
- -t, --type <area>#
Required Select PFR partition
- Options:
cmpa | cfpa
- -f, --family <family>#
Required Device to use
- Options:
lpc550x | lpc551x | lpc552x | lpc553x | lpc55s0x | lpc55s1x | lpc55s2x | lpc55s3x | lpc55s6x | mcxa1xx | mcxn23x | mcxn9xx | nhs52sxx
- -r, --revision <revision>#
Chip revision; if not specified, most recent one will be used
- -o, --output <output>#
Path to a file, where to store the output.
- -b, --binary <binary>#
Required Binary to parse
- -d, --show-diff#
Show differences comparing to defaults
read#
Read PFR page from the device.
pfr read [OPTIONS]
Options
- -p, --port <COM[,speed>#
Serial port configuration. Default baud rate is 57600. Use ‘nxpdevscan’ utility to list devices on serial port.
- -u, --usb <VID:PID|USB_PATH|DEV_NAME>#
USB device identifier.
Following formats are supported: <vid>, <vid:pid> or <vid,pid>, device/instance path, device name.<vid>: hex or dec string; e.g. 0x0AB12, 43794.<vid/pid>: hex or dec string; e.g. 0x0AB12:0x123, 1:3451.Use ‘nxpdevscan’ utility to list connected device names.
- -l, --lpcusbsio <usb,VID:PID|USB_PATH|SER_NUM,]spi|i2c>#
USB-SIO bridge interface.
Optional USB device filtering formats: [usb,vid:pid|usb_path|serial_number]
Following serial interfaces are supported:
spi[index][,port,pin,speed_kHz,polarity,phase]- index … optional index of SPI peripheral. Example: “spi1” (default=0)- port … bridge GPIO port used as SPI SSEL(default=0)- pin … bridge GPIO pin used as SPI SSELdefault SSEL is set to 0.15 which worksfor the LPCLink2 bridge. The MCULink OBbridge ignores the SSEL value anyway.(default=15)- speed_kHz … SPI clock in kHz (default 1000)- polarity … SPI CPOL option (default=1)- phase … SPI CPHA option (default=1)i2c[index][,address,speed_kHz]- index … optional index of I2C peripheral. Example: “i2c1” (default=0)- address … I2C device address (default 0x10)- speed_kHz … I2C clock in kHz (default 100)
- -b, --buspal <spi[,speed,polarity,phase,lsb|msb] | i2c[,address,speed>#
Buspal settings
- --timeout <ms>#
Sets timeout when waiting on data over a serial line. The default is 5000 milliseconds.
- -t, --type <area>#
Required Select PFR partition
- Options:
cmpa | cfpa
- -f, --family <family>#
Required Device to use
- Options:
lpc550x | lpc551x | lpc552x | lpc553x | lpc55s0x | lpc55s1x | lpc55s2x | lpc55s3x | lpc55s6x | mcxa1xx | mcxn23x | mcxn9xx | nhs52sxx
- -r, --revision <revision>#
Chip revision; if not specified, most recent one will be used
- -o, --output <output>#
Store PFR data into a file. If not specified hexdump data into stdout.
- -y, --yaml <yaml_output>#
Parse data read from device into YAML config.
- -d, --show-diff#
(applicable for parsing) Show differences comparing to defaults
write#
Write PFR page to the device.
pfr write [OPTIONS]
Options
- -p, --port <COM[,speed>#
Serial port configuration. Default baud rate is 57600. Use ‘nxpdevscan’ utility to list devices on serial port.
- -u, --usb <VID:PID|USB_PATH|DEV_NAME>#
USB device identifier.
Following formats are supported: <vid>, <vid:pid> or <vid,pid>, device/instance path, device name.<vid>: hex or dec string; e.g. 0x0AB12, 43794.<vid/pid>: hex or dec string; e.g. 0x0AB12:0x123, 1:3451.Use ‘nxpdevscan’ utility to list connected device names.
- -l, --lpcusbsio <usb,VID:PID|USB_PATH|SER_NUM,]spi|i2c>#
USB-SIO bridge interface.
Optional USB device filtering formats: [usb,vid:pid|usb_path|serial_number]
Following serial interfaces are supported:
spi[index][,port,pin,speed_kHz,polarity,phase]- index … optional index of SPI peripheral. Example: “spi1” (default=0)- port … bridge GPIO port used as SPI SSEL(default=0)- pin … bridge GPIO pin used as SPI SSELdefault SSEL is set to 0.15 which worksfor the LPCLink2 bridge. The MCULink OBbridge ignores the SSEL value anyway.(default=15)- speed_kHz … SPI clock in kHz (default 1000)- polarity … SPI CPOL option (default=1)- phase … SPI CPHA option (default=1)i2c[index][,address,speed_kHz]- index … optional index of I2C peripheral. Example: “i2c1” (default=0)- address … I2C device address (default 0x10)- speed_kHz … I2C clock in kHz (default 100)
- -b, --buspal <spi[,speed,polarity,phase,lsb|msb] | i2c[,address,speed>#
Buspal settings
- --timeout <ms>#
Sets timeout when waiting on data over a serial line. The default is 5000 milliseconds.
- -t, --type <area>#
Required Select PFR partition
- Options:
cmpa | cfpa
- -f, --family <family>#
Required Device to use
- Options:
lpc550x | lpc551x | lpc552x | lpc553x | lpc55s0x | lpc55s1x | lpc55s2x | lpc55s3x | lpc55s6x | mcxa1xx | mcxn23x | mcxn9xx | nhs52sxx
- -r, --revision <revision>#
Chip revision; if not specified, most recent one will be used
- -b, --binary <binary>#
Path to the BIN file with PFR data to write.
- -y, --yaml <yaml_config>#
Path to the PFR YAML config to write.