154 lines
8.4 KiB
Plaintext
154 lines
8.4 KiB
Plaintext
; --------------------------------------------------------------------------------
|
|
; @Title: IVT On-Chip Peripherals
|
|
; @Props: Released
|
|
; @Author: DAB
|
|
; @Changelog: 2022-02-23 DAB
|
|
; @Manufacturer: NXP - NXP Semiconductors
|
|
; @Doc:
|
|
; @Core: Cortex-A53, Cortex-R52, Cortex-M7, Cortex-M33
|
|
; @Chip: S32G2* S32G3* S32R45* S32R41* SAF85XX* S32S247TV* S32Z27* S32E27*
|
|
; @Copyright: (C) 1989-2022 Lauterbach GmbH, licensed for use with TRACE32(R) only
|
|
; --------------------------------------------------------------------------------
|
|
; $Id: pers32_ivt.per 15945 2023-04-11 07:39:41Z skrausse $
|
|
|
|
tree "IVT Table (QSPI)"
|
|
base ad:0x00
|
|
width 58.
|
|
group.long 0x00++0x03
|
|
line.long 0x00 "IVT header,Header Showing The Start Of The IVT"
|
|
hexmask.long.byte 0x00 24.--31. 1. " TAG ,Tag"
|
|
newline
|
|
hexmask.long.word 0x00 8.--23. 1. " LEN ,Length"
|
|
newline
|
|
hexmask.long.byte 0x00 0.--7. 1. " VER ,Version"
|
|
group.long 0x08++0x27
|
|
line.long 0x00 "Self-Test DCD pointer,Pointer to the start of the configuration data used for BIST"
|
|
line.long 0x04 "Self-Test DCD pointer (backup),Pointer to the start of the backup configuration data used for BIST"
|
|
line.long 0x08 "DCD_pointer,Pointer to the start of DCD configuration data"
|
|
line.long 0x0C "DCD_pointer (backup),Pointer to the start of backup DCD configuration data"
|
|
line.long 0x10 "HSE_H firmware flash memory start pointer,Pointer to the start of the HSE_H firmware in flash memory"
|
|
line.long 0x14 "HSE_H firmware flash memory start pointer (backup),Pointer to the start of the backup HSE_H firmware in flash memory"
|
|
line.long 0x18 "Application_boot code flash memory start pointer,Pointer to the start of the application boot code in flash memory"
|
|
line.long 0x1C "Application_boot code flash memory start pointer (backup),Pointer to the start of the backup application boot code in flash memory"
|
|
line.long 0x20 "Boot_configuration word,Configuration data used to select the boot configuration"
|
|
bitfld.long 0x20 3. " BOOT_SEQ ,Secure boot mode" "Non-secure,Secure"
|
|
newline
|
|
bitfld.long 0x20 2. " SWT ,Boot target watchdog" "Disabled,Enabled"
|
|
newline
|
|
bitfld.long 0x20 0.--1. " BOOT_TARGET ,Boot target" "Cortex-M7_0,Cortex-A53_0,?..."
|
|
line.long 0x24 "Life cycle configuration word,Configuration data used for advancing life cycle"
|
|
bitfld.long 0x24 1. " IN_FIELD ,Advances life cycle state to IN_FIELD" "Disabled,Enabled"
|
|
newline
|
|
bitfld.long 0x24 0. " OEM_PROD ,Advances life cycle state to OEM_PROD" "Disabled,Enabled"
|
|
repeat 8. (increment 0x34 0x04) (increment 0. 1.)
|
|
group.long $1++0x03
|
|
line.long 0x00 "HSE_H firmware $2,Defined by the HSE_H firmware specification"
|
|
repeat.end
|
|
newline
|
|
repeat 4. (increment 0xF0 0x04) (increment 0. 1.)
|
|
group.long $1++0x03
|
|
line.long 0x00 "GMAC$2,Galois Message Authentication Code of first 240 bytes of IVT image structure"
|
|
repeat.end
|
|
tree "DCD Registers"
|
|
base ad:((per.l(ad:0x00+0x10))&0xFFFFFFFF)
|
|
width 26.
|
|
group.long 0x00++0x03
|
|
line.long 0x00 "DCD header,Header to signify start of DCD data"
|
|
hexmask.long.byte 0x00 24.--31. 1. " TAG ,Tag"
|
|
hexmask.long.word 0x00 8.--23. 1. " LEN ,Length"
|
|
hexmask.long.byte 0x00 0.--7. 1. " VER ,Version"
|
|
group.byte 0x04++0x01 "DCD data"
|
|
line.byte 0x00 "Write Data Parameters,Write data command parameters"
|
|
bitfld.byte 0x00 4. " Data Set ,Status bit showing whether bits at target were successfully overwritten" "Not overwritten,Overwritten"
|
|
bitfld.byte 0x00 3. " Data Mask ,Enables overwriting of bits at target address" "All bits,Specific bits"
|
|
bitfld.byte 0x00 0.--2. " Bytes ,Width of target location(s) in bytes" ",1 byte,2 bytes,,4 bytes,?..."
|
|
line.byte 0x01 "Check Data Parameters,Check data command parameters"
|
|
bitfld.byte 0x01 4. " Data Set ,Enables bit checking at target address" "Ignored,Checked"
|
|
bitfld.byte 0x01 3. " Data Mask ,Enables partial/complete checking of bits when the Data Set field is set to 1" "All bits,Specific bits"
|
|
bitfld.byte 0x01 0.--2. " Bytes ,Size of target locations in bytes." ",1 byte,2 bytes,,4 bytes,?..."
|
|
base ad:(((per.l(ad:((per.l(ad:0x00+0x10))&0xFFFFFFFF))>>8)&0xFFFF)+0x04)
|
|
group.long 0x000++0x03
|
|
line.long 0x00 "GMAC,Cryptographic hash for DCD header and complete DCD data using IVTDCD key"
|
|
width 0x0B
|
|
tree.end
|
|
tree "DCD Self-Test Registers"
|
|
base ad:((per.l(ad:0x00+0x08))&0xFFFFFFFF)
|
|
width 26.
|
|
group.long 0x00++0x03
|
|
line.long 0x00 "DCD SelfTest header,Header to signify start of DCD SelfTest data"
|
|
hexmask.long.byte 0x00 24.--31. 1. " TAG ,Tag"
|
|
hexmask.long.word 0x00 8.--23. 1. " LEN ,Length"
|
|
hexmask.long.byte 0x00 0.--7. 1. " VER ,Version"
|
|
group.byte 0x04++0x01 "DCD data"
|
|
line.byte 0x00 "Write Data Parameters,Write data command parameters"
|
|
bitfld.byte 0x00 4. " Data Set ,Status bit showing whether bits at target were successfully overwritten" "Not overwritten,Overwritten"
|
|
bitfld.byte 0x00 3. " Data Mask ,Enables overwriting of bits at target address" "All bits,Specific bits"
|
|
bitfld.byte 0x00 0.--2. " Bytes ,Width of target location(s) in bytes" ",1 byte,2 bytes,,4 bytes,?..."
|
|
line.byte 0x01 "Check Data Parameters,Check data command parameters"
|
|
bitfld.byte 0x01 4. " Data Set ,Enables bit checking at target address" "Ignored,Checked"
|
|
bitfld.byte 0x01 3. " Data Mask ,Enables partial/complete checking of bits when the Data Set field is set to 1" "All bits,Specific bits"
|
|
bitfld.byte 0x01 0.--2. " Bytes ,Size of target locations in bytes." ",1 byte,2 bytes,,4 bytes,?..."
|
|
base ad:(((per.l(ad:((per.l(ad:0x00)+0x08)&0xFFFFFFFF))>>8)&0xFFFF)+0x04)
|
|
group.long 0x00++0x03
|
|
line.long 0x00 "GMAC,Cryptographic hash for DCD header and complete DCD data using IVTDCD key"
|
|
width 0x0B
|
|
tree.end
|
|
tree "BOOT Registers"
|
|
base ad:((per.l(ad:0x00+0x20))&0xFFFFFFFF)
|
|
width 24.
|
|
if (((per.l(ad:0x00+0x28)&0x08)==0))
|
|
group.long 0x00++0x0F "Application boot"
|
|
line.long 0x00 "Image header,Marks start of application image"
|
|
hexmask.long.byte 0x00 24.--31. 1. " TAG ,Tag"
|
|
newline
|
|
hexmask.long.byte 0x00 0.--7. 1. " Version ,Version"
|
|
line.long 0x04 "RAM start pointer,Pointer to the first RAM address to which BootROM must load application boot code"
|
|
line.long 0x08 "RAM entry pointer,Pointer to out of RESET start of boot target core. For Cortex-M7 it corresponds to VTOR. For A53 it corresponds to start of code execution"
|
|
line.long 0x0C "Code length word,Length of code section of the image"
|
|
group.long 0x40++0x03
|
|
line.long 0x00 "Code,Code can be any size up to the maximum size of system SRAM"
|
|
sif cpuis("Cortex-M7")
|
|
group.long 0x00++0x0B "Serial boot"
|
|
line.long 0x00 "Image header,Marks start of serial boot code image"
|
|
hexmask.long.byte 0x00 24.--31. 1. " TAG ,Tag"
|
|
hexmask.long.byte 0x00 0.--7. 1. " Version ,Version"
|
|
line.long 0x04 "RAM start pointer,Pointer to the first RAM address to which BootROM must load serial boot code"
|
|
line.long 0x08 "RAM entry pointer,Pointer to out of RESET start of boot target core. For Cortex-M7 it corresponds to VTOR"
|
|
group.long 0x40++0x03
|
|
line.long 0x00 "Code,Code can be any size up to the maximum size of system SRAM"
|
|
endif
|
|
else
|
|
sif cpuis("CortexM7")
|
|
group.long 0x00++0x17 "Serial boot"
|
|
line.long 0x00 "Image header,Marks start of serial boot code image"
|
|
hexmask.long.byte 0x00 24.--31. 1. " TAG ,Tag"
|
|
hexmask.long.byte 0x00 0.--7. 1. " Version ,Version"
|
|
line.long 0x04 "RAM start pointer,Pointer to the first RAM address to which BootROM must load serial boot code"
|
|
line.long 0x08 "RAM entry pointer,Pointer to out of RESET start of boot target core. For Cortex-M7 it corresponds to VTOR"
|
|
line.long 0x0C "Code length word,Length of code section of the image."
|
|
line.long 0x10 "Auth mode,Authentication mode"
|
|
line.long 0x14 "NSKPUB Key Selector,NSK public key selector"
|
|
group.long 0x40++0x03
|
|
line.long 0x00 "Code,Code can be any size up to the maximum size of system SRAM."
|
|
repeat 64. (increment 0x1040 0x04)(increment 0. 1.)
|
|
group.long $1++0x03
|
|
line.long 0x00 "CSKPUB$2,Customer Public key for RSA authentication $2"
|
|
repeat.end
|
|
repeat 64. (increment 0x1140 0x04) (increment 0. 1.)
|
|
group.long $1++0x03
|
|
line.long 0x00 "CSK Signature $2,RSA signature for CSKPUB authentication $2"
|
|
repeat.end
|
|
group.long 0x1240++0x03
|
|
line.long 0x00 "Code,Code can be any size up to the maximum size of SRAM"
|
|
base ad:per.l(ad:((per.l(ad:0x00+0x20))&0xFFFFFFFF)+0x0C)
|
|
repeat 64. (increment 0x1240 0x04) (increment 0. 1.)
|
|
group.long ($1+0x0C)++0x03
|
|
line.long 0x00 "Public key Signature $2,Public key signature for image authentication $2"
|
|
repeat.end
|
|
endif
|
|
endif
|
|
width 0x0B
|
|
tree.end
|
|
width 0x0B
|
|
tree.end
|