; --------------------------------------------------------------------------------
; @Title: CoreSight Modules
; @Props: Released
; @Author: PEG
; @Manufacturer: ARM
; @Doc: Arm CoreSight Manuals
; @Copyright: (C) 1989-2020 Lauterbach GmbH, licensed for use with TRACE32(R) only
; --------------------------------------------------------------------------------
; $Id: percoresight.per 12186 2020-07-29 10:51:51Z slauterbach $
config 16. 8.
width 9.
sif !etbscorpion()
sif COMPonent.AVAILABLE("etb1")&&(address.offset(comp.base("etb1",-1))!=0)
tree "ETB1"
base e:comp.base("etb1",-1)
width 6.
rgroup 0x004--0x007 "ETB Registers"
line.long 0x000 "RDP,ETB RAM Depth Register"
rgroup 0x00C--0x00F
line.long 0x000 "STS,ETB Status Register"
bitfld.long 0x000 3. " FTEMPTY     ,Formatter Pipeline Empty, Data Stored to RAM" "No,Yes"
bitfld.long 0x000 2. "     ACQCOMP  ,Acquisition Complete" "No,Yes"
textline "               "
bitfld.long 0x000 1. " TRIGGERED   ,Flag Indicates a Trigger was Observed" "No,Observed"
bitfld.long 0x000 0. "  FULL     ,RAM Full" "No,Full"
hgroup 0x010--0x013
hide.long 0x000 "RRD,RAM Read Data Register"
in
group 0x014--0x017
line.long 0x000 "RRP,RAM Read Pointer Register"
group 0x018--0x1B
line.long 0x000 "RWP,RAM Write Pointer Register"
group 0x01C--0x023
line.long 0x000 "TRG,Trigger Counter Register"
line.long 0x004 "CTL,Control Register"
bitfld.long 0x004 0. " TRACECAPTEN ,Trace Capture Enable" "Disabled,Enabled"
wgroup 0x024--0x027
line.long 0x000 "RWD,RAM Write Data Register"
rgroup 0x300--0x303
line.long 0x000 "FFSR,Formatter and Flush Status Register"
bitfld.long 0x000 1. " FTSTOPPED   ,Formatter Stopped" "Started,Stopped"
bitfld.long 0x000 0. "       FLINPROG ,Flush in Progress" "Disabled,Enabled"
group 0x304--0x307
line.long 0x000 "FFCR,Formatter and Flush Control Register"
bitfld.long 0x000 13. " StopTrig    ,Stop Formatter Once a Trigger Event" "Disabled,Enabled"
bitfld.long 0x000 12. "      StopFl   ,Stop Formatter Once a Flush has Compleed" "Disabled,Enabled"
textline "               "
bitfld.long 0x000 10. " TrigFl      ,Trigger on Flush Completion" "Low,High"
bitfld.long 0x000 9. "          TrigEvt  ,Trigger on a Trigger Event" "Low,High"
textline "               "
bitfld.long 0x000 8. " TrigIn      ,Trigger on TRIGIN being asserted" "Low,High"
bitfld.long 0x000 6. "          FOnMan   ,Manually generate a flush of the system" "No effect,Flush"
textline "               "
bitfld.long 0x000 5. " FOnTrig     ,Generate Flush Using Trigger Event" "No effect,Flush"
bitfld.long 0x000 4. "     FOnFlIn  ,Generate Flush Using the FLUSHIN Interface" "Disabled,Enabled"
textline "               "
bitfld.long 0x000 1. " EnFCont     ,Continuous Formatting" "Disabled,Enabled"
bitfld.long 0x000 0. "      EnFTC    ,Enable Formatting" "Disabled,Enabled"
width 13.
tree "CoreSight Management Registers"
group 0xFA0--0xFA8
line.long 0x000 "CTS, Claim Tag Set"
bitfld.long 0x000 7. " SETCTV7   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 6. "        SETCTV6 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 5. " SETCTV5   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 4. "        SETCTV4 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 3. " SETCTV3   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 2. "        SETCTV2 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 1. " SETCTV1   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 0. "        SETCTV0 ,Set Claim Tag Value" "No effect,Set"
line.long 0x004 "CTC, Claim Tag Clear"
bitfld.long 0x004 7. " CLRCTV7   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 6. "        CLRCTV6 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 5. " CLRCTV5   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 4. "        CLRCTV4 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 3. " CLRCTV3   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 2. "        CLRCTV2 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 1. " CLRCTV1   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 0. "        CLRCTV0 ,Clear Claim Tag Value" "No effect,Cleared"
wgroup 0xFB0--0xFB3
line.long 0x000 "LAR,Lock Access Register"
hexmask.long.long 0x000 0.--31. 1. " AC        ,Acces Code"
rgroup 0xFB4--0xFCF
line.long 0x000 "LSR,Lock Status Register"
bitfld.long 0x000 2. " ILR       ,Implemented Lock Register" "32-bit,8-bit"
bitfld.long 0x000 1. "           LS      ,Lock Status" "Locked,Granted"
textline "                 "
bitfld.long 0x000 0. " LCM       ,Lock Control Mechanism Exists" "Not implemented,Implemented"
line.long 0x004 "AS,Authentication Status"
line.long 0x014 "DevID,Device ID"
bitfld.long 0x014 5. " RAMOPSYN  ,ETB RAM Operates Synchronously to ATCLK" "0x0,0x1"
hexmask.long.long 0x014 0.--4. 1. "              HLIM    ,Hidden Level of Input Multiplexing"
line.long 0x018 "DevTI,Device Type Identifier"
hexmask.long.byte 0x018 0.--7. 1. " DEVTI     ,Indicate Device"
group 0xf00--0xf03 "Integration Test Registers"
line.long 0x000 "ITCTRL,Integration Mode Control"
bitfld.long 0x000 0. " ENABLE       ,Enable Integration mode" "no,yes"
wgroup 0xEE0--0xEE7
line.long 0x000 "ITMISCOP0,Integration Test Miscellaneous Output Register 0"
bitfld.long 0x000 1. " FULL       ,Set the Value of FULL" "Low,High"
bitfld.long 0x000 0. "  ACQCOMP    ,Set the Value of ACQCOMP" "Low,High"
line.long 0x004 "ITTRFLINACK,Integration Test Trigger In and Flush In Acknowledge Register"
bitfld.long 0x004 1. " FLUSHINACK ,Set the Value of FLUSHINACK" "Low,High"
bitfld.long 0x004 0. "  TRIGINACK  ,Set the Value of TRIGINACK" "Low,High"
rgroup 0xEE8--0xEEB
line.long 0x000 "ITTRFLIN,Integration Test Trigger In and Flush In Register"
bitfld.long 0x000 1. " FLUSHIN    ,Read the Value of FLUSHIN" "Low,High"
bitfld.long 0x000 0. "        TRIGIN     ,Read the Value of TRIGIN" "Low,High"
rgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAS[127] ,Returns the Value of the ATDATAS[127] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[119] ,Returns the Value of the ATDATAS[119] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[111] ,Returns the Value of the ATDATAS[111] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[103] ,Returns the Value of the ATDATAS[103] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[95]  ,Returns the Value of the ATDATAS[95] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[87]  ,Returns the Value of the ATDATAS[87] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[79]  ,Returns the Value of the ATDATAS[79] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[71]  ,Returns the Value of the ATDATAS[71] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[63]  ,Returns the Value of the ATDATAS[63] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[55]  ,Returns the Value of the ATDATAS[55] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[47]  ,Returns the Value of the ATDATAS[47] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[39]  ,Returns the Value of the ATDATAS[39] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAS[31]  ,Returns the Value of the ATDATAS[31] Input Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAS[23]  ,Returns the Value of the ATDATAS[23] Input pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAS[15]  ,Returns the Value of the ATDATAS[15] Input Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAS[7]   ,Returns the Value of the ATDATAS[7] Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAS[0]   ,Returns the Value of the ATDATAS[0] Input Pin" "Low,High"
wgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFREADYS     ,Drives the ATREADYS Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDS     ,Drives the ATVALIDS Output Pin" "Low,High"
rgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDS        ,Returns the Value of the ATIDS Input Pins"
rgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESS[1]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESS[0]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 1. "  AFVALIDS     ,Returns the Value of the AFVALIDS Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYS     ,Returns the Value of the ATREADYS Input Pin" "Low,High"
width 11.
rgroup 0xFD0--0xFFF "Peripheral Identification Registers"
line.long 0x010 "PERIPHID0,Peripheral Identification Register 0"
hexmask.long.byte 0x010 0.--7. 1. " PartNumber ,Part number[7:0]"
line.long 0x014 "PERIPHID1,Peripheral Identification Register 1"
bitfld.long 0x014 4.--7. " JEP106ID   ,JEP106 Identity Code [3:0]" "0x0,0x1,0x2,0x3,0x4,0x5,0x6,0x7,0x8,0x9,0xA,0xB,0xC,0xD,0xE,0xF"
bitfld.long 0x014 0.--3. "    PartNumber ,Part Number [11:8]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x018 "PERIPHID2,Peripheral Identification Register 2"
bitfld.long 0x018 4.--7. " REV        ,Revision Number of Peripherial" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x018 3. "     JEP106USED ,JEP106 Value Used." "Not used,Used"
textline "                    "
bitfld.long 0x018 0.--2. " JEP106ID   ,JEP106 Identity Code [6:4]" "0x0,0x1,0x2,0x3,0x4,0x5,0x6,0x7"
line.long 0x01C "PERIPHID3,Peripheral Identification Register 3"
bitfld.long 0x01C 4.--7. " REVAND     ,Manufacturer Revision Number" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x01C 0.--3. "     CM         ,Customer Modified" "0x0,0x1,0x2,0x3,0x4,0x5,0x6,0x7,0x8,0x9,0xA,0xB,0xC,0xD,0xE,0xF"
line.long 0x000 "PERIPHID4,Peripheral Identification Register 4"
bitfld.long 0x000 4.--7. " 4KBCOUNT   ,Number of 4KB Block Used" "1,2,4,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768"
bitfld.long 0x000 0.--3. "  JEP106CC   ,JEP Continuation Code" "0x0,0x1,0x2,0x3,0x4,0x5,0x6,0x7,0x8,0x9,0xA,0xB,0xC,0xD,0xE,0xF"
line.long 0x004 "PERIPHID5,Peripheral ID5 Register (Reserved for Future)"
line.long 0x008 "PERIPHID6,Peripheral ID6 Register (Reserved for Future)"
line.long 0x00C "PERIPHID7,Peripheral ID7 Register (Reserved for Future)"
width 15.
rgroup 0xFF0--0xFFF "Component Identification Registers"
line.long 0x00C "Component_ID3, Identification Register 3"
hexmask.long.byte 0x00C 0.--7. 1. " COMPID3  ,Preamble"
line.long 0x008 "Component_ID2, Identification Register 2"
hexmask.long.byte 0x008 0.--7. 1. " COMPID2  ,Preamble"
line.long 0x004 "Component_ID1, Identification Register 1"
bitfld.long 0x004 4.--7.  " MEMCLASS ,Classification of the 4KB Memory Block" "Reserved,ROM,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,CSDK,Reserved,Reserved,Reserved,Reserved,Reserved,Not standardized"
hexmask.long.byte 0x004 0.--3. 1. "  COMPID1 ,Preamble"
line.long 0x000 "Component_ID0, Identification Register 0"
hexmask.long.byte 0x000 0.--7. 1. " COMPID0  ,Preamble"
tree.end

tree.end
endif
sif COMPonent.AVAILABLE("etb2")&&(address.offset(comp.base("etb2",-1))!=0)
tree "ETB2"
base e:comp.base("etb2",-1)
width 6.
rgroup 0x004--0x007 "ETB Registers"
line.long 0x000 "RDP,ETB RAM Depth Register"
rgroup 0x00C--0x00F
line.long 0x000 "STS,ETB Status Register"
bitfld.long 0x000 3. " FTEMPTY     ,Formatter Pipeline Empty, Data Stored to RAM" "No,Yes"
bitfld.long 0x000 2. "     ACQCOMP  ,Acquisition Complete" "No,Yes"
textline "               "
bitfld.long 0x000 1. " TRIGGERED   ,Flag Indicates a Trigger was Observed" "No,Observed"
bitfld.long 0x000 0. "  FULL     ,RAM Full" "No,Full"
hgroup 0x010--0x013
hide.long 0x000 "RRD,RAM Read Data Register"
in
group 0x014--0x017
line.long 0x000 "RRP,RAM Read Pointer Register"
group 0x018--0x1B
line.long 0x000 "RWP,RAM Write Pointer Register"
group 0x01C--0x023
line.long 0x000 "TRG,Trigger Counter Register"
line.long 0x004 "CTL,Control Register"
bitfld.long 0x004 0. " TRACECAPTEN ,Trace Capture Enable" "Disabled,Enabled"
wgroup 0x024--0x027
line.long 0x000 "RWD,RAM Write Data Register"
rgroup 0x300--0x303
line.long 0x000 "FFSR,Formatter and Flush Status Register"
bitfld.long 0x000 1. " FTSTOPPED   ,Formatter Stopped" "Started,Stopped"
bitfld.long 0x000 0. "       FLINPROG ,Flush in Progress" "Disabled,Enabled"
group 0x304--0x307
line.long 0x000 "FFCR,Formatter and Flush Control Register"
bitfld.long 0x000 13. " StopTrig    ,Stop Formatter Once a Trigger Event" "Disabled,Enabled"
bitfld.long 0x000 12. "      StopFl   ,Stop Formatter Once a Flush has Compleed" "Disabled,Enabled"
textline "               "
bitfld.long 0x000 10. " TrigFl      ,Trigger on Flush Completion" "Low,High"
bitfld.long 0x000 9. "          TrigEvt  ,Trigger on a Trigger Event" "Low,High"
textline "               "
bitfld.long 0x000 8. " TrigIn      ,Trigger on TRIGIN being asserted" "Low,High"
bitfld.long 0x000 6. "          FOnMan   ,Manually generate a flush of the system" "No effect,Flush"
textline "               "
bitfld.long 0x000 5. " FOnTrig     ,Generate Flush Using Trigger Event" "No effect,Flush"
bitfld.long 0x000 4. "     FOnFlIn  ,Generate Flush Using the FLUSHIN Interface" "Disabled,Enabled"
textline "               "
bitfld.long 0x000 1. " EnFCont     ,Continuous Formatting" "Disabled,Enabled"
bitfld.long 0x000 0. "      EnFTC    ,Enable Formatting" "Disabled,Enabled"
width 13.
tree "CoreSight Management Registers"
group 0xFA0--0xFA8
line.long 0x000 "CTS, Claim Tag Set"
bitfld.long 0x000 7. " SETCTV7   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 6. "        SETCTV6 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 5. " SETCTV5   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 4. "        SETCTV4 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 3. " SETCTV3   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 2. "        SETCTV2 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 1. " SETCTV1   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 0. "        SETCTV0 ,Set Claim Tag Value" "No effect,Set"
line.long 0x004 "CTC, Claim Tag Clear"
bitfld.long 0x004 7. " CLRCTV7   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 6. "        CLRCTV6 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 5. " CLRCTV5   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 4. "        CLRCTV4 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 3. " CLRCTV3   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 2. "        CLRCTV2 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 1. " CLRCTV1   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 0. "        CLRCTV0 ,Clear Claim Tag Value" "No effect,Cleared"
wgroup 0xFB0--0xFB3
line.long 0x000 "LAR,Lock Access Register"
hexmask.long.long 0x000 0.--31. 1. " AC        ,Acces Code"
rgroup 0xFB4--0xFCF
line.long 0x000 "LSR,Lock Status Register"
bitfld.long 0x000 2. " ILR       ,Implemented Lock Register" "32-bit,8-bit"
bitfld.long 0x000 1. "           LS      ,Lock Status" "Locked,Granted"
textline "                 "
bitfld.long 0x000 0. " LCM       ,Lock Control Mechanism Exists" "Not implemented,Implemented"
line.long 0x004 "AS,Authentication Status"
line.long 0x014 "DevID,Device ID"
bitfld.long 0x014 5. " RAMOPSYN  ,ETB RAM Operates Synchronously to ATCLK" "0x0,0x1"
hexmask.long.long 0x014 0.--4. 1. "              HLIM    ,Hidden Level of Input Multiplexing"
line.long 0x018 "DevTI,Device Type Identifier"
hexmask.long.byte 0x018 0.--7. 1. " DEVTI     ,Indicate Device"
group 0xf00--0xf03 "Integration Test Registers"
line.long 0x000 "ITCTRL,Integration Mode Control"
bitfld.long 0x000 0. " ENABLE       ,Enable Integration mode" "no,yes"
wgroup 0xEE0--0xEE7
line.long 0x000 "ITMISCOP0,Integration Test Miscellaneous Output Register 0"
bitfld.long 0x000 1. " FULL       ,Set the Value of FULL" "Low,High"
bitfld.long 0x000 0. "  ACQCOMP    ,Set the Value of ACQCOMP" "Low,High"
line.long 0x004 "ITTRFLINACK,Integration Test Trigger In and Flush In Acknowledge Register"
bitfld.long 0x004 1. " FLUSHINACK ,Set the Value of FLUSHINACK" "Low,High"
bitfld.long 0x004 0. "  TRIGINACK  ,Set the Value of TRIGINACK" "Low,High"
rgroup 0xEE8--0xEEB
line.long 0x000 "ITTRFLIN,Integration Test Trigger In and Flush In Register"
bitfld.long 0x000 1. " FLUSHIN    ,Read the Value of FLUSHIN" "Low,High"
bitfld.long 0x000 0. "        TRIGIN     ,Read the Value of TRIGIN" "Low,High"
rgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAS[127] ,Returns the Value of the ATDATAS[127] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[119] ,Returns the Value of the ATDATAS[119] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[111] ,Returns the Value of the ATDATAS[111] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[103] ,Returns the Value of the ATDATAS[103] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[95]  ,Returns the Value of the ATDATAS[95] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[87]  ,Returns the Value of the ATDATAS[87] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[79]  ,Returns the Value of the ATDATAS[79] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[71]  ,Returns the Value of the ATDATAS[71] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[63]  ,Returns the Value of the ATDATAS[63] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[55]  ,Returns the Value of the ATDATAS[55] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[47]  ,Returns the Value of the ATDATAS[47] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[39]  ,Returns the Value of the ATDATAS[39] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAS[31]  ,Returns the Value of the ATDATAS[31] Input Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAS[23]  ,Returns the Value of the ATDATAS[23] Input pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAS[15]  ,Returns the Value of the ATDATAS[15] Input Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAS[7]   ,Returns the Value of the ATDATAS[7] Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAS[0]   ,Returns the Value of the ATDATAS[0] Input Pin" "Low,High"
wgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFREADYS     ,Drives the ATREADYS Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDS     ,Drives the ATVALIDS Output Pin" "Low,High"
rgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDS        ,Returns the Value of the ATIDS Input Pins"
rgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESS[1]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESS[0]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 1. "  AFVALIDS     ,Returns the Value of the AFVALIDS Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYS     ,Returns the Value of the ATREADYS Input Pin" "Low,High"
width 11.
rgroup 0xFD0--0xFFF "Peripheral Identification Registers"
line.long 0x010 "PERIPHID0,Peripheral Identification Register 0"
hexmask.long.byte 0x010 0.--7. 1. " PartNumber ,Part number[7:0]"
line.long 0x014 "PERIPHID1,Peripheral Identification Register 1"
bitfld.long 0x014 4.--7. " JEP106ID   ,JEP106 Identity Code [3:0]" "0x0,0x1,0x2,0x3,0x4,0x5,0x6,0x7,0x8,0x9,0xA,0xB,0xC,0xD,0xE,0xF"
bitfld.long 0x014 0.--3. "    PartNumber ,Part Number [11:8]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x018 "PERIPHID2,Peripheral Identification Register 2"
bitfld.long 0x018 4.--7. " REV        ,Revision Number of Peripherial" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x018 3. "     JEP106USED ,JEP106 Value Used." "Not used,Used"
textline "                    "
bitfld.long 0x018 0.--2. " JEP106ID   ,JEP106 Identity Code [6:4]" "0x0,0x1,0x2,0x3,0x4,0x5,0x6,0x7"
line.long 0x01C "PERIPHID3,Peripheral Identification Register 3"
bitfld.long 0x01C 4.--7. " REVAND     ,Manufacturer Revision Number" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x01C 0.--3. "     CM         ,Customer Modified" "0x0,0x1,0x2,0x3,0x4,0x5,0x6,0x7,0x8,0x9,0xA,0xB,0xC,0xD,0xE,0xF"
line.long 0x000 "PERIPHID4,Peripheral Identification Register 4"
bitfld.long 0x000 4.--7. " 4KBCOUNT   ,Number of 4KB Block Used" "1,2,4,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768"
bitfld.long 0x000 0.--3. "  JEP106CC   ,JEP Continuation Code" "0x0,0x1,0x2,0x3,0x4,0x5,0x6,0x7,0x8,0x9,0xA,0xB,0xC,0xD,0xE,0xF"
line.long 0x004 "PERIPHID5,Peripheral ID5 Register (Reserved for Future)"
line.long 0x008 "PERIPHID6,Peripheral ID6 Register (Reserved for Future)"
line.long 0x00C "PERIPHID7,Peripheral ID7 Register (Reserved for Future)"
width 15.
rgroup 0xFF0--0xFFF "Component Identification Registers"
line.long 0x00C "Component_ID3, Identification Register 3"
hexmask.long.byte 0x00C 0.--7. 1. " COMPID3  ,Preamble"
line.long 0x008 "Component_ID2, Identification Register 2"
hexmask.long.byte 0x008 0.--7. 1. " COMPID2  ,Preamble"
line.long 0x004 "Component_ID1, Identification Register 1"
bitfld.long 0x004 4.--7.  " MEMCLASS ,Classification of the 4KB Memory Block" "Reserved,ROM,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,CSDK,Reserved,Reserved,Reserved,Reserved,Reserved,Not standardized"
hexmask.long.byte 0x004 0.--3. 1. "  COMPID1 ,Preamble"
line.long 0x000 "Component_ID0, Identification Register 0"
hexmask.long.byte 0x000 0.--7. 1. " COMPID0  ,Preamble"
tree.end

tree.end
endif
sif COMPonent.AVAILABLE("etb1")&&(address.offset(comp.base("etb1",-1))!=0)
tree "TMC ETB1"
width 10.
group.long 0x004++0x3 "TMC Registers"
line.long 0x00 "RSZ,RAM Size Register"
hexmask.long 0x00 0.--30. 1. " RSZ         ,Size of the RAM in 32-bit words"
rgroup.long 0x00c++0x3
line.long 0x00 "STS,Status Register"
bitfld.long 0x00 5. " MEMERR      ,AXI master interface error" "No error,Error"
bitfld.long 0x00 4. "         EMPTY ,No valid trace data in the trace memory" "Not empty,Empty"
bitfld.long 0x00 3. "  FTEMPTY ,All internal pipelines and buffers empty" "Not empty,Empty"
bitfld.long 0x00 2. "  TMCREADY ,Trace capture ready" "Not ready,Ready"
textline "                   "
bitfld.long 0x00 1. " TRIGGERED   ,Trigger event detected" "Not detected,Detected"
bitfld.long 0x00 0. "     FULL  ,Ram full" "Not full,Full"
wgroup.long 0x010++0x3
hide.long 0x00 "RRD,RAM Read Data Register"
in
group.long 0x014++0xb
line.long 0x00 "RRP,RAM Read Pointer Register"
line.long 0x04 "RWP,RAM Write Pointer Register"
line.long 0x08 "TRG,Trigger Counter Register"
group.long 0x020++0x3
line.long 0x00 "CTL,Control Register"
bitfld.long 0x00 0. " TRACECAPTEN ,Trace Capture Enable" "Disabled,Enabled"
wgroup.long 0x024++0x3
line.long 0x00 "RWD,RAM Write Data Register"
group.long 0x028++0x3
line.long 0x00 "MODE,Mode Register"
bitfld.long 0x00 0.--1. " MODE        ,Mode select" "Circular Buffer,Software FIFO,Hardware FIFO,Software FIFO 2"
rgroup.long 0x02c++0x7
line.long 0x00 "LBUFLEVEL,Latched Buffer Fill Level Register"
line.long 0x04 "CBUFLEVEL,Current Buffer Fill Level Register"
group.long 0x034++0x3
line.long 0x00 "BUFWM,Buffer Level Water Mark Register"
group.long 0x038++0x7
line.long 0x00 "RRPHI,RAM Read Pointer High Register"
hexmask.long.byte 0x00 0.--7. 1. " RRPHI         ,Bits [39:32] of the read pointer"
line.long 0x04 "RWPHI,RAM Write Pointer High Register"
hexmask.long.byte 0x04 0.--7. 1. " RWPHI         ,Bits [39:32] of the write pointer"
group.long 0x110++0x3
line.long 0x00 "AXICTL,AXI Control Register"
bitfld.long 0x00 8.--11. " WRBURSTLEN    ,Maximum number of data transfers per burst" "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16"
bitfld.long 0x00 7. "     SGM ,Scatter Gather Mode Enable" "Disabled,Enabled"
bitfld.long 0x00 5. "          CC3 ,Cache allocate on writes enable" "Disabled,Enabled"
bitfld.long 0x00 4. "     CC2 ,Cache allocate on reads enable" "Disabled,Enabled"
textline "                   "
bitfld.long 0x00 3. " CC1 ,Cacheable" "Non-cacheable,Cacheable"
bitfld.long 0x00 2. "    CC0 ,Bufferable" "Non-bufferable,Bufferable"
bitfld.long 0x00 1. "    PC1 ,Secure/Non-secure Access" "Secure,Non-secure"
bitfld.long 0x00 0. "   PC0 ,Normal/Privileged Access" "Normal,Privileged"
group.long 0x118++0x7
line.long 0x00 "DBALO,Data Buffer Address Low Register"
line.long 0x04 "DBAHI,Data Buffer Address High Register"
hexmask.long.byte 0x04 0.--7. 1. " BUFADDRHI     ,Bits [39:32] of the trace buffer address"
rgroup.long 0x300++0x3
line.long 0x00 "FFSR,Formatter and Flush Status Register"
bitfld.long 0x00 1. " FTSTOPPED     ,Formatter Stopped" "No,Yes"
bitfld.long 0x00 0. "    FLINPROG          ,Flush in Progress" "No,Yes"
group.long 0x304++0x7
line.long 0x00 "FFCR,Formatter and Flush Control Register"
bitfld.long 0x00 14. " DRAINBUFFER   ,Drain trace data through ATB master interface" "No,Yes"
bitfld.long 0x00 13. "    STOPONTRIGEVT     ,Stop trace capture on trigger event" "No,Yes"
bitfld.long 0x00 12. "   STOPONFL      ,Stop formatter on completion of a flush operation" "No,Yes"
bitfld.long 0x00 10. "   TRIGONFL      ,Trigger on flush completion" "No,Yes"
textline "                   "
bitfld.long 0x00 9. " TRIGONTRIGEVT ,Trigger on a trigger event" "No,Yes"
bitfld.long 0x00 8. "    TRIGONTRIGIN      ,Trigger on TRIGIN being asserted" "No,Yes"
bitfld.long 0x00 6. "   FLUSHMAN      ,Manual Flush" "No,Yes"
bitfld.long 0x00 5. "   FONTRIGEVT    ,Flush on trigger event" "No,Yes"
textline "                   "
bitfld.long 0x00 4. " FONFLIN       ,Flush on FLUSHIN feature" "No,Yes"
bitfld.long 0x00 1. "    ENTI              ,Insertion of triggers in the formatted trace stream enable" "No,Yes"
bitfld.long 0x00 0. "   ENFT          ,Formatting enable" "No,Yes"
line.long 0x04 "PSCR,Periodic Synchronization Counter Register"
bitfld.long 0x04 5. " EMBEDSYNC     ,Embed Frame Sync packets" "No,Yes"
bitfld.long 0x04 0.--4. "    PSCOUNT           ,Reload value of the Synchronization Counter" "Disabled,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,128 bytes,256 bytes,512 bytes,1 KB,2 KB,4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB,?..."
width 13.
tree "Coresight Management Registers"
group 0xFA0--0xFA8
line.long 0x000 "CTS, Claim Tag Set"
bitfld.long 0x000 7. " SETCTV7   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 6. "        SETCTV6 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 5. " SETCTV5   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 4. "        SETCTV4 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 3. " SETCTV3   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 2. "        SETCTV2 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 1. " SETCTV1   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 0. "        SETCTV0 ,Set Claim Tag Value" "No effect,Set"
line.long 0x004 "CTC, Claim Tag Clear"
bitfld.long 0x004 7. " CLRCTV7   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 6. "        CLRCTV6 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 5. " CLRCTV5   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 4. "        CLRCTV4 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 3. " CLRCTV3   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 2. "        CLRCTV2 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 1. " CLRCTV1   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 0. "        CLRCTV0 ,Clear Claim Tag Value" "No effect,Cleared"
wgroup.long 0xfb0++0x3
line.long 0x00 "LAR,Lock Access Register"
rgroup.long 0xfb4++0x7
line.long 0x00 "LSR,Lock Status Register"
bitfld.long 0x00 2. " LOCKTYPE         ,32-bit Lock Access Register Implemented" "32-bit,?..."
bitfld.long 0x00 1. "         LOCKGRANT ,Lock Status" "Unlocked,Locked"
bitfld.long 0x00 0. "         LOCKEXIST  ,Lock control mechanism present" "Not present,Present"
line.long 0x04 "AUTHSTATUS,Authentication Status Register"
bitfld.long 0x04 6.--7. " SNID   ,Security level for secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 4.--5. "  SID  ,Security level for secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
bitfld.long 0x04 2.--3. "  NSNID ,Security level for non-secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 0.--1. "  NSID ,Security level for non-secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
rgroup.long 0xfc8++0x3
line.long 0x00 "DEVID,Device Configuration Register"
bitfld.long 0x00 11.--13. " WBUF_DEPTH  ,Number of entries in the write buffer (in ETR)" "Reserved,Reserved,4 entries,8 entries,16 entries,32 entries,?..."
bitfld.long 0x00 8.--10. "  MEMWIDTH  ,Memory interface databus width" "Reserved,Reserved,32-bit,64-bit,128-bit,256-bit,?..."
bitfld.long 0x00 6.--7. "    CONFIGTYPE ,Configuration type" "ETB,ETR,ETF,?..."
bitfld.long 0x00 5. "    CLKSCHEME ,RAM clocking scheme" "Synchronous,?..."
textline "                    "
bitfld.long 0x00 0.--4. "   ATBINPORTCOUNT   ,Type or number of ATB multiplexing" "No multiplexing,?..."
width 13.
if ((d.l(e:comp.base("etb1",-1)+0xfc8)&0xc0)==(0x00||0x40))
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,RAM->APB,?..."
bitfld.long 0x00 0.--3. "                    MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Trace sink,?..."
elif ((d.l(e:comp.base("etb1",-1)+0xfc8)&0xc0)==0x80)
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,Reserved,ATB slave->RAM->ATB master,?..."
bitfld.long 0x00 0.--3. "  MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Reserved,Trace link,?..."
else
hgroup.long 0xfcc++0x3
hide.long 0x00 "DEVTYPE,Device Type Identifier Register"
endif
group 0xf00--0xf03 "Integration Test Registers"
line.long 0x000 "ITCTRL,Integration Mode Control"
bitfld.long 0x000 0. " ENABLE       ,Enable Integration mode" "no,yes"
wgroup.long 0xee0++0x3
line.long 0x00 "ITMISCOP0,Integration Test Miscellaneous Output Register 0"
bitfld.long 0x00 1. " FULL          ,FULL output value set" "0,1"
bitfld.long 0x00 0. "     ACQCOMP       ,ACQCOMP output value set" "0,1"
rgroup.long 0xee8++0x3
line.long 0x00 "ITTRFLIN,Integration Test Trigger In and Flush In Register"
bitfld.long 0x00 1. " FLUSHIN       ,FLUSHIN output value" "0,1"
bitfld.long 0x00 0. "     TRIGIN        ,TRIGIN output value" "0,1"
rgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAS[127] ,Returns the Value of the ATDATAS[127] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[119] ,Returns the Value of the ATDATAS[119] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[111] ,Returns the Value of the ATDATAS[111] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[103] ,Returns the Value of the ATDATAS[103] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[95]  ,Returns the Value of the ATDATAS[95] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[87]  ,Returns the Value of the ATDATAS[87] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[79]  ,Returns the Value of the ATDATAS[79] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[71]  ,Returns the Value of the ATDATAS[71] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[63]  ,Returns the Value of the ATDATAS[63] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[55]  ,Returns the Value of the ATDATAS[55] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[47]  ,Returns the Value of the ATDATAS[47] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[39]  ,Returns the Value of the ATDATAS[39] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAS[31]  ,Returns the Value of the ATDATAS[31] Input Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAS[23]  ,Returns the Value of the ATDATAS[23] Input pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAS[15]  ,Returns the Value of the ATDATAS[15] Input Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAS[7]   ,Returns the Value of the ATDATAS[7] Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAS[0]   ,Returns the Value of the ATDATAS[0] Input Pin" "Low,High"
wgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFREADYS     ,Drives the AFREADYS Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDS     ,Drives the ATVALIDS Output Pin" "Low,High"
rgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDS        ,Returns the Value of the ATIDS Input Pins"
rgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESS[1]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESS[0]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 1. "  AFVALIDS     ,Returns the Value of the AFVALIDS Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYS     ,Returns the Value of the ATREADYS Input Pin" "Low,High"
wgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAM[127] ,Drives the ATDATAM[127] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[119] ,Drives the ATDATAM[119] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[111] ,Drives the ATDATAM[111] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[103] ,Drives the ATDATAM[103] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[95]  ,Drives the ATDATAM[95] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[87]  ,Drives the ATDATAM[87] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[79]  ,Drives the ATDATAM[79] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[71]  ,Drives the ATDATAM[71] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[63]  ,Drives the ATDATAM[63] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[55]  ,Drives the ATDATAM[55] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[47]  ,Drives the ATDATAM[47] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[39]  ,Drives the ATDATAM[39] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAM[31]  ,Drives the ATDATAM[31] Output Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAM[23]  ,Drives the ATDATAM[23] Output pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAM[15]  ,Drives the ATDATAM[15] Output Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAM[7]   ,Drives the ATDATAM[7] Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAM[0]   ,Drives the ATDATAM[0] Output Pin" "Low,High"
rgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDM     ,Returns the Value of the AFVALIDM Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYM     ,Returns the Value of the ATREADYM Input Pin" "Low,High"
wgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDM        ,Drives the ATIDM Output Pins"
wgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESM[1]  ,Drives the ATBYTESM[1] Output Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESM[0]  ,Drives the ATBYTESM[0] Output Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYM     ,Drives the AFREADYM Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDM     ,Drives the ATVALIDM Output Pin" "Low,High"
width 13.
rgroup.long 0xfe0++0x13 "Peripheral Identification Registers"
line.long 0x00 "PERIPHID0,Peripheral ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PART_NUMBER[7:0] ,Bits [7:0] of the component part number"
line.long 0x04 "PERIPHID1,Peripheral ID1 Register"
bitfld.long 0x04 4.--7. " JEP106[3:0]      ,Bits [3:0] of the JEDEC identity code" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
bitfld.long 0x04 0.--3. "       PART_NUMBER[11:8] ,Bits [11:8] of the component part number" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "PERIPHID2,Peripheral ID2 Register"
bitfld.long 0x08 4.--7. " REVISION         ,Revision" "Reserved,r0p1,?..."
bitfld.long 0x08 3. "   JEDEC             ,JEDEC assigned value used" "Not used,Used"
bitfld.long 0x08 0.--2. "  JEP106[6:4] ,Bits [6:4] of the JEDEC identity code" "000,001,010,011,100,101,110,111"
line.long 0x0c "PERIPHID3,Peripheral ID3 Register"
hexmask.long.byte 0x0c 4.--7. 1. " REVAND           ,Minor errata fixes"
hexmask.long.byte 0x0c 0.--3. 1. "         CUSTOMER_MODIFIED ,Customer Modified"
rgroup.long 0xfd0++0x3
line.long 0x00 "PERIPHID4,Peripheral ID4 Register"
bitfld.long 0x00 4.--7. " FOURKB_COUNT     ,Total contiguous size of the memory window" "4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB"
bitfld.long 0x00 0.--3. "     JEP106_CONT       ,JEDEC continuation code" "Reserved,Reserved,Reserved,Reserved,5th bank,?..."
rgroup.long 0xff0++0xf "Component Identification Registers"
line.long 0x00 "COMPID0,Component ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PREAMBLE[7:0]    ,Bits [7:0] of the component identification"
line.long 0x04 "COMPID1,Component ID1 Register"
bitfld.long 0x04 4.--7. " CLASS            ,Class of the component" "Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,CoreSight,?..."
bitfld.long 0x04 0.--3. "  PREAMBLE[11:8]    ,Bits [11:8] of the component identification" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "COMPID2,Component ID2 Register"
hexmask.long.byte 0x08 0.--7. 1. " PREAMBLE[23:16]  ,Bits [23:16] of the component identification"
line.long 0x0c "COMPID3,Component ID3 Register"
hexmask.long.byte 0x0c 0.--7. 1. " PREAMBLE[31:24]  ,Bits [31:24] of the component identification"
tree.end
width 11.
tree.end
endif
sif COMPonent.AVAILABLE("etb2")&&(address.offset(comp.base("etb2",-1))!=0)
tree "TMC ETB2"
width 10.
group.long 0x004++0x3 "TMC Registers"
line.long 0x00 "RSZ,RAM Size Register"
hexmask.long 0x00 0.--30. 1. " RSZ         ,Size of the RAM in 32-bit words"
rgroup.long 0x00c++0x3
line.long 0x00 "STS,Status Register"
bitfld.long 0x00 5. " MEMERR      ,AXI master interface error" "No error,Error"
bitfld.long 0x00 4. "         EMPTY ,No valid trace data in the trace memory" "Not empty,Empty"
bitfld.long 0x00 3. "  FTEMPTY ,All internal pipelines and buffers empty" "Not empty,Empty"
bitfld.long 0x00 2. "  TMCREADY ,Trace capture ready" "Not ready,Ready"
textline "                   "
bitfld.long 0x00 1. " TRIGGERED   ,Trigger event detected" "Not detected,Detected"
bitfld.long 0x00 0. "     FULL  ,Ram full" "Not full,Full"
wgroup.long 0x010++0x3
hide.long 0x00 "RRD,RAM Read Data Register"
in
group.long 0x014++0xb
line.long 0x00 "RRP,RAM Read Pointer Register"
line.long 0x04 "RWP,RAM Write Pointer Register"
line.long 0x08 "TRG,Trigger Counter Register"
group.long 0x020++0x3
line.long 0x00 "CTL,Control Register"
bitfld.long 0x00 0. " TRACECAPTEN ,Trace Capture Enable" "Disabled,Enabled"
wgroup.long 0x024++0x3
line.long 0x00 "RWD,RAM Write Data Register"
group.long 0x028++0x3
line.long 0x00 "MODE,Mode Register"
bitfld.long 0x00 0.--1. " MODE        ,Mode select" "Circular Buffer,Software FIFO,Hardware FIFO,Software FIFO 2"
rgroup.long 0x02c++0x7
line.long 0x00 "LBUFLEVEL,Latched Buffer Fill Level Register"
line.long 0x04 "CBUFLEVEL,Current Buffer Fill Level Register"
group.long 0x034++0x3
line.long 0x00 "BUFWM,Buffer Level Water Mark Register"
group.long 0x038++0x7
line.long 0x00 "RRPHI,RAM Read Pointer High Register"
hexmask.long.byte 0x00 0.--7. 1. " RRPHI         ,Bits [39:32] of the read pointer"
line.long 0x04 "RWPHI,RAM Write Pointer High Register"
hexmask.long.byte 0x04 0.--7. 1. " RWPHI         ,Bits [39:32] of the write pointer"
group.long 0x110++0x3
line.long 0x00 "AXICTL,AXI Control Register"
bitfld.long 0x00 8.--11. " WRBURSTLEN    ,Maximum number of data transfers per burst" "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16"
bitfld.long 0x00 7. "     SGM ,Scatter Gather Mode Enable" "Disabled,Enabled"
bitfld.long 0x00 5. "          CC3 ,Cache allocate on writes enable" "Disabled,Enabled"
bitfld.long 0x00 4. "     CC2 ,Cache allocate on reads enable" "Disabled,Enabled"
textline "                   "
bitfld.long 0x00 3. " CC1 ,Cacheable" "Non-cacheable,Cacheable"
bitfld.long 0x00 2. "    CC0 ,Bufferable" "Non-bufferable,Bufferable"
bitfld.long 0x00 1. "    PC1 ,Secure/Non-secure Access" "Secure,Non-secure"
bitfld.long 0x00 0. "   PC0 ,Normal/Privileged Access" "Normal,Privileged"
group.long 0x118++0x7
line.long 0x00 "DBALO,Data Buffer Address Low Register"
line.long 0x04 "DBAHI,Data Buffer Address High Register"
hexmask.long.byte 0x04 0.--7. 1. " BUFADDRHI     ,Bits [39:32] of the trace buffer address"
rgroup.long 0x300++0x3
line.long 0x00 "FFSR,Formatter and Flush Status Register"
bitfld.long 0x00 1. " FTSTOPPED     ,Formatter Stopped" "No,Yes"
bitfld.long 0x00 0. "    FLINPROG          ,Flush in Progress" "No,Yes"
group.long 0x304++0x7
line.long 0x00 "FFCR,Formatter and Flush Control Register"
bitfld.long 0x00 14. " DRAINBUFFER   ,Drain trace data through ATB master interface" "No,Yes"
bitfld.long 0x00 13. "    STOPONTRIGEVT     ,Stop trace capture on trigger event" "No,Yes"
bitfld.long 0x00 12. "   STOPONFL      ,Stop formatter on completion of a flush operation" "No,Yes"
bitfld.long 0x00 10. "   TRIGONFL      ,Trigger on flush completion" "No,Yes"
textline "                   "
bitfld.long 0x00 9. " TRIGONTRIGEVT ,Trigger on a trigger event" "No,Yes"
bitfld.long 0x00 8. "    TRIGONTRIGIN      ,Trigger on TRIGIN being asserted" "No,Yes"
bitfld.long 0x00 6. "   FLUSHMAN      ,Manual Flush" "No,Yes"
bitfld.long 0x00 5. "   FONTRIGEVT    ,Flush on trigger event" "No,Yes"
textline "                   "
bitfld.long 0x00 4. " FONFLIN       ,Flush on FLUSHIN feature" "No,Yes"
bitfld.long 0x00 1. "    ENTI              ,Insertion of triggers in the formatted trace stream enable" "No,Yes"
bitfld.long 0x00 0. "   ENFT          ,Formatting enable" "No,Yes"
line.long 0x04 "PSCR,Periodic Synchronization Counter Register"
bitfld.long 0x04 5. " EMBEDSYNC     ,Embed Frame Sync packets" "No,Yes"
bitfld.long 0x04 0.--4. "    PSCOUNT           ,Reload value of the Synchronization Counter" "Disabled,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,128 bytes,256 bytes,512 bytes,1 KB,2 KB,4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB,?..."
width 13.
tree "Coresight Management Registers"
group 0xFA0--0xFA8
line.long 0x000 "CTS, Claim Tag Set"
bitfld.long 0x000 7. " SETCTV7   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 6. "        SETCTV6 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 5. " SETCTV5   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 4. "        SETCTV4 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 3. " SETCTV3   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 2. "        SETCTV2 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 1. " SETCTV1   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 0. "        SETCTV0 ,Set Claim Tag Value" "No effect,Set"
line.long 0x004 "CTC, Claim Tag Clear"
bitfld.long 0x004 7. " CLRCTV7   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 6. "        CLRCTV6 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 5. " CLRCTV5   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 4. "        CLRCTV4 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 3. " CLRCTV3   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 2. "        CLRCTV2 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 1. " CLRCTV1   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 0. "        CLRCTV0 ,Clear Claim Tag Value" "No effect,Cleared"
wgroup.long 0xfb0++0x3
line.long 0x00 "LAR,Lock Access Register"
rgroup.long 0xfb4++0x7
line.long 0x00 "LSR,Lock Status Register"
bitfld.long 0x00 2. " LOCKTYPE         ,32-bit Lock Access Register Implemented" "32-bit,?..."
bitfld.long 0x00 1. "         LOCKGRANT ,Lock Status" "Unlocked,Locked"
bitfld.long 0x00 0. "         LOCKEXIST  ,Lock control mechanism present" "Not present,Present"
line.long 0x04 "AUTHSTATUS,Authentication Status Register"
bitfld.long 0x04 6.--7. " SNID   ,Security level for secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 4.--5. "  SID  ,Security level for secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
bitfld.long 0x04 2.--3. "  NSNID ,Security level for non-secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 0.--1. "  NSID ,Security level for non-secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
rgroup.long 0xfc8++0x3
line.long 0x00 "DEVID,Device Configuration Register"
bitfld.long 0x00 11.--13. " WBUF_DEPTH  ,Number of entries in the write buffer (in ETR)" "Reserved,Reserved,4 entries,8 entries,16 entries,32 entries,?..."
bitfld.long 0x00 8.--10. "  MEMWIDTH  ,Memory interface databus width" "Reserved,Reserved,32-bit,64-bit,128-bit,256-bit,?..."
bitfld.long 0x00 6.--7. "    CONFIGTYPE ,Configuration type" "ETB,ETR,ETF,?..."
bitfld.long 0x00 5. "    CLKSCHEME ,RAM clocking scheme" "Synchronous,?..."
textline "                    "
bitfld.long 0x00 0.--4. "   ATBINPORTCOUNT   ,Type or number of ATB multiplexing" "No multiplexing,?..."
width 13.
if ((d.l(e:comp.base("etb2",-1)+0xfc8)&0xc0)==(0x00||0x40))
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,RAM->APB,?..."
bitfld.long 0x00 0.--3. "                    MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Trace sink,?..."
elif ((d.l(e:comp.base("etb2",-1)+0xfc8)&0xc0)==0x80)
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,Reserved,ATB slave->RAM->ATB master,?..."
bitfld.long 0x00 0.--3. "  MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Reserved,Trace link,?..."
else
hgroup.long 0xfcc++0x3
hide.long 0x00 "DEVTYPE,Device Type Identifier Register"
endif
group 0xf00--0xf03 "Integration Test Registers"
line.long 0x000 "ITCTRL,Integration Mode Control"
bitfld.long 0x000 0. " ENABLE       ,Enable Integration mode" "no,yes"
wgroup.long 0xee0++0x3
line.long 0x00 "ITMISCOP0,Integration Test Miscellaneous Output Register 0"
bitfld.long 0x00 1. " FULL          ,FULL output value set" "0,1"
bitfld.long 0x00 0. "     ACQCOMP       ,ACQCOMP output value set" "0,1"
rgroup.long 0xee8++0x3
line.long 0x00 "ITTRFLIN,Integration Test Trigger In and Flush In Register"
bitfld.long 0x00 1. " FLUSHIN       ,FLUSHIN output value" "0,1"
bitfld.long 0x00 0. "     TRIGIN        ,TRIGIN output value" "0,1"
rgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAS[127] ,Returns the Value of the ATDATAS[127] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[119] ,Returns the Value of the ATDATAS[119] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[111] ,Returns the Value of the ATDATAS[111] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[103] ,Returns the Value of the ATDATAS[103] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[95]  ,Returns the Value of the ATDATAS[95] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[87]  ,Returns the Value of the ATDATAS[87] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[79]  ,Returns the Value of the ATDATAS[79] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[71]  ,Returns the Value of the ATDATAS[71] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[63]  ,Returns the Value of the ATDATAS[63] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[55]  ,Returns the Value of the ATDATAS[55] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[47]  ,Returns the Value of the ATDATAS[47] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[39]  ,Returns the Value of the ATDATAS[39] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAS[31]  ,Returns the Value of the ATDATAS[31] Input Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAS[23]  ,Returns the Value of the ATDATAS[23] Input pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAS[15]  ,Returns the Value of the ATDATAS[15] Input Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAS[7]   ,Returns the Value of the ATDATAS[7] Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAS[0]   ,Returns the Value of the ATDATAS[0] Input Pin" "Low,High"
wgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFREADYS     ,Drives the AFREADYS Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDS     ,Drives the ATVALIDS Output Pin" "Low,High"
rgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDS        ,Returns the Value of the ATIDS Input Pins"
rgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESS[1]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESS[0]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 1. "  AFVALIDS     ,Returns the Value of the AFVALIDS Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYS     ,Returns the Value of the ATREADYS Input Pin" "Low,High"
wgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAM[127] ,Drives the ATDATAM[127] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[119] ,Drives the ATDATAM[119] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[111] ,Drives the ATDATAM[111] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[103] ,Drives the ATDATAM[103] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[95]  ,Drives the ATDATAM[95] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[87]  ,Drives the ATDATAM[87] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[79]  ,Drives the ATDATAM[79] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[71]  ,Drives the ATDATAM[71] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[63]  ,Drives the ATDATAM[63] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[55]  ,Drives the ATDATAM[55] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[47]  ,Drives the ATDATAM[47] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[39]  ,Drives the ATDATAM[39] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAM[31]  ,Drives the ATDATAM[31] Output Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAM[23]  ,Drives the ATDATAM[23] Output pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAM[15]  ,Drives the ATDATAM[15] Output Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAM[7]   ,Drives the ATDATAM[7] Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAM[0]   ,Drives the ATDATAM[0] Output Pin" "Low,High"
rgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDM     ,Returns the Value of the AFVALIDM Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYM     ,Returns the Value of the ATREADYM Input Pin" "Low,High"
wgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDM        ,Drives the ATIDM Output Pins"
wgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESM[1]  ,Drives the ATBYTESM[1] Output Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESM[0]  ,Drives the ATBYTESM[0] Output Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYM     ,Drives the AFREADYM Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDM     ,Drives the ATVALIDM Output Pin" "Low,High"
width 13.
rgroup.long 0xfe0++0x13 "Peripheral Identification Registers"
line.long 0x00 "PERIPHID0,Peripheral ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PART_NUMBER[7:0] ,Bits [7:0] of the component part number"
line.long 0x04 "PERIPHID1,Peripheral ID1 Register"
bitfld.long 0x04 4.--7. " JEP106[3:0]      ,Bits [3:0] of the JEDEC identity code" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
bitfld.long 0x04 0.--3. "       PART_NUMBER[11:8] ,Bits [11:8] of the component part number" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "PERIPHID2,Peripheral ID2 Register"
bitfld.long 0x08 4.--7. " REVISION         ,Revision" "Reserved,r0p1,?..."
bitfld.long 0x08 3. "   JEDEC             ,JEDEC assigned value used" "Not used,Used"
bitfld.long 0x08 0.--2. "  JEP106[6:4] ,Bits [6:4] of the JEDEC identity code" "000,001,010,011,100,101,110,111"
line.long 0x0c "PERIPHID3,Peripheral ID3 Register"
hexmask.long.byte 0x0c 4.--7. 1. " REVAND           ,Minor errata fixes"
hexmask.long.byte 0x0c 0.--3. 1. "         CUSTOMER_MODIFIED ,Customer Modified"
rgroup.long 0xfd0++0x3
line.long 0x00 "PERIPHID4,Peripheral ID4 Register"
bitfld.long 0x00 4.--7. " FOURKB_COUNT     ,Total contiguous size of the memory window" "4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB"
bitfld.long 0x00 0.--3. "     JEP106_CONT       ,JEDEC continuation code" "Reserved,Reserved,Reserved,Reserved,5th bank,?..."
rgroup.long 0xff0++0xf "Component Identification Registers"
line.long 0x00 "COMPID0,Component ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PREAMBLE[7:0]    ,Bits [7:0] of the component identification"
line.long 0x04 "COMPID1,Component ID1 Register"
bitfld.long 0x04 4.--7. " CLASS            ,Class of the component" "Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,CoreSight,?..."
bitfld.long 0x04 0.--3. "  PREAMBLE[11:8]    ,Bits [11:8] of the component identification" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "COMPID2,Component ID2 Register"
hexmask.long.byte 0x08 0.--7. 1. " PREAMBLE[23:16]  ,Bits [23:16] of the component identification"
line.long 0x0c "COMPID3,Component ID3 Register"
hexmask.long.byte 0x0c 0.--7. 1. " PREAMBLE[31:24]  ,Bits [31:24] of the component identification"
tree.end
width 11.
tree.end
endif
sif COMPonent.AVAILABLE("etb3")&&(address.offset(comp.base("etb3",-1))!=0)
tree "TMC ETB3"
width 10.
group.long 0x004++0x3 "TMC Registers"
line.long 0x00 "RSZ,RAM Size Register"
hexmask.long 0x00 0.--30. 1. " RSZ         ,Size of the RAM in 32-bit words"
rgroup.long 0x00c++0x3
line.long 0x00 "STS,Status Register"
bitfld.long 0x00 5. " MEMERR      ,AXI master interface error" "No error,Error"
bitfld.long 0x00 4. "         EMPTY ,No valid trace data in the trace memory" "Not empty,Empty"
bitfld.long 0x00 3. "  FTEMPTY ,All internal pipelines and buffers empty" "Not empty,Empty"
bitfld.long 0x00 2. "  TMCREADY ,Trace capture ready" "Not ready,Ready"
textline "                   "
bitfld.long 0x00 1. " TRIGGERED   ,Trigger event detected" "Not detected,Detected"
bitfld.long 0x00 0. "     FULL  ,Ram full" "Not full,Full"
wgroup.long 0x010++0x3
hide.long 0x00 "RRD,RAM Read Data Register"
in
group.long 0x014++0xb
line.long 0x00 "RRP,RAM Read Pointer Register"
line.long 0x04 "RWP,RAM Write Pointer Register"
line.long 0x08 "TRG,Trigger Counter Register"
group.long 0x020++0x3
line.long 0x00 "CTL,Control Register"
bitfld.long 0x00 0. " TRACECAPTEN ,Trace Capture Enable" "Disabled,Enabled"
wgroup.long 0x024++0x3
line.long 0x00 "RWD,RAM Write Data Register"
group.long 0x028++0x3
line.long 0x00 "MODE,Mode Register"
bitfld.long 0x00 0.--1. " MODE        ,Mode select" "Circular Buffer,Software FIFO,Hardware FIFO,Software FIFO 2"
rgroup.long 0x02c++0x7
line.long 0x00 "LBUFLEVEL,Latched Buffer Fill Level Register"
line.long 0x04 "CBUFLEVEL,Current Buffer Fill Level Register"
group.long 0x034++0x3
line.long 0x00 "BUFWM,Buffer Level Water Mark Register"
group.long 0x038++0x7
line.long 0x00 "RRPHI,RAM Read Pointer High Register"
hexmask.long.byte 0x00 0.--7. 1. " RRPHI         ,Bits [39:32] of the read pointer"
line.long 0x04 "RWPHI,RAM Write Pointer High Register"
hexmask.long.byte 0x04 0.--7. 1. " RWPHI         ,Bits [39:32] of the write pointer"
group.long 0x110++0x3
line.long 0x00 "AXICTL,AXI Control Register"
bitfld.long 0x00 8.--11. " WRBURSTLEN    ,Maximum number of data transfers per burst" "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16"
bitfld.long 0x00 7. "     SGM ,Scatter Gather Mode Enable" "Disabled,Enabled"
bitfld.long 0x00 5. "          CC3 ,Cache allocate on writes enable" "Disabled,Enabled"
bitfld.long 0x00 4. "     CC2 ,Cache allocate on reads enable" "Disabled,Enabled"
textline "                   "
bitfld.long 0x00 3. " CC1 ,Cacheable" "Non-cacheable,Cacheable"
bitfld.long 0x00 2. "    CC0 ,Bufferable" "Non-bufferable,Bufferable"
bitfld.long 0x00 1. "    PC1 ,Secure/Non-secure Access" "Secure,Non-secure"
bitfld.long 0x00 0. "   PC0 ,Normal/Privileged Access" "Normal,Privileged"
group.long 0x118++0x7
line.long 0x00 "DBALO,Data Buffer Address Low Register"
line.long 0x04 "DBAHI,Data Buffer Address High Register"
hexmask.long.byte 0x04 0.--7. 1. " BUFADDRHI     ,Bits [39:32] of the trace buffer address"
rgroup.long 0x300++0x3
line.long 0x00 "FFSR,Formatter and Flush Status Register"
bitfld.long 0x00 1. " FTSTOPPED     ,Formatter Stopped" "No,Yes"
bitfld.long 0x00 0. "    FLINPROG          ,Flush in Progress" "No,Yes"
group.long 0x304++0x7
line.long 0x00 "FFCR,Formatter and Flush Control Register"
bitfld.long 0x00 14. " DRAINBUFFER   ,Drain trace data through ATB master interface" "No,Yes"
bitfld.long 0x00 13. "    STOPONTRIGEVT     ,Stop trace capture on trigger event" "No,Yes"
bitfld.long 0x00 12. "   STOPONFL      ,Stop formatter on completion of a flush operation" "No,Yes"
bitfld.long 0x00 10. "   TRIGONFL      ,Trigger on flush completion" "No,Yes"
textline "                   "
bitfld.long 0x00 9. " TRIGONTRIGEVT ,Trigger on a trigger event" "No,Yes"
bitfld.long 0x00 8. "    TRIGONTRIGIN      ,Trigger on TRIGIN being asserted" "No,Yes"
bitfld.long 0x00 6. "   FLUSHMAN      ,Manual Flush" "No,Yes"
bitfld.long 0x00 5. "   FONTRIGEVT    ,Flush on trigger event" "No,Yes"
textline "                   "
bitfld.long 0x00 4. " FONFLIN       ,Flush on FLUSHIN feature" "No,Yes"
bitfld.long 0x00 1. "    ENTI              ,Insertion of triggers in the formatted trace stream enable" "No,Yes"
bitfld.long 0x00 0. "   ENFT          ,Formatting enable" "No,Yes"
line.long 0x04 "PSCR,Periodic Synchronization Counter Register"
bitfld.long 0x04 5. " EMBEDSYNC     ,Embed Frame Sync packets" "No,Yes"
bitfld.long 0x04 0.--4. "    PSCOUNT           ,Reload value of the Synchronization Counter" "Disabled,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,128 bytes,256 bytes,512 bytes,1 KB,2 KB,4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB,?..."
width 13.
tree "Coresight Management Registers"
group 0xFA0--0xFA8
line.long 0x000 "CTS, Claim Tag Set"
bitfld.long 0x000 7. " SETCTV7   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 6. "        SETCTV6 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 5. " SETCTV5   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 4. "        SETCTV4 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 3. " SETCTV3   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 2. "        SETCTV2 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 1. " SETCTV1   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 0. "        SETCTV0 ,Set Claim Tag Value" "No effect,Set"
line.long 0x004 "CTC, Claim Tag Clear"
bitfld.long 0x004 7. " CLRCTV7   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 6. "        CLRCTV6 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 5. " CLRCTV5   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 4. "        CLRCTV4 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 3. " CLRCTV3   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 2. "        CLRCTV2 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 1. " CLRCTV1   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 0. "        CLRCTV0 ,Clear Claim Tag Value" "No effect,Cleared"
wgroup.long 0xfb0++0x3
line.long 0x00 "LAR,Lock Access Register"
rgroup.long 0xfb4++0x7
line.long 0x00 "LSR,Lock Status Register"
bitfld.long 0x00 2. " LOCKTYPE         ,32-bit Lock Access Register Implemented" "32-bit,?..."
bitfld.long 0x00 1. "         LOCKGRANT ,Lock Status" "Unlocked,Locked"
bitfld.long 0x00 0. "         LOCKEXIST  ,Lock control mechanism present" "Not present,Present"
line.long 0x04 "AUTHSTATUS,Authentication Status Register"
bitfld.long 0x04 6.--7. " SNID   ,Security level for secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 4.--5. "  SID  ,Security level for secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
bitfld.long 0x04 2.--3. "  NSNID ,Security level for non-secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 0.--1. "  NSID ,Security level for non-secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
rgroup.long 0xfc8++0x3
line.long 0x00 "DEVID,Device Configuration Register"
bitfld.long 0x00 11.--13. " WBUF_DEPTH  ,Number of entries in the write buffer (in ETR)" "Reserved,Reserved,4 entries,8 entries,16 entries,32 entries,?..."
bitfld.long 0x00 8.--10. "  MEMWIDTH  ,Memory interface databus width" "Reserved,Reserved,32-bit,64-bit,128-bit,256-bit,?..."
bitfld.long 0x00 6.--7. "    CONFIGTYPE ,Configuration type" "ETB,ETR,ETF,?..."
bitfld.long 0x00 5. "    CLKSCHEME ,RAM clocking scheme" "Synchronous,?..."
textline "                    "
bitfld.long 0x00 0.--4. "   ATBINPORTCOUNT   ,Type or number of ATB multiplexing" "No multiplexing,?..."
width 13.
if ((d.l(e:comp.base("etb3",-1)+0xfc8)&0xc0)==(0x00||0x40))
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,RAM->APB,?..."
bitfld.long 0x00 0.--3. "                    MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Trace sink,?..."
elif ((d.l(e:comp.base("etb3",-1)+0xfc8)&0xc0)==0x80)
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,Reserved,ATB slave->RAM->ATB master,?..."
bitfld.long 0x00 0.--3. "  MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Reserved,Trace link,?..."
else
hgroup.long 0xfcc++0x3
hide.long 0x00 "DEVTYPE,Device Type Identifier Register"
endif
group 0xf00--0xf03 "Integration Test Registers"
line.long 0x000 "ITCTRL,Integration Mode Control"
bitfld.long 0x000 0. " ENABLE       ,Enable Integration mode" "no,yes"
wgroup.long 0xee0++0x3
line.long 0x00 "ITMISCOP0,Integration Test Miscellaneous Output Register 0"
bitfld.long 0x00 1. " FULL          ,FULL output value set" "0,1"
bitfld.long 0x00 0. "     ACQCOMP       ,ACQCOMP output value set" "0,1"
rgroup.long 0xee8++0x3
line.long 0x00 "ITTRFLIN,Integration Test Trigger In and Flush In Register"
bitfld.long 0x00 1. " FLUSHIN       ,FLUSHIN output value" "0,1"
bitfld.long 0x00 0. "     TRIGIN        ,TRIGIN output value" "0,1"
rgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAS[127] ,Returns the Value of the ATDATAS[127] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[119] ,Returns the Value of the ATDATAS[119] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[111] ,Returns the Value of the ATDATAS[111] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[103] ,Returns the Value of the ATDATAS[103] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[95]  ,Returns the Value of the ATDATAS[95] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[87]  ,Returns the Value of the ATDATAS[87] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[79]  ,Returns the Value of the ATDATAS[79] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[71]  ,Returns the Value of the ATDATAS[71] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[63]  ,Returns the Value of the ATDATAS[63] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[55]  ,Returns the Value of the ATDATAS[55] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[47]  ,Returns the Value of the ATDATAS[47] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[39]  ,Returns the Value of the ATDATAS[39] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAS[31]  ,Returns the Value of the ATDATAS[31] Input Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAS[23]  ,Returns the Value of the ATDATAS[23] Input pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAS[15]  ,Returns the Value of the ATDATAS[15] Input Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAS[7]   ,Returns the Value of the ATDATAS[7] Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAS[0]   ,Returns the Value of the ATDATAS[0] Input Pin" "Low,High"
wgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFREADYS     ,Drives the AFREADYS Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDS     ,Drives the ATVALIDS Output Pin" "Low,High"
rgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDS        ,Returns the Value of the ATIDS Input Pins"
rgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESS[1]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESS[0]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 1. "  AFVALIDS     ,Returns the Value of the AFVALIDS Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYS     ,Returns the Value of the ATREADYS Input Pin" "Low,High"
wgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAM[127] ,Drives the ATDATAM[127] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[119] ,Drives the ATDATAM[119] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[111] ,Drives the ATDATAM[111] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[103] ,Drives the ATDATAM[103] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[95]  ,Drives the ATDATAM[95] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[87]  ,Drives the ATDATAM[87] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[79]  ,Drives the ATDATAM[79] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[71]  ,Drives the ATDATAM[71] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[63]  ,Drives the ATDATAM[63] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[55]  ,Drives the ATDATAM[55] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[47]  ,Drives the ATDATAM[47] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[39]  ,Drives the ATDATAM[39] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAM[31]  ,Drives the ATDATAM[31] Output Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAM[23]  ,Drives the ATDATAM[23] Output pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAM[15]  ,Drives the ATDATAM[15] Output Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAM[7]   ,Drives the ATDATAM[7] Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAM[0]   ,Drives the ATDATAM[0] Output Pin" "Low,High"
rgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDM     ,Returns the Value of the AFVALIDM Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYM     ,Returns the Value of the ATREADYM Input Pin" "Low,High"
wgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDM        ,Drives the ATIDM Output Pins"
wgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESM[1]  ,Drives the ATBYTESM[1] Output Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESM[0]  ,Drives the ATBYTESM[0] Output Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYM     ,Drives the AFREADYM Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDM     ,Drives the ATVALIDM Output Pin" "Low,High"
width 13.
rgroup.long 0xfe0++0x13 "Peripheral Identification Registers"
line.long 0x00 "PERIPHID0,Peripheral ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PART_NUMBER[7:0] ,Bits [7:0] of the component part number"
line.long 0x04 "PERIPHID1,Peripheral ID1 Register"
bitfld.long 0x04 4.--7. " JEP106[3:0]      ,Bits [3:0] of the JEDEC identity code" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
bitfld.long 0x04 0.--3. "       PART_NUMBER[11:8] ,Bits [11:8] of the component part number" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "PERIPHID2,Peripheral ID2 Register"
bitfld.long 0x08 4.--7. " REVISION         ,Revision" "Reserved,r0p1,?..."
bitfld.long 0x08 3. "   JEDEC             ,JEDEC assigned value used" "Not used,Used"
bitfld.long 0x08 0.--2. "  JEP106[6:4] ,Bits [6:4] of the JEDEC identity code" "000,001,010,011,100,101,110,111"
line.long 0x0c "PERIPHID3,Peripheral ID3 Register"
hexmask.long.byte 0x0c 4.--7. 1. " REVAND           ,Minor errata fixes"
hexmask.long.byte 0x0c 0.--3. 1. "         CUSTOMER_MODIFIED ,Customer Modified"
rgroup.long 0xfd0++0x3
line.long 0x00 "PERIPHID4,Peripheral ID4 Register"
bitfld.long 0x00 4.--7. " FOURKB_COUNT     ,Total contiguous size of the memory window" "4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB"
bitfld.long 0x00 0.--3. "     JEP106_CONT       ,JEDEC continuation code" "Reserved,Reserved,Reserved,Reserved,5th bank,?..."
rgroup.long 0xff0++0xf "Component Identification Registers"
line.long 0x00 "COMPID0,Component ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PREAMBLE[7:0]    ,Bits [7:0] of the component identification"
line.long 0x04 "COMPID1,Component ID1 Register"
bitfld.long 0x04 4.--7. " CLASS            ,Class of the component" "Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,CoreSight,?..."
bitfld.long 0x04 0.--3. "  PREAMBLE[11:8]    ,Bits [11:8] of the component identification" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "COMPID2,Component ID2 Register"
hexmask.long.byte 0x08 0.--7. 1. " PREAMBLE[23:16]  ,Bits [23:16] of the component identification"
line.long 0x0c "COMPID3,Component ID3 Register"
hexmask.long.byte 0x0c 0.--7. 1. " PREAMBLE[31:24]  ,Bits [31:24] of the component identification"
tree.end
width 11.
tree.end
endif
sif COMPonent.AVAILABLE("etb4")&&(address.offset(comp.base("etb4",-1))!=0)
tree "TMC ETB4"
width 10.
group.long 0x004++0x3 "TMC Registers"
line.long 0x00 "RSZ,RAM Size Register"
hexmask.long 0x00 0.--30. 1. " RSZ         ,Size of the RAM in 32-bit words"
rgroup.long 0x00c++0x3
line.long 0x00 "STS,Status Register"
bitfld.long 0x00 5. " MEMERR      ,AXI master interface error" "No error,Error"
bitfld.long 0x00 4. "         EMPTY ,No valid trace data in the trace memory" "Not empty,Empty"
bitfld.long 0x00 3. "  FTEMPTY ,All internal pipelines and buffers empty" "Not empty,Empty"
bitfld.long 0x00 2. "  TMCREADY ,Trace capture ready" "Not ready,Ready"
textline "                   "
bitfld.long 0x00 1. " TRIGGERED   ,Trigger event detected" "Not detected,Detected"
bitfld.long 0x00 0. "     FULL  ,Ram full" "Not full,Full"
wgroup.long 0x010++0x3
hide.long 0x00 "RRD,RAM Read Data Register"
in
group.long 0x014++0xb
line.long 0x00 "RRP,RAM Read Pointer Register"
line.long 0x04 "RWP,RAM Write Pointer Register"
line.long 0x08 "TRG,Trigger Counter Register"
group.long 0x020++0x3
line.long 0x00 "CTL,Control Register"
bitfld.long 0x00 0. " TRACECAPTEN ,Trace Capture Enable" "Disabled,Enabled"
wgroup.long 0x024++0x3
line.long 0x00 "RWD,RAM Write Data Register"
group.long 0x028++0x3
line.long 0x00 "MODE,Mode Register"
bitfld.long 0x00 0.--1. " MODE        ,Mode select" "Circular Buffer,Software FIFO,Hardware FIFO,Software FIFO 2"
rgroup.long 0x02c++0x7
line.long 0x00 "LBUFLEVEL,Latched Buffer Fill Level Register"
line.long 0x04 "CBUFLEVEL,Current Buffer Fill Level Register"
group.long 0x034++0x3
line.long 0x00 "BUFWM,Buffer Level Water Mark Register"
group.long 0x038++0x7
line.long 0x00 "RRPHI,RAM Read Pointer High Register"
hexmask.long.byte 0x00 0.--7. 1. " RRPHI         ,Bits [39:32] of the read pointer"
line.long 0x04 "RWPHI,RAM Write Pointer High Register"
hexmask.long.byte 0x04 0.--7. 1. " RWPHI         ,Bits [39:32] of the write pointer"
group.long 0x110++0x3
line.long 0x00 "AXICTL,AXI Control Register"
bitfld.long 0x00 8.--11. " WRBURSTLEN    ,Maximum number of data transfers per burst" "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16"
bitfld.long 0x00 7. "     SGM ,Scatter Gather Mode Enable" "Disabled,Enabled"
bitfld.long 0x00 5. "          CC3 ,Cache allocate on writes enable" "Disabled,Enabled"
bitfld.long 0x00 4. "     CC2 ,Cache allocate on reads enable" "Disabled,Enabled"
textline "                   "
bitfld.long 0x00 3. " CC1 ,Cacheable" "Non-cacheable,Cacheable"
bitfld.long 0x00 2. "    CC0 ,Bufferable" "Non-bufferable,Bufferable"
bitfld.long 0x00 1. "    PC1 ,Secure/Non-secure Access" "Secure,Non-secure"
bitfld.long 0x00 0. "   PC0 ,Normal/Privileged Access" "Normal,Privileged"
group.long 0x118++0x7
line.long 0x00 "DBALO,Data Buffer Address Low Register"
line.long 0x04 "DBAHI,Data Buffer Address High Register"
hexmask.long.byte 0x04 0.--7. 1. " BUFADDRHI     ,Bits [39:32] of the trace buffer address"
rgroup.long 0x300++0x3
line.long 0x00 "FFSR,Formatter and Flush Status Register"
bitfld.long 0x00 1. " FTSTOPPED     ,Formatter Stopped" "No,Yes"
bitfld.long 0x00 0. "    FLINPROG          ,Flush in Progress" "No,Yes"
group.long 0x304++0x7
line.long 0x00 "FFCR,Formatter and Flush Control Register"
bitfld.long 0x00 14. " DRAINBUFFER   ,Drain trace data through ATB master interface" "No,Yes"
bitfld.long 0x00 13. "    STOPONTRIGEVT     ,Stop trace capture on trigger event" "No,Yes"
bitfld.long 0x00 12. "   STOPONFL      ,Stop formatter on completion of a flush operation" "No,Yes"
bitfld.long 0x00 10. "   TRIGONFL      ,Trigger on flush completion" "No,Yes"
textline "                   "
bitfld.long 0x00 9. " TRIGONTRIGEVT ,Trigger on a trigger event" "No,Yes"
bitfld.long 0x00 8. "    TRIGONTRIGIN      ,Trigger on TRIGIN being asserted" "No,Yes"
bitfld.long 0x00 6. "   FLUSHMAN      ,Manual Flush" "No,Yes"
bitfld.long 0x00 5. "   FONTRIGEVT    ,Flush on trigger event" "No,Yes"
textline "                   "
bitfld.long 0x00 4. " FONFLIN       ,Flush on FLUSHIN feature" "No,Yes"
bitfld.long 0x00 1. "    ENTI              ,Insertion of triggers in the formatted trace stream enable" "No,Yes"
bitfld.long 0x00 0. "   ENFT          ,Formatting enable" "No,Yes"
line.long 0x04 "PSCR,Periodic Synchronization Counter Register"
bitfld.long 0x04 5. " EMBEDSYNC     ,Embed Frame Sync packets" "No,Yes"
bitfld.long 0x04 0.--4. "    PSCOUNT           ,Reload value of the Synchronization Counter" "Disabled,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,128 bytes,256 bytes,512 bytes,1 KB,2 KB,4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB,?..."
width 13.
tree "Coresight Management Registers"
group 0xFA0--0xFA8
line.long 0x000 "CTS, Claim Tag Set"
bitfld.long 0x000 7. " SETCTV7   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 6. "        SETCTV6 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 5. " SETCTV5   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 4. "        SETCTV4 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 3. " SETCTV3   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 2. "        SETCTV2 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 1. " SETCTV1   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 0. "        SETCTV0 ,Set Claim Tag Value" "No effect,Set"
line.long 0x004 "CTC, Claim Tag Clear"
bitfld.long 0x004 7. " CLRCTV7   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 6. "        CLRCTV6 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 5. " CLRCTV5   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 4. "        CLRCTV4 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 3. " CLRCTV3   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 2. "        CLRCTV2 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 1. " CLRCTV1   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 0. "        CLRCTV0 ,Clear Claim Tag Value" "No effect,Cleared"
wgroup.long 0xfb0++0x3
line.long 0x00 "LAR,Lock Access Register"
rgroup.long 0xfb4++0x7
line.long 0x00 "LSR,Lock Status Register"
bitfld.long 0x00 2. " LOCKTYPE         ,32-bit Lock Access Register Implemented" "32-bit,?..."
bitfld.long 0x00 1. "         LOCKGRANT ,Lock Status" "Unlocked,Locked"
bitfld.long 0x00 0. "         LOCKEXIST  ,Lock control mechanism present" "Not present,Present"
line.long 0x04 "AUTHSTATUS,Authentication Status Register"
bitfld.long 0x04 6.--7. " SNID   ,Security level for secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 4.--5. "  SID  ,Security level for secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
bitfld.long 0x04 2.--3. "  NSNID ,Security level for non-secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 0.--1. "  NSID ,Security level for non-secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
rgroup.long 0xfc8++0x3
line.long 0x00 "DEVID,Device Configuration Register"
bitfld.long 0x00 11.--13. " WBUF_DEPTH  ,Number of entries in the write buffer (in ETR)" "Reserved,Reserved,4 entries,8 entries,16 entries,32 entries,?..."
bitfld.long 0x00 8.--10. "  MEMWIDTH  ,Memory interface databus width" "Reserved,Reserved,32-bit,64-bit,128-bit,256-bit,?..."
bitfld.long 0x00 6.--7. "    CONFIGTYPE ,Configuration type" "ETB,ETR,ETF,?..."
bitfld.long 0x00 5. "    CLKSCHEME ,RAM clocking scheme" "Synchronous,?..."
textline "                    "
bitfld.long 0x00 0.--4. "   ATBINPORTCOUNT   ,Type or number of ATB multiplexing" "No multiplexing,?..."
width 13.
if ((d.l(e:comp.base("etb4",-1)+0xfc8)&0xc0)==(0x00||0x40))
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,RAM->APB,?..."
bitfld.long 0x00 0.--3. "                    MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Trace sink,?..."
elif ((d.l(e:comp.base("etb4",-1)+0xfc8)&0xc0)==0x80)
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,Reserved,ATB slave->RAM->ATB master,?..."
bitfld.long 0x00 0.--3. "  MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Reserved,Trace link,?..."
else
hgroup.long 0xfcc++0x3
hide.long 0x00 "DEVTYPE,Device Type Identifier Register"
endif
group 0xf00--0xf03 "Integration Test Registers"
line.long 0x000 "ITCTRL,Integration Mode Control"
bitfld.long 0x000 0. " ENABLE       ,Enable Integration mode" "no,yes"
wgroup.long 0xee0++0x3
line.long 0x00 "ITMISCOP0,Integration Test Miscellaneous Output Register 0"
bitfld.long 0x00 1. " FULL          ,FULL output value set" "0,1"
bitfld.long 0x00 0. "     ACQCOMP       ,ACQCOMP output value set" "0,1"
rgroup.long 0xee8++0x3
line.long 0x00 "ITTRFLIN,Integration Test Trigger In and Flush In Register"
bitfld.long 0x00 1. " FLUSHIN       ,FLUSHIN output value" "0,1"
bitfld.long 0x00 0. "     TRIGIN        ,TRIGIN output value" "0,1"
rgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAS[127] ,Returns the Value of the ATDATAS[127] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[119] ,Returns the Value of the ATDATAS[119] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[111] ,Returns the Value of the ATDATAS[111] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[103] ,Returns the Value of the ATDATAS[103] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[95]  ,Returns the Value of the ATDATAS[95] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[87]  ,Returns the Value of the ATDATAS[87] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[79]  ,Returns the Value of the ATDATAS[79] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[71]  ,Returns the Value of the ATDATAS[71] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[63]  ,Returns the Value of the ATDATAS[63] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[55]  ,Returns the Value of the ATDATAS[55] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[47]  ,Returns the Value of the ATDATAS[47] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[39]  ,Returns the Value of the ATDATAS[39] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAS[31]  ,Returns the Value of the ATDATAS[31] Input Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAS[23]  ,Returns the Value of the ATDATAS[23] Input pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAS[15]  ,Returns the Value of the ATDATAS[15] Input Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAS[7]   ,Returns the Value of the ATDATAS[7] Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAS[0]   ,Returns the Value of the ATDATAS[0] Input Pin" "Low,High"
wgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFREADYS     ,Drives the AFREADYS Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDS     ,Drives the ATVALIDS Output Pin" "Low,High"
rgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDS        ,Returns the Value of the ATIDS Input Pins"
rgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESS[1]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESS[0]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 1. "  AFVALIDS     ,Returns the Value of the AFVALIDS Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYS     ,Returns the Value of the ATREADYS Input Pin" "Low,High"
wgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAM[127] ,Drives the ATDATAM[127] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[119] ,Drives the ATDATAM[119] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[111] ,Drives the ATDATAM[111] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[103] ,Drives the ATDATAM[103] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[95]  ,Drives the ATDATAM[95] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[87]  ,Drives the ATDATAM[87] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[79]  ,Drives the ATDATAM[79] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[71]  ,Drives the ATDATAM[71] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[63]  ,Drives the ATDATAM[63] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[55]  ,Drives the ATDATAM[55] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[47]  ,Drives the ATDATAM[47] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[39]  ,Drives the ATDATAM[39] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAM[31]  ,Drives the ATDATAM[31] Output Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAM[23]  ,Drives the ATDATAM[23] Output pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAM[15]  ,Drives the ATDATAM[15] Output Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAM[7]   ,Drives the ATDATAM[7] Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAM[0]   ,Drives the ATDATAM[0] Output Pin" "Low,High"
rgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDM     ,Returns the Value of the AFVALIDM Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYM     ,Returns the Value of the ATREADYM Input Pin" "Low,High"
wgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDM        ,Drives the ATIDM Output Pins"
wgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESM[1]  ,Drives the ATBYTESM[1] Output Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESM[0]  ,Drives the ATBYTESM[0] Output Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYM     ,Drives the AFREADYM Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDM     ,Drives the ATVALIDM Output Pin" "Low,High"
width 13.
rgroup.long 0xfe0++0x13 "Peripheral Identification Registers"
line.long 0x00 "PERIPHID0,Peripheral ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PART_NUMBER[7:0] ,Bits [7:0] of the component part number"
line.long 0x04 "PERIPHID1,Peripheral ID1 Register"
bitfld.long 0x04 4.--7. " JEP106[3:0]      ,Bits [3:0] of the JEDEC identity code" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
bitfld.long 0x04 0.--3. "       PART_NUMBER[11:8] ,Bits [11:8] of the component part number" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "PERIPHID2,Peripheral ID2 Register"
bitfld.long 0x08 4.--7. " REVISION         ,Revision" "Reserved,r0p1,?..."
bitfld.long 0x08 3. "   JEDEC             ,JEDEC assigned value used" "Not used,Used"
bitfld.long 0x08 0.--2. "  JEP106[6:4] ,Bits [6:4] of the JEDEC identity code" "000,001,010,011,100,101,110,111"
line.long 0x0c "PERIPHID3,Peripheral ID3 Register"
hexmask.long.byte 0x0c 4.--7. 1. " REVAND           ,Minor errata fixes"
hexmask.long.byte 0x0c 0.--3. 1. "         CUSTOMER_MODIFIED ,Customer Modified"
rgroup.long 0xfd0++0x3
line.long 0x00 "PERIPHID4,Peripheral ID4 Register"
bitfld.long 0x00 4.--7. " FOURKB_COUNT     ,Total contiguous size of the memory window" "4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB"
bitfld.long 0x00 0.--3. "     JEP106_CONT       ,JEDEC continuation code" "Reserved,Reserved,Reserved,Reserved,5th bank,?..."
rgroup.long 0xff0++0xf "Component Identification Registers"
line.long 0x00 "COMPID0,Component ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PREAMBLE[7:0]    ,Bits [7:0] of the component identification"
line.long 0x04 "COMPID1,Component ID1 Register"
bitfld.long 0x04 4.--7. " CLASS            ,Class of the component" "Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,CoreSight,?..."
bitfld.long 0x04 0.--3. "  PREAMBLE[11:8]    ,Bits [11:8] of the component identification" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "COMPID2,Component ID2 Register"
hexmask.long.byte 0x08 0.--7. 1. " PREAMBLE[23:16]  ,Bits [23:16] of the component identification"
line.long 0x0c "COMPID3,Component ID3 Register"
hexmask.long.byte 0x0c 0.--7. 1. " PREAMBLE[31:24]  ,Bits [31:24] of the component identification"
tree.end
width 11.
tree.end
endif
sif COMPonent.AVAILABLE("etb5")&&(address.offset(comp.base("etb5",-1))!=0)
tree "TMC ETB5"
width 10.
group.long 0x004++0x3 "TMC Registers"
line.long 0x00 "RSZ,RAM Size Register"
hexmask.long 0x00 0.--30. 1. " RSZ         ,Size of the RAM in 32-bit words"
rgroup.long 0x00c++0x3
line.long 0x00 "STS,Status Register"
bitfld.long 0x00 5. " MEMERR      ,AXI master interface error" "No error,Error"
bitfld.long 0x00 4. "         EMPTY ,No valid trace data in the trace memory" "Not empty,Empty"
bitfld.long 0x00 3. "  FTEMPTY ,All internal pipelines and buffers empty" "Not empty,Empty"
bitfld.long 0x00 2. "  TMCREADY ,Trace capture ready" "Not ready,Ready"
textline "                   "
bitfld.long 0x00 1. " TRIGGERED   ,Trigger event detected" "Not detected,Detected"
bitfld.long 0x00 0. "     FULL  ,Ram full" "Not full,Full"
wgroup.long 0x010++0x3
hide.long 0x00 "RRD,RAM Read Data Register"
in
group.long 0x014++0xb
line.long 0x00 "RRP,RAM Read Pointer Register"
line.long 0x04 "RWP,RAM Write Pointer Register"
line.long 0x08 "TRG,Trigger Counter Register"
group.long 0x020++0x3
line.long 0x00 "CTL,Control Register"
bitfld.long 0x00 0. " TRACECAPTEN ,Trace Capture Enable" "Disabled,Enabled"
wgroup.long 0x024++0x3
line.long 0x00 "RWD,RAM Write Data Register"
group.long 0x028++0x3
line.long 0x00 "MODE,Mode Register"
bitfld.long 0x00 0.--1. " MODE        ,Mode select" "Circular Buffer,Software FIFO,Hardware FIFO,Software FIFO 2"
rgroup.long 0x02c++0x7
line.long 0x00 "LBUFLEVEL,Latched Buffer Fill Level Register"
line.long 0x04 "CBUFLEVEL,Current Buffer Fill Level Register"
group.long 0x034++0x3
line.long 0x00 "BUFWM,Buffer Level Water Mark Register"
group.long 0x038++0x7
line.long 0x00 "RRPHI,RAM Read Pointer High Register"
hexmask.long.byte 0x00 0.--7. 1. " RRPHI         ,Bits [39:32] of the read pointer"
line.long 0x04 "RWPHI,RAM Write Pointer High Register"
hexmask.long.byte 0x04 0.--7. 1. " RWPHI         ,Bits [39:32] of the write pointer"
group.long 0x110++0x3
line.long 0x00 "AXICTL,AXI Control Register"
bitfld.long 0x00 8.--11. " WRBURSTLEN    ,Maximum number of data transfers per burst" "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16"
bitfld.long 0x00 7. "     SGM ,Scatter Gather Mode Enable" "Disabled,Enabled"
bitfld.long 0x00 5. "          CC3 ,Cache allocate on writes enable" "Disabled,Enabled"
bitfld.long 0x00 4. "     CC2 ,Cache allocate on reads enable" "Disabled,Enabled"
textline "                   "
bitfld.long 0x00 3. " CC1 ,Cacheable" "Non-cacheable,Cacheable"
bitfld.long 0x00 2. "    CC0 ,Bufferable" "Non-bufferable,Bufferable"
bitfld.long 0x00 1. "    PC1 ,Secure/Non-secure Access" "Secure,Non-secure"
bitfld.long 0x00 0. "   PC0 ,Normal/Privileged Access" "Normal,Privileged"
group.long 0x118++0x7
line.long 0x00 "DBALO,Data Buffer Address Low Register"
line.long 0x04 "DBAHI,Data Buffer Address High Register"
hexmask.long.byte 0x04 0.--7. 1. " BUFADDRHI     ,Bits [39:32] of the trace buffer address"
rgroup.long 0x300++0x3
line.long 0x00 "FFSR,Formatter and Flush Status Register"
bitfld.long 0x00 1. " FTSTOPPED     ,Formatter Stopped" "No,Yes"
bitfld.long 0x00 0. "    FLINPROG          ,Flush in Progress" "No,Yes"
group.long 0x304++0x7
line.long 0x00 "FFCR,Formatter and Flush Control Register"
bitfld.long 0x00 14. " DRAINBUFFER   ,Drain trace data through ATB master interface" "No,Yes"
bitfld.long 0x00 13. "    STOPONTRIGEVT     ,Stop trace capture on trigger event" "No,Yes"
bitfld.long 0x00 12. "   STOPONFL      ,Stop formatter on completion of a flush operation" "No,Yes"
bitfld.long 0x00 10. "   TRIGONFL      ,Trigger on flush completion" "No,Yes"
textline "                   "
bitfld.long 0x00 9. " TRIGONTRIGEVT ,Trigger on a trigger event" "No,Yes"
bitfld.long 0x00 8. "    TRIGONTRIGIN      ,Trigger on TRIGIN being asserted" "No,Yes"
bitfld.long 0x00 6. "   FLUSHMAN      ,Manual Flush" "No,Yes"
bitfld.long 0x00 5. "   FONTRIGEVT    ,Flush on trigger event" "No,Yes"
textline "                   "
bitfld.long 0x00 4. " FONFLIN       ,Flush on FLUSHIN feature" "No,Yes"
bitfld.long 0x00 1. "    ENTI              ,Insertion of triggers in the formatted trace stream enable" "No,Yes"
bitfld.long 0x00 0. "   ENFT          ,Formatting enable" "No,Yes"
line.long 0x04 "PSCR,Periodic Synchronization Counter Register"
bitfld.long 0x04 5. " EMBEDSYNC     ,Embed Frame Sync packets" "No,Yes"
bitfld.long 0x04 0.--4. "    PSCOUNT           ,Reload value of the Synchronization Counter" "Disabled,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,128 bytes,256 bytes,512 bytes,1 KB,2 KB,4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB,?..."
width 13.
tree "Coresight Management Registers"
group 0xFA0--0xFA8
line.long 0x000 "CTS, Claim Tag Set"
bitfld.long 0x000 7. " SETCTV7   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 6. "        SETCTV6 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 5. " SETCTV5   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 4. "        SETCTV4 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 3. " SETCTV3   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 2. "        SETCTV2 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 1. " SETCTV1   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 0. "        SETCTV0 ,Set Claim Tag Value" "No effect,Set"
line.long 0x004 "CTC, Claim Tag Clear"
bitfld.long 0x004 7. " CLRCTV7   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 6. "        CLRCTV6 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 5. " CLRCTV5   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 4. "        CLRCTV4 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 3. " CLRCTV3   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 2. "        CLRCTV2 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 1. " CLRCTV1   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 0. "        CLRCTV0 ,Clear Claim Tag Value" "No effect,Cleared"
wgroup.long 0xfb0++0x3
line.long 0x00 "LAR,Lock Access Register"
rgroup.long 0xfb4++0x7
line.long 0x00 "LSR,Lock Status Register"
bitfld.long 0x00 2. " LOCKTYPE         ,32-bit Lock Access Register Implemented" "32-bit,?..."
bitfld.long 0x00 1. "         LOCKGRANT ,Lock Status" "Unlocked,Locked"
bitfld.long 0x00 0. "         LOCKEXIST  ,Lock control mechanism present" "Not present,Present"
line.long 0x04 "AUTHSTATUS,Authentication Status Register"
bitfld.long 0x04 6.--7. " SNID   ,Security level for secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 4.--5. "  SID  ,Security level for secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
bitfld.long 0x04 2.--3. "  NSNID ,Security level for non-secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 0.--1. "  NSID ,Security level for non-secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
rgroup.long 0xfc8++0x3
line.long 0x00 "DEVID,Device Configuration Register"
bitfld.long 0x00 11.--13. " WBUF_DEPTH  ,Number of entries in the write buffer (in ETR)" "Reserved,Reserved,4 entries,8 entries,16 entries,32 entries,?..."
bitfld.long 0x00 8.--10. "  MEMWIDTH  ,Memory interface databus width" "Reserved,Reserved,32-bit,64-bit,128-bit,256-bit,?..."
bitfld.long 0x00 6.--7. "    CONFIGTYPE ,Configuration type" "ETB,ETR,ETF,?..."
bitfld.long 0x00 5. "    CLKSCHEME ,RAM clocking scheme" "Synchronous,?..."
textline "                    "
bitfld.long 0x00 0.--4. "   ATBINPORTCOUNT   ,Type or number of ATB multiplexing" "No multiplexing,?..."
width 13.
if ((d.l(e:comp.base("etb5",-1)+0xfc8)&0xc0)==(0x00||0x40))
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,RAM->APB,?..."
bitfld.long 0x00 0.--3. "                    MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Trace sink,?..."
elif ((d.l(e:comp.base("etb5",-1)+0xfc8)&0xc0)==0x80)
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,Reserved,ATB slave->RAM->ATB master,?..."
bitfld.long 0x00 0.--3. "  MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Reserved,Trace link,?..."
else
hgroup.long 0xfcc++0x3
hide.long 0x00 "DEVTYPE,Device Type Identifier Register"
endif
group 0xf00--0xf03 "Integration Test Registers"
line.long 0x000 "ITCTRL,Integration Mode Control"
bitfld.long 0x000 0. " ENABLE       ,Enable Integration mode" "no,yes"
wgroup.long 0xee0++0x3
line.long 0x00 "ITMISCOP0,Integration Test Miscellaneous Output Register 0"
bitfld.long 0x00 1. " FULL          ,FULL output value set" "0,1"
bitfld.long 0x00 0. "     ACQCOMP       ,ACQCOMP output value set" "0,1"
rgroup.long 0xee8++0x3
line.long 0x00 "ITTRFLIN,Integration Test Trigger In and Flush In Register"
bitfld.long 0x00 1. " FLUSHIN       ,FLUSHIN output value" "0,1"
bitfld.long 0x00 0. "     TRIGIN        ,TRIGIN output value" "0,1"
rgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAS[127] ,Returns the Value of the ATDATAS[127] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[119] ,Returns the Value of the ATDATAS[119] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[111] ,Returns the Value of the ATDATAS[111] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[103] ,Returns the Value of the ATDATAS[103] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[95]  ,Returns the Value of the ATDATAS[95] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[87]  ,Returns the Value of the ATDATAS[87] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[79]  ,Returns the Value of the ATDATAS[79] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[71]  ,Returns the Value of the ATDATAS[71] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[63]  ,Returns the Value of the ATDATAS[63] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[55]  ,Returns the Value of the ATDATAS[55] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[47]  ,Returns the Value of the ATDATAS[47] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[39]  ,Returns the Value of the ATDATAS[39] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAS[31]  ,Returns the Value of the ATDATAS[31] Input Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAS[23]  ,Returns the Value of the ATDATAS[23] Input pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAS[15]  ,Returns the Value of the ATDATAS[15] Input Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAS[7]   ,Returns the Value of the ATDATAS[7] Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAS[0]   ,Returns the Value of the ATDATAS[0] Input Pin" "Low,High"
wgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFREADYS     ,Drives the AFREADYS Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDS     ,Drives the ATVALIDS Output Pin" "Low,High"
rgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDS        ,Returns the Value of the ATIDS Input Pins"
rgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESS[1]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESS[0]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 1. "  AFVALIDS     ,Returns the Value of the AFVALIDS Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYS     ,Returns the Value of the ATREADYS Input Pin" "Low,High"
wgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAM[127] ,Drives the ATDATAM[127] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[119] ,Drives the ATDATAM[119] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[111] ,Drives the ATDATAM[111] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[103] ,Drives the ATDATAM[103] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[95]  ,Drives the ATDATAM[95] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[87]  ,Drives the ATDATAM[87] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[79]  ,Drives the ATDATAM[79] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[71]  ,Drives the ATDATAM[71] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[63]  ,Drives the ATDATAM[63] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[55]  ,Drives the ATDATAM[55] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[47]  ,Drives the ATDATAM[47] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[39]  ,Drives the ATDATAM[39] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAM[31]  ,Drives the ATDATAM[31] Output Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAM[23]  ,Drives the ATDATAM[23] Output pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAM[15]  ,Drives the ATDATAM[15] Output Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAM[7]   ,Drives the ATDATAM[7] Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAM[0]   ,Drives the ATDATAM[0] Output Pin" "Low,High"
rgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDM     ,Returns the Value of the AFVALIDM Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYM     ,Returns the Value of the ATREADYM Input Pin" "Low,High"
wgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDM        ,Drives the ATIDM Output Pins"
wgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESM[1]  ,Drives the ATBYTESM[1] Output Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESM[0]  ,Drives the ATBYTESM[0] Output Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYM     ,Drives the AFREADYM Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDM     ,Drives the ATVALIDM Output Pin" "Low,High"
width 13.
rgroup.long 0xfe0++0x13 "Peripheral Identification Registers"
line.long 0x00 "PERIPHID0,Peripheral ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PART_NUMBER[7:0] ,Bits [7:0] of the component part number"
line.long 0x04 "PERIPHID1,Peripheral ID1 Register"
bitfld.long 0x04 4.--7. " JEP106[3:0]      ,Bits [3:0] of the JEDEC identity code" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
bitfld.long 0x04 0.--3. "       PART_NUMBER[11:8] ,Bits [11:8] of the component part number" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "PERIPHID2,Peripheral ID2 Register"
bitfld.long 0x08 4.--7. " REVISION         ,Revision" "Reserved,r0p1,?..."
bitfld.long 0x08 3. "   JEDEC             ,JEDEC assigned value used" "Not used,Used"
bitfld.long 0x08 0.--2. "  JEP106[6:4] ,Bits [6:4] of the JEDEC identity code" "000,001,010,011,100,101,110,111"
line.long 0x0c "PERIPHID3,Peripheral ID3 Register"
hexmask.long.byte 0x0c 4.--7. 1. " REVAND           ,Minor errata fixes"
hexmask.long.byte 0x0c 0.--3. 1. "         CUSTOMER_MODIFIED ,Customer Modified"
rgroup.long 0xfd0++0x3
line.long 0x00 "PERIPHID4,Peripheral ID4 Register"
bitfld.long 0x00 4.--7. " FOURKB_COUNT     ,Total contiguous size of the memory window" "4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB"
bitfld.long 0x00 0.--3. "     JEP106_CONT       ,JEDEC continuation code" "Reserved,Reserved,Reserved,Reserved,5th bank,?..."
rgroup.long 0xff0++0xf "Component Identification Registers"
line.long 0x00 "COMPID0,Component ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PREAMBLE[7:0]    ,Bits [7:0] of the component identification"
line.long 0x04 "COMPID1,Component ID1 Register"
bitfld.long 0x04 4.--7. " CLASS            ,Class of the component" "Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,CoreSight,?..."
bitfld.long 0x04 0.--3. "  PREAMBLE[11:8]    ,Bits [11:8] of the component identification" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "COMPID2,Component ID2 Register"
hexmask.long.byte 0x08 0.--7. 1. " PREAMBLE[23:16]  ,Bits [23:16] of the component identification"
line.long 0x0c "COMPID3,Component ID3 Register"
hexmask.long.byte 0x0c 0.--7. 1. " PREAMBLE[31:24]  ,Bits [31:24] of the component identification"
tree.end
width 11.
tree.end
endif
sif COMPonent.AVAILABLE("etb6")&&(address.offset(comp.base("etb6",-1))!=0)
tree "TMC ETB6"
width 10.
group.long 0x004++0x3 "TMC Registers"
line.long 0x00 "RSZ,RAM Size Register"
hexmask.long 0x00 0.--30. 1. " RSZ         ,Size of the RAM in 32-bit words"
rgroup.long 0x00c++0x3
line.long 0x00 "STS,Status Register"
bitfld.long 0x00 5. " MEMERR      ,AXI master interface error" "No error,Error"
bitfld.long 0x00 4. "         EMPTY ,No valid trace data in the trace memory" "Not empty,Empty"
bitfld.long 0x00 3. "  FTEMPTY ,All internal pipelines and buffers empty" "Not empty,Empty"
bitfld.long 0x00 2. "  TMCREADY ,Trace capture ready" "Not ready,Ready"
textline "                   "
bitfld.long 0x00 1. " TRIGGERED   ,Trigger event detected" "Not detected,Detected"
bitfld.long 0x00 0. "     FULL  ,Ram full" "Not full,Full"
wgroup.long 0x010++0x3
hide.long 0x00 "RRD,RAM Read Data Register"
in
group.long 0x014++0xb
line.long 0x00 "RRP,RAM Read Pointer Register"
line.long 0x04 "RWP,RAM Write Pointer Register"
line.long 0x08 "TRG,Trigger Counter Register"
group.long 0x020++0x3
line.long 0x00 "CTL,Control Register"
bitfld.long 0x00 0. " TRACECAPTEN ,Trace Capture Enable" "Disabled,Enabled"
wgroup.long 0x024++0x3
line.long 0x00 "RWD,RAM Write Data Register"
group.long 0x028++0x3
line.long 0x00 "MODE,Mode Register"
bitfld.long 0x00 0.--1. " MODE        ,Mode select" "Circular Buffer,Software FIFO,Hardware FIFO,Software FIFO 2"
rgroup.long 0x02c++0x7
line.long 0x00 "LBUFLEVEL,Latched Buffer Fill Level Register"
line.long 0x04 "CBUFLEVEL,Current Buffer Fill Level Register"
group.long 0x034++0x3
line.long 0x00 "BUFWM,Buffer Level Water Mark Register"
group.long 0x038++0x7
line.long 0x00 "RRPHI,RAM Read Pointer High Register"
hexmask.long.byte 0x00 0.--7. 1. " RRPHI         ,Bits [39:32] of the read pointer"
line.long 0x04 "RWPHI,RAM Write Pointer High Register"
hexmask.long.byte 0x04 0.--7. 1. " RWPHI         ,Bits [39:32] of the write pointer"
group.long 0x110++0x3
line.long 0x00 "AXICTL,AXI Control Register"
bitfld.long 0x00 8.--11. " WRBURSTLEN    ,Maximum number of data transfers per burst" "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16"
bitfld.long 0x00 7. "     SGM ,Scatter Gather Mode Enable" "Disabled,Enabled"
bitfld.long 0x00 5. "          CC3 ,Cache allocate on writes enable" "Disabled,Enabled"
bitfld.long 0x00 4. "     CC2 ,Cache allocate on reads enable" "Disabled,Enabled"
textline "                   "
bitfld.long 0x00 3. " CC1 ,Cacheable" "Non-cacheable,Cacheable"
bitfld.long 0x00 2. "    CC0 ,Bufferable" "Non-bufferable,Bufferable"
bitfld.long 0x00 1. "    PC1 ,Secure/Non-secure Access" "Secure,Non-secure"
bitfld.long 0x00 0. "   PC0 ,Normal/Privileged Access" "Normal,Privileged"
group.long 0x118++0x7
line.long 0x00 "DBALO,Data Buffer Address Low Register"
line.long 0x04 "DBAHI,Data Buffer Address High Register"
hexmask.long.byte 0x04 0.--7. 1. " BUFADDRHI     ,Bits [39:32] of the trace buffer address"
rgroup.long 0x300++0x3
line.long 0x00 "FFSR,Formatter and Flush Status Register"
bitfld.long 0x00 1. " FTSTOPPED     ,Formatter Stopped" "No,Yes"
bitfld.long 0x00 0. "    FLINPROG          ,Flush in Progress" "No,Yes"
group.long 0x304++0x7
line.long 0x00 "FFCR,Formatter and Flush Control Register"
bitfld.long 0x00 14. " DRAINBUFFER   ,Drain trace data through ATB master interface" "No,Yes"
bitfld.long 0x00 13. "    STOPONTRIGEVT     ,Stop trace capture on trigger event" "No,Yes"
bitfld.long 0x00 12. "   STOPONFL      ,Stop formatter on completion of a flush operation" "No,Yes"
bitfld.long 0x00 10. "   TRIGONFL      ,Trigger on flush completion" "No,Yes"
textline "                   "
bitfld.long 0x00 9. " TRIGONTRIGEVT ,Trigger on a trigger event" "No,Yes"
bitfld.long 0x00 8. "    TRIGONTRIGIN      ,Trigger on TRIGIN being asserted" "No,Yes"
bitfld.long 0x00 6. "   FLUSHMAN      ,Manual Flush" "No,Yes"
bitfld.long 0x00 5. "   FONTRIGEVT    ,Flush on trigger event" "No,Yes"
textline "                   "
bitfld.long 0x00 4. " FONFLIN       ,Flush on FLUSHIN feature" "No,Yes"
bitfld.long 0x00 1. "    ENTI              ,Insertion of triggers in the formatted trace stream enable" "No,Yes"
bitfld.long 0x00 0. "   ENFT          ,Formatting enable" "No,Yes"
line.long 0x04 "PSCR,Periodic Synchronization Counter Register"
bitfld.long 0x04 5. " EMBEDSYNC     ,Embed Frame Sync packets" "No,Yes"
bitfld.long 0x04 0.--4. "    PSCOUNT           ,Reload value of the Synchronization Counter" "Disabled,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,128 bytes,256 bytes,512 bytes,1 KB,2 KB,4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB,?..."
width 13.
tree "Coresight Management Registers"
group 0xFA0--0xFA8
line.long 0x000 "CTS, Claim Tag Set"
bitfld.long 0x000 7. " SETCTV7   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 6. "        SETCTV6 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 5. " SETCTV5   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 4. "        SETCTV4 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 3. " SETCTV3   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 2. "        SETCTV2 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 1. " SETCTV1   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 0. "        SETCTV0 ,Set Claim Tag Value" "No effect,Set"
line.long 0x004 "CTC, Claim Tag Clear"
bitfld.long 0x004 7. " CLRCTV7   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 6. "        CLRCTV6 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 5. " CLRCTV5   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 4. "        CLRCTV4 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 3. " CLRCTV3   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 2. "        CLRCTV2 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 1. " CLRCTV1   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 0. "        CLRCTV0 ,Clear Claim Tag Value" "No effect,Cleared"
wgroup.long 0xfb0++0x3
line.long 0x00 "LAR,Lock Access Register"
rgroup.long 0xfb4++0x7
line.long 0x00 "LSR,Lock Status Register"
bitfld.long 0x00 2. " LOCKTYPE         ,32-bit Lock Access Register Implemented" "32-bit,?..."
bitfld.long 0x00 1. "         LOCKGRANT ,Lock Status" "Unlocked,Locked"
bitfld.long 0x00 0. "         LOCKEXIST  ,Lock control mechanism present" "Not present,Present"
line.long 0x04 "AUTHSTATUS,Authentication Status Register"
bitfld.long 0x04 6.--7. " SNID   ,Security level for secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 4.--5. "  SID  ,Security level for secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
bitfld.long 0x04 2.--3. "  NSNID ,Security level for non-secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 0.--1. "  NSID ,Security level for non-secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
rgroup.long 0xfc8++0x3
line.long 0x00 "DEVID,Device Configuration Register"
bitfld.long 0x00 11.--13. " WBUF_DEPTH  ,Number of entries in the write buffer (in ETR)" "Reserved,Reserved,4 entries,8 entries,16 entries,32 entries,?..."
bitfld.long 0x00 8.--10. "  MEMWIDTH  ,Memory interface databus width" "Reserved,Reserved,32-bit,64-bit,128-bit,256-bit,?..."
bitfld.long 0x00 6.--7. "    CONFIGTYPE ,Configuration type" "ETB,ETR,ETF,?..."
bitfld.long 0x00 5. "    CLKSCHEME ,RAM clocking scheme" "Synchronous,?..."
textline "                    "
bitfld.long 0x00 0.--4. "   ATBINPORTCOUNT   ,Type or number of ATB multiplexing" "No multiplexing,?..."
width 13.
if ((d.l(e:comp.base("etb6",-1)+0xfc8)&0xc0)==(0x00||0x40))
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,RAM->APB,?..."
bitfld.long 0x00 0.--3. "                    MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Trace sink,?..."
elif ((d.l(e:comp.base("etb6",-1)+0xfc8)&0xc0)==0x80)
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,Reserved,ATB slave->RAM->ATB master,?..."
bitfld.long 0x00 0.--3. "  MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Reserved,Trace link,?..."
else
hgroup.long 0xfcc++0x3
hide.long 0x00 "DEVTYPE,Device Type Identifier Register"
endif
group 0xf00--0xf03 "Integration Test Registers"
line.long 0x000 "ITCTRL,Integration Mode Control"
bitfld.long 0x000 0. " ENABLE       ,Enable Integration mode" "no,yes"
wgroup.long 0xee0++0x3
line.long 0x00 "ITMISCOP0,Integration Test Miscellaneous Output Register 0"
bitfld.long 0x00 1. " FULL          ,FULL output value set" "0,1"
bitfld.long 0x00 0. "     ACQCOMP       ,ACQCOMP output value set" "0,1"
rgroup.long 0xee8++0x3
line.long 0x00 "ITTRFLIN,Integration Test Trigger In and Flush In Register"
bitfld.long 0x00 1. " FLUSHIN       ,FLUSHIN output value" "0,1"
bitfld.long 0x00 0. "     TRIGIN        ,TRIGIN output value" "0,1"
rgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAS[127] ,Returns the Value of the ATDATAS[127] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[119] ,Returns the Value of the ATDATAS[119] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[111] ,Returns the Value of the ATDATAS[111] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[103] ,Returns the Value of the ATDATAS[103] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[95]  ,Returns the Value of the ATDATAS[95] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[87]  ,Returns the Value of the ATDATAS[87] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[79]  ,Returns the Value of the ATDATAS[79] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[71]  ,Returns the Value of the ATDATAS[71] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[63]  ,Returns the Value of the ATDATAS[63] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[55]  ,Returns the Value of the ATDATAS[55] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[47]  ,Returns the Value of the ATDATAS[47] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[39]  ,Returns the Value of the ATDATAS[39] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAS[31]  ,Returns the Value of the ATDATAS[31] Input Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAS[23]  ,Returns the Value of the ATDATAS[23] Input pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAS[15]  ,Returns the Value of the ATDATAS[15] Input Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAS[7]   ,Returns the Value of the ATDATAS[7] Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAS[0]   ,Returns the Value of the ATDATAS[0] Input Pin" "Low,High"
wgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFREADYS     ,Drives the AFREADYS Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDS     ,Drives the ATVALIDS Output Pin" "Low,High"
rgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDS        ,Returns the Value of the ATIDS Input Pins"
rgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESS[1]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESS[0]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 1. "  AFVALIDS     ,Returns the Value of the AFVALIDS Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYS     ,Returns the Value of the ATREADYS Input Pin" "Low,High"
wgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAM[127] ,Drives the ATDATAM[127] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[119] ,Drives the ATDATAM[119] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[111] ,Drives the ATDATAM[111] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[103] ,Drives the ATDATAM[103] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[95]  ,Drives the ATDATAM[95] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[87]  ,Drives the ATDATAM[87] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[79]  ,Drives the ATDATAM[79] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[71]  ,Drives the ATDATAM[71] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[63]  ,Drives the ATDATAM[63] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[55]  ,Drives the ATDATAM[55] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[47]  ,Drives the ATDATAM[47] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[39]  ,Drives the ATDATAM[39] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAM[31]  ,Drives the ATDATAM[31] Output Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAM[23]  ,Drives the ATDATAM[23] Output pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAM[15]  ,Drives the ATDATAM[15] Output Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAM[7]   ,Drives the ATDATAM[7] Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAM[0]   ,Drives the ATDATAM[0] Output Pin" "Low,High"
rgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDM     ,Returns the Value of the AFVALIDM Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYM     ,Returns the Value of the ATREADYM Input Pin" "Low,High"
wgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDM        ,Drives the ATIDM Output Pins"
wgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESM[1]  ,Drives the ATBYTESM[1] Output Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESM[0]  ,Drives the ATBYTESM[0] Output Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYM     ,Drives the AFREADYM Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDM     ,Drives the ATVALIDM Output Pin" "Low,High"
width 13.
rgroup.long 0xfe0++0x13 "Peripheral Identification Registers"
line.long 0x00 "PERIPHID0,Peripheral ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PART_NUMBER[7:0] ,Bits [7:0] of the component part number"
line.long 0x04 "PERIPHID1,Peripheral ID1 Register"
bitfld.long 0x04 4.--7. " JEP106[3:0]      ,Bits [3:0] of the JEDEC identity code" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
bitfld.long 0x04 0.--3. "       PART_NUMBER[11:8] ,Bits [11:8] of the component part number" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "PERIPHID2,Peripheral ID2 Register"
bitfld.long 0x08 4.--7. " REVISION         ,Revision" "Reserved,r0p1,?..."
bitfld.long 0x08 3. "   JEDEC             ,JEDEC assigned value used" "Not used,Used"
bitfld.long 0x08 0.--2. "  JEP106[6:4] ,Bits [6:4] of the JEDEC identity code" "000,001,010,011,100,101,110,111"
line.long 0x0c "PERIPHID3,Peripheral ID3 Register"
hexmask.long.byte 0x0c 4.--7. 1. " REVAND           ,Minor errata fixes"
hexmask.long.byte 0x0c 0.--3. 1. "         CUSTOMER_MODIFIED ,Customer Modified"
rgroup.long 0xfd0++0x3
line.long 0x00 "PERIPHID4,Peripheral ID4 Register"
bitfld.long 0x00 4.--7. " FOURKB_COUNT     ,Total contiguous size of the memory window" "4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB"
bitfld.long 0x00 0.--3. "     JEP106_CONT       ,JEDEC continuation code" "Reserved,Reserved,Reserved,Reserved,5th bank,?..."
rgroup.long 0xff0++0xf "Component Identification Registers"
line.long 0x00 "COMPID0,Component ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PREAMBLE[7:0]    ,Bits [7:0] of the component identification"
line.long 0x04 "COMPID1,Component ID1 Register"
bitfld.long 0x04 4.--7. " CLASS            ,Class of the component" "Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,CoreSight,?..."
bitfld.long 0x04 0.--3. "  PREAMBLE[11:8]    ,Bits [11:8] of the component identification" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "COMPID2,Component ID2 Register"
hexmask.long.byte 0x08 0.--7. 1. " PREAMBLE[23:16]  ,Bits [23:16] of the component identification"
line.long 0x0c "COMPID3,Component ID3 Register"
hexmask.long.byte 0x0c 0.--7. 1. " PREAMBLE[31:24]  ,Bits [31:24] of the component identification"
tree.end
width 11.
tree.end
endif
sif COMPonent.AVAILABLE("etb7")&&(address.offset(comp.base("etb7",-1))!=0)
tree "TMC ETB7"
width 10.
group.long 0x004++0x3 "TMC Registers"
line.long 0x00 "RSZ,RAM Size Register"
hexmask.long 0x00 0.--30. 1. " RSZ         ,Size of the RAM in 32-bit words"
rgroup.long 0x00c++0x3
line.long 0x00 "STS,Status Register"
bitfld.long 0x00 5. " MEMERR      ,AXI master interface error" "No error,Error"
bitfld.long 0x00 4. "         EMPTY ,No valid trace data in the trace memory" "Not empty,Empty"
bitfld.long 0x00 3. "  FTEMPTY ,All internal pipelines and buffers empty" "Not empty,Empty"
bitfld.long 0x00 2. "  TMCREADY ,Trace capture ready" "Not ready,Ready"
textline "                   "
bitfld.long 0x00 1. " TRIGGERED   ,Trigger event detected" "Not detected,Detected"
bitfld.long 0x00 0. "     FULL  ,Ram full" "Not full,Full"
wgroup.long 0x010++0x3
hide.long 0x00 "RRD,RAM Read Data Register"
in
group.long 0x014++0xb
line.long 0x00 "RRP,RAM Read Pointer Register"
line.long 0x04 "RWP,RAM Write Pointer Register"
line.long 0x08 "TRG,Trigger Counter Register"
group.long 0x020++0x3
line.long 0x00 "CTL,Control Register"
bitfld.long 0x00 0. " TRACECAPTEN ,Trace Capture Enable" "Disabled,Enabled"
wgroup.long 0x024++0x3
line.long 0x00 "RWD,RAM Write Data Register"
group.long 0x028++0x3
line.long 0x00 "MODE,Mode Register"
bitfld.long 0x00 0.--1. " MODE        ,Mode select" "Circular Buffer,Software FIFO,Hardware FIFO,Software FIFO 2"
rgroup.long 0x02c++0x7
line.long 0x00 "LBUFLEVEL,Latched Buffer Fill Level Register"
line.long 0x04 "CBUFLEVEL,Current Buffer Fill Level Register"
group.long 0x034++0x3
line.long 0x00 "BUFWM,Buffer Level Water Mark Register"
group.long 0x038++0x7
line.long 0x00 "RRPHI,RAM Read Pointer High Register"
hexmask.long.byte 0x00 0.--7. 1. " RRPHI         ,Bits [39:32] of the read pointer"
line.long 0x04 "RWPHI,RAM Write Pointer High Register"
hexmask.long.byte 0x04 0.--7. 1. " RWPHI         ,Bits [39:32] of the write pointer"
group.long 0x110++0x3
line.long 0x00 "AXICTL,AXI Control Register"
bitfld.long 0x00 8.--11. " WRBURSTLEN    ,Maximum number of data transfers per burst" "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16"
bitfld.long 0x00 7. "     SGM ,Scatter Gather Mode Enable" "Disabled,Enabled"
bitfld.long 0x00 5. "          CC3 ,Cache allocate on writes enable" "Disabled,Enabled"
bitfld.long 0x00 4. "     CC2 ,Cache allocate on reads enable" "Disabled,Enabled"
textline "                   "
bitfld.long 0x00 3. " CC1 ,Cacheable" "Non-cacheable,Cacheable"
bitfld.long 0x00 2. "    CC0 ,Bufferable" "Non-bufferable,Bufferable"
bitfld.long 0x00 1. "    PC1 ,Secure/Non-secure Access" "Secure,Non-secure"
bitfld.long 0x00 0. "   PC0 ,Normal/Privileged Access" "Normal,Privileged"
group.long 0x118++0x7
line.long 0x00 "DBALO,Data Buffer Address Low Register"
line.long 0x04 "DBAHI,Data Buffer Address High Register"
hexmask.long.byte 0x04 0.--7. 1. " BUFADDRHI     ,Bits [39:32] of the trace buffer address"
rgroup.long 0x300++0x3
line.long 0x00 "FFSR,Formatter and Flush Status Register"
bitfld.long 0x00 1. " FTSTOPPED     ,Formatter Stopped" "No,Yes"
bitfld.long 0x00 0. "    FLINPROG          ,Flush in Progress" "No,Yes"
group.long 0x304++0x7
line.long 0x00 "FFCR,Formatter and Flush Control Register"
bitfld.long 0x00 14. " DRAINBUFFER   ,Drain trace data through ATB master interface" "No,Yes"
bitfld.long 0x00 13. "    STOPONTRIGEVT     ,Stop trace capture on trigger event" "No,Yes"
bitfld.long 0x00 12. "   STOPONFL      ,Stop formatter on completion of a flush operation" "No,Yes"
bitfld.long 0x00 10. "   TRIGONFL      ,Trigger on flush completion" "No,Yes"
textline "                   "
bitfld.long 0x00 9. " TRIGONTRIGEVT ,Trigger on a trigger event" "No,Yes"
bitfld.long 0x00 8. "    TRIGONTRIGIN      ,Trigger on TRIGIN being asserted" "No,Yes"
bitfld.long 0x00 6. "   FLUSHMAN      ,Manual Flush" "No,Yes"
bitfld.long 0x00 5. "   FONTRIGEVT    ,Flush on trigger event" "No,Yes"
textline "                   "
bitfld.long 0x00 4. " FONFLIN       ,Flush on FLUSHIN feature" "No,Yes"
bitfld.long 0x00 1. "    ENTI              ,Insertion of triggers in the formatted trace stream enable" "No,Yes"
bitfld.long 0x00 0. "   ENFT          ,Formatting enable" "No,Yes"
line.long 0x04 "PSCR,Periodic Synchronization Counter Register"
bitfld.long 0x04 5. " EMBEDSYNC     ,Embed Frame Sync packets" "No,Yes"
bitfld.long 0x04 0.--4. "    PSCOUNT           ,Reload value of the Synchronization Counter" "Disabled,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,128 bytes,256 bytes,512 bytes,1 KB,2 KB,4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB,?..."
width 13.
tree "Coresight Management Registers"
group 0xFA0--0xFA8
line.long 0x000 "CTS, Claim Tag Set"
bitfld.long 0x000 7. " SETCTV7   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 6. "        SETCTV6 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 5. " SETCTV5   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 4. "        SETCTV4 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 3. " SETCTV3   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 2. "        SETCTV2 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 1. " SETCTV1   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 0. "        SETCTV0 ,Set Claim Tag Value" "No effect,Set"
line.long 0x004 "CTC, Claim Tag Clear"
bitfld.long 0x004 7. " CLRCTV7   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 6. "        CLRCTV6 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 5. " CLRCTV5   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 4. "        CLRCTV4 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 3. " CLRCTV3   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 2. "        CLRCTV2 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 1. " CLRCTV1   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 0. "        CLRCTV0 ,Clear Claim Tag Value" "No effect,Cleared"
wgroup.long 0xfb0++0x3
line.long 0x00 "LAR,Lock Access Register"
rgroup.long 0xfb4++0x7
line.long 0x00 "LSR,Lock Status Register"
bitfld.long 0x00 2. " LOCKTYPE         ,32-bit Lock Access Register Implemented" "32-bit,?..."
bitfld.long 0x00 1. "         LOCKGRANT ,Lock Status" "Unlocked,Locked"
bitfld.long 0x00 0. "         LOCKEXIST  ,Lock control mechanism present" "Not present,Present"
line.long 0x04 "AUTHSTATUS,Authentication Status Register"
bitfld.long 0x04 6.--7. " SNID   ,Security level for secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 4.--5. "  SID  ,Security level for secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
bitfld.long 0x04 2.--3. "  NSNID ,Security level for non-secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 0.--1. "  NSID ,Security level for non-secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
rgroup.long 0xfc8++0x3
line.long 0x00 "DEVID,Device Configuration Register"
bitfld.long 0x00 11.--13. " WBUF_DEPTH  ,Number of entries in the write buffer (in ETR)" "Reserved,Reserved,4 entries,8 entries,16 entries,32 entries,?..."
bitfld.long 0x00 8.--10. "  MEMWIDTH  ,Memory interface databus width" "Reserved,Reserved,32-bit,64-bit,128-bit,256-bit,?..."
bitfld.long 0x00 6.--7. "    CONFIGTYPE ,Configuration type" "ETB,ETR,ETF,?..."
bitfld.long 0x00 5. "    CLKSCHEME ,RAM clocking scheme" "Synchronous,?..."
textline "                    "
bitfld.long 0x00 0.--4. "   ATBINPORTCOUNT   ,Type or number of ATB multiplexing" "No multiplexing,?..."
width 13.
if ((d.l(e:comp.base("etb7",-1)+0xfc8)&0xc0)==(0x00||0x40))
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,RAM->APB,?..."
bitfld.long 0x00 0.--3. "                    MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Trace sink,?..."
elif ((d.l(e:comp.base("etb7",-1)+0xfc8)&0xc0)==0x80)
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,Reserved,ATB slave->RAM->ATB master,?..."
bitfld.long 0x00 0.--3. "  MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Reserved,Trace link,?..."
else
hgroup.long 0xfcc++0x3
hide.long 0x00 "DEVTYPE,Device Type Identifier Register"
endif
group 0xf00--0xf03 "Integration Test Registers"
line.long 0x000 "ITCTRL,Integration Mode Control"
bitfld.long 0x000 0. " ENABLE       ,Enable Integration mode" "no,yes"
wgroup.long 0xee0++0x3
line.long 0x00 "ITMISCOP0,Integration Test Miscellaneous Output Register 0"
bitfld.long 0x00 1. " FULL          ,FULL output value set" "0,1"
bitfld.long 0x00 0. "     ACQCOMP       ,ACQCOMP output value set" "0,1"
rgroup.long 0xee8++0x3
line.long 0x00 "ITTRFLIN,Integration Test Trigger In and Flush In Register"
bitfld.long 0x00 1. " FLUSHIN       ,FLUSHIN output value" "0,1"
bitfld.long 0x00 0. "     TRIGIN        ,TRIGIN output value" "0,1"
rgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAS[127] ,Returns the Value of the ATDATAS[127] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[119] ,Returns the Value of the ATDATAS[119] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[111] ,Returns the Value of the ATDATAS[111] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[103] ,Returns the Value of the ATDATAS[103] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[95]  ,Returns the Value of the ATDATAS[95] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[87]  ,Returns the Value of the ATDATAS[87] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[79]  ,Returns the Value of the ATDATAS[79] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[71]  ,Returns the Value of the ATDATAS[71] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[63]  ,Returns the Value of the ATDATAS[63] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[55]  ,Returns the Value of the ATDATAS[55] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[47]  ,Returns the Value of the ATDATAS[47] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[39]  ,Returns the Value of the ATDATAS[39] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAS[31]  ,Returns the Value of the ATDATAS[31] Input Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAS[23]  ,Returns the Value of the ATDATAS[23] Input pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAS[15]  ,Returns the Value of the ATDATAS[15] Input Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAS[7]   ,Returns the Value of the ATDATAS[7] Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAS[0]   ,Returns the Value of the ATDATAS[0] Input Pin" "Low,High"
wgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFREADYS     ,Drives the AFREADYS Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDS     ,Drives the ATVALIDS Output Pin" "Low,High"
rgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDS        ,Returns the Value of the ATIDS Input Pins"
rgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESS[1]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESS[0]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 1. "  AFVALIDS     ,Returns the Value of the AFVALIDS Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYS     ,Returns the Value of the ATREADYS Input Pin" "Low,High"
wgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAM[127] ,Drives the ATDATAM[127] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[119] ,Drives the ATDATAM[119] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[111] ,Drives the ATDATAM[111] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[103] ,Drives the ATDATAM[103] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[95]  ,Drives the ATDATAM[95] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[87]  ,Drives the ATDATAM[87] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[79]  ,Drives the ATDATAM[79] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[71]  ,Drives the ATDATAM[71] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[63]  ,Drives the ATDATAM[63] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[55]  ,Drives the ATDATAM[55] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[47]  ,Drives the ATDATAM[47] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[39]  ,Drives the ATDATAM[39] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAM[31]  ,Drives the ATDATAM[31] Output Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAM[23]  ,Drives the ATDATAM[23] Output pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAM[15]  ,Drives the ATDATAM[15] Output Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAM[7]   ,Drives the ATDATAM[7] Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAM[0]   ,Drives the ATDATAM[0] Output Pin" "Low,High"
rgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDM     ,Returns the Value of the AFVALIDM Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYM     ,Returns the Value of the ATREADYM Input Pin" "Low,High"
wgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDM        ,Drives the ATIDM Output Pins"
wgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESM[1]  ,Drives the ATBYTESM[1] Output Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESM[0]  ,Drives the ATBYTESM[0] Output Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYM     ,Drives the AFREADYM Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDM     ,Drives the ATVALIDM Output Pin" "Low,High"
width 13.
rgroup.long 0xfe0++0x13 "Peripheral Identification Registers"
line.long 0x00 "PERIPHID0,Peripheral ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PART_NUMBER[7:0] ,Bits [7:0] of the component part number"
line.long 0x04 "PERIPHID1,Peripheral ID1 Register"
bitfld.long 0x04 4.--7. " JEP106[3:0]      ,Bits [3:0] of the JEDEC identity code" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
bitfld.long 0x04 0.--3. "       PART_NUMBER[11:8] ,Bits [11:8] of the component part number" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "PERIPHID2,Peripheral ID2 Register"
bitfld.long 0x08 4.--7. " REVISION         ,Revision" "Reserved,r0p1,?..."
bitfld.long 0x08 3. "   JEDEC             ,JEDEC assigned value used" "Not used,Used"
bitfld.long 0x08 0.--2. "  JEP106[6:4] ,Bits [6:4] of the JEDEC identity code" "000,001,010,011,100,101,110,111"
line.long 0x0c "PERIPHID3,Peripheral ID3 Register"
hexmask.long.byte 0x0c 4.--7. 1. " REVAND           ,Minor errata fixes"
hexmask.long.byte 0x0c 0.--3. 1. "         CUSTOMER_MODIFIED ,Customer Modified"
rgroup.long 0xfd0++0x3
line.long 0x00 "PERIPHID4,Peripheral ID4 Register"
bitfld.long 0x00 4.--7. " FOURKB_COUNT     ,Total contiguous size of the memory window" "4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB"
bitfld.long 0x00 0.--3. "     JEP106_CONT       ,JEDEC continuation code" "Reserved,Reserved,Reserved,Reserved,5th bank,?..."
rgroup.long 0xff0++0xf "Component Identification Registers"
line.long 0x00 "COMPID0,Component ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PREAMBLE[7:0]    ,Bits [7:0] of the component identification"
line.long 0x04 "COMPID1,Component ID1 Register"
bitfld.long 0x04 4.--7. " CLASS            ,Class of the component" "Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,CoreSight,?..."
bitfld.long 0x04 0.--3. "  PREAMBLE[11:8]    ,Bits [11:8] of the component identification" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "COMPID2,Component ID2 Register"
hexmask.long.byte 0x08 0.--7. 1. " PREAMBLE[23:16]  ,Bits [23:16] of the component identification"
line.long 0x0c "COMPID3,Component ID3 Register"
hexmask.long.byte 0x0c 0.--7. 1. " PREAMBLE[31:24]  ,Bits [31:24] of the component identification"
tree.end
width 11.
tree.end
endif
sif COMPonent.AVAILABLE("etb8")&&(address.offset(comp.base("etb8",-1))!=0)
tree "TMC ETB8"
width 10.
group.long 0x004++0x3 "TMC Registers"
line.long 0x00 "RSZ,RAM Size Register"
hexmask.long 0x00 0.--30. 1. " RSZ         ,Size of the RAM in 32-bit words"
rgroup.long 0x00c++0x3
line.long 0x00 "STS,Status Register"
bitfld.long 0x00 5. " MEMERR      ,AXI master interface error" "No error,Error"
bitfld.long 0x00 4. "         EMPTY ,No valid trace data in the trace memory" "Not empty,Empty"
bitfld.long 0x00 3. "  FTEMPTY ,All internal pipelines and buffers empty" "Not empty,Empty"
bitfld.long 0x00 2. "  TMCREADY ,Trace capture ready" "Not ready,Ready"
textline "                   "
bitfld.long 0x00 1. " TRIGGERED   ,Trigger event detected" "Not detected,Detected"
bitfld.long 0x00 0. "     FULL  ,Ram full" "Not full,Full"
wgroup.long 0x010++0x3
hide.long 0x00 "RRD,RAM Read Data Register"
in
group.long 0x014++0xb
line.long 0x00 "RRP,RAM Read Pointer Register"
line.long 0x04 "RWP,RAM Write Pointer Register"
line.long 0x08 "TRG,Trigger Counter Register"
group.long 0x020++0x3
line.long 0x00 "CTL,Control Register"
bitfld.long 0x00 0. " TRACECAPTEN ,Trace Capture Enable" "Disabled,Enabled"
wgroup.long 0x024++0x3
line.long 0x00 "RWD,RAM Write Data Register"
group.long 0x028++0x3
line.long 0x00 "MODE,Mode Register"
bitfld.long 0x00 0.--1. " MODE        ,Mode select" "Circular Buffer,Software FIFO,Hardware FIFO,Software FIFO 2"
rgroup.long 0x02c++0x7
line.long 0x00 "LBUFLEVEL,Latched Buffer Fill Level Register"
line.long 0x04 "CBUFLEVEL,Current Buffer Fill Level Register"
group.long 0x034++0x3
line.long 0x00 "BUFWM,Buffer Level Water Mark Register"
group.long 0x038++0x7
line.long 0x00 "RRPHI,RAM Read Pointer High Register"
hexmask.long.byte 0x00 0.--7. 1. " RRPHI         ,Bits [39:32] of the read pointer"
line.long 0x04 "RWPHI,RAM Write Pointer High Register"
hexmask.long.byte 0x04 0.--7. 1. " RWPHI         ,Bits [39:32] of the write pointer"
group.long 0x110++0x3
line.long 0x00 "AXICTL,AXI Control Register"
bitfld.long 0x00 8.--11. " WRBURSTLEN    ,Maximum number of data transfers per burst" "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16"
bitfld.long 0x00 7. "     SGM ,Scatter Gather Mode Enable" "Disabled,Enabled"
bitfld.long 0x00 5. "          CC3 ,Cache allocate on writes enable" "Disabled,Enabled"
bitfld.long 0x00 4. "     CC2 ,Cache allocate on reads enable" "Disabled,Enabled"
textline "                   "
bitfld.long 0x00 3. " CC1 ,Cacheable" "Non-cacheable,Cacheable"
bitfld.long 0x00 2. "    CC0 ,Bufferable" "Non-bufferable,Bufferable"
bitfld.long 0x00 1. "    PC1 ,Secure/Non-secure Access" "Secure,Non-secure"
bitfld.long 0x00 0. "   PC0 ,Normal/Privileged Access" "Normal,Privileged"
group.long 0x118++0x7
line.long 0x00 "DBALO,Data Buffer Address Low Register"
line.long 0x04 "DBAHI,Data Buffer Address High Register"
hexmask.long.byte 0x04 0.--7. 1. " BUFADDRHI     ,Bits [39:32] of the trace buffer address"
rgroup.long 0x300++0x3
line.long 0x00 "FFSR,Formatter and Flush Status Register"
bitfld.long 0x00 1. " FTSTOPPED     ,Formatter Stopped" "No,Yes"
bitfld.long 0x00 0. "    FLINPROG          ,Flush in Progress" "No,Yes"
group.long 0x304++0x7
line.long 0x00 "FFCR,Formatter and Flush Control Register"
bitfld.long 0x00 14. " DRAINBUFFER   ,Drain trace data through ATB master interface" "No,Yes"
bitfld.long 0x00 13. "    STOPONTRIGEVT     ,Stop trace capture on trigger event" "No,Yes"
bitfld.long 0x00 12. "   STOPONFL      ,Stop formatter on completion of a flush operation" "No,Yes"
bitfld.long 0x00 10. "   TRIGONFL      ,Trigger on flush completion" "No,Yes"
textline "                   "
bitfld.long 0x00 9. " TRIGONTRIGEVT ,Trigger on a trigger event" "No,Yes"
bitfld.long 0x00 8. "    TRIGONTRIGIN      ,Trigger on TRIGIN being asserted" "No,Yes"
bitfld.long 0x00 6. "   FLUSHMAN      ,Manual Flush" "No,Yes"
bitfld.long 0x00 5. "   FONTRIGEVT    ,Flush on trigger event" "No,Yes"
textline "                   "
bitfld.long 0x00 4. " FONFLIN       ,Flush on FLUSHIN feature" "No,Yes"
bitfld.long 0x00 1. "    ENTI              ,Insertion of triggers in the formatted trace stream enable" "No,Yes"
bitfld.long 0x00 0. "   ENFT          ,Formatting enable" "No,Yes"
line.long 0x04 "PSCR,Periodic Synchronization Counter Register"
bitfld.long 0x04 5. " EMBEDSYNC     ,Embed Frame Sync packets" "No,Yes"
bitfld.long 0x04 0.--4. "    PSCOUNT           ,Reload value of the Synchronization Counter" "Disabled,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,128 bytes,256 bytes,512 bytes,1 KB,2 KB,4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB,?..."
width 13.
tree "Coresight Management Registers"
group 0xFA0--0xFA8
line.long 0x000 "CTS, Claim Tag Set"
bitfld.long 0x000 7. " SETCTV7   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 6. "        SETCTV6 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 5. " SETCTV5   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 4. "        SETCTV4 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 3. " SETCTV3   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 2. "        SETCTV2 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 1. " SETCTV1   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 0. "        SETCTV0 ,Set Claim Tag Value" "No effect,Set"
line.long 0x004 "CTC, Claim Tag Clear"
bitfld.long 0x004 7. " CLRCTV7   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 6. "        CLRCTV6 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 5. " CLRCTV5   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 4. "        CLRCTV4 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 3. " CLRCTV3   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 2. "        CLRCTV2 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 1. " CLRCTV1   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 0. "        CLRCTV0 ,Clear Claim Tag Value" "No effect,Cleared"
wgroup.long 0xfb0++0x3
line.long 0x00 "LAR,Lock Access Register"
rgroup.long 0xfb4++0x7
line.long 0x00 "LSR,Lock Status Register"
bitfld.long 0x00 2. " LOCKTYPE         ,32-bit Lock Access Register Implemented" "32-bit,?..."
bitfld.long 0x00 1. "         LOCKGRANT ,Lock Status" "Unlocked,Locked"
bitfld.long 0x00 0. "         LOCKEXIST  ,Lock control mechanism present" "Not present,Present"
line.long 0x04 "AUTHSTATUS,Authentication Status Register"
bitfld.long 0x04 6.--7. " SNID   ,Security level for secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 4.--5. "  SID  ,Security level for secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
bitfld.long 0x04 2.--3. "  NSNID ,Security level for non-secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 0.--1. "  NSID ,Security level for non-secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
rgroup.long 0xfc8++0x3
line.long 0x00 "DEVID,Device Configuration Register"
bitfld.long 0x00 11.--13. " WBUF_DEPTH  ,Number of entries in the write buffer (in ETR)" "Reserved,Reserved,4 entries,8 entries,16 entries,32 entries,?..."
bitfld.long 0x00 8.--10. "  MEMWIDTH  ,Memory interface databus width" "Reserved,Reserved,32-bit,64-bit,128-bit,256-bit,?..."
bitfld.long 0x00 6.--7. "    CONFIGTYPE ,Configuration type" "ETB,ETR,ETF,?..."
bitfld.long 0x00 5. "    CLKSCHEME ,RAM clocking scheme" "Synchronous,?..."
textline "                    "
bitfld.long 0x00 0.--4. "   ATBINPORTCOUNT   ,Type or number of ATB multiplexing" "No multiplexing,?..."
width 13.
if ((d.l(e:comp.base("etb8",-1)+0xfc8)&0xc0)==(0x00||0x40))
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,RAM->APB,?..."
bitfld.long 0x00 0.--3. "                    MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Trace sink,?..."
elif ((d.l(e:comp.base("etb8",-1)+0xfc8)&0xc0)==0x80)
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,Reserved,ATB slave->RAM->ATB master,?..."
bitfld.long 0x00 0.--3. "  MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Reserved,Trace link,?..."
else
hgroup.long 0xfcc++0x3
hide.long 0x00 "DEVTYPE,Device Type Identifier Register"
endif
group 0xf00--0xf03 "Integration Test Registers"
line.long 0x000 "ITCTRL,Integration Mode Control"
bitfld.long 0x000 0. " ENABLE       ,Enable Integration mode" "no,yes"
wgroup.long 0xee0++0x3
line.long 0x00 "ITMISCOP0,Integration Test Miscellaneous Output Register 0"
bitfld.long 0x00 1. " FULL          ,FULL output value set" "0,1"
bitfld.long 0x00 0. "     ACQCOMP       ,ACQCOMP output value set" "0,1"
rgroup.long 0xee8++0x3
line.long 0x00 "ITTRFLIN,Integration Test Trigger In and Flush In Register"
bitfld.long 0x00 1. " FLUSHIN       ,FLUSHIN output value" "0,1"
bitfld.long 0x00 0. "     TRIGIN        ,TRIGIN output value" "0,1"
rgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAS[127] ,Returns the Value of the ATDATAS[127] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[119] ,Returns the Value of the ATDATAS[119] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[111] ,Returns the Value of the ATDATAS[111] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[103] ,Returns the Value of the ATDATAS[103] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[95]  ,Returns the Value of the ATDATAS[95] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[87]  ,Returns the Value of the ATDATAS[87] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[79]  ,Returns the Value of the ATDATAS[79] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[71]  ,Returns the Value of the ATDATAS[71] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[63]  ,Returns the Value of the ATDATAS[63] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[55]  ,Returns the Value of the ATDATAS[55] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[47]  ,Returns the Value of the ATDATAS[47] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[39]  ,Returns the Value of the ATDATAS[39] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAS[31]  ,Returns the Value of the ATDATAS[31] Input Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAS[23]  ,Returns the Value of the ATDATAS[23] Input pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAS[15]  ,Returns the Value of the ATDATAS[15] Input Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAS[7]   ,Returns the Value of the ATDATAS[7] Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAS[0]   ,Returns the Value of the ATDATAS[0] Input Pin" "Low,High"
wgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFREADYS     ,Drives the AFREADYS Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDS     ,Drives the ATVALIDS Output Pin" "Low,High"
rgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDS        ,Returns the Value of the ATIDS Input Pins"
rgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESS[1]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESS[0]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 1. "  AFVALIDS     ,Returns the Value of the AFVALIDS Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYS     ,Returns the Value of the ATREADYS Input Pin" "Low,High"
wgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAM[127] ,Drives the ATDATAM[127] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[119] ,Drives the ATDATAM[119] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[111] ,Drives the ATDATAM[111] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[103] ,Drives the ATDATAM[103] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[95]  ,Drives the ATDATAM[95] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[87]  ,Drives the ATDATAM[87] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[79]  ,Drives the ATDATAM[79] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[71]  ,Drives the ATDATAM[71] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[63]  ,Drives the ATDATAM[63] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[55]  ,Drives the ATDATAM[55] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[47]  ,Drives the ATDATAM[47] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[39]  ,Drives the ATDATAM[39] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAM[31]  ,Drives the ATDATAM[31] Output Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAM[23]  ,Drives the ATDATAM[23] Output pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAM[15]  ,Drives the ATDATAM[15] Output Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAM[7]   ,Drives the ATDATAM[7] Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAM[0]   ,Drives the ATDATAM[0] Output Pin" "Low,High"
rgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDM     ,Returns the Value of the AFVALIDM Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYM     ,Returns the Value of the ATREADYM Input Pin" "Low,High"
wgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDM        ,Drives the ATIDM Output Pins"
wgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESM[1]  ,Drives the ATBYTESM[1] Output Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESM[0]  ,Drives the ATBYTESM[0] Output Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYM     ,Drives the AFREADYM Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDM     ,Drives the ATVALIDM Output Pin" "Low,High"
width 13.
rgroup.long 0xfe0++0x13 "Peripheral Identification Registers"
line.long 0x00 "PERIPHID0,Peripheral ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PART_NUMBER[7:0] ,Bits [7:0] of the component part number"
line.long 0x04 "PERIPHID1,Peripheral ID1 Register"
bitfld.long 0x04 4.--7. " JEP106[3:0]      ,Bits [3:0] of the JEDEC identity code" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
bitfld.long 0x04 0.--3. "       PART_NUMBER[11:8] ,Bits [11:8] of the component part number" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "PERIPHID2,Peripheral ID2 Register"
bitfld.long 0x08 4.--7. " REVISION         ,Revision" "Reserved,r0p1,?..."
bitfld.long 0x08 3. "   JEDEC             ,JEDEC assigned value used" "Not used,Used"
bitfld.long 0x08 0.--2. "  JEP106[6:4] ,Bits [6:4] of the JEDEC identity code" "000,001,010,011,100,101,110,111"
line.long 0x0c "PERIPHID3,Peripheral ID3 Register"
hexmask.long.byte 0x0c 4.--7. 1. " REVAND           ,Minor errata fixes"
hexmask.long.byte 0x0c 0.--3. 1. "         CUSTOMER_MODIFIED ,Customer Modified"
rgroup.long 0xfd0++0x3
line.long 0x00 "PERIPHID4,Peripheral ID4 Register"
bitfld.long 0x00 4.--7. " FOURKB_COUNT     ,Total contiguous size of the memory window" "4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB"
bitfld.long 0x00 0.--3. "     JEP106_CONT       ,JEDEC continuation code" "Reserved,Reserved,Reserved,Reserved,5th bank,?..."
rgroup.long 0xff0++0xf "Component Identification Registers"
line.long 0x00 "COMPID0,Component ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PREAMBLE[7:0]    ,Bits [7:0] of the component identification"
line.long 0x04 "COMPID1,Component ID1 Register"
bitfld.long 0x04 4.--7. " CLASS            ,Class of the component" "Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,CoreSight,?..."
bitfld.long 0x04 0.--3. "  PREAMBLE[11:8]    ,Bits [11:8] of the component identification" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "COMPID2,Component ID2 Register"
hexmask.long.byte 0x08 0.--7. 1. " PREAMBLE[23:16]  ,Bits [23:16] of the component identification"
line.long 0x0c "COMPID3,Component ID3 Register"
hexmask.long.byte 0x0c 0.--7. 1. " PREAMBLE[31:24]  ,Bits [31:24] of the component identification"
tree.end
width 11.
tree.end
endif
sif COMPonent.AVAILABLE("etb9")&&(address.offset(comp.base("etb9",-1))!=0)
tree "TMC ETB9"
width 10.
group.long 0x004++0x3 "TMC Registers"
line.long 0x00 "RSZ,RAM Size Register"
hexmask.long 0x00 0.--30. 1. " RSZ         ,Size of the RAM in 32-bit words"
rgroup.long 0x00c++0x3
line.long 0x00 "STS,Status Register"
bitfld.long 0x00 5. " MEMERR      ,AXI master interface error" "No error,Error"
bitfld.long 0x00 4. "         EMPTY ,No valid trace data in the trace memory" "Not empty,Empty"
bitfld.long 0x00 3. "  FTEMPTY ,All internal pipelines and buffers empty" "Not empty,Empty"
bitfld.long 0x00 2. "  TMCREADY ,Trace capture ready" "Not ready,Ready"
textline "                   "
bitfld.long 0x00 1. " TRIGGERED   ,Trigger event detected" "Not detected,Detected"
bitfld.long 0x00 0. "     FULL  ,Ram full" "Not full,Full"
wgroup.long 0x010++0x3
hide.long 0x00 "RRD,RAM Read Data Register"
in
group.long 0x014++0xb
line.long 0x00 "RRP,RAM Read Pointer Register"
line.long 0x04 "RWP,RAM Write Pointer Register"
line.long 0x08 "TRG,Trigger Counter Register"
group.long 0x020++0x3
line.long 0x00 "CTL,Control Register"
bitfld.long 0x00 0. " TRACECAPTEN ,Trace Capture Enable" "Disabled,Enabled"
wgroup.long 0x024++0x3
line.long 0x00 "RWD,RAM Write Data Register"
group.long 0x028++0x3
line.long 0x00 "MODE,Mode Register"
bitfld.long 0x00 0.--1. " MODE        ,Mode select" "Circular Buffer,Software FIFO,Hardware FIFO,Software FIFO 2"
rgroup.long 0x02c++0x7
line.long 0x00 "LBUFLEVEL,Latched Buffer Fill Level Register"
line.long 0x04 "CBUFLEVEL,Current Buffer Fill Level Register"
group.long 0x034++0x3
line.long 0x00 "BUFWM,Buffer Level Water Mark Register"
group.long 0x038++0x7
line.long 0x00 "RRPHI,RAM Read Pointer High Register"
hexmask.long.byte 0x00 0.--7. 1. " RRPHI         ,Bits [39:32] of the read pointer"
line.long 0x04 "RWPHI,RAM Write Pointer High Register"
hexmask.long.byte 0x04 0.--7. 1. " RWPHI         ,Bits [39:32] of the write pointer"
group.long 0x110++0x3
line.long 0x00 "AXICTL,AXI Control Register"
bitfld.long 0x00 8.--11. " WRBURSTLEN    ,Maximum number of data transfers per burst" "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16"
bitfld.long 0x00 7. "     SGM ,Scatter Gather Mode Enable" "Disabled,Enabled"
bitfld.long 0x00 5. "          CC3 ,Cache allocate on writes enable" "Disabled,Enabled"
bitfld.long 0x00 4. "     CC2 ,Cache allocate on reads enable" "Disabled,Enabled"
textline "                   "
bitfld.long 0x00 3. " CC1 ,Cacheable" "Non-cacheable,Cacheable"
bitfld.long 0x00 2. "    CC0 ,Bufferable" "Non-bufferable,Bufferable"
bitfld.long 0x00 1. "    PC1 ,Secure/Non-secure Access" "Secure,Non-secure"
bitfld.long 0x00 0. "   PC0 ,Normal/Privileged Access" "Normal,Privileged"
group.long 0x118++0x7
line.long 0x00 "DBALO,Data Buffer Address Low Register"
line.long 0x04 "DBAHI,Data Buffer Address High Register"
hexmask.long.byte 0x04 0.--7. 1. " BUFADDRHI     ,Bits [39:32] of the trace buffer address"
rgroup.long 0x300++0x3
line.long 0x00 "FFSR,Formatter and Flush Status Register"
bitfld.long 0x00 1. " FTSTOPPED     ,Formatter Stopped" "No,Yes"
bitfld.long 0x00 0. "    FLINPROG          ,Flush in Progress" "No,Yes"
group.long 0x304++0x7
line.long 0x00 "FFCR,Formatter and Flush Control Register"
bitfld.long 0x00 14. " DRAINBUFFER   ,Drain trace data through ATB master interface" "No,Yes"
bitfld.long 0x00 13. "    STOPONTRIGEVT     ,Stop trace capture on trigger event" "No,Yes"
bitfld.long 0x00 12. "   STOPONFL      ,Stop formatter on completion of a flush operation" "No,Yes"
bitfld.long 0x00 10. "   TRIGONFL      ,Trigger on flush completion" "No,Yes"
textline "                   "
bitfld.long 0x00 9. " TRIGONTRIGEVT ,Trigger on a trigger event" "No,Yes"
bitfld.long 0x00 8. "    TRIGONTRIGIN      ,Trigger on TRIGIN being asserted" "No,Yes"
bitfld.long 0x00 6. "   FLUSHMAN      ,Manual Flush" "No,Yes"
bitfld.long 0x00 5. "   FONTRIGEVT    ,Flush on trigger event" "No,Yes"
textline "                   "
bitfld.long 0x00 4. " FONFLIN       ,Flush on FLUSHIN feature" "No,Yes"
bitfld.long 0x00 1. "    ENTI              ,Insertion of triggers in the formatted trace stream enable" "No,Yes"
bitfld.long 0x00 0. "   ENFT          ,Formatting enable" "No,Yes"
line.long 0x04 "PSCR,Periodic Synchronization Counter Register"
bitfld.long 0x04 5. " EMBEDSYNC     ,Embed Frame Sync packets" "No,Yes"
bitfld.long 0x04 0.--4. "    PSCOUNT           ,Reload value of the Synchronization Counter" "Disabled,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,128 bytes,256 bytes,512 bytes,1 KB,2 KB,4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB,?..."
width 13.
tree "Coresight Management Registers"
group 0xFA0--0xFA8
line.long 0x000 "CTS, Claim Tag Set"
bitfld.long 0x000 7. " SETCTV7   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 6. "        SETCTV6 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 5. " SETCTV5   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 4. "        SETCTV4 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 3. " SETCTV3   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 2. "        SETCTV2 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 1. " SETCTV1   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 0. "        SETCTV0 ,Set Claim Tag Value" "No effect,Set"
line.long 0x004 "CTC, Claim Tag Clear"
bitfld.long 0x004 7. " CLRCTV7   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 6. "        CLRCTV6 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 5. " CLRCTV5   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 4. "        CLRCTV4 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 3. " CLRCTV3   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 2. "        CLRCTV2 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 1. " CLRCTV1   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 0. "        CLRCTV0 ,Clear Claim Tag Value" "No effect,Cleared"
wgroup.long 0xfb0++0x3
line.long 0x00 "LAR,Lock Access Register"
rgroup.long 0xfb4++0x7
line.long 0x00 "LSR,Lock Status Register"
bitfld.long 0x00 2. " LOCKTYPE         ,32-bit Lock Access Register Implemented" "32-bit,?..."
bitfld.long 0x00 1. "         LOCKGRANT ,Lock Status" "Unlocked,Locked"
bitfld.long 0x00 0. "         LOCKEXIST  ,Lock control mechanism present" "Not present,Present"
line.long 0x04 "AUTHSTATUS,Authentication Status Register"
bitfld.long 0x04 6.--7. " SNID   ,Security level for secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 4.--5. "  SID  ,Security level for secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
bitfld.long 0x04 2.--3. "  NSNID ,Security level for non-secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 0.--1. "  NSID ,Security level for non-secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
rgroup.long 0xfc8++0x3
line.long 0x00 "DEVID,Device Configuration Register"
bitfld.long 0x00 11.--13. " WBUF_DEPTH  ,Number of entries in the write buffer (in ETR)" "Reserved,Reserved,4 entries,8 entries,16 entries,32 entries,?..."
bitfld.long 0x00 8.--10. "  MEMWIDTH  ,Memory interface databus width" "Reserved,Reserved,32-bit,64-bit,128-bit,256-bit,?..."
bitfld.long 0x00 6.--7. "    CONFIGTYPE ,Configuration type" "ETB,ETR,ETF,?..."
bitfld.long 0x00 5. "    CLKSCHEME ,RAM clocking scheme" "Synchronous,?..."
textline "                    "
bitfld.long 0x00 0.--4. "   ATBINPORTCOUNT   ,Type or number of ATB multiplexing" "No multiplexing,?..."
width 13.
if ((d.l(e:comp.base("etb9",-1)+0xfc8)&0xc0)==(0x00||0x40))
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,RAM->APB,?..."
bitfld.long 0x00 0.--3. "                    MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Trace sink,?..."
elif ((d.l(e:comp.base("etb9",-1)+0xfc8)&0xc0)==0x80)
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,Reserved,ATB slave->RAM->ATB master,?..."
bitfld.long 0x00 0.--3. "  MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Reserved,Trace link,?..."
else
hgroup.long 0xfcc++0x3
hide.long 0x00 "DEVTYPE,Device Type Identifier Register"
endif
group 0xf00--0xf03 "Integration Test Registers"
line.long 0x000 "ITCTRL,Integration Mode Control"
bitfld.long 0x000 0. " ENABLE       ,Enable Integration mode" "no,yes"
wgroup.long 0xee0++0x3
line.long 0x00 "ITMISCOP0,Integration Test Miscellaneous Output Register 0"
bitfld.long 0x00 1. " FULL          ,FULL output value set" "0,1"
bitfld.long 0x00 0. "     ACQCOMP       ,ACQCOMP output value set" "0,1"
rgroup.long 0xee8++0x3
line.long 0x00 "ITTRFLIN,Integration Test Trigger In and Flush In Register"
bitfld.long 0x00 1. " FLUSHIN       ,FLUSHIN output value" "0,1"
bitfld.long 0x00 0. "     TRIGIN        ,TRIGIN output value" "0,1"
rgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAS[127] ,Returns the Value of the ATDATAS[127] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[119] ,Returns the Value of the ATDATAS[119] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[111] ,Returns the Value of the ATDATAS[111] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[103] ,Returns the Value of the ATDATAS[103] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[95]  ,Returns the Value of the ATDATAS[95] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[87]  ,Returns the Value of the ATDATAS[87] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[79]  ,Returns the Value of the ATDATAS[79] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[71]  ,Returns the Value of the ATDATAS[71] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[63]  ,Returns the Value of the ATDATAS[63] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[55]  ,Returns the Value of the ATDATAS[55] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[47]  ,Returns the Value of the ATDATAS[47] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[39]  ,Returns the Value of the ATDATAS[39] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAS[31]  ,Returns the Value of the ATDATAS[31] Input Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAS[23]  ,Returns the Value of the ATDATAS[23] Input pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAS[15]  ,Returns the Value of the ATDATAS[15] Input Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAS[7]   ,Returns the Value of the ATDATAS[7] Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAS[0]   ,Returns the Value of the ATDATAS[0] Input Pin" "Low,High"
wgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFREADYS     ,Drives the AFREADYS Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDS     ,Drives the ATVALIDS Output Pin" "Low,High"
rgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDS        ,Returns the Value of the ATIDS Input Pins"
rgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESS[1]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESS[0]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 1. "  AFVALIDS     ,Returns the Value of the AFVALIDS Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYS     ,Returns the Value of the ATREADYS Input Pin" "Low,High"
wgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAM[127] ,Drives the ATDATAM[127] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[119] ,Drives the ATDATAM[119] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[111] ,Drives the ATDATAM[111] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[103] ,Drives the ATDATAM[103] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[95]  ,Drives the ATDATAM[95] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[87]  ,Drives the ATDATAM[87] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[79]  ,Drives the ATDATAM[79] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[71]  ,Drives the ATDATAM[71] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[63]  ,Drives the ATDATAM[63] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[55]  ,Drives the ATDATAM[55] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[47]  ,Drives the ATDATAM[47] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[39]  ,Drives the ATDATAM[39] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAM[31]  ,Drives the ATDATAM[31] Output Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAM[23]  ,Drives the ATDATAM[23] Output pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAM[15]  ,Drives the ATDATAM[15] Output Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAM[7]   ,Drives the ATDATAM[7] Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAM[0]   ,Drives the ATDATAM[0] Output Pin" "Low,High"
rgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDM     ,Returns the Value of the AFVALIDM Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYM     ,Returns the Value of the ATREADYM Input Pin" "Low,High"
wgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDM        ,Drives the ATIDM Output Pins"
wgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESM[1]  ,Drives the ATBYTESM[1] Output Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESM[0]  ,Drives the ATBYTESM[0] Output Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYM     ,Drives the AFREADYM Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDM     ,Drives the ATVALIDM Output Pin" "Low,High"
width 13.
rgroup.long 0xfe0++0x13 "Peripheral Identification Registers"
line.long 0x00 "PERIPHID0,Peripheral ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PART_NUMBER[7:0] ,Bits [7:0] of the component part number"
line.long 0x04 "PERIPHID1,Peripheral ID1 Register"
bitfld.long 0x04 4.--7. " JEP106[3:0]      ,Bits [3:0] of the JEDEC identity code" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
bitfld.long 0x04 0.--3. "       PART_NUMBER[11:8] ,Bits [11:8] of the component part number" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "PERIPHID2,Peripheral ID2 Register"
bitfld.long 0x08 4.--7. " REVISION         ,Revision" "Reserved,r0p1,?..."
bitfld.long 0x08 3. "   JEDEC             ,JEDEC assigned value used" "Not used,Used"
bitfld.long 0x08 0.--2. "  JEP106[6:4] ,Bits [6:4] of the JEDEC identity code" "000,001,010,011,100,101,110,111"
line.long 0x0c "PERIPHID3,Peripheral ID3 Register"
hexmask.long.byte 0x0c 4.--7. 1. " REVAND           ,Minor errata fixes"
hexmask.long.byte 0x0c 0.--3. 1. "         CUSTOMER_MODIFIED ,Customer Modified"
rgroup.long 0xfd0++0x3
line.long 0x00 "PERIPHID4,Peripheral ID4 Register"
bitfld.long 0x00 4.--7. " FOURKB_COUNT     ,Total contiguous size of the memory window" "4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB"
bitfld.long 0x00 0.--3. "     JEP106_CONT       ,JEDEC continuation code" "Reserved,Reserved,Reserved,Reserved,5th bank,?..."
rgroup.long 0xff0++0xf "Component Identification Registers"
line.long 0x00 "COMPID0,Component ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PREAMBLE[7:0]    ,Bits [7:0] of the component identification"
line.long 0x04 "COMPID1,Component ID1 Register"
bitfld.long 0x04 4.--7. " CLASS            ,Class of the component" "Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,CoreSight,?..."
bitfld.long 0x04 0.--3. "  PREAMBLE[11:8]    ,Bits [11:8] of the component identification" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "COMPID2,Component ID2 Register"
hexmask.long.byte 0x08 0.--7. 1. " PREAMBLE[23:16]  ,Bits [23:16] of the component identification"
line.long 0x0c "COMPID3,Component ID3 Register"
hexmask.long.byte 0x0c 0.--7. 1. " PREAMBLE[31:24]  ,Bits [31:24] of the component identification"
tree.end
width 11.
tree.end
endif
sif COMPonent.AVAILABLE("etb10")&&(address.offset(comp.base("etb10",-1))!=0)
tree "TMC ETB10"
width 10.
group.long 0x004++0x3 "TMC Registers"
line.long 0x00 "RSZ,RAM Size Register"
hexmask.long 0x00 0.--30. 1. " RSZ         ,Size of the RAM in 32-bit words"
rgroup.long 0x00c++0x3
line.long 0x00 "STS,Status Register"
bitfld.long 0x00 5. " MEMERR      ,AXI master interface error" "No error,Error"
bitfld.long 0x00 4. "         EMPTY ,No valid trace data in the trace memory" "Not empty,Empty"
bitfld.long 0x00 3. "  FTEMPTY ,All internal pipelines and buffers empty" "Not empty,Empty"
bitfld.long 0x00 2. "  TMCREADY ,Trace capture ready" "Not ready,Ready"
textline "                   "
bitfld.long 0x00 1. " TRIGGERED   ,Trigger event detected" "Not detected,Detected"
bitfld.long 0x00 0. "     FULL  ,Ram full" "Not full,Full"
wgroup.long 0x010++0x3
hide.long 0x00 "RRD,RAM Read Data Register"
in
group.long 0x014++0xb
line.long 0x00 "RRP,RAM Read Pointer Register"
line.long 0x04 "RWP,RAM Write Pointer Register"
line.long 0x08 "TRG,Trigger Counter Register"
group.long 0x020++0x3
line.long 0x00 "CTL,Control Register"
bitfld.long 0x00 0. " TRACECAPTEN ,Trace Capture Enable" "Disabled,Enabled"
wgroup.long 0x024++0x3
line.long 0x00 "RWD,RAM Write Data Register"
group.long 0x028++0x3
line.long 0x00 "MODE,Mode Register"
bitfld.long 0x00 0.--1. " MODE        ,Mode select" "Circular Buffer,Software FIFO,Hardware FIFO,Software FIFO 2"
rgroup.long 0x02c++0x7
line.long 0x00 "LBUFLEVEL,Latched Buffer Fill Level Register"
line.long 0x04 "CBUFLEVEL,Current Buffer Fill Level Register"
group.long 0x034++0x3
line.long 0x00 "BUFWM,Buffer Level Water Mark Register"
group.long 0x038++0x7
line.long 0x00 "RRPHI,RAM Read Pointer High Register"
hexmask.long.byte 0x00 0.--7. 1. " RRPHI         ,Bits [39:32] of the read pointer"
line.long 0x04 "RWPHI,RAM Write Pointer High Register"
hexmask.long.byte 0x04 0.--7. 1. " RWPHI         ,Bits [39:32] of the write pointer"
group.long 0x110++0x3
line.long 0x00 "AXICTL,AXI Control Register"
bitfld.long 0x00 8.--11. " WRBURSTLEN    ,Maximum number of data transfers per burst" "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16"
bitfld.long 0x00 7. "     SGM ,Scatter Gather Mode Enable" "Disabled,Enabled"
bitfld.long 0x00 5. "          CC3 ,Cache allocate on writes enable" "Disabled,Enabled"
bitfld.long 0x00 4. "     CC2 ,Cache allocate on reads enable" "Disabled,Enabled"
textline "                   "
bitfld.long 0x00 3. " CC1 ,Cacheable" "Non-cacheable,Cacheable"
bitfld.long 0x00 2. "    CC0 ,Bufferable" "Non-bufferable,Bufferable"
bitfld.long 0x00 1. "    PC1 ,Secure/Non-secure Access" "Secure,Non-secure"
bitfld.long 0x00 0. "   PC0 ,Normal/Privileged Access" "Normal,Privileged"
group.long 0x118++0x7
line.long 0x00 "DBALO,Data Buffer Address Low Register"
line.long 0x04 "DBAHI,Data Buffer Address High Register"
hexmask.long.byte 0x04 0.--7. 1. " BUFADDRHI     ,Bits [39:32] of the trace buffer address"
rgroup.long 0x300++0x3
line.long 0x00 "FFSR,Formatter and Flush Status Register"
bitfld.long 0x00 1. " FTSTOPPED     ,Formatter Stopped" "No,Yes"
bitfld.long 0x00 0. "    FLINPROG          ,Flush in Progress" "No,Yes"
group.long 0x304++0x7
line.long 0x00 "FFCR,Formatter and Flush Control Register"
bitfld.long 0x00 14. " DRAINBUFFER   ,Drain trace data through ATB master interface" "No,Yes"
bitfld.long 0x00 13. "    STOPONTRIGEVT     ,Stop trace capture on trigger event" "No,Yes"
bitfld.long 0x00 12. "   STOPONFL      ,Stop formatter on completion of a flush operation" "No,Yes"
bitfld.long 0x00 10. "   TRIGONFL      ,Trigger on flush completion" "No,Yes"
textline "                   "
bitfld.long 0x00 9. " TRIGONTRIGEVT ,Trigger on a trigger event" "No,Yes"
bitfld.long 0x00 8. "    TRIGONTRIGIN      ,Trigger on TRIGIN being asserted" "No,Yes"
bitfld.long 0x00 6. "   FLUSHMAN      ,Manual Flush" "No,Yes"
bitfld.long 0x00 5. "   FONTRIGEVT    ,Flush on trigger event" "No,Yes"
textline "                   "
bitfld.long 0x00 4. " FONFLIN       ,Flush on FLUSHIN feature" "No,Yes"
bitfld.long 0x00 1. "    ENTI              ,Insertion of triggers in the formatted trace stream enable" "No,Yes"
bitfld.long 0x00 0. "   ENFT          ,Formatting enable" "No,Yes"
line.long 0x04 "PSCR,Periodic Synchronization Counter Register"
bitfld.long 0x04 5. " EMBEDSYNC     ,Embed Frame Sync packets" "No,Yes"
bitfld.long 0x04 0.--4. "    PSCOUNT           ,Reload value of the Synchronization Counter" "Disabled,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,128 bytes,256 bytes,512 bytes,1 KB,2 KB,4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB,?..."
width 13.
tree "Coresight Management Registers"
group 0xFA0--0xFA8
line.long 0x000 "CTS, Claim Tag Set"
bitfld.long 0x000 7. " SETCTV7   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 6. "        SETCTV6 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 5. " SETCTV5   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 4. "        SETCTV4 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 3. " SETCTV3   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 2. "        SETCTV2 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 1. " SETCTV1   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 0. "        SETCTV0 ,Set Claim Tag Value" "No effect,Set"
line.long 0x004 "CTC, Claim Tag Clear"
bitfld.long 0x004 7. " CLRCTV7   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 6. "        CLRCTV6 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 5. " CLRCTV5   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 4. "        CLRCTV4 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 3. " CLRCTV3   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 2. "        CLRCTV2 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 1. " CLRCTV1   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 0. "        CLRCTV0 ,Clear Claim Tag Value" "No effect,Cleared"
wgroup.long 0xfb0++0x3
line.long 0x00 "LAR,Lock Access Register"
rgroup.long 0xfb4++0x7
line.long 0x00 "LSR,Lock Status Register"
bitfld.long 0x00 2. " LOCKTYPE         ,32-bit Lock Access Register Implemented" "32-bit,?..."
bitfld.long 0x00 1. "         LOCKGRANT ,Lock Status" "Unlocked,Locked"
bitfld.long 0x00 0. "         LOCKEXIST  ,Lock control mechanism present" "Not present,Present"
line.long 0x04 "AUTHSTATUS,Authentication Status Register"
bitfld.long 0x04 6.--7. " SNID   ,Security level for secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 4.--5. "  SID  ,Security level for secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
bitfld.long 0x04 2.--3. "  NSNID ,Security level for non-secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 0.--1. "  NSID ,Security level for non-secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
rgroup.long 0xfc8++0x3
line.long 0x00 "DEVID,Device Configuration Register"
bitfld.long 0x00 11.--13. " WBUF_DEPTH  ,Number of entries in the write buffer (in ETR)" "Reserved,Reserved,4 entries,8 entries,16 entries,32 entries,?..."
bitfld.long 0x00 8.--10. "  MEMWIDTH  ,Memory interface databus width" "Reserved,Reserved,32-bit,64-bit,128-bit,256-bit,?..."
bitfld.long 0x00 6.--7. "    CONFIGTYPE ,Configuration type" "ETB,ETR,ETF,?..."
bitfld.long 0x00 5. "    CLKSCHEME ,RAM clocking scheme" "Synchronous,?..."
textline "                    "
bitfld.long 0x00 0.--4. "   ATBINPORTCOUNT   ,Type or number of ATB multiplexing" "No multiplexing,?..."
width 13.
if ((d.l(e:comp.base("etb10",-1)+0xfc8)&0xc0)==(0x00||0x40))
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,RAM->APB,?..."
bitfld.long 0x00 0.--3. "                    MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Trace sink,?..."
elif ((d.l(e:comp.base("etb10",-1)+0xfc8)&0xc0)==0x80)
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,Reserved,ATB slave->RAM->ATB master,?..."
bitfld.long 0x00 0.--3. "  MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Reserved,Trace link,?..."
else
hgroup.long 0xfcc++0x3
hide.long 0x00 "DEVTYPE,Device Type Identifier Register"
endif
group 0xf00--0xf03 "Integration Test Registers"
line.long 0x000 "ITCTRL,Integration Mode Control"
bitfld.long 0x000 0. " ENABLE       ,Enable Integration mode" "no,yes"
wgroup.long 0xee0++0x3
line.long 0x00 "ITMISCOP0,Integration Test Miscellaneous Output Register 0"
bitfld.long 0x00 1. " FULL          ,FULL output value set" "0,1"
bitfld.long 0x00 0. "     ACQCOMP       ,ACQCOMP output value set" "0,1"
rgroup.long 0xee8++0x3
line.long 0x00 "ITTRFLIN,Integration Test Trigger In and Flush In Register"
bitfld.long 0x00 1. " FLUSHIN       ,FLUSHIN output value" "0,1"
bitfld.long 0x00 0. "     TRIGIN        ,TRIGIN output value" "0,1"
rgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAS[127] ,Returns the Value of the ATDATAS[127] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[119] ,Returns the Value of the ATDATAS[119] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[111] ,Returns the Value of the ATDATAS[111] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[103] ,Returns the Value of the ATDATAS[103] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[95]  ,Returns the Value of the ATDATAS[95] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[87]  ,Returns the Value of the ATDATAS[87] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[79]  ,Returns the Value of the ATDATAS[79] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[71]  ,Returns the Value of the ATDATAS[71] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[63]  ,Returns the Value of the ATDATAS[63] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[55]  ,Returns the Value of the ATDATAS[55] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[47]  ,Returns the Value of the ATDATAS[47] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[39]  ,Returns the Value of the ATDATAS[39] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAS[31]  ,Returns the Value of the ATDATAS[31] Input Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAS[23]  ,Returns the Value of the ATDATAS[23] Input pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAS[15]  ,Returns the Value of the ATDATAS[15] Input Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAS[7]   ,Returns the Value of the ATDATAS[7] Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAS[0]   ,Returns the Value of the ATDATAS[0] Input Pin" "Low,High"
wgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFREADYS     ,Drives the AFREADYS Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDS     ,Drives the ATVALIDS Output Pin" "Low,High"
rgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDS        ,Returns the Value of the ATIDS Input Pins"
rgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESS[1]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESS[0]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 1. "  AFVALIDS     ,Returns the Value of the AFVALIDS Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYS     ,Returns the Value of the ATREADYS Input Pin" "Low,High"
wgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAM[127] ,Drives the ATDATAM[127] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[119] ,Drives the ATDATAM[119] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[111] ,Drives the ATDATAM[111] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[103] ,Drives the ATDATAM[103] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[95]  ,Drives the ATDATAM[95] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[87]  ,Drives the ATDATAM[87] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[79]  ,Drives the ATDATAM[79] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[71]  ,Drives the ATDATAM[71] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[63]  ,Drives the ATDATAM[63] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[55]  ,Drives the ATDATAM[55] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[47]  ,Drives the ATDATAM[47] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[39]  ,Drives the ATDATAM[39] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAM[31]  ,Drives the ATDATAM[31] Output Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAM[23]  ,Drives the ATDATAM[23] Output pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAM[15]  ,Drives the ATDATAM[15] Output Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAM[7]   ,Drives the ATDATAM[7] Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAM[0]   ,Drives the ATDATAM[0] Output Pin" "Low,High"
rgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDM     ,Returns the Value of the AFVALIDM Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYM     ,Returns the Value of the ATREADYM Input Pin" "Low,High"
wgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDM        ,Drives the ATIDM Output Pins"
wgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESM[1]  ,Drives the ATBYTESM[1] Output Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESM[0]  ,Drives the ATBYTESM[0] Output Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYM     ,Drives the AFREADYM Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDM     ,Drives the ATVALIDM Output Pin" "Low,High"
width 13.
rgroup.long 0xfe0++0x13 "Peripheral Identification Registers"
line.long 0x00 "PERIPHID0,Peripheral ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PART_NUMBER[7:0] ,Bits [7:0] of the component part number"
line.long 0x04 "PERIPHID1,Peripheral ID1 Register"
bitfld.long 0x04 4.--7. " JEP106[3:0]      ,Bits [3:0] of the JEDEC identity code" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
bitfld.long 0x04 0.--3. "       PART_NUMBER[11:8] ,Bits [11:8] of the component part number" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "PERIPHID2,Peripheral ID2 Register"
bitfld.long 0x08 4.--7. " REVISION         ,Revision" "Reserved,r0p1,?..."
bitfld.long 0x08 3. "   JEDEC             ,JEDEC assigned value used" "Not used,Used"
bitfld.long 0x08 0.--2. "  JEP106[6:4] ,Bits [6:4] of the JEDEC identity code" "000,001,010,011,100,101,110,111"
line.long 0x0c "PERIPHID3,Peripheral ID3 Register"
hexmask.long.byte 0x0c 4.--7. 1. " REVAND           ,Minor errata fixes"
hexmask.long.byte 0x0c 0.--3. 1. "         CUSTOMER_MODIFIED ,Customer Modified"
rgroup.long 0xfd0++0x3
line.long 0x00 "PERIPHID4,Peripheral ID4 Register"
bitfld.long 0x00 4.--7. " FOURKB_COUNT     ,Total contiguous size of the memory window" "4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB"
bitfld.long 0x00 0.--3. "     JEP106_CONT       ,JEDEC continuation code" "Reserved,Reserved,Reserved,Reserved,5th bank,?..."
rgroup.long 0xff0++0xf "Component Identification Registers"
line.long 0x00 "COMPID0,Component ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PREAMBLE[7:0]    ,Bits [7:0] of the component identification"
line.long 0x04 "COMPID1,Component ID1 Register"
bitfld.long 0x04 4.--7. " CLASS            ,Class of the component" "Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,CoreSight,?..."
bitfld.long 0x04 0.--3. "  PREAMBLE[11:8]    ,Bits [11:8] of the component identification" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "COMPID2,Component ID2 Register"
hexmask.long.byte 0x08 0.--7. 1. " PREAMBLE[23:16]  ,Bits [23:16] of the component identification"
line.long 0x0c "COMPID3,Component ID3 Register"
hexmask.long.byte 0x0c 0.--7. 1. " PREAMBLE[31:24]  ,Bits [31:24] of the component identification"
tree.end
width 11.
tree.end
endif
endif
sif COMPonent.AVAILABLE("etf1")
tree "TMC ETF1"
base e:comp.base("etf1",-1)
width 10.
group.long 0x004++0x3 "TMC Registers"
line.long 0x00 "RSZ,RAM Size Register"
hexmask.long 0x00 0.--30. 1. " RSZ         ,Size of the RAM in 32-bit words"
rgroup.long 0x00c++0x3
line.long 0x00 "STS,Status Register"
bitfld.long 0x00 5. " MEMERR      ,AXI master interface error" "No error,Error"
bitfld.long 0x00 4. "         EMPTY ,No valid trace data in the trace memory" "Not empty,Empty"
bitfld.long 0x00 3. "  FTEMPTY ,All internal pipelines and buffers empty" "Not empty,Empty"
bitfld.long 0x00 2. "  TMCREADY ,Trace capture ready" "Not ready,Ready"
textline "                   "
bitfld.long 0x00 1. " TRIGGERED   ,Trigger event detected" "Not detected,Detected"
bitfld.long 0x00 0. "     FULL  ,Ram full" "Not full,Full"
wgroup.long 0x010++0x3
hide.long 0x00 "RRD,RAM Read Data Register"
in
group.long 0x014++0xb
line.long 0x00 "RRP,RAM Read Pointer Register"
line.long 0x04 "RWP,RAM Write Pointer Register"
line.long 0x08 "TRG,Trigger Counter Register"
group.long 0x020++0x3
line.long 0x00 "CTL,Control Register"
bitfld.long 0x00 0. " TRACECAPTEN ,Trace Capture Enable" "Disabled,Enabled"
wgroup.long 0x024++0x3
line.long 0x00 "RWD,RAM Write Data Register"
group.long 0x028++0x3
line.long 0x00 "MODE,Mode Register"
bitfld.long 0x00 0.--1. " MODE        ,Mode select" "Circular Buffer,Software FIFO,Hardware FIFO,Software FIFO 2"
rgroup.long 0x02c++0x7
line.long 0x00 "LBUFLEVEL,Latched Buffer Fill Level Register"
line.long 0x04 "CBUFLEVEL,Current Buffer Fill Level Register"
group.long 0x034++0x3
line.long 0x00 "BUFWM,Buffer Level Water Mark Register"
group.long 0x038++0x7
line.long 0x00 "RRPHI,RAM Read Pointer High Register"
hexmask.long.byte 0x00 0.--7. 1. " RRPHI         ,Bits [39:32] of the read pointer"
line.long 0x04 "RWPHI,RAM Write Pointer High Register"
hexmask.long.byte 0x04 0.--7. 1. " RWPHI         ,Bits [39:32] of the write pointer"
group.long 0x110++0x3
line.long 0x00 "AXICTL,AXI Control Register"
bitfld.long 0x00 8.--11. " WRBURSTLEN    ,Maximum number of data transfers per burst" "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16"
bitfld.long 0x00 7. "     SGM ,Scatter Gather Mode Enable" "Disabled,Enabled"
bitfld.long 0x00 5. "          CC3 ,Cache allocate on writes enable" "Disabled,Enabled"
bitfld.long 0x00 4. "     CC2 ,Cache allocate on reads enable" "Disabled,Enabled"
textline "                   "
bitfld.long 0x00 3. " CC1 ,Cacheable" "Non-cacheable,Cacheable"
bitfld.long 0x00 2. "    CC0 ,Bufferable" "Non-bufferable,Bufferable"
bitfld.long 0x00 1. "    PC1 ,Secure/Non-secure Access" "Secure,Non-secure"
bitfld.long 0x00 0. "   PC0 ,Normal/Privileged Access" "Normal,Privileged"
group.long 0x118++0x7
line.long 0x00 "DBALO,Data Buffer Address Low Register"
line.long 0x04 "DBAHI,Data Buffer Address High Register"
hexmask.long.byte 0x04 0.--7. 1. " BUFADDRHI     ,Bits [39:32] of the trace buffer address"
rgroup.long 0x300++0x3
line.long 0x00 "FFSR,Formatter and Flush Status Register"
bitfld.long 0x00 1. " FTSTOPPED     ,Formatter Stopped" "No,Yes"
bitfld.long 0x00 0. "    FLINPROG          ,Flush in Progress" "No,Yes"
group.long 0x304++0x7
line.long 0x00 "FFCR,Formatter and Flush Control Register"
bitfld.long 0x00 14. " DRAINBUFFER   ,Drain trace data through ATB master interface" "No,Yes"
bitfld.long 0x00 13. "    STOPONTRIGEVT     ,Stop trace capture on trigger event" "No,Yes"
bitfld.long 0x00 12. "   STOPONFL      ,Stop formatter on completion of a flush operation" "No,Yes"
bitfld.long 0x00 10. "   TRIGONFL      ,Trigger on flush completion" "No,Yes"
textline "                   "
bitfld.long 0x00 9. " TRIGONTRIGEVT ,Trigger on a trigger event" "No,Yes"
bitfld.long 0x00 8. "    TRIGONTRIGIN      ,Trigger on TRIGIN being asserted" "No,Yes"
bitfld.long 0x00 6. "   FLUSHMAN      ,Manual Flush" "No,Yes"
bitfld.long 0x00 5. "   FONTRIGEVT    ,Flush on trigger event" "No,Yes"
textline "                   "
bitfld.long 0x00 4. " FONFLIN       ,Flush on FLUSHIN feature" "No,Yes"
bitfld.long 0x00 1. "    ENTI              ,Insertion of triggers in the formatted trace stream enable" "No,Yes"
bitfld.long 0x00 0. "   ENFT          ,Formatting enable" "No,Yes"
line.long 0x04 "PSCR,Periodic Synchronization Counter Register"
bitfld.long 0x04 5. " EMBEDSYNC     ,Embed Frame Sync packets" "No,Yes"
bitfld.long 0x04 0.--4. "    PSCOUNT           ,Reload value of the Synchronization Counter" "Disabled,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,128 bytes,256 bytes,512 bytes,1 KB,2 KB,4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB,?..."
width 13.
tree "Coresight Management Registers"
group 0xFA0--0xFA8
line.long 0x000 "CTS, Claim Tag Set"
bitfld.long 0x000 7. " SETCTV7   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 6. "        SETCTV6 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 5. " SETCTV5   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 4. "        SETCTV4 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 3. " SETCTV3   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 2. "        SETCTV2 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 1. " SETCTV1   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 0. "        SETCTV0 ,Set Claim Tag Value" "No effect,Set"
line.long 0x004 "CTC, Claim Tag Clear"
bitfld.long 0x004 7. " CLRCTV7   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 6. "        CLRCTV6 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 5. " CLRCTV5   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 4. "        CLRCTV4 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 3. " CLRCTV3   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 2. "        CLRCTV2 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 1. " CLRCTV1   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 0. "        CLRCTV0 ,Clear Claim Tag Value" "No effect,Cleared"
wgroup.long 0xfb0++0x3
line.long 0x00 "LAR,Lock Access Register"
rgroup.long 0xfb4++0x7
line.long 0x00 "LSR,Lock Status Register"
bitfld.long 0x00 2. " LOCKTYPE         ,32-bit Lock Access Register Implemented" "32-bit,?..."
bitfld.long 0x00 1. "         LOCKGRANT ,Lock Status" "Unlocked,Locked"
bitfld.long 0x00 0. "         LOCKEXIST  ,Lock control mechanism present" "Not present,Present"
line.long 0x04 "AUTHSTATUS,Authentication Status Register"
bitfld.long 0x04 6.--7. " SNID   ,Security level for secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 4.--5. "  SID  ,Security level for secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
bitfld.long 0x04 2.--3. "  NSNID ,Security level for non-secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 0.--1. "  NSID ,Security level for non-secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
rgroup.long 0xfc8++0x3
line.long 0x00 "DEVID,Device Configuration Register"
bitfld.long 0x00 11.--13. " WBUF_DEPTH  ,Number of entries in the write buffer (in ETR)" "Reserved,Reserved,4 entries,8 entries,16 entries,32 entries,?..."
bitfld.long 0x00 8.--10. "  MEMWIDTH  ,Memory interface databus width" "Reserved,Reserved,32-bit,64-bit,128-bit,256-bit,?..."
bitfld.long 0x00 6.--7. "    CONFIGTYPE ,Configuration type" "ETB,ETR,ETF,?..."
bitfld.long 0x00 5. "    CLKSCHEME ,RAM clocking scheme" "Synchronous,?..."
textline "                    "
bitfld.long 0x00 0.--4. "   ATBINPORTCOUNT   ,Type or number of ATB multiplexing" "No multiplexing,?..."
width 13.
if ((d.l(e:comp.base("etf1",-1)+0xfc8)&0xc0)==(0x00||0x40))
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,RAM->APB,?..."
bitfld.long 0x00 0.--3. "                    MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Trace sink,?..."
elif ((d.l(e:comp.base("etf1",-1)+0xfc8)&0xc0)==0x80)
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,Reserved,ATB slave->RAM->ATB master,?..."
bitfld.long 0x00 0.--3. "  MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Reserved,Trace link,?..."
else
hgroup.long 0xfcc++0x3
hide.long 0x00 "DEVTYPE,Device Type Identifier Register"
endif
group 0xf00--0xf03 "Integration Test Registers"
line.long 0x000 "ITCTRL,Integration Mode Control"
bitfld.long 0x000 0. " ENABLE       ,Enable Integration mode" "no,yes"
wgroup.long 0xee0++0x3
line.long 0x00 "ITMISCOP0,Integration Test Miscellaneous Output Register 0"
bitfld.long 0x00 1. " FULL          ,FULL output value set" "0,1"
bitfld.long 0x00 0. "     ACQCOMP       ,ACQCOMP output value set" "0,1"
rgroup.long 0xee8++0x3
line.long 0x00 "ITTRFLIN,Integration Test Trigger In and Flush In Register"
bitfld.long 0x00 1. " FLUSHIN       ,FLUSHIN output value" "0,1"
bitfld.long 0x00 0. "     TRIGIN        ,TRIGIN output value" "0,1"
rgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAS[127] ,Returns the Value of the ATDATAS[127] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[119] ,Returns the Value of the ATDATAS[119] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[111] ,Returns the Value of the ATDATAS[111] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[103] ,Returns the Value of the ATDATAS[103] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[95]  ,Returns the Value of the ATDATAS[95] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[87]  ,Returns the Value of the ATDATAS[87] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[79]  ,Returns the Value of the ATDATAS[79] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[71]  ,Returns the Value of the ATDATAS[71] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[63]  ,Returns the Value of the ATDATAS[63] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[55]  ,Returns the Value of the ATDATAS[55] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[47]  ,Returns the Value of the ATDATAS[47] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[39]  ,Returns the Value of the ATDATAS[39] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAS[31]  ,Returns the Value of the ATDATAS[31] Input Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAS[23]  ,Returns the Value of the ATDATAS[23] Input pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAS[15]  ,Returns the Value of the ATDATAS[15] Input Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAS[7]   ,Returns the Value of the ATDATAS[7] Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAS[0]   ,Returns the Value of the ATDATAS[0] Input Pin" "Low,High"
wgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFREADYS     ,Drives the AFREADYS Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDS     ,Drives the ATVALIDS Output Pin" "Low,High"
rgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDS        ,Returns the Value of the ATIDS Input Pins"
rgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESS[1]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESS[0]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 1. "  AFVALIDS     ,Returns the Value of the AFVALIDS Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYS     ,Returns the Value of the ATREADYS Input Pin" "Low,High"
wgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAM[127] ,Drives the ATDATAM[127] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[119] ,Drives the ATDATAM[119] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[111] ,Drives the ATDATAM[111] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[103] ,Drives the ATDATAM[103] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[95]  ,Drives the ATDATAM[95] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[87]  ,Drives the ATDATAM[87] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[79]  ,Drives the ATDATAM[79] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[71]  ,Drives the ATDATAM[71] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[63]  ,Drives the ATDATAM[63] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[55]  ,Drives the ATDATAM[55] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[47]  ,Drives the ATDATAM[47] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[39]  ,Drives the ATDATAM[39] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAM[31]  ,Drives the ATDATAM[31] Output Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAM[23]  ,Drives the ATDATAM[23] Output pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAM[15]  ,Drives the ATDATAM[15] Output Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAM[7]   ,Drives the ATDATAM[7] Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAM[0]   ,Drives the ATDATAM[0] Output Pin" "Low,High"
rgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDM     ,Returns the Value of the AFVALIDM Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYM     ,Returns the Value of the ATREADYM Input Pin" "Low,High"
wgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDM        ,Drives the ATIDM Output Pins"
wgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESM[1]  ,Drives the ATBYTESM[1] Output Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESM[0]  ,Drives the ATBYTESM[0] Output Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYM     ,Drives the AFREADYM Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDM     ,Drives the ATVALIDM Output Pin" "Low,High"
width 13.
rgroup.long 0xfe0++0x13 "Peripheral Identification Registers"
line.long 0x00 "PERIPHID0,Peripheral ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PART_NUMBER[7:0] ,Bits [7:0] of the component part number"
line.long 0x04 "PERIPHID1,Peripheral ID1 Register"
bitfld.long 0x04 4.--7. " JEP106[3:0]      ,Bits [3:0] of the JEDEC identity code" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
bitfld.long 0x04 0.--3. "       PART_NUMBER[11:8] ,Bits [11:8] of the component part number" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "PERIPHID2,Peripheral ID2 Register"
bitfld.long 0x08 4.--7. " REVISION         ,Revision" "Reserved,r0p1,?..."
bitfld.long 0x08 3. "   JEDEC             ,JEDEC assigned value used" "Not used,Used"
bitfld.long 0x08 0.--2. "  JEP106[6:4] ,Bits [6:4] of the JEDEC identity code" "000,001,010,011,100,101,110,111"
line.long 0x0c "PERIPHID3,Peripheral ID3 Register"
hexmask.long.byte 0x0c 4.--7. 1. " REVAND           ,Minor errata fixes"
hexmask.long.byte 0x0c 0.--3. 1. "         CUSTOMER_MODIFIED ,Customer Modified"
rgroup.long 0xfd0++0x3
line.long 0x00 "PERIPHID4,Peripheral ID4 Register"
bitfld.long 0x00 4.--7. " FOURKB_COUNT     ,Total contiguous size of the memory window" "4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB"
bitfld.long 0x00 0.--3. "     JEP106_CONT       ,JEDEC continuation code" "Reserved,Reserved,Reserved,Reserved,5th bank,?..."
rgroup.long 0xff0++0xf "Component Identification Registers"
line.long 0x00 "COMPID0,Component ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PREAMBLE[7:0]    ,Bits [7:0] of the component identification"
line.long 0x04 "COMPID1,Component ID1 Register"
bitfld.long 0x04 4.--7. " CLASS            ,Class of the component" "Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,CoreSight,?..."
bitfld.long 0x04 0.--3. "  PREAMBLE[11:8]    ,Bits [11:8] of the component identification" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "COMPID2,Component ID2 Register"
hexmask.long.byte 0x08 0.--7. 1. " PREAMBLE[23:16]  ,Bits [23:16] of the component identification"
line.long 0x0c "COMPID3,Component ID3 Register"
hexmask.long.byte 0x0c 0.--7. 1. " PREAMBLE[31:24]  ,Bits [31:24] of the component identification"
tree.end
width 11.
tree.end
endif
sif COMPonent.AVAILABLE("etf2")
tree "TMC ETF2"
base e:comp.base("etf2",-1)
width 10.
group.long 0x004++0x3 "TMC Registers"
line.long 0x00 "RSZ,RAM Size Register"
hexmask.long 0x00 0.--30. 1. " RSZ         ,Size of the RAM in 32-bit words"
rgroup.long 0x00c++0x3
line.long 0x00 "STS,Status Register"
bitfld.long 0x00 5. " MEMERR      ,AXI master interface error" "No error,Error"
bitfld.long 0x00 4. "         EMPTY ,No valid trace data in the trace memory" "Not empty,Empty"
bitfld.long 0x00 3. "  FTEMPTY ,All internal pipelines and buffers empty" "Not empty,Empty"
bitfld.long 0x00 2. "  TMCREADY ,Trace capture ready" "Not ready,Ready"
textline "                   "
bitfld.long 0x00 1. " TRIGGERED   ,Trigger event detected" "Not detected,Detected"
bitfld.long 0x00 0. "     FULL  ,Ram full" "Not full,Full"
wgroup.long 0x010++0x3
hide.long 0x00 "RRD,RAM Read Data Register"
in
group.long 0x014++0xb
line.long 0x00 "RRP,RAM Read Pointer Register"
line.long 0x04 "RWP,RAM Write Pointer Register"
line.long 0x08 "TRG,Trigger Counter Register"
group.long 0x020++0x3
line.long 0x00 "CTL,Control Register"
bitfld.long 0x00 0. " TRACECAPTEN ,Trace Capture Enable" "Disabled,Enabled"
wgroup.long 0x024++0x3
line.long 0x00 "RWD,RAM Write Data Register"
group.long 0x028++0x3
line.long 0x00 "MODE,Mode Register"
bitfld.long 0x00 0.--1. " MODE        ,Mode select" "Circular Buffer,Software FIFO,Hardware FIFO,Software FIFO 2"
rgroup.long 0x02c++0x7
line.long 0x00 "LBUFLEVEL,Latched Buffer Fill Level Register"
line.long 0x04 "CBUFLEVEL,Current Buffer Fill Level Register"
group.long 0x034++0x3
line.long 0x00 "BUFWM,Buffer Level Water Mark Register"
group.long 0x038++0x7
line.long 0x00 "RRPHI,RAM Read Pointer High Register"
hexmask.long.byte 0x00 0.--7. 1. " RRPHI         ,Bits [39:32] of the read pointer"
line.long 0x04 "RWPHI,RAM Write Pointer High Register"
hexmask.long.byte 0x04 0.--7. 1. " RWPHI         ,Bits [39:32] of the write pointer"
group.long 0x110++0x3
line.long 0x00 "AXICTL,AXI Control Register"
bitfld.long 0x00 8.--11. " WRBURSTLEN    ,Maximum number of data transfers per burst" "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16"
bitfld.long 0x00 7. "     SGM ,Scatter Gather Mode Enable" "Disabled,Enabled"
bitfld.long 0x00 5. "          CC3 ,Cache allocate on writes enable" "Disabled,Enabled"
bitfld.long 0x00 4. "     CC2 ,Cache allocate on reads enable" "Disabled,Enabled"
textline "                   "
bitfld.long 0x00 3. " CC1 ,Cacheable" "Non-cacheable,Cacheable"
bitfld.long 0x00 2. "    CC0 ,Bufferable" "Non-bufferable,Bufferable"
bitfld.long 0x00 1. "    PC1 ,Secure/Non-secure Access" "Secure,Non-secure"
bitfld.long 0x00 0. "   PC0 ,Normal/Privileged Access" "Normal,Privileged"
group.long 0x118++0x7
line.long 0x00 "DBALO,Data Buffer Address Low Register"
line.long 0x04 "DBAHI,Data Buffer Address High Register"
hexmask.long.byte 0x04 0.--7. 1. " BUFADDRHI     ,Bits [39:32] of the trace buffer address"
rgroup.long 0x300++0x3
line.long 0x00 "FFSR,Formatter and Flush Status Register"
bitfld.long 0x00 1. " FTSTOPPED     ,Formatter Stopped" "No,Yes"
bitfld.long 0x00 0. "    FLINPROG          ,Flush in Progress" "No,Yes"
group.long 0x304++0x7
line.long 0x00 "FFCR,Formatter and Flush Control Register"
bitfld.long 0x00 14. " DRAINBUFFER   ,Drain trace data through ATB master interface" "No,Yes"
bitfld.long 0x00 13. "    STOPONTRIGEVT     ,Stop trace capture on trigger event" "No,Yes"
bitfld.long 0x00 12. "   STOPONFL      ,Stop formatter on completion of a flush operation" "No,Yes"
bitfld.long 0x00 10. "   TRIGONFL      ,Trigger on flush completion" "No,Yes"
textline "                   "
bitfld.long 0x00 9. " TRIGONTRIGEVT ,Trigger on a trigger event" "No,Yes"
bitfld.long 0x00 8. "    TRIGONTRIGIN      ,Trigger on TRIGIN being asserted" "No,Yes"
bitfld.long 0x00 6. "   FLUSHMAN      ,Manual Flush" "No,Yes"
bitfld.long 0x00 5. "   FONTRIGEVT    ,Flush on trigger event" "No,Yes"
textline "                   "
bitfld.long 0x00 4. " FONFLIN       ,Flush on FLUSHIN feature" "No,Yes"
bitfld.long 0x00 1. "    ENTI              ,Insertion of triggers in the formatted trace stream enable" "No,Yes"
bitfld.long 0x00 0. "   ENFT          ,Formatting enable" "No,Yes"
line.long 0x04 "PSCR,Periodic Synchronization Counter Register"
bitfld.long 0x04 5. " EMBEDSYNC     ,Embed Frame Sync packets" "No,Yes"
bitfld.long 0x04 0.--4. "    PSCOUNT           ,Reload value of the Synchronization Counter" "Disabled,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,128 bytes,256 bytes,512 bytes,1 KB,2 KB,4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB,?..."
width 13.
tree "Coresight Management Registers"
group 0xFA0--0xFA8
line.long 0x000 "CTS, Claim Tag Set"
bitfld.long 0x000 7. " SETCTV7   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 6. "        SETCTV6 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 5. " SETCTV5   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 4. "        SETCTV4 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 3. " SETCTV3   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 2. "        SETCTV2 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 1. " SETCTV1   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 0. "        SETCTV0 ,Set Claim Tag Value" "No effect,Set"
line.long 0x004 "CTC, Claim Tag Clear"
bitfld.long 0x004 7. " CLRCTV7   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 6. "        CLRCTV6 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 5. " CLRCTV5   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 4. "        CLRCTV4 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 3. " CLRCTV3   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 2. "        CLRCTV2 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 1. " CLRCTV1   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 0. "        CLRCTV0 ,Clear Claim Tag Value" "No effect,Cleared"
wgroup.long 0xfb0++0x3
line.long 0x00 "LAR,Lock Access Register"
rgroup.long 0xfb4++0x7
line.long 0x00 "LSR,Lock Status Register"
bitfld.long 0x00 2. " LOCKTYPE         ,32-bit Lock Access Register Implemented" "32-bit,?..."
bitfld.long 0x00 1. "         LOCKGRANT ,Lock Status" "Unlocked,Locked"
bitfld.long 0x00 0. "         LOCKEXIST  ,Lock control mechanism present" "Not present,Present"
line.long 0x04 "AUTHSTATUS,Authentication Status Register"
bitfld.long 0x04 6.--7. " SNID   ,Security level for secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 4.--5. "  SID  ,Security level for secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
bitfld.long 0x04 2.--3. "  NSNID ,Security level for non-secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 0.--1. "  NSID ,Security level for non-secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
rgroup.long 0xfc8++0x3
line.long 0x00 "DEVID,Device Configuration Register"
bitfld.long 0x00 11.--13. " WBUF_DEPTH  ,Number of entries in the write buffer (in ETR)" "Reserved,Reserved,4 entries,8 entries,16 entries,32 entries,?..."
bitfld.long 0x00 8.--10. "  MEMWIDTH  ,Memory interface databus width" "Reserved,Reserved,32-bit,64-bit,128-bit,256-bit,?..."
bitfld.long 0x00 6.--7. "    CONFIGTYPE ,Configuration type" "ETB,ETR,ETF,?..."
bitfld.long 0x00 5. "    CLKSCHEME ,RAM clocking scheme" "Synchronous,?..."
textline "                    "
bitfld.long 0x00 0.--4. "   ATBINPORTCOUNT   ,Type or number of ATB multiplexing" "No multiplexing,?..."
width 13.
if ((d.l(e:comp.base("etf2",-1)+0xfc8)&0xc0)==(0x00||0x40))
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,RAM->APB,?..."
bitfld.long 0x00 0.--3. "                    MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Trace sink,?..."
elif ((d.l(e:comp.base("etf2",-1)+0xfc8)&0xc0)==0x80)
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,Reserved,ATB slave->RAM->ATB master,?..."
bitfld.long 0x00 0.--3. "  MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Reserved,Trace link,?..."
else
hgroup.long 0xfcc++0x3
hide.long 0x00 "DEVTYPE,Device Type Identifier Register"
endif
group 0xf00--0xf03 "Integration Test Registers"
line.long 0x000 "ITCTRL,Integration Mode Control"
bitfld.long 0x000 0. " ENABLE       ,Enable Integration mode" "no,yes"
wgroup.long 0xee0++0x3
line.long 0x00 "ITMISCOP0,Integration Test Miscellaneous Output Register 0"
bitfld.long 0x00 1. " FULL          ,FULL output value set" "0,1"
bitfld.long 0x00 0. "     ACQCOMP       ,ACQCOMP output value set" "0,1"
rgroup.long 0xee8++0x3
line.long 0x00 "ITTRFLIN,Integration Test Trigger In and Flush In Register"
bitfld.long 0x00 1. " FLUSHIN       ,FLUSHIN output value" "0,1"
bitfld.long 0x00 0. "     TRIGIN        ,TRIGIN output value" "0,1"
rgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAS[127] ,Returns the Value of the ATDATAS[127] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[119] ,Returns the Value of the ATDATAS[119] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[111] ,Returns the Value of the ATDATAS[111] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[103] ,Returns the Value of the ATDATAS[103] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[95]  ,Returns the Value of the ATDATAS[95] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[87]  ,Returns the Value of the ATDATAS[87] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[79]  ,Returns the Value of the ATDATAS[79] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[71]  ,Returns the Value of the ATDATAS[71] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[63]  ,Returns the Value of the ATDATAS[63] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[55]  ,Returns the Value of the ATDATAS[55] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[47]  ,Returns the Value of the ATDATAS[47] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[39]  ,Returns the Value of the ATDATAS[39] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAS[31]  ,Returns the Value of the ATDATAS[31] Input Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAS[23]  ,Returns the Value of the ATDATAS[23] Input pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAS[15]  ,Returns the Value of the ATDATAS[15] Input Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAS[7]   ,Returns the Value of the ATDATAS[7] Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAS[0]   ,Returns the Value of the ATDATAS[0] Input Pin" "Low,High"
wgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFREADYS     ,Drives the AFREADYS Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDS     ,Drives the ATVALIDS Output Pin" "Low,High"
rgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDS        ,Returns the Value of the ATIDS Input Pins"
rgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESS[1]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESS[0]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 1. "  AFVALIDS     ,Returns the Value of the AFVALIDS Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYS     ,Returns the Value of the ATREADYS Input Pin" "Low,High"
wgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAM[127] ,Drives the ATDATAM[127] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[119] ,Drives the ATDATAM[119] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[111] ,Drives the ATDATAM[111] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[103] ,Drives the ATDATAM[103] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[95]  ,Drives the ATDATAM[95] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[87]  ,Drives the ATDATAM[87] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[79]  ,Drives the ATDATAM[79] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[71]  ,Drives the ATDATAM[71] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[63]  ,Drives the ATDATAM[63] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[55]  ,Drives the ATDATAM[55] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[47]  ,Drives the ATDATAM[47] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[39]  ,Drives the ATDATAM[39] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAM[31]  ,Drives the ATDATAM[31] Output Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAM[23]  ,Drives the ATDATAM[23] Output pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAM[15]  ,Drives the ATDATAM[15] Output Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAM[7]   ,Drives the ATDATAM[7] Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAM[0]   ,Drives the ATDATAM[0] Output Pin" "Low,High"
rgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDM     ,Returns the Value of the AFVALIDM Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYM     ,Returns the Value of the ATREADYM Input Pin" "Low,High"
wgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDM        ,Drives the ATIDM Output Pins"
wgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESM[1]  ,Drives the ATBYTESM[1] Output Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESM[0]  ,Drives the ATBYTESM[0] Output Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYM     ,Drives the AFREADYM Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDM     ,Drives the ATVALIDM Output Pin" "Low,High"
width 13.
rgroup.long 0xfe0++0x13 "Peripheral Identification Registers"
line.long 0x00 "PERIPHID0,Peripheral ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PART_NUMBER[7:0] ,Bits [7:0] of the component part number"
line.long 0x04 "PERIPHID1,Peripheral ID1 Register"
bitfld.long 0x04 4.--7. " JEP106[3:0]      ,Bits [3:0] of the JEDEC identity code" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
bitfld.long 0x04 0.--3. "       PART_NUMBER[11:8] ,Bits [11:8] of the component part number" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "PERIPHID2,Peripheral ID2 Register"
bitfld.long 0x08 4.--7. " REVISION         ,Revision" "Reserved,r0p1,?..."
bitfld.long 0x08 3. "   JEDEC             ,JEDEC assigned value used" "Not used,Used"
bitfld.long 0x08 0.--2. "  JEP106[6:4] ,Bits [6:4] of the JEDEC identity code" "000,001,010,011,100,101,110,111"
line.long 0x0c "PERIPHID3,Peripheral ID3 Register"
hexmask.long.byte 0x0c 4.--7. 1. " REVAND           ,Minor errata fixes"
hexmask.long.byte 0x0c 0.--3. 1. "         CUSTOMER_MODIFIED ,Customer Modified"
rgroup.long 0xfd0++0x3
line.long 0x00 "PERIPHID4,Peripheral ID4 Register"
bitfld.long 0x00 4.--7. " FOURKB_COUNT     ,Total contiguous size of the memory window" "4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB"
bitfld.long 0x00 0.--3. "     JEP106_CONT       ,JEDEC continuation code" "Reserved,Reserved,Reserved,Reserved,5th bank,?..."
rgroup.long 0xff0++0xf "Component Identification Registers"
line.long 0x00 "COMPID0,Component ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PREAMBLE[7:0]    ,Bits [7:0] of the component identification"
line.long 0x04 "COMPID1,Component ID1 Register"
bitfld.long 0x04 4.--7. " CLASS            ,Class of the component" "Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,CoreSight,?..."
bitfld.long 0x04 0.--3. "  PREAMBLE[11:8]    ,Bits [11:8] of the component identification" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "COMPID2,Component ID2 Register"
hexmask.long.byte 0x08 0.--7. 1. " PREAMBLE[23:16]  ,Bits [23:16] of the component identification"
line.long 0x0c "COMPID3,Component ID3 Register"
hexmask.long.byte 0x0c 0.--7. 1. " PREAMBLE[31:24]  ,Bits [31:24] of the component identification"
tree.end
width 11.
tree.end
endif
sif COMPonent.AVAILABLE("etf3")
tree "TMC ETF3"
base e:comp.base("etf3",-1)
width 10.
group.long 0x004++0x3 "TMC Registers"
line.long 0x00 "RSZ,RAM Size Register"
hexmask.long 0x00 0.--30. 1. " RSZ         ,Size of the RAM in 32-bit words"
rgroup.long 0x00c++0x3
line.long 0x00 "STS,Status Register"
bitfld.long 0x00 5. " MEMERR      ,AXI master interface error" "No error,Error"
bitfld.long 0x00 4. "         EMPTY ,No valid trace data in the trace memory" "Not empty,Empty"
bitfld.long 0x00 3. "  FTEMPTY ,All internal pipelines and buffers empty" "Not empty,Empty"
bitfld.long 0x00 2. "  TMCREADY ,Trace capture ready" "Not ready,Ready"
textline "                   "
bitfld.long 0x00 1. " TRIGGERED   ,Trigger event detected" "Not detected,Detected"
bitfld.long 0x00 0. "     FULL  ,Ram full" "Not full,Full"
wgroup.long 0x010++0x3
hide.long 0x00 "RRD,RAM Read Data Register"
in
group.long 0x014++0xb
line.long 0x00 "RRP,RAM Read Pointer Register"
line.long 0x04 "RWP,RAM Write Pointer Register"
line.long 0x08 "TRG,Trigger Counter Register"
group.long 0x020++0x3
line.long 0x00 "CTL,Control Register"
bitfld.long 0x00 0. " TRACECAPTEN ,Trace Capture Enable" "Disabled,Enabled"
wgroup.long 0x024++0x3
line.long 0x00 "RWD,RAM Write Data Register"
group.long 0x028++0x3
line.long 0x00 "MODE,Mode Register"
bitfld.long 0x00 0.--1. " MODE        ,Mode select" "Circular Buffer,Software FIFO,Hardware FIFO,Software FIFO 2"
rgroup.long 0x02c++0x7
line.long 0x00 "LBUFLEVEL,Latched Buffer Fill Level Register"
line.long 0x04 "CBUFLEVEL,Current Buffer Fill Level Register"
group.long 0x034++0x3
line.long 0x00 "BUFWM,Buffer Level Water Mark Register"
group.long 0x038++0x7
line.long 0x00 "RRPHI,RAM Read Pointer High Register"
hexmask.long.byte 0x00 0.--7. 1. " RRPHI         ,Bits [39:32] of the read pointer"
line.long 0x04 "RWPHI,RAM Write Pointer High Register"
hexmask.long.byte 0x04 0.--7. 1. " RWPHI         ,Bits [39:32] of the write pointer"
group.long 0x110++0x3
line.long 0x00 "AXICTL,AXI Control Register"
bitfld.long 0x00 8.--11. " WRBURSTLEN    ,Maximum number of data transfers per burst" "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16"
bitfld.long 0x00 7. "     SGM ,Scatter Gather Mode Enable" "Disabled,Enabled"
bitfld.long 0x00 5. "          CC3 ,Cache allocate on writes enable" "Disabled,Enabled"
bitfld.long 0x00 4. "     CC2 ,Cache allocate on reads enable" "Disabled,Enabled"
textline "                   "
bitfld.long 0x00 3. " CC1 ,Cacheable" "Non-cacheable,Cacheable"
bitfld.long 0x00 2. "    CC0 ,Bufferable" "Non-bufferable,Bufferable"
bitfld.long 0x00 1. "    PC1 ,Secure/Non-secure Access" "Secure,Non-secure"
bitfld.long 0x00 0. "   PC0 ,Normal/Privileged Access" "Normal,Privileged"
group.long 0x118++0x7
line.long 0x00 "DBALO,Data Buffer Address Low Register"
line.long 0x04 "DBAHI,Data Buffer Address High Register"
hexmask.long.byte 0x04 0.--7. 1. " BUFADDRHI     ,Bits [39:32] of the trace buffer address"
rgroup.long 0x300++0x3
line.long 0x00 "FFSR,Formatter and Flush Status Register"
bitfld.long 0x00 1. " FTSTOPPED     ,Formatter Stopped" "No,Yes"
bitfld.long 0x00 0. "    FLINPROG          ,Flush in Progress" "No,Yes"
group.long 0x304++0x7
line.long 0x00 "FFCR,Formatter and Flush Control Register"
bitfld.long 0x00 14. " DRAINBUFFER   ,Drain trace data through ATB master interface" "No,Yes"
bitfld.long 0x00 13. "    STOPONTRIGEVT     ,Stop trace capture on trigger event" "No,Yes"
bitfld.long 0x00 12. "   STOPONFL      ,Stop formatter on completion of a flush operation" "No,Yes"
bitfld.long 0x00 10. "   TRIGONFL      ,Trigger on flush completion" "No,Yes"
textline "                   "
bitfld.long 0x00 9. " TRIGONTRIGEVT ,Trigger on a trigger event" "No,Yes"
bitfld.long 0x00 8. "    TRIGONTRIGIN      ,Trigger on TRIGIN being asserted" "No,Yes"
bitfld.long 0x00 6. "   FLUSHMAN      ,Manual Flush" "No,Yes"
bitfld.long 0x00 5. "   FONTRIGEVT    ,Flush on trigger event" "No,Yes"
textline "                   "
bitfld.long 0x00 4. " FONFLIN       ,Flush on FLUSHIN feature" "No,Yes"
bitfld.long 0x00 1. "    ENTI              ,Insertion of triggers in the formatted trace stream enable" "No,Yes"
bitfld.long 0x00 0. "   ENFT          ,Formatting enable" "No,Yes"
line.long 0x04 "PSCR,Periodic Synchronization Counter Register"
bitfld.long 0x04 5. " EMBEDSYNC     ,Embed Frame Sync packets" "No,Yes"
bitfld.long 0x04 0.--4. "    PSCOUNT           ,Reload value of the Synchronization Counter" "Disabled,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,128 bytes,256 bytes,512 bytes,1 KB,2 KB,4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB,?..."
width 13.
tree "Coresight Management Registers"
group 0xFA0--0xFA8
line.long 0x000 "CTS, Claim Tag Set"
bitfld.long 0x000 7. " SETCTV7   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 6. "        SETCTV6 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 5. " SETCTV5   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 4. "        SETCTV4 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 3. " SETCTV3   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 2. "        SETCTV2 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 1. " SETCTV1   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 0. "        SETCTV0 ,Set Claim Tag Value" "No effect,Set"
line.long 0x004 "CTC, Claim Tag Clear"
bitfld.long 0x004 7. " CLRCTV7   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 6. "        CLRCTV6 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 5. " CLRCTV5   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 4. "        CLRCTV4 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 3. " CLRCTV3   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 2. "        CLRCTV2 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 1. " CLRCTV1   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 0. "        CLRCTV0 ,Clear Claim Tag Value" "No effect,Cleared"
wgroup.long 0xfb0++0x3
line.long 0x00 "LAR,Lock Access Register"
rgroup.long 0xfb4++0x7
line.long 0x00 "LSR,Lock Status Register"
bitfld.long 0x00 2. " LOCKTYPE         ,32-bit Lock Access Register Implemented" "32-bit,?..."
bitfld.long 0x00 1. "         LOCKGRANT ,Lock Status" "Unlocked,Locked"
bitfld.long 0x00 0. "         LOCKEXIST  ,Lock control mechanism present" "Not present,Present"
line.long 0x04 "AUTHSTATUS,Authentication Status Register"
bitfld.long 0x04 6.--7. " SNID   ,Security level for secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 4.--5. "  SID  ,Security level for secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
bitfld.long 0x04 2.--3. "  NSNID ,Security level for non-secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 0.--1. "  NSID ,Security level for non-secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
rgroup.long 0xfc8++0x3
line.long 0x00 "DEVID,Device Configuration Register"
bitfld.long 0x00 11.--13. " WBUF_DEPTH  ,Number of entries in the write buffer (in ETR)" "Reserved,Reserved,4 entries,8 entries,16 entries,32 entries,?..."
bitfld.long 0x00 8.--10. "  MEMWIDTH  ,Memory interface databus width" "Reserved,Reserved,32-bit,64-bit,128-bit,256-bit,?..."
bitfld.long 0x00 6.--7. "    CONFIGTYPE ,Configuration type" "ETB,ETR,ETF,?..."
bitfld.long 0x00 5. "    CLKSCHEME ,RAM clocking scheme" "Synchronous,?..."
textline "                    "
bitfld.long 0x00 0.--4. "   ATBINPORTCOUNT   ,Type or number of ATB multiplexing" "No multiplexing,?..."
width 13.
if ((d.l(e:comp.base("etf3",-1)+0xfc8)&0xc0)==(0x00||0x40))
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,RAM->APB,?..."
bitfld.long 0x00 0.--3. "                    MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Trace sink,?..."
elif ((d.l(e:comp.base("etf3",-1)+0xfc8)&0xc0)==0x80)
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,Reserved,ATB slave->RAM->ATB master,?..."
bitfld.long 0x00 0.--3. "  MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Reserved,Trace link,?..."
else
hgroup.long 0xfcc++0x3
hide.long 0x00 "DEVTYPE,Device Type Identifier Register"
endif
group 0xf00--0xf03 "Integration Test Registers"
line.long 0x000 "ITCTRL,Integration Mode Control"
bitfld.long 0x000 0. " ENABLE       ,Enable Integration mode" "no,yes"
wgroup.long 0xee0++0x3
line.long 0x00 "ITMISCOP0,Integration Test Miscellaneous Output Register 0"
bitfld.long 0x00 1. " FULL          ,FULL output value set" "0,1"
bitfld.long 0x00 0. "     ACQCOMP       ,ACQCOMP output value set" "0,1"
rgroup.long 0xee8++0x3
line.long 0x00 "ITTRFLIN,Integration Test Trigger In and Flush In Register"
bitfld.long 0x00 1. " FLUSHIN       ,FLUSHIN output value" "0,1"
bitfld.long 0x00 0. "     TRIGIN        ,TRIGIN output value" "0,1"
rgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAS[127] ,Returns the Value of the ATDATAS[127] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[119] ,Returns the Value of the ATDATAS[119] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[111] ,Returns the Value of the ATDATAS[111] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[103] ,Returns the Value of the ATDATAS[103] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[95]  ,Returns the Value of the ATDATAS[95] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[87]  ,Returns the Value of the ATDATAS[87] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[79]  ,Returns the Value of the ATDATAS[79] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[71]  ,Returns the Value of the ATDATAS[71] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[63]  ,Returns the Value of the ATDATAS[63] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[55]  ,Returns the Value of the ATDATAS[55] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[47]  ,Returns the Value of the ATDATAS[47] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[39]  ,Returns the Value of the ATDATAS[39] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAS[31]  ,Returns the Value of the ATDATAS[31] Input Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAS[23]  ,Returns the Value of the ATDATAS[23] Input pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAS[15]  ,Returns the Value of the ATDATAS[15] Input Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAS[7]   ,Returns the Value of the ATDATAS[7] Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAS[0]   ,Returns the Value of the ATDATAS[0] Input Pin" "Low,High"
wgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFREADYS     ,Drives the AFREADYS Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDS     ,Drives the ATVALIDS Output Pin" "Low,High"
rgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDS        ,Returns the Value of the ATIDS Input Pins"
rgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESS[1]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESS[0]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 1. "  AFVALIDS     ,Returns the Value of the AFVALIDS Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYS     ,Returns the Value of the ATREADYS Input Pin" "Low,High"
wgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAM[127] ,Drives the ATDATAM[127] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[119] ,Drives the ATDATAM[119] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[111] ,Drives the ATDATAM[111] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[103] ,Drives the ATDATAM[103] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[95]  ,Drives the ATDATAM[95] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[87]  ,Drives the ATDATAM[87] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[79]  ,Drives the ATDATAM[79] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[71]  ,Drives the ATDATAM[71] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[63]  ,Drives the ATDATAM[63] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[55]  ,Drives the ATDATAM[55] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[47]  ,Drives the ATDATAM[47] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[39]  ,Drives the ATDATAM[39] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAM[31]  ,Drives the ATDATAM[31] Output Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAM[23]  ,Drives the ATDATAM[23] Output pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAM[15]  ,Drives the ATDATAM[15] Output Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAM[7]   ,Drives the ATDATAM[7] Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAM[0]   ,Drives the ATDATAM[0] Output Pin" "Low,High"
rgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDM     ,Returns the Value of the AFVALIDM Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYM     ,Returns the Value of the ATREADYM Input Pin" "Low,High"
wgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDM        ,Drives the ATIDM Output Pins"
wgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESM[1]  ,Drives the ATBYTESM[1] Output Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESM[0]  ,Drives the ATBYTESM[0] Output Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYM     ,Drives the AFREADYM Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDM     ,Drives the ATVALIDM Output Pin" "Low,High"
width 13.
rgroup.long 0xfe0++0x13 "Peripheral Identification Registers"
line.long 0x00 "PERIPHID0,Peripheral ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PART_NUMBER[7:0] ,Bits [7:0] of the component part number"
line.long 0x04 "PERIPHID1,Peripheral ID1 Register"
bitfld.long 0x04 4.--7. " JEP106[3:0]      ,Bits [3:0] of the JEDEC identity code" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
bitfld.long 0x04 0.--3. "       PART_NUMBER[11:8] ,Bits [11:8] of the component part number" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "PERIPHID2,Peripheral ID2 Register"
bitfld.long 0x08 4.--7. " REVISION         ,Revision" "Reserved,r0p1,?..."
bitfld.long 0x08 3. "   JEDEC             ,JEDEC assigned value used" "Not used,Used"
bitfld.long 0x08 0.--2. "  JEP106[6:4] ,Bits [6:4] of the JEDEC identity code" "000,001,010,011,100,101,110,111"
line.long 0x0c "PERIPHID3,Peripheral ID3 Register"
hexmask.long.byte 0x0c 4.--7. 1. " REVAND           ,Minor errata fixes"
hexmask.long.byte 0x0c 0.--3. 1. "         CUSTOMER_MODIFIED ,Customer Modified"
rgroup.long 0xfd0++0x3
line.long 0x00 "PERIPHID4,Peripheral ID4 Register"
bitfld.long 0x00 4.--7. " FOURKB_COUNT     ,Total contiguous size of the memory window" "4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB"
bitfld.long 0x00 0.--3. "     JEP106_CONT       ,JEDEC continuation code" "Reserved,Reserved,Reserved,Reserved,5th bank,?..."
rgroup.long 0xff0++0xf "Component Identification Registers"
line.long 0x00 "COMPID0,Component ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PREAMBLE[7:0]    ,Bits [7:0] of the component identification"
line.long 0x04 "COMPID1,Component ID1 Register"
bitfld.long 0x04 4.--7. " CLASS            ,Class of the component" "Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,CoreSight,?..."
bitfld.long 0x04 0.--3. "  PREAMBLE[11:8]    ,Bits [11:8] of the component identification" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "COMPID2,Component ID2 Register"
hexmask.long.byte 0x08 0.--7. 1. " PREAMBLE[23:16]  ,Bits [23:16] of the component identification"
line.long 0x0c "COMPID3,Component ID3 Register"
hexmask.long.byte 0x0c 0.--7. 1. " PREAMBLE[31:24]  ,Bits [31:24] of the component identification"
tree.end
width 11.
tree.end
endif
sif COMPonent.AVAILABLE("etf4")
tree "TMC ETF4"
base e:comp.base("etf4",-1)
width 10.
group.long 0x004++0x3 "TMC Registers"
line.long 0x00 "RSZ,RAM Size Register"
hexmask.long 0x00 0.--30. 1. " RSZ         ,Size of the RAM in 32-bit words"
rgroup.long 0x00c++0x3
line.long 0x00 "STS,Status Register"
bitfld.long 0x00 5. " MEMERR      ,AXI master interface error" "No error,Error"
bitfld.long 0x00 4. "         EMPTY ,No valid trace data in the trace memory" "Not empty,Empty"
bitfld.long 0x00 3. "  FTEMPTY ,All internal pipelines and buffers empty" "Not empty,Empty"
bitfld.long 0x00 2. "  TMCREADY ,Trace capture ready" "Not ready,Ready"
textline "                   "
bitfld.long 0x00 1. " TRIGGERED   ,Trigger event detected" "Not detected,Detected"
bitfld.long 0x00 0. "     FULL  ,Ram full" "Not full,Full"
wgroup.long 0x010++0x3
hide.long 0x00 "RRD,RAM Read Data Register"
in
group.long 0x014++0xb
line.long 0x00 "RRP,RAM Read Pointer Register"
line.long 0x04 "RWP,RAM Write Pointer Register"
line.long 0x08 "TRG,Trigger Counter Register"
group.long 0x020++0x3
line.long 0x00 "CTL,Control Register"
bitfld.long 0x00 0. " TRACECAPTEN ,Trace Capture Enable" "Disabled,Enabled"
wgroup.long 0x024++0x3
line.long 0x00 "RWD,RAM Write Data Register"
group.long 0x028++0x3
line.long 0x00 "MODE,Mode Register"
bitfld.long 0x00 0.--1. " MODE        ,Mode select" "Circular Buffer,Software FIFO,Hardware FIFO,Software FIFO 2"
rgroup.long 0x02c++0x7
line.long 0x00 "LBUFLEVEL,Latched Buffer Fill Level Register"
line.long 0x04 "CBUFLEVEL,Current Buffer Fill Level Register"
group.long 0x034++0x3
line.long 0x00 "BUFWM,Buffer Level Water Mark Register"
group.long 0x038++0x7
line.long 0x00 "RRPHI,RAM Read Pointer High Register"
hexmask.long.byte 0x00 0.--7. 1. " RRPHI         ,Bits [39:32] of the read pointer"
line.long 0x04 "RWPHI,RAM Write Pointer High Register"
hexmask.long.byte 0x04 0.--7. 1. " RWPHI         ,Bits [39:32] of the write pointer"
group.long 0x110++0x3
line.long 0x00 "AXICTL,AXI Control Register"
bitfld.long 0x00 8.--11. " WRBURSTLEN    ,Maximum number of data transfers per burst" "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16"
bitfld.long 0x00 7. "     SGM ,Scatter Gather Mode Enable" "Disabled,Enabled"
bitfld.long 0x00 5. "          CC3 ,Cache allocate on writes enable" "Disabled,Enabled"
bitfld.long 0x00 4. "     CC2 ,Cache allocate on reads enable" "Disabled,Enabled"
textline "                   "
bitfld.long 0x00 3. " CC1 ,Cacheable" "Non-cacheable,Cacheable"
bitfld.long 0x00 2. "    CC0 ,Bufferable" "Non-bufferable,Bufferable"
bitfld.long 0x00 1. "    PC1 ,Secure/Non-secure Access" "Secure,Non-secure"
bitfld.long 0x00 0. "   PC0 ,Normal/Privileged Access" "Normal,Privileged"
group.long 0x118++0x7
line.long 0x00 "DBALO,Data Buffer Address Low Register"
line.long 0x04 "DBAHI,Data Buffer Address High Register"
hexmask.long.byte 0x04 0.--7. 1. " BUFADDRHI     ,Bits [39:32] of the trace buffer address"
rgroup.long 0x300++0x3
line.long 0x00 "FFSR,Formatter and Flush Status Register"
bitfld.long 0x00 1. " FTSTOPPED     ,Formatter Stopped" "No,Yes"
bitfld.long 0x00 0. "    FLINPROG          ,Flush in Progress" "No,Yes"
group.long 0x304++0x7
line.long 0x00 "FFCR,Formatter and Flush Control Register"
bitfld.long 0x00 14. " DRAINBUFFER   ,Drain trace data through ATB master interface" "No,Yes"
bitfld.long 0x00 13. "    STOPONTRIGEVT     ,Stop trace capture on trigger event" "No,Yes"
bitfld.long 0x00 12. "   STOPONFL      ,Stop formatter on completion of a flush operation" "No,Yes"
bitfld.long 0x00 10. "   TRIGONFL      ,Trigger on flush completion" "No,Yes"
textline "                   "
bitfld.long 0x00 9. " TRIGONTRIGEVT ,Trigger on a trigger event" "No,Yes"
bitfld.long 0x00 8. "    TRIGONTRIGIN      ,Trigger on TRIGIN being asserted" "No,Yes"
bitfld.long 0x00 6. "   FLUSHMAN      ,Manual Flush" "No,Yes"
bitfld.long 0x00 5. "   FONTRIGEVT    ,Flush on trigger event" "No,Yes"
textline "                   "
bitfld.long 0x00 4. " FONFLIN       ,Flush on FLUSHIN feature" "No,Yes"
bitfld.long 0x00 1. "    ENTI              ,Insertion of triggers in the formatted trace stream enable" "No,Yes"
bitfld.long 0x00 0. "   ENFT          ,Formatting enable" "No,Yes"
line.long 0x04 "PSCR,Periodic Synchronization Counter Register"
bitfld.long 0x04 5. " EMBEDSYNC     ,Embed Frame Sync packets" "No,Yes"
bitfld.long 0x04 0.--4. "    PSCOUNT           ,Reload value of the Synchronization Counter" "Disabled,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,128 bytes,256 bytes,512 bytes,1 KB,2 KB,4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB,?..."
width 13.
tree "Coresight Management Registers"
group 0xFA0--0xFA8
line.long 0x000 "CTS, Claim Tag Set"
bitfld.long 0x000 7. " SETCTV7   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 6. "        SETCTV6 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 5. " SETCTV5   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 4. "        SETCTV4 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 3. " SETCTV3   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 2. "        SETCTV2 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 1. " SETCTV1   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 0. "        SETCTV0 ,Set Claim Tag Value" "No effect,Set"
line.long 0x004 "CTC, Claim Tag Clear"
bitfld.long 0x004 7. " CLRCTV7   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 6. "        CLRCTV6 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 5. " CLRCTV5   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 4. "        CLRCTV4 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 3. " CLRCTV3   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 2. "        CLRCTV2 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 1. " CLRCTV1   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 0. "        CLRCTV0 ,Clear Claim Tag Value" "No effect,Cleared"
wgroup.long 0xfb0++0x3
line.long 0x00 "LAR,Lock Access Register"
rgroup.long 0xfb4++0x7
line.long 0x00 "LSR,Lock Status Register"
bitfld.long 0x00 2. " LOCKTYPE         ,32-bit Lock Access Register Implemented" "32-bit,?..."
bitfld.long 0x00 1. "         LOCKGRANT ,Lock Status" "Unlocked,Locked"
bitfld.long 0x00 0. "         LOCKEXIST  ,Lock control mechanism present" "Not present,Present"
line.long 0x04 "AUTHSTATUS,Authentication Status Register"
bitfld.long 0x04 6.--7. " SNID   ,Security level for secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 4.--5. "  SID  ,Security level for secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
bitfld.long 0x04 2.--3. "  NSNID ,Security level for non-secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 0.--1. "  NSID ,Security level for non-secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
rgroup.long 0xfc8++0x3
line.long 0x00 "DEVID,Device Configuration Register"
bitfld.long 0x00 11.--13. " WBUF_DEPTH  ,Number of entries in the write buffer (in ETR)" "Reserved,Reserved,4 entries,8 entries,16 entries,32 entries,?..."
bitfld.long 0x00 8.--10. "  MEMWIDTH  ,Memory interface databus width" "Reserved,Reserved,32-bit,64-bit,128-bit,256-bit,?..."
bitfld.long 0x00 6.--7. "    CONFIGTYPE ,Configuration type" "ETB,ETR,ETF,?..."
bitfld.long 0x00 5. "    CLKSCHEME ,RAM clocking scheme" "Synchronous,?..."
textline "                    "
bitfld.long 0x00 0.--4. "   ATBINPORTCOUNT   ,Type or number of ATB multiplexing" "No multiplexing,?..."
width 13.
if ((d.l(e:comp.base("etf4",-1)+0xfc8)&0xc0)==(0x00||0x40))
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,RAM->APB,?..."
bitfld.long 0x00 0.--3. "                    MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Trace sink,?..."
elif ((d.l(e:comp.base("etf4",-1)+0xfc8)&0xc0)==0x80)
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,Reserved,ATB slave->RAM->ATB master,?..."
bitfld.long 0x00 0.--3. "  MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Reserved,Trace link,?..."
else
hgroup.long 0xfcc++0x3
hide.long 0x00 "DEVTYPE,Device Type Identifier Register"
endif
group 0xf00--0xf03 "Integration Test Registers"
line.long 0x000 "ITCTRL,Integration Mode Control"
bitfld.long 0x000 0. " ENABLE       ,Enable Integration mode" "no,yes"
wgroup.long 0xee0++0x3
line.long 0x00 "ITMISCOP0,Integration Test Miscellaneous Output Register 0"
bitfld.long 0x00 1. " FULL          ,FULL output value set" "0,1"
bitfld.long 0x00 0. "     ACQCOMP       ,ACQCOMP output value set" "0,1"
rgroup.long 0xee8++0x3
line.long 0x00 "ITTRFLIN,Integration Test Trigger In and Flush In Register"
bitfld.long 0x00 1. " FLUSHIN       ,FLUSHIN output value" "0,1"
bitfld.long 0x00 0. "     TRIGIN        ,TRIGIN output value" "0,1"
rgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAS[127] ,Returns the Value of the ATDATAS[127] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[119] ,Returns the Value of the ATDATAS[119] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[111] ,Returns the Value of the ATDATAS[111] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[103] ,Returns the Value of the ATDATAS[103] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[95]  ,Returns the Value of the ATDATAS[95] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[87]  ,Returns the Value of the ATDATAS[87] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[79]  ,Returns the Value of the ATDATAS[79] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[71]  ,Returns the Value of the ATDATAS[71] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[63]  ,Returns the Value of the ATDATAS[63] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[55]  ,Returns the Value of the ATDATAS[55] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[47]  ,Returns the Value of the ATDATAS[47] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[39]  ,Returns the Value of the ATDATAS[39] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAS[31]  ,Returns the Value of the ATDATAS[31] Input Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAS[23]  ,Returns the Value of the ATDATAS[23] Input pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAS[15]  ,Returns the Value of the ATDATAS[15] Input Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAS[7]   ,Returns the Value of the ATDATAS[7] Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAS[0]   ,Returns the Value of the ATDATAS[0] Input Pin" "Low,High"
wgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFREADYS     ,Drives the AFREADYS Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDS     ,Drives the ATVALIDS Output Pin" "Low,High"
rgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDS        ,Returns the Value of the ATIDS Input Pins"
rgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESS[1]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESS[0]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 1. "  AFVALIDS     ,Returns the Value of the AFVALIDS Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYS     ,Returns the Value of the ATREADYS Input Pin" "Low,High"
wgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAM[127] ,Drives the ATDATAM[127] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[119] ,Drives the ATDATAM[119] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[111] ,Drives the ATDATAM[111] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[103] ,Drives the ATDATAM[103] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[95]  ,Drives the ATDATAM[95] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[87]  ,Drives the ATDATAM[87] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[79]  ,Drives the ATDATAM[79] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[71]  ,Drives the ATDATAM[71] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[63]  ,Drives the ATDATAM[63] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[55]  ,Drives the ATDATAM[55] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[47]  ,Drives the ATDATAM[47] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[39]  ,Drives the ATDATAM[39] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAM[31]  ,Drives the ATDATAM[31] Output Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAM[23]  ,Drives the ATDATAM[23] Output pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAM[15]  ,Drives the ATDATAM[15] Output Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAM[7]   ,Drives the ATDATAM[7] Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAM[0]   ,Drives the ATDATAM[0] Output Pin" "Low,High"
rgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDM     ,Returns the Value of the AFVALIDM Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYM     ,Returns the Value of the ATREADYM Input Pin" "Low,High"
wgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDM        ,Drives the ATIDM Output Pins"
wgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESM[1]  ,Drives the ATBYTESM[1] Output Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESM[0]  ,Drives the ATBYTESM[0] Output Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYM     ,Drives the AFREADYM Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDM     ,Drives the ATVALIDM Output Pin" "Low,High"
width 13.
rgroup.long 0xfe0++0x13 "Peripheral Identification Registers"
line.long 0x00 "PERIPHID0,Peripheral ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PART_NUMBER[7:0] ,Bits [7:0] of the component part number"
line.long 0x04 "PERIPHID1,Peripheral ID1 Register"
bitfld.long 0x04 4.--7. " JEP106[3:0]      ,Bits [3:0] of the JEDEC identity code" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
bitfld.long 0x04 0.--3. "       PART_NUMBER[11:8] ,Bits [11:8] of the component part number" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "PERIPHID2,Peripheral ID2 Register"
bitfld.long 0x08 4.--7. " REVISION         ,Revision" "Reserved,r0p1,?..."
bitfld.long 0x08 3. "   JEDEC             ,JEDEC assigned value used" "Not used,Used"
bitfld.long 0x08 0.--2. "  JEP106[6:4] ,Bits [6:4] of the JEDEC identity code" "000,001,010,011,100,101,110,111"
line.long 0x0c "PERIPHID3,Peripheral ID3 Register"
hexmask.long.byte 0x0c 4.--7. 1. " REVAND           ,Minor errata fixes"
hexmask.long.byte 0x0c 0.--3. 1. "         CUSTOMER_MODIFIED ,Customer Modified"
rgroup.long 0xfd0++0x3
line.long 0x00 "PERIPHID4,Peripheral ID4 Register"
bitfld.long 0x00 4.--7. " FOURKB_COUNT     ,Total contiguous size of the memory window" "4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB"
bitfld.long 0x00 0.--3. "     JEP106_CONT       ,JEDEC continuation code" "Reserved,Reserved,Reserved,Reserved,5th bank,?..."
rgroup.long 0xff0++0xf "Component Identification Registers"
line.long 0x00 "COMPID0,Component ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PREAMBLE[7:0]    ,Bits [7:0] of the component identification"
line.long 0x04 "COMPID1,Component ID1 Register"
bitfld.long 0x04 4.--7. " CLASS            ,Class of the component" "Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,CoreSight,?..."
bitfld.long 0x04 0.--3. "  PREAMBLE[11:8]    ,Bits [11:8] of the component identification" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "COMPID2,Component ID2 Register"
hexmask.long.byte 0x08 0.--7. 1. " PREAMBLE[23:16]  ,Bits [23:16] of the component identification"
line.long 0x0c "COMPID3,Component ID3 Register"
hexmask.long.byte 0x0c 0.--7. 1. " PREAMBLE[31:24]  ,Bits [31:24] of the component identification"
tree.end
width 11.
tree.end
endif
sif COMPonent.AVAILABLE("etf5")
tree "TMC ETF5"
base e:comp.base("etf5",-1)
width 10.
group.long 0x004++0x3 "TMC Registers"
line.long 0x00 "RSZ,RAM Size Register"
hexmask.long 0x00 0.--30. 1. " RSZ         ,Size of the RAM in 32-bit words"
rgroup.long 0x00c++0x3
line.long 0x00 "STS,Status Register"
bitfld.long 0x00 5. " MEMERR      ,AXI master interface error" "No error,Error"
bitfld.long 0x00 4. "         EMPTY ,No valid trace data in the trace memory" "Not empty,Empty"
bitfld.long 0x00 3. "  FTEMPTY ,All internal pipelines and buffers empty" "Not empty,Empty"
bitfld.long 0x00 2. "  TMCREADY ,Trace capture ready" "Not ready,Ready"
textline "                   "
bitfld.long 0x00 1. " TRIGGERED   ,Trigger event detected" "Not detected,Detected"
bitfld.long 0x00 0. "     FULL  ,Ram full" "Not full,Full"
wgroup.long 0x010++0x3
hide.long 0x00 "RRD,RAM Read Data Register"
in
group.long 0x014++0xb
line.long 0x00 "RRP,RAM Read Pointer Register"
line.long 0x04 "RWP,RAM Write Pointer Register"
line.long 0x08 "TRG,Trigger Counter Register"
group.long 0x020++0x3
line.long 0x00 "CTL,Control Register"
bitfld.long 0x00 0. " TRACECAPTEN ,Trace Capture Enable" "Disabled,Enabled"
wgroup.long 0x024++0x3
line.long 0x00 "RWD,RAM Write Data Register"
group.long 0x028++0x3
line.long 0x00 "MODE,Mode Register"
bitfld.long 0x00 0.--1. " MODE        ,Mode select" "Circular Buffer,Software FIFO,Hardware FIFO,Software FIFO 2"
rgroup.long 0x02c++0x7
line.long 0x00 "LBUFLEVEL,Latched Buffer Fill Level Register"
line.long 0x04 "CBUFLEVEL,Current Buffer Fill Level Register"
group.long 0x034++0x3
line.long 0x00 "BUFWM,Buffer Level Water Mark Register"
group.long 0x038++0x7
line.long 0x00 "RRPHI,RAM Read Pointer High Register"
hexmask.long.byte 0x00 0.--7. 1. " RRPHI         ,Bits [39:32] of the read pointer"
line.long 0x04 "RWPHI,RAM Write Pointer High Register"
hexmask.long.byte 0x04 0.--7. 1. " RWPHI         ,Bits [39:32] of the write pointer"
group.long 0x110++0x3
line.long 0x00 "AXICTL,AXI Control Register"
bitfld.long 0x00 8.--11. " WRBURSTLEN    ,Maximum number of data transfers per burst" "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16"
bitfld.long 0x00 7. "     SGM ,Scatter Gather Mode Enable" "Disabled,Enabled"
bitfld.long 0x00 5. "          CC3 ,Cache allocate on writes enable" "Disabled,Enabled"
bitfld.long 0x00 4. "     CC2 ,Cache allocate on reads enable" "Disabled,Enabled"
textline "                   "
bitfld.long 0x00 3. " CC1 ,Cacheable" "Non-cacheable,Cacheable"
bitfld.long 0x00 2. "    CC0 ,Bufferable" "Non-bufferable,Bufferable"
bitfld.long 0x00 1. "    PC1 ,Secure/Non-secure Access" "Secure,Non-secure"
bitfld.long 0x00 0. "   PC0 ,Normal/Privileged Access" "Normal,Privileged"
group.long 0x118++0x7
line.long 0x00 "DBALO,Data Buffer Address Low Register"
line.long 0x04 "DBAHI,Data Buffer Address High Register"
hexmask.long.byte 0x04 0.--7. 1. " BUFADDRHI     ,Bits [39:32] of the trace buffer address"
rgroup.long 0x300++0x3
line.long 0x00 "FFSR,Formatter and Flush Status Register"
bitfld.long 0x00 1. " FTSTOPPED     ,Formatter Stopped" "No,Yes"
bitfld.long 0x00 0. "    FLINPROG          ,Flush in Progress" "No,Yes"
group.long 0x304++0x7
line.long 0x00 "FFCR,Formatter and Flush Control Register"
bitfld.long 0x00 14. " DRAINBUFFER   ,Drain trace data through ATB master interface" "No,Yes"
bitfld.long 0x00 13. "    STOPONTRIGEVT     ,Stop trace capture on trigger event" "No,Yes"
bitfld.long 0x00 12. "   STOPONFL      ,Stop formatter on completion of a flush operation" "No,Yes"
bitfld.long 0x00 10. "   TRIGONFL      ,Trigger on flush completion" "No,Yes"
textline "                   "
bitfld.long 0x00 9. " TRIGONTRIGEVT ,Trigger on a trigger event" "No,Yes"
bitfld.long 0x00 8. "    TRIGONTRIGIN      ,Trigger on TRIGIN being asserted" "No,Yes"
bitfld.long 0x00 6. "   FLUSHMAN      ,Manual Flush" "No,Yes"
bitfld.long 0x00 5. "   FONTRIGEVT    ,Flush on trigger event" "No,Yes"
textline "                   "
bitfld.long 0x00 4. " FONFLIN       ,Flush on FLUSHIN feature" "No,Yes"
bitfld.long 0x00 1. "    ENTI              ,Insertion of triggers in the formatted trace stream enable" "No,Yes"
bitfld.long 0x00 0. "   ENFT          ,Formatting enable" "No,Yes"
line.long 0x04 "PSCR,Periodic Synchronization Counter Register"
bitfld.long 0x04 5. " EMBEDSYNC     ,Embed Frame Sync packets" "No,Yes"
bitfld.long 0x04 0.--4. "    PSCOUNT           ,Reload value of the Synchronization Counter" "Disabled,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,128 bytes,256 bytes,512 bytes,1 KB,2 KB,4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB,?..."
width 13.
tree "Coresight Management Registers"
group 0xFA0--0xFA8
line.long 0x000 "CTS, Claim Tag Set"
bitfld.long 0x000 7. " SETCTV7   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 6. "        SETCTV6 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 5. " SETCTV5   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 4. "        SETCTV4 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 3. " SETCTV3   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 2. "        SETCTV2 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 1. " SETCTV1   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 0. "        SETCTV0 ,Set Claim Tag Value" "No effect,Set"
line.long 0x004 "CTC, Claim Tag Clear"
bitfld.long 0x004 7. " CLRCTV7   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 6. "        CLRCTV6 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 5. " CLRCTV5   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 4. "        CLRCTV4 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 3. " CLRCTV3   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 2. "        CLRCTV2 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 1. " CLRCTV1   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 0. "        CLRCTV0 ,Clear Claim Tag Value" "No effect,Cleared"
wgroup.long 0xfb0++0x3
line.long 0x00 "LAR,Lock Access Register"
rgroup.long 0xfb4++0x7
line.long 0x00 "LSR,Lock Status Register"
bitfld.long 0x00 2. " LOCKTYPE         ,32-bit Lock Access Register Implemented" "32-bit,?..."
bitfld.long 0x00 1. "         LOCKGRANT ,Lock Status" "Unlocked,Locked"
bitfld.long 0x00 0. "         LOCKEXIST  ,Lock control mechanism present" "Not present,Present"
line.long 0x04 "AUTHSTATUS,Authentication Status Register"
bitfld.long 0x04 6.--7. " SNID   ,Security level for secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 4.--5. "  SID  ,Security level for secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
bitfld.long 0x04 2.--3. "  NSNID ,Security level for non-secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 0.--1. "  NSID ,Security level for non-secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
rgroup.long 0xfc8++0x3
line.long 0x00 "DEVID,Device Configuration Register"
bitfld.long 0x00 11.--13. " WBUF_DEPTH  ,Number of entries in the write buffer (in ETR)" "Reserved,Reserved,4 entries,8 entries,16 entries,32 entries,?..."
bitfld.long 0x00 8.--10. "  MEMWIDTH  ,Memory interface databus width" "Reserved,Reserved,32-bit,64-bit,128-bit,256-bit,?..."
bitfld.long 0x00 6.--7. "    CONFIGTYPE ,Configuration type" "ETB,ETR,ETF,?..."
bitfld.long 0x00 5. "    CLKSCHEME ,RAM clocking scheme" "Synchronous,?..."
textline "                    "
bitfld.long 0x00 0.--4. "   ATBINPORTCOUNT   ,Type or number of ATB multiplexing" "No multiplexing,?..."
width 13.
if ((d.l(e:comp.base("etf5",-1)+0xfc8)&0xc0)==(0x00||0x40))
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,RAM->APB,?..."
bitfld.long 0x00 0.--3. "                    MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Trace sink,?..."
elif ((d.l(e:comp.base("etf5",-1)+0xfc8)&0xc0)==0x80)
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,Reserved,ATB slave->RAM->ATB master,?..."
bitfld.long 0x00 0.--3. "  MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Reserved,Trace link,?..."
else
hgroup.long 0xfcc++0x3
hide.long 0x00 "DEVTYPE,Device Type Identifier Register"
endif
group 0xf00--0xf03 "Integration Test Registers"
line.long 0x000 "ITCTRL,Integration Mode Control"
bitfld.long 0x000 0. " ENABLE       ,Enable Integration mode" "no,yes"
wgroup.long 0xee0++0x3
line.long 0x00 "ITMISCOP0,Integration Test Miscellaneous Output Register 0"
bitfld.long 0x00 1. " FULL          ,FULL output value set" "0,1"
bitfld.long 0x00 0. "     ACQCOMP       ,ACQCOMP output value set" "0,1"
rgroup.long 0xee8++0x3
line.long 0x00 "ITTRFLIN,Integration Test Trigger In and Flush In Register"
bitfld.long 0x00 1. " FLUSHIN       ,FLUSHIN output value" "0,1"
bitfld.long 0x00 0. "     TRIGIN        ,TRIGIN output value" "0,1"
rgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAS[127] ,Returns the Value of the ATDATAS[127] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[119] ,Returns the Value of the ATDATAS[119] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[111] ,Returns the Value of the ATDATAS[111] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[103] ,Returns the Value of the ATDATAS[103] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[95]  ,Returns the Value of the ATDATAS[95] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[87]  ,Returns the Value of the ATDATAS[87] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[79]  ,Returns the Value of the ATDATAS[79] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[71]  ,Returns the Value of the ATDATAS[71] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[63]  ,Returns the Value of the ATDATAS[63] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[55]  ,Returns the Value of the ATDATAS[55] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[47]  ,Returns the Value of the ATDATAS[47] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[39]  ,Returns the Value of the ATDATAS[39] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAS[31]  ,Returns the Value of the ATDATAS[31] Input Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAS[23]  ,Returns the Value of the ATDATAS[23] Input pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAS[15]  ,Returns the Value of the ATDATAS[15] Input Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAS[7]   ,Returns the Value of the ATDATAS[7] Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAS[0]   ,Returns the Value of the ATDATAS[0] Input Pin" "Low,High"
wgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFREADYS     ,Drives the AFREADYS Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDS     ,Drives the ATVALIDS Output Pin" "Low,High"
rgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDS        ,Returns the Value of the ATIDS Input Pins"
rgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESS[1]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESS[0]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 1. "  AFVALIDS     ,Returns the Value of the AFVALIDS Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYS     ,Returns the Value of the ATREADYS Input Pin" "Low,High"
wgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAM[127] ,Drives the ATDATAM[127] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[119] ,Drives the ATDATAM[119] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[111] ,Drives the ATDATAM[111] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[103] ,Drives the ATDATAM[103] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[95]  ,Drives the ATDATAM[95] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[87]  ,Drives the ATDATAM[87] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[79]  ,Drives the ATDATAM[79] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[71]  ,Drives the ATDATAM[71] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[63]  ,Drives the ATDATAM[63] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[55]  ,Drives the ATDATAM[55] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[47]  ,Drives the ATDATAM[47] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[39]  ,Drives the ATDATAM[39] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAM[31]  ,Drives the ATDATAM[31] Output Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAM[23]  ,Drives the ATDATAM[23] Output pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAM[15]  ,Drives the ATDATAM[15] Output Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAM[7]   ,Drives the ATDATAM[7] Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAM[0]   ,Drives the ATDATAM[0] Output Pin" "Low,High"
rgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDM     ,Returns the Value of the AFVALIDM Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYM     ,Returns the Value of the ATREADYM Input Pin" "Low,High"
wgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDM        ,Drives the ATIDM Output Pins"
wgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESM[1]  ,Drives the ATBYTESM[1] Output Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESM[0]  ,Drives the ATBYTESM[0] Output Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYM     ,Drives the AFREADYM Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDM     ,Drives the ATVALIDM Output Pin" "Low,High"
width 13.
rgroup.long 0xfe0++0x13 "Peripheral Identification Registers"
line.long 0x00 "PERIPHID0,Peripheral ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PART_NUMBER[7:0] ,Bits [7:0] of the component part number"
line.long 0x04 "PERIPHID1,Peripheral ID1 Register"
bitfld.long 0x04 4.--7. " JEP106[3:0]      ,Bits [3:0] of the JEDEC identity code" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
bitfld.long 0x04 0.--3. "       PART_NUMBER[11:8] ,Bits [11:8] of the component part number" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "PERIPHID2,Peripheral ID2 Register"
bitfld.long 0x08 4.--7. " REVISION         ,Revision" "Reserved,r0p1,?..."
bitfld.long 0x08 3. "   JEDEC             ,JEDEC assigned value used" "Not used,Used"
bitfld.long 0x08 0.--2. "  JEP106[6:4] ,Bits [6:4] of the JEDEC identity code" "000,001,010,011,100,101,110,111"
line.long 0x0c "PERIPHID3,Peripheral ID3 Register"
hexmask.long.byte 0x0c 4.--7. 1. " REVAND           ,Minor errata fixes"
hexmask.long.byte 0x0c 0.--3. 1. "         CUSTOMER_MODIFIED ,Customer Modified"
rgroup.long 0xfd0++0x3
line.long 0x00 "PERIPHID4,Peripheral ID4 Register"
bitfld.long 0x00 4.--7. " FOURKB_COUNT     ,Total contiguous size of the memory window" "4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB"
bitfld.long 0x00 0.--3. "     JEP106_CONT       ,JEDEC continuation code" "Reserved,Reserved,Reserved,Reserved,5th bank,?..."
rgroup.long 0xff0++0xf "Component Identification Registers"
line.long 0x00 "COMPID0,Component ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PREAMBLE[7:0]    ,Bits [7:0] of the component identification"
line.long 0x04 "COMPID1,Component ID1 Register"
bitfld.long 0x04 4.--7. " CLASS            ,Class of the component" "Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,CoreSight,?..."
bitfld.long 0x04 0.--3. "  PREAMBLE[11:8]    ,Bits [11:8] of the component identification" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "COMPID2,Component ID2 Register"
hexmask.long.byte 0x08 0.--7. 1. " PREAMBLE[23:16]  ,Bits [23:16] of the component identification"
line.long 0x0c "COMPID3,Component ID3 Register"
hexmask.long.byte 0x0c 0.--7. 1. " PREAMBLE[31:24]  ,Bits [31:24] of the component identification"
tree.end
width 11.
tree.end
endif
sif COMPonent.AVAILABLE("etf6")
tree "TMC ETF6"
base e:comp.base("etf6",-1)
width 10.
group.long 0x004++0x3 "TMC Registers"
line.long 0x00 "RSZ,RAM Size Register"
hexmask.long 0x00 0.--30. 1. " RSZ         ,Size of the RAM in 32-bit words"
rgroup.long 0x00c++0x3
line.long 0x00 "STS,Status Register"
bitfld.long 0x00 5. " MEMERR      ,AXI master interface error" "No error,Error"
bitfld.long 0x00 4. "         EMPTY ,No valid trace data in the trace memory" "Not empty,Empty"
bitfld.long 0x00 3. "  FTEMPTY ,All internal pipelines and buffers empty" "Not empty,Empty"
bitfld.long 0x00 2. "  TMCREADY ,Trace capture ready" "Not ready,Ready"
textline "                   "
bitfld.long 0x00 1. " TRIGGERED   ,Trigger event detected" "Not detected,Detected"
bitfld.long 0x00 0. "     FULL  ,Ram full" "Not full,Full"
wgroup.long 0x010++0x3
hide.long 0x00 "RRD,RAM Read Data Register"
in
group.long 0x014++0xb
line.long 0x00 "RRP,RAM Read Pointer Register"
line.long 0x04 "RWP,RAM Write Pointer Register"
line.long 0x08 "TRG,Trigger Counter Register"
group.long 0x020++0x3
line.long 0x00 "CTL,Control Register"
bitfld.long 0x00 0. " TRACECAPTEN ,Trace Capture Enable" "Disabled,Enabled"
wgroup.long 0x024++0x3
line.long 0x00 "RWD,RAM Write Data Register"
group.long 0x028++0x3
line.long 0x00 "MODE,Mode Register"
bitfld.long 0x00 0.--1. " MODE        ,Mode select" "Circular Buffer,Software FIFO,Hardware FIFO,Software FIFO 2"
rgroup.long 0x02c++0x7
line.long 0x00 "LBUFLEVEL,Latched Buffer Fill Level Register"
line.long 0x04 "CBUFLEVEL,Current Buffer Fill Level Register"
group.long 0x034++0x3
line.long 0x00 "BUFWM,Buffer Level Water Mark Register"
group.long 0x038++0x7
line.long 0x00 "RRPHI,RAM Read Pointer High Register"
hexmask.long.byte 0x00 0.--7. 1. " RRPHI         ,Bits [39:32] of the read pointer"
line.long 0x04 "RWPHI,RAM Write Pointer High Register"
hexmask.long.byte 0x04 0.--7. 1. " RWPHI         ,Bits [39:32] of the write pointer"
group.long 0x110++0x3
line.long 0x00 "AXICTL,AXI Control Register"
bitfld.long 0x00 8.--11. " WRBURSTLEN    ,Maximum number of data transfers per burst" "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16"
bitfld.long 0x00 7. "     SGM ,Scatter Gather Mode Enable" "Disabled,Enabled"
bitfld.long 0x00 5. "          CC3 ,Cache allocate on writes enable" "Disabled,Enabled"
bitfld.long 0x00 4. "     CC2 ,Cache allocate on reads enable" "Disabled,Enabled"
textline "                   "
bitfld.long 0x00 3. " CC1 ,Cacheable" "Non-cacheable,Cacheable"
bitfld.long 0x00 2. "    CC0 ,Bufferable" "Non-bufferable,Bufferable"
bitfld.long 0x00 1. "    PC1 ,Secure/Non-secure Access" "Secure,Non-secure"
bitfld.long 0x00 0. "   PC0 ,Normal/Privileged Access" "Normal,Privileged"
group.long 0x118++0x7
line.long 0x00 "DBALO,Data Buffer Address Low Register"
line.long 0x04 "DBAHI,Data Buffer Address High Register"
hexmask.long.byte 0x04 0.--7. 1. " BUFADDRHI     ,Bits [39:32] of the trace buffer address"
rgroup.long 0x300++0x3
line.long 0x00 "FFSR,Formatter and Flush Status Register"
bitfld.long 0x00 1. " FTSTOPPED     ,Formatter Stopped" "No,Yes"
bitfld.long 0x00 0. "    FLINPROG          ,Flush in Progress" "No,Yes"
group.long 0x304++0x7
line.long 0x00 "FFCR,Formatter and Flush Control Register"
bitfld.long 0x00 14. " DRAINBUFFER   ,Drain trace data through ATB master interface" "No,Yes"
bitfld.long 0x00 13. "    STOPONTRIGEVT     ,Stop trace capture on trigger event" "No,Yes"
bitfld.long 0x00 12. "   STOPONFL      ,Stop formatter on completion of a flush operation" "No,Yes"
bitfld.long 0x00 10. "   TRIGONFL      ,Trigger on flush completion" "No,Yes"
textline "                   "
bitfld.long 0x00 9. " TRIGONTRIGEVT ,Trigger on a trigger event" "No,Yes"
bitfld.long 0x00 8. "    TRIGONTRIGIN      ,Trigger on TRIGIN being asserted" "No,Yes"
bitfld.long 0x00 6. "   FLUSHMAN      ,Manual Flush" "No,Yes"
bitfld.long 0x00 5. "   FONTRIGEVT    ,Flush on trigger event" "No,Yes"
textline "                   "
bitfld.long 0x00 4. " FONFLIN       ,Flush on FLUSHIN feature" "No,Yes"
bitfld.long 0x00 1. "    ENTI              ,Insertion of triggers in the formatted trace stream enable" "No,Yes"
bitfld.long 0x00 0. "   ENFT          ,Formatting enable" "No,Yes"
line.long 0x04 "PSCR,Periodic Synchronization Counter Register"
bitfld.long 0x04 5. " EMBEDSYNC     ,Embed Frame Sync packets" "No,Yes"
bitfld.long 0x04 0.--4. "    PSCOUNT           ,Reload value of the Synchronization Counter" "Disabled,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,128 bytes,256 bytes,512 bytes,1 KB,2 KB,4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB,?..."
width 13.
tree "Coresight Management Registers"
group 0xFA0--0xFA8
line.long 0x000 "CTS, Claim Tag Set"
bitfld.long 0x000 7. " SETCTV7   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 6. "        SETCTV6 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 5. " SETCTV5   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 4. "        SETCTV4 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 3. " SETCTV3   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 2. "        SETCTV2 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 1. " SETCTV1   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 0. "        SETCTV0 ,Set Claim Tag Value" "No effect,Set"
line.long 0x004 "CTC, Claim Tag Clear"
bitfld.long 0x004 7. " CLRCTV7   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 6. "        CLRCTV6 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 5. " CLRCTV5   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 4. "        CLRCTV4 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 3. " CLRCTV3   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 2. "        CLRCTV2 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 1. " CLRCTV1   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 0. "        CLRCTV0 ,Clear Claim Tag Value" "No effect,Cleared"
wgroup.long 0xfb0++0x3
line.long 0x00 "LAR,Lock Access Register"
rgroup.long 0xfb4++0x7
line.long 0x00 "LSR,Lock Status Register"
bitfld.long 0x00 2. " LOCKTYPE         ,32-bit Lock Access Register Implemented" "32-bit,?..."
bitfld.long 0x00 1. "         LOCKGRANT ,Lock Status" "Unlocked,Locked"
bitfld.long 0x00 0. "         LOCKEXIST  ,Lock control mechanism present" "Not present,Present"
line.long 0x04 "AUTHSTATUS,Authentication Status Register"
bitfld.long 0x04 6.--7. " SNID   ,Security level for secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 4.--5. "  SID  ,Security level for secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
bitfld.long 0x04 2.--3. "  NSNID ,Security level for non-secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 0.--1. "  NSID ,Security level for non-secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
rgroup.long 0xfc8++0x3
line.long 0x00 "DEVID,Device Configuration Register"
bitfld.long 0x00 11.--13. " WBUF_DEPTH  ,Number of entries in the write buffer (in ETR)" "Reserved,Reserved,4 entries,8 entries,16 entries,32 entries,?..."
bitfld.long 0x00 8.--10. "  MEMWIDTH  ,Memory interface databus width" "Reserved,Reserved,32-bit,64-bit,128-bit,256-bit,?..."
bitfld.long 0x00 6.--7. "    CONFIGTYPE ,Configuration type" "ETB,ETR,ETF,?..."
bitfld.long 0x00 5. "    CLKSCHEME ,RAM clocking scheme" "Synchronous,?..."
textline "                    "
bitfld.long 0x00 0.--4. "   ATBINPORTCOUNT   ,Type or number of ATB multiplexing" "No multiplexing,?..."
width 13.
if ((d.l(e:comp.base("etf6",-1)+0xfc8)&0xc0)==(0x00||0x40))
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,RAM->APB,?..."
bitfld.long 0x00 0.--3. "                    MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Trace sink,?..."
elif ((d.l(e:comp.base("etf6",-1)+0xfc8)&0xc0)==0x80)
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,Reserved,ATB slave->RAM->ATB master,?..."
bitfld.long 0x00 0.--3. "  MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Reserved,Trace link,?..."
else
hgroup.long 0xfcc++0x3
hide.long 0x00 "DEVTYPE,Device Type Identifier Register"
endif
group 0xf00--0xf03 "Integration Test Registers"
line.long 0x000 "ITCTRL,Integration Mode Control"
bitfld.long 0x000 0. " ENABLE       ,Enable Integration mode" "no,yes"
wgroup.long 0xee0++0x3
line.long 0x00 "ITMISCOP0,Integration Test Miscellaneous Output Register 0"
bitfld.long 0x00 1. " FULL          ,FULL output value set" "0,1"
bitfld.long 0x00 0. "     ACQCOMP       ,ACQCOMP output value set" "0,1"
rgroup.long 0xee8++0x3
line.long 0x00 "ITTRFLIN,Integration Test Trigger In and Flush In Register"
bitfld.long 0x00 1. " FLUSHIN       ,FLUSHIN output value" "0,1"
bitfld.long 0x00 0. "     TRIGIN        ,TRIGIN output value" "0,1"
rgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAS[127] ,Returns the Value of the ATDATAS[127] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[119] ,Returns the Value of the ATDATAS[119] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[111] ,Returns the Value of the ATDATAS[111] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[103] ,Returns the Value of the ATDATAS[103] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[95]  ,Returns the Value of the ATDATAS[95] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[87]  ,Returns the Value of the ATDATAS[87] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[79]  ,Returns the Value of the ATDATAS[79] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[71]  ,Returns the Value of the ATDATAS[71] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[63]  ,Returns the Value of the ATDATAS[63] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[55]  ,Returns the Value of the ATDATAS[55] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[47]  ,Returns the Value of the ATDATAS[47] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[39]  ,Returns the Value of the ATDATAS[39] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAS[31]  ,Returns the Value of the ATDATAS[31] Input Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAS[23]  ,Returns the Value of the ATDATAS[23] Input pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAS[15]  ,Returns the Value of the ATDATAS[15] Input Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAS[7]   ,Returns the Value of the ATDATAS[7] Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAS[0]   ,Returns the Value of the ATDATAS[0] Input Pin" "Low,High"
wgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFREADYS     ,Drives the AFREADYS Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDS     ,Drives the ATVALIDS Output Pin" "Low,High"
rgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDS        ,Returns the Value of the ATIDS Input Pins"
rgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESS[1]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESS[0]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 1. "  AFVALIDS     ,Returns the Value of the AFVALIDS Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYS     ,Returns the Value of the ATREADYS Input Pin" "Low,High"
wgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAM[127] ,Drives the ATDATAM[127] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[119] ,Drives the ATDATAM[119] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[111] ,Drives the ATDATAM[111] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[103] ,Drives the ATDATAM[103] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[95]  ,Drives the ATDATAM[95] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[87]  ,Drives the ATDATAM[87] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[79]  ,Drives the ATDATAM[79] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[71]  ,Drives the ATDATAM[71] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[63]  ,Drives the ATDATAM[63] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[55]  ,Drives the ATDATAM[55] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[47]  ,Drives the ATDATAM[47] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[39]  ,Drives the ATDATAM[39] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAM[31]  ,Drives the ATDATAM[31] Output Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAM[23]  ,Drives the ATDATAM[23] Output pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAM[15]  ,Drives the ATDATAM[15] Output Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAM[7]   ,Drives the ATDATAM[7] Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAM[0]   ,Drives the ATDATAM[0] Output Pin" "Low,High"
rgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDM     ,Returns the Value of the AFVALIDM Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYM     ,Returns the Value of the ATREADYM Input Pin" "Low,High"
wgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDM        ,Drives the ATIDM Output Pins"
wgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESM[1]  ,Drives the ATBYTESM[1] Output Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESM[0]  ,Drives the ATBYTESM[0] Output Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYM     ,Drives the AFREADYM Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDM     ,Drives the ATVALIDM Output Pin" "Low,High"
width 13.
rgroup.long 0xfe0++0x13 "Peripheral Identification Registers"
line.long 0x00 "PERIPHID0,Peripheral ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PART_NUMBER[7:0] ,Bits [7:0] of the component part number"
line.long 0x04 "PERIPHID1,Peripheral ID1 Register"
bitfld.long 0x04 4.--7. " JEP106[3:0]      ,Bits [3:0] of the JEDEC identity code" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
bitfld.long 0x04 0.--3. "       PART_NUMBER[11:8] ,Bits [11:8] of the component part number" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "PERIPHID2,Peripheral ID2 Register"
bitfld.long 0x08 4.--7. " REVISION         ,Revision" "Reserved,r0p1,?..."
bitfld.long 0x08 3. "   JEDEC             ,JEDEC assigned value used" "Not used,Used"
bitfld.long 0x08 0.--2. "  JEP106[6:4] ,Bits [6:4] of the JEDEC identity code" "000,001,010,011,100,101,110,111"
line.long 0x0c "PERIPHID3,Peripheral ID3 Register"
hexmask.long.byte 0x0c 4.--7. 1. " REVAND           ,Minor errata fixes"
hexmask.long.byte 0x0c 0.--3. 1. "         CUSTOMER_MODIFIED ,Customer Modified"
rgroup.long 0xfd0++0x3
line.long 0x00 "PERIPHID4,Peripheral ID4 Register"
bitfld.long 0x00 4.--7. " FOURKB_COUNT     ,Total contiguous size of the memory window" "4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB"
bitfld.long 0x00 0.--3. "     JEP106_CONT       ,JEDEC continuation code" "Reserved,Reserved,Reserved,Reserved,5th bank,?..."
rgroup.long 0xff0++0xf "Component Identification Registers"
line.long 0x00 "COMPID0,Component ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PREAMBLE[7:0]    ,Bits [7:0] of the component identification"
line.long 0x04 "COMPID1,Component ID1 Register"
bitfld.long 0x04 4.--7. " CLASS            ,Class of the component" "Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,CoreSight,?..."
bitfld.long 0x04 0.--3. "  PREAMBLE[11:8]    ,Bits [11:8] of the component identification" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "COMPID2,Component ID2 Register"
hexmask.long.byte 0x08 0.--7. 1. " PREAMBLE[23:16]  ,Bits [23:16] of the component identification"
line.long 0x0c "COMPID3,Component ID3 Register"
hexmask.long.byte 0x0c 0.--7. 1. " PREAMBLE[31:24]  ,Bits [31:24] of the component identification"
tree.end
width 11.
tree.end
endif
sif COMPonent.AVAILABLE("etf7")
tree "TMC ETF7"
base e:comp.base("etf7",-1)
width 10.
group.long 0x004++0x3 "TMC Registers"
line.long 0x00 "RSZ,RAM Size Register"
hexmask.long 0x00 0.--30. 1. " RSZ         ,Size of the RAM in 32-bit words"
rgroup.long 0x00c++0x3
line.long 0x00 "STS,Status Register"
bitfld.long 0x00 5. " MEMERR      ,AXI master interface error" "No error,Error"
bitfld.long 0x00 4. "         EMPTY ,No valid trace data in the trace memory" "Not empty,Empty"
bitfld.long 0x00 3. "  FTEMPTY ,All internal pipelines and buffers empty" "Not empty,Empty"
bitfld.long 0x00 2. "  TMCREADY ,Trace capture ready" "Not ready,Ready"
textline "                   "
bitfld.long 0x00 1. " TRIGGERED   ,Trigger event detected" "Not detected,Detected"
bitfld.long 0x00 0. "     FULL  ,Ram full" "Not full,Full"
wgroup.long 0x010++0x3
hide.long 0x00 "RRD,RAM Read Data Register"
in
group.long 0x014++0xb
line.long 0x00 "RRP,RAM Read Pointer Register"
line.long 0x04 "RWP,RAM Write Pointer Register"
line.long 0x08 "TRG,Trigger Counter Register"
group.long 0x020++0x3
line.long 0x00 "CTL,Control Register"
bitfld.long 0x00 0. " TRACECAPTEN ,Trace Capture Enable" "Disabled,Enabled"
wgroup.long 0x024++0x3
line.long 0x00 "RWD,RAM Write Data Register"
group.long 0x028++0x3
line.long 0x00 "MODE,Mode Register"
bitfld.long 0x00 0.--1. " MODE        ,Mode select" "Circular Buffer,Software FIFO,Hardware FIFO,Software FIFO 2"
rgroup.long 0x02c++0x7
line.long 0x00 "LBUFLEVEL,Latched Buffer Fill Level Register"
line.long 0x04 "CBUFLEVEL,Current Buffer Fill Level Register"
group.long 0x034++0x3
line.long 0x00 "BUFWM,Buffer Level Water Mark Register"
group.long 0x038++0x7
line.long 0x00 "RRPHI,RAM Read Pointer High Register"
hexmask.long.byte 0x00 0.--7. 1. " RRPHI         ,Bits [39:32] of the read pointer"
line.long 0x04 "RWPHI,RAM Write Pointer High Register"
hexmask.long.byte 0x04 0.--7. 1. " RWPHI         ,Bits [39:32] of the write pointer"
group.long 0x110++0x3
line.long 0x00 "AXICTL,AXI Control Register"
bitfld.long 0x00 8.--11. " WRBURSTLEN    ,Maximum number of data transfers per burst" "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16"
bitfld.long 0x00 7. "     SGM ,Scatter Gather Mode Enable" "Disabled,Enabled"
bitfld.long 0x00 5. "          CC3 ,Cache allocate on writes enable" "Disabled,Enabled"
bitfld.long 0x00 4. "     CC2 ,Cache allocate on reads enable" "Disabled,Enabled"
textline "                   "
bitfld.long 0x00 3. " CC1 ,Cacheable" "Non-cacheable,Cacheable"
bitfld.long 0x00 2. "    CC0 ,Bufferable" "Non-bufferable,Bufferable"
bitfld.long 0x00 1. "    PC1 ,Secure/Non-secure Access" "Secure,Non-secure"
bitfld.long 0x00 0. "   PC0 ,Normal/Privileged Access" "Normal,Privileged"
group.long 0x118++0x7
line.long 0x00 "DBALO,Data Buffer Address Low Register"
line.long 0x04 "DBAHI,Data Buffer Address High Register"
hexmask.long.byte 0x04 0.--7. 1. " BUFADDRHI     ,Bits [39:32] of the trace buffer address"
rgroup.long 0x300++0x3
line.long 0x00 "FFSR,Formatter and Flush Status Register"
bitfld.long 0x00 1. " FTSTOPPED     ,Formatter Stopped" "No,Yes"
bitfld.long 0x00 0. "    FLINPROG          ,Flush in Progress" "No,Yes"
group.long 0x304++0x7
line.long 0x00 "FFCR,Formatter and Flush Control Register"
bitfld.long 0x00 14. " DRAINBUFFER   ,Drain trace data through ATB master interface" "No,Yes"
bitfld.long 0x00 13. "    STOPONTRIGEVT     ,Stop trace capture on trigger event" "No,Yes"
bitfld.long 0x00 12. "   STOPONFL      ,Stop formatter on completion of a flush operation" "No,Yes"
bitfld.long 0x00 10. "   TRIGONFL      ,Trigger on flush completion" "No,Yes"
textline "                   "
bitfld.long 0x00 9. " TRIGONTRIGEVT ,Trigger on a trigger event" "No,Yes"
bitfld.long 0x00 8. "    TRIGONTRIGIN      ,Trigger on TRIGIN being asserted" "No,Yes"
bitfld.long 0x00 6. "   FLUSHMAN      ,Manual Flush" "No,Yes"
bitfld.long 0x00 5. "   FONTRIGEVT    ,Flush on trigger event" "No,Yes"
textline "                   "
bitfld.long 0x00 4. " FONFLIN       ,Flush on FLUSHIN feature" "No,Yes"
bitfld.long 0x00 1. "    ENTI              ,Insertion of triggers in the formatted trace stream enable" "No,Yes"
bitfld.long 0x00 0. "   ENFT          ,Formatting enable" "No,Yes"
line.long 0x04 "PSCR,Periodic Synchronization Counter Register"
bitfld.long 0x04 5. " EMBEDSYNC     ,Embed Frame Sync packets" "No,Yes"
bitfld.long 0x04 0.--4. "    PSCOUNT           ,Reload value of the Synchronization Counter" "Disabled,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,128 bytes,256 bytes,512 bytes,1 KB,2 KB,4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB,?..."
width 13.
tree "Coresight Management Registers"
group 0xFA0--0xFA8
line.long 0x000 "CTS, Claim Tag Set"
bitfld.long 0x000 7. " SETCTV7   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 6. "        SETCTV6 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 5. " SETCTV5   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 4. "        SETCTV4 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 3. " SETCTV3   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 2. "        SETCTV2 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 1. " SETCTV1   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 0. "        SETCTV0 ,Set Claim Tag Value" "No effect,Set"
line.long 0x004 "CTC, Claim Tag Clear"
bitfld.long 0x004 7. " CLRCTV7   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 6. "        CLRCTV6 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 5. " CLRCTV5   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 4. "        CLRCTV4 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 3. " CLRCTV3   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 2. "        CLRCTV2 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 1. " CLRCTV1   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 0. "        CLRCTV0 ,Clear Claim Tag Value" "No effect,Cleared"
wgroup.long 0xfb0++0x3
line.long 0x00 "LAR,Lock Access Register"
rgroup.long 0xfb4++0x7
line.long 0x00 "LSR,Lock Status Register"
bitfld.long 0x00 2. " LOCKTYPE         ,32-bit Lock Access Register Implemented" "32-bit,?..."
bitfld.long 0x00 1. "         LOCKGRANT ,Lock Status" "Unlocked,Locked"
bitfld.long 0x00 0. "         LOCKEXIST  ,Lock control mechanism present" "Not present,Present"
line.long 0x04 "AUTHSTATUS,Authentication Status Register"
bitfld.long 0x04 6.--7. " SNID   ,Security level for secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 4.--5. "  SID  ,Security level for secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
bitfld.long 0x04 2.--3. "  NSNID ,Security level for non-secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 0.--1. "  NSID ,Security level for non-secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
rgroup.long 0xfc8++0x3
line.long 0x00 "DEVID,Device Configuration Register"
bitfld.long 0x00 11.--13. " WBUF_DEPTH  ,Number of entries in the write buffer (in ETR)" "Reserved,Reserved,4 entries,8 entries,16 entries,32 entries,?..."
bitfld.long 0x00 8.--10. "  MEMWIDTH  ,Memory interface databus width" "Reserved,Reserved,32-bit,64-bit,128-bit,256-bit,?..."
bitfld.long 0x00 6.--7. "    CONFIGTYPE ,Configuration type" "ETB,ETR,ETF,?..."
bitfld.long 0x00 5. "    CLKSCHEME ,RAM clocking scheme" "Synchronous,?..."
textline "                    "
bitfld.long 0x00 0.--4. "   ATBINPORTCOUNT   ,Type or number of ATB multiplexing" "No multiplexing,?..."
width 13.
if ((d.l(e:comp.base("etf7",-1)+0xfc8)&0xc0)==(0x00||0x40))
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,RAM->APB,?..."
bitfld.long 0x00 0.--3. "                    MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Trace sink,?..."
elif ((d.l(e:comp.base("etf7",-1)+0xfc8)&0xc0)==0x80)
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,Reserved,ATB slave->RAM->ATB master,?..."
bitfld.long 0x00 0.--3. "  MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Reserved,Trace link,?..."
else
hgroup.long 0xfcc++0x3
hide.long 0x00 "DEVTYPE,Device Type Identifier Register"
endif
group 0xf00--0xf03 "Integration Test Registers"
line.long 0x000 "ITCTRL,Integration Mode Control"
bitfld.long 0x000 0. " ENABLE       ,Enable Integration mode" "no,yes"
wgroup.long 0xee0++0x3
line.long 0x00 "ITMISCOP0,Integration Test Miscellaneous Output Register 0"
bitfld.long 0x00 1. " FULL          ,FULL output value set" "0,1"
bitfld.long 0x00 0. "     ACQCOMP       ,ACQCOMP output value set" "0,1"
rgroup.long 0xee8++0x3
line.long 0x00 "ITTRFLIN,Integration Test Trigger In and Flush In Register"
bitfld.long 0x00 1. " FLUSHIN       ,FLUSHIN output value" "0,1"
bitfld.long 0x00 0. "     TRIGIN        ,TRIGIN output value" "0,1"
rgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAS[127] ,Returns the Value of the ATDATAS[127] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[119] ,Returns the Value of the ATDATAS[119] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[111] ,Returns the Value of the ATDATAS[111] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[103] ,Returns the Value of the ATDATAS[103] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[95]  ,Returns the Value of the ATDATAS[95] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[87]  ,Returns the Value of the ATDATAS[87] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[79]  ,Returns the Value of the ATDATAS[79] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[71]  ,Returns the Value of the ATDATAS[71] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[63]  ,Returns the Value of the ATDATAS[63] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[55]  ,Returns the Value of the ATDATAS[55] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[47]  ,Returns the Value of the ATDATAS[47] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[39]  ,Returns the Value of the ATDATAS[39] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAS[31]  ,Returns the Value of the ATDATAS[31] Input Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAS[23]  ,Returns the Value of the ATDATAS[23] Input pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAS[15]  ,Returns the Value of the ATDATAS[15] Input Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAS[7]   ,Returns the Value of the ATDATAS[7] Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAS[0]   ,Returns the Value of the ATDATAS[0] Input Pin" "Low,High"
wgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFREADYS     ,Drives the AFREADYS Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDS     ,Drives the ATVALIDS Output Pin" "Low,High"
rgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDS        ,Returns the Value of the ATIDS Input Pins"
rgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESS[1]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESS[0]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 1. "  AFVALIDS     ,Returns the Value of the AFVALIDS Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYS     ,Returns the Value of the ATREADYS Input Pin" "Low,High"
wgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAM[127] ,Drives the ATDATAM[127] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[119] ,Drives the ATDATAM[119] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[111] ,Drives the ATDATAM[111] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[103] ,Drives the ATDATAM[103] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[95]  ,Drives the ATDATAM[95] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[87]  ,Drives the ATDATAM[87] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[79]  ,Drives the ATDATAM[79] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[71]  ,Drives the ATDATAM[71] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[63]  ,Drives the ATDATAM[63] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[55]  ,Drives the ATDATAM[55] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[47]  ,Drives the ATDATAM[47] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[39]  ,Drives the ATDATAM[39] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAM[31]  ,Drives the ATDATAM[31] Output Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAM[23]  ,Drives the ATDATAM[23] Output pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAM[15]  ,Drives the ATDATAM[15] Output Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAM[7]   ,Drives the ATDATAM[7] Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAM[0]   ,Drives the ATDATAM[0] Output Pin" "Low,High"
rgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDM     ,Returns the Value of the AFVALIDM Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYM     ,Returns the Value of the ATREADYM Input Pin" "Low,High"
wgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDM        ,Drives the ATIDM Output Pins"
wgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESM[1]  ,Drives the ATBYTESM[1] Output Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESM[0]  ,Drives the ATBYTESM[0] Output Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYM     ,Drives the AFREADYM Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDM     ,Drives the ATVALIDM Output Pin" "Low,High"
width 13.
rgroup.long 0xfe0++0x13 "Peripheral Identification Registers"
line.long 0x00 "PERIPHID0,Peripheral ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PART_NUMBER[7:0] ,Bits [7:0] of the component part number"
line.long 0x04 "PERIPHID1,Peripheral ID1 Register"
bitfld.long 0x04 4.--7. " JEP106[3:0]      ,Bits [3:0] of the JEDEC identity code" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
bitfld.long 0x04 0.--3. "       PART_NUMBER[11:8] ,Bits [11:8] of the component part number" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "PERIPHID2,Peripheral ID2 Register"
bitfld.long 0x08 4.--7. " REVISION         ,Revision" "Reserved,r0p1,?..."
bitfld.long 0x08 3. "   JEDEC             ,JEDEC assigned value used" "Not used,Used"
bitfld.long 0x08 0.--2. "  JEP106[6:4] ,Bits [6:4] of the JEDEC identity code" "000,001,010,011,100,101,110,111"
line.long 0x0c "PERIPHID3,Peripheral ID3 Register"
hexmask.long.byte 0x0c 4.--7. 1. " REVAND           ,Minor errata fixes"
hexmask.long.byte 0x0c 0.--3. 1. "         CUSTOMER_MODIFIED ,Customer Modified"
rgroup.long 0xfd0++0x3
line.long 0x00 "PERIPHID4,Peripheral ID4 Register"
bitfld.long 0x00 4.--7. " FOURKB_COUNT     ,Total contiguous size of the memory window" "4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB"
bitfld.long 0x00 0.--3. "     JEP106_CONT       ,JEDEC continuation code" "Reserved,Reserved,Reserved,Reserved,5th bank,?..."
rgroup.long 0xff0++0xf "Component Identification Registers"
line.long 0x00 "COMPID0,Component ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PREAMBLE[7:0]    ,Bits [7:0] of the component identification"
line.long 0x04 "COMPID1,Component ID1 Register"
bitfld.long 0x04 4.--7. " CLASS            ,Class of the component" "Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,CoreSight,?..."
bitfld.long 0x04 0.--3. "  PREAMBLE[11:8]    ,Bits [11:8] of the component identification" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "COMPID2,Component ID2 Register"
hexmask.long.byte 0x08 0.--7. 1. " PREAMBLE[23:16]  ,Bits [23:16] of the component identification"
line.long 0x0c "COMPID3,Component ID3 Register"
hexmask.long.byte 0x0c 0.--7. 1. " PREAMBLE[31:24]  ,Bits [31:24] of the component identification"
tree.end
width 11.
tree.end
endif
sif COMPonent.AVAILABLE("etf8")
tree "TMC ETF8"
base e:comp.base("etf8",-1)
width 10.
group.long 0x004++0x3 "TMC Registers"
line.long 0x00 "RSZ,RAM Size Register"
hexmask.long 0x00 0.--30. 1. " RSZ         ,Size of the RAM in 32-bit words"
rgroup.long 0x00c++0x3
line.long 0x00 "STS,Status Register"
bitfld.long 0x00 5. " MEMERR      ,AXI master interface error" "No error,Error"
bitfld.long 0x00 4. "         EMPTY ,No valid trace data in the trace memory" "Not empty,Empty"
bitfld.long 0x00 3. "  FTEMPTY ,All internal pipelines and buffers empty" "Not empty,Empty"
bitfld.long 0x00 2. "  TMCREADY ,Trace capture ready" "Not ready,Ready"
textline "                   "
bitfld.long 0x00 1. " TRIGGERED   ,Trigger event detected" "Not detected,Detected"
bitfld.long 0x00 0. "     FULL  ,Ram full" "Not full,Full"
wgroup.long 0x010++0x3
hide.long 0x00 "RRD,RAM Read Data Register"
in
group.long 0x014++0xb
line.long 0x00 "RRP,RAM Read Pointer Register"
line.long 0x04 "RWP,RAM Write Pointer Register"
line.long 0x08 "TRG,Trigger Counter Register"
group.long 0x020++0x3
line.long 0x00 "CTL,Control Register"
bitfld.long 0x00 0. " TRACECAPTEN ,Trace Capture Enable" "Disabled,Enabled"
wgroup.long 0x024++0x3
line.long 0x00 "RWD,RAM Write Data Register"
group.long 0x028++0x3
line.long 0x00 "MODE,Mode Register"
bitfld.long 0x00 0.--1. " MODE        ,Mode select" "Circular Buffer,Software FIFO,Hardware FIFO,Software FIFO 2"
rgroup.long 0x02c++0x7
line.long 0x00 "LBUFLEVEL,Latched Buffer Fill Level Register"
line.long 0x04 "CBUFLEVEL,Current Buffer Fill Level Register"
group.long 0x034++0x3
line.long 0x00 "BUFWM,Buffer Level Water Mark Register"
group.long 0x038++0x7
line.long 0x00 "RRPHI,RAM Read Pointer High Register"
hexmask.long.byte 0x00 0.--7. 1. " RRPHI         ,Bits [39:32] of the read pointer"
line.long 0x04 "RWPHI,RAM Write Pointer High Register"
hexmask.long.byte 0x04 0.--7. 1. " RWPHI         ,Bits [39:32] of the write pointer"
group.long 0x110++0x3
line.long 0x00 "AXICTL,AXI Control Register"
bitfld.long 0x00 8.--11. " WRBURSTLEN    ,Maximum number of data transfers per burst" "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16"
bitfld.long 0x00 7. "     SGM ,Scatter Gather Mode Enable" "Disabled,Enabled"
bitfld.long 0x00 5. "          CC3 ,Cache allocate on writes enable" "Disabled,Enabled"
bitfld.long 0x00 4. "     CC2 ,Cache allocate on reads enable" "Disabled,Enabled"
textline "                   "
bitfld.long 0x00 3. " CC1 ,Cacheable" "Non-cacheable,Cacheable"
bitfld.long 0x00 2. "    CC0 ,Bufferable" "Non-bufferable,Bufferable"
bitfld.long 0x00 1. "    PC1 ,Secure/Non-secure Access" "Secure,Non-secure"
bitfld.long 0x00 0. "   PC0 ,Normal/Privileged Access" "Normal,Privileged"
group.long 0x118++0x7
line.long 0x00 "DBALO,Data Buffer Address Low Register"
line.long 0x04 "DBAHI,Data Buffer Address High Register"
hexmask.long.byte 0x04 0.--7. 1. " BUFADDRHI     ,Bits [39:32] of the trace buffer address"
rgroup.long 0x300++0x3
line.long 0x00 "FFSR,Formatter and Flush Status Register"
bitfld.long 0x00 1. " FTSTOPPED     ,Formatter Stopped" "No,Yes"
bitfld.long 0x00 0. "    FLINPROG          ,Flush in Progress" "No,Yes"
group.long 0x304++0x7
line.long 0x00 "FFCR,Formatter and Flush Control Register"
bitfld.long 0x00 14. " DRAINBUFFER   ,Drain trace data through ATB master interface" "No,Yes"
bitfld.long 0x00 13. "    STOPONTRIGEVT     ,Stop trace capture on trigger event" "No,Yes"
bitfld.long 0x00 12. "   STOPONFL      ,Stop formatter on completion of a flush operation" "No,Yes"
bitfld.long 0x00 10. "   TRIGONFL      ,Trigger on flush completion" "No,Yes"
textline "                   "
bitfld.long 0x00 9. " TRIGONTRIGEVT ,Trigger on a trigger event" "No,Yes"
bitfld.long 0x00 8. "    TRIGONTRIGIN      ,Trigger on TRIGIN being asserted" "No,Yes"
bitfld.long 0x00 6. "   FLUSHMAN      ,Manual Flush" "No,Yes"
bitfld.long 0x00 5. "   FONTRIGEVT    ,Flush on trigger event" "No,Yes"
textline "                   "
bitfld.long 0x00 4. " FONFLIN       ,Flush on FLUSHIN feature" "No,Yes"
bitfld.long 0x00 1. "    ENTI              ,Insertion of triggers in the formatted trace stream enable" "No,Yes"
bitfld.long 0x00 0. "   ENFT          ,Formatting enable" "No,Yes"
line.long 0x04 "PSCR,Periodic Synchronization Counter Register"
bitfld.long 0x04 5. " EMBEDSYNC     ,Embed Frame Sync packets" "No,Yes"
bitfld.long 0x04 0.--4. "    PSCOUNT           ,Reload value of the Synchronization Counter" "Disabled,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,128 bytes,256 bytes,512 bytes,1 KB,2 KB,4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB,?..."
width 13.
tree "Coresight Management Registers"
group 0xFA0--0xFA8
line.long 0x000 "CTS, Claim Tag Set"
bitfld.long 0x000 7. " SETCTV7   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 6. "        SETCTV6 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 5. " SETCTV5   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 4. "        SETCTV4 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 3. " SETCTV3   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 2. "        SETCTV2 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 1. " SETCTV1   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 0. "        SETCTV0 ,Set Claim Tag Value" "No effect,Set"
line.long 0x004 "CTC, Claim Tag Clear"
bitfld.long 0x004 7. " CLRCTV7   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 6. "        CLRCTV6 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 5. " CLRCTV5   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 4. "        CLRCTV4 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 3. " CLRCTV3   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 2. "        CLRCTV2 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 1. " CLRCTV1   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 0. "        CLRCTV0 ,Clear Claim Tag Value" "No effect,Cleared"
wgroup.long 0xfb0++0x3
line.long 0x00 "LAR,Lock Access Register"
rgroup.long 0xfb4++0x7
line.long 0x00 "LSR,Lock Status Register"
bitfld.long 0x00 2. " LOCKTYPE         ,32-bit Lock Access Register Implemented" "32-bit,?..."
bitfld.long 0x00 1. "         LOCKGRANT ,Lock Status" "Unlocked,Locked"
bitfld.long 0x00 0. "         LOCKEXIST  ,Lock control mechanism present" "Not present,Present"
line.long 0x04 "AUTHSTATUS,Authentication Status Register"
bitfld.long 0x04 6.--7. " SNID   ,Security level for secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 4.--5. "  SID  ,Security level for secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
bitfld.long 0x04 2.--3. "  NSNID ,Security level for non-secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 0.--1. "  NSID ,Security level for non-secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
rgroup.long 0xfc8++0x3
line.long 0x00 "DEVID,Device Configuration Register"
bitfld.long 0x00 11.--13. " WBUF_DEPTH  ,Number of entries in the write buffer (in ETR)" "Reserved,Reserved,4 entries,8 entries,16 entries,32 entries,?..."
bitfld.long 0x00 8.--10. "  MEMWIDTH  ,Memory interface databus width" "Reserved,Reserved,32-bit,64-bit,128-bit,256-bit,?..."
bitfld.long 0x00 6.--7. "    CONFIGTYPE ,Configuration type" "ETB,ETR,ETF,?..."
bitfld.long 0x00 5. "    CLKSCHEME ,RAM clocking scheme" "Synchronous,?..."
textline "                    "
bitfld.long 0x00 0.--4. "   ATBINPORTCOUNT   ,Type or number of ATB multiplexing" "No multiplexing,?..."
width 13.
if ((d.l(e:comp.base("etf8",-1)+0xfc8)&0xc0)==(0x00||0x40))
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,RAM->APB,?..."
bitfld.long 0x00 0.--3. "                    MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Trace sink,?..."
elif ((d.l(e:comp.base("etf8",-1)+0xfc8)&0xc0)==0x80)
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,Reserved,ATB slave->RAM->ATB master,?..."
bitfld.long 0x00 0.--3. "  MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Reserved,Trace link,?..."
else
hgroup.long 0xfcc++0x3
hide.long 0x00 "DEVTYPE,Device Type Identifier Register"
endif
group 0xf00--0xf03 "Integration Test Registers"
line.long 0x000 "ITCTRL,Integration Mode Control"
bitfld.long 0x000 0. " ENABLE       ,Enable Integration mode" "no,yes"
wgroup.long 0xee0++0x3
line.long 0x00 "ITMISCOP0,Integration Test Miscellaneous Output Register 0"
bitfld.long 0x00 1. " FULL          ,FULL output value set" "0,1"
bitfld.long 0x00 0. "     ACQCOMP       ,ACQCOMP output value set" "0,1"
rgroup.long 0xee8++0x3
line.long 0x00 "ITTRFLIN,Integration Test Trigger In and Flush In Register"
bitfld.long 0x00 1. " FLUSHIN       ,FLUSHIN output value" "0,1"
bitfld.long 0x00 0. "     TRIGIN        ,TRIGIN output value" "0,1"
rgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAS[127] ,Returns the Value of the ATDATAS[127] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[119] ,Returns the Value of the ATDATAS[119] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[111] ,Returns the Value of the ATDATAS[111] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[103] ,Returns the Value of the ATDATAS[103] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[95]  ,Returns the Value of the ATDATAS[95] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[87]  ,Returns the Value of the ATDATAS[87] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[79]  ,Returns the Value of the ATDATAS[79] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[71]  ,Returns the Value of the ATDATAS[71] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[63]  ,Returns the Value of the ATDATAS[63] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[55]  ,Returns the Value of the ATDATAS[55] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[47]  ,Returns the Value of the ATDATAS[47] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[39]  ,Returns the Value of the ATDATAS[39] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAS[31]  ,Returns the Value of the ATDATAS[31] Input Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAS[23]  ,Returns the Value of the ATDATAS[23] Input pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAS[15]  ,Returns the Value of the ATDATAS[15] Input Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAS[7]   ,Returns the Value of the ATDATAS[7] Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAS[0]   ,Returns the Value of the ATDATAS[0] Input Pin" "Low,High"
wgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFREADYS     ,Drives the AFREADYS Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDS     ,Drives the ATVALIDS Output Pin" "Low,High"
rgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDS        ,Returns the Value of the ATIDS Input Pins"
rgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESS[1]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESS[0]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 1. "  AFVALIDS     ,Returns the Value of the AFVALIDS Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYS     ,Returns the Value of the ATREADYS Input Pin" "Low,High"
wgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAM[127] ,Drives the ATDATAM[127] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[119] ,Drives the ATDATAM[119] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[111] ,Drives the ATDATAM[111] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[103] ,Drives the ATDATAM[103] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[95]  ,Drives the ATDATAM[95] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[87]  ,Drives the ATDATAM[87] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[79]  ,Drives the ATDATAM[79] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[71]  ,Drives the ATDATAM[71] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[63]  ,Drives the ATDATAM[63] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[55]  ,Drives the ATDATAM[55] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[47]  ,Drives the ATDATAM[47] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[39]  ,Drives the ATDATAM[39] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAM[31]  ,Drives the ATDATAM[31] Output Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAM[23]  ,Drives the ATDATAM[23] Output pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAM[15]  ,Drives the ATDATAM[15] Output Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAM[7]   ,Drives the ATDATAM[7] Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAM[0]   ,Drives the ATDATAM[0] Output Pin" "Low,High"
rgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDM     ,Returns the Value of the AFVALIDM Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYM     ,Returns the Value of the ATREADYM Input Pin" "Low,High"
wgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDM        ,Drives the ATIDM Output Pins"
wgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESM[1]  ,Drives the ATBYTESM[1] Output Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESM[0]  ,Drives the ATBYTESM[0] Output Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYM     ,Drives the AFREADYM Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDM     ,Drives the ATVALIDM Output Pin" "Low,High"
width 13.
rgroup.long 0xfe0++0x13 "Peripheral Identification Registers"
line.long 0x00 "PERIPHID0,Peripheral ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PART_NUMBER[7:0] ,Bits [7:0] of the component part number"
line.long 0x04 "PERIPHID1,Peripheral ID1 Register"
bitfld.long 0x04 4.--7. " JEP106[3:0]      ,Bits [3:0] of the JEDEC identity code" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
bitfld.long 0x04 0.--3. "       PART_NUMBER[11:8] ,Bits [11:8] of the component part number" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "PERIPHID2,Peripheral ID2 Register"
bitfld.long 0x08 4.--7. " REVISION         ,Revision" "Reserved,r0p1,?..."
bitfld.long 0x08 3. "   JEDEC             ,JEDEC assigned value used" "Not used,Used"
bitfld.long 0x08 0.--2. "  JEP106[6:4] ,Bits [6:4] of the JEDEC identity code" "000,001,010,011,100,101,110,111"
line.long 0x0c "PERIPHID3,Peripheral ID3 Register"
hexmask.long.byte 0x0c 4.--7. 1. " REVAND           ,Minor errata fixes"
hexmask.long.byte 0x0c 0.--3. 1. "         CUSTOMER_MODIFIED ,Customer Modified"
rgroup.long 0xfd0++0x3
line.long 0x00 "PERIPHID4,Peripheral ID4 Register"
bitfld.long 0x00 4.--7. " FOURKB_COUNT     ,Total contiguous size of the memory window" "4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB"
bitfld.long 0x00 0.--3. "     JEP106_CONT       ,JEDEC continuation code" "Reserved,Reserved,Reserved,Reserved,5th bank,?..."
rgroup.long 0xff0++0xf "Component Identification Registers"
line.long 0x00 "COMPID0,Component ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PREAMBLE[7:0]    ,Bits [7:0] of the component identification"
line.long 0x04 "COMPID1,Component ID1 Register"
bitfld.long 0x04 4.--7. " CLASS            ,Class of the component" "Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,CoreSight,?..."
bitfld.long 0x04 0.--3. "  PREAMBLE[11:8]    ,Bits [11:8] of the component identification" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "COMPID2,Component ID2 Register"
hexmask.long.byte 0x08 0.--7. 1. " PREAMBLE[23:16]  ,Bits [23:16] of the component identification"
line.long 0x0c "COMPID3,Component ID3 Register"
hexmask.long.byte 0x0c 0.--7. 1. " PREAMBLE[31:24]  ,Bits [31:24] of the component identification"
tree.end
width 11.
tree.end
endif
sif COMPonent.AVAILABLE("etf9")
tree "TMC ETF9"
base e:comp.base("etf9",-1)
width 10.
group.long 0x004++0x3 "TMC Registers"
line.long 0x00 "RSZ,RAM Size Register"
hexmask.long 0x00 0.--30. 1. " RSZ         ,Size of the RAM in 32-bit words"
rgroup.long 0x00c++0x3
line.long 0x00 "STS,Status Register"
bitfld.long 0x00 5. " MEMERR      ,AXI master interface error" "No error,Error"
bitfld.long 0x00 4. "         EMPTY ,No valid trace data in the trace memory" "Not empty,Empty"
bitfld.long 0x00 3. "  FTEMPTY ,All internal pipelines and buffers empty" "Not empty,Empty"
bitfld.long 0x00 2. "  TMCREADY ,Trace capture ready" "Not ready,Ready"
textline "                   "
bitfld.long 0x00 1. " TRIGGERED   ,Trigger event detected" "Not detected,Detected"
bitfld.long 0x00 0. "     FULL  ,Ram full" "Not full,Full"
wgroup.long 0x010++0x3
hide.long 0x00 "RRD,RAM Read Data Register"
in
group.long 0x014++0xb
line.long 0x00 "RRP,RAM Read Pointer Register"
line.long 0x04 "RWP,RAM Write Pointer Register"
line.long 0x08 "TRG,Trigger Counter Register"
group.long 0x020++0x3
line.long 0x00 "CTL,Control Register"
bitfld.long 0x00 0. " TRACECAPTEN ,Trace Capture Enable" "Disabled,Enabled"
wgroup.long 0x024++0x3
line.long 0x00 "RWD,RAM Write Data Register"
group.long 0x028++0x3
line.long 0x00 "MODE,Mode Register"
bitfld.long 0x00 0.--1. " MODE        ,Mode select" "Circular Buffer,Software FIFO,Hardware FIFO,Software FIFO 2"
rgroup.long 0x02c++0x7
line.long 0x00 "LBUFLEVEL,Latched Buffer Fill Level Register"
line.long 0x04 "CBUFLEVEL,Current Buffer Fill Level Register"
group.long 0x034++0x3
line.long 0x00 "BUFWM,Buffer Level Water Mark Register"
group.long 0x038++0x7
line.long 0x00 "RRPHI,RAM Read Pointer High Register"
hexmask.long.byte 0x00 0.--7. 1. " RRPHI         ,Bits [39:32] of the read pointer"
line.long 0x04 "RWPHI,RAM Write Pointer High Register"
hexmask.long.byte 0x04 0.--7. 1. " RWPHI         ,Bits [39:32] of the write pointer"
group.long 0x110++0x3
line.long 0x00 "AXICTL,AXI Control Register"
bitfld.long 0x00 8.--11. " WRBURSTLEN    ,Maximum number of data transfers per burst" "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16"
bitfld.long 0x00 7. "     SGM ,Scatter Gather Mode Enable" "Disabled,Enabled"
bitfld.long 0x00 5. "          CC3 ,Cache allocate on writes enable" "Disabled,Enabled"
bitfld.long 0x00 4. "     CC2 ,Cache allocate on reads enable" "Disabled,Enabled"
textline "                   "
bitfld.long 0x00 3. " CC1 ,Cacheable" "Non-cacheable,Cacheable"
bitfld.long 0x00 2. "    CC0 ,Bufferable" "Non-bufferable,Bufferable"
bitfld.long 0x00 1. "    PC1 ,Secure/Non-secure Access" "Secure,Non-secure"
bitfld.long 0x00 0. "   PC0 ,Normal/Privileged Access" "Normal,Privileged"
group.long 0x118++0x7
line.long 0x00 "DBALO,Data Buffer Address Low Register"
line.long 0x04 "DBAHI,Data Buffer Address High Register"
hexmask.long.byte 0x04 0.--7. 1. " BUFADDRHI     ,Bits [39:32] of the trace buffer address"
rgroup.long 0x300++0x3
line.long 0x00 "FFSR,Formatter and Flush Status Register"
bitfld.long 0x00 1. " FTSTOPPED     ,Formatter Stopped" "No,Yes"
bitfld.long 0x00 0. "    FLINPROG          ,Flush in Progress" "No,Yes"
group.long 0x304++0x7
line.long 0x00 "FFCR,Formatter and Flush Control Register"
bitfld.long 0x00 14. " DRAINBUFFER   ,Drain trace data through ATB master interface" "No,Yes"
bitfld.long 0x00 13. "    STOPONTRIGEVT     ,Stop trace capture on trigger event" "No,Yes"
bitfld.long 0x00 12. "   STOPONFL      ,Stop formatter on completion of a flush operation" "No,Yes"
bitfld.long 0x00 10. "   TRIGONFL      ,Trigger on flush completion" "No,Yes"
textline "                   "
bitfld.long 0x00 9. " TRIGONTRIGEVT ,Trigger on a trigger event" "No,Yes"
bitfld.long 0x00 8. "    TRIGONTRIGIN      ,Trigger on TRIGIN being asserted" "No,Yes"
bitfld.long 0x00 6. "   FLUSHMAN      ,Manual Flush" "No,Yes"
bitfld.long 0x00 5. "   FONTRIGEVT    ,Flush on trigger event" "No,Yes"
textline "                   "
bitfld.long 0x00 4. " FONFLIN       ,Flush on FLUSHIN feature" "No,Yes"
bitfld.long 0x00 1. "    ENTI              ,Insertion of triggers in the formatted trace stream enable" "No,Yes"
bitfld.long 0x00 0. "   ENFT          ,Formatting enable" "No,Yes"
line.long 0x04 "PSCR,Periodic Synchronization Counter Register"
bitfld.long 0x04 5. " EMBEDSYNC     ,Embed Frame Sync packets" "No,Yes"
bitfld.long 0x04 0.--4. "    PSCOUNT           ,Reload value of the Synchronization Counter" "Disabled,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,128 bytes,256 bytes,512 bytes,1 KB,2 KB,4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB,?..."
width 13.
tree "Coresight Management Registers"
group 0xFA0--0xFA8
line.long 0x000 "CTS, Claim Tag Set"
bitfld.long 0x000 7. " SETCTV7   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 6. "        SETCTV6 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 5. " SETCTV5   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 4. "        SETCTV4 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 3. " SETCTV3   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 2. "        SETCTV2 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 1. " SETCTV1   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 0. "        SETCTV0 ,Set Claim Tag Value" "No effect,Set"
line.long 0x004 "CTC, Claim Tag Clear"
bitfld.long 0x004 7. " CLRCTV7   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 6. "        CLRCTV6 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 5. " CLRCTV5   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 4. "        CLRCTV4 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 3. " CLRCTV3   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 2. "        CLRCTV2 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 1. " CLRCTV1   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 0. "        CLRCTV0 ,Clear Claim Tag Value" "No effect,Cleared"
wgroup.long 0xfb0++0x3
line.long 0x00 "LAR,Lock Access Register"
rgroup.long 0xfb4++0x7
line.long 0x00 "LSR,Lock Status Register"
bitfld.long 0x00 2. " LOCKTYPE         ,32-bit Lock Access Register Implemented" "32-bit,?..."
bitfld.long 0x00 1. "         LOCKGRANT ,Lock Status" "Unlocked,Locked"
bitfld.long 0x00 0. "         LOCKEXIST  ,Lock control mechanism present" "Not present,Present"
line.long 0x04 "AUTHSTATUS,Authentication Status Register"
bitfld.long 0x04 6.--7. " SNID   ,Security level for secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 4.--5. "  SID  ,Security level for secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
bitfld.long 0x04 2.--3. "  NSNID ,Security level for non-secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 0.--1. "  NSID ,Security level for non-secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
rgroup.long 0xfc8++0x3
line.long 0x00 "DEVID,Device Configuration Register"
bitfld.long 0x00 11.--13. " WBUF_DEPTH  ,Number of entries in the write buffer (in ETR)" "Reserved,Reserved,4 entries,8 entries,16 entries,32 entries,?..."
bitfld.long 0x00 8.--10. "  MEMWIDTH  ,Memory interface databus width" "Reserved,Reserved,32-bit,64-bit,128-bit,256-bit,?..."
bitfld.long 0x00 6.--7. "    CONFIGTYPE ,Configuration type" "ETB,ETR,ETF,?..."
bitfld.long 0x00 5. "    CLKSCHEME ,RAM clocking scheme" "Synchronous,?..."
textline "                    "
bitfld.long 0x00 0.--4. "   ATBINPORTCOUNT   ,Type or number of ATB multiplexing" "No multiplexing,?..."
width 13.
if ((d.l(e:comp.base("etf9",-1)+0xfc8)&0xc0)==(0x00||0x40))
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,RAM->APB,?..."
bitfld.long 0x00 0.--3. "                    MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Trace sink,?..."
elif ((d.l(e:comp.base("etf9",-1)+0xfc8)&0xc0)==0x80)
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,Reserved,ATB slave->RAM->ATB master,?..."
bitfld.long 0x00 0.--3. "  MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Reserved,Trace link,?..."
else
hgroup.long 0xfcc++0x3
hide.long 0x00 "DEVTYPE,Device Type Identifier Register"
endif
group 0xf00--0xf03 "Integration Test Registers"
line.long 0x000 "ITCTRL,Integration Mode Control"
bitfld.long 0x000 0. " ENABLE       ,Enable Integration mode" "no,yes"
wgroup.long 0xee0++0x3
line.long 0x00 "ITMISCOP0,Integration Test Miscellaneous Output Register 0"
bitfld.long 0x00 1. " FULL          ,FULL output value set" "0,1"
bitfld.long 0x00 0. "     ACQCOMP       ,ACQCOMP output value set" "0,1"
rgroup.long 0xee8++0x3
line.long 0x00 "ITTRFLIN,Integration Test Trigger In and Flush In Register"
bitfld.long 0x00 1. " FLUSHIN       ,FLUSHIN output value" "0,1"
bitfld.long 0x00 0. "     TRIGIN        ,TRIGIN output value" "0,1"
rgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAS[127] ,Returns the Value of the ATDATAS[127] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[119] ,Returns the Value of the ATDATAS[119] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[111] ,Returns the Value of the ATDATAS[111] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[103] ,Returns the Value of the ATDATAS[103] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[95]  ,Returns the Value of the ATDATAS[95] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[87]  ,Returns the Value of the ATDATAS[87] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[79]  ,Returns the Value of the ATDATAS[79] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[71]  ,Returns the Value of the ATDATAS[71] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[63]  ,Returns the Value of the ATDATAS[63] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[55]  ,Returns the Value of the ATDATAS[55] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[47]  ,Returns the Value of the ATDATAS[47] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[39]  ,Returns the Value of the ATDATAS[39] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAS[31]  ,Returns the Value of the ATDATAS[31] Input Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAS[23]  ,Returns the Value of the ATDATAS[23] Input pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAS[15]  ,Returns the Value of the ATDATAS[15] Input Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAS[7]   ,Returns the Value of the ATDATAS[7] Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAS[0]   ,Returns the Value of the ATDATAS[0] Input Pin" "Low,High"
wgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFREADYS     ,Drives the AFREADYS Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDS     ,Drives the ATVALIDS Output Pin" "Low,High"
rgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDS        ,Returns the Value of the ATIDS Input Pins"
rgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESS[1]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESS[0]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 1. "  AFVALIDS     ,Returns the Value of the AFVALIDS Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYS     ,Returns the Value of the ATREADYS Input Pin" "Low,High"
wgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAM[127] ,Drives the ATDATAM[127] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[119] ,Drives the ATDATAM[119] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[111] ,Drives the ATDATAM[111] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[103] ,Drives the ATDATAM[103] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[95]  ,Drives the ATDATAM[95] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[87]  ,Drives the ATDATAM[87] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[79]  ,Drives the ATDATAM[79] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[71]  ,Drives the ATDATAM[71] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[63]  ,Drives the ATDATAM[63] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[55]  ,Drives the ATDATAM[55] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[47]  ,Drives the ATDATAM[47] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[39]  ,Drives the ATDATAM[39] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAM[31]  ,Drives the ATDATAM[31] Output Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAM[23]  ,Drives the ATDATAM[23] Output pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAM[15]  ,Drives the ATDATAM[15] Output Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAM[7]   ,Drives the ATDATAM[7] Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAM[0]   ,Drives the ATDATAM[0] Output Pin" "Low,High"
rgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDM     ,Returns the Value of the AFVALIDM Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYM     ,Returns the Value of the ATREADYM Input Pin" "Low,High"
wgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDM        ,Drives the ATIDM Output Pins"
wgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESM[1]  ,Drives the ATBYTESM[1] Output Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESM[0]  ,Drives the ATBYTESM[0] Output Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYM     ,Drives the AFREADYM Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDM     ,Drives the ATVALIDM Output Pin" "Low,High"
width 13.
rgroup.long 0xfe0++0x13 "Peripheral Identification Registers"
line.long 0x00 "PERIPHID0,Peripheral ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PART_NUMBER[7:0] ,Bits [7:0] of the component part number"
line.long 0x04 "PERIPHID1,Peripheral ID1 Register"
bitfld.long 0x04 4.--7. " JEP106[3:0]      ,Bits [3:0] of the JEDEC identity code" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
bitfld.long 0x04 0.--3. "       PART_NUMBER[11:8] ,Bits [11:8] of the component part number" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "PERIPHID2,Peripheral ID2 Register"
bitfld.long 0x08 4.--7. " REVISION         ,Revision" "Reserved,r0p1,?..."
bitfld.long 0x08 3. "   JEDEC             ,JEDEC assigned value used" "Not used,Used"
bitfld.long 0x08 0.--2. "  JEP106[6:4] ,Bits [6:4] of the JEDEC identity code" "000,001,010,011,100,101,110,111"
line.long 0x0c "PERIPHID3,Peripheral ID3 Register"
hexmask.long.byte 0x0c 4.--7. 1. " REVAND           ,Minor errata fixes"
hexmask.long.byte 0x0c 0.--3. 1. "         CUSTOMER_MODIFIED ,Customer Modified"
rgroup.long 0xfd0++0x3
line.long 0x00 "PERIPHID4,Peripheral ID4 Register"
bitfld.long 0x00 4.--7. " FOURKB_COUNT     ,Total contiguous size of the memory window" "4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB"
bitfld.long 0x00 0.--3. "     JEP106_CONT       ,JEDEC continuation code" "Reserved,Reserved,Reserved,Reserved,5th bank,?..."
rgroup.long 0xff0++0xf "Component Identification Registers"
line.long 0x00 "COMPID0,Component ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PREAMBLE[7:0]    ,Bits [7:0] of the component identification"
line.long 0x04 "COMPID1,Component ID1 Register"
bitfld.long 0x04 4.--7. " CLASS            ,Class of the component" "Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,CoreSight,?..."
bitfld.long 0x04 0.--3. "  PREAMBLE[11:8]    ,Bits [11:8] of the component identification" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "COMPID2,Component ID2 Register"
hexmask.long.byte 0x08 0.--7. 1. " PREAMBLE[23:16]  ,Bits [23:16] of the component identification"
line.long 0x0c "COMPID3,Component ID3 Register"
hexmask.long.byte 0x0c 0.--7. 1. " PREAMBLE[31:24]  ,Bits [31:24] of the component identification"
tree.end
width 11.
tree.end
endif
sif COMPonent.AVAILABLE("etf10")
tree "TMC ETF10"
base e:comp.base("etf10",-1)
width 10.
group.long 0x004++0x3 "TMC Registers"
line.long 0x00 "RSZ,RAM Size Register"
hexmask.long 0x00 0.--30. 1. " RSZ         ,Size of the RAM in 32-bit words"
rgroup.long 0x00c++0x3
line.long 0x00 "STS,Status Register"
bitfld.long 0x00 5. " MEMERR      ,AXI master interface error" "No error,Error"
bitfld.long 0x00 4. "         EMPTY ,No valid trace data in the trace memory" "Not empty,Empty"
bitfld.long 0x00 3. "  FTEMPTY ,All internal pipelines and buffers empty" "Not empty,Empty"
bitfld.long 0x00 2. "  TMCREADY ,Trace capture ready" "Not ready,Ready"
textline "                   "
bitfld.long 0x00 1. " TRIGGERED   ,Trigger event detected" "Not detected,Detected"
bitfld.long 0x00 0. "     FULL  ,Ram full" "Not full,Full"
wgroup.long 0x010++0x3
hide.long 0x00 "RRD,RAM Read Data Register"
in
group.long 0x014++0xb
line.long 0x00 "RRP,RAM Read Pointer Register"
line.long 0x04 "RWP,RAM Write Pointer Register"
line.long 0x08 "TRG,Trigger Counter Register"
group.long 0x020++0x3
line.long 0x00 "CTL,Control Register"
bitfld.long 0x00 0. " TRACECAPTEN ,Trace Capture Enable" "Disabled,Enabled"
wgroup.long 0x024++0x3
line.long 0x00 "RWD,RAM Write Data Register"
group.long 0x028++0x3
line.long 0x00 "MODE,Mode Register"
bitfld.long 0x00 0.--1. " MODE        ,Mode select" "Circular Buffer,Software FIFO,Hardware FIFO,Software FIFO 2"
rgroup.long 0x02c++0x7
line.long 0x00 "LBUFLEVEL,Latched Buffer Fill Level Register"
line.long 0x04 "CBUFLEVEL,Current Buffer Fill Level Register"
group.long 0x034++0x3
line.long 0x00 "BUFWM,Buffer Level Water Mark Register"
group.long 0x038++0x7
line.long 0x00 "RRPHI,RAM Read Pointer High Register"
hexmask.long.byte 0x00 0.--7. 1. " RRPHI         ,Bits [39:32] of the read pointer"
line.long 0x04 "RWPHI,RAM Write Pointer High Register"
hexmask.long.byte 0x04 0.--7. 1. " RWPHI         ,Bits [39:32] of the write pointer"
group.long 0x110++0x3
line.long 0x00 "AXICTL,AXI Control Register"
bitfld.long 0x00 8.--11. " WRBURSTLEN    ,Maximum number of data transfers per burst" "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16"
bitfld.long 0x00 7. "     SGM ,Scatter Gather Mode Enable" "Disabled,Enabled"
bitfld.long 0x00 5. "          CC3 ,Cache allocate on writes enable" "Disabled,Enabled"
bitfld.long 0x00 4. "     CC2 ,Cache allocate on reads enable" "Disabled,Enabled"
textline "                   "
bitfld.long 0x00 3. " CC1 ,Cacheable" "Non-cacheable,Cacheable"
bitfld.long 0x00 2. "    CC0 ,Bufferable" "Non-bufferable,Bufferable"
bitfld.long 0x00 1. "    PC1 ,Secure/Non-secure Access" "Secure,Non-secure"
bitfld.long 0x00 0. "   PC0 ,Normal/Privileged Access" "Normal,Privileged"
group.long 0x118++0x7
line.long 0x00 "DBALO,Data Buffer Address Low Register"
line.long 0x04 "DBAHI,Data Buffer Address High Register"
hexmask.long.byte 0x04 0.--7. 1. " BUFADDRHI     ,Bits [39:32] of the trace buffer address"
rgroup.long 0x300++0x3
line.long 0x00 "FFSR,Formatter and Flush Status Register"
bitfld.long 0x00 1. " FTSTOPPED     ,Formatter Stopped" "No,Yes"
bitfld.long 0x00 0. "    FLINPROG          ,Flush in Progress" "No,Yes"
group.long 0x304++0x7
line.long 0x00 "FFCR,Formatter and Flush Control Register"
bitfld.long 0x00 14. " DRAINBUFFER   ,Drain trace data through ATB master interface" "No,Yes"
bitfld.long 0x00 13. "    STOPONTRIGEVT     ,Stop trace capture on trigger event" "No,Yes"
bitfld.long 0x00 12. "   STOPONFL      ,Stop formatter on completion of a flush operation" "No,Yes"
bitfld.long 0x00 10. "   TRIGONFL      ,Trigger on flush completion" "No,Yes"
textline "                   "
bitfld.long 0x00 9. " TRIGONTRIGEVT ,Trigger on a trigger event" "No,Yes"
bitfld.long 0x00 8. "    TRIGONTRIGIN      ,Trigger on TRIGIN being asserted" "No,Yes"
bitfld.long 0x00 6. "   FLUSHMAN      ,Manual Flush" "No,Yes"
bitfld.long 0x00 5. "   FONTRIGEVT    ,Flush on trigger event" "No,Yes"
textline "                   "
bitfld.long 0x00 4. " FONFLIN       ,Flush on FLUSHIN feature" "No,Yes"
bitfld.long 0x00 1. "    ENTI              ,Insertion of triggers in the formatted trace stream enable" "No,Yes"
bitfld.long 0x00 0. "   ENFT          ,Formatting enable" "No,Yes"
line.long 0x04 "PSCR,Periodic Synchronization Counter Register"
bitfld.long 0x04 5. " EMBEDSYNC     ,Embed Frame Sync packets" "No,Yes"
bitfld.long 0x04 0.--4. "    PSCOUNT           ,Reload value of the Synchronization Counter" "Disabled,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,128 bytes,256 bytes,512 bytes,1 KB,2 KB,4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB,?..."
width 13.
tree "Coresight Management Registers"
group 0xFA0--0xFA8
line.long 0x000 "CTS, Claim Tag Set"
bitfld.long 0x000 7. " SETCTV7   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 6. "        SETCTV6 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 5. " SETCTV5   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 4. "        SETCTV4 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 3. " SETCTV3   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 2. "        SETCTV2 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 1. " SETCTV1   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 0. "        SETCTV0 ,Set Claim Tag Value" "No effect,Set"
line.long 0x004 "CTC, Claim Tag Clear"
bitfld.long 0x004 7. " CLRCTV7   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 6. "        CLRCTV6 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 5. " CLRCTV5   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 4. "        CLRCTV4 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 3. " CLRCTV3   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 2. "        CLRCTV2 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 1. " CLRCTV1   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 0. "        CLRCTV0 ,Clear Claim Tag Value" "No effect,Cleared"
wgroup.long 0xfb0++0x3
line.long 0x00 "LAR,Lock Access Register"
rgroup.long 0xfb4++0x7
line.long 0x00 "LSR,Lock Status Register"
bitfld.long 0x00 2. " LOCKTYPE         ,32-bit Lock Access Register Implemented" "32-bit,?..."
bitfld.long 0x00 1. "         LOCKGRANT ,Lock Status" "Unlocked,Locked"
bitfld.long 0x00 0. "         LOCKEXIST  ,Lock control mechanism present" "Not present,Present"
line.long 0x04 "AUTHSTATUS,Authentication Status Register"
bitfld.long 0x04 6.--7. " SNID   ,Security level for secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 4.--5. "  SID  ,Security level for secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
bitfld.long 0x04 2.--3. "  NSNID ,Security level for non-secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 0.--1. "  NSID ,Security level for non-secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
rgroup.long 0xfc8++0x3
line.long 0x00 "DEVID,Device Configuration Register"
bitfld.long 0x00 11.--13. " WBUF_DEPTH  ,Number of entries in the write buffer (in ETR)" "Reserved,Reserved,4 entries,8 entries,16 entries,32 entries,?..."
bitfld.long 0x00 8.--10. "  MEMWIDTH  ,Memory interface databus width" "Reserved,Reserved,32-bit,64-bit,128-bit,256-bit,?..."
bitfld.long 0x00 6.--7. "    CONFIGTYPE ,Configuration type" "ETB,ETR,ETF,?..."
bitfld.long 0x00 5. "    CLKSCHEME ,RAM clocking scheme" "Synchronous,?..."
textline "                    "
bitfld.long 0x00 0.--4. "   ATBINPORTCOUNT   ,Type or number of ATB multiplexing" "No multiplexing,?..."
width 13.
if ((d.l(e:comp.base("etf10",-1)+0xfc8)&0xc0)==(0x00||0x40))
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,RAM->APB,?..."
bitfld.long 0x00 0.--3. "                    MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Trace sink,?..."
elif ((d.l(e:comp.base("etf10",-1)+0xfc8)&0xc0)==0x80)
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,Reserved,ATB slave->RAM->ATB master,?..."
bitfld.long 0x00 0.--3. "  MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Reserved,Trace link,?..."
else
hgroup.long 0xfcc++0x3
hide.long 0x00 "DEVTYPE,Device Type Identifier Register"
endif
group 0xf00--0xf03 "Integration Test Registers"
line.long 0x000 "ITCTRL,Integration Mode Control"
bitfld.long 0x000 0. " ENABLE       ,Enable Integration mode" "no,yes"
wgroup.long 0xee0++0x3
line.long 0x00 "ITMISCOP0,Integration Test Miscellaneous Output Register 0"
bitfld.long 0x00 1. " FULL          ,FULL output value set" "0,1"
bitfld.long 0x00 0. "     ACQCOMP       ,ACQCOMP output value set" "0,1"
rgroup.long 0xee8++0x3
line.long 0x00 "ITTRFLIN,Integration Test Trigger In and Flush In Register"
bitfld.long 0x00 1. " FLUSHIN       ,FLUSHIN output value" "0,1"
bitfld.long 0x00 0. "     TRIGIN        ,TRIGIN output value" "0,1"
rgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAS[127] ,Returns the Value of the ATDATAS[127] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[119] ,Returns the Value of the ATDATAS[119] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[111] ,Returns the Value of the ATDATAS[111] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[103] ,Returns the Value of the ATDATAS[103] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[95]  ,Returns the Value of the ATDATAS[95] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[87]  ,Returns the Value of the ATDATAS[87] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[79]  ,Returns the Value of the ATDATAS[79] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[71]  ,Returns the Value of the ATDATAS[71] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[63]  ,Returns the Value of the ATDATAS[63] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[55]  ,Returns the Value of the ATDATAS[55] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[47]  ,Returns the Value of the ATDATAS[47] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[39]  ,Returns the Value of the ATDATAS[39] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAS[31]  ,Returns the Value of the ATDATAS[31] Input Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAS[23]  ,Returns the Value of the ATDATAS[23] Input pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAS[15]  ,Returns the Value of the ATDATAS[15] Input Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAS[7]   ,Returns the Value of the ATDATAS[7] Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAS[0]   ,Returns the Value of the ATDATAS[0] Input Pin" "Low,High"
wgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFREADYS     ,Drives the AFREADYS Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDS     ,Drives the ATVALIDS Output Pin" "Low,High"
rgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDS        ,Returns the Value of the ATIDS Input Pins"
rgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESS[1]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESS[0]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 1. "  AFVALIDS     ,Returns the Value of the AFVALIDS Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYS     ,Returns the Value of the ATREADYS Input Pin" "Low,High"
wgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAM[127] ,Drives the ATDATAM[127] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[119] ,Drives the ATDATAM[119] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[111] ,Drives the ATDATAM[111] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[103] ,Drives the ATDATAM[103] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[95]  ,Drives the ATDATAM[95] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[87]  ,Drives the ATDATAM[87] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[79]  ,Drives the ATDATAM[79] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[71]  ,Drives the ATDATAM[71] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[63]  ,Drives the ATDATAM[63] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[55]  ,Drives the ATDATAM[55] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[47]  ,Drives the ATDATAM[47] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[39]  ,Drives the ATDATAM[39] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAM[31]  ,Drives the ATDATAM[31] Output Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAM[23]  ,Drives the ATDATAM[23] Output pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAM[15]  ,Drives the ATDATAM[15] Output Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAM[7]   ,Drives the ATDATAM[7] Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAM[0]   ,Drives the ATDATAM[0] Output Pin" "Low,High"
rgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDM     ,Returns the Value of the AFVALIDM Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYM     ,Returns the Value of the ATREADYM Input Pin" "Low,High"
wgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDM        ,Drives the ATIDM Output Pins"
wgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESM[1]  ,Drives the ATBYTESM[1] Output Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESM[0]  ,Drives the ATBYTESM[0] Output Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYM     ,Drives the AFREADYM Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDM     ,Drives the ATVALIDM Output Pin" "Low,High"
width 13.
rgroup.long 0xfe0++0x13 "Peripheral Identification Registers"
line.long 0x00 "PERIPHID0,Peripheral ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PART_NUMBER[7:0] ,Bits [7:0] of the component part number"
line.long 0x04 "PERIPHID1,Peripheral ID1 Register"
bitfld.long 0x04 4.--7. " JEP106[3:0]      ,Bits [3:0] of the JEDEC identity code" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
bitfld.long 0x04 0.--3. "       PART_NUMBER[11:8] ,Bits [11:8] of the component part number" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "PERIPHID2,Peripheral ID2 Register"
bitfld.long 0x08 4.--7. " REVISION         ,Revision" "Reserved,r0p1,?..."
bitfld.long 0x08 3. "   JEDEC             ,JEDEC assigned value used" "Not used,Used"
bitfld.long 0x08 0.--2. "  JEP106[6:4] ,Bits [6:4] of the JEDEC identity code" "000,001,010,011,100,101,110,111"
line.long 0x0c "PERIPHID3,Peripheral ID3 Register"
hexmask.long.byte 0x0c 4.--7. 1. " REVAND           ,Minor errata fixes"
hexmask.long.byte 0x0c 0.--3. 1. "         CUSTOMER_MODIFIED ,Customer Modified"
rgroup.long 0xfd0++0x3
line.long 0x00 "PERIPHID4,Peripheral ID4 Register"
bitfld.long 0x00 4.--7. " FOURKB_COUNT     ,Total contiguous size of the memory window" "4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB"
bitfld.long 0x00 0.--3. "     JEP106_CONT       ,JEDEC continuation code" "Reserved,Reserved,Reserved,Reserved,5th bank,?..."
rgroup.long 0xff0++0xf "Component Identification Registers"
line.long 0x00 "COMPID0,Component ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PREAMBLE[7:0]    ,Bits [7:0] of the component identification"
line.long 0x04 "COMPID1,Component ID1 Register"
bitfld.long 0x04 4.--7. " CLASS            ,Class of the component" "Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,CoreSight,?..."
bitfld.long 0x04 0.--3. "  PREAMBLE[11:8]    ,Bits [11:8] of the component identification" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "COMPID2,Component ID2 Register"
hexmask.long.byte 0x08 0.--7. 1. " PREAMBLE[23:16]  ,Bits [23:16] of the component identification"
line.long 0x0c "COMPID3,Component ID3 Register"
hexmask.long.byte 0x0c 0.--7. 1. " PREAMBLE[31:24]  ,Bits [31:24] of the component identification"
tree.end
width 11.
tree.end
endif
sif COMPonent.AVAILABLE("etr1")
tree "TMC ETR1"
base e:comp.base("etr1",-1)
width 10.
group.long 0x004++0x3 "TMC Registers"
line.long 0x00 "RSZ,RAM Size Register"
hexmask.long 0x00 0.--30. 1. " RSZ         ,Size of the RAM in 32-bit words"
rgroup.long 0x00c++0x3
line.long 0x00 "STS,Status Register"
bitfld.long 0x00 5. " MEMERR      ,AXI master interface error" "No error,Error"
bitfld.long 0x00 4. "         EMPTY ,No valid trace data in the trace memory" "Not empty,Empty"
bitfld.long 0x00 3. "  FTEMPTY ,All internal pipelines and buffers empty" "Not empty,Empty"
bitfld.long 0x00 2. "  TMCREADY ,Trace capture ready" "Not ready,Ready"
textline "                   "
bitfld.long 0x00 1. " TRIGGERED   ,Trigger event detected" "Not detected,Detected"
bitfld.long 0x00 0. "     FULL  ,Ram full" "Not full,Full"
wgroup.long 0x010++0x3
hide.long 0x00 "RRD,RAM Read Data Register"
in
group.long 0x014++0xb
line.long 0x00 "RRP,RAM Read Pointer Register"
line.long 0x04 "RWP,RAM Write Pointer Register"
line.long 0x08 "TRG,Trigger Counter Register"
group.long 0x020++0x3
line.long 0x00 "CTL,Control Register"
bitfld.long 0x00 0. " TRACECAPTEN ,Trace Capture Enable" "Disabled,Enabled"
wgroup.long 0x024++0x3
line.long 0x00 "RWD,RAM Write Data Register"
group.long 0x028++0x3
line.long 0x00 "MODE,Mode Register"
bitfld.long 0x00 0.--1. " MODE        ,Mode select" "Circular Buffer,Software FIFO,Hardware FIFO,Software FIFO 2"
rgroup.long 0x02c++0x7
line.long 0x00 "LBUFLEVEL,Latched Buffer Fill Level Register"
line.long 0x04 "CBUFLEVEL,Current Buffer Fill Level Register"
group.long 0x034++0x3
line.long 0x00 "BUFWM,Buffer Level Water Mark Register"
group.long 0x038++0x7
line.long 0x00 "RRPHI,RAM Read Pointer High Register"
hexmask.long.byte 0x00 0.--7. 1. " RRPHI         ,Bits [39:32] of the read pointer"
line.long 0x04 "RWPHI,RAM Write Pointer High Register"
hexmask.long.byte 0x04 0.--7. 1. " RWPHI         ,Bits [39:32] of the write pointer"
group.long 0x110++0x3
line.long 0x00 "AXICTL,AXI Control Register"
bitfld.long 0x00 8.--11. " WRBURSTLEN    ,Maximum number of data transfers per burst" "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16"
bitfld.long 0x00 7. "     SGM ,Scatter Gather Mode Enable" "Disabled,Enabled"
bitfld.long 0x00 5. "          CC3 ,Cache allocate on writes enable" "Disabled,Enabled"
bitfld.long 0x00 4. "     CC2 ,Cache allocate on reads enable" "Disabled,Enabled"
textline "                   "
bitfld.long 0x00 3. " CC1 ,Cacheable" "Non-cacheable,Cacheable"
bitfld.long 0x00 2. "    CC0 ,Bufferable" "Non-bufferable,Bufferable"
bitfld.long 0x00 1. "    PC1 ,Secure/Non-secure Access" "Secure,Non-secure"
bitfld.long 0x00 0. "   PC0 ,Normal/Privileged Access" "Normal,Privileged"
group.long 0x118++0x7
line.long 0x00 "DBALO,Data Buffer Address Low Register"
line.long 0x04 "DBAHI,Data Buffer Address High Register"
hexmask.long.byte 0x04 0.--7. 1. " BUFADDRHI     ,Bits [39:32] of the trace buffer address"
rgroup.long 0x300++0x3
line.long 0x00 "FFSR,Formatter and Flush Status Register"
bitfld.long 0x00 1. " FTSTOPPED     ,Formatter Stopped" "No,Yes"
bitfld.long 0x00 0. "    FLINPROG          ,Flush in Progress" "No,Yes"
group.long 0x304++0x7
line.long 0x00 "FFCR,Formatter and Flush Control Register"
bitfld.long 0x00 14. " DRAINBUFFER   ,Drain trace data through ATB master interface" "No,Yes"
bitfld.long 0x00 13. "    STOPONTRIGEVT     ,Stop trace capture on trigger event" "No,Yes"
bitfld.long 0x00 12. "   STOPONFL      ,Stop formatter on completion of a flush operation" "No,Yes"
bitfld.long 0x00 10. "   TRIGONFL      ,Trigger on flush completion" "No,Yes"
textline "                   "
bitfld.long 0x00 9. " TRIGONTRIGEVT ,Trigger on a trigger event" "No,Yes"
bitfld.long 0x00 8. "    TRIGONTRIGIN      ,Trigger on TRIGIN being asserted" "No,Yes"
bitfld.long 0x00 6. "   FLUSHMAN      ,Manual Flush" "No,Yes"
bitfld.long 0x00 5. "   FONTRIGEVT    ,Flush on trigger event" "No,Yes"
textline "                   "
bitfld.long 0x00 4. " FONFLIN       ,Flush on FLUSHIN feature" "No,Yes"
bitfld.long 0x00 1. "    ENTI              ,Insertion of triggers in the formatted trace stream enable" "No,Yes"
bitfld.long 0x00 0. "   ENFT          ,Formatting enable" "No,Yes"
line.long 0x04 "PSCR,Periodic Synchronization Counter Register"
bitfld.long 0x04 5. " EMBEDSYNC     ,Embed Frame Sync packets" "No,Yes"
bitfld.long 0x04 0.--4. "    PSCOUNT           ,Reload value of the Synchronization Counter" "Disabled,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,128 bytes,256 bytes,512 bytes,1 KB,2 KB,4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB,?..."
width 13.
tree "Coresight Management Registers"
group 0xFA0--0xFA8
line.long 0x000 "CTS, Claim Tag Set"
bitfld.long 0x000 7. " SETCTV7   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 6. "        SETCTV6 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 5. " SETCTV5   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 4. "        SETCTV4 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 3. " SETCTV3   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 2. "        SETCTV2 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 1. " SETCTV1   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 0. "        SETCTV0 ,Set Claim Tag Value" "No effect,Set"
line.long 0x004 "CTC, Claim Tag Clear"
bitfld.long 0x004 7. " CLRCTV7   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 6. "        CLRCTV6 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 5. " CLRCTV5   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 4. "        CLRCTV4 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 3. " CLRCTV3   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 2. "        CLRCTV2 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 1. " CLRCTV1   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 0. "        CLRCTV0 ,Clear Claim Tag Value" "No effect,Cleared"
wgroup.long 0xfb0++0x3
line.long 0x00 "LAR,Lock Access Register"
rgroup.long 0xfb4++0x7
line.long 0x00 "LSR,Lock Status Register"
bitfld.long 0x00 2. " LOCKTYPE         ,32-bit Lock Access Register Implemented" "32-bit,?..."
bitfld.long 0x00 1. "         LOCKGRANT ,Lock Status" "Unlocked,Locked"
bitfld.long 0x00 0. "         LOCKEXIST  ,Lock control mechanism present" "Not present,Present"
line.long 0x04 "AUTHSTATUS,Authentication Status Register"
bitfld.long 0x04 6.--7. " SNID   ,Security level for secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 4.--5. "  SID  ,Security level for secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
bitfld.long 0x04 2.--3. "  NSNID ,Security level for non-secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 0.--1. "  NSID ,Security level for non-secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
rgroup.long 0xfc8++0x3
line.long 0x00 "DEVID,Device Configuration Register"
bitfld.long 0x00 11.--13. " WBUF_DEPTH  ,Number of entries in the write buffer (in ETR)" "Reserved,Reserved,4 entries,8 entries,16 entries,32 entries,?..."
bitfld.long 0x00 8.--10. "  MEMWIDTH  ,Memory interface databus width" "Reserved,Reserved,32-bit,64-bit,128-bit,256-bit,?..."
bitfld.long 0x00 6.--7. "    CONFIGTYPE ,Configuration type" "ETB,ETR,ETF,?..."
bitfld.long 0x00 5. "    CLKSCHEME ,RAM clocking scheme" "Synchronous,?..."
textline "                    "
bitfld.long 0x00 0.--4. "   ATBINPORTCOUNT   ,Type or number of ATB multiplexing" "No multiplexing,?..."
width 13.
if ((d.l(e:comp.base("etr1",-1)+0xfc8)&0xc0)==(0x00||0x40))
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,RAM->APB,?..."
bitfld.long 0x00 0.--3. "                    MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Trace sink,?..."
elif ((d.l(e:comp.base("etr1",-1)+0xfc8)&0xc0)==0x80)
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,Reserved,ATB slave->RAM->ATB master,?..."
bitfld.long 0x00 0.--3. "  MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Reserved,Trace link,?..."
else
hgroup.long 0xfcc++0x3
hide.long 0x00 "DEVTYPE,Device Type Identifier Register"
endif
group 0xf00--0xf03 "Integration Test Registers"
line.long 0x000 "ITCTRL,Integration Mode Control"
bitfld.long 0x000 0. " ENABLE       ,Enable Integration mode" "no,yes"
wgroup.long 0xee0++0x3
line.long 0x00 "ITMISCOP0,Integration Test Miscellaneous Output Register 0"
bitfld.long 0x00 1. " FULL          ,FULL output value set" "0,1"
bitfld.long 0x00 0. "     ACQCOMP       ,ACQCOMP output value set" "0,1"
rgroup.long 0xee8++0x3
line.long 0x00 "ITTRFLIN,Integration Test Trigger In and Flush In Register"
bitfld.long 0x00 1. " FLUSHIN       ,FLUSHIN output value" "0,1"
bitfld.long 0x00 0. "     TRIGIN        ,TRIGIN output value" "0,1"
rgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAS[127] ,Returns the Value of the ATDATAS[127] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[119] ,Returns the Value of the ATDATAS[119] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[111] ,Returns the Value of the ATDATAS[111] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[103] ,Returns the Value of the ATDATAS[103] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[95]  ,Returns the Value of the ATDATAS[95] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[87]  ,Returns the Value of the ATDATAS[87] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[79]  ,Returns the Value of the ATDATAS[79] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[71]  ,Returns the Value of the ATDATAS[71] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[63]  ,Returns the Value of the ATDATAS[63] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[55]  ,Returns the Value of the ATDATAS[55] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[47]  ,Returns the Value of the ATDATAS[47] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[39]  ,Returns the Value of the ATDATAS[39] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAS[31]  ,Returns the Value of the ATDATAS[31] Input Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAS[23]  ,Returns the Value of the ATDATAS[23] Input pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAS[15]  ,Returns the Value of the ATDATAS[15] Input Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAS[7]   ,Returns the Value of the ATDATAS[7] Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAS[0]   ,Returns the Value of the ATDATAS[0] Input Pin" "Low,High"
wgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFREADYS     ,Drives the AFREADYS Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDS     ,Drives the ATVALIDS Output Pin" "Low,High"
rgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDS        ,Returns the Value of the ATIDS Input Pins"
rgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESS[1]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESS[0]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 1. "  AFVALIDS     ,Returns the Value of the AFVALIDS Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYS     ,Returns the Value of the ATREADYS Input Pin" "Low,High"
wgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAM[127] ,Drives the ATDATAM[127] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[119] ,Drives the ATDATAM[119] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[111] ,Drives the ATDATAM[111] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[103] ,Drives the ATDATAM[103] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[95]  ,Drives the ATDATAM[95] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[87]  ,Drives the ATDATAM[87] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[79]  ,Drives the ATDATAM[79] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[71]  ,Drives the ATDATAM[71] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[63]  ,Drives the ATDATAM[63] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[55]  ,Drives the ATDATAM[55] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[47]  ,Drives the ATDATAM[47] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[39]  ,Drives the ATDATAM[39] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAM[31]  ,Drives the ATDATAM[31] Output Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAM[23]  ,Drives the ATDATAM[23] Output pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAM[15]  ,Drives the ATDATAM[15] Output Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAM[7]   ,Drives the ATDATAM[7] Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAM[0]   ,Drives the ATDATAM[0] Output Pin" "Low,High"
rgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDM     ,Returns the Value of the AFVALIDM Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYM     ,Returns the Value of the ATREADYM Input Pin" "Low,High"
wgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDM        ,Drives the ATIDM Output Pins"
wgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESM[1]  ,Drives the ATBYTESM[1] Output Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESM[0]  ,Drives the ATBYTESM[0] Output Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYM     ,Drives the AFREADYM Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDM     ,Drives the ATVALIDM Output Pin" "Low,High"
width 13.
rgroup.long 0xfe0++0x13 "Peripheral Identification Registers"
line.long 0x00 "PERIPHID0,Peripheral ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PART_NUMBER[7:0] ,Bits [7:0] of the component part number"
line.long 0x04 "PERIPHID1,Peripheral ID1 Register"
bitfld.long 0x04 4.--7. " JEP106[3:0]      ,Bits [3:0] of the JEDEC identity code" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
bitfld.long 0x04 0.--3. "       PART_NUMBER[11:8] ,Bits [11:8] of the component part number" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "PERIPHID2,Peripheral ID2 Register"
bitfld.long 0x08 4.--7. " REVISION         ,Revision" "Reserved,r0p1,?..."
bitfld.long 0x08 3. "   JEDEC             ,JEDEC assigned value used" "Not used,Used"
bitfld.long 0x08 0.--2. "  JEP106[6:4] ,Bits [6:4] of the JEDEC identity code" "000,001,010,011,100,101,110,111"
line.long 0x0c "PERIPHID3,Peripheral ID3 Register"
hexmask.long.byte 0x0c 4.--7. 1. " REVAND           ,Minor errata fixes"
hexmask.long.byte 0x0c 0.--3. 1. "         CUSTOMER_MODIFIED ,Customer Modified"
rgroup.long 0xfd0++0x3
line.long 0x00 "PERIPHID4,Peripheral ID4 Register"
bitfld.long 0x00 4.--7. " FOURKB_COUNT     ,Total contiguous size of the memory window" "4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB"
bitfld.long 0x00 0.--3. "     JEP106_CONT       ,JEDEC continuation code" "Reserved,Reserved,Reserved,Reserved,5th bank,?..."
rgroup.long 0xff0++0xf "Component Identification Registers"
line.long 0x00 "COMPID0,Component ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PREAMBLE[7:0]    ,Bits [7:0] of the component identification"
line.long 0x04 "COMPID1,Component ID1 Register"
bitfld.long 0x04 4.--7. " CLASS            ,Class of the component" "Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,CoreSight,?..."
bitfld.long 0x04 0.--3. "  PREAMBLE[11:8]    ,Bits [11:8] of the component identification" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "COMPID2,Component ID2 Register"
hexmask.long.byte 0x08 0.--7. 1. " PREAMBLE[23:16]  ,Bits [23:16] of the component identification"
line.long 0x0c "COMPID3,Component ID3 Register"
hexmask.long.byte 0x0c 0.--7. 1. " PREAMBLE[31:24]  ,Bits [31:24] of the component identification"
tree.end
width 11.
tree.end
endif
sif COMPonent.AVAILABLE("etr2")
tree "TMC ETR2"
base e:comp.base("etr2",-1)
width 10.
group.long 0x004++0x3 "TMC Registers"
line.long 0x00 "RSZ,RAM Size Register"
hexmask.long 0x00 0.--30. 1. " RSZ         ,Size of the RAM in 32-bit words"
rgroup.long 0x00c++0x3
line.long 0x00 "STS,Status Register"
bitfld.long 0x00 5. " MEMERR      ,AXI master interface error" "No error,Error"
bitfld.long 0x00 4. "         EMPTY ,No valid trace data in the trace memory" "Not empty,Empty"
bitfld.long 0x00 3. "  FTEMPTY ,All internal pipelines and buffers empty" "Not empty,Empty"
bitfld.long 0x00 2. "  TMCREADY ,Trace capture ready" "Not ready,Ready"
textline "                   "
bitfld.long 0x00 1. " TRIGGERED   ,Trigger event detected" "Not detected,Detected"
bitfld.long 0x00 0. "     FULL  ,Ram full" "Not full,Full"
wgroup.long 0x010++0x3
hide.long 0x00 "RRD,RAM Read Data Register"
in
group.long 0x014++0xb
line.long 0x00 "RRP,RAM Read Pointer Register"
line.long 0x04 "RWP,RAM Write Pointer Register"
line.long 0x08 "TRG,Trigger Counter Register"
group.long 0x020++0x3
line.long 0x00 "CTL,Control Register"
bitfld.long 0x00 0. " TRACECAPTEN ,Trace Capture Enable" "Disabled,Enabled"
wgroup.long 0x024++0x3
line.long 0x00 "RWD,RAM Write Data Register"
group.long 0x028++0x3
line.long 0x00 "MODE,Mode Register"
bitfld.long 0x00 0.--1. " MODE        ,Mode select" "Circular Buffer,Software FIFO,Hardware FIFO,Software FIFO 2"
rgroup.long 0x02c++0x7
line.long 0x00 "LBUFLEVEL,Latched Buffer Fill Level Register"
line.long 0x04 "CBUFLEVEL,Current Buffer Fill Level Register"
group.long 0x034++0x3
line.long 0x00 "BUFWM,Buffer Level Water Mark Register"
group.long 0x038++0x7
line.long 0x00 "RRPHI,RAM Read Pointer High Register"
hexmask.long.byte 0x00 0.--7. 1. " RRPHI         ,Bits [39:32] of the read pointer"
line.long 0x04 "RWPHI,RAM Write Pointer High Register"
hexmask.long.byte 0x04 0.--7. 1. " RWPHI         ,Bits [39:32] of the write pointer"
group.long 0x110++0x3
line.long 0x00 "AXICTL,AXI Control Register"
bitfld.long 0x00 8.--11. " WRBURSTLEN    ,Maximum number of data transfers per burst" "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16"
bitfld.long 0x00 7. "     SGM ,Scatter Gather Mode Enable" "Disabled,Enabled"
bitfld.long 0x00 5. "          CC3 ,Cache allocate on writes enable" "Disabled,Enabled"
bitfld.long 0x00 4. "     CC2 ,Cache allocate on reads enable" "Disabled,Enabled"
textline "                   "
bitfld.long 0x00 3. " CC1 ,Cacheable" "Non-cacheable,Cacheable"
bitfld.long 0x00 2. "    CC0 ,Bufferable" "Non-bufferable,Bufferable"
bitfld.long 0x00 1. "    PC1 ,Secure/Non-secure Access" "Secure,Non-secure"
bitfld.long 0x00 0. "   PC0 ,Normal/Privileged Access" "Normal,Privileged"
group.long 0x118++0x7
line.long 0x00 "DBALO,Data Buffer Address Low Register"
line.long 0x04 "DBAHI,Data Buffer Address High Register"
hexmask.long.byte 0x04 0.--7. 1. " BUFADDRHI     ,Bits [39:32] of the trace buffer address"
rgroup.long 0x300++0x3
line.long 0x00 "FFSR,Formatter and Flush Status Register"
bitfld.long 0x00 1. " FTSTOPPED     ,Formatter Stopped" "No,Yes"
bitfld.long 0x00 0. "    FLINPROG          ,Flush in Progress" "No,Yes"
group.long 0x304++0x7
line.long 0x00 "FFCR,Formatter and Flush Control Register"
bitfld.long 0x00 14. " DRAINBUFFER   ,Drain trace data through ATB master interface" "No,Yes"
bitfld.long 0x00 13. "    STOPONTRIGEVT     ,Stop trace capture on trigger event" "No,Yes"
bitfld.long 0x00 12. "   STOPONFL      ,Stop formatter on completion of a flush operation" "No,Yes"
bitfld.long 0x00 10. "   TRIGONFL      ,Trigger on flush completion" "No,Yes"
textline "                   "
bitfld.long 0x00 9. " TRIGONTRIGEVT ,Trigger on a trigger event" "No,Yes"
bitfld.long 0x00 8. "    TRIGONTRIGIN      ,Trigger on TRIGIN being asserted" "No,Yes"
bitfld.long 0x00 6. "   FLUSHMAN      ,Manual Flush" "No,Yes"
bitfld.long 0x00 5. "   FONTRIGEVT    ,Flush on trigger event" "No,Yes"
textline "                   "
bitfld.long 0x00 4. " FONFLIN       ,Flush on FLUSHIN feature" "No,Yes"
bitfld.long 0x00 1. "    ENTI              ,Insertion of triggers in the formatted trace stream enable" "No,Yes"
bitfld.long 0x00 0. "   ENFT          ,Formatting enable" "No,Yes"
line.long 0x04 "PSCR,Periodic Synchronization Counter Register"
bitfld.long 0x04 5. " EMBEDSYNC     ,Embed Frame Sync packets" "No,Yes"
bitfld.long 0x04 0.--4. "    PSCOUNT           ,Reload value of the Synchronization Counter" "Disabled,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,128 bytes,256 bytes,512 bytes,1 KB,2 KB,4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB,?..."
width 13.
tree "Coresight Management Registers"
group 0xFA0--0xFA8
line.long 0x000 "CTS, Claim Tag Set"
bitfld.long 0x000 7. " SETCTV7   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 6. "        SETCTV6 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 5. " SETCTV5   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 4. "        SETCTV4 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 3. " SETCTV3   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 2. "        SETCTV2 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 1. " SETCTV1   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 0. "        SETCTV0 ,Set Claim Tag Value" "No effect,Set"
line.long 0x004 "CTC, Claim Tag Clear"
bitfld.long 0x004 7. " CLRCTV7   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 6. "        CLRCTV6 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 5. " CLRCTV5   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 4. "        CLRCTV4 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 3. " CLRCTV3   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 2. "        CLRCTV2 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 1. " CLRCTV1   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 0. "        CLRCTV0 ,Clear Claim Tag Value" "No effect,Cleared"
wgroup.long 0xfb0++0x3
line.long 0x00 "LAR,Lock Access Register"
rgroup.long 0xfb4++0x7
line.long 0x00 "LSR,Lock Status Register"
bitfld.long 0x00 2. " LOCKTYPE         ,32-bit Lock Access Register Implemented" "32-bit,?..."
bitfld.long 0x00 1. "         LOCKGRANT ,Lock Status" "Unlocked,Locked"
bitfld.long 0x00 0. "         LOCKEXIST  ,Lock control mechanism present" "Not present,Present"
line.long 0x04 "AUTHSTATUS,Authentication Status Register"
bitfld.long 0x04 6.--7. " SNID   ,Security level for secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 4.--5. "  SID  ,Security level for secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
bitfld.long 0x04 2.--3. "  NSNID ,Security level for non-secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 0.--1. "  NSID ,Security level for non-secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
rgroup.long 0xfc8++0x3
line.long 0x00 "DEVID,Device Configuration Register"
bitfld.long 0x00 11.--13. " WBUF_DEPTH  ,Number of entries in the write buffer (in ETR)" "Reserved,Reserved,4 entries,8 entries,16 entries,32 entries,?..."
bitfld.long 0x00 8.--10. "  MEMWIDTH  ,Memory interface databus width" "Reserved,Reserved,32-bit,64-bit,128-bit,256-bit,?..."
bitfld.long 0x00 6.--7. "    CONFIGTYPE ,Configuration type" "ETB,ETR,ETF,?..."
bitfld.long 0x00 5. "    CLKSCHEME ,RAM clocking scheme" "Synchronous,?..."
textline "                    "
bitfld.long 0x00 0.--4. "   ATBINPORTCOUNT   ,Type or number of ATB multiplexing" "No multiplexing,?..."
width 13.
if ((d.l(e:comp.base("etr2",-1)+0xfc8)&0xc0)==(0x00||0x40))
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,RAM->APB,?..."
bitfld.long 0x00 0.--3. "                    MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Trace sink,?..."
elif ((d.l(e:comp.base("etr2",-1)+0xfc8)&0xc0)==0x80)
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,Reserved,ATB slave->RAM->ATB master,?..."
bitfld.long 0x00 0.--3. "  MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Reserved,Trace link,?..."
else
hgroup.long 0xfcc++0x3
hide.long 0x00 "DEVTYPE,Device Type Identifier Register"
endif
group 0xf00--0xf03 "Integration Test Registers"
line.long 0x000 "ITCTRL,Integration Mode Control"
bitfld.long 0x000 0. " ENABLE       ,Enable Integration mode" "no,yes"
wgroup.long 0xee0++0x3
line.long 0x00 "ITMISCOP0,Integration Test Miscellaneous Output Register 0"
bitfld.long 0x00 1. " FULL          ,FULL output value set" "0,1"
bitfld.long 0x00 0. "     ACQCOMP       ,ACQCOMP output value set" "0,1"
rgroup.long 0xee8++0x3
line.long 0x00 "ITTRFLIN,Integration Test Trigger In and Flush In Register"
bitfld.long 0x00 1. " FLUSHIN       ,FLUSHIN output value" "0,1"
bitfld.long 0x00 0. "     TRIGIN        ,TRIGIN output value" "0,1"
rgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAS[127] ,Returns the Value of the ATDATAS[127] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[119] ,Returns the Value of the ATDATAS[119] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[111] ,Returns the Value of the ATDATAS[111] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[103] ,Returns the Value of the ATDATAS[103] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[95]  ,Returns the Value of the ATDATAS[95] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[87]  ,Returns the Value of the ATDATAS[87] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[79]  ,Returns the Value of the ATDATAS[79] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[71]  ,Returns the Value of the ATDATAS[71] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[63]  ,Returns the Value of the ATDATAS[63] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[55]  ,Returns the Value of the ATDATAS[55] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[47]  ,Returns the Value of the ATDATAS[47] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[39]  ,Returns the Value of the ATDATAS[39] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAS[31]  ,Returns the Value of the ATDATAS[31] Input Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAS[23]  ,Returns the Value of the ATDATAS[23] Input pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAS[15]  ,Returns the Value of the ATDATAS[15] Input Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAS[7]   ,Returns the Value of the ATDATAS[7] Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAS[0]   ,Returns the Value of the ATDATAS[0] Input Pin" "Low,High"
wgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFREADYS     ,Drives the AFREADYS Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDS     ,Drives the ATVALIDS Output Pin" "Low,High"
rgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDS        ,Returns the Value of the ATIDS Input Pins"
rgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESS[1]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESS[0]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 1. "  AFVALIDS     ,Returns the Value of the AFVALIDS Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYS     ,Returns the Value of the ATREADYS Input Pin" "Low,High"
wgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAM[127] ,Drives the ATDATAM[127] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[119] ,Drives the ATDATAM[119] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[111] ,Drives the ATDATAM[111] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[103] ,Drives the ATDATAM[103] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[95]  ,Drives the ATDATAM[95] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[87]  ,Drives the ATDATAM[87] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[79]  ,Drives the ATDATAM[79] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[71]  ,Drives the ATDATAM[71] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[63]  ,Drives the ATDATAM[63] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[55]  ,Drives the ATDATAM[55] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[47]  ,Drives the ATDATAM[47] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[39]  ,Drives the ATDATAM[39] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAM[31]  ,Drives the ATDATAM[31] Output Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAM[23]  ,Drives the ATDATAM[23] Output pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAM[15]  ,Drives the ATDATAM[15] Output Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAM[7]   ,Drives the ATDATAM[7] Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAM[0]   ,Drives the ATDATAM[0] Output Pin" "Low,High"
rgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDM     ,Returns the Value of the AFVALIDM Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYM     ,Returns the Value of the ATREADYM Input Pin" "Low,High"
wgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDM        ,Drives the ATIDM Output Pins"
wgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESM[1]  ,Drives the ATBYTESM[1] Output Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESM[0]  ,Drives the ATBYTESM[0] Output Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYM     ,Drives the AFREADYM Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDM     ,Drives the ATVALIDM Output Pin" "Low,High"
width 13.
rgroup.long 0xfe0++0x13 "Peripheral Identification Registers"
line.long 0x00 "PERIPHID0,Peripheral ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PART_NUMBER[7:0] ,Bits [7:0] of the component part number"
line.long 0x04 "PERIPHID1,Peripheral ID1 Register"
bitfld.long 0x04 4.--7. " JEP106[3:0]      ,Bits [3:0] of the JEDEC identity code" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
bitfld.long 0x04 0.--3. "       PART_NUMBER[11:8] ,Bits [11:8] of the component part number" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "PERIPHID2,Peripheral ID2 Register"
bitfld.long 0x08 4.--7. " REVISION         ,Revision" "Reserved,r0p1,?..."
bitfld.long 0x08 3. "   JEDEC             ,JEDEC assigned value used" "Not used,Used"
bitfld.long 0x08 0.--2. "  JEP106[6:4] ,Bits [6:4] of the JEDEC identity code" "000,001,010,011,100,101,110,111"
line.long 0x0c "PERIPHID3,Peripheral ID3 Register"
hexmask.long.byte 0x0c 4.--7. 1. " REVAND           ,Minor errata fixes"
hexmask.long.byte 0x0c 0.--3. 1. "         CUSTOMER_MODIFIED ,Customer Modified"
rgroup.long 0xfd0++0x3
line.long 0x00 "PERIPHID4,Peripheral ID4 Register"
bitfld.long 0x00 4.--7. " FOURKB_COUNT     ,Total contiguous size of the memory window" "4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB"
bitfld.long 0x00 0.--3. "     JEP106_CONT       ,JEDEC continuation code" "Reserved,Reserved,Reserved,Reserved,5th bank,?..."
rgroup.long 0xff0++0xf "Component Identification Registers"
line.long 0x00 "COMPID0,Component ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PREAMBLE[7:0]    ,Bits [7:0] of the component identification"
line.long 0x04 "COMPID1,Component ID1 Register"
bitfld.long 0x04 4.--7. " CLASS            ,Class of the component" "Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,CoreSight,?..."
bitfld.long 0x04 0.--3. "  PREAMBLE[11:8]    ,Bits [11:8] of the component identification" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "COMPID2,Component ID2 Register"
hexmask.long.byte 0x08 0.--7. 1. " PREAMBLE[23:16]  ,Bits [23:16] of the component identification"
line.long 0x0c "COMPID3,Component ID3 Register"
hexmask.long.byte 0x0c 0.--7. 1. " PREAMBLE[31:24]  ,Bits [31:24] of the component identification"
tree.end
width 11.
tree.end
endif
sif COMPonent.AVAILABLE("etr3")
tree "TMC ETR3"
base e:comp.base("etr3",-1)
width 10.
group.long 0x004++0x3 "TMC Registers"
line.long 0x00 "RSZ,RAM Size Register"
hexmask.long 0x00 0.--30. 1. " RSZ         ,Size of the RAM in 32-bit words"
rgroup.long 0x00c++0x3
line.long 0x00 "STS,Status Register"
bitfld.long 0x00 5. " MEMERR      ,AXI master interface error" "No error,Error"
bitfld.long 0x00 4. "         EMPTY ,No valid trace data in the trace memory" "Not empty,Empty"
bitfld.long 0x00 3. "  FTEMPTY ,All internal pipelines and buffers empty" "Not empty,Empty"
bitfld.long 0x00 2. "  TMCREADY ,Trace capture ready" "Not ready,Ready"
textline "                   "
bitfld.long 0x00 1. " TRIGGERED   ,Trigger event detected" "Not detected,Detected"
bitfld.long 0x00 0. "     FULL  ,Ram full" "Not full,Full"
wgroup.long 0x010++0x3
hide.long 0x00 "RRD,RAM Read Data Register"
in
group.long 0x014++0xb
line.long 0x00 "RRP,RAM Read Pointer Register"
line.long 0x04 "RWP,RAM Write Pointer Register"
line.long 0x08 "TRG,Trigger Counter Register"
group.long 0x020++0x3
line.long 0x00 "CTL,Control Register"
bitfld.long 0x00 0. " TRACECAPTEN ,Trace Capture Enable" "Disabled,Enabled"
wgroup.long 0x024++0x3
line.long 0x00 "RWD,RAM Write Data Register"
group.long 0x028++0x3
line.long 0x00 "MODE,Mode Register"
bitfld.long 0x00 0.--1. " MODE        ,Mode select" "Circular Buffer,Software FIFO,Hardware FIFO,Software FIFO 2"
rgroup.long 0x02c++0x7
line.long 0x00 "LBUFLEVEL,Latched Buffer Fill Level Register"
line.long 0x04 "CBUFLEVEL,Current Buffer Fill Level Register"
group.long 0x034++0x3
line.long 0x00 "BUFWM,Buffer Level Water Mark Register"
group.long 0x038++0x7
line.long 0x00 "RRPHI,RAM Read Pointer High Register"
hexmask.long.byte 0x00 0.--7. 1. " RRPHI         ,Bits [39:32] of the read pointer"
line.long 0x04 "RWPHI,RAM Write Pointer High Register"
hexmask.long.byte 0x04 0.--7. 1. " RWPHI         ,Bits [39:32] of the write pointer"
group.long 0x110++0x3
line.long 0x00 "AXICTL,AXI Control Register"
bitfld.long 0x00 8.--11. " WRBURSTLEN    ,Maximum number of data transfers per burst" "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16"
bitfld.long 0x00 7. "     SGM ,Scatter Gather Mode Enable" "Disabled,Enabled"
bitfld.long 0x00 5. "          CC3 ,Cache allocate on writes enable" "Disabled,Enabled"
bitfld.long 0x00 4. "     CC2 ,Cache allocate on reads enable" "Disabled,Enabled"
textline "                   "
bitfld.long 0x00 3. " CC1 ,Cacheable" "Non-cacheable,Cacheable"
bitfld.long 0x00 2. "    CC0 ,Bufferable" "Non-bufferable,Bufferable"
bitfld.long 0x00 1. "    PC1 ,Secure/Non-secure Access" "Secure,Non-secure"
bitfld.long 0x00 0. "   PC0 ,Normal/Privileged Access" "Normal,Privileged"
group.long 0x118++0x7
line.long 0x00 "DBALO,Data Buffer Address Low Register"
line.long 0x04 "DBAHI,Data Buffer Address High Register"
hexmask.long.byte 0x04 0.--7. 1. " BUFADDRHI     ,Bits [39:32] of the trace buffer address"
rgroup.long 0x300++0x3
line.long 0x00 "FFSR,Formatter and Flush Status Register"
bitfld.long 0x00 1. " FTSTOPPED     ,Formatter Stopped" "No,Yes"
bitfld.long 0x00 0. "    FLINPROG          ,Flush in Progress" "No,Yes"
group.long 0x304++0x7
line.long 0x00 "FFCR,Formatter and Flush Control Register"
bitfld.long 0x00 14. " DRAINBUFFER   ,Drain trace data through ATB master interface" "No,Yes"
bitfld.long 0x00 13. "    STOPONTRIGEVT     ,Stop trace capture on trigger event" "No,Yes"
bitfld.long 0x00 12. "   STOPONFL      ,Stop formatter on completion of a flush operation" "No,Yes"
bitfld.long 0x00 10. "   TRIGONFL      ,Trigger on flush completion" "No,Yes"
textline "                   "
bitfld.long 0x00 9. " TRIGONTRIGEVT ,Trigger on a trigger event" "No,Yes"
bitfld.long 0x00 8. "    TRIGONTRIGIN      ,Trigger on TRIGIN being asserted" "No,Yes"
bitfld.long 0x00 6. "   FLUSHMAN      ,Manual Flush" "No,Yes"
bitfld.long 0x00 5. "   FONTRIGEVT    ,Flush on trigger event" "No,Yes"
textline "                   "
bitfld.long 0x00 4. " FONFLIN       ,Flush on FLUSHIN feature" "No,Yes"
bitfld.long 0x00 1. "    ENTI              ,Insertion of triggers in the formatted trace stream enable" "No,Yes"
bitfld.long 0x00 0. "   ENFT          ,Formatting enable" "No,Yes"
line.long 0x04 "PSCR,Periodic Synchronization Counter Register"
bitfld.long 0x04 5. " EMBEDSYNC     ,Embed Frame Sync packets" "No,Yes"
bitfld.long 0x04 0.--4. "    PSCOUNT           ,Reload value of the Synchronization Counter" "Disabled,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,128 bytes,256 bytes,512 bytes,1 KB,2 KB,4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB,?..."
width 13.
tree "Coresight Management Registers"
group 0xFA0--0xFA8
line.long 0x000 "CTS, Claim Tag Set"
bitfld.long 0x000 7. " SETCTV7   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 6. "        SETCTV6 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 5. " SETCTV5   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 4. "        SETCTV4 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 3. " SETCTV3   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 2. "        SETCTV2 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 1. " SETCTV1   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 0. "        SETCTV0 ,Set Claim Tag Value" "No effect,Set"
line.long 0x004 "CTC, Claim Tag Clear"
bitfld.long 0x004 7. " CLRCTV7   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 6. "        CLRCTV6 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 5. " CLRCTV5   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 4. "        CLRCTV4 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 3. " CLRCTV3   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 2. "        CLRCTV2 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 1. " CLRCTV1   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 0. "        CLRCTV0 ,Clear Claim Tag Value" "No effect,Cleared"
wgroup.long 0xfb0++0x3
line.long 0x00 "LAR,Lock Access Register"
rgroup.long 0xfb4++0x7
line.long 0x00 "LSR,Lock Status Register"
bitfld.long 0x00 2. " LOCKTYPE         ,32-bit Lock Access Register Implemented" "32-bit,?..."
bitfld.long 0x00 1. "         LOCKGRANT ,Lock Status" "Unlocked,Locked"
bitfld.long 0x00 0. "         LOCKEXIST  ,Lock control mechanism present" "Not present,Present"
line.long 0x04 "AUTHSTATUS,Authentication Status Register"
bitfld.long 0x04 6.--7. " SNID   ,Security level for secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 4.--5. "  SID  ,Security level for secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
bitfld.long 0x04 2.--3. "  NSNID ,Security level for non-secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 0.--1. "  NSID ,Security level for non-secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
rgroup.long 0xfc8++0x3
line.long 0x00 "DEVID,Device Configuration Register"
bitfld.long 0x00 11.--13. " WBUF_DEPTH  ,Number of entries in the write buffer (in ETR)" "Reserved,Reserved,4 entries,8 entries,16 entries,32 entries,?..."
bitfld.long 0x00 8.--10. "  MEMWIDTH  ,Memory interface databus width" "Reserved,Reserved,32-bit,64-bit,128-bit,256-bit,?..."
bitfld.long 0x00 6.--7. "    CONFIGTYPE ,Configuration type" "ETB,ETR,ETF,?..."
bitfld.long 0x00 5. "    CLKSCHEME ,RAM clocking scheme" "Synchronous,?..."
textline "                    "
bitfld.long 0x00 0.--4. "   ATBINPORTCOUNT   ,Type or number of ATB multiplexing" "No multiplexing,?..."
width 13.
if ((d.l(e:comp.base("etr3",-1)+0xfc8)&0xc0)==(0x00||0x40))
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,RAM->APB,?..."
bitfld.long 0x00 0.--3. "                    MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Trace sink,?..."
elif ((d.l(e:comp.base("etr3",-1)+0xfc8)&0xc0)==0x80)
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,Reserved,ATB slave->RAM->ATB master,?..."
bitfld.long 0x00 0.--3. "  MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Reserved,Trace link,?..."
else
hgroup.long 0xfcc++0x3
hide.long 0x00 "DEVTYPE,Device Type Identifier Register"
endif
group 0xf00--0xf03 "Integration Test Registers"
line.long 0x000 "ITCTRL,Integration Mode Control"
bitfld.long 0x000 0. " ENABLE       ,Enable Integration mode" "no,yes"
wgroup.long 0xee0++0x3
line.long 0x00 "ITMISCOP0,Integration Test Miscellaneous Output Register 0"
bitfld.long 0x00 1. " FULL          ,FULL output value set" "0,1"
bitfld.long 0x00 0. "     ACQCOMP       ,ACQCOMP output value set" "0,1"
rgroup.long 0xee8++0x3
line.long 0x00 "ITTRFLIN,Integration Test Trigger In and Flush In Register"
bitfld.long 0x00 1. " FLUSHIN       ,FLUSHIN output value" "0,1"
bitfld.long 0x00 0. "     TRIGIN        ,TRIGIN output value" "0,1"
rgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAS[127] ,Returns the Value of the ATDATAS[127] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[119] ,Returns the Value of the ATDATAS[119] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[111] ,Returns the Value of the ATDATAS[111] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[103] ,Returns the Value of the ATDATAS[103] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[95]  ,Returns the Value of the ATDATAS[95] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[87]  ,Returns the Value of the ATDATAS[87] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[79]  ,Returns the Value of the ATDATAS[79] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[71]  ,Returns the Value of the ATDATAS[71] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[63]  ,Returns the Value of the ATDATAS[63] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[55]  ,Returns the Value of the ATDATAS[55] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[47]  ,Returns the Value of the ATDATAS[47] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[39]  ,Returns the Value of the ATDATAS[39] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAS[31]  ,Returns the Value of the ATDATAS[31] Input Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAS[23]  ,Returns the Value of the ATDATAS[23] Input pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAS[15]  ,Returns the Value of the ATDATAS[15] Input Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAS[7]   ,Returns the Value of the ATDATAS[7] Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAS[0]   ,Returns the Value of the ATDATAS[0] Input Pin" "Low,High"
wgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFREADYS     ,Drives the AFREADYS Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDS     ,Drives the ATVALIDS Output Pin" "Low,High"
rgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDS        ,Returns the Value of the ATIDS Input Pins"
rgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESS[1]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESS[0]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 1. "  AFVALIDS     ,Returns the Value of the AFVALIDS Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYS     ,Returns the Value of the ATREADYS Input Pin" "Low,High"
wgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAM[127] ,Drives the ATDATAM[127] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[119] ,Drives the ATDATAM[119] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[111] ,Drives the ATDATAM[111] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[103] ,Drives the ATDATAM[103] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[95]  ,Drives the ATDATAM[95] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[87]  ,Drives the ATDATAM[87] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[79]  ,Drives the ATDATAM[79] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[71]  ,Drives the ATDATAM[71] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[63]  ,Drives the ATDATAM[63] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[55]  ,Drives the ATDATAM[55] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[47]  ,Drives the ATDATAM[47] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[39]  ,Drives the ATDATAM[39] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAM[31]  ,Drives the ATDATAM[31] Output Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAM[23]  ,Drives the ATDATAM[23] Output pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAM[15]  ,Drives the ATDATAM[15] Output Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAM[7]   ,Drives the ATDATAM[7] Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAM[0]   ,Drives the ATDATAM[0] Output Pin" "Low,High"
rgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDM     ,Returns the Value of the AFVALIDM Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYM     ,Returns the Value of the ATREADYM Input Pin" "Low,High"
wgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDM        ,Drives the ATIDM Output Pins"
wgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESM[1]  ,Drives the ATBYTESM[1] Output Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESM[0]  ,Drives the ATBYTESM[0] Output Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYM     ,Drives the AFREADYM Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDM     ,Drives the ATVALIDM Output Pin" "Low,High"
width 13.
rgroup.long 0xfe0++0x13 "Peripheral Identification Registers"
line.long 0x00 "PERIPHID0,Peripheral ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PART_NUMBER[7:0] ,Bits [7:0] of the component part number"
line.long 0x04 "PERIPHID1,Peripheral ID1 Register"
bitfld.long 0x04 4.--7. " JEP106[3:0]      ,Bits [3:0] of the JEDEC identity code" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
bitfld.long 0x04 0.--3. "       PART_NUMBER[11:8] ,Bits [11:8] of the component part number" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "PERIPHID2,Peripheral ID2 Register"
bitfld.long 0x08 4.--7. " REVISION         ,Revision" "Reserved,r0p1,?..."
bitfld.long 0x08 3. "   JEDEC             ,JEDEC assigned value used" "Not used,Used"
bitfld.long 0x08 0.--2. "  JEP106[6:4] ,Bits [6:4] of the JEDEC identity code" "000,001,010,011,100,101,110,111"
line.long 0x0c "PERIPHID3,Peripheral ID3 Register"
hexmask.long.byte 0x0c 4.--7. 1. " REVAND           ,Minor errata fixes"
hexmask.long.byte 0x0c 0.--3. 1. "         CUSTOMER_MODIFIED ,Customer Modified"
rgroup.long 0xfd0++0x3
line.long 0x00 "PERIPHID4,Peripheral ID4 Register"
bitfld.long 0x00 4.--7. " FOURKB_COUNT     ,Total contiguous size of the memory window" "4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB"
bitfld.long 0x00 0.--3. "     JEP106_CONT       ,JEDEC continuation code" "Reserved,Reserved,Reserved,Reserved,5th bank,?..."
rgroup.long 0xff0++0xf "Component Identification Registers"
line.long 0x00 "COMPID0,Component ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PREAMBLE[7:0]    ,Bits [7:0] of the component identification"
line.long 0x04 "COMPID1,Component ID1 Register"
bitfld.long 0x04 4.--7. " CLASS            ,Class of the component" "Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,CoreSight,?..."
bitfld.long 0x04 0.--3. "  PREAMBLE[11:8]    ,Bits [11:8] of the component identification" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "COMPID2,Component ID2 Register"
hexmask.long.byte 0x08 0.--7. 1. " PREAMBLE[23:16]  ,Bits [23:16] of the component identification"
line.long 0x0c "COMPID3,Component ID3 Register"
hexmask.long.byte 0x0c 0.--7. 1. " PREAMBLE[31:24]  ,Bits [31:24] of the component identification"
tree.end
width 11.
tree.end
endif
sif COMPonent.AVAILABLE("etr4")
tree "TMC ETR4"
base e:comp.base("etr4",-1)
width 10.
group.long 0x004++0x3 "TMC Registers"
line.long 0x00 "RSZ,RAM Size Register"
hexmask.long 0x00 0.--30. 1. " RSZ         ,Size of the RAM in 32-bit words"
rgroup.long 0x00c++0x3
line.long 0x00 "STS,Status Register"
bitfld.long 0x00 5. " MEMERR      ,AXI master interface error" "No error,Error"
bitfld.long 0x00 4. "         EMPTY ,No valid trace data in the trace memory" "Not empty,Empty"
bitfld.long 0x00 3. "  FTEMPTY ,All internal pipelines and buffers empty" "Not empty,Empty"
bitfld.long 0x00 2. "  TMCREADY ,Trace capture ready" "Not ready,Ready"
textline "                   "
bitfld.long 0x00 1. " TRIGGERED   ,Trigger event detected" "Not detected,Detected"
bitfld.long 0x00 0. "     FULL  ,Ram full" "Not full,Full"
wgroup.long 0x010++0x3
hide.long 0x00 "RRD,RAM Read Data Register"
in
group.long 0x014++0xb
line.long 0x00 "RRP,RAM Read Pointer Register"
line.long 0x04 "RWP,RAM Write Pointer Register"
line.long 0x08 "TRG,Trigger Counter Register"
group.long 0x020++0x3
line.long 0x00 "CTL,Control Register"
bitfld.long 0x00 0. " TRACECAPTEN ,Trace Capture Enable" "Disabled,Enabled"
wgroup.long 0x024++0x3
line.long 0x00 "RWD,RAM Write Data Register"
group.long 0x028++0x3
line.long 0x00 "MODE,Mode Register"
bitfld.long 0x00 0.--1. " MODE        ,Mode select" "Circular Buffer,Software FIFO,Hardware FIFO,Software FIFO 2"
rgroup.long 0x02c++0x7
line.long 0x00 "LBUFLEVEL,Latched Buffer Fill Level Register"
line.long 0x04 "CBUFLEVEL,Current Buffer Fill Level Register"
group.long 0x034++0x3
line.long 0x00 "BUFWM,Buffer Level Water Mark Register"
group.long 0x038++0x7
line.long 0x00 "RRPHI,RAM Read Pointer High Register"
hexmask.long.byte 0x00 0.--7. 1. " RRPHI         ,Bits [39:32] of the read pointer"
line.long 0x04 "RWPHI,RAM Write Pointer High Register"
hexmask.long.byte 0x04 0.--7. 1. " RWPHI         ,Bits [39:32] of the write pointer"
group.long 0x110++0x3
line.long 0x00 "AXICTL,AXI Control Register"
bitfld.long 0x00 8.--11. " WRBURSTLEN    ,Maximum number of data transfers per burst" "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16"
bitfld.long 0x00 7. "     SGM ,Scatter Gather Mode Enable" "Disabled,Enabled"
bitfld.long 0x00 5. "          CC3 ,Cache allocate on writes enable" "Disabled,Enabled"
bitfld.long 0x00 4. "     CC2 ,Cache allocate on reads enable" "Disabled,Enabled"
textline "                   "
bitfld.long 0x00 3. " CC1 ,Cacheable" "Non-cacheable,Cacheable"
bitfld.long 0x00 2. "    CC0 ,Bufferable" "Non-bufferable,Bufferable"
bitfld.long 0x00 1. "    PC1 ,Secure/Non-secure Access" "Secure,Non-secure"
bitfld.long 0x00 0. "   PC0 ,Normal/Privileged Access" "Normal,Privileged"
group.long 0x118++0x7
line.long 0x00 "DBALO,Data Buffer Address Low Register"
line.long 0x04 "DBAHI,Data Buffer Address High Register"
hexmask.long.byte 0x04 0.--7. 1. " BUFADDRHI     ,Bits [39:32] of the trace buffer address"
rgroup.long 0x300++0x3
line.long 0x00 "FFSR,Formatter and Flush Status Register"
bitfld.long 0x00 1. " FTSTOPPED     ,Formatter Stopped" "No,Yes"
bitfld.long 0x00 0. "    FLINPROG          ,Flush in Progress" "No,Yes"
group.long 0x304++0x7
line.long 0x00 "FFCR,Formatter and Flush Control Register"
bitfld.long 0x00 14. " DRAINBUFFER   ,Drain trace data through ATB master interface" "No,Yes"
bitfld.long 0x00 13. "    STOPONTRIGEVT     ,Stop trace capture on trigger event" "No,Yes"
bitfld.long 0x00 12. "   STOPONFL      ,Stop formatter on completion of a flush operation" "No,Yes"
bitfld.long 0x00 10. "   TRIGONFL      ,Trigger on flush completion" "No,Yes"
textline "                   "
bitfld.long 0x00 9. " TRIGONTRIGEVT ,Trigger on a trigger event" "No,Yes"
bitfld.long 0x00 8. "    TRIGONTRIGIN      ,Trigger on TRIGIN being asserted" "No,Yes"
bitfld.long 0x00 6. "   FLUSHMAN      ,Manual Flush" "No,Yes"
bitfld.long 0x00 5. "   FONTRIGEVT    ,Flush on trigger event" "No,Yes"
textline "                   "
bitfld.long 0x00 4. " FONFLIN       ,Flush on FLUSHIN feature" "No,Yes"
bitfld.long 0x00 1. "    ENTI              ,Insertion of triggers in the formatted trace stream enable" "No,Yes"
bitfld.long 0x00 0. "   ENFT          ,Formatting enable" "No,Yes"
line.long 0x04 "PSCR,Periodic Synchronization Counter Register"
bitfld.long 0x04 5. " EMBEDSYNC     ,Embed Frame Sync packets" "No,Yes"
bitfld.long 0x04 0.--4. "    PSCOUNT           ,Reload value of the Synchronization Counter" "Disabled,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,128 bytes,256 bytes,512 bytes,1 KB,2 KB,4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB,?..."
width 13.
tree "Coresight Management Registers"
group 0xFA0--0xFA8
line.long 0x000 "CTS, Claim Tag Set"
bitfld.long 0x000 7. " SETCTV7   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 6. "        SETCTV6 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 5. " SETCTV5   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 4. "        SETCTV4 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 3. " SETCTV3   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 2. "        SETCTV2 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 1. " SETCTV1   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 0. "        SETCTV0 ,Set Claim Tag Value" "No effect,Set"
line.long 0x004 "CTC, Claim Tag Clear"
bitfld.long 0x004 7. " CLRCTV7   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 6. "        CLRCTV6 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 5. " CLRCTV5   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 4. "        CLRCTV4 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 3. " CLRCTV3   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 2. "        CLRCTV2 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 1. " CLRCTV1   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 0. "        CLRCTV0 ,Clear Claim Tag Value" "No effect,Cleared"
wgroup.long 0xfb0++0x3
line.long 0x00 "LAR,Lock Access Register"
rgroup.long 0xfb4++0x7
line.long 0x00 "LSR,Lock Status Register"
bitfld.long 0x00 2. " LOCKTYPE         ,32-bit Lock Access Register Implemented" "32-bit,?..."
bitfld.long 0x00 1. "         LOCKGRANT ,Lock Status" "Unlocked,Locked"
bitfld.long 0x00 0. "         LOCKEXIST  ,Lock control mechanism present" "Not present,Present"
line.long 0x04 "AUTHSTATUS,Authentication Status Register"
bitfld.long 0x04 6.--7. " SNID   ,Security level for secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 4.--5. "  SID  ,Security level for secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
bitfld.long 0x04 2.--3. "  NSNID ,Security level for non-secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 0.--1. "  NSID ,Security level for non-secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
rgroup.long 0xfc8++0x3
line.long 0x00 "DEVID,Device Configuration Register"
bitfld.long 0x00 11.--13. " WBUF_DEPTH  ,Number of entries in the write buffer (in ETR)" "Reserved,Reserved,4 entries,8 entries,16 entries,32 entries,?..."
bitfld.long 0x00 8.--10. "  MEMWIDTH  ,Memory interface databus width" "Reserved,Reserved,32-bit,64-bit,128-bit,256-bit,?..."
bitfld.long 0x00 6.--7. "    CONFIGTYPE ,Configuration type" "ETB,ETR,ETF,?..."
bitfld.long 0x00 5. "    CLKSCHEME ,RAM clocking scheme" "Synchronous,?..."
textline "                    "
bitfld.long 0x00 0.--4. "   ATBINPORTCOUNT   ,Type or number of ATB multiplexing" "No multiplexing,?..."
width 13.
if ((d.l(e:comp.base("etr4",-1)+0xfc8)&0xc0)==(0x00||0x40))
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,RAM->APB,?..."
bitfld.long 0x00 0.--3. "                    MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Trace sink,?..."
elif ((d.l(e:comp.base("etr4",-1)+0xfc8)&0xc0)==0x80)
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,Reserved,ATB slave->RAM->ATB master,?..."
bitfld.long 0x00 0.--3. "  MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Reserved,Trace link,?..."
else
hgroup.long 0xfcc++0x3
hide.long 0x00 "DEVTYPE,Device Type Identifier Register"
endif
group 0xf00--0xf03 "Integration Test Registers"
line.long 0x000 "ITCTRL,Integration Mode Control"
bitfld.long 0x000 0. " ENABLE       ,Enable Integration mode" "no,yes"
wgroup.long 0xee0++0x3
line.long 0x00 "ITMISCOP0,Integration Test Miscellaneous Output Register 0"
bitfld.long 0x00 1. " FULL          ,FULL output value set" "0,1"
bitfld.long 0x00 0. "     ACQCOMP       ,ACQCOMP output value set" "0,1"
rgroup.long 0xee8++0x3
line.long 0x00 "ITTRFLIN,Integration Test Trigger In and Flush In Register"
bitfld.long 0x00 1. " FLUSHIN       ,FLUSHIN output value" "0,1"
bitfld.long 0x00 0. "     TRIGIN        ,TRIGIN output value" "0,1"
rgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAS[127] ,Returns the Value of the ATDATAS[127] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[119] ,Returns the Value of the ATDATAS[119] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[111] ,Returns the Value of the ATDATAS[111] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[103] ,Returns the Value of the ATDATAS[103] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[95]  ,Returns the Value of the ATDATAS[95] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[87]  ,Returns the Value of the ATDATAS[87] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[79]  ,Returns the Value of the ATDATAS[79] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[71]  ,Returns the Value of the ATDATAS[71] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[63]  ,Returns the Value of the ATDATAS[63] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[55]  ,Returns the Value of the ATDATAS[55] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[47]  ,Returns the Value of the ATDATAS[47] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[39]  ,Returns the Value of the ATDATAS[39] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAS[31]  ,Returns the Value of the ATDATAS[31] Input Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAS[23]  ,Returns the Value of the ATDATAS[23] Input pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAS[15]  ,Returns the Value of the ATDATAS[15] Input Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAS[7]   ,Returns the Value of the ATDATAS[7] Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAS[0]   ,Returns the Value of the ATDATAS[0] Input Pin" "Low,High"
wgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFREADYS     ,Drives the AFREADYS Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDS     ,Drives the ATVALIDS Output Pin" "Low,High"
rgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDS        ,Returns the Value of the ATIDS Input Pins"
rgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESS[1]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESS[0]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 1. "  AFVALIDS     ,Returns the Value of the AFVALIDS Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYS     ,Returns the Value of the ATREADYS Input Pin" "Low,High"
wgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAM[127] ,Drives the ATDATAM[127] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[119] ,Drives the ATDATAM[119] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[111] ,Drives the ATDATAM[111] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[103] ,Drives the ATDATAM[103] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[95]  ,Drives the ATDATAM[95] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[87]  ,Drives the ATDATAM[87] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[79]  ,Drives the ATDATAM[79] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[71]  ,Drives the ATDATAM[71] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[63]  ,Drives the ATDATAM[63] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[55]  ,Drives the ATDATAM[55] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[47]  ,Drives the ATDATAM[47] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[39]  ,Drives the ATDATAM[39] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAM[31]  ,Drives the ATDATAM[31] Output Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAM[23]  ,Drives the ATDATAM[23] Output pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAM[15]  ,Drives the ATDATAM[15] Output Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAM[7]   ,Drives the ATDATAM[7] Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAM[0]   ,Drives the ATDATAM[0] Output Pin" "Low,High"
rgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDM     ,Returns the Value of the AFVALIDM Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYM     ,Returns the Value of the ATREADYM Input Pin" "Low,High"
wgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDM        ,Drives the ATIDM Output Pins"
wgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESM[1]  ,Drives the ATBYTESM[1] Output Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESM[0]  ,Drives the ATBYTESM[0] Output Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYM     ,Drives the AFREADYM Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDM     ,Drives the ATVALIDM Output Pin" "Low,High"
width 13.
rgroup.long 0xfe0++0x13 "Peripheral Identification Registers"
line.long 0x00 "PERIPHID0,Peripheral ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PART_NUMBER[7:0] ,Bits [7:0] of the component part number"
line.long 0x04 "PERIPHID1,Peripheral ID1 Register"
bitfld.long 0x04 4.--7. " JEP106[3:0]      ,Bits [3:0] of the JEDEC identity code" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
bitfld.long 0x04 0.--3. "       PART_NUMBER[11:8] ,Bits [11:8] of the component part number" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "PERIPHID2,Peripheral ID2 Register"
bitfld.long 0x08 4.--7. " REVISION         ,Revision" "Reserved,r0p1,?..."
bitfld.long 0x08 3. "   JEDEC             ,JEDEC assigned value used" "Not used,Used"
bitfld.long 0x08 0.--2. "  JEP106[6:4] ,Bits [6:4] of the JEDEC identity code" "000,001,010,011,100,101,110,111"
line.long 0x0c "PERIPHID3,Peripheral ID3 Register"
hexmask.long.byte 0x0c 4.--7. 1. " REVAND           ,Minor errata fixes"
hexmask.long.byte 0x0c 0.--3. 1. "         CUSTOMER_MODIFIED ,Customer Modified"
rgroup.long 0xfd0++0x3
line.long 0x00 "PERIPHID4,Peripheral ID4 Register"
bitfld.long 0x00 4.--7. " FOURKB_COUNT     ,Total contiguous size of the memory window" "4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB"
bitfld.long 0x00 0.--3. "     JEP106_CONT       ,JEDEC continuation code" "Reserved,Reserved,Reserved,Reserved,5th bank,?..."
rgroup.long 0xff0++0xf "Component Identification Registers"
line.long 0x00 "COMPID0,Component ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PREAMBLE[7:0]    ,Bits [7:0] of the component identification"
line.long 0x04 "COMPID1,Component ID1 Register"
bitfld.long 0x04 4.--7. " CLASS            ,Class of the component" "Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,CoreSight,?..."
bitfld.long 0x04 0.--3. "  PREAMBLE[11:8]    ,Bits [11:8] of the component identification" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "COMPID2,Component ID2 Register"
hexmask.long.byte 0x08 0.--7. 1. " PREAMBLE[23:16]  ,Bits [23:16] of the component identification"
line.long 0x0c "COMPID3,Component ID3 Register"
hexmask.long.byte 0x0c 0.--7. 1. " PREAMBLE[31:24]  ,Bits [31:24] of the component identification"
tree.end
width 11.
tree.end
endif
sif COMPonent.AVAILABLE("etr5")
tree "TMC ETR5"
base e:comp.base("etr5",-1)
width 10.
group.long 0x004++0x3 "TMC Registers"
line.long 0x00 "RSZ,RAM Size Register"
hexmask.long 0x00 0.--30. 1. " RSZ         ,Size of the RAM in 32-bit words"
rgroup.long 0x00c++0x3
line.long 0x00 "STS,Status Register"
bitfld.long 0x00 5. " MEMERR      ,AXI master interface error" "No error,Error"
bitfld.long 0x00 4. "         EMPTY ,No valid trace data in the trace memory" "Not empty,Empty"
bitfld.long 0x00 3. "  FTEMPTY ,All internal pipelines and buffers empty" "Not empty,Empty"
bitfld.long 0x00 2. "  TMCREADY ,Trace capture ready" "Not ready,Ready"
textline "                   "
bitfld.long 0x00 1. " TRIGGERED   ,Trigger event detected" "Not detected,Detected"
bitfld.long 0x00 0. "     FULL  ,Ram full" "Not full,Full"
wgroup.long 0x010++0x3
hide.long 0x00 "RRD,RAM Read Data Register"
in
group.long 0x014++0xb
line.long 0x00 "RRP,RAM Read Pointer Register"
line.long 0x04 "RWP,RAM Write Pointer Register"
line.long 0x08 "TRG,Trigger Counter Register"
group.long 0x020++0x3
line.long 0x00 "CTL,Control Register"
bitfld.long 0x00 0. " TRACECAPTEN ,Trace Capture Enable" "Disabled,Enabled"
wgroup.long 0x024++0x3
line.long 0x00 "RWD,RAM Write Data Register"
group.long 0x028++0x3
line.long 0x00 "MODE,Mode Register"
bitfld.long 0x00 0.--1. " MODE        ,Mode select" "Circular Buffer,Software FIFO,Hardware FIFO,Software FIFO 2"
rgroup.long 0x02c++0x7
line.long 0x00 "LBUFLEVEL,Latched Buffer Fill Level Register"
line.long 0x04 "CBUFLEVEL,Current Buffer Fill Level Register"
group.long 0x034++0x3
line.long 0x00 "BUFWM,Buffer Level Water Mark Register"
group.long 0x038++0x7
line.long 0x00 "RRPHI,RAM Read Pointer High Register"
hexmask.long.byte 0x00 0.--7. 1. " RRPHI         ,Bits [39:32] of the read pointer"
line.long 0x04 "RWPHI,RAM Write Pointer High Register"
hexmask.long.byte 0x04 0.--7. 1. " RWPHI         ,Bits [39:32] of the write pointer"
group.long 0x110++0x3
line.long 0x00 "AXICTL,AXI Control Register"
bitfld.long 0x00 8.--11. " WRBURSTLEN    ,Maximum number of data transfers per burst" "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16"
bitfld.long 0x00 7. "     SGM ,Scatter Gather Mode Enable" "Disabled,Enabled"
bitfld.long 0x00 5. "          CC3 ,Cache allocate on writes enable" "Disabled,Enabled"
bitfld.long 0x00 4. "     CC2 ,Cache allocate on reads enable" "Disabled,Enabled"
textline "                   "
bitfld.long 0x00 3. " CC1 ,Cacheable" "Non-cacheable,Cacheable"
bitfld.long 0x00 2. "    CC0 ,Bufferable" "Non-bufferable,Bufferable"
bitfld.long 0x00 1. "    PC1 ,Secure/Non-secure Access" "Secure,Non-secure"
bitfld.long 0x00 0. "   PC0 ,Normal/Privileged Access" "Normal,Privileged"
group.long 0x118++0x7
line.long 0x00 "DBALO,Data Buffer Address Low Register"
line.long 0x04 "DBAHI,Data Buffer Address High Register"
hexmask.long.byte 0x04 0.--7. 1. " BUFADDRHI     ,Bits [39:32] of the trace buffer address"
rgroup.long 0x300++0x3
line.long 0x00 "FFSR,Formatter and Flush Status Register"
bitfld.long 0x00 1. " FTSTOPPED     ,Formatter Stopped" "No,Yes"
bitfld.long 0x00 0. "    FLINPROG          ,Flush in Progress" "No,Yes"
group.long 0x304++0x7
line.long 0x00 "FFCR,Formatter and Flush Control Register"
bitfld.long 0x00 14. " DRAINBUFFER   ,Drain trace data through ATB master interface" "No,Yes"
bitfld.long 0x00 13. "    STOPONTRIGEVT     ,Stop trace capture on trigger event" "No,Yes"
bitfld.long 0x00 12. "   STOPONFL      ,Stop formatter on completion of a flush operation" "No,Yes"
bitfld.long 0x00 10. "   TRIGONFL      ,Trigger on flush completion" "No,Yes"
textline "                   "
bitfld.long 0x00 9. " TRIGONTRIGEVT ,Trigger on a trigger event" "No,Yes"
bitfld.long 0x00 8. "    TRIGONTRIGIN      ,Trigger on TRIGIN being asserted" "No,Yes"
bitfld.long 0x00 6. "   FLUSHMAN      ,Manual Flush" "No,Yes"
bitfld.long 0x00 5. "   FONTRIGEVT    ,Flush on trigger event" "No,Yes"
textline "                   "
bitfld.long 0x00 4. " FONFLIN       ,Flush on FLUSHIN feature" "No,Yes"
bitfld.long 0x00 1. "    ENTI              ,Insertion of triggers in the formatted trace stream enable" "No,Yes"
bitfld.long 0x00 0. "   ENFT          ,Formatting enable" "No,Yes"
line.long 0x04 "PSCR,Periodic Synchronization Counter Register"
bitfld.long 0x04 5. " EMBEDSYNC     ,Embed Frame Sync packets" "No,Yes"
bitfld.long 0x04 0.--4. "    PSCOUNT           ,Reload value of the Synchronization Counter" "Disabled,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,128 bytes,256 bytes,512 bytes,1 KB,2 KB,4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB,?..."
width 13.
tree "Coresight Management Registers"
group 0xFA0--0xFA8
line.long 0x000 "CTS, Claim Tag Set"
bitfld.long 0x000 7. " SETCTV7   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 6. "        SETCTV6 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 5. " SETCTV5   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 4. "        SETCTV4 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 3. " SETCTV3   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 2. "        SETCTV2 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 1. " SETCTV1   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 0. "        SETCTV0 ,Set Claim Tag Value" "No effect,Set"
line.long 0x004 "CTC, Claim Tag Clear"
bitfld.long 0x004 7. " CLRCTV7   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 6. "        CLRCTV6 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 5. " CLRCTV5   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 4. "        CLRCTV4 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 3. " CLRCTV3   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 2. "        CLRCTV2 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 1. " CLRCTV1   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 0. "        CLRCTV0 ,Clear Claim Tag Value" "No effect,Cleared"
wgroup.long 0xfb0++0x3
line.long 0x00 "LAR,Lock Access Register"
rgroup.long 0xfb4++0x7
line.long 0x00 "LSR,Lock Status Register"
bitfld.long 0x00 2. " LOCKTYPE         ,32-bit Lock Access Register Implemented" "32-bit,?..."
bitfld.long 0x00 1. "         LOCKGRANT ,Lock Status" "Unlocked,Locked"
bitfld.long 0x00 0. "         LOCKEXIST  ,Lock control mechanism present" "Not present,Present"
line.long 0x04 "AUTHSTATUS,Authentication Status Register"
bitfld.long 0x04 6.--7. " SNID   ,Security level for secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 4.--5. "  SID  ,Security level for secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
bitfld.long 0x04 2.--3. "  NSNID ,Security level for non-secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 0.--1. "  NSID ,Security level for non-secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
rgroup.long 0xfc8++0x3
line.long 0x00 "DEVID,Device Configuration Register"
bitfld.long 0x00 11.--13. " WBUF_DEPTH  ,Number of entries in the write buffer (in ETR)" "Reserved,Reserved,4 entries,8 entries,16 entries,32 entries,?..."
bitfld.long 0x00 8.--10. "  MEMWIDTH  ,Memory interface databus width" "Reserved,Reserved,32-bit,64-bit,128-bit,256-bit,?..."
bitfld.long 0x00 6.--7. "    CONFIGTYPE ,Configuration type" "ETB,ETR,ETF,?..."
bitfld.long 0x00 5. "    CLKSCHEME ,RAM clocking scheme" "Synchronous,?..."
textline "                    "
bitfld.long 0x00 0.--4. "   ATBINPORTCOUNT   ,Type or number of ATB multiplexing" "No multiplexing,?..."
width 13.
if ((d.l(e:comp.base("etr5",-1)+0xfc8)&0xc0)==(0x00||0x40))
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,RAM->APB,?..."
bitfld.long 0x00 0.--3. "                    MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Trace sink,?..."
elif ((d.l(e:comp.base("etr5",-1)+0xfc8)&0xc0)==0x80)
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,Reserved,ATB slave->RAM->ATB master,?..."
bitfld.long 0x00 0.--3. "  MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Reserved,Trace link,?..."
else
hgroup.long 0xfcc++0x3
hide.long 0x00 "DEVTYPE,Device Type Identifier Register"
endif
group 0xf00--0xf03 "Integration Test Registers"
line.long 0x000 "ITCTRL,Integration Mode Control"
bitfld.long 0x000 0. " ENABLE       ,Enable Integration mode" "no,yes"
wgroup.long 0xee0++0x3
line.long 0x00 "ITMISCOP0,Integration Test Miscellaneous Output Register 0"
bitfld.long 0x00 1. " FULL          ,FULL output value set" "0,1"
bitfld.long 0x00 0. "     ACQCOMP       ,ACQCOMP output value set" "0,1"
rgroup.long 0xee8++0x3
line.long 0x00 "ITTRFLIN,Integration Test Trigger In and Flush In Register"
bitfld.long 0x00 1. " FLUSHIN       ,FLUSHIN output value" "0,1"
bitfld.long 0x00 0. "     TRIGIN        ,TRIGIN output value" "0,1"
rgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAS[127] ,Returns the Value of the ATDATAS[127] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[119] ,Returns the Value of the ATDATAS[119] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[111] ,Returns the Value of the ATDATAS[111] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[103] ,Returns the Value of the ATDATAS[103] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[95]  ,Returns the Value of the ATDATAS[95] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[87]  ,Returns the Value of the ATDATAS[87] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[79]  ,Returns the Value of the ATDATAS[79] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[71]  ,Returns the Value of the ATDATAS[71] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[63]  ,Returns the Value of the ATDATAS[63] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[55]  ,Returns the Value of the ATDATAS[55] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[47]  ,Returns the Value of the ATDATAS[47] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[39]  ,Returns the Value of the ATDATAS[39] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAS[31]  ,Returns the Value of the ATDATAS[31] Input Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAS[23]  ,Returns the Value of the ATDATAS[23] Input pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAS[15]  ,Returns the Value of the ATDATAS[15] Input Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAS[7]   ,Returns the Value of the ATDATAS[7] Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAS[0]   ,Returns the Value of the ATDATAS[0] Input Pin" "Low,High"
wgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFREADYS     ,Drives the AFREADYS Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDS     ,Drives the ATVALIDS Output Pin" "Low,High"
rgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDS        ,Returns the Value of the ATIDS Input Pins"
rgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESS[1]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESS[0]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 1. "  AFVALIDS     ,Returns the Value of the AFVALIDS Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYS     ,Returns the Value of the ATREADYS Input Pin" "Low,High"
wgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAM[127] ,Drives the ATDATAM[127] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[119] ,Drives the ATDATAM[119] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[111] ,Drives the ATDATAM[111] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[103] ,Drives the ATDATAM[103] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[95]  ,Drives the ATDATAM[95] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[87]  ,Drives the ATDATAM[87] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[79]  ,Drives the ATDATAM[79] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[71]  ,Drives the ATDATAM[71] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[63]  ,Drives the ATDATAM[63] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[55]  ,Drives the ATDATAM[55] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[47]  ,Drives the ATDATAM[47] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[39]  ,Drives the ATDATAM[39] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAM[31]  ,Drives the ATDATAM[31] Output Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAM[23]  ,Drives the ATDATAM[23] Output pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAM[15]  ,Drives the ATDATAM[15] Output Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAM[7]   ,Drives the ATDATAM[7] Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAM[0]   ,Drives the ATDATAM[0] Output Pin" "Low,High"
rgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDM     ,Returns the Value of the AFVALIDM Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYM     ,Returns the Value of the ATREADYM Input Pin" "Low,High"
wgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDM        ,Drives the ATIDM Output Pins"
wgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESM[1]  ,Drives the ATBYTESM[1] Output Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESM[0]  ,Drives the ATBYTESM[0] Output Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYM     ,Drives the AFREADYM Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDM     ,Drives the ATVALIDM Output Pin" "Low,High"
width 13.
rgroup.long 0xfe0++0x13 "Peripheral Identification Registers"
line.long 0x00 "PERIPHID0,Peripheral ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PART_NUMBER[7:0] ,Bits [7:0] of the component part number"
line.long 0x04 "PERIPHID1,Peripheral ID1 Register"
bitfld.long 0x04 4.--7. " JEP106[3:0]      ,Bits [3:0] of the JEDEC identity code" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
bitfld.long 0x04 0.--3. "       PART_NUMBER[11:8] ,Bits [11:8] of the component part number" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "PERIPHID2,Peripheral ID2 Register"
bitfld.long 0x08 4.--7. " REVISION         ,Revision" "Reserved,r0p1,?..."
bitfld.long 0x08 3. "   JEDEC             ,JEDEC assigned value used" "Not used,Used"
bitfld.long 0x08 0.--2. "  JEP106[6:4] ,Bits [6:4] of the JEDEC identity code" "000,001,010,011,100,101,110,111"
line.long 0x0c "PERIPHID3,Peripheral ID3 Register"
hexmask.long.byte 0x0c 4.--7. 1. " REVAND           ,Minor errata fixes"
hexmask.long.byte 0x0c 0.--3. 1. "         CUSTOMER_MODIFIED ,Customer Modified"
rgroup.long 0xfd0++0x3
line.long 0x00 "PERIPHID4,Peripheral ID4 Register"
bitfld.long 0x00 4.--7. " FOURKB_COUNT     ,Total contiguous size of the memory window" "4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB"
bitfld.long 0x00 0.--3. "     JEP106_CONT       ,JEDEC continuation code" "Reserved,Reserved,Reserved,Reserved,5th bank,?..."
rgroup.long 0xff0++0xf "Component Identification Registers"
line.long 0x00 "COMPID0,Component ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PREAMBLE[7:0]    ,Bits [7:0] of the component identification"
line.long 0x04 "COMPID1,Component ID1 Register"
bitfld.long 0x04 4.--7. " CLASS            ,Class of the component" "Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,CoreSight,?..."
bitfld.long 0x04 0.--3. "  PREAMBLE[11:8]    ,Bits [11:8] of the component identification" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "COMPID2,Component ID2 Register"
hexmask.long.byte 0x08 0.--7. 1. " PREAMBLE[23:16]  ,Bits [23:16] of the component identification"
line.long 0x0c "COMPID3,Component ID3 Register"
hexmask.long.byte 0x0c 0.--7. 1. " PREAMBLE[31:24]  ,Bits [31:24] of the component identification"
tree.end
width 11.
tree.end
endif
sif COMPonent.AVAILABLE("etr6")
tree "TMC ETR6"
base e:comp.base("etr6",-1)
width 10.
group.long 0x004++0x3 "TMC Registers"
line.long 0x00 "RSZ,RAM Size Register"
hexmask.long 0x00 0.--30. 1. " RSZ         ,Size of the RAM in 32-bit words"
rgroup.long 0x00c++0x3
line.long 0x00 "STS,Status Register"
bitfld.long 0x00 5. " MEMERR      ,AXI master interface error" "No error,Error"
bitfld.long 0x00 4. "         EMPTY ,No valid trace data in the trace memory" "Not empty,Empty"
bitfld.long 0x00 3. "  FTEMPTY ,All internal pipelines and buffers empty" "Not empty,Empty"
bitfld.long 0x00 2. "  TMCREADY ,Trace capture ready" "Not ready,Ready"
textline "                   "
bitfld.long 0x00 1. " TRIGGERED   ,Trigger event detected" "Not detected,Detected"
bitfld.long 0x00 0. "     FULL  ,Ram full" "Not full,Full"
wgroup.long 0x010++0x3
hide.long 0x00 "RRD,RAM Read Data Register"
in
group.long 0x014++0xb
line.long 0x00 "RRP,RAM Read Pointer Register"
line.long 0x04 "RWP,RAM Write Pointer Register"
line.long 0x08 "TRG,Trigger Counter Register"
group.long 0x020++0x3
line.long 0x00 "CTL,Control Register"
bitfld.long 0x00 0. " TRACECAPTEN ,Trace Capture Enable" "Disabled,Enabled"
wgroup.long 0x024++0x3
line.long 0x00 "RWD,RAM Write Data Register"
group.long 0x028++0x3
line.long 0x00 "MODE,Mode Register"
bitfld.long 0x00 0.--1. " MODE        ,Mode select" "Circular Buffer,Software FIFO,Hardware FIFO,Software FIFO 2"
rgroup.long 0x02c++0x7
line.long 0x00 "LBUFLEVEL,Latched Buffer Fill Level Register"
line.long 0x04 "CBUFLEVEL,Current Buffer Fill Level Register"
group.long 0x034++0x3
line.long 0x00 "BUFWM,Buffer Level Water Mark Register"
group.long 0x038++0x7
line.long 0x00 "RRPHI,RAM Read Pointer High Register"
hexmask.long.byte 0x00 0.--7. 1. " RRPHI         ,Bits [39:32] of the read pointer"
line.long 0x04 "RWPHI,RAM Write Pointer High Register"
hexmask.long.byte 0x04 0.--7. 1. " RWPHI         ,Bits [39:32] of the write pointer"
group.long 0x110++0x3
line.long 0x00 "AXICTL,AXI Control Register"
bitfld.long 0x00 8.--11. " WRBURSTLEN    ,Maximum number of data transfers per burst" "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16"
bitfld.long 0x00 7. "     SGM ,Scatter Gather Mode Enable" "Disabled,Enabled"
bitfld.long 0x00 5. "          CC3 ,Cache allocate on writes enable" "Disabled,Enabled"
bitfld.long 0x00 4. "     CC2 ,Cache allocate on reads enable" "Disabled,Enabled"
textline "                   "
bitfld.long 0x00 3. " CC1 ,Cacheable" "Non-cacheable,Cacheable"
bitfld.long 0x00 2. "    CC0 ,Bufferable" "Non-bufferable,Bufferable"
bitfld.long 0x00 1. "    PC1 ,Secure/Non-secure Access" "Secure,Non-secure"
bitfld.long 0x00 0. "   PC0 ,Normal/Privileged Access" "Normal,Privileged"
group.long 0x118++0x7
line.long 0x00 "DBALO,Data Buffer Address Low Register"
line.long 0x04 "DBAHI,Data Buffer Address High Register"
hexmask.long.byte 0x04 0.--7. 1. " BUFADDRHI     ,Bits [39:32] of the trace buffer address"
rgroup.long 0x300++0x3
line.long 0x00 "FFSR,Formatter and Flush Status Register"
bitfld.long 0x00 1. " FTSTOPPED     ,Formatter Stopped" "No,Yes"
bitfld.long 0x00 0. "    FLINPROG          ,Flush in Progress" "No,Yes"
group.long 0x304++0x7
line.long 0x00 "FFCR,Formatter and Flush Control Register"
bitfld.long 0x00 14. " DRAINBUFFER   ,Drain trace data through ATB master interface" "No,Yes"
bitfld.long 0x00 13. "    STOPONTRIGEVT     ,Stop trace capture on trigger event" "No,Yes"
bitfld.long 0x00 12. "   STOPONFL      ,Stop formatter on completion of a flush operation" "No,Yes"
bitfld.long 0x00 10. "   TRIGONFL      ,Trigger on flush completion" "No,Yes"
textline "                   "
bitfld.long 0x00 9. " TRIGONTRIGEVT ,Trigger on a trigger event" "No,Yes"
bitfld.long 0x00 8. "    TRIGONTRIGIN      ,Trigger on TRIGIN being asserted" "No,Yes"
bitfld.long 0x00 6. "   FLUSHMAN      ,Manual Flush" "No,Yes"
bitfld.long 0x00 5. "   FONTRIGEVT    ,Flush on trigger event" "No,Yes"
textline "                   "
bitfld.long 0x00 4. " FONFLIN       ,Flush on FLUSHIN feature" "No,Yes"
bitfld.long 0x00 1. "    ENTI              ,Insertion of triggers in the formatted trace stream enable" "No,Yes"
bitfld.long 0x00 0. "   ENFT          ,Formatting enable" "No,Yes"
line.long 0x04 "PSCR,Periodic Synchronization Counter Register"
bitfld.long 0x04 5. " EMBEDSYNC     ,Embed Frame Sync packets" "No,Yes"
bitfld.long 0x04 0.--4. "    PSCOUNT           ,Reload value of the Synchronization Counter" "Disabled,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,128 bytes,256 bytes,512 bytes,1 KB,2 KB,4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB,?..."
width 13.
tree "Coresight Management Registers"
group 0xFA0--0xFA8
line.long 0x000 "CTS, Claim Tag Set"
bitfld.long 0x000 7. " SETCTV7   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 6. "        SETCTV6 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 5. " SETCTV5   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 4. "        SETCTV4 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 3. " SETCTV3   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 2. "        SETCTV2 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 1. " SETCTV1   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 0. "        SETCTV0 ,Set Claim Tag Value" "No effect,Set"
line.long 0x004 "CTC, Claim Tag Clear"
bitfld.long 0x004 7. " CLRCTV7   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 6. "        CLRCTV6 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 5. " CLRCTV5   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 4. "        CLRCTV4 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 3. " CLRCTV3   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 2. "        CLRCTV2 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 1. " CLRCTV1   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 0. "        CLRCTV0 ,Clear Claim Tag Value" "No effect,Cleared"
wgroup.long 0xfb0++0x3
line.long 0x00 "LAR,Lock Access Register"
rgroup.long 0xfb4++0x7
line.long 0x00 "LSR,Lock Status Register"
bitfld.long 0x00 2. " LOCKTYPE         ,32-bit Lock Access Register Implemented" "32-bit,?..."
bitfld.long 0x00 1. "         LOCKGRANT ,Lock Status" "Unlocked,Locked"
bitfld.long 0x00 0. "         LOCKEXIST  ,Lock control mechanism present" "Not present,Present"
line.long 0x04 "AUTHSTATUS,Authentication Status Register"
bitfld.long 0x04 6.--7. " SNID   ,Security level for secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 4.--5. "  SID  ,Security level for secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
bitfld.long 0x04 2.--3. "  NSNID ,Security level for non-secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 0.--1. "  NSID ,Security level for non-secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
rgroup.long 0xfc8++0x3
line.long 0x00 "DEVID,Device Configuration Register"
bitfld.long 0x00 11.--13. " WBUF_DEPTH  ,Number of entries in the write buffer (in ETR)" "Reserved,Reserved,4 entries,8 entries,16 entries,32 entries,?..."
bitfld.long 0x00 8.--10. "  MEMWIDTH  ,Memory interface databus width" "Reserved,Reserved,32-bit,64-bit,128-bit,256-bit,?..."
bitfld.long 0x00 6.--7. "    CONFIGTYPE ,Configuration type" "ETB,ETR,ETF,?..."
bitfld.long 0x00 5. "    CLKSCHEME ,RAM clocking scheme" "Synchronous,?..."
textline "                    "
bitfld.long 0x00 0.--4. "   ATBINPORTCOUNT   ,Type or number of ATB multiplexing" "No multiplexing,?..."
width 13.
if ((d.l(e:comp.base("etr6",-1)+0xfc8)&0xc0)==(0x00||0x40))
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,RAM->APB,?..."
bitfld.long 0x00 0.--3. "                    MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Trace sink,?..."
elif ((d.l(e:comp.base("etr6",-1)+0xfc8)&0xc0)==0x80)
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,Reserved,ATB slave->RAM->ATB master,?..."
bitfld.long 0x00 0.--3. "  MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Reserved,Trace link,?..."
else
hgroup.long 0xfcc++0x3
hide.long 0x00 "DEVTYPE,Device Type Identifier Register"
endif
group 0xf00--0xf03 "Integration Test Registers"
line.long 0x000 "ITCTRL,Integration Mode Control"
bitfld.long 0x000 0. " ENABLE       ,Enable Integration mode" "no,yes"
wgroup.long 0xee0++0x3
line.long 0x00 "ITMISCOP0,Integration Test Miscellaneous Output Register 0"
bitfld.long 0x00 1. " FULL          ,FULL output value set" "0,1"
bitfld.long 0x00 0. "     ACQCOMP       ,ACQCOMP output value set" "0,1"
rgroup.long 0xee8++0x3
line.long 0x00 "ITTRFLIN,Integration Test Trigger In and Flush In Register"
bitfld.long 0x00 1. " FLUSHIN       ,FLUSHIN output value" "0,1"
bitfld.long 0x00 0. "     TRIGIN        ,TRIGIN output value" "0,1"
rgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAS[127] ,Returns the Value of the ATDATAS[127] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[119] ,Returns the Value of the ATDATAS[119] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[111] ,Returns the Value of the ATDATAS[111] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[103] ,Returns the Value of the ATDATAS[103] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[95]  ,Returns the Value of the ATDATAS[95] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[87]  ,Returns the Value of the ATDATAS[87] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[79]  ,Returns the Value of the ATDATAS[79] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[71]  ,Returns the Value of the ATDATAS[71] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[63]  ,Returns the Value of the ATDATAS[63] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[55]  ,Returns the Value of the ATDATAS[55] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[47]  ,Returns the Value of the ATDATAS[47] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[39]  ,Returns the Value of the ATDATAS[39] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAS[31]  ,Returns the Value of the ATDATAS[31] Input Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAS[23]  ,Returns the Value of the ATDATAS[23] Input pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAS[15]  ,Returns the Value of the ATDATAS[15] Input Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAS[7]   ,Returns the Value of the ATDATAS[7] Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAS[0]   ,Returns the Value of the ATDATAS[0] Input Pin" "Low,High"
wgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFREADYS     ,Drives the AFREADYS Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDS     ,Drives the ATVALIDS Output Pin" "Low,High"
rgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDS        ,Returns the Value of the ATIDS Input Pins"
rgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESS[1]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESS[0]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 1. "  AFVALIDS     ,Returns the Value of the AFVALIDS Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYS     ,Returns the Value of the ATREADYS Input Pin" "Low,High"
wgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAM[127] ,Drives the ATDATAM[127] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[119] ,Drives the ATDATAM[119] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[111] ,Drives the ATDATAM[111] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[103] ,Drives the ATDATAM[103] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[95]  ,Drives the ATDATAM[95] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[87]  ,Drives the ATDATAM[87] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[79]  ,Drives the ATDATAM[79] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[71]  ,Drives the ATDATAM[71] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[63]  ,Drives the ATDATAM[63] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[55]  ,Drives the ATDATAM[55] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[47]  ,Drives the ATDATAM[47] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[39]  ,Drives the ATDATAM[39] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAM[31]  ,Drives the ATDATAM[31] Output Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAM[23]  ,Drives the ATDATAM[23] Output pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAM[15]  ,Drives the ATDATAM[15] Output Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAM[7]   ,Drives the ATDATAM[7] Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAM[0]   ,Drives the ATDATAM[0] Output Pin" "Low,High"
rgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDM     ,Returns the Value of the AFVALIDM Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYM     ,Returns the Value of the ATREADYM Input Pin" "Low,High"
wgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDM        ,Drives the ATIDM Output Pins"
wgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESM[1]  ,Drives the ATBYTESM[1] Output Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESM[0]  ,Drives the ATBYTESM[0] Output Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYM     ,Drives the AFREADYM Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDM     ,Drives the ATVALIDM Output Pin" "Low,High"
width 13.
rgroup.long 0xfe0++0x13 "Peripheral Identification Registers"
line.long 0x00 "PERIPHID0,Peripheral ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PART_NUMBER[7:0] ,Bits [7:0] of the component part number"
line.long 0x04 "PERIPHID1,Peripheral ID1 Register"
bitfld.long 0x04 4.--7. " JEP106[3:0]      ,Bits [3:0] of the JEDEC identity code" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
bitfld.long 0x04 0.--3. "       PART_NUMBER[11:8] ,Bits [11:8] of the component part number" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "PERIPHID2,Peripheral ID2 Register"
bitfld.long 0x08 4.--7. " REVISION         ,Revision" "Reserved,r0p1,?..."
bitfld.long 0x08 3. "   JEDEC             ,JEDEC assigned value used" "Not used,Used"
bitfld.long 0x08 0.--2. "  JEP106[6:4] ,Bits [6:4] of the JEDEC identity code" "000,001,010,011,100,101,110,111"
line.long 0x0c "PERIPHID3,Peripheral ID3 Register"
hexmask.long.byte 0x0c 4.--7. 1. " REVAND           ,Minor errata fixes"
hexmask.long.byte 0x0c 0.--3. 1. "         CUSTOMER_MODIFIED ,Customer Modified"
rgroup.long 0xfd0++0x3
line.long 0x00 "PERIPHID4,Peripheral ID4 Register"
bitfld.long 0x00 4.--7. " FOURKB_COUNT     ,Total contiguous size of the memory window" "4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB"
bitfld.long 0x00 0.--3. "     JEP106_CONT       ,JEDEC continuation code" "Reserved,Reserved,Reserved,Reserved,5th bank,?..."
rgroup.long 0xff0++0xf "Component Identification Registers"
line.long 0x00 "COMPID0,Component ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PREAMBLE[7:0]    ,Bits [7:0] of the component identification"
line.long 0x04 "COMPID1,Component ID1 Register"
bitfld.long 0x04 4.--7. " CLASS            ,Class of the component" "Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,CoreSight,?..."
bitfld.long 0x04 0.--3. "  PREAMBLE[11:8]    ,Bits [11:8] of the component identification" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "COMPID2,Component ID2 Register"
hexmask.long.byte 0x08 0.--7. 1. " PREAMBLE[23:16]  ,Bits [23:16] of the component identification"
line.long 0x0c "COMPID3,Component ID3 Register"
hexmask.long.byte 0x0c 0.--7. 1. " PREAMBLE[31:24]  ,Bits [31:24] of the component identification"
tree.end
width 11.
tree.end
endif
sif COMPonent.AVAILABLE("etr7")
tree "TMC ETR7"
base e:comp.base("etr7",-1)
width 10.
group.long 0x004++0x3 "TMC Registers"
line.long 0x00 "RSZ,RAM Size Register"
hexmask.long 0x00 0.--30. 1. " RSZ         ,Size of the RAM in 32-bit words"
rgroup.long 0x00c++0x3
line.long 0x00 "STS,Status Register"
bitfld.long 0x00 5. " MEMERR      ,AXI master interface error" "No error,Error"
bitfld.long 0x00 4. "         EMPTY ,No valid trace data in the trace memory" "Not empty,Empty"
bitfld.long 0x00 3. "  FTEMPTY ,All internal pipelines and buffers empty" "Not empty,Empty"
bitfld.long 0x00 2. "  TMCREADY ,Trace capture ready" "Not ready,Ready"
textline "                   "
bitfld.long 0x00 1. " TRIGGERED   ,Trigger event detected" "Not detected,Detected"
bitfld.long 0x00 0. "     FULL  ,Ram full" "Not full,Full"
wgroup.long 0x010++0x3
hide.long 0x00 "RRD,RAM Read Data Register"
in
group.long 0x014++0xb
line.long 0x00 "RRP,RAM Read Pointer Register"
line.long 0x04 "RWP,RAM Write Pointer Register"
line.long 0x08 "TRG,Trigger Counter Register"
group.long 0x020++0x3
line.long 0x00 "CTL,Control Register"
bitfld.long 0x00 0. " TRACECAPTEN ,Trace Capture Enable" "Disabled,Enabled"
wgroup.long 0x024++0x3
line.long 0x00 "RWD,RAM Write Data Register"
group.long 0x028++0x3
line.long 0x00 "MODE,Mode Register"
bitfld.long 0x00 0.--1. " MODE        ,Mode select" "Circular Buffer,Software FIFO,Hardware FIFO,Software FIFO 2"
rgroup.long 0x02c++0x7
line.long 0x00 "LBUFLEVEL,Latched Buffer Fill Level Register"
line.long 0x04 "CBUFLEVEL,Current Buffer Fill Level Register"
group.long 0x034++0x3
line.long 0x00 "BUFWM,Buffer Level Water Mark Register"
group.long 0x038++0x7
line.long 0x00 "RRPHI,RAM Read Pointer High Register"
hexmask.long.byte 0x00 0.--7. 1. " RRPHI         ,Bits [39:32] of the read pointer"
line.long 0x04 "RWPHI,RAM Write Pointer High Register"
hexmask.long.byte 0x04 0.--7. 1. " RWPHI         ,Bits [39:32] of the write pointer"
group.long 0x110++0x3
line.long 0x00 "AXICTL,AXI Control Register"
bitfld.long 0x00 8.--11. " WRBURSTLEN    ,Maximum number of data transfers per burst" "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16"
bitfld.long 0x00 7. "     SGM ,Scatter Gather Mode Enable" "Disabled,Enabled"
bitfld.long 0x00 5. "          CC3 ,Cache allocate on writes enable" "Disabled,Enabled"
bitfld.long 0x00 4. "     CC2 ,Cache allocate on reads enable" "Disabled,Enabled"
textline "                   "
bitfld.long 0x00 3. " CC1 ,Cacheable" "Non-cacheable,Cacheable"
bitfld.long 0x00 2. "    CC0 ,Bufferable" "Non-bufferable,Bufferable"
bitfld.long 0x00 1. "    PC1 ,Secure/Non-secure Access" "Secure,Non-secure"
bitfld.long 0x00 0. "   PC0 ,Normal/Privileged Access" "Normal,Privileged"
group.long 0x118++0x7
line.long 0x00 "DBALO,Data Buffer Address Low Register"
line.long 0x04 "DBAHI,Data Buffer Address High Register"
hexmask.long.byte 0x04 0.--7. 1. " BUFADDRHI     ,Bits [39:32] of the trace buffer address"
rgroup.long 0x300++0x3
line.long 0x00 "FFSR,Formatter and Flush Status Register"
bitfld.long 0x00 1. " FTSTOPPED     ,Formatter Stopped" "No,Yes"
bitfld.long 0x00 0. "    FLINPROG          ,Flush in Progress" "No,Yes"
group.long 0x304++0x7
line.long 0x00 "FFCR,Formatter and Flush Control Register"
bitfld.long 0x00 14. " DRAINBUFFER   ,Drain trace data through ATB master interface" "No,Yes"
bitfld.long 0x00 13. "    STOPONTRIGEVT     ,Stop trace capture on trigger event" "No,Yes"
bitfld.long 0x00 12. "   STOPONFL      ,Stop formatter on completion of a flush operation" "No,Yes"
bitfld.long 0x00 10. "   TRIGONFL      ,Trigger on flush completion" "No,Yes"
textline "                   "
bitfld.long 0x00 9. " TRIGONTRIGEVT ,Trigger on a trigger event" "No,Yes"
bitfld.long 0x00 8. "    TRIGONTRIGIN      ,Trigger on TRIGIN being asserted" "No,Yes"
bitfld.long 0x00 6. "   FLUSHMAN      ,Manual Flush" "No,Yes"
bitfld.long 0x00 5. "   FONTRIGEVT    ,Flush on trigger event" "No,Yes"
textline "                   "
bitfld.long 0x00 4. " FONFLIN       ,Flush on FLUSHIN feature" "No,Yes"
bitfld.long 0x00 1. "    ENTI              ,Insertion of triggers in the formatted trace stream enable" "No,Yes"
bitfld.long 0x00 0. "   ENFT          ,Formatting enable" "No,Yes"
line.long 0x04 "PSCR,Periodic Synchronization Counter Register"
bitfld.long 0x04 5. " EMBEDSYNC     ,Embed Frame Sync packets" "No,Yes"
bitfld.long 0x04 0.--4. "    PSCOUNT           ,Reload value of the Synchronization Counter" "Disabled,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,128 bytes,256 bytes,512 bytes,1 KB,2 KB,4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB,?..."
width 13.
tree "Coresight Management Registers"
group 0xFA0--0xFA8
line.long 0x000 "CTS, Claim Tag Set"
bitfld.long 0x000 7. " SETCTV7   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 6. "        SETCTV6 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 5. " SETCTV5   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 4. "        SETCTV4 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 3. " SETCTV3   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 2. "        SETCTV2 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 1. " SETCTV1   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 0. "        SETCTV0 ,Set Claim Tag Value" "No effect,Set"
line.long 0x004 "CTC, Claim Tag Clear"
bitfld.long 0x004 7. " CLRCTV7   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 6. "        CLRCTV6 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 5. " CLRCTV5   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 4. "        CLRCTV4 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 3. " CLRCTV3   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 2. "        CLRCTV2 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 1. " CLRCTV1   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 0. "        CLRCTV0 ,Clear Claim Tag Value" "No effect,Cleared"
wgroup.long 0xfb0++0x3
line.long 0x00 "LAR,Lock Access Register"
rgroup.long 0xfb4++0x7
line.long 0x00 "LSR,Lock Status Register"
bitfld.long 0x00 2. " LOCKTYPE         ,32-bit Lock Access Register Implemented" "32-bit,?..."
bitfld.long 0x00 1. "         LOCKGRANT ,Lock Status" "Unlocked,Locked"
bitfld.long 0x00 0. "         LOCKEXIST  ,Lock control mechanism present" "Not present,Present"
line.long 0x04 "AUTHSTATUS,Authentication Status Register"
bitfld.long 0x04 6.--7. " SNID   ,Security level for secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 4.--5. "  SID  ,Security level for secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
bitfld.long 0x04 2.--3. "  NSNID ,Security level for non-secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 0.--1. "  NSID ,Security level for non-secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
rgroup.long 0xfc8++0x3
line.long 0x00 "DEVID,Device Configuration Register"
bitfld.long 0x00 11.--13. " WBUF_DEPTH  ,Number of entries in the write buffer (in ETR)" "Reserved,Reserved,4 entries,8 entries,16 entries,32 entries,?..."
bitfld.long 0x00 8.--10. "  MEMWIDTH  ,Memory interface databus width" "Reserved,Reserved,32-bit,64-bit,128-bit,256-bit,?..."
bitfld.long 0x00 6.--7. "    CONFIGTYPE ,Configuration type" "ETB,ETR,ETF,?..."
bitfld.long 0x00 5. "    CLKSCHEME ,RAM clocking scheme" "Synchronous,?..."
textline "                    "
bitfld.long 0x00 0.--4. "   ATBINPORTCOUNT   ,Type or number of ATB multiplexing" "No multiplexing,?..."
width 13.
if ((d.l(e:comp.base("etr7",-1)+0xfc8)&0xc0)==(0x00||0x40))
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,RAM->APB,?..."
bitfld.long 0x00 0.--3. "                    MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Trace sink,?..."
elif ((d.l(e:comp.base("etr7",-1)+0xfc8)&0xc0)==0x80)
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,Reserved,ATB slave->RAM->ATB master,?..."
bitfld.long 0x00 0.--3. "  MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Reserved,Trace link,?..."
else
hgroup.long 0xfcc++0x3
hide.long 0x00 "DEVTYPE,Device Type Identifier Register"
endif
group 0xf00--0xf03 "Integration Test Registers"
line.long 0x000 "ITCTRL,Integration Mode Control"
bitfld.long 0x000 0. " ENABLE       ,Enable Integration mode" "no,yes"
wgroup.long 0xee0++0x3
line.long 0x00 "ITMISCOP0,Integration Test Miscellaneous Output Register 0"
bitfld.long 0x00 1. " FULL          ,FULL output value set" "0,1"
bitfld.long 0x00 0. "     ACQCOMP       ,ACQCOMP output value set" "0,1"
rgroup.long 0xee8++0x3
line.long 0x00 "ITTRFLIN,Integration Test Trigger In and Flush In Register"
bitfld.long 0x00 1. " FLUSHIN       ,FLUSHIN output value" "0,1"
bitfld.long 0x00 0. "     TRIGIN        ,TRIGIN output value" "0,1"
rgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAS[127] ,Returns the Value of the ATDATAS[127] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[119] ,Returns the Value of the ATDATAS[119] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[111] ,Returns the Value of the ATDATAS[111] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[103] ,Returns the Value of the ATDATAS[103] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[95]  ,Returns the Value of the ATDATAS[95] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[87]  ,Returns the Value of the ATDATAS[87] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[79]  ,Returns the Value of the ATDATAS[79] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[71]  ,Returns the Value of the ATDATAS[71] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[63]  ,Returns the Value of the ATDATAS[63] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[55]  ,Returns the Value of the ATDATAS[55] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[47]  ,Returns the Value of the ATDATAS[47] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[39]  ,Returns the Value of the ATDATAS[39] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAS[31]  ,Returns the Value of the ATDATAS[31] Input Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAS[23]  ,Returns the Value of the ATDATAS[23] Input pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAS[15]  ,Returns the Value of the ATDATAS[15] Input Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAS[7]   ,Returns the Value of the ATDATAS[7] Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAS[0]   ,Returns the Value of the ATDATAS[0] Input Pin" "Low,High"
wgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFREADYS     ,Drives the AFREADYS Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDS     ,Drives the ATVALIDS Output Pin" "Low,High"
rgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDS        ,Returns the Value of the ATIDS Input Pins"
rgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESS[1]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESS[0]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 1. "  AFVALIDS     ,Returns the Value of the AFVALIDS Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYS     ,Returns the Value of the ATREADYS Input Pin" "Low,High"
wgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAM[127] ,Drives the ATDATAM[127] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[119] ,Drives the ATDATAM[119] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[111] ,Drives the ATDATAM[111] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[103] ,Drives the ATDATAM[103] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[95]  ,Drives the ATDATAM[95] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[87]  ,Drives the ATDATAM[87] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[79]  ,Drives the ATDATAM[79] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[71]  ,Drives the ATDATAM[71] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[63]  ,Drives the ATDATAM[63] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[55]  ,Drives the ATDATAM[55] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[47]  ,Drives the ATDATAM[47] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[39]  ,Drives the ATDATAM[39] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAM[31]  ,Drives the ATDATAM[31] Output Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAM[23]  ,Drives the ATDATAM[23] Output pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAM[15]  ,Drives the ATDATAM[15] Output Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAM[7]   ,Drives the ATDATAM[7] Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAM[0]   ,Drives the ATDATAM[0] Output Pin" "Low,High"
rgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDM     ,Returns the Value of the AFVALIDM Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYM     ,Returns the Value of the ATREADYM Input Pin" "Low,High"
wgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDM        ,Drives the ATIDM Output Pins"
wgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESM[1]  ,Drives the ATBYTESM[1] Output Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESM[0]  ,Drives the ATBYTESM[0] Output Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYM     ,Drives the AFREADYM Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDM     ,Drives the ATVALIDM Output Pin" "Low,High"
width 13.
rgroup.long 0xfe0++0x13 "Peripheral Identification Registers"
line.long 0x00 "PERIPHID0,Peripheral ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PART_NUMBER[7:0] ,Bits [7:0] of the component part number"
line.long 0x04 "PERIPHID1,Peripheral ID1 Register"
bitfld.long 0x04 4.--7. " JEP106[3:0]      ,Bits [3:0] of the JEDEC identity code" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
bitfld.long 0x04 0.--3. "       PART_NUMBER[11:8] ,Bits [11:8] of the component part number" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "PERIPHID2,Peripheral ID2 Register"
bitfld.long 0x08 4.--7. " REVISION         ,Revision" "Reserved,r0p1,?..."
bitfld.long 0x08 3. "   JEDEC             ,JEDEC assigned value used" "Not used,Used"
bitfld.long 0x08 0.--2. "  JEP106[6:4] ,Bits [6:4] of the JEDEC identity code" "000,001,010,011,100,101,110,111"
line.long 0x0c "PERIPHID3,Peripheral ID3 Register"
hexmask.long.byte 0x0c 4.--7. 1. " REVAND           ,Minor errata fixes"
hexmask.long.byte 0x0c 0.--3. 1. "         CUSTOMER_MODIFIED ,Customer Modified"
rgroup.long 0xfd0++0x3
line.long 0x00 "PERIPHID4,Peripheral ID4 Register"
bitfld.long 0x00 4.--7. " FOURKB_COUNT     ,Total contiguous size of the memory window" "4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB"
bitfld.long 0x00 0.--3. "     JEP106_CONT       ,JEDEC continuation code" "Reserved,Reserved,Reserved,Reserved,5th bank,?..."
rgroup.long 0xff0++0xf "Component Identification Registers"
line.long 0x00 "COMPID0,Component ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PREAMBLE[7:0]    ,Bits [7:0] of the component identification"
line.long 0x04 "COMPID1,Component ID1 Register"
bitfld.long 0x04 4.--7. " CLASS            ,Class of the component" "Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,CoreSight,?..."
bitfld.long 0x04 0.--3. "  PREAMBLE[11:8]    ,Bits [11:8] of the component identification" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "COMPID2,Component ID2 Register"
hexmask.long.byte 0x08 0.--7. 1. " PREAMBLE[23:16]  ,Bits [23:16] of the component identification"
line.long 0x0c "COMPID3,Component ID3 Register"
hexmask.long.byte 0x0c 0.--7. 1. " PREAMBLE[31:24]  ,Bits [31:24] of the component identification"
tree.end
width 11.
tree.end
endif
sif COMPonent.AVAILABLE("etr8")
tree "TMC ETR8"
base e:comp.base("etr8",-1)
width 10.
group.long 0x004++0x3 "TMC Registers"
line.long 0x00 "RSZ,RAM Size Register"
hexmask.long 0x00 0.--30. 1. " RSZ         ,Size of the RAM in 32-bit words"
rgroup.long 0x00c++0x3
line.long 0x00 "STS,Status Register"
bitfld.long 0x00 5. " MEMERR      ,AXI master interface error" "No error,Error"
bitfld.long 0x00 4. "         EMPTY ,No valid trace data in the trace memory" "Not empty,Empty"
bitfld.long 0x00 3. "  FTEMPTY ,All internal pipelines and buffers empty" "Not empty,Empty"
bitfld.long 0x00 2. "  TMCREADY ,Trace capture ready" "Not ready,Ready"
textline "                   "
bitfld.long 0x00 1. " TRIGGERED   ,Trigger event detected" "Not detected,Detected"
bitfld.long 0x00 0. "     FULL  ,Ram full" "Not full,Full"
wgroup.long 0x010++0x3
hide.long 0x00 "RRD,RAM Read Data Register"
in
group.long 0x014++0xb
line.long 0x00 "RRP,RAM Read Pointer Register"
line.long 0x04 "RWP,RAM Write Pointer Register"
line.long 0x08 "TRG,Trigger Counter Register"
group.long 0x020++0x3
line.long 0x00 "CTL,Control Register"
bitfld.long 0x00 0. " TRACECAPTEN ,Trace Capture Enable" "Disabled,Enabled"
wgroup.long 0x024++0x3
line.long 0x00 "RWD,RAM Write Data Register"
group.long 0x028++0x3
line.long 0x00 "MODE,Mode Register"
bitfld.long 0x00 0.--1. " MODE        ,Mode select" "Circular Buffer,Software FIFO,Hardware FIFO,Software FIFO 2"
rgroup.long 0x02c++0x7
line.long 0x00 "LBUFLEVEL,Latched Buffer Fill Level Register"
line.long 0x04 "CBUFLEVEL,Current Buffer Fill Level Register"
group.long 0x034++0x3
line.long 0x00 "BUFWM,Buffer Level Water Mark Register"
group.long 0x038++0x7
line.long 0x00 "RRPHI,RAM Read Pointer High Register"
hexmask.long.byte 0x00 0.--7. 1. " RRPHI         ,Bits [39:32] of the read pointer"
line.long 0x04 "RWPHI,RAM Write Pointer High Register"
hexmask.long.byte 0x04 0.--7. 1. " RWPHI         ,Bits [39:32] of the write pointer"
group.long 0x110++0x3
line.long 0x00 "AXICTL,AXI Control Register"
bitfld.long 0x00 8.--11. " WRBURSTLEN    ,Maximum number of data transfers per burst" "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16"
bitfld.long 0x00 7. "     SGM ,Scatter Gather Mode Enable" "Disabled,Enabled"
bitfld.long 0x00 5. "          CC3 ,Cache allocate on writes enable" "Disabled,Enabled"
bitfld.long 0x00 4. "     CC2 ,Cache allocate on reads enable" "Disabled,Enabled"
textline "                   "
bitfld.long 0x00 3. " CC1 ,Cacheable" "Non-cacheable,Cacheable"
bitfld.long 0x00 2. "    CC0 ,Bufferable" "Non-bufferable,Bufferable"
bitfld.long 0x00 1. "    PC1 ,Secure/Non-secure Access" "Secure,Non-secure"
bitfld.long 0x00 0. "   PC0 ,Normal/Privileged Access" "Normal,Privileged"
group.long 0x118++0x7
line.long 0x00 "DBALO,Data Buffer Address Low Register"
line.long 0x04 "DBAHI,Data Buffer Address High Register"
hexmask.long.byte 0x04 0.--7. 1. " BUFADDRHI     ,Bits [39:32] of the trace buffer address"
rgroup.long 0x300++0x3
line.long 0x00 "FFSR,Formatter and Flush Status Register"
bitfld.long 0x00 1. " FTSTOPPED     ,Formatter Stopped" "No,Yes"
bitfld.long 0x00 0. "    FLINPROG          ,Flush in Progress" "No,Yes"
group.long 0x304++0x7
line.long 0x00 "FFCR,Formatter and Flush Control Register"
bitfld.long 0x00 14. " DRAINBUFFER   ,Drain trace data through ATB master interface" "No,Yes"
bitfld.long 0x00 13. "    STOPONTRIGEVT     ,Stop trace capture on trigger event" "No,Yes"
bitfld.long 0x00 12. "   STOPONFL      ,Stop formatter on completion of a flush operation" "No,Yes"
bitfld.long 0x00 10. "   TRIGONFL      ,Trigger on flush completion" "No,Yes"
textline "                   "
bitfld.long 0x00 9. " TRIGONTRIGEVT ,Trigger on a trigger event" "No,Yes"
bitfld.long 0x00 8. "    TRIGONTRIGIN      ,Trigger on TRIGIN being asserted" "No,Yes"
bitfld.long 0x00 6. "   FLUSHMAN      ,Manual Flush" "No,Yes"
bitfld.long 0x00 5. "   FONTRIGEVT    ,Flush on trigger event" "No,Yes"
textline "                   "
bitfld.long 0x00 4. " FONFLIN       ,Flush on FLUSHIN feature" "No,Yes"
bitfld.long 0x00 1. "    ENTI              ,Insertion of triggers in the formatted trace stream enable" "No,Yes"
bitfld.long 0x00 0. "   ENFT          ,Formatting enable" "No,Yes"
line.long 0x04 "PSCR,Periodic Synchronization Counter Register"
bitfld.long 0x04 5. " EMBEDSYNC     ,Embed Frame Sync packets" "No,Yes"
bitfld.long 0x04 0.--4. "    PSCOUNT           ,Reload value of the Synchronization Counter" "Disabled,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,128 bytes,256 bytes,512 bytes,1 KB,2 KB,4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB,?..."
width 13.
tree "Coresight Management Registers"
group 0xFA0--0xFA8
line.long 0x000 "CTS, Claim Tag Set"
bitfld.long 0x000 7. " SETCTV7   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 6. "        SETCTV6 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 5. " SETCTV5   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 4. "        SETCTV4 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 3. " SETCTV3   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 2. "        SETCTV2 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 1. " SETCTV1   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 0. "        SETCTV0 ,Set Claim Tag Value" "No effect,Set"
line.long 0x004 "CTC, Claim Tag Clear"
bitfld.long 0x004 7. " CLRCTV7   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 6. "        CLRCTV6 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 5. " CLRCTV5   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 4. "        CLRCTV4 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 3. " CLRCTV3   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 2. "        CLRCTV2 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 1. " CLRCTV1   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 0. "        CLRCTV0 ,Clear Claim Tag Value" "No effect,Cleared"
wgroup.long 0xfb0++0x3
line.long 0x00 "LAR,Lock Access Register"
rgroup.long 0xfb4++0x7
line.long 0x00 "LSR,Lock Status Register"
bitfld.long 0x00 2. " LOCKTYPE         ,32-bit Lock Access Register Implemented" "32-bit,?..."
bitfld.long 0x00 1. "         LOCKGRANT ,Lock Status" "Unlocked,Locked"
bitfld.long 0x00 0. "         LOCKEXIST  ,Lock control mechanism present" "Not present,Present"
line.long 0x04 "AUTHSTATUS,Authentication Status Register"
bitfld.long 0x04 6.--7. " SNID   ,Security level for secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 4.--5. "  SID  ,Security level for secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
bitfld.long 0x04 2.--3. "  NSNID ,Security level for non-secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 0.--1. "  NSID ,Security level for non-secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
rgroup.long 0xfc8++0x3
line.long 0x00 "DEVID,Device Configuration Register"
bitfld.long 0x00 11.--13. " WBUF_DEPTH  ,Number of entries in the write buffer (in ETR)" "Reserved,Reserved,4 entries,8 entries,16 entries,32 entries,?..."
bitfld.long 0x00 8.--10. "  MEMWIDTH  ,Memory interface databus width" "Reserved,Reserved,32-bit,64-bit,128-bit,256-bit,?..."
bitfld.long 0x00 6.--7. "    CONFIGTYPE ,Configuration type" "ETB,ETR,ETF,?..."
bitfld.long 0x00 5. "    CLKSCHEME ,RAM clocking scheme" "Synchronous,?..."
textline "                    "
bitfld.long 0x00 0.--4. "   ATBINPORTCOUNT   ,Type or number of ATB multiplexing" "No multiplexing,?..."
width 13.
if ((d.l(e:comp.base("etr8",-1)+0xfc8)&0xc0)==(0x00||0x40))
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,RAM->APB,?..."
bitfld.long 0x00 0.--3. "                    MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Trace sink,?..."
elif ((d.l(e:comp.base("etr8",-1)+0xfc8)&0xc0)==0x80)
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,Reserved,ATB slave->RAM->ATB master,?..."
bitfld.long 0x00 0.--3. "  MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Reserved,Trace link,?..."
else
hgroup.long 0xfcc++0x3
hide.long 0x00 "DEVTYPE,Device Type Identifier Register"
endif
group 0xf00--0xf03 "Integration Test Registers"
line.long 0x000 "ITCTRL,Integration Mode Control"
bitfld.long 0x000 0. " ENABLE       ,Enable Integration mode" "no,yes"
wgroup.long 0xee0++0x3
line.long 0x00 "ITMISCOP0,Integration Test Miscellaneous Output Register 0"
bitfld.long 0x00 1. " FULL          ,FULL output value set" "0,1"
bitfld.long 0x00 0. "     ACQCOMP       ,ACQCOMP output value set" "0,1"
rgroup.long 0xee8++0x3
line.long 0x00 "ITTRFLIN,Integration Test Trigger In and Flush In Register"
bitfld.long 0x00 1. " FLUSHIN       ,FLUSHIN output value" "0,1"
bitfld.long 0x00 0. "     TRIGIN        ,TRIGIN output value" "0,1"
rgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAS[127] ,Returns the Value of the ATDATAS[127] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[119] ,Returns the Value of the ATDATAS[119] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[111] ,Returns the Value of the ATDATAS[111] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[103] ,Returns the Value of the ATDATAS[103] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[95]  ,Returns the Value of the ATDATAS[95] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[87]  ,Returns the Value of the ATDATAS[87] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[79]  ,Returns the Value of the ATDATAS[79] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[71]  ,Returns the Value of the ATDATAS[71] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[63]  ,Returns the Value of the ATDATAS[63] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[55]  ,Returns the Value of the ATDATAS[55] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[47]  ,Returns the Value of the ATDATAS[47] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[39]  ,Returns the Value of the ATDATAS[39] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAS[31]  ,Returns the Value of the ATDATAS[31] Input Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAS[23]  ,Returns the Value of the ATDATAS[23] Input pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAS[15]  ,Returns the Value of the ATDATAS[15] Input Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAS[7]   ,Returns the Value of the ATDATAS[7] Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAS[0]   ,Returns the Value of the ATDATAS[0] Input Pin" "Low,High"
wgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFREADYS     ,Drives the AFREADYS Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDS     ,Drives the ATVALIDS Output Pin" "Low,High"
rgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDS        ,Returns the Value of the ATIDS Input Pins"
rgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESS[1]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESS[0]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 1. "  AFVALIDS     ,Returns the Value of the AFVALIDS Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYS     ,Returns the Value of the ATREADYS Input Pin" "Low,High"
wgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAM[127] ,Drives the ATDATAM[127] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[119] ,Drives the ATDATAM[119] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[111] ,Drives the ATDATAM[111] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[103] ,Drives the ATDATAM[103] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[95]  ,Drives the ATDATAM[95] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[87]  ,Drives the ATDATAM[87] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[79]  ,Drives the ATDATAM[79] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[71]  ,Drives the ATDATAM[71] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[63]  ,Drives the ATDATAM[63] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[55]  ,Drives the ATDATAM[55] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[47]  ,Drives the ATDATAM[47] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[39]  ,Drives the ATDATAM[39] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAM[31]  ,Drives the ATDATAM[31] Output Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAM[23]  ,Drives the ATDATAM[23] Output pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAM[15]  ,Drives the ATDATAM[15] Output Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAM[7]   ,Drives the ATDATAM[7] Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAM[0]   ,Drives the ATDATAM[0] Output Pin" "Low,High"
rgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDM     ,Returns the Value of the AFVALIDM Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYM     ,Returns the Value of the ATREADYM Input Pin" "Low,High"
wgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDM        ,Drives the ATIDM Output Pins"
wgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESM[1]  ,Drives the ATBYTESM[1] Output Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESM[0]  ,Drives the ATBYTESM[0] Output Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYM     ,Drives the AFREADYM Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDM     ,Drives the ATVALIDM Output Pin" "Low,High"
width 13.
rgroup.long 0xfe0++0x13 "Peripheral Identification Registers"
line.long 0x00 "PERIPHID0,Peripheral ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PART_NUMBER[7:0] ,Bits [7:0] of the component part number"
line.long 0x04 "PERIPHID1,Peripheral ID1 Register"
bitfld.long 0x04 4.--7. " JEP106[3:0]      ,Bits [3:0] of the JEDEC identity code" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
bitfld.long 0x04 0.--3. "       PART_NUMBER[11:8] ,Bits [11:8] of the component part number" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "PERIPHID2,Peripheral ID2 Register"
bitfld.long 0x08 4.--7. " REVISION         ,Revision" "Reserved,r0p1,?..."
bitfld.long 0x08 3. "   JEDEC             ,JEDEC assigned value used" "Not used,Used"
bitfld.long 0x08 0.--2. "  JEP106[6:4] ,Bits [6:4] of the JEDEC identity code" "000,001,010,011,100,101,110,111"
line.long 0x0c "PERIPHID3,Peripheral ID3 Register"
hexmask.long.byte 0x0c 4.--7. 1. " REVAND           ,Minor errata fixes"
hexmask.long.byte 0x0c 0.--3. 1. "         CUSTOMER_MODIFIED ,Customer Modified"
rgroup.long 0xfd0++0x3
line.long 0x00 "PERIPHID4,Peripheral ID4 Register"
bitfld.long 0x00 4.--7. " FOURKB_COUNT     ,Total contiguous size of the memory window" "4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB"
bitfld.long 0x00 0.--3. "     JEP106_CONT       ,JEDEC continuation code" "Reserved,Reserved,Reserved,Reserved,5th bank,?..."
rgroup.long 0xff0++0xf "Component Identification Registers"
line.long 0x00 "COMPID0,Component ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PREAMBLE[7:0]    ,Bits [7:0] of the component identification"
line.long 0x04 "COMPID1,Component ID1 Register"
bitfld.long 0x04 4.--7. " CLASS            ,Class of the component" "Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,CoreSight,?..."
bitfld.long 0x04 0.--3. "  PREAMBLE[11:8]    ,Bits [11:8] of the component identification" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "COMPID2,Component ID2 Register"
hexmask.long.byte 0x08 0.--7. 1. " PREAMBLE[23:16]  ,Bits [23:16] of the component identification"
line.long 0x0c "COMPID3,Component ID3 Register"
hexmask.long.byte 0x0c 0.--7. 1. " PREAMBLE[31:24]  ,Bits [31:24] of the component identification"
tree.end
width 11.
tree.end
endif
sif COMPonent.AVAILABLE("etr9")
tree "TMC ETR9"
base e:comp.base("etr9",-1)
width 10.
group.long 0x004++0x3 "TMC Registers"
line.long 0x00 "RSZ,RAM Size Register"
hexmask.long 0x00 0.--30. 1. " RSZ         ,Size of the RAM in 32-bit words"
rgroup.long 0x00c++0x3
line.long 0x00 "STS,Status Register"
bitfld.long 0x00 5. " MEMERR      ,AXI master interface error" "No error,Error"
bitfld.long 0x00 4. "         EMPTY ,No valid trace data in the trace memory" "Not empty,Empty"
bitfld.long 0x00 3. "  FTEMPTY ,All internal pipelines and buffers empty" "Not empty,Empty"
bitfld.long 0x00 2. "  TMCREADY ,Trace capture ready" "Not ready,Ready"
textline "                   "
bitfld.long 0x00 1. " TRIGGERED   ,Trigger event detected" "Not detected,Detected"
bitfld.long 0x00 0. "     FULL  ,Ram full" "Not full,Full"
wgroup.long 0x010++0x3
hide.long 0x00 "RRD,RAM Read Data Register"
in
group.long 0x014++0xb
line.long 0x00 "RRP,RAM Read Pointer Register"
line.long 0x04 "RWP,RAM Write Pointer Register"
line.long 0x08 "TRG,Trigger Counter Register"
group.long 0x020++0x3
line.long 0x00 "CTL,Control Register"
bitfld.long 0x00 0. " TRACECAPTEN ,Trace Capture Enable" "Disabled,Enabled"
wgroup.long 0x024++0x3
line.long 0x00 "RWD,RAM Write Data Register"
group.long 0x028++0x3
line.long 0x00 "MODE,Mode Register"
bitfld.long 0x00 0.--1. " MODE        ,Mode select" "Circular Buffer,Software FIFO,Hardware FIFO,Software FIFO 2"
rgroup.long 0x02c++0x7
line.long 0x00 "LBUFLEVEL,Latched Buffer Fill Level Register"
line.long 0x04 "CBUFLEVEL,Current Buffer Fill Level Register"
group.long 0x034++0x3
line.long 0x00 "BUFWM,Buffer Level Water Mark Register"
group.long 0x038++0x7
line.long 0x00 "RRPHI,RAM Read Pointer High Register"
hexmask.long.byte 0x00 0.--7. 1. " RRPHI         ,Bits [39:32] of the read pointer"
line.long 0x04 "RWPHI,RAM Write Pointer High Register"
hexmask.long.byte 0x04 0.--7. 1. " RWPHI         ,Bits [39:32] of the write pointer"
group.long 0x110++0x3
line.long 0x00 "AXICTL,AXI Control Register"
bitfld.long 0x00 8.--11. " WRBURSTLEN    ,Maximum number of data transfers per burst" "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16"
bitfld.long 0x00 7. "     SGM ,Scatter Gather Mode Enable" "Disabled,Enabled"
bitfld.long 0x00 5. "          CC3 ,Cache allocate on writes enable" "Disabled,Enabled"
bitfld.long 0x00 4. "     CC2 ,Cache allocate on reads enable" "Disabled,Enabled"
textline "                   "
bitfld.long 0x00 3. " CC1 ,Cacheable" "Non-cacheable,Cacheable"
bitfld.long 0x00 2. "    CC0 ,Bufferable" "Non-bufferable,Bufferable"
bitfld.long 0x00 1. "    PC1 ,Secure/Non-secure Access" "Secure,Non-secure"
bitfld.long 0x00 0. "   PC0 ,Normal/Privileged Access" "Normal,Privileged"
group.long 0x118++0x7
line.long 0x00 "DBALO,Data Buffer Address Low Register"
line.long 0x04 "DBAHI,Data Buffer Address High Register"
hexmask.long.byte 0x04 0.--7. 1. " BUFADDRHI     ,Bits [39:32] of the trace buffer address"
rgroup.long 0x300++0x3
line.long 0x00 "FFSR,Formatter and Flush Status Register"
bitfld.long 0x00 1. " FTSTOPPED     ,Formatter Stopped" "No,Yes"
bitfld.long 0x00 0. "    FLINPROG          ,Flush in Progress" "No,Yes"
group.long 0x304++0x7
line.long 0x00 "FFCR,Formatter and Flush Control Register"
bitfld.long 0x00 14. " DRAINBUFFER   ,Drain trace data through ATB master interface" "No,Yes"
bitfld.long 0x00 13. "    STOPONTRIGEVT     ,Stop trace capture on trigger event" "No,Yes"
bitfld.long 0x00 12. "   STOPONFL      ,Stop formatter on completion of a flush operation" "No,Yes"
bitfld.long 0x00 10. "   TRIGONFL      ,Trigger on flush completion" "No,Yes"
textline "                   "
bitfld.long 0x00 9. " TRIGONTRIGEVT ,Trigger on a trigger event" "No,Yes"
bitfld.long 0x00 8. "    TRIGONTRIGIN      ,Trigger on TRIGIN being asserted" "No,Yes"
bitfld.long 0x00 6. "   FLUSHMAN      ,Manual Flush" "No,Yes"
bitfld.long 0x00 5. "   FONTRIGEVT    ,Flush on trigger event" "No,Yes"
textline "                   "
bitfld.long 0x00 4. " FONFLIN       ,Flush on FLUSHIN feature" "No,Yes"
bitfld.long 0x00 1. "    ENTI              ,Insertion of triggers in the formatted trace stream enable" "No,Yes"
bitfld.long 0x00 0. "   ENFT          ,Formatting enable" "No,Yes"
line.long 0x04 "PSCR,Periodic Synchronization Counter Register"
bitfld.long 0x04 5. " EMBEDSYNC     ,Embed Frame Sync packets" "No,Yes"
bitfld.long 0x04 0.--4. "    PSCOUNT           ,Reload value of the Synchronization Counter" "Disabled,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,128 bytes,256 bytes,512 bytes,1 KB,2 KB,4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB,?..."
width 13.
tree "Coresight Management Registers"
group 0xFA0--0xFA8
line.long 0x000 "CTS, Claim Tag Set"
bitfld.long 0x000 7. " SETCTV7   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 6. "        SETCTV6 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 5. " SETCTV5   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 4. "        SETCTV4 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 3. " SETCTV3   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 2. "        SETCTV2 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 1. " SETCTV1   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 0. "        SETCTV0 ,Set Claim Tag Value" "No effect,Set"
line.long 0x004 "CTC, Claim Tag Clear"
bitfld.long 0x004 7. " CLRCTV7   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 6. "        CLRCTV6 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 5. " CLRCTV5   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 4. "        CLRCTV4 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 3. " CLRCTV3   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 2. "        CLRCTV2 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 1. " CLRCTV1   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 0. "        CLRCTV0 ,Clear Claim Tag Value" "No effect,Cleared"
wgroup.long 0xfb0++0x3
line.long 0x00 "LAR,Lock Access Register"
rgroup.long 0xfb4++0x7
line.long 0x00 "LSR,Lock Status Register"
bitfld.long 0x00 2. " LOCKTYPE         ,32-bit Lock Access Register Implemented" "32-bit,?..."
bitfld.long 0x00 1. "         LOCKGRANT ,Lock Status" "Unlocked,Locked"
bitfld.long 0x00 0. "         LOCKEXIST  ,Lock control mechanism present" "Not present,Present"
line.long 0x04 "AUTHSTATUS,Authentication Status Register"
bitfld.long 0x04 6.--7. " SNID   ,Security level for secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 4.--5. "  SID  ,Security level for secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
bitfld.long 0x04 2.--3. "  NSNID ,Security level for non-secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 0.--1. "  NSID ,Security level for non-secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
rgroup.long 0xfc8++0x3
line.long 0x00 "DEVID,Device Configuration Register"
bitfld.long 0x00 11.--13. " WBUF_DEPTH  ,Number of entries in the write buffer (in ETR)" "Reserved,Reserved,4 entries,8 entries,16 entries,32 entries,?..."
bitfld.long 0x00 8.--10. "  MEMWIDTH  ,Memory interface databus width" "Reserved,Reserved,32-bit,64-bit,128-bit,256-bit,?..."
bitfld.long 0x00 6.--7. "    CONFIGTYPE ,Configuration type" "ETB,ETR,ETF,?..."
bitfld.long 0x00 5. "    CLKSCHEME ,RAM clocking scheme" "Synchronous,?..."
textline "                    "
bitfld.long 0x00 0.--4. "   ATBINPORTCOUNT   ,Type or number of ATB multiplexing" "No multiplexing,?..."
width 13.
if ((d.l(e:comp.base("etr9",-1)+0xfc8)&0xc0)==(0x00||0x40))
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,RAM->APB,?..."
bitfld.long 0x00 0.--3. "                    MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Trace sink,?..."
elif ((d.l(e:comp.base("etr9",-1)+0xfc8)&0xc0)==0x80)
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,Reserved,ATB slave->RAM->ATB master,?..."
bitfld.long 0x00 0.--3. "  MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Reserved,Trace link,?..."
else
hgroup.long 0xfcc++0x3
hide.long 0x00 "DEVTYPE,Device Type Identifier Register"
endif
group 0xf00--0xf03 "Integration Test Registers"
line.long 0x000 "ITCTRL,Integration Mode Control"
bitfld.long 0x000 0. " ENABLE       ,Enable Integration mode" "no,yes"
wgroup.long 0xee0++0x3
line.long 0x00 "ITMISCOP0,Integration Test Miscellaneous Output Register 0"
bitfld.long 0x00 1. " FULL          ,FULL output value set" "0,1"
bitfld.long 0x00 0. "     ACQCOMP       ,ACQCOMP output value set" "0,1"
rgroup.long 0xee8++0x3
line.long 0x00 "ITTRFLIN,Integration Test Trigger In and Flush In Register"
bitfld.long 0x00 1. " FLUSHIN       ,FLUSHIN output value" "0,1"
bitfld.long 0x00 0. "     TRIGIN        ,TRIGIN output value" "0,1"
rgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAS[127] ,Returns the Value of the ATDATAS[127] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[119] ,Returns the Value of the ATDATAS[119] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[111] ,Returns the Value of the ATDATAS[111] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[103] ,Returns the Value of the ATDATAS[103] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[95]  ,Returns the Value of the ATDATAS[95] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[87]  ,Returns the Value of the ATDATAS[87] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[79]  ,Returns the Value of the ATDATAS[79] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[71]  ,Returns the Value of the ATDATAS[71] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[63]  ,Returns the Value of the ATDATAS[63] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[55]  ,Returns the Value of the ATDATAS[55] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[47]  ,Returns the Value of the ATDATAS[47] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[39]  ,Returns the Value of the ATDATAS[39] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAS[31]  ,Returns the Value of the ATDATAS[31] Input Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAS[23]  ,Returns the Value of the ATDATAS[23] Input pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAS[15]  ,Returns the Value of the ATDATAS[15] Input Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAS[7]   ,Returns the Value of the ATDATAS[7] Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAS[0]   ,Returns the Value of the ATDATAS[0] Input Pin" "Low,High"
wgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFREADYS     ,Drives the AFREADYS Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDS     ,Drives the ATVALIDS Output Pin" "Low,High"
rgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDS        ,Returns the Value of the ATIDS Input Pins"
rgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESS[1]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESS[0]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 1. "  AFVALIDS     ,Returns the Value of the AFVALIDS Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYS     ,Returns the Value of the ATREADYS Input Pin" "Low,High"
wgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAM[127] ,Drives the ATDATAM[127] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[119] ,Drives the ATDATAM[119] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[111] ,Drives the ATDATAM[111] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[103] ,Drives the ATDATAM[103] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[95]  ,Drives the ATDATAM[95] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[87]  ,Drives the ATDATAM[87] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[79]  ,Drives the ATDATAM[79] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[71]  ,Drives the ATDATAM[71] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[63]  ,Drives the ATDATAM[63] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[55]  ,Drives the ATDATAM[55] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[47]  ,Drives the ATDATAM[47] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[39]  ,Drives the ATDATAM[39] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAM[31]  ,Drives the ATDATAM[31] Output Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAM[23]  ,Drives the ATDATAM[23] Output pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAM[15]  ,Drives the ATDATAM[15] Output Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAM[7]   ,Drives the ATDATAM[7] Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAM[0]   ,Drives the ATDATAM[0] Output Pin" "Low,High"
rgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDM     ,Returns the Value of the AFVALIDM Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYM     ,Returns the Value of the ATREADYM Input Pin" "Low,High"
wgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDM        ,Drives the ATIDM Output Pins"
wgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESM[1]  ,Drives the ATBYTESM[1] Output Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESM[0]  ,Drives the ATBYTESM[0] Output Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYM     ,Drives the AFREADYM Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDM     ,Drives the ATVALIDM Output Pin" "Low,High"
width 13.
rgroup.long 0xfe0++0x13 "Peripheral Identification Registers"
line.long 0x00 "PERIPHID0,Peripheral ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PART_NUMBER[7:0] ,Bits [7:0] of the component part number"
line.long 0x04 "PERIPHID1,Peripheral ID1 Register"
bitfld.long 0x04 4.--7. " JEP106[3:0]      ,Bits [3:0] of the JEDEC identity code" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
bitfld.long 0x04 0.--3. "       PART_NUMBER[11:8] ,Bits [11:8] of the component part number" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "PERIPHID2,Peripheral ID2 Register"
bitfld.long 0x08 4.--7. " REVISION         ,Revision" "Reserved,r0p1,?..."
bitfld.long 0x08 3. "   JEDEC             ,JEDEC assigned value used" "Not used,Used"
bitfld.long 0x08 0.--2. "  JEP106[6:4] ,Bits [6:4] of the JEDEC identity code" "000,001,010,011,100,101,110,111"
line.long 0x0c "PERIPHID3,Peripheral ID3 Register"
hexmask.long.byte 0x0c 4.--7. 1. " REVAND           ,Minor errata fixes"
hexmask.long.byte 0x0c 0.--3. 1. "         CUSTOMER_MODIFIED ,Customer Modified"
rgroup.long 0xfd0++0x3
line.long 0x00 "PERIPHID4,Peripheral ID4 Register"
bitfld.long 0x00 4.--7. " FOURKB_COUNT     ,Total contiguous size of the memory window" "4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB"
bitfld.long 0x00 0.--3. "     JEP106_CONT       ,JEDEC continuation code" "Reserved,Reserved,Reserved,Reserved,5th bank,?..."
rgroup.long 0xff0++0xf "Component Identification Registers"
line.long 0x00 "COMPID0,Component ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PREAMBLE[7:0]    ,Bits [7:0] of the component identification"
line.long 0x04 "COMPID1,Component ID1 Register"
bitfld.long 0x04 4.--7. " CLASS            ,Class of the component" "Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,CoreSight,?..."
bitfld.long 0x04 0.--3. "  PREAMBLE[11:8]    ,Bits [11:8] of the component identification" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "COMPID2,Component ID2 Register"
hexmask.long.byte 0x08 0.--7. 1. " PREAMBLE[23:16]  ,Bits [23:16] of the component identification"
line.long 0x0c "COMPID3,Component ID3 Register"
hexmask.long.byte 0x0c 0.--7. 1. " PREAMBLE[31:24]  ,Bits [31:24] of the component identification"
tree.end
width 11.
tree.end
endif
sif COMPonent.AVAILABLE("etr10")
tree "TMC ETR10"
base e:comp.base("etr10",-1)
width 10.
group.long 0x004++0x3 "TMC Registers"
line.long 0x00 "RSZ,RAM Size Register"
hexmask.long 0x00 0.--30. 1. " RSZ         ,Size of the RAM in 32-bit words"
rgroup.long 0x00c++0x3
line.long 0x00 "STS,Status Register"
bitfld.long 0x00 5. " MEMERR      ,AXI master interface error" "No error,Error"
bitfld.long 0x00 4. "         EMPTY ,No valid trace data in the trace memory" "Not empty,Empty"
bitfld.long 0x00 3. "  FTEMPTY ,All internal pipelines and buffers empty" "Not empty,Empty"
bitfld.long 0x00 2. "  TMCREADY ,Trace capture ready" "Not ready,Ready"
textline "                   "
bitfld.long 0x00 1. " TRIGGERED   ,Trigger event detected" "Not detected,Detected"
bitfld.long 0x00 0. "     FULL  ,Ram full" "Not full,Full"
wgroup.long 0x010++0x3
hide.long 0x00 "RRD,RAM Read Data Register"
in
group.long 0x014++0xb
line.long 0x00 "RRP,RAM Read Pointer Register"
line.long 0x04 "RWP,RAM Write Pointer Register"
line.long 0x08 "TRG,Trigger Counter Register"
group.long 0x020++0x3
line.long 0x00 "CTL,Control Register"
bitfld.long 0x00 0. " TRACECAPTEN ,Trace Capture Enable" "Disabled,Enabled"
wgroup.long 0x024++0x3
line.long 0x00 "RWD,RAM Write Data Register"
group.long 0x028++0x3
line.long 0x00 "MODE,Mode Register"
bitfld.long 0x00 0.--1. " MODE        ,Mode select" "Circular Buffer,Software FIFO,Hardware FIFO,Software FIFO 2"
rgroup.long 0x02c++0x7
line.long 0x00 "LBUFLEVEL,Latched Buffer Fill Level Register"
line.long 0x04 "CBUFLEVEL,Current Buffer Fill Level Register"
group.long 0x034++0x3
line.long 0x00 "BUFWM,Buffer Level Water Mark Register"
group.long 0x038++0x7
line.long 0x00 "RRPHI,RAM Read Pointer High Register"
hexmask.long.byte 0x00 0.--7. 1. " RRPHI         ,Bits [39:32] of the read pointer"
line.long 0x04 "RWPHI,RAM Write Pointer High Register"
hexmask.long.byte 0x04 0.--7. 1. " RWPHI         ,Bits [39:32] of the write pointer"
group.long 0x110++0x3
line.long 0x00 "AXICTL,AXI Control Register"
bitfld.long 0x00 8.--11. " WRBURSTLEN    ,Maximum number of data transfers per burst" "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16"
bitfld.long 0x00 7. "     SGM ,Scatter Gather Mode Enable" "Disabled,Enabled"
bitfld.long 0x00 5. "          CC3 ,Cache allocate on writes enable" "Disabled,Enabled"
bitfld.long 0x00 4. "     CC2 ,Cache allocate on reads enable" "Disabled,Enabled"
textline "                   "
bitfld.long 0x00 3. " CC1 ,Cacheable" "Non-cacheable,Cacheable"
bitfld.long 0x00 2. "    CC0 ,Bufferable" "Non-bufferable,Bufferable"
bitfld.long 0x00 1. "    PC1 ,Secure/Non-secure Access" "Secure,Non-secure"
bitfld.long 0x00 0. "   PC0 ,Normal/Privileged Access" "Normal,Privileged"
group.long 0x118++0x7
line.long 0x00 "DBALO,Data Buffer Address Low Register"
line.long 0x04 "DBAHI,Data Buffer Address High Register"
hexmask.long.byte 0x04 0.--7. 1. " BUFADDRHI     ,Bits [39:32] of the trace buffer address"
rgroup.long 0x300++0x3
line.long 0x00 "FFSR,Formatter and Flush Status Register"
bitfld.long 0x00 1. " FTSTOPPED     ,Formatter Stopped" "No,Yes"
bitfld.long 0x00 0. "    FLINPROG          ,Flush in Progress" "No,Yes"
group.long 0x304++0x7
line.long 0x00 "FFCR,Formatter and Flush Control Register"
bitfld.long 0x00 14. " DRAINBUFFER   ,Drain trace data through ATB master interface" "No,Yes"
bitfld.long 0x00 13. "    STOPONTRIGEVT     ,Stop trace capture on trigger event" "No,Yes"
bitfld.long 0x00 12. "   STOPONFL      ,Stop formatter on completion of a flush operation" "No,Yes"
bitfld.long 0x00 10. "   TRIGONFL      ,Trigger on flush completion" "No,Yes"
textline "                   "
bitfld.long 0x00 9. " TRIGONTRIGEVT ,Trigger on a trigger event" "No,Yes"
bitfld.long 0x00 8. "    TRIGONTRIGIN      ,Trigger on TRIGIN being asserted" "No,Yes"
bitfld.long 0x00 6. "   FLUSHMAN      ,Manual Flush" "No,Yes"
bitfld.long 0x00 5. "   FONTRIGEVT    ,Flush on trigger event" "No,Yes"
textline "                   "
bitfld.long 0x00 4. " FONFLIN       ,Flush on FLUSHIN feature" "No,Yes"
bitfld.long 0x00 1. "    ENTI              ,Insertion of triggers in the formatted trace stream enable" "No,Yes"
bitfld.long 0x00 0. "   ENFT          ,Formatting enable" "No,Yes"
line.long 0x04 "PSCR,Periodic Synchronization Counter Register"
bitfld.long 0x04 5. " EMBEDSYNC     ,Embed Frame Sync packets" "No,Yes"
bitfld.long 0x04 0.--4. "    PSCOUNT           ,Reload value of the Synchronization Counter" "Disabled,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,128 bytes,256 bytes,512 bytes,1 KB,2 KB,4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB,?..."
width 13.
tree "Coresight Management Registers"
group 0xFA0--0xFA8
line.long 0x000 "CTS, Claim Tag Set"
bitfld.long 0x000 7. " SETCTV7   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 6. "        SETCTV6 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 5. " SETCTV5   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 4. "        SETCTV4 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 3. " SETCTV3   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 2. "        SETCTV2 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 1. " SETCTV1   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 0. "        SETCTV0 ,Set Claim Tag Value" "No effect,Set"
line.long 0x004 "CTC, Claim Tag Clear"
bitfld.long 0x004 7. " CLRCTV7   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 6. "        CLRCTV6 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 5. " CLRCTV5   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 4. "        CLRCTV4 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 3. " CLRCTV3   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 2. "        CLRCTV2 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 1. " CLRCTV1   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 0. "        CLRCTV0 ,Clear Claim Tag Value" "No effect,Cleared"
wgroup.long 0xfb0++0x3
line.long 0x00 "LAR,Lock Access Register"
rgroup.long 0xfb4++0x7
line.long 0x00 "LSR,Lock Status Register"
bitfld.long 0x00 2. " LOCKTYPE         ,32-bit Lock Access Register Implemented" "32-bit,?..."
bitfld.long 0x00 1. "         LOCKGRANT ,Lock Status" "Unlocked,Locked"
bitfld.long 0x00 0. "         LOCKEXIST  ,Lock control mechanism present" "Not present,Present"
line.long 0x04 "AUTHSTATUS,Authentication Status Register"
bitfld.long 0x04 6.--7. " SNID   ,Security level for secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 4.--5. "  SID  ,Security level for secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
bitfld.long 0x04 2.--3. "  NSNID ,Security level for non-secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 0.--1. "  NSID ,Security level for non-secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
rgroup.long 0xfc8++0x3
line.long 0x00 "DEVID,Device Configuration Register"
bitfld.long 0x00 11.--13. " WBUF_DEPTH  ,Number of entries in the write buffer (in ETR)" "Reserved,Reserved,4 entries,8 entries,16 entries,32 entries,?..."
bitfld.long 0x00 8.--10. "  MEMWIDTH  ,Memory interface databus width" "Reserved,Reserved,32-bit,64-bit,128-bit,256-bit,?..."
bitfld.long 0x00 6.--7. "    CONFIGTYPE ,Configuration type" "ETB,ETR,ETF,?..."
bitfld.long 0x00 5. "    CLKSCHEME ,RAM clocking scheme" "Synchronous,?..."
textline "                    "
bitfld.long 0x00 0.--4. "   ATBINPORTCOUNT   ,Type or number of ATB multiplexing" "No multiplexing,?..."
width 13.
if ((d.l(e:comp.base("etr10",-1)+0xfc8)&0xc0)==(0x00||0x40))
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,RAM->APB,?..."
bitfld.long 0x00 0.--3. "                    MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Trace sink,?..."
elif ((d.l(e:comp.base("etr10",-1)+0xfc8)&0xc0)==0x80)
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,Reserved,ATB slave->RAM->ATB master,?..."
bitfld.long 0x00 0.--3. "  MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Reserved,Trace link,?..."
else
hgroup.long 0xfcc++0x3
hide.long 0x00 "DEVTYPE,Device Type Identifier Register"
endif
group 0xf00--0xf03 "Integration Test Registers"
line.long 0x000 "ITCTRL,Integration Mode Control"
bitfld.long 0x000 0. " ENABLE       ,Enable Integration mode" "no,yes"
wgroup.long 0xee0++0x3
line.long 0x00 "ITMISCOP0,Integration Test Miscellaneous Output Register 0"
bitfld.long 0x00 1. " FULL          ,FULL output value set" "0,1"
bitfld.long 0x00 0. "     ACQCOMP       ,ACQCOMP output value set" "0,1"
rgroup.long 0xee8++0x3
line.long 0x00 "ITTRFLIN,Integration Test Trigger In and Flush In Register"
bitfld.long 0x00 1. " FLUSHIN       ,FLUSHIN output value" "0,1"
bitfld.long 0x00 0. "     TRIGIN        ,TRIGIN output value" "0,1"
rgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAS[127] ,Returns the Value of the ATDATAS[127] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[119] ,Returns the Value of the ATDATAS[119] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[111] ,Returns the Value of the ATDATAS[111] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[103] ,Returns the Value of the ATDATAS[103] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[95]  ,Returns the Value of the ATDATAS[95] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[87]  ,Returns the Value of the ATDATAS[87] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[79]  ,Returns the Value of the ATDATAS[79] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[71]  ,Returns the Value of the ATDATAS[71] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[63]  ,Returns the Value of the ATDATAS[63] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[55]  ,Returns the Value of the ATDATAS[55] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[47]  ,Returns the Value of the ATDATAS[47] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[39]  ,Returns the Value of the ATDATAS[39] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAS[31]  ,Returns the Value of the ATDATAS[31] Input Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAS[23]  ,Returns the Value of the ATDATAS[23] Input pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAS[15]  ,Returns the Value of the ATDATAS[15] Input Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAS[7]   ,Returns the Value of the ATDATAS[7] Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAS[0]   ,Returns the Value of the ATDATAS[0] Input Pin" "Low,High"
wgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFREADYS     ,Drives the AFREADYS Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDS     ,Drives the ATVALIDS Output Pin" "Low,High"
rgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDS        ,Returns the Value of the ATIDS Input Pins"
rgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESS[1]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESS[0]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 1. "  AFVALIDS     ,Returns the Value of the AFVALIDS Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYS     ,Returns the Value of the ATREADYS Input Pin" "Low,High"
wgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAM[127] ,Drives the ATDATAM[127] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[119] ,Drives the ATDATAM[119] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[111] ,Drives the ATDATAM[111] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[103] ,Drives the ATDATAM[103] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[95]  ,Drives the ATDATAM[95] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[87]  ,Drives the ATDATAM[87] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[79]  ,Drives the ATDATAM[79] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[71]  ,Drives the ATDATAM[71] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[63]  ,Drives the ATDATAM[63] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[55]  ,Drives the ATDATAM[55] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[47]  ,Drives the ATDATAM[47] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[39]  ,Drives the ATDATAM[39] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAM[31]  ,Drives the ATDATAM[31] Output Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAM[23]  ,Drives the ATDATAM[23] Output pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAM[15]  ,Drives the ATDATAM[15] Output Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAM[7]   ,Drives the ATDATAM[7] Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAM[0]   ,Drives the ATDATAM[0] Output Pin" "Low,High"
rgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDM     ,Returns the Value of the AFVALIDM Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYM     ,Returns the Value of the ATREADYM Input Pin" "Low,High"
wgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDM        ,Drives the ATIDM Output Pins"
wgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESM[1]  ,Drives the ATBYTESM[1] Output Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESM[0]  ,Drives the ATBYTESM[0] Output Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYM     ,Drives the AFREADYM Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDM     ,Drives the ATVALIDM Output Pin" "Low,High"
width 13.
rgroup.long 0xfe0++0x13 "Peripheral Identification Registers"
line.long 0x00 "PERIPHID0,Peripheral ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PART_NUMBER[7:0] ,Bits [7:0] of the component part number"
line.long 0x04 "PERIPHID1,Peripheral ID1 Register"
bitfld.long 0x04 4.--7. " JEP106[3:0]      ,Bits [3:0] of the JEDEC identity code" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
bitfld.long 0x04 0.--3. "       PART_NUMBER[11:8] ,Bits [11:8] of the component part number" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "PERIPHID2,Peripheral ID2 Register"
bitfld.long 0x08 4.--7. " REVISION         ,Revision" "Reserved,r0p1,?..."
bitfld.long 0x08 3. "   JEDEC             ,JEDEC assigned value used" "Not used,Used"
bitfld.long 0x08 0.--2. "  JEP106[6:4] ,Bits [6:4] of the JEDEC identity code" "000,001,010,011,100,101,110,111"
line.long 0x0c "PERIPHID3,Peripheral ID3 Register"
hexmask.long.byte 0x0c 4.--7. 1. " REVAND           ,Minor errata fixes"
hexmask.long.byte 0x0c 0.--3. 1. "         CUSTOMER_MODIFIED ,Customer Modified"
rgroup.long 0xfd0++0x3
line.long 0x00 "PERIPHID4,Peripheral ID4 Register"
bitfld.long 0x00 4.--7. " FOURKB_COUNT     ,Total contiguous size of the memory window" "4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB"
bitfld.long 0x00 0.--3. "     JEP106_CONT       ,JEDEC continuation code" "Reserved,Reserved,Reserved,Reserved,5th bank,?..."
rgroup.long 0xff0++0xf "Component Identification Registers"
line.long 0x00 "COMPID0,Component ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PREAMBLE[7:0]    ,Bits [7:0] of the component identification"
line.long 0x04 "COMPID1,Component ID1 Register"
bitfld.long 0x04 4.--7. " CLASS            ,Class of the component" "Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,CoreSight,?..."
bitfld.long 0x04 0.--3. "  PREAMBLE[11:8]    ,Bits [11:8] of the component identification" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "COMPID2,Component ID2 Register"
hexmask.long.byte 0x08 0.--7. 1. " PREAMBLE[23:16]  ,Bits [23:16] of the component identification"
line.long 0x0c "COMPID3,Component ID3 Register"
hexmask.long.byte 0x0c 0.--7. 1. " PREAMBLE[31:24]  ,Bits [31:24] of the component identification"
tree.end
width 11.
tree.end
endif
sif COMPonent.AVAILABLE("ets1")
tree "TMC ETS1"
base e:comp.base("ets1",-1)
width 10.
group.long 0x004++0x3 "TMC Registers"
line.long 0x00 "RSZ,RAM Size Register"
hexmask.long 0x00 0.--30. 1. " RSZ         ,Size of the RAM in 32-bit words"
rgroup.long 0x00c++0x3
line.long 0x00 "STS,Status Register"
bitfld.long 0x00 5. " MEMERR      ,AXI master interface error" "No error,Error"
bitfld.long 0x00 4. "         EMPTY ,No valid trace data in the trace memory" "Not empty,Empty"
bitfld.long 0x00 3. "  FTEMPTY ,All internal pipelines and buffers empty" "Not empty,Empty"
bitfld.long 0x00 2. "  TMCREADY ,Trace capture ready" "Not ready,Ready"
textline "                   "
bitfld.long 0x00 1. " TRIGGERED   ,Trigger event detected" "Not detected,Detected"
bitfld.long 0x00 0. "     FULL  ,Ram full" "Not full,Full"
wgroup.long 0x010++0x3
hide.long 0x00 "RRD,RAM Read Data Register"
in
group.long 0x014++0xb
line.long 0x00 "RRP,RAM Read Pointer Register"
line.long 0x04 "RWP,RAM Write Pointer Register"
line.long 0x08 "TRG,Trigger Counter Register"
group.long 0x020++0x3
line.long 0x00 "CTL,Control Register"
bitfld.long 0x00 0. " TRACECAPTEN ,Trace Capture Enable" "Disabled,Enabled"
wgroup.long 0x024++0x3
line.long 0x00 "RWD,RAM Write Data Register"
group.long 0x028++0x3
line.long 0x00 "MODE,Mode Register"
bitfld.long 0x00 0.--1. " MODE        ,Mode select" "Circular Buffer,Software FIFO,Hardware FIFO,Software FIFO 2"
rgroup.long 0x02c++0x7
line.long 0x00 "LBUFLEVEL,Latched Buffer Fill Level Register"
line.long 0x04 "CBUFLEVEL,Current Buffer Fill Level Register"
group.long 0x034++0x3
line.long 0x00 "BUFWM,Buffer Level Water Mark Register"
group.long 0x038++0x7
line.long 0x00 "RRPHI,RAM Read Pointer High Register"
hexmask.long.byte 0x00 0.--7. 1. " RRPHI         ,Bits [39:32] of the read pointer"
line.long 0x04 "RWPHI,RAM Write Pointer High Register"
hexmask.long.byte 0x04 0.--7. 1. " RWPHI         ,Bits [39:32] of the write pointer"
group.long 0x110++0x3
line.long 0x00 "AXICTL,AXI Control Register"
bitfld.long 0x00 8.--11. " WRBURSTLEN    ,Maximum number of data transfers per burst" "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16"
bitfld.long 0x00 7. "     SGM ,Scatter Gather Mode Enable" "Disabled,Enabled"
bitfld.long 0x00 5. "          CC3 ,Cache allocate on writes enable" "Disabled,Enabled"
bitfld.long 0x00 4. "     CC2 ,Cache allocate on reads enable" "Disabled,Enabled"
textline "                   "
bitfld.long 0x00 3. " CC1 ,Cacheable" "Non-cacheable,Cacheable"
bitfld.long 0x00 2. "    CC0 ,Bufferable" "Non-bufferable,Bufferable"
bitfld.long 0x00 1. "    PC1 ,Secure/Non-secure Access" "Secure,Non-secure"
bitfld.long 0x00 0. "   PC0 ,Normal/Privileged Access" "Normal,Privileged"
group.long 0x118++0x7
line.long 0x00 "DBALO,Data Buffer Address Low Register"
line.long 0x04 "DBAHI,Data Buffer Address High Register"
hexmask.long.byte 0x04 0.--7. 1. " BUFADDRHI     ,Bits [39:32] of the trace buffer address"
rgroup.long 0x300++0x3
line.long 0x00 "FFSR,Formatter and Flush Status Register"
bitfld.long 0x00 1. " FTSTOPPED     ,Formatter Stopped" "No,Yes"
bitfld.long 0x00 0. "    FLINPROG          ,Flush in Progress" "No,Yes"
group.long 0x304++0x7
line.long 0x00 "FFCR,Formatter and Flush Control Register"
bitfld.long 0x00 14. " DRAINBUFFER   ,Drain trace data through ATB master interface" "No,Yes"
bitfld.long 0x00 13. "    STOPONTRIGEVT     ,Stop trace capture on trigger event" "No,Yes"
bitfld.long 0x00 12. "   STOPONFL      ,Stop formatter on completion of a flush operation" "No,Yes"
bitfld.long 0x00 10. "   TRIGONFL      ,Trigger on flush completion" "No,Yes"
textline "                   "
bitfld.long 0x00 9. " TRIGONTRIGEVT ,Trigger on a trigger event" "No,Yes"
bitfld.long 0x00 8. "    TRIGONTRIGIN      ,Trigger on TRIGIN being asserted" "No,Yes"
bitfld.long 0x00 6. "   FLUSHMAN      ,Manual Flush" "No,Yes"
bitfld.long 0x00 5. "   FONTRIGEVT    ,Flush on trigger event" "No,Yes"
textline "                   "
bitfld.long 0x00 4. " FONFLIN       ,Flush on FLUSHIN feature" "No,Yes"
bitfld.long 0x00 1. "    ENTI              ,Insertion of triggers in the formatted trace stream enable" "No,Yes"
bitfld.long 0x00 0. "   ENFT          ,Formatting enable" "No,Yes"
line.long 0x04 "PSCR,Periodic Synchronization Counter Register"
bitfld.long 0x04 5. " EMBEDSYNC     ,Embed Frame Sync packets" "No,Yes"
bitfld.long 0x04 0.--4. "    PSCOUNT           ,Reload value of the Synchronization Counter" "Disabled,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,128 bytes,256 bytes,512 bytes,1 KB,2 KB,4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB,?..."
width 13.
tree "Coresight Management Registers"
group 0xFA0--0xFA8
line.long 0x000 "CTS, Claim Tag Set"
bitfld.long 0x000 7. " SETCTV7   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 6. "        SETCTV6 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 5. " SETCTV5   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 4. "        SETCTV4 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 3. " SETCTV3   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 2. "        SETCTV2 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 1. " SETCTV1   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 0. "        SETCTV0 ,Set Claim Tag Value" "No effect,Set"
line.long 0x004 "CTC, Claim Tag Clear"
bitfld.long 0x004 7. " CLRCTV7   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 6. "        CLRCTV6 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 5. " CLRCTV5   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 4. "        CLRCTV4 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 3. " CLRCTV3   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 2. "        CLRCTV2 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 1. " CLRCTV1   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 0. "        CLRCTV0 ,Clear Claim Tag Value" "No effect,Cleared"
wgroup.long 0xfb0++0x3
line.long 0x00 "LAR,Lock Access Register"
rgroup.long 0xfb4++0x7
line.long 0x00 "LSR,Lock Status Register"
bitfld.long 0x00 2. " LOCKTYPE         ,32-bit Lock Access Register Implemented" "32-bit,?..."
bitfld.long 0x00 1. "         LOCKGRANT ,Lock Status" "Unlocked,Locked"
bitfld.long 0x00 0. "         LOCKEXIST  ,Lock control mechanism present" "Not present,Present"
line.long 0x04 "AUTHSTATUS,Authentication Status Register"
bitfld.long 0x04 6.--7. " SNID   ,Security level for secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 4.--5. "  SID  ,Security level for secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
bitfld.long 0x04 2.--3. "  NSNID ,Security level for non-secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 0.--1. "  NSID ,Security level for non-secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
rgroup.long 0xfc8++0x3
line.long 0x00 "DEVID,Device Configuration Register"
bitfld.long 0x00 11.--13. " WBUF_DEPTH  ,Number of entries in the write buffer (in ETR)" "Reserved,Reserved,4 entries,8 entries,16 entries,32 entries,?..."
bitfld.long 0x00 8.--10. "  MEMWIDTH  ,Memory interface databus width" "Reserved,Reserved,32-bit,64-bit,128-bit,256-bit,?..."
bitfld.long 0x00 6.--7. "    CONFIGTYPE ,Configuration type" "ETB,ETR,ETF,?..."
bitfld.long 0x00 5. "    CLKSCHEME ,RAM clocking scheme" "Synchronous,?..."
textline "                    "
bitfld.long 0x00 0.--4. "   ATBINPORTCOUNT   ,Type or number of ATB multiplexing" "No multiplexing,?..."
width 13.
if ((d.l(e:comp.base("ets1",-1)+0xfc8)&0xc0)==(0x00||0x40))
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,RAM->APB,?..."
bitfld.long 0x00 0.--3. "                    MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Trace sink,?..."
elif ((d.l(e:comp.base("ets1",-1)+0xfc8)&0xc0)==0x80)
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,Reserved,ATB slave->RAM->ATB master,?..."
bitfld.long 0x00 0.--3. "  MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Reserved,Trace link,?..."
else
hgroup.long 0xfcc++0x3
hide.long 0x00 "DEVTYPE,Device Type Identifier Register"
endif
group 0xf00--0xf03 "Integration Test Registers"
line.long 0x000 "ITCTRL,Integration Mode Control"
bitfld.long 0x000 0. " ENABLE       ,Enable Integration mode" "no,yes"
wgroup.long 0xee0++0x3
line.long 0x00 "ITMISCOP0,Integration Test Miscellaneous Output Register 0"
bitfld.long 0x00 1. " FULL          ,FULL output value set" "0,1"
bitfld.long 0x00 0. "     ACQCOMP       ,ACQCOMP output value set" "0,1"
rgroup.long 0xee8++0x3
line.long 0x00 "ITTRFLIN,Integration Test Trigger In and Flush In Register"
bitfld.long 0x00 1. " FLUSHIN       ,FLUSHIN output value" "0,1"
bitfld.long 0x00 0. "     TRIGIN        ,TRIGIN output value" "0,1"
rgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAS[127] ,Returns the Value of the ATDATAS[127] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[119] ,Returns the Value of the ATDATAS[119] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[111] ,Returns the Value of the ATDATAS[111] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[103] ,Returns the Value of the ATDATAS[103] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[95]  ,Returns the Value of the ATDATAS[95] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[87]  ,Returns the Value of the ATDATAS[87] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[79]  ,Returns the Value of the ATDATAS[79] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[71]  ,Returns the Value of the ATDATAS[71] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[63]  ,Returns the Value of the ATDATAS[63] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[55]  ,Returns the Value of the ATDATAS[55] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[47]  ,Returns the Value of the ATDATAS[47] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[39]  ,Returns the Value of the ATDATAS[39] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAS[31]  ,Returns the Value of the ATDATAS[31] Input Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAS[23]  ,Returns the Value of the ATDATAS[23] Input pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAS[15]  ,Returns the Value of the ATDATAS[15] Input Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAS[7]   ,Returns the Value of the ATDATAS[7] Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAS[0]   ,Returns the Value of the ATDATAS[0] Input Pin" "Low,High"
wgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFREADYS     ,Drives the AFREADYS Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDS     ,Drives the ATVALIDS Output Pin" "Low,High"
rgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDS        ,Returns the Value of the ATIDS Input Pins"
rgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESS[1]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESS[0]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 1. "  AFVALIDS     ,Returns the Value of the AFVALIDS Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYS     ,Returns the Value of the ATREADYS Input Pin" "Low,High"
wgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAM[127] ,Drives the ATDATAM[127] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[119] ,Drives the ATDATAM[119] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[111] ,Drives the ATDATAM[111] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[103] ,Drives the ATDATAM[103] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[95]  ,Drives the ATDATAM[95] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[87]  ,Drives the ATDATAM[87] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[79]  ,Drives the ATDATAM[79] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[71]  ,Drives the ATDATAM[71] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[63]  ,Drives the ATDATAM[63] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[55]  ,Drives the ATDATAM[55] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[47]  ,Drives the ATDATAM[47] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[39]  ,Drives the ATDATAM[39] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAM[31]  ,Drives the ATDATAM[31] Output Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAM[23]  ,Drives the ATDATAM[23] Output pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAM[15]  ,Drives the ATDATAM[15] Output Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAM[7]   ,Drives the ATDATAM[7] Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAM[0]   ,Drives the ATDATAM[0] Output Pin" "Low,High"
rgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDM     ,Returns the Value of the AFVALIDM Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYM     ,Returns the Value of the ATREADYM Input Pin" "Low,High"
wgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDM        ,Drives the ATIDM Output Pins"
wgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESM[1]  ,Drives the ATBYTESM[1] Output Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESM[0]  ,Drives the ATBYTESM[0] Output Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYM     ,Drives the AFREADYM Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDM     ,Drives the ATVALIDM Output Pin" "Low,High"
width 13.
rgroup.long 0xfe0++0x13 "Peripheral Identification Registers"
line.long 0x00 "PERIPHID0,Peripheral ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PART_NUMBER[7:0] ,Bits [7:0] of the component part number"
line.long 0x04 "PERIPHID1,Peripheral ID1 Register"
bitfld.long 0x04 4.--7. " JEP106[3:0]      ,Bits [3:0] of the JEDEC identity code" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
bitfld.long 0x04 0.--3. "       PART_NUMBER[11:8] ,Bits [11:8] of the component part number" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "PERIPHID2,Peripheral ID2 Register"
bitfld.long 0x08 4.--7. " REVISION         ,Revision" "Reserved,r0p1,?..."
bitfld.long 0x08 3. "   JEDEC             ,JEDEC assigned value used" "Not used,Used"
bitfld.long 0x08 0.--2. "  JEP106[6:4] ,Bits [6:4] of the JEDEC identity code" "000,001,010,011,100,101,110,111"
line.long 0x0c "PERIPHID3,Peripheral ID3 Register"
hexmask.long.byte 0x0c 4.--7. 1. " REVAND           ,Minor errata fixes"
hexmask.long.byte 0x0c 0.--3. 1. "         CUSTOMER_MODIFIED ,Customer Modified"
rgroup.long 0xfd0++0x3
line.long 0x00 "PERIPHID4,Peripheral ID4 Register"
bitfld.long 0x00 4.--7. " FOURKB_COUNT     ,Total contiguous size of the memory window" "4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB"
bitfld.long 0x00 0.--3. "     JEP106_CONT       ,JEDEC continuation code" "Reserved,Reserved,Reserved,Reserved,5th bank,?..."
rgroup.long 0xff0++0xf "Component Identification Registers"
line.long 0x00 "COMPID0,Component ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PREAMBLE[7:0]    ,Bits [7:0] of the component identification"
line.long 0x04 "COMPID1,Component ID1 Register"
bitfld.long 0x04 4.--7. " CLASS            ,Class of the component" "Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,CoreSight,?..."
bitfld.long 0x04 0.--3. "  PREAMBLE[11:8]    ,Bits [11:8] of the component identification" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "COMPID2,Component ID2 Register"
hexmask.long.byte 0x08 0.--7. 1. " PREAMBLE[23:16]  ,Bits [23:16] of the component identification"
line.long 0x0c "COMPID3,Component ID3 Register"
hexmask.long.byte 0x0c 0.--7. 1. " PREAMBLE[31:24]  ,Bits [31:24] of the component identification"
tree.end
width 11.
tree.end
endif
sif COMPonent.AVAILABLE("ets2")
tree "TMC ETS2"
base e:comp.base("ets2",-1)
width 10.
group.long 0x004++0x3 "TMC Registers"
line.long 0x00 "RSZ,RAM Size Register"
hexmask.long 0x00 0.--30. 1. " RSZ         ,Size of the RAM in 32-bit words"
rgroup.long 0x00c++0x3
line.long 0x00 "STS,Status Register"
bitfld.long 0x00 5. " MEMERR      ,AXI master interface error" "No error,Error"
bitfld.long 0x00 4. "         EMPTY ,No valid trace data in the trace memory" "Not empty,Empty"
bitfld.long 0x00 3. "  FTEMPTY ,All internal pipelines and buffers empty" "Not empty,Empty"
bitfld.long 0x00 2. "  TMCREADY ,Trace capture ready" "Not ready,Ready"
textline "                   "
bitfld.long 0x00 1. " TRIGGERED   ,Trigger event detected" "Not detected,Detected"
bitfld.long 0x00 0. "     FULL  ,Ram full" "Not full,Full"
wgroup.long 0x010++0x3
hide.long 0x00 "RRD,RAM Read Data Register"
in
group.long 0x014++0xb
line.long 0x00 "RRP,RAM Read Pointer Register"
line.long 0x04 "RWP,RAM Write Pointer Register"
line.long 0x08 "TRG,Trigger Counter Register"
group.long 0x020++0x3
line.long 0x00 "CTL,Control Register"
bitfld.long 0x00 0. " TRACECAPTEN ,Trace Capture Enable" "Disabled,Enabled"
wgroup.long 0x024++0x3
line.long 0x00 "RWD,RAM Write Data Register"
group.long 0x028++0x3
line.long 0x00 "MODE,Mode Register"
bitfld.long 0x00 0.--1. " MODE        ,Mode select" "Circular Buffer,Software FIFO,Hardware FIFO,Software FIFO 2"
rgroup.long 0x02c++0x7
line.long 0x00 "LBUFLEVEL,Latched Buffer Fill Level Register"
line.long 0x04 "CBUFLEVEL,Current Buffer Fill Level Register"
group.long 0x034++0x3
line.long 0x00 "BUFWM,Buffer Level Water Mark Register"
group.long 0x038++0x7
line.long 0x00 "RRPHI,RAM Read Pointer High Register"
hexmask.long.byte 0x00 0.--7. 1. " RRPHI         ,Bits [39:32] of the read pointer"
line.long 0x04 "RWPHI,RAM Write Pointer High Register"
hexmask.long.byte 0x04 0.--7. 1. " RWPHI         ,Bits [39:32] of the write pointer"
group.long 0x110++0x3
line.long 0x00 "AXICTL,AXI Control Register"
bitfld.long 0x00 8.--11. " WRBURSTLEN    ,Maximum number of data transfers per burst" "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16"
bitfld.long 0x00 7. "     SGM ,Scatter Gather Mode Enable" "Disabled,Enabled"
bitfld.long 0x00 5. "          CC3 ,Cache allocate on writes enable" "Disabled,Enabled"
bitfld.long 0x00 4. "     CC2 ,Cache allocate on reads enable" "Disabled,Enabled"
textline "                   "
bitfld.long 0x00 3. " CC1 ,Cacheable" "Non-cacheable,Cacheable"
bitfld.long 0x00 2. "    CC0 ,Bufferable" "Non-bufferable,Bufferable"
bitfld.long 0x00 1. "    PC1 ,Secure/Non-secure Access" "Secure,Non-secure"
bitfld.long 0x00 0. "   PC0 ,Normal/Privileged Access" "Normal,Privileged"
group.long 0x118++0x7
line.long 0x00 "DBALO,Data Buffer Address Low Register"
line.long 0x04 "DBAHI,Data Buffer Address High Register"
hexmask.long.byte 0x04 0.--7. 1. " BUFADDRHI     ,Bits [39:32] of the trace buffer address"
rgroup.long 0x300++0x3
line.long 0x00 "FFSR,Formatter and Flush Status Register"
bitfld.long 0x00 1. " FTSTOPPED     ,Formatter Stopped" "No,Yes"
bitfld.long 0x00 0. "    FLINPROG          ,Flush in Progress" "No,Yes"
group.long 0x304++0x7
line.long 0x00 "FFCR,Formatter and Flush Control Register"
bitfld.long 0x00 14. " DRAINBUFFER   ,Drain trace data through ATB master interface" "No,Yes"
bitfld.long 0x00 13. "    STOPONTRIGEVT     ,Stop trace capture on trigger event" "No,Yes"
bitfld.long 0x00 12. "   STOPONFL      ,Stop formatter on completion of a flush operation" "No,Yes"
bitfld.long 0x00 10. "   TRIGONFL      ,Trigger on flush completion" "No,Yes"
textline "                   "
bitfld.long 0x00 9. " TRIGONTRIGEVT ,Trigger on a trigger event" "No,Yes"
bitfld.long 0x00 8. "    TRIGONTRIGIN      ,Trigger on TRIGIN being asserted" "No,Yes"
bitfld.long 0x00 6. "   FLUSHMAN      ,Manual Flush" "No,Yes"
bitfld.long 0x00 5. "   FONTRIGEVT    ,Flush on trigger event" "No,Yes"
textline "                   "
bitfld.long 0x00 4. " FONFLIN       ,Flush on FLUSHIN feature" "No,Yes"
bitfld.long 0x00 1. "    ENTI              ,Insertion of triggers in the formatted trace stream enable" "No,Yes"
bitfld.long 0x00 0. "   ENFT          ,Formatting enable" "No,Yes"
line.long 0x04 "PSCR,Periodic Synchronization Counter Register"
bitfld.long 0x04 5. " EMBEDSYNC     ,Embed Frame Sync packets" "No,Yes"
bitfld.long 0x04 0.--4. "    PSCOUNT           ,Reload value of the Synchronization Counter" "Disabled,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,128 bytes,256 bytes,512 bytes,1 KB,2 KB,4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB,?..."
width 13.
tree "Coresight Management Registers"
group 0xFA0--0xFA8
line.long 0x000 "CTS, Claim Tag Set"
bitfld.long 0x000 7. " SETCTV7   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 6. "        SETCTV6 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 5. " SETCTV5   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 4. "        SETCTV4 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 3. " SETCTV3   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 2. "        SETCTV2 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 1. " SETCTV1   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 0. "        SETCTV0 ,Set Claim Tag Value" "No effect,Set"
line.long 0x004 "CTC, Claim Tag Clear"
bitfld.long 0x004 7. " CLRCTV7   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 6. "        CLRCTV6 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 5. " CLRCTV5   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 4. "        CLRCTV4 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 3. " CLRCTV3   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 2. "        CLRCTV2 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 1. " CLRCTV1   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 0. "        CLRCTV0 ,Clear Claim Tag Value" "No effect,Cleared"
wgroup.long 0xfb0++0x3
line.long 0x00 "LAR,Lock Access Register"
rgroup.long 0xfb4++0x7
line.long 0x00 "LSR,Lock Status Register"
bitfld.long 0x00 2. " LOCKTYPE         ,32-bit Lock Access Register Implemented" "32-bit,?..."
bitfld.long 0x00 1. "         LOCKGRANT ,Lock Status" "Unlocked,Locked"
bitfld.long 0x00 0. "         LOCKEXIST  ,Lock control mechanism present" "Not present,Present"
line.long 0x04 "AUTHSTATUS,Authentication Status Register"
bitfld.long 0x04 6.--7. " SNID   ,Security level for secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 4.--5. "  SID  ,Security level for secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
bitfld.long 0x04 2.--3. "  NSNID ,Security level for non-secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 0.--1. "  NSID ,Security level for non-secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
rgroup.long 0xfc8++0x3
line.long 0x00 "DEVID,Device Configuration Register"
bitfld.long 0x00 11.--13. " WBUF_DEPTH  ,Number of entries in the write buffer (in ETR)" "Reserved,Reserved,4 entries,8 entries,16 entries,32 entries,?..."
bitfld.long 0x00 8.--10. "  MEMWIDTH  ,Memory interface databus width" "Reserved,Reserved,32-bit,64-bit,128-bit,256-bit,?..."
bitfld.long 0x00 6.--7. "    CONFIGTYPE ,Configuration type" "ETB,ETR,ETF,?..."
bitfld.long 0x00 5. "    CLKSCHEME ,RAM clocking scheme" "Synchronous,?..."
textline "                    "
bitfld.long 0x00 0.--4. "   ATBINPORTCOUNT   ,Type or number of ATB multiplexing" "No multiplexing,?..."
width 13.
if ((d.l(e:comp.base("ets2",-1)+0xfc8)&0xc0)==(0x00||0x40))
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,RAM->APB,?..."
bitfld.long 0x00 0.--3. "                    MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Trace sink,?..."
elif ((d.l(e:comp.base("ets2",-1)+0xfc8)&0xc0)==0x80)
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,Reserved,ATB slave->RAM->ATB master,?..."
bitfld.long 0x00 0.--3. "  MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Reserved,Trace link,?..."
else
hgroup.long 0xfcc++0x3
hide.long 0x00 "DEVTYPE,Device Type Identifier Register"
endif
group 0xf00--0xf03 "Integration Test Registers"
line.long 0x000 "ITCTRL,Integration Mode Control"
bitfld.long 0x000 0. " ENABLE       ,Enable Integration mode" "no,yes"
wgroup.long 0xee0++0x3
line.long 0x00 "ITMISCOP0,Integration Test Miscellaneous Output Register 0"
bitfld.long 0x00 1. " FULL          ,FULL output value set" "0,1"
bitfld.long 0x00 0. "     ACQCOMP       ,ACQCOMP output value set" "0,1"
rgroup.long 0xee8++0x3
line.long 0x00 "ITTRFLIN,Integration Test Trigger In and Flush In Register"
bitfld.long 0x00 1. " FLUSHIN       ,FLUSHIN output value" "0,1"
bitfld.long 0x00 0. "     TRIGIN        ,TRIGIN output value" "0,1"
rgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAS[127] ,Returns the Value of the ATDATAS[127] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[119] ,Returns the Value of the ATDATAS[119] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[111] ,Returns the Value of the ATDATAS[111] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[103] ,Returns the Value of the ATDATAS[103] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[95]  ,Returns the Value of the ATDATAS[95] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[87]  ,Returns the Value of the ATDATAS[87] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[79]  ,Returns the Value of the ATDATAS[79] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[71]  ,Returns the Value of the ATDATAS[71] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[63]  ,Returns the Value of the ATDATAS[63] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[55]  ,Returns the Value of the ATDATAS[55] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[47]  ,Returns the Value of the ATDATAS[47] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[39]  ,Returns the Value of the ATDATAS[39] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAS[31]  ,Returns the Value of the ATDATAS[31] Input Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAS[23]  ,Returns the Value of the ATDATAS[23] Input pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAS[15]  ,Returns the Value of the ATDATAS[15] Input Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAS[7]   ,Returns the Value of the ATDATAS[7] Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAS[0]   ,Returns the Value of the ATDATAS[0] Input Pin" "Low,High"
wgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFREADYS     ,Drives the AFREADYS Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDS     ,Drives the ATVALIDS Output Pin" "Low,High"
rgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDS        ,Returns the Value of the ATIDS Input Pins"
rgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESS[1]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESS[0]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 1. "  AFVALIDS     ,Returns the Value of the AFVALIDS Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYS     ,Returns the Value of the ATREADYS Input Pin" "Low,High"
wgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAM[127] ,Drives the ATDATAM[127] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[119] ,Drives the ATDATAM[119] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[111] ,Drives the ATDATAM[111] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[103] ,Drives the ATDATAM[103] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[95]  ,Drives the ATDATAM[95] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[87]  ,Drives the ATDATAM[87] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[79]  ,Drives the ATDATAM[79] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[71]  ,Drives the ATDATAM[71] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[63]  ,Drives the ATDATAM[63] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[55]  ,Drives the ATDATAM[55] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[47]  ,Drives the ATDATAM[47] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[39]  ,Drives the ATDATAM[39] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAM[31]  ,Drives the ATDATAM[31] Output Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAM[23]  ,Drives the ATDATAM[23] Output pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAM[15]  ,Drives the ATDATAM[15] Output Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAM[7]   ,Drives the ATDATAM[7] Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAM[0]   ,Drives the ATDATAM[0] Output Pin" "Low,High"
rgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDM     ,Returns the Value of the AFVALIDM Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYM     ,Returns the Value of the ATREADYM Input Pin" "Low,High"
wgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDM        ,Drives the ATIDM Output Pins"
wgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESM[1]  ,Drives the ATBYTESM[1] Output Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESM[0]  ,Drives the ATBYTESM[0] Output Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYM     ,Drives the AFREADYM Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDM     ,Drives the ATVALIDM Output Pin" "Low,High"
width 13.
rgroup.long 0xfe0++0x13 "Peripheral Identification Registers"
line.long 0x00 "PERIPHID0,Peripheral ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PART_NUMBER[7:0] ,Bits [7:0] of the component part number"
line.long 0x04 "PERIPHID1,Peripheral ID1 Register"
bitfld.long 0x04 4.--7. " JEP106[3:0]      ,Bits [3:0] of the JEDEC identity code" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
bitfld.long 0x04 0.--3. "       PART_NUMBER[11:8] ,Bits [11:8] of the component part number" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "PERIPHID2,Peripheral ID2 Register"
bitfld.long 0x08 4.--7. " REVISION         ,Revision" "Reserved,r0p1,?..."
bitfld.long 0x08 3. "   JEDEC             ,JEDEC assigned value used" "Not used,Used"
bitfld.long 0x08 0.--2. "  JEP106[6:4] ,Bits [6:4] of the JEDEC identity code" "000,001,010,011,100,101,110,111"
line.long 0x0c "PERIPHID3,Peripheral ID3 Register"
hexmask.long.byte 0x0c 4.--7. 1. " REVAND           ,Minor errata fixes"
hexmask.long.byte 0x0c 0.--3. 1. "         CUSTOMER_MODIFIED ,Customer Modified"
rgroup.long 0xfd0++0x3
line.long 0x00 "PERIPHID4,Peripheral ID4 Register"
bitfld.long 0x00 4.--7. " FOURKB_COUNT     ,Total contiguous size of the memory window" "4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB"
bitfld.long 0x00 0.--3. "     JEP106_CONT       ,JEDEC continuation code" "Reserved,Reserved,Reserved,Reserved,5th bank,?..."
rgroup.long 0xff0++0xf "Component Identification Registers"
line.long 0x00 "COMPID0,Component ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PREAMBLE[7:0]    ,Bits [7:0] of the component identification"
line.long 0x04 "COMPID1,Component ID1 Register"
bitfld.long 0x04 4.--7. " CLASS            ,Class of the component" "Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,CoreSight,?..."
bitfld.long 0x04 0.--3. "  PREAMBLE[11:8]    ,Bits [11:8] of the component identification" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "COMPID2,Component ID2 Register"
hexmask.long.byte 0x08 0.--7. 1. " PREAMBLE[23:16]  ,Bits [23:16] of the component identification"
line.long 0x0c "COMPID3,Component ID3 Register"
hexmask.long.byte 0x0c 0.--7. 1. " PREAMBLE[31:24]  ,Bits [31:24] of the component identification"
tree.end
width 11.
tree.end
endif
sif COMPonent.AVAILABLE("ets3")
tree "TMC ETS3"
base e:comp.base("ets3",-1)
width 10.
group.long 0x004++0x3 "TMC Registers"
line.long 0x00 "RSZ,RAM Size Register"
hexmask.long 0x00 0.--30. 1. " RSZ         ,Size of the RAM in 32-bit words"
rgroup.long 0x00c++0x3
line.long 0x00 "STS,Status Register"
bitfld.long 0x00 5. " MEMERR      ,AXI master interface error" "No error,Error"
bitfld.long 0x00 4. "         EMPTY ,No valid trace data in the trace memory" "Not empty,Empty"
bitfld.long 0x00 3. "  FTEMPTY ,All internal pipelines and buffers empty" "Not empty,Empty"
bitfld.long 0x00 2. "  TMCREADY ,Trace capture ready" "Not ready,Ready"
textline "                   "
bitfld.long 0x00 1. " TRIGGERED   ,Trigger event detected" "Not detected,Detected"
bitfld.long 0x00 0. "     FULL  ,Ram full" "Not full,Full"
wgroup.long 0x010++0x3
hide.long 0x00 "RRD,RAM Read Data Register"
in
group.long 0x014++0xb
line.long 0x00 "RRP,RAM Read Pointer Register"
line.long 0x04 "RWP,RAM Write Pointer Register"
line.long 0x08 "TRG,Trigger Counter Register"
group.long 0x020++0x3
line.long 0x00 "CTL,Control Register"
bitfld.long 0x00 0. " TRACECAPTEN ,Trace Capture Enable" "Disabled,Enabled"
wgroup.long 0x024++0x3
line.long 0x00 "RWD,RAM Write Data Register"
group.long 0x028++0x3
line.long 0x00 "MODE,Mode Register"
bitfld.long 0x00 0.--1. " MODE        ,Mode select" "Circular Buffer,Software FIFO,Hardware FIFO,Software FIFO 2"
rgroup.long 0x02c++0x7
line.long 0x00 "LBUFLEVEL,Latched Buffer Fill Level Register"
line.long 0x04 "CBUFLEVEL,Current Buffer Fill Level Register"
group.long 0x034++0x3
line.long 0x00 "BUFWM,Buffer Level Water Mark Register"
group.long 0x038++0x7
line.long 0x00 "RRPHI,RAM Read Pointer High Register"
hexmask.long.byte 0x00 0.--7. 1. " RRPHI         ,Bits [39:32] of the read pointer"
line.long 0x04 "RWPHI,RAM Write Pointer High Register"
hexmask.long.byte 0x04 0.--7. 1. " RWPHI         ,Bits [39:32] of the write pointer"
group.long 0x110++0x3
line.long 0x00 "AXICTL,AXI Control Register"
bitfld.long 0x00 8.--11. " WRBURSTLEN    ,Maximum number of data transfers per burst" "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16"
bitfld.long 0x00 7. "     SGM ,Scatter Gather Mode Enable" "Disabled,Enabled"
bitfld.long 0x00 5. "          CC3 ,Cache allocate on writes enable" "Disabled,Enabled"
bitfld.long 0x00 4. "     CC2 ,Cache allocate on reads enable" "Disabled,Enabled"
textline "                   "
bitfld.long 0x00 3. " CC1 ,Cacheable" "Non-cacheable,Cacheable"
bitfld.long 0x00 2. "    CC0 ,Bufferable" "Non-bufferable,Bufferable"
bitfld.long 0x00 1. "    PC1 ,Secure/Non-secure Access" "Secure,Non-secure"
bitfld.long 0x00 0. "   PC0 ,Normal/Privileged Access" "Normal,Privileged"
group.long 0x118++0x7
line.long 0x00 "DBALO,Data Buffer Address Low Register"
line.long 0x04 "DBAHI,Data Buffer Address High Register"
hexmask.long.byte 0x04 0.--7. 1. " BUFADDRHI     ,Bits [39:32] of the trace buffer address"
rgroup.long 0x300++0x3
line.long 0x00 "FFSR,Formatter and Flush Status Register"
bitfld.long 0x00 1. " FTSTOPPED     ,Formatter Stopped" "No,Yes"
bitfld.long 0x00 0. "    FLINPROG          ,Flush in Progress" "No,Yes"
group.long 0x304++0x7
line.long 0x00 "FFCR,Formatter and Flush Control Register"
bitfld.long 0x00 14. " DRAINBUFFER   ,Drain trace data through ATB master interface" "No,Yes"
bitfld.long 0x00 13. "    STOPONTRIGEVT     ,Stop trace capture on trigger event" "No,Yes"
bitfld.long 0x00 12. "   STOPONFL      ,Stop formatter on completion of a flush operation" "No,Yes"
bitfld.long 0x00 10. "   TRIGONFL      ,Trigger on flush completion" "No,Yes"
textline "                   "
bitfld.long 0x00 9. " TRIGONTRIGEVT ,Trigger on a trigger event" "No,Yes"
bitfld.long 0x00 8. "    TRIGONTRIGIN      ,Trigger on TRIGIN being asserted" "No,Yes"
bitfld.long 0x00 6. "   FLUSHMAN      ,Manual Flush" "No,Yes"
bitfld.long 0x00 5. "   FONTRIGEVT    ,Flush on trigger event" "No,Yes"
textline "                   "
bitfld.long 0x00 4. " FONFLIN       ,Flush on FLUSHIN feature" "No,Yes"
bitfld.long 0x00 1. "    ENTI              ,Insertion of triggers in the formatted trace stream enable" "No,Yes"
bitfld.long 0x00 0. "   ENFT          ,Formatting enable" "No,Yes"
line.long 0x04 "PSCR,Periodic Synchronization Counter Register"
bitfld.long 0x04 5. " EMBEDSYNC     ,Embed Frame Sync packets" "No,Yes"
bitfld.long 0x04 0.--4. "    PSCOUNT           ,Reload value of the Synchronization Counter" "Disabled,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,128 bytes,256 bytes,512 bytes,1 KB,2 KB,4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB,?..."
width 13.
tree "Coresight Management Registers"
group 0xFA0--0xFA8
line.long 0x000 "CTS, Claim Tag Set"
bitfld.long 0x000 7. " SETCTV7   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 6. "        SETCTV6 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 5. " SETCTV5   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 4. "        SETCTV4 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 3. " SETCTV3   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 2. "        SETCTV2 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 1. " SETCTV1   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 0. "        SETCTV0 ,Set Claim Tag Value" "No effect,Set"
line.long 0x004 "CTC, Claim Tag Clear"
bitfld.long 0x004 7. " CLRCTV7   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 6. "        CLRCTV6 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 5. " CLRCTV5   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 4. "        CLRCTV4 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 3. " CLRCTV3   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 2. "        CLRCTV2 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 1. " CLRCTV1   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 0. "        CLRCTV0 ,Clear Claim Tag Value" "No effect,Cleared"
wgroup.long 0xfb0++0x3
line.long 0x00 "LAR,Lock Access Register"
rgroup.long 0xfb4++0x7
line.long 0x00 "LSR,Lock Status Register"
bitfld.long 0x00 2. " LOCKTYPE         ,32-bit Lock Access Register Implemented" "32-bit,?..."
bitfld.long 0x00 1. "         LOCKGRANT ,Lock Status" "Unlocked,Locked"
bitfld.long 0x00 0. "         LOCKEXIST  ,Lock control mechanism present" "Not present,Present"
line.long 0x04 "AUTHSTATUS,Authentication Status Register"
bitfld.long 0x04 6.--7. " SNID   ,Security level for secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 4.--5. "  SID  ,Security level for secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
bitfld.long 0x04 2.--3. "  NSNID ,Security level for non-secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 0.--1. "  NSID ,Security level for non-secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
rgroup.long 0xfc8++0x3
line.long 0x00 "DEVID,Device Configuration Register"
bitfld.long 0x00 11.--13. " WBUF_DEPTH  ,Number of entries in the write buffer (in ETR)" "Reserved,Reserved,4 entries,8 entries,16 entries,32 entries,?..."
bitfld.long 0x00 8.--10. "  MEMWIDTH  ,Memory interface databus width" "Reserved,Reserved,32-bit,64-bit,128-bit,256-bit,?..."
bitfld.long 0x00 6.--7. "    CONFIGTYPE ,Configuration type" "ETB,ETR,ETF,?..."
bitfld.long 0x00 5. "    CLKSCHEME ,RAM clocking scheme" "Synchronous,?..."
textline "                    "
bitfld.long 0x00 0.--4. "   ATBINPORTCOUNT   ,Type or number of ATB multiplexing" "No multiplexing,?..."
width 13.
if ((d.l(e:comp.base("ets3",-1)+0xfc8)&0xc0)==(0x00||0x40))
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,RAM->APB,?..."
bitfld.long 0x00 0.--3. "                    MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Trace sink,?..."
elif ((d.l(e:comp.base("ets3",-1)+0xfc8)&0xc0)==0x80)
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,Reserved,ATB slave->RAM->ATB master,?..."
bitfld.long 0x00 0.--3. "  MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Reserved,Trace link,?..."
else
hgroup.long 0xfcc++0x3
hide.long 0x00 "DEVTYPE,Device Type Identifier Register"
endif
group 0xf00--0xf03 "Integration Test Registers"
line.long 0x000 "ITCTRL,Integration Mode Control"
bitfld.long 0x000 0. " ENABLE       ,Enable Integration mode" "no,yes"
wgroup.long 0xee0++0x3
line.long 0x00 "ITMISCOP0,Integration Test Miscellaneous Output Register 0"
bitfld.long 0x00 1. " FULL          ,FULL output value set" "0,1"
bitfld.long 0x00 0. "     ACQCOMP       ,ACQCOMP output value set" "0,1"
rgroup.long 0xee8++0x3
line.long 0x00 "ITTRFLIN,Integration Test Trigger In and Flush In Register"
bitfld.long 0x00 1. " FLUSHIN       ,FLUSHIN output value" "0,1"
bitfld.long 0x00 0. "     TRIGIN        ,TRIGIN output value" "0,1"
rgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAS[127] ,Returns the Value of the ATDATAS[127] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[119] ,Returns the Value of the ATDATAS[119] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[111] ,Returns the Value of the ATDATAS[111] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[103] ,Returns the Value of the ATDATAS[103] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[95]  ,Returns the Value of the ATDATAS[95] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[87]  ,Returns the Value of the ATDATAS[87] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[79]  ,Returns the Value of the ATDATAS[79] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[71]  ,Returns the Value of the ATDATAS[71] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[63]  ,Returns the Value of the ATDATAS[63] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[55]  ,Returns the Value of the ATDATAS[55] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[47]  ,Returns the Value of the ATDATAS[47] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[39]  ,Returns the Value of the ATDATAS[39] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAS[31]  ,Returns the Value of the ATDATAS[31] Input Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAS[23]  ,Returns the Value of the ATDATAS[23] Input pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAS[15]  ,Returns the Value of the ATDATAS[15] Input Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAS[7]   ,Returns the Value of the ATDATAS[7] Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAS[0]   ,Returns the Value of the ATDATAS[0] Input Pin" "Low,High"
wgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFREADYS     ,Drives the AFREADYS Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDS     ,Drives the ATVALIDS Output Pin" "Low,High"
rgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDS        ,Returns the Value of the ATIDS Input Pins"
rgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESS[1]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESS[0]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 1. "  AFVALIDS     ,Returns the Value of the AFVALIDS Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYS     ,Returns the Value of the ATREADYS Input Pin" "Low,High"
wgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAM[127] ,Drives the ATDATAM[127] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[119] ,Drives the ATDATAM[119] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[111] ,Drives the ATDATAM[111] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[103] ,Drives the ATDATAM[103] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[95]  ,Drives the ATDATAM[95] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[87]  ,Drives the ATDATAM[87] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[79]  ,Drives the ATDATAM[79] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[71]  ,Drives the ATDATAM[71] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[63]  ,Drives the ATDATAM[63] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[55]  ,Drives the ATDATAM[55] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[47]  ,Drives the ATDATAM[47] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[39]  ,Drives the ATDATAM[39] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAM[31]  ,Drives the ATDATAM[31] Output Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAM[23]  ,Drives the ATDATAM[23] Output pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAM[15]  ,Drives the ATDATAM[15] Output Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAM[7]   ,Drives the ATDATAM[7] Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAM[0]   ,Drives the ATDATAM[0] Output Pin" "Low,High"
rgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDM     ,Returns the Value of the AFVALIDM Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYM     ,Returns the Value of the ATREADYM Input Pin" "Low,High"
wgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDM        ,Drives the ATIDM Output Pins"
wgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESM[1]  ,Drives the ATBYTESM[1] Output Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESM[0]  ,Drives the ATBYTESM[0] Output Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYM     ,Drives the AFREADYM Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDM     ,Drives the ATVALIDM Output Pin" "Low,High"
width 13.
rgroup.long 0xfe0++0x13 "Peripheral Identification Registers"
line.long 0x00 "PERIPHID0,Peripheral ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PART_NUMBER[7:0] ,Bits [7:0] of the component part number"
line.long 0x04 "PERIPHID1,Peripheral ID1 Register"
bitfld.long 0x04 4.--7. " JEP106[3:0]      ,Bits [3:0] of the JEDEC identity code" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
bitfld.long 0x04 0.--3. "       PART_NUMBER[11:8] ,Bits [11:8] of the component part number" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "PERIPHID2,Peripheral ID2 Register"
bitfld.long 0x08 4.--7. " REVISION         ,Revision" "Reserved,r0p1,?..."
bitfld.long 0x08 3. "   JEDEC             ,JEDEC assigned value used" "Not used,Used"
bitfld.long 0x08 0.--2. "  JEP106[6:4] ,Bits [6:4] of the JEDEC identity code" "000,001,010,011,100,101,110,111"
line.long 0x0c "PERIPHID3,Peripheral ID3 Register"
hexmask.long.byte 0x0c 4.--7. 1. " REVAND           ,Minor errata fixes"
hexmask.long.byte 0x0c 0.--3. 1. "         CUSTOMER_MODIFIED ,Customer Modified"
rgroup.long 0xfd0++0x3
line.long 0x00 "PERIPHID4,Peripheral ID4 Register"
bitfld.long 0x00 4.--7. " FOURKB_COUNT     ,Total contiguous size of the memory window" "4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB"
bitfld.long 0x00 0.--3. "     JEP106_CONT       ,JEDEC continuation code" "Reserved,Reserved,Reserved,Reserved,5th bank,?..."
rgroup.long 0xff0++0xf "Component Identification Registers"
line.long 0x00 "COMPID0,Component ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PREAMBLE[7:0]    ,Bits [7:0] of the component identification"
line.long 0x04 "COMPID1,Component ID1 Register"
bitfld.long 0x04 4.--7. " CLASS            ,Class of the component" "Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,CoreSight,?..."
bitfld.long 0x04 0.--3. "  PREAMBLE[11:8]    ,Bits [11:8] of the component identification" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "COMPID2,Component ID2 Register"
hexmask.long.byte 0x08 0.--7. 1. " PREAMBLE[23:16]  ,Bits [23:16] of the component identification"
line.long 0x0c "COMPID3,Component ID3 Register"
hexmask.long.byte 0x0c 0.--7. 1. " PREAMBLE[31:24]  ,Bits [31:24] of the component identification"
tree.end
width 11.
tree.end
endif
sif COMPonent.AVAILABLE("ets4")
tree "TMC ETS4"
base e:comp.base("ets4",-1)
width 10.
group.long 0x004++0x3 "TMC Registers"
line.long 0x00 "RSZ,RAM Size Register"
hexmask.long 0x00 0.--30. 1. " RSZ         ,Size of the RAM in 32-bit words"
rgroup.long 0x00c++0x3
line.long 0x00 "STS,Status Register"
bitfld.long 0x00 5. " MEMERR      ,AXI master interface error" "No error,Error"
bitfld.long 0x00 4. "         EMPTY ,No valid trace data in the trace memory" "Not empty,Empty"
bitfld.long 0x00 3. "  FTEMPTY ,All internal pipelines and buffers empty" "Not empty,Empty"
bitfld.long 0x00 2. "  TMCREADY ,Trace capture ready" "Not ready,Ready"
textline "                   "
bitfld.long 0x00 1. " TRIGGERED   ,Trigger event detected" "Not detected,Detected"
bitfld.long 0x00 0. "     FULL  ,Ram full" "Not full,Full"
wgroup.long 0x010++0x3
hide.long 0x00 "RRD,RAM Read Data Register"
in
group.long 0x014++0xb
line.long 0x00 "RRP,RAM Read Pointer Register"
line.long 0x04 "RWP,RAM Write Pointer Register"
line.long 0x08 "TRG,Trigger Counter Register"
group.long 0x020++0x3
line.long 0x00 "CTL,Control Register"
bitfld.long 0x00 0. " TRACECAPTEN ,Trace Capture Enable" "Disabled,Enabled"
wgroup.long 0x024++0x3
line.long 0x00 "RWD,RAM Write Data Register"
group.long 0x028++0x3
line.long 0x00 "MODE,Mode Register"
bitfld.long 0x00 0.--1. " MODE        ,Mode select" "Circular Buffer,Software FIFO,Hardware FIFO,Software FIFO 2"
rgroup.long 0x02c++0x7
line.long 0x00 "LBUFLEVEL,Latched Buffer Fill Level Register"
line.long 0x04 "CBUFLEVEL,Current Buffer Fill Level Register"
group.long 0x034++0x3
line.long 0x00 "BUFWM,Buffer Level Water Mark Register"
group.long 0x038++0x7
line.long 0x00 "RRPHI,RAM Read Pointer High Register"
hexmask.long.byte 0x00 0.--7. 1. " RRPHI         ,Bits [39:32] of the read pointer"
line.long 0x04 "RWPHI,RAM Write Pointer High Register"
hexmask.long.byte 0x04 0.--7. 1. " RWPHI         ,Bits [39:32] of the write pointer"
group.long 0x110++0x3
line.long 0x00 "AXICTL,AXI Control Register"
bitfld.long 0x00 8.--11. " WRBURSTLEN    ,Maximum number of data transfers per burst" "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16"
bitfld.long 0x00 7. "     SGM ,Scatter Gather Mode Enable" "Disabled,Enabled"
bitfld.long 0x00 5. "          CC3 ,Cache allocate on writes enable" "Disabled,Enabled"
bitfld.long 0x00 4. "     CC2 ,Cache allocate on reads enable" "Disabled,Enabled"
textline "                   "
bitfld.long 0x00 3. " CC1 ,Cacheable" "Non-cacheable,Cacheable"
bitfld.long 0x00 2. "    CC0 ,Bufferable" "Non-bufferable,Bufferable"
bitfld.long 0x00 1. "    PC1 ,Secure/Non-secure Access" "Secure,Non-secure"
bitfld.long 0x00 0. "   PC0 ,Normal/Privileged Access" "Normal,Privileged"
group.long 0x118++0x7
line.long 0x00 "DBALO,Data Buffer Address Low Register"
line.long 0x04 "DBAHI,Data Buffer Address High Register"
hexmask.long.byte 0x04 0.--7. 1. " BUFADDRHI     ,Bits [39:32] of the trace buffer address"
rgroup.long 0x300++0x3
line.long 0x00 "FFSR,Formatter and Flush Status Register"
bitfld.long 0x00 1. " FTSTOPPED     ,Formatter Stopped" "No,Yes"
bitfld.long 0x00 0. "    FLINPROG          ,Flush in Progress" "No,Yes"
group.long 0x304++0x7
line.long 0x00 "FFCR,Formatter and Flush Control Register"
bitfld.long 0x00 14. " DRAINBUFFER   ,Drain trace data through ATB master interface" "No,Yes"
bitfld.long 0x00 13. "    STOPONTRIGEVT     ,Stop trace capture on trigger event" "No,Yes"
bitfld.long 0x00 12. "   STOPONFL      ,Stop formatter on completion of a flush operation" "No,Yes"
bitfld.long 0x00 10. "   TRIGONFL      ,Trigger on flush completion" "No,Yes"
textline "                   "
bitfld.long 0x00 9. " TRIGONTRIGEVT ,Trigger on a trigger event" "No,Yes"
bitfld.long 0x00 8. "    TRIGONTRIGIN      ,Trigger on TRIGIN being asserted" "No,Yes"
bitfld.long 0x00 6. "   FLUSHMAN      ,Manual Flush" "No,Yes"
bitfld.long 0x00 5. "   FONTRIGEVT    ,Flush on trigger event" "No,Yes"
textline "                   "
bitfld.long 0x00 4. " FONFLIN       ,Flush on FLUSHIN feature" "No,Yes"
bitfld.long 0x00 1. "    ENTI              ,Insertion of triggers in the formatted trace stream enable" "No,Yes"
bitfld.long 0x00 0. "   ENFT          ,Formatting enable" "No,Yes"
line.long 0x04 "PSCR,Periodic Synchronization Counter Register"
bitfld.long 0x04 5. " EMBEDSYNC     ,Embed Frame Sync packets" "No,Yes"
bitfld.long 0x04 0.--4. "    PSCOUNT           ,Reload value of the Synchronization Counter" "Disabled,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,128 bytes,256 bytes,512 bytes,1 KB,2 KB,4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB,?..."
width 13.
tree "Coresight Management Registers"
group 0xFA0--0xFA8
line.long 0x000 "CTS, Claim Tag Set"
bitfld.long 0x000 7. " SETCTV7   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 6. "        SETCTV6 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 5. " SETCTV5   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 4. "        SETCTV4 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 3. " SETCTV3   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 2. "        SETCTV2 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 1. " SETCTV1   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 0. "        SETCTV0 ,Set Claim Tag Value" "No effect,Set"
line.long 0x004 "CTC, Claim Tag Clear"
bitfld.long 0x004 7. " CLRCTV7   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 6. "        CLRCTV6 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 5. " CLRCTV5   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 4. "        CLRCTV4 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 3. " CLRCTV3   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 2. "        CLRCTV2 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 1. " CLRCTV1   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 0. "        CLRCTV0 ,Clear Claim Tag Value" "No effect,Cleared"
wgroup.long 0xfb0++0x3
line.long 0x00 "LAR,Lock Access Register"
rgroup.long 0xfb4++0x7
line.long 0x00 "LSR,Lock Status Register"
bitfld.long 0x00 2. " LOCKTYPE         ,32-bit Lock Access Register Implemented" "32-bit,?..."
bitfld.long 0x00 1. "         LOCKGRANT ,Lock Status" "Unlocked,Locked"
bitfld.long 0x00 0. "         LOCKEXIST  ,Lock control mechanism present" "Not present,Present"
line.long 0x04 "AUTHSTATUS,Authentication Status Register"
bitfld.long 0x04 6.--7. " SNID   ,Security level for secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 4.--5. "  SID  ,Security level for secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
bitfld.long 0x04 2.--3. "  NSNID ,Security level for non-secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 0.--1. "  NSID ,Security level for non-secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
rgroup.long 0xfc8++0x3
line.long 0x00 "DEVID,Device Configuration Register"
bitfld.long 0x00 11.--13. " WBUF_DEPTH  ,Number of entries in the write buffer (in ETR)" "Reserved,Reserved,4 entries,8 entries,16 entries,32 entries,?..."
bitfld.long 0x00 8.--10. "  MEMWIDTH  ,Memory interface databus width" "Reserved,Reserved,32-bit,64-bit,128-bit,256-bit,?..."
bitfld.long 0x00 6.--7. "    CONFIGTYPE ,Configuration type" "ETB,ETR,ETF,?..."
bitfld.long 0x00 5. "    CLKSCHEME ,RAM clocking scheme" "Synchronous,?..."
textline "                    "
bitfld.long 0x00 0.--4. "   ATBINPORTCOUNT   ,Type or number of ATB multiplexing" "No multiplexing,?..."
width 13.
if ((d.l(e:comp.base("ets4",-1)+0xfc8)&0xc0)==(0x00||0x40))
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,RAM->APB,?..."
bitfld.long 0x00 0.--3. "                    MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Trace sink,?..."
elif ((d.l(e:comp.base("ets4",-1)+0xfc8)&0xc0)==0x80)
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,Reserved,ATB slave->RAM->ATB master,?..."
bitfld.long 0x00 0.--3. "  MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Reserved,Trace link,?..."
else
hgroup.long 0xfcc++0x3
hide.long 0x00 "DEVTYPE,Device Type Identifier Register"
endif
group 0xf00--0xf03 "Integration Test Registers"
line.long 0x000 "ITCTRL,Integration Mode Control"
bitfld.long 0x000 0. " ENABLE       ,Enable Integration mode" "no,yes"
wgroup.long 0xee0++0x3
line.long 0x00 "ITMISCOP0,Integration Test Miscellaneous Output Register 0"
bitfld.long 0x00 1. " FULL          ,FULL output value set" "0,1"
bitfld.long 0x00 0. "     ACQCOMP       ,ACQCOMP output value set" "0,1"
rgroup.long 0xee8++0x3
line.long 0x00 "ITTRFLIN,Integration Test Trigger In and Flush In Register"
bitfld.long 0x00 1. " FLUSHIN       ,FLUSHIN output value" "0,1"
bitfld.long 0x00 0. "     TRIGIN        ,TRIGIN output value" "0,1"
rgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAS[127] ,Returns the Value of the ATDATAS[127] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[119] ,Returns the Value of the ATDATAS[119] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[111] ,Returns the Value of the ATDATAS[111] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[103] ,Returns the Value of the ATDATAS[103] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[95]  ,Returns the Value of the ATDATAS[95] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[87]  ,Returns the Value of the ATDATAS[87] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[79]  ,Returns the Value of the ATDATAS[79] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[71]  ,Returns the Value of the ATDATAS[71] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[63]  ,Returns the Value of the ATDATAS[63] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[55]  ,Returns the Value of the ATDATAS[55] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[47]  ,Returns the Value of the ATDATAS[47] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[39]  ,Returns the Value of the ATDATAS[39] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAS[31]  ,Returns the Value of the ATDATAS[31] Input Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAS[23]  ,Returns the Value of the ATDATAS[23] Input pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAS[15]  ,Returns the Value of the ATDATAS[15] Input Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAS[7]   ,Returns the Value of the ATDATAS[7] Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAS[0]   ,Returns the Value of the ATDATAS[0] Input Pin" "Low,High"
wgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFREADYS     ,Drives the AFREADYS Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDS     ,Drives the ATVALIDS Output Pin" "Low,High"
rgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDS        ,Returns the Value of the ATIDS Input Pins"
rgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESS[1]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESS[0]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 1. "  AFVALIDS     ,Returns the Value of the AFVALIDS Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYS     ,Returns the Value of the ATREADYS Input Pin" "Low,High"
wgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAM[127] ,Drives the ATDATAM[127] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[119] ,Drives the ATDATAM[119] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[111] ,Drives the ATDATAM[111] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[103] ,Drives the ATDATAM[103] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[95]  ,Drives the ATDATAM[95] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[87]  ,Drives the ATDATAM[87] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[79]  ,Drives the ATDATAM[79] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[71]  ,Drives the ATDATAM[71] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[63]  ,Drives the ATDATAM[63] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[55]  ,Drives the ATDATAM[55] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[47]  ,Drives the ATDATAM[47] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[39]  ,Drives the ATDATAM[39] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAM[31]  ,Drives the ATDATAM[31] Output Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAM[23]  ,Drives the ATDATAM[23] Output pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAM[15]  ,Drives the ATDATAM[15] Output Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAM[7]   ,Drives the ATDATAM[7] Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAM[0]   ,Drives the ATDATAM[0] Output Pin" "Low,High"
rgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDM     ,Returns the Value of the AFVALIDM Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYM     ,Returns the Value of the ATREADYM Input Pin" "Low,High"
wgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDM        ,Drives the ATIDM Output Pins"
wgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESM[1]  ,Drives the ATBYTESM[1] Output Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESM[0]  ,Drives the ATBYTESM[0] Output Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYM     ,Drives the AFREADYM Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDM     ,Drives the ATVALIDM Output Pin" "Low,High"
width 13.
rgroup.long 0xfe0++0x13 "Peripheral Identification Registers"
line.long 0x00 "PERIPHID0,Peripheral ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PART_NUMBER[7:0] ,Bits [7:0] of the component part number"
line.long 0x04 "PERIPHID1,Peripheral ID1 Register"
bitfld.long 0x04 4.--7. " JEP106[3:0]      ,Bits [3:0] of the JEDEC identity code" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
bitfld.long 0x04 0.--3. "       PART_NUMBER[11:8] ,Bits [11:8] of the component part number" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "PERIPHID2,Peripheral ID2 Register"
bitfld.long 0x08 4.--7. " REVISION         ,Revision" "Reserved,r0p1,?..."
bitfld.long 0x08 3. "   JEDEC             ,JEDEC assigned value used" "Not used,Used"
bitfld.long 0x08 0.--2. "  JEP106[6:4] ,Bits [6:4] of the JEDEC identity code" "000,001,010,011,100,101,110,111"
line.long 0x0c "PERIPHID3,Peripheral ID3 Register"
hexmask.long.byte 0x0c 4.--7. 1. " REVAND           ,Minor errata fixes"
hexmask.long.byte 0x0c 0.--3. 1. "         CUSTOMER_MODIFIED ,Customer Modified"
rgroup.long 0xfd0++0x3
line.long 0x00 "PERIPHID4,Peripheral ID4 Register"
bitfld.long 0x00 4.--7. " FOURKB_COUNT     ,Total contiguous size of the memory window" "4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB"
bitfld.long 0x00 0.--3. "     JEP106_CONT       ,JEDEC continuation code" "Reserved,Reserved,Reserved,Reserved,5th bank,?..."
rgroup.long 0xff0++0xf "Component Identification Registers"
line.long 0x00 "COMPID0,Component ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PREAMBLE[7:0]    ,Bits [7:0] of the component identification"
line.long 0x04 "COMPID1,Component ID1 Register"
bitfld.long 0x04 4.--7. " CLASS            ,Class of the component" "Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,CoreSight,?..."
bitfld.long 0x04 0.--3. "  PREAMBLE[11:8]    ,Bits [11:8] of the component identification" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "COMPID2,Component ID2 Register"
hexmask.long.byte 0x08 0.--7. 1. " PREAMBLE[23:16]  ,Bits [23:16] of the component identification"
line.long 0x0c "COMPID3,Component ID3 Register"
hexmask.long.byte 0x0c 0.--7. 1. " PREAMBLE[31:24]  ,Bits [31:24] of the component identification"
tree.end
width 11.
tree.end
endif
sif COMPonent.AVAILABLE("ets5")
tree "TMC ETS5"
base e:comp.base("ets5",-1)
width 10.
group.long 0x004++0x3 "TMC Registers"
line.long 0x00 "RSZ,RAM Size Register"
hexmask.long 0x00 0.--30. 1. " RSZ         ,Size of the RAM in 32-bit words"
rgroup.long 0x00c++0x3
line.long 0x00 "STS,Status Register"
bitfld.long 0x00 5. " MEMERR      ,AXI master interface error" "No error,Error"
bitfld.long 0x00 4. "         EMPTY ,No valid trace data in the trace memory" "Not empty,Empty"
bitfld.long 0x00 3. "  FTEMPTY ,All internal pipelines and buffers empty" "Not empty,Empty"
bitfld.long 0x00 2. "  TMCREADY ,Trace capture ready" "Not ready,Ready"
textline "                   "
bitfld.long 0x00 1. " TRIGGERED   ,Trigger event detected" "Not detected,Detected"
bitfld.long 0x00 0. "     FULL  ,Ram full" "Not full,Full"
wgroup.long 0x010++0x3
hide.long 0x00 "RRD,RAM Read Data Register"
in
group.long 0x014++0xb
line.long 0x00 "RRP,RAM Read Pointer Register"
line.long 0x04 "RWP,RAM Write Pointer Register"
line.long 0x08 "TRG,Trigger Counter Register"
group.long 0x020++0x3
line.long 0x00 "CTL,Control Register"
bitfld.long 0x00 0. " TRACECAPTEN ,Trace Capture Enable" "Disabled,Enabled"
wgroup.long 0x024++0x3
line.long 0x00 "RWD,RAM Write Data Register"
group.long 0x028++0x3
line.long 0x00 "MODE,Mode Register"
bitfld.long 0x00 0.--1. " MODE        ,Mode select" "Circular Buffer,Software FIFO,Hardware FIFO,Software FIFO 2"
rgroup.long 0x02c++0x7
line.long 0x00 "LBUFLEVEL,Latched Buffer Fill Level Register"
line.long 0x04 "CBUFLEVEL,Current Buffer Fill Level Register"
group.long 0x034++0x3
line.long 0x00 "BUFWM,Buffer Level Water Mark Register"
group.long 0x038++0x7
line.long 0x00 "RRPHI,RAM Read Pointer High Register"
hexmask.long.byte 0x00 0.--7. 1. " RRPHI         ,Bits [39:32] of the read pointer"
line.long 0x04 "RWPHI,RAM Write Pointer High Register"
hexmask.long.byte 0x04 0.--7. 1. " RWPHI         ,Bits [39:32] of the write pointer"
group.long 0x110++0x3
line.long 0x00 "AXICTL,AXI Control Register"
bitfld.long 0x00 8.--11. " WRBURSTLEN    ,Maximum number of data transfers per burst" "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16"
bitfld.long 0x00 7. "     SGM ,Scatter Gather Mode Enable" "Disabled,Enabled"
bitfld.long 0x00 5. "          CC3 ,Cache allocate on writes enable" "Disabled,Enabled"
bitfld.long 0x00 4. "     CC2 ,Cache allocate on reads enable" "Disabled,Enabled"
textline "                   "
bitfld.long 0x00 3. " CC1 ,Cacheable" "Non-cacheable,Cacheable"
bitfld.long 0x00 2. "    CC0 ,Bufferable" "Non-bufferable,Bufferable"
bitfld.long 0x00 1. "    PC1 ,Secure/Non-secure Access" "Secure,Non-secure"
bitfld.long 0x00 0. "   PC0 ,Normal/Privileged Access" "Normal,Privileged"
group.long 0x118++0x7
line.long 0x00 "DBALO,Data Buffer Address Low Register"
line.long 0x04 "DBAHI,Data Buffer Address High Register"
hexmask.long.byte 0x04 0.--7. 1. " BUFADDRHI     ,Bits [39:32] of the trace buffer address"
rgroup.long 0x300++0x3
line.long 0x00 "FFSR,Formatter and Flush Status Register"
bitfld.long 0x00 1. " FTSTOPPED     ,Formatter Stopped" "No,Yes"
bitfld.long 0x00 0. "    FLINPROG          ,Flush in Progress" "No,Yes"
group.long 0x304++0x7
line.long 0x00 "FFCR,Formatter and Flush Control Register"
bitfld.long 0x00 14. " DRAINBUFFER   ,Drain trace data through ATB master interface" "No,Yes"
bitfld.long 0x00 13. "    STOPONTRIGEVT     ,Stop trace capture on trigger event" "No,Yes"
bitfld.long 0x00 12. "   STOPONFL      ,Stop formatter on completion of a flush operation" "No,Yes"
bitfld.long 0x00 10. "   TRIGONFL      ,Trigger on flush completion" "No,Yes"
textline "                   "
bitfld.long 0x00 9. " TRIGONTRIGEVT ,Trigger on a trigger event" "No,Yes"
bitfld.long 0x00 8. "    TRIGONTRIGIN      ,Trigger on TRIGIN being asserted" "No,Yes"
bitfld.long 0x00 6. "   FLUSHMAN      ,Manual Flush" "No,Yes"
bitfld.long 0x00 5. "   FONTRIGEVT    ,Flush on trigger event" "No,Yes"
textline "                   "
bitfld.long 0x00 4. " FONFLIN       ,Flush on FLUSHIN feature" "No,Yes"
bitfld.long 0x00 1. "    ENTI              ,Insertion of triggers in the formatted trace stream enable" "No,Yes"
bitfld.long 0x00 0. "   ENFT          ,Formatting enable" "No,Yes"
line.long 0x04 "PSCR,Periodic Synchronization Counter Register"
bitfld.long 0x04 5. " EMBEDSYNC     ,Embed Frame Sync packets" "No,Yes"
bitfld.long 0x04 0.--4. "    PSCOUNT           ,Reload value of the Synchronization Counter" "Disabled,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,128 bytes,256 bytes,512 bytes,1 KB,2 KB,4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB,?..."
width 13.
tree "Coresight Management Registers"
group 0xFA0--0xFA8
line.long 0x000 "CTS, Claim Tag Set"
bitfld.long 0x000 7. " SETCTV7   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 6. "        SETCTV6 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 5. " SETCTV5   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 4. "        SETCTV4 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 3. " SETCTV3   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 2. "        SETCTV2 ,Set Claim Tag Value" "No effect,Set"
textline "                      "
bitfld.long 0x000 1. " SETCTV1   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 0. "        SETCTV0 ,Set Claim Tag Value" "No effect,Set"
line.long 0x004 "CTC, Claim Tag Clear"
bitfld.long 0x004 7. " CLRCTV7   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 6. "        CLRCTV6 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 5. " CLRCTV5   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 4. "        CLRCTV4 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 3. " CLRCTV3   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 2. "        CLRCTV2 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                      "
bitfld.long 0x004 1. " CLRCTV1   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 0. "        CLRCTV0 ,Clear Claim Tag Value" "No effect,Cleared"
wgroup.long 0xfb0++0x3
line.long 0x00 "LAR,Lock Access Register"
rgroup.long 0xfb4++0x7
line.long 0x00 "LSR,Lock Status Register"
bitfld.long 0x00 2. " LOCKTYPE         ,32-bit Lock Access Register Implemented" "32-bit,?..."
bitfld.long 0x00 1. "         LOCKGRANT ,Lock Status" "Unlocked,Locked"
bitfld.long 0x00 0. "         LOCKEXIST  ,Lock control mechanism present" "Not present,Present"
line.long 0x04 "AUTHSTATUS,Authentication Status Register"
bitfld.long 0x04 6.--7. " SNID   ,Security level for secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 4.--5. "  SID  ,Security level for secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
bitfld.long 0x04 2.--3. "  NSNID ,Security level for non-secure non-invasive debug" "Not implemented,?..."
bitfld.long 0x04 0.--1. "  NSID ,Security level for non-secure invasive debug" "Not implemented,Reserved,Disabled,Enabled"
rgroup.long 0xfc8++0x3
line.long 0x00 "DEVID,Device Configuration Register"
bitfld.long 0x00 11.--13. " WBUF_DEPTH  ,Number of entries in the write buffer (in ETR)" "Reserved,Reserved,4 entries,8 entries,16 entries,32 entries,?..."
bitfld.long 0x00 8.--10. "  MEMWIDTH  ,Memory interface databus width" "Reserved,Reserved,32-bit,64-bit,128-bit,256-bit,?..."
bitfld.long 0x00 6.--7. "    CONFIGTYPE ,Configuration type" "ETB,ETR,ETF,?..."
bitfld.long 0x00 5. "    CLKSCHEME ,RAM clocking scheme" "Synchronous,?..."
textline "                    "
bitfld.long 0x00 0.--4. "   ATBINPORTCOUNT   ,Type or number of ATB multiplexing" "No multiplexing,?..."
width 13.
if ((d.l(e:comp.base("ets5",-1)+0xfc8)&0xc0)==(0x00||0x40))
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,RAM->APB,?..."
bitfld.long 0x00 0.--3. "                    MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Trace sink,?..."
elif ((d.l(e:comp.base("ets5",-1)+0xfc8)&0xc0)==0x80)
rgroup.long 0xfcc++0x3
line.long 0x00 "DEVTYPE,Device Type Identifier Register"
bitfld.long 0x00 4.--7. " SUB_TYPE         ,Sub-classification within the major category" "Reserved,Reserved,Reserved,ATB slave->RAM->ATB master,?..."
bitfld.long 0x00 0.--3. "  MAJOR_TYPE ,Major classification grouping for this debug or trace component" "Reserved,Reserved,Trace link,?..."
else
hgroup.long 0xfcc++0x3
hide.long 0x00 "DEVTYPE,Device Type Identifier Register"
endif
group 0xf00--0xf03 "Integration Test Registers"
line.long 0x000 "ITCTRL,Integration Mode Control"
bitfld.long 0x000 0. " ENABLE       ,Enable Integration mode" "no,yes"
wgroup.long 0xee0++0x3
line.long 0x00 "ITMISCOP0,Integration Test Miscellaneous Output Register 0"
bitfld.long 0x00 1. " FULL          ,FULL output value set" "0,1"
bitfld.long 0x00 0. "     ACQCOMP       ,ACQCOMP output value set" "0,1"
rgroup.long 0xee8++0x3
line.long 0x00 "ITTRFLIN,Integration Test Trigger In and Flush In Register"
bitfld.long 0x00 1. " FLUSHIN       ,FLUSHIN output value" "0,1"
bitfld.long 0x00 0. "     TRIGIN        ,TRIGIN output value" "0,1"
rgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAS[127] ,Returns the Value of the ATDATAS[127] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[119] ,Returns the Value of the ATDATAS[119] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[111] ,Returns the Value of the ATDATAS[111] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[103] ,Returns the Value of the ATDATAS[103] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[95]  ,Returns the Value of the ATDATAS[95] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[87]  ,Returns the Value of the ATDATAS[87] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[79]  ,Returns the Value of the ATDATAS[79] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[71]  ,Returns the Value of the ATDATAS[71] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAS[63]  ,Returns the Value of the ATDATAS[63] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[55]  ,Returns the Value of the ATDATAS[55] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[47]  ,Returns the Value of the ATDATAS[47] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[39]  ,Returns the Value of the ATDATAS[39] Input Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAS[31]  ,Returns the Value of the ATDATAS[31] Input Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAS[23]  ,Returns the Value of the ATDATAS[23] Input pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAS[15]  ,Returns the Value of the ATDATAS[15] Input Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAS[7]   ,Returns the Value of the ATDATAS[7] Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAS[0]   ,Returns the Value of the ATDATAS[0] Input Pin" "Low,High"
wgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFREADYS     ,Drives the AFREADYS Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDS     ,Drives the ATVALIDS Output Pin" "Low,High"
rgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDS        ,Returns the Value of the ATIDS Input Pins"
rgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESS[1]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESS[0]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 1. "  AFVALIDS     ,Returns the Value of the AFVALIDS Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYS     ,Returns the Value of the ATREADYS Input Pin" "Low,High"
wgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAM[127] ,Drives the ATDATAM[127] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[119] ,Drives the ATDATAM[119] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[111] ,Drives the ATDATAM[111] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[103] ,Drives the ATDATAM[103] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[95]  ,Drives the ATDATAM[95] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[87]  ,Drives the ATDATAM[87] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[79]  ,Drives the ATDATAM[79] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[71]  ,Drives the ATDATAM[71] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 8. "  ATDATAM[63]  ,Drives the ATDATAM[63] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[55]  ,Drives the ATDATAM[55] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[47]  ,Drives the ATDATAM[47] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[39]  ,Drives the ATDATAM[39] Output Pin" "Low,High"
textline "                     "
bitfld.long 0x000 4. "  ATDATAM[31]  ,Drives the ATDATAM[31] Output Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAM[23]  ,Drives the ATDATAM[23] Output pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAM[15]  ,Drives the ATDATAM[15] Output Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAM[7]   ,Drives the ATDATAM[7] Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAM[0]   ,Drives the ATDATAM[0] Output Pin" "Low,High"
rgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDM     ,Returns the Value of the AFVALIDM Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYM     ,Returns the Value of the ATREADYM Input Pin" "Low,High"
wgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDM        ,Drives the ATIDM Output Pins"
wgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESM[1]  ,Drives the ATBYTESM[1] Output Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESM[0]  ,Drives the ATBYTESM[0] Output Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYM     ,Drives the AFREADYM Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDM     ,Drives the ATVALIDM Output Pin" "Low,High"
width 13.
rgroup.long 0xfe0++0x13 "Peripheral Identification Registers"
line.long 0x00 "PERIPHID0,Peripheral ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PART_NUMBER[7:0] ,Bits [7:0] of the component part number"
line.long 0x04 "PERIPHID1,Peripheral ID1 Register"
bitfld.long 0x04 4.--7. " JEP106[3:0]      ,Bits [3:0] of the JEDEC identity code" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
bitfld.long 0x04 0.--3. "       PART_NUMBER[11:8] ,Bits [11:8] of the component part number" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "PERIPHID2,Peripheral ID2 Register"
bitfld.long 0x08 4.--7. " REVISION         ,Revision" "Reserved,r0p1,?..."
bitfld.long 0x08 3. "   JEDEC             ,JEDEC assigned value used" "Not used,Used"
bitfld.long 0x08 0.--2. "  JEP106[6:4] ,Bits [6:4] of the JEDEC identity code" "000,001,010,011,100,101,110,111"
line.long 0x0c "PERIPHID3,Peripheral ID3 Register"
hexmask.long.byte 0x0c 4.--7. 1. " REVAND           ,Minor errata fixes"
hexmask.long.byte 0x0c 0.--3. 1. "         CUSTOMER_MODIFIED ,Customer Modified"
rgroup.long 0xfd0++0x3
line.long 0x00 "PERIPHID4,Peripheral ID4 Register"
bitfld.long 0x00 4.--7. " FOURKB_COUNT     ,Total contiguous size of the memory window" "4 KB,8 KB,16 KB,32 KB,64 KB,128 KB,256 KB,512 KB,1 MB,2 MB,4 MB,8 MB,16 MB,32 MB,64 MB,128 MB"
bitfld.long 0x00 0.--3. "     JEP106_CONT       ,JEDEC continuation code" "Reserved,Reserved,Reserved,Reserved,5th bank,?..."
rgroup.long 0xff0++0xf "Component Identification Registers"
line.long 0x00 "COMPID0,Component ID0 Register"
hexmask.long.byte 0x00 0.--7. 1. " PREAMBLE[7:0]    ,Bits [7:0] of the component identification"
line.long 0x04 "COMPID1,Component ID1 Register"
bitfld.long 0x04 4.--7. " CLASS            ,Class of the component" "Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,CoreSight,?..."
bitfld.long 0x04 0.--3. "  PREAMBLE[11:8]    ,Bits [11:8] of the component identification" "0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111"
line.long 0x08 "COMPID2,Component ID2 Register"
hexmask.long.byte 0x08 0.--7. 1. " PREAMBLE[23:16]  ,Bits [23:16] of the component identification"
line.long 0x0c "COMPID3,Component ID3 Register"
hexmask.long.byte 0x0c 0.--7. 1. " PREAMBLE[31:24]  ,Bits [31:24] of the component identification"
tree.end
width 11.
tree.end
endif
sif COMPonent.AVAILABLE("tbr1")
tree "CT-TBR1"
base e:comp.base("tbr1",-1)
width 8.
rgroup 0x004--0x007
line.long 0x000 "RAMSZ,RAM Size Register"
bitfld.long 0x000 0.--2. "RAM_SIZE   ,This register indicates the size of the local memory buffer interfaced with the CT_TBR" "Brigde Only,4KB,8KB,16KB,32KB,64KB,128KB,res"
rgroup 0x008--0x00B
line.long 0x000 "FIFOSZ,Output FIFO Size Register"
bitfld.long 0x000 0.--2. "FIFO_SIZE  ,indicates the size of output FIFO used to transfer data to the system slave interface" "128B,256B,512B,1024B,2048B,res,res,res"
rgroup 0x00C--0x00F
line.long 0x000 "STS,ETB Status Register"
bitfld.long 0x000 6. "RESET_OUT  , one of the domains of the CT_TBR is held in reset" "0,1"
bitfld.long 0x000 5. "            PARTIAL_OUT , System Bridge Mode: partial output block is in the CT_TBR memory" "0,1"
bitfld.long 0x000 4. "             DRAIN_DONE , System Bridge Mode: indicates the whether there is data in the output FIFO" "0,1"
bitfld.long 0x000 3. " FMT_DONE   ,(TEMPTY) Formatter Pipeline Empty, Data Stored to RAM" "0,1"
bitfld.long 0x000 2. "         CPT_DONE ,(ACQCOMP) Acquisition Complete" "0,1"
textline "                 "
bitfld.long 0x000 1. "TRIG       ,(TRIGGERED) Flag Indicates a Trigger was Observed" "No,Observed"
bitfld.long 0x000 0. "     WRAP        ,(FULL) RAM Full" "No,Full"
hgroup 0x010--0x013
hide.long 0x000 "RAMRDAT,(RRD) RAM Read Data Register"
in
group 0x014--0x017
line.long 0x000 "RAMRPTR,(RRP) RAM Read Pointer Register"
group 0x018--0x1B
line.long 0x000 "RAMWPTR,(RWP) RAM Write Pointer Register"
group 0x01C--0x023
line.long 0x000 "COUNT,(TRG) Trigger Counter Register"
line.long 0x004 "CTRL,(CTL) Control Register"
bitfld.long 0x004 2. "SRST       ,Software Reset" "0,1"
bitfld.long 0x004 1. "            MODE        ,System Bridge Mode" "Buffer,System Bridge"
bitfld.long 0x004 0. " ENBL       ,(TRACECAPTEN) Trace Capture Enable" "0,1"
wgroup 0x024--0x027
line.long 0x000 "RWD,(RAMWDAT) RAM Write Data Register"
group 0x100--0x103
line.long 0x000 "OUTLVL,Output FIFO Level Register"
hexmask.long.byte 0x000 8.--15. 1. "NUMBLOCK   ,System Bridge Mode: blocks to send to complete higher level data frame"
hexmask.long.byte 0x000 0.--7. 1.  "           BLOCKSZ     ,System Bridge Mode: blocks size used by DMA engine"
group 0x104--0x107
line.long 0x0 "SICTRL,Systen Interface Control"
bitfld.long 0x0 4.--5. "IDLE_MODE  , controls idle behavior" "Force,No,Smart,Smart-Wakeup"
bitfld.long 0x0 2. " ERR         , acess error since last clear" "0,1"
bitfld.long 0x0 1. "             REQ_PEND   , request pending or active" "0,1"
bitfld.long 0x0 0. " DATA_WIDTH , access size" "32b,64b"
group 0x108--0x10B
line.long 0x0 "IDPERIOD,ID Repeated Period Register"
hexmask.long.word 0x000 0.--9. 1. "PERIOD     ,number of 128-bit frames without ID"
group 0x10C--0x10F
line.long 0x0 "SEQCNTL"
hexmask.long.byte 0x000 16.--22. 1. "SEQID      ,used ATID"
hexmask.long.word 0x000 0.--9. 1. "           PERIOD      ,number of 128-bit frames until a 8-bit incrementing sequence number is generaded"
rgroup 0x300--0x303
line.long 0x000 "OPSTAT,(FFSR) Formatter and Flush Status Register"
bitfld.long 0x000 1. "FMT_HALTED ,(FTSTOPPED) Formatter Stopped" "Started,Stopped"
bitfld.long 0x000 0. "      FLSH_ACT    ,(FLINPROG) Flush in Progress" "Disabled,Enabled"
group 0x304--0x307
line.long 0x000 "FFCR,Formatter and Flush Control Register"
bitfld.long 0x000 16. "OUTFLUSH   ,initiate flush in System Bridge Mode" "0,1"
bitfld.long 0x000 15. "            STP_FULL    ,stack mode" "0,1"
bitfld.long 0x000 13. "             STP_TRG    ,(StopTrig) Stop Formatter Once a Trigger Event" "0,1"
bitfld.long 0x000 12. " STP_FLSH   ,(StopFl) Stop Formatter Once a Flush has Compleed" "0,1"
textline "                 "
bitfld.long 0x000 10. "TRG_FLSH   ,(TrigFl) Trigger on Flush Completion" "0,1"
bitfld.long 0x000 9. "            TRG_EVT     ,(TrigEvt) Trigger on a Trigger Event" "0,1"
bitfld.long 0x000 8. "             TRG_TRGIN  ,(TrigIn) Trigger on TRIGIN being asserted" "0,1"
bitfld.long 0x000 6. " FLUSH      ,(FOnMan) Manually generate a flush of the system" "No effect,Flush"
textline "                 "
bitfld.long 0x000 5. "FLSH_TRG   ,(FOnTrig) Generate Flush Using Trigger Event" "No effect,Flush"
bitfld.long 0x000 4. "    FLSH_FLSHIN ,(FOnFlIn) Generate Flush Using the FLUSHIN Interface" "0,1"
bitfld.long 0x000 1. "             INSRT_TRG  ,Enable insertation of trigger" "0,1"
bitfld.long 0x000 0. " FMT_ENBL   ,(EnFTC) Enable Formatting" "0,1"
width 15.
group 0x120--0x123
line.long 0x0 "EOI"
bitfld.long 0x000 0. "EOI_VECT  ," "rearm DAV_IRQ,rearm AQCMP_IRQ"
group 0x124--0x127
line.long 0x0 "IRQSTATUS_RAW, testing register"
bitfld.long 0x000 1. "AQCMP_IRQ " "0,1"
bitfld.long 0x000 0. "               DAV_IRQ " "0,1"
group 0x128--0x12B
line.long 0x0 "IRQSTATUS"
bitfld.long 0x000 1. "AQCMP_IE  " "0,1"
bitfld.long 0x000 0. "               DAV_IE  " "0,1"
group 0x128--0x12B
line.long 0x0 "IRQENABLE_SET"
bitfld.long 0x000 1. "AQCMP_IES " "0,1"
bitfld.long 0x000 0. "               DAV_IES " "0,1"
group 0x130--0x133
line.long 0x0 "IRQENABLE_CLR"
bitfld.long 0x000 1. "AQCMP_IEC " "0,1"
bitfld.long 0x000 0. "               DAV_IEC " "0,1"
width 13.
tree "Integration Test Registers"
wgroup 0xEE0--0xEE7
line.long 0x000 "ITMISCOP0,Integration Test Miscellaneous Output Register 0"
bitfld.long 0x000 1. "FULL       ,Set the Value of FULL" "No effect,Set"
bitfld.long 0x000 0. " ACQCOMP    ,Set the Value of ACQCOMP" "No effect,Set"
line.long 0x004 "ITTRFLINACK,Integration Test Trigger In and Flush In Acknowledge Register"
bitfld.long 0x004 1. "FLUSHINACK ,Set the Value of FLUSHINACK" "No effect,Set"
bitfld.long 0x004 0. " TRIGINACK  ,Set the Value of TRIGINACK" "No effect,Set"
rgroup 0xEE8--0xEEF
line.long 0x000 "ITTRFLIN,Integration Test Trigger In and Flush In Register"
bitfld.long 0x000 1. "FLUSHIN    ,Read the Value of FLUSHIN" "0x0,0x1"
bitfld.long 0x000 0. "       TRIGIN     ,Read the Value of TRIGIN" "0x0,0x1"
line.long 0x004 "ITATBDATA0,Integration Test ATB Data Register 0"
bitfld.long 0x004 4. "ATDATA[31] ,Read the Value of ATDATAS[31]" "0x0,0x1"
bitfld.long 0x004 3. "       ATDATA[23] ,Read the Value of ATDATAS[23]" "0x0,0x1"
textline "                      "
bitfld.long 0x004 2. "ATDATA[15] ,Read the Value of ATDATAS[15]" "0x0,0x1"
bitfld.long 0x004 1. "       ATDATA[7]  ,Read the Value of ATDATAS[7]" "0x0,0x1"
textline "                      "
bitfld.long 0x004 0. "ATDATA[0]  ,Read the Value of ATDATAS[0]" "0x0,0x1"
wgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,Integration Test ATB Control Register 2"
bitfld.long 0x000 1. "AFVALID    ,Set the Value of AFVALIDS" "No effect,Set"
bitfld.long 0x000 0. " ATREADY    ,Set the Value of ATREADYS" "No effect,Set"
rgroup 0xEF4--0xEFB
line.long 0x000 "ITATBCTR1,Integration Test ATB Control Register 1"
hexmask.long.byte 0x000 0.--6. 1. "ATID       ,Read the Value of ATIDS"
line.long 0x004 "ITATBCTR0,Integration Test ATB Control Register 0"
bitfld.long 0x004 8.--9. "ATBYTES    ,Read the Value of ATBYTESS" "0x0,0x1,0x2,0x3"
bitfld.long 0x004 1. "       AFREADYS   ,Read the Value of AFREADYS" "0x0,0x1"
textline "                      "
bitfld.long 0x004 0. "ATVALIDS   ,Read the Value of ATVALIDS" "0x0,0x1"
tree.end
width 8.
tree "CoreSight Management Registers"
group 0xF00--0xF03
line.long 0x000 "ITCTRL, Integration Mode Control Register"
bitfld.long 0x000 0. "ECTTESTEN ,Enabled ECT Integration Test Registers" "Disabled,Enabled"
group 0xFA0--0xFA8
line.long 0x000 "CTS, Claim Tag Set"
bitfld.long 0x000 7. "SETCTV7   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 6. "       SETCTV6 ,Set Claim Tag Value" "No effect,Set"
textline "                 "
bitfld.long 0x000 5. "SETCTV5   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 4. "       SETCTV4 ,Set Claim Tag Value" "No effect,Set"
textline "                 "
bitfld.long 0x000 3. "SETCTV3   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 2. "       SETCTV2 ,Set Claim Tag Value" "No effect,Set"
textline "                 "
bitfld.long 0x000 1. "SETCTV1   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 0. "       SETCTV0 ,Set Claim Tag Value" "No effect,Set"
line.long 0x004 "CTC, Claim Tag Clear"
bitfld.long 0x004 7. "CLRCTV7   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 6. "       CLRCTV6 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                 "
bitfld.long 0x004 5. "CLRCTV5   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 4. "       CLRCTV4 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                 "
bitfld.long 0x004 3. "CLRCTV3   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 2. "       CLRCTV2 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                 "
bitfld.long 0x004 1. "CLRCTV1   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 0. "       CLRCTV0 ,Clear Claim Tag Value" "No effect,Cleared"
wgroup 0xFB0--0xFB3
line.long 0x000 "LAR,Lock Access Register"
hexmask.long.long 0x000 0.--31. 1. "AC        ,Acces Code"
rgroup 0xFB4--0xFCF
line.long 0x000 "LSR,Lock Status Register"
bitfld.long 0x000 2. "ILR       ,Implemented Lock Register" "32-bit,8-bit"
bitfld.long 0x000 1. "          LS      ,Lock Status" "Locked,Granted"
textline "                 "
bitfld.long 0x000 0. "LCM       ,Lock Control Mechanism Exists" "Not implemented,Implemented"
line.long 0x004 "AS,Authentication Status"
line.long 0x014 "DevID,Device ID"
bitfld.long 0x014 5. "RAMOPSYN  ,ETB RAM Operates Synchronously to ATCLK" "0x0,0x1"
hexmask.long.long 0x014 0.--4. 1. "             HLIM    ,Hidden Level of Input Multiplexing"
line.long 0x018 "DevTI,Device Type Identifier"
hexmask.long.byte 0x018 0.--7. 1. "DEVTI     ,Indicate Device"
tree.end
width 11.
tree "Peripheral Identification Registers"
rgroup 0xFD0--0xFFF
line.long 0x010 "PERIPHID0,Peripheral Identification Register 0"
hexmask.long.byte 0x010 0.--7. 1. "PartNumber ,Part number[7:0]"
line.long 0x014 "PERIPHID1,Peripheral Identification Register 1"
bitfld.long 0x014 4.--7. "JEP106ID   ,JEP106 Identity Code [3:0]" "0x0,0x1,0x2,0x3,0x4,0x5,0x6,0x7,0x8,0x9,0xA,0xB,0xC,0xD,0xE,0xF"
bitfld.long 0x014 0.--3. "   PartNumber ,Part Number [11:8]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x018 "PERIPHID2,Peripheral Identification Register 2"
bitfld.long 0x018 4.--7. "REV        ,Revision Number of Peripherial" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x018 3. "    JEP106USED ,JEP106 Value Used." "Not used,Used"
textline "                    "
bitfld.long 0x018 0.--2. "JEP106ID   ,JEP106 Identity Code [6:4]" "0x0,0x1,0x2,0x3,0x4,0x5,0x6,0x7"
line.long 0x01C "PERIPHID3,Peripheral Identification Register 3"
bitfld.long 0x01C 4.--7. "REVAND     ,Manufacturer Revision Number" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x01C 0.--3. "    CM         ,Customer Modified" "0x0,0x1,0x2,0x3,0x4,0x5,0x6,0x7,0x8,0x9,0xA,0xB,0xC,0xD,0xE,0xF"
line.long 0x000 "PERIPHID4,Peripheral Identification Register 4"
bitfld.long 0x000 4.--7. "4KBCOUNT   ,Number of 4KB Block Used" "1,2,4,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768"
bitfld.long 0x000 0.--3. " JEP106CC   ,JEP Continuation Code" "0x0,0x1,0x2,0x3,0x4,0x5,0x6,0x7,0x8,0x9,0xA,0xB,0xC,0xD,0xE,0xF"
line.long 0x004 "PERIPHID5,Peripheral ID5 Register (Reserved for Future)"
line.long 0x008 "PERIPHID6,Peripheral ID6 Register (Reserved for Future)"
line.long 0x00C "PERIPHID7,Peripheral ID7 Register (Reserved for Future)"
tree.end
width 15.
tree "Component Identification Registers"
rgroup 0xFF0--0xFFF
line.long 0x00C "Component_ID3, Identification Register 3"
hexmask.long.byte 0x00C 0.--7. 1. "COMPID3  ,Preamble"
line.long 0x008 "Component_ID2, Identification Register 2"
hexmask.long.byte 0x008 0.--7. 1. "COMPID2  ,Preamble"
line.long 0x004 "Component_ID1, Identification Register 1"
bitfld.long 0x004 4.--7.  "MEMCLASS ,Classification of the 4KB Memory Block" "Reserved,ROM,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,CSDK,Reserved,Reserved,Reserved,Reserved,Reserved,Not standardized"
hexmask.long.byte 0x004 0.--3. 1. " COMPID1 ,Preamble"
line.long 0x000 "Component_ID0, Identification Register 0"
hexmask.long.byte 0x000 0.--7. 1. "COMPID0  ,Preamble"
tree.end

tree.end
endif
sif COMPonent.AVAILABLE("tbr2")
tree "CT-TBR2"
base e:comp.base("tbr2",-1)
width 8.
rgroup 0x004--0x007
line.long 0x000 "RAMSZ,RAM Size Register"
bitfld.long 0x000 0.--2. "RAM_SIZE   ,This register indicates the size of the local memory buffer interfaced with the CT_TBR" "Brigde Only,4KB,8KB,16KB,32KB,64KB,128KB,res"
rgroup 0x008--0x00B
line.long 0x000 "FIFOSZ,Output FIFO Size Register"
bitfld.long 0x000 0.--2. "FIFO_SIZE  ,indicates the size of output FIFO used to transfer data to the system slave interface" "128B,256B,512B,1024B,2048B,res,res,res"
rgroup 0x00C--0x00F
line.long 0x000 "STS,ETB Status Register"
bitfld.long 0x000 6. "RESET_OUT  , one of the domains of the CT_TBR is held in reset" "0,1"
bitfld.long 0x000 5. "            PARTIAL_OUT , System Bridge Mode: partial output block is in the CT_TBR memory" "0,1"
bitfld.long 0x000 4. "             DRAIN_DONE , System Bridge Mode: indicates the whether there is data in the output FIFO" "0,1"
bitfld.long 0x000 3. " FMT_DONE   ,(TEMPTY) Formatter Pipeline Empty, Data Stored to RAM" "0,1"
bitfld.long 0x000 2. "         CPT_DONE ,(ACQCOMP) Acquisition Complete" "0,1"
textline "                 "
bitfld.long 0x000 1. "TRIG       ,(TRIGGERED) Flag Indicates a Trigger was Observed" "No,Observed"
bitfld.long 0x000 0. "     WRAP        ,(FULL) RAM Full" "No,Full"
hgroup 0x010--0x013
hide.long 0x000 "RAMRDAT,(RRD) RAM Read Data Register"
in
group 0x014--0x017
line.long 0x000 "RAMRPTR,(RRP) RAM Read Pointer Register"
group 0x018--0x1B
line.long 0x000 "RAMWPTR,(RWP) RAM Write Pointer Register"
group 0x01C--0x023
line.long 0x000 "COUNT,(TRG) Trigger Counter Register"
line.long 0x004 "CTRL,(CTL) Control Register"
bitfld.long 0x004 2. "SRST       ,Software Reset" "0,1"
bitfld.long 0x004 1. "            MODE        ,System Bridge Mode" "Buffer,System Bridge"
bitfld.long 0x004 0. " ENBL       ,(TRACECAPTEN) Trace Capture Enable" "0,1"
wgroup 0x024--0x027
line.long 0x000 "RWD,(RAMWDAT) RAM Write Data Register"
group 0x100--0x103
line.long 0x000 "OUTLVL,Output FIFO Level Register"
hexmask.long.byte 0x000 8.--15. 1. "NUMBLOCK   ,System Bridge Mode: blocks to send to complete higher level data frame"
hexmask.long.byte 0x000 0.--7. 1.  "           BLOCKSZ     ,System Bridge Mode: blocks size used by DMA engine"
group 0x104--0x107
line.long 0x0 "SICTRL,Systen Interface Control"
bitfld.long 0x0 4.--5. "IDLE_MODE  , controls idle behavior" "Force,No,Smart,Smart-Wakeup"
bitfld.long 0x0 2. " ERR         , acess error since last clear" "0,1"
bitfld.long 0x0 1. "             REQ_PEND   , request pending or active" "0,1"
bitfld.long 0x0 0. " DATA_WIDTH , access size" "32b,64b"
group 0x108--0x10B
line.long 0x0 "IDPERIOD,ID Repeated Period Register"
hexmask.long.word 0x000 0.--9. 1. "PERIOD     ,number of 128-bit frames without ID"
group 0x10C--0x10F
line.long 0x0 "SEQCNTL"
hexmask.long.byte 0x000 16.--22. 1. "SEQID      ,used ATID"
hexmask.long.word 0x000 0.--9. 1. "           PERIOD      ,number of 128-bit frames until a 8-bit incrementing sequence number is generaded"
rgroup 0x300--0x303
line.long 0x000 "OPSTAT,(FFSR) Formatter and Flush Status Register"
bitfld.long 0x000 1. "FMT_HALTED ,(FTSTOPPED) Formatter Stopped" "Started,Stopped"
bitfld.long 0x000 0. "      FLSH_ACT    ,(FLINPROG) Flush in Progress" "Disabled,Enabled"
group 0x304--0x307
line.long 0x000 "FFCR,Formatter and Flush Control Register"
bitfld.long 0x000 16. "OUTFLUSH   ,initiate flush in System Bridge Mode" "0,1"
bitfld.long 0x000 15. "            STP_FULL    ,stack mode" "0,1"
bitfld.long 0x000 13. "             STP_TRG    ,(StopTrig) Stop Formatter Once a Trigger Event" "0,1"
bitfld.long 0x000 12. " STP_FLSH   ,(StopFl) Stop Formatter Once a Flush has Compleed" "0,1"
textline "                 "
bitfld.long 0x000 10. "TRG_FLSH   ,(TrigFl) Trigger on Flush Completion" "0,1"
bitfld.long 0x000 9. "            TRG_EVT     ,(TrigEvt) Trigger on a Trigger Event" "0,1"
bitfld.long 0x000 8. "             TRG_TRGIN  ,(TrigIn) Trigger on TRIGIN being asserted" "0,1"
bitfld.long 0x000 6. " FLUSH      ,(FOnMan) Manually generate a flush of the system" "No effect,Flush"
textline "                 "
bitfld.long 0x000 5. "FLSH_TRG   ,(FOnTrig) Generate Flush Using Trigger Event" "No effect,Flush"
bitfld.long 0x000 4. "    FLSH_FLSHIN ,(FOnFlIn) Generate Flush Using the FLUSHIN Interface" "0,1"
bitfld.long 0x000 1. "             INSRT_TRG  ,Enable insertation of trigger" "0,1"
bitfld.long 0x000 0. " FMT_ENBL   ,(EnFTC) Enable Formatting" "0,1"
width 15.
group 0x120--0x123
line.long 0x0 "EOI"
bitfld.long 0x000 0. "EOI_VECT  ," "rearm DAV_IRQ,rearm AQCMP_IRQ"
group 0x124--0x127
line.long 0x0 "IRQSTATUS_RAW, testing register"
bitfld.long 0x000 1. "AQCMP_IRQ " "0,1"
bitfld.long 0x000 0. "               DAV_IRQ " "0,1"
group 0x128--0x12B
line.long 0x0 "IRQSTATUS"
bitfld.long 0x000 1. "AQCMP_IE  " "0,1"
bitfld.long 0x000 0. "               DAV_IE  " "0,1"
group 0x128--0x12B
line.long 0x0 "IRQENABLE_SET"
bitfld.long 0x000 1. "AQCMP_IES " "0,1"
bitfld.long 0x000 0. "               DAV_IES " "0,1"
group 0x130--0x133
line.long 0x0 "IRQENABLE_CLR"
bitfld.long 0x000 1. "AQCMP_IEC " "0,1"
bitfld.long 0x000 0. "               DAV_IEC " "0,1"
width 13.
tree "Integration Test Registers"
wgroup 0xEE0--0xEE7
line.long 0x000 "ITMISCOP0,Integration Test Miscellaneous Output Register 0"
bitfld.long 0x000 1. "FULL       ,Set the Value of FULL" "No effect,Set"
bitfld.long 0x000 0. " ACQCOMP    ,Set the Value of ACQCOMP" "No effect,Set"
line.long 0x004 "ITTRFLINACK,Integration Test Trigger In and Flush In Acknowledge Register"
bitfld.long 0x004 1. "FLUSHINACK ,Set the Value of FLUSHINACK" "No effect,Set"
bitfld.long 0x004 0. " TRIGINACK  ,Set the Value of TRIGINACK" "No effect,Set"
rgroup 0xEE8--0xEEF
line.long 0x000 "ITTRFLIN,Integration Test Trigger In and Flush In Register"
bitfld.long 0x000 1. "FLUSHIN    ,Read the Value of FLUSHIN" "0x0,0x1"
bitfld.long 0x000 0. "       TRIGIN     ,Read the Value of TRIGIN" "0x0,0x1"
line.long 0x004 "ITATBDATA0,Integration Test ATB Data Register 0"
bitfld.long 0x004 4. "ATDATA[31] ,Read the Value of ATDATAS[31]" "0x0,0x1"
bitfld.long 0x004 3. "       ATDATA[23] ,Read the Value of ATDATAS[23]" "0x0,0x1"
textline "                      "
bitfld.long 0x004 2. "ATDATA[15] ,Read the Value of ATDATAS[15]" "0x0,0x1"
bitfld.long 0x004 1. "       ATDATA[7]  ,Read the Value of ATDATAS[7]" "0x0,0x1"
textline "                      "
bitfld.long 0x004 0. "ATDATA[0]  ,Read the Value of ATDATAS[0]" "0x0,0x1"
wgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,Integration Test ATB Control Register 2"
bitfld.long 0x000 1. "AFVALID    ,Set the Value of AFVALIDS" "No effect,Set"
bitfld.long 0x000 0. " ATREADY    ,Set the Value of ATREADYS" "No effect,Set"
rgroup 0xEF4--0xEFB
line.long 0x000 "ITATBCTR1,Integration Test ATB Control Register 1"
hexmask.long.byte 0x000 0.--6. 1. "ATID       ,Read the Value of ATIDS"
line.long 0x004 "ITATBCTR0,Integration Test ATB Control Register 0"
bitfld.long 0x004 8.--9. "ATBYTES    ,Read the Value of ATBYTESS" "0x0,0x1,0x2,0x3"
bitfld.long 0x004 1. "       AFREADYS   ,Read the Value of AFREADYS" "0x0,0x1"
textline "                      "
bitfld.long 0x004 0. "ATVALIDS   ,Read the Value of ATVALIDS" "0x0,0x1"
tree.end
width 8.
tree "CoreSight Management Registers"
group 0xF00--0xF03
line.long 0x000 "ITCTRL, Integration Mode Control Register"
bitfld.long 0x000 0. "ECTTESTEN ,Enabled ECT Integration Test Registers" "Disabled,Enabled"
group 0xFA0--0xFA8
line.long 0x000 "CTS, Claim Tag Set"
bitfld.long 0x000 7. "SETCTV7   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 6. "       SETCTV6 ,Set Claim Tag Value" "No effect,Set"
textline "                 "
bitfld.long 0x000 5. "SETCTV5   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 4. "       SETCTV4 ,Set Claim Tag Value" "No effect,Set"
textline "                 "
bitfld.long 0x000 3. "SETCTV3   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 2. "       SETCTV2 ,Set Claim Tag Value" "No effect,Set"
textline "                 "
bitfld.long 0x000 1. "SETCTV1   ,Set Claim Tag Value" "No effect,Set"
bitfld.long 0x000 0. "       SETCTV0 ,Set Claim Tag Value" "No effect,Set"
line.long 0x004 "CTC, Claim Tag Clear"
bitfld.long 0x004 7. "CLRCTV7   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 6. "       CLRCTV6 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                 "
bitfld.long 0x004 5. "CLRCTV5   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 4. "       CLRCTV4 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                 "
bitfld.long 0x004 3. "CLRCTV3   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 2. "       CLRCTV2 ,Clear Claim Tag Value" "No effect,Cleared"
textline "                 "
bitfld.long 0x004 1. "CLRCTV1   ,Clear Claim Tag Value" "No effect,Cleared"
bitfld.long 0x004 0. "       CLRCTV0 ,Clear Claim Tag Value" "No effect,Cleared"
wgroup 0xFB0--0xFB3
line.long 0x000 "LAR,Lock Access Register"
hexmask.long.long 0x000 0.--31. 1. "AC        ,Acces Code"
rgroup 0xFB4--0xFCF
line.long 0x000 "LSR,Lock Status Register"
bitfld.long 0x000 2. "ILR       ,Implemented Lock Register" "32-bit,8-bit"
bitfld.long 0x000 1. "          LS      ,Lock Status" "Locked,Granted"
textline "                 "
bitfld.long 0x000 0. "LCM       ,Lock Control Mechanism Exists" "Not implemented,Implemented"
line.long 0x004 "AS,Authentication Status"
line.long 0x014 "DevID,Device ID"
bitfld.long 0x014 5. "RAMOPSYN  ,ETB RAM Operates Synchronously to ATCLK" "0x0,0x1"
hexmask.long.long 0x014 0.--4. 1. "             HLIM    ,Hidden Level of Input Multiplexing"
line.long 0x018 "DevTI,Device Type Identifier"
hexmask.long.byte 0x018 0.--7. 1. "DEVTI     ,Indicate Device"
tree.end
width 11.
tree "Peripheral Identification Registers"
rgroup 0xFD0--0xFFF
line.long 0x010 "PERIPHID0,Peripheral Identification Register 0"
hexmask.long.byte 0x010 0.--7. 1. "PartNumber ,Part number[7:0]"
line.long 0x014 "PERIPHID1,Peripheral Identification Register 1"
bitfld.long 0x014 4.--7. "JEP106ID   ,JEP106 Identity Code [3:0]" "0x0,0x1,0x2,0x3,0x4,0x5,0x6,0x7,0x8,0x9,0xA,0xB,0xC,0xD,0xE,0xF"
bitfld.long 0x014 0.--3. "   PartNumber ,Part Number [11:8]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x018 "PERIPHID2,Peripheral Identification Register 2"
bitfld.long 0x018 4.--7. "REV        ,Revision Number of Peripherial" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x018 3. "    JEP106USED ,JEP106 Value Used." "Not used,Used"
textline "                    "
bitfld.long 0x018 0.--2. "JEP106ID   ,JEP106 Identity Code [6:4]" "0x0,0x1,0x2,0x3,0x4,0x5,0x6,0x7"
line.long 0x01C "PERIPHID3,Peripheral Identification Register 3"
bitfld.long 0x01C 4.--7. "REVAND     ,Manufacturer Revision Number" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x01C 0.--3. "    CM         ,Customer Modified" "0x0,0x1,0x2,0x3,0x4,0x5,0x6,0x7,0x8,0x9,0xA,0xB,0xC,0xD,0xE,0xF"
line.long 0x000 "PERIPHID4,Peripheral Identification Register 4"
bitfld.long 0x000 4.--7. "4KBCOUNT   ,Number of 4KB Block Used" "1,2,4,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768"
bitfld.long 0x000 0.--3. " JEP106CC   ,JEP Continuation Code" "0x0,0x1,0x2,0x3,0x4,0x5,0x6,0x7,0x8,0x9,0xA,0xB,0xC,0xD,0xE,0xF"
line.long 0x004 "PERIPHID5,Peripheral ID5 Register (Reserved for Future)"
line.long 0x008 "PERIPHID6,Peripheral ID6 Register (Reserved for Future)"
line.long 0x00C "PERIPHID7,Peripheral ID7 Register (Reserved for Future)"
tree.end
width 15.
tree "Component Identification Registers"
rgroup 0xFF0--0xFFF
line.long 0x00C "Component_ID3, Identification Register 3"
hexmask.long.byte 0x00C 0.--7. 1. "COMPID3  ,Preamble"
line.long 0x008 "Component_ID2, Identification Register 2"
hexmask.long.byte 0x008 0.--7. 1. "COMPID2  ,Preamble"
line.long 0x004 "Component_ID1, Identification Register 1"
bitfld.long 0x004 4.--7.  "MEMCLASS ,Classification of the 4KB Memory Block" "Reserved,ROM,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,Reserved,CSDK,Reserved,Reserved,Reserved,Reserved,Reserved,Not standardized"
hexmask.long.byte 0x004 0.--3. 1. " COMPID1 ,Preamble"
line.long 0x000 "Component_ID0, Identification Register 0"
hexmask.long.byte 0x000 0.--7. 1. "COMPID0  ,Preamble"
tree.end

tree.end
endif
sif COMPonent.AVAILABLE("tpiu1")
tree "TPIU1"
base e:comp.base("tpiu1",-1)
width 5.
rgroup 0x000--0x003 "Trace Port Control Registers"
line.long 0x000 "SPS,Supported Port Sizes"
bitfld.long 0x000 31. " ,32 bit" " -,32"
bitfld.long 0x000 30. " ,31 bit" " -,31"
bitfld.long 0x000 29. " ,30 bit" " -,30"
bitfld.long 0x000 28. " ,29 bit" " -,29"
bitfld.long 0x000 27. " ,28 bit" " -,28"
bitfld.long 0x000 26. " ,27 bit" " -,27"
bitfld.long 0x000 25. " ,26 bit" " -,26"
bitfld.long 0x000 24. " ,25 bit" " -,25"
bitfld.long 0x000 23. " ,24 bit" " -,24"
bitfld.long 0x000 22. " ,23 bit" " -,23"
bitfld.long 0x000 21. " ,22 bit" " -,22"
bitfld.long 0x000 20. " ,21 bit" " -,21"
bitfld.long 0x000 19. " ,20 bit" " -,20"
bitfld.long 0x000 18. " ,19 bit" " -,19"
bitfld.long 0x000 17. " ,18 bit" " -,18"
bitfld.long 0x000 16. " ,17 bit" " -,17"
bitfld.long 0x000 15. " ,16 bit" " -,16"
bitfld.long 0x000 14. " ,15 bit" " -,15"
bitfld.long 0x000 13. " ,14 bit" " -,14"
bitfld.long 0x000 12. " ,13 bit" " -,13"
bitfld.long 0x000 11. " ,12 bit" " -,12"
bitfld.long 0x000 10. " ,11 bit" " -,11"
bitfld.long 0x000 9. " ,10 bit" "-,10"
bitfld.long 0x000 8. " ,9 bit" "-,9"
bitfld.long 0x000 7. " ,8 bit" "-,8"
bitfld.long 0x000 6. " ,7 bit" "-,7"
bitfld.long 0x000 5. " ,6 bit" "-,6"
bitfld.long 0x000 4. " ,5 bit" "-,5"
bitfld.long 0x000 3. " ,4 bit" "-,4"
bitfld.long 0x000 2. " ,3 bit" "-,3"
bitfld.long 0x000 1. " ,2 bit" "-,2"
bitfld.long 0x000 0. " ,1 bit" "-,1"
group 0x004--0x007
line.long 0x000 "CPS,Current Port Size"
bitfld.long 0x000 31. " ,32 bit" " -,32"
bitfld.long 0x000 30. " ,31 bit" " -,31"
bitfld.long 0x000 29. " ,30 bit" " -,30"
bitfld.long 0x000 28. " ,29 bit" " -,29"
bitfld.long 0x000 27. " ,28 bit" " -,28"
bitfld.long 0x000 26. " ,27 bit" " -,27"
bitfld.long 0x000 25. " ,26 bit" " -,26"
bitfld.long 0x000 24. " ,25 bit" " -,25"
bitfld.long 0x000 23. " ,24 bit" " -,24"
bitfld.long 0x000 22. " ,23 bit" " -,23"
bitfld.long 0x000 21. " ,22 bit" " -,22"
bitfld.long 0x000 20. " ,21 bit" " -,21"
bitfld.long 0x000 19. " ,20 bit" " -,20"
bitfld.long 0x000 18. " ,19 bit" " -,19"
bitfld.long 0x000 17. " ,18 bit" " -,18"
bitfld.long 0x000 16. " ,17 bit" " -,17"
bitfld.long 0x000 15. " ,16 bit" " -,16"
bitfld.long 0x000 14. " ,15 bit" " -,15"
bitfld.long 0x000 13. " ,14 bit" " -,14"
bitfld.long 0x000 12. " ,13 bit" " -,13"
bitfld.long 0x000 11. " ,12 bit" " -,12"
bitfld.long 0x000 10. " ,11 bit" " -,11"
bitfld.long 0x000 9. " ,10 bit" "-,10"
bitfld.long 0x000 8. " ,9 bit" "-,9"
bitfld.long 0x000 7. " ,8 bit" "-,8"
bitfld.long 0x000 6. " ,7 bit" "-,7"
bitfld.long 0x000 5. " ,6 bit" "-,6"
bitfld.long 0x000 4. " ,5 bit" "-,5"
bitfld.long 0x000 3. " ,4 bit" "-,4"
bitfld.long 0x000 2. " ,3 bit" "-,3"
bitfld.long 0x000 1. " ,2 bit" "-,2"
bitfld.long 0x000 0. " ,1 bit" "-,1"
group 0x010--0x013
line.long 0x000 "ACPR,Asynchronous Clock Prescaler Register"
decmask.long.word 0x0 0.--12. 1. 1. " PRESCALER ,Divisor"
group 0x0f0--0x0f3
line.long 0x000 "SPPR,SWO Selected Pin Protocol"
bitfld.long 0x0 0.--1. " PPROTOCOL ,Pin Protocol" "Parallel Port,Manchester,UART/NRZ,reserved"
width 10.
rgroup 0x100--0x103 "Trigger"
line.long 0x000 "SUPPTM,Supported Trigger Modes"
group 0x104--0x107
line.long 0x000 "TRIGCOUNT,Trigger Counter"
group 0x108--0x10b
line.long 0x000 "TRIGMULT,Trigger Multiplier"
rgroup 0x400--0x403 "EXTCTL Registers"
line.long 0x000 "EINPORT,EXTCTL In Port"
hexmask.long.long 0x000 0.--31. 1. " EXTCTLIP ,EXCTL In Port"
group 0x404--0x407
line.long 0x000 "EOUTPORT,EXTCTL OUT Port"
hexmask.long.long 0x000 0.--31. 1. " EXTCTLOP ,EXCTL Out Port"
rgroup 0x200--0x203 "Test Pattern Generator"
line.long 0x000 "STPM,Supported Test Patterns/Modes"
bitfld.long 0x000 16.--17. " PContEn ,Test Mode" "None,Timed,Continuous,Timed & Continuous"
textline "                   "
bitfld.long 0x000 3. "         PatF0 ,FF/00 Pattern" "No,Yes"
bitfld.long 0x000 2. "    PatA5 ,AA/55 Pattern" "No,Yes"
bitfld.long 0x000 1. "    PatW0 ,Walking 0's Pattern" "No,Yes"
bitfld.long 0x000 0. "    PatW1 ,Walking 1's Pattern" "No,Yes"
group 0x204--0x207
line.long 0x000 "CTPM,Current Test Pattern/Mode"
bitfld.long 0x000 16.--17. " PContEn ,Test Mode" "Disabled,Timed,Continuous,Reserved"
textline "                   "
bitfld.long 0x000 3. "         PatF0 ,FF/00 Pattern" "No,Yes"
bitfld.long 0x000 2. "    PatA5 ,AA/55 Pattern" "No,Yes"
bitfld.long 0x000 1. "    PatW0 ,Walking 0's Pattern" "No,Yes"
bitfld.long 0x000 0. "    PatW1 ,Walking 1's Pattern" "No,Yes"
group 0x208--0x20B
line.long 0x000 "TPRC,Test Pattern Repeat Counter"
hexmask.long.byte 0x000 0.--7. 1. " CC      ,Cycle Count"
rgroup 0x300--0x303 "Formatter and Flush Control"
line.long 0x000 "FFSTAT,Formatted and Flush Status Register"
bitfld.long 0x000 3. " FTNONSTOP ,Formatter cannot be stopped" "No,Yes"
bitfld.long 0x000 2. "  TCPRESENT ,TRACECTL Exist" "No,Yes"
bitfld.long 0x000 1. "  FTSTOPPED ,Formatter Stopped" "No,Yes"
bitfld.long 0x000 0. "  FLINPROG  ,Flush in Progress" "No,Yes"
group 0x304--0x307
line.long 0x000 "FFCTRL,Formatted and Flush Control"
bitfld.long 0x000 13. " STOPTRIG  ,Stop the Formatter Once a Trigger Event" "Disabled,Enabled"
bitfld.long 0x000 12. "       STOPFL    ,Stop the Formatter Once a Flush Completed" "Disabled,Enabled"
textline "                   "
bitfld.long 0x000 10. " TRIGFL    ,Trigger on Flush Completion" "Not completed,Completed"
bitfld.long 0x000 9. "  TRIGEVT   ,Trigger on a Trigger Event" "No event,Event"
textline "                   "
bitfld.long 0x000 8. " TRIGIN    ,Trigger on TRIGIN Being Assertet" "Not asserted,Asserted"
bitfld.long 0x000 6. "   FONMAN    ,Manually Generate a Flush" "Not generated,Generated"
textline "                   "
bitfld.long 0x000 5. " FONTRIG   ,Generate Flush via Trigger Event" "Disabled,Enabled"
bitfld.long 0x000 4. "       FONFLIN   ,Generate flush via FLUSHIN interface" "Disabled,Enabled"
textline "                   "
bitfld.long 0x000 1. " ENFCONT   ,Continuous formatting" "Disabled,Enabled"
bitfld.long 0x000 0. "       ENFTC     ,Enable Formatting" "Disabled,Enabled"
group 0x308--0x30B
line.long 0x000 "FSC,Formatter Synchronization Counter"
hexmask.long.word 0x000 0.--12. 1. " CC        ,Cycle Count"
width 15.
tree "CoreSight Management Registers"
rgroup 0xF84--0xF8B
line.long 0x000 "LSR,Lock Status Register"
bitfld.long 0x000 0.--1. " ISLAR     ,Lock Address Register Present" "Reserved,Present,Absent,?..."
line.long 0x004 "IID1,Input ID#1"
hexmask.long.byte 0x004 0.--7. 1. " IID       ,Input ID#1"
wgroup.long 0xFB0++0x03
line.long 0x00 "TRCLAR,Software Lock Access Register"
rgroup.long 0xFB4++0x0B
line.long 0x00 "TRCLSR,Software Lock Status Register"
bitfld.long 0x00 1. " SLK       ,Software Lock status" "Clear,Set"
bitfld.long 0x00 0. "            SLI     ,Indicates whether the Software Lock is implemented on this interface" "No,Implemented"
rgroup 0xFC8--0xFCF
line.long 0x000 "DeviceID,Device ID"
hexmask.long.byte 0x000 0.--4. 1. " HLI       ,Hidden Level of Input Multiplexing"
bitfld.long 0x000 5. "               SYNC    ,ATCLK/TRACECLKIN sync" "synchronous,asynchronous"
bitfld.long 0x000 6.--8. "     FIFOSIZE ,FIFOSIZE" "1,2,4,8,16,32,64,128"
textline "                        "
bitfld.long 0x000 9. " CLOCKDATA ,Clock+Data supported" "supported,not-supported"
bitfld.long 0x000 10.--11. "    SWO     ,SWO supported" "not-supported,Manchester,UART/NRZ,Manchester+UART/NRZ"
line.long 0x004 "DTI,Device Type Identifier"
hexmask.long.byte 0x004 0.--7. 1. " TRACEBUS  ,Traced Stimulus Off a Bus"
group 0xf00--0xf03 "Integration Test Registers"
line.long 0x000 "ITCTRL,Integration Mode Control"
bitfld.long 0x000 0. " ENABLE       ,Enable Integration mode" "no,yes"
wgroup 0xEE4--0xEE7
line.long 0x000 "ITTRFLINACK,Integration Test Trigger In and Flush In Acknowledge Register"
bitfld.long 0x000 1. " FLUSHINACK ,Set the Value of FLUSHINACK" "Low,High"
bitfld.long 0x000 0. "  TRIGINACK  ,Set the Value of TRIGINACK" "Low,High"
rgroup 0xEE8--0xEEB
line.long 0x000 "ITTRFLIN,Integration Test Trigger In and Flush In Register"
bitfld.long 0x000 1. " FLUSHIN    ,Read the Value of FLUSHIN" "Low,High"
bitfld.long 0x000 0. "        TRIGIN     ,Read the Value of TRIGIN" "Low,High"    
rgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 4. " ATDATAS[31]  ,Returns the Value of the ATDATAS[31] Input Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAS[23]  ,Returns the Value of the ATDATAS[23] Input pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAS[15]  ,Returns the Value of the ATDATAS[15] Input Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAS[7]   ,Returns the Value of the ATDATAS[7] Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAS[0]   ,Returns the Value of the ATDATAS[0] Input Pin" "Low,High"
wgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFREADYS     ,Drives the ATREADYS Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDS     ,Drives the ATVALIDS Output Pin" "Low,High"
rgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDS        ,Returns the Value of the ATIDS Input Pins"
rgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESS[1]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESS[0]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 1. "  AFVALIDS     ,Returns the Value of the AFVALIDS Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYS     ,Returns the Value of the ATREADYS Input Pin" "Low,High"
rgroup.long 0xFE0++0x0F "Peripheral Identification Registers"
line.long 0x00 "TRCPIDR0,Peripheral ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PART_0    ,Part Number [7:0]"
line.long 0x04 "TRCPIDR1,Peripheral ID Register 1"
bitfld.long 0x04 4.--7. " DES_0     ,JEP106 Identity Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PART_1  ,Part Number [11:8]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCPIDR2,Peripheral ID Register 2"
bitfld.long 0x08 4.--7. " REVISION  ,Revision [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x08 3. "               JEDEC   ,JEDEC" "Low,High"
bitfld.long 0x08 0.--2. "             DES_1    ,JEP106 Identity Code [6:4]" "0,1,2,3,4,5,6,7"
line.long 0x0C "TRCPIDR3,Peripheral ID Register 3"
bitfld.long 0x0C 4.--7. " REVAND    ,RevAnd [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x0C 0.--3. "               CMOD    ,Customer Modified [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFD0++0x03
line.long 0x00 "TRCPIDR4,Peripheral ID Register 4"
bitfld.long 0x00 4.--7. " SIZE      ,Always 0x0 indicating a single 4KB component" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x00 0.--3. "               DES_2   ,JEP106 Continuation Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFF0++0x0F "Component Identification Registers"
line.long 0x00 "TRCCIDR0,Component ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PRMBL_0   ,PRMBL_0"
line.long 0x04 "TRCCIDR1,Component ID Register 1"
bitfld.long 0x04 4.--7. " CLASS     ,CLASS" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PRMBL_1 ,PRMBL_2" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCCIDR2,Component ID Register 2"
hexmask.long.byte 0x08 0.--7. 1. " PRMBL_2   ,PRMBL_2"
line.long 0x0C "TRCCIDR3,Component ID Register 3"
hexmask.long.byte 0x0C 0.--7. 1. " PRMBL_3   ,PRMBL_3"
tree.end

tree.end
endif
sif COMPonent.AVAILABLE("tpiu2")
tree "TPIU2"
base e:comp.base("tpiu2",-1)
width 5.
rgroup 0x000--0x003 "Trace Port Control Registers"
line.long 0x000 "SPS,Supported Port Sizes"
bitfld.long 0x000 31. " ,32 bit" " -,32"
bitfld.long 0x000 30. " ,31 bit" " -,31"
bitfld.long 0x000 29. " ,30 bit" " -,30"
bitfld.long 0x000 28. " ,29 bit" " -,29"
bitfld.long 0x000 27. " ,28 bit" " -,28"
bitfld.long 0x000 26. " ,27 bit" " -,27"
bitfld.long 0x000 25. " ,26 bit" " -,26"
bitfld.long 0x000 24. " ,25 bit" " -,25"
bitfld.long 0x000 23. " ,24 bit" " -,24"
bitfld.long 0x000 22. " ,23 bit" " -,23"
bitfld.long 0x000 21. " ,22 bit" " -,22"
bitfld.long 0x000 20. " ,21 bit" " -,21"
bitfld.long 0x000 19. " ,20 bit" " -,20"
bitfld.long 0x000 18. " ,19 bit" " -,19"
bitfld.long 0x000 17. " ,18 bit" " -,18"
bitfld.long 0x000 16. " ,17 bit" " -,17"
bitfld.long 0x000 15. " ,16 bit" " -,16"
bitfld.long 0x000 14. " ,15 bit" " -,15"
bitfld.long 0x000 13. " ,14 bit" " -,14"
bitfld.long 0x000 12. " ,13 bit" " -,13"
bitfld.long 0x000 11. " ,12 bit" " -,12"
bitfld.long 0x000 10. " ,11 bit" " -,11"
bitfld.long 0x000 9. " ,10 bit" "-,10"
bitfld.long 0x000 8. " ,9 bit" "-,9"
bitfld.long 0x000 7. " ,8 bit" "-,8"
bitfld.long 0x000 6. " ,7 bit" "-,7"
bitfld.long 0x000 5. " ,6 bit" "-,6"
bitfld.long 0x000 4. " ,5 bit" "-,5"
bitfld.long 0x000 3. " ,4 bit" "-,4"
bitfld.long 0x000 2. " ,3 bit" "-,3"
bitfld.long 0x000 1. " ,2 bit" "-,2"
bitfld.long 0x000 0. " ,1 bit" "-,1"
group 0x004--0x007
line.long 0x000 "CPS,Current Port Size"
bitfld.long 0x000 31. " ,32 bit" " -,32"
bitfld.long 0x000 30. " ,31 bit" " -,31"
bitfld.long 0x000 29. " ,30 bit" " -,30"
bitfld.long 0x000 28. " ,29 bit" " -,29"
bitfld.long 0x000 27. " ,28 bit" " -,28"
bitfld.long 0x000 26. " ,27 bit" " -,27"
bitfld.long 0x000 25. " ,26 bit" " -,26"
bitfld.long 0x000 24. " ,25 bit" " -,25"
bitfld.long 0x000 23. " ,24 bit" " -,24"
bitfld.long 0x000 22. " ,23 bit" " -,23"
bitfld.long 0x000 21. " ,22 bit" " -,22"
bitfld.long 0x000 20. " ,21 bit" " -,21"
bitfld.long 0x000 19. " ,20 bit" " -,20"
bitfld.long 0x000 18. " ,19 bit" " -,19"
bitfld.long 0x000 17. " ,18 bit" " -,18"
bitfld.long 0x000 16. " ,17 bit" " -,17"
bitfld.long 0x000 15. " ,16 bit" " -,16"
bitfld.long 0x000 14. " ,15 bit" " -,15"
bitfld.long 0x000 13. " ,14 bit" " -,14"
bitfld.long 0x000 12. " ,13 bit" " -,13"
bitfld.long 0x000 11. " ,12 bit" " -,12"
bitfld.long 0x000 10. " ,11 bit" " -,11"
bitfld.long 0x000 9. " ,10 bit" "-,10"
bitfld.long 0x000 8. " ,9 bit" "-,9"
bitfld.long 0x000 7. " ,8 bit" "-,8"
bitfld.long 0x000 6. " ,7 bit" "-,7"
bitfld.long 0x000 5. " ,6 bit" "-,6"
bitfld.long 0x000 4. " ,5 bit" "-,5"
bitfld.long 0x000 3. " ,4 bit" "-,4"
bitfld.long 0x000 2. " ,3 bit" "-,3"
bitfld.long 0x000 1. " ,2 bit" "-,2"
bitfld.long 0x000 0. " ,1 bit" "-,1"
group 0x010--0x013
line.long 0x000 "ACPR,Asynchronous Clock Prescaler Register"
decmask.long.word 0x0 0.--12. 1. 1. " PRESCALER ,Divisor"
group 0x0f0--0x0f3
line.long 0x000 "SPPR,SWO Selected Pin Protocol"
bitfld.long 0x0 0.--1. " PPROTOCOL ,Pin Protocol" "Parallel Port,Manchester,UART/NRZ,reserved"
width 10.
rgroup 0x100--0x103 "Trigger"
line.long 0x000 "SUPPTM,Supported Trigger Modes"
group 0x104--0x107
line.long 0x000 "TRIGCOUNT,Trigger Counter"
group 0x108--0x10b
line.long 0x000 "TRIGMULT,Trigger Multiplier"
rgroup 0x400--0x403 "EXTCTL Registers"
line.long 0x000 "EINPORT,EXTCTL In Port"
hexmask.long.long 0x000 0.--31. 1. " EXTCTLIP ,EXCTL In Port"
group 0x404--0x407
line.long 0x000 "EOUTPORT,EXTCTL OUT Port"
hexmask.long.long 0x000 0.--31. 1. " EXTCTLOP ,EXCTL Out Port"
rgroup 0x200--0x203 "Test Pattern Generator"
line.long 0x000 "STPM,Supported Test Patterns/Modes"
bitfld.long 0x000 16.--17. " PContEn ,Test Mode" "None,Timed,Continuous,Timed & Continuous"
textline "                   "
bitfld.long 0x000 3. "         PatF0 ,FF/00 Pattern" "No,Yes"
bitfld.long 0x000 2. "    PatA5 ,AA/55 Pattern" "No,Yes"
bitfld.long 0x000 1. "    PatW0 ,Walking 0's Pattern" "No,Yes"
bitfld.long 0x000 0. "    PatW1 ,Walking 1's Pattern" "No,Yes"
group 0x204--0x207
line.long 0x000 "CTPM,Current Test Pattern/Mode"
bitfld.long 0x000 16.--17. " PContEn ,Test Mode" "Disabled,Timed,Continuous,Reserved"
textline "                   "
bitfld.long 0x000 3. "         PatF0 ,FF/00 Pattern" "No,Yes"
bitfld.long 0x000 2. "    PatA5 ,AA/55 Pattern" "No,Yes"
bitfld.long 0x000 1. "    PatW0 ,Walking 0's Pattern" "No,Yes"
bitfld.long 0x000 0. "    PatW1 ,Walking 1's Pattern" "No,Yes"
group 0x208--0x20B
line.long 0x000 "TPRC,Test Pattern Repeat Counter"
hexmask.long.byte 0x000 0.--7. 1. " CC      ,Cycle Count"
rgroup 0x300--0x303 "Formatter and Flush Control"
line.long 0x000 "FFSTAT,Formatted and Flush Status Register"
bitfld.long 0x000 3. " FTNONSTOP ,Formatter cannot be stopped" "No,Yes"
bitfld.long 0x000 2. "  TCPRESENT ,TRACECTL Exist" "No,Yes"
bitfld.long 0x000 1. "  FTSTOPPED ,Formatter Stopped" "No,Yes"
bitfld.long 0x000 0. "  FLINPROG  ,Flush in Progress" "No,Yes"
group 0x304--0x307
line.long 0x000 "FFCTRL,Formatted and Flush Control"
bitfld.long 0x000 13. " STOPTRIG  ,Stop the Formatter Once a Trigger Event" "Disabled,Enabled"
bitfld.long 0x000 12. "       STOPFL    ,Stop the Formatter Once a Flush Completed" "Disabled,Enabled"
textline "                   "
bitfld.long 0x000 10. " TRIGFL    ,Trigger on Flush Completion" "Not completed,Completed"
bitfld.long 0x000 9. "  TRIGEVT   ,Trigger on a Trigger Event" "No event,Event"
textline "                   "
bitfld.long 0x000 8. " TRIGIN    ,Trigger on TRIGIN Being Assertet" "Not asserted,Asserted"
bitfld.long 0x000 6. "   FONMAN    ,Manually Generate a Flush" "Not generated,Generated"
textline "                   "
bitfld.long 0x000 5. " FONTRIG   ,Generate Flush via Trigger Event" "Disabled,Enabled"
bitfld.long 0x000 4. "       FONFLIN   ,Generate flush via FLUSHIN interface" "Disabled,Enabled"
textline "                   "
bitfld.long 0x000 1. " ENFCONT   ,Continuous formatting" "Disabled,Enabled"
bitfld.long 0x000 0. "       ENFTC     ,Enable Formatting" "Disabled,Enabled"
group 0x308--0x30B
line.long 0x000 "FSC,Formatter Synchronization Counter"
hexmask.long.word 0x000 0.--12. 1. " CC        ,Cycle Count"
width 15.
tree "CoreSight Management Registers"
rgroup 0xF84--0xF8B
line.long 0x000 "LSR,Lock Status Register"
bitfld.long 0x000 0.--1. " ISLAR     ,Lock Address Register Present" "Reserved,Present,Absent,?..."
line.long 0x004 "IID1,Input ID#1"
hexmask.long.byte 0x004 0.--7. 1. " IID       ,Input ID#1"
wgroup.long 0xFB0++0x03
line.long 0x00 "TRCLAR,Software Lock Access Register"
rgroup.long 0xFB4++0x0B
line.long 0x00 "TRCLSR,Software Lock Status Register"
bitfld.long 0x00 1. " SLK       ,Software Lock status" "Clear,Set"
bitfld.long 0x00 0. "            SLI     ,Indicates whether the Software Lock is implemented on this interface" "No,Implemented"
rgroup 0xFC8--0xFCF
line.long 0x000 "DeviceID,Device ID"
hexmask.long.byte 0x000 0.--4. 1. " HLI       ,Hidden Level of Input Multiplexing"
bitfld.long 0x000 5. "               SYNC    ,ATCLK/TRACECLKIN sync" "synchronous,asynchronous"
bitfld.long 0x000 6.--8. "     FIFOSIZE ,FIFOSIZE" "1,2,4,8,16,32,64,128"
textline "                        "
bitfld.long 0x000 9. " CLOCKDATA ,Clock+Data supported" "supported,not-supported"
bitfld.long 0x000 10.--11. "    SWO     ,SWO supported" "not-supported,Manchester,UART/NRZ,Manchester+UART/NRZ"
line.long 0x004 "DTI,Device Type Identifier"
hexmask.long.byte 0x004 0.--7. 1. " TRACEBUS  ,Traced Stimulus Off a Bus"
group 0xf00--0xf03 "Integration Test Registers"
line.long 0x000 "ITCTRL,Integration Mode Control"
bitfld.long 0x000 0. " ENABLE       ,Enable Integration mode" "no,yes"
wgroup 0xEE4--0xEE7
line.long 0x000 "ITTRFLINACK,Integration Test Trigger In and Flush In Acknowledge Register"
bitfld.long 0x000 1. " FLUSHINACK ,Set the Value of FLUSHINACK" "Low,High"
bitfld.long 0x000 0. "  TRIGINACK  ,Set the Value of TRIGINACK" "Low,High"
rgroup 0xEE8--0xEEB
line.long 0x000 "ITTRFLIN,Integration Test Trigger In and Flush In Register"
bitfld.long 0x000 1. " FLUSHIN    ,Read the Value of FLUSHIN" "Low,High"
bitfld.long 0x000 0. "        TRIGIN     ,Read the Value of TRIGIN" "Low,High"    
rgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 4. " ATDATAS[31]  ,Returns the Value of the ATDATAS[31] Input Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAS[23]  ,Returns the Value of the ATDATAS[23] Input pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAS[15]  ,Returns the Value of the ATDATAS[15] Input Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAS[7]   ,Returns the Value of the ATDATAS[7] Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAS[0]   ,Returns the Value of the ATDATAS[0] Input Pin" "Low,High"
wgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFREADYS     ,Drives the ATREADYS Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDS     ,Drives the ATVALIDS Output Pin" "Low,High"
rgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDS        ,Returns the Value of the ATIDS Input Pins"
rgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESS[1]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESS[0]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 1. "  AFVALIDS     ,Returns the Value of the AFVALIDS Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYS     ,Returns the Value of the ATREADYS Input Pin" "Low,High"
rgroup.long 0xFE0++0x0F "Peripheral Identification Registers"
line.long 0x00 "TRCPIDR0,Peripheral ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PART_0    ,Part Number [7:0]"
line.long 0x04 "TRCPIDR1,Peripheral ID Register 1"
bitfld.long 0x04 4.--7. " DES_0     ,JEP106 Identity Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PART_1  ,Part Number [11:8]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCPIDR2,Peripheral ID Register 2"
bitfld.long 0x08 4.--7. " REVISION  ,Revision [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x08 3. "               JEDEC   ,JEDEC" "Low,High"
bitfld.long 0x08 0.--2. "             DES_1    ,JEP106 Identity Code [6:4]" "0,1,2,3,4,5,6,7"
line.long 0x0C "TRCPIDR3,Peripheral ID Register 3"
bitfld.long 0x0C 4.--7. " REVAND    ,RevAnd [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x0C 0.--3. "               CMOD    ,Customer Modified [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFD0++0x03
line.long 0x00 "TRCPIDR4,Peripheral ID Register 4"
bitfld.long 0x00 4.--7. " SIZE      ,Always 0x0 indicating a single 4KB component" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x00 0.--3. "               DES_2   ,JEP106 Continuation Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFF0++0x0F "Component Identification Registers"
line.long 0x00 "TRCCIDR0,Component ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PRMBL_0   ,PRMBL_0"
line.long 0x04 "TRCCIDR1,Component ID Register 1"
bitfld.long 0x04 4.--7. " CLASS     ,CLASS" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PRMBL_1 ,PRMBL_2" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCCIDR2,Component ID Register 2"
hexmask.long.byte 0x08 0.--7. 1. " PRMBL_2   ,PRMBL_2"
line.long 0x0C "TRCCIDR3,Component ID Register 3"
hexmask.long.byte 0x0C 0.--7. 1. " PRMBL_3   ,PRMBL_3"
tree.end

tree.end
endif
sif COMPonent.AVAILABLE("tpiu3")
tree "TPIU3"
base e:comp.base("tpiu3",-1)
width 5.
rgroup 0x000--0x003 "Trace Port Control Registers"
line.long 0x000 "SPS,Supported Port Sizes"
bitfld.long 0x000 31. " ,32 bit" " -,32"
bitfld.long 0x000 30. " ,31 bit" " -,31"
bitfld.long 0x000 29. " ,30 bit" " -,30"
bitfld.long 0x000 28. " ,29 bit" " -,29"
bitfld.long 0x000 27. " ,28 bit" " -,28"
bitfld.long 0x000 26. " ,27 bit" " -,27"
bitfld.long 0x000 25. " ,26 bit" " -,26"
bitfld.long 0x000 24. " ,25 bit" " -,25"
bitfld.long 0x000 23. " ,24 bit" " -,24"
bitfld.long 0x000 22. " ,23 bit" " -,23"
bitfld.long 0x000 21. " ,22 bit" " -,22"
bitfld.long 0x000 20. " ,21 bit" " -,21"
bitfld.long 0x000 19. " ,20 bit" " -,20"
bitfld.long 0x000 18. " ,19 bit" " -,19"
bitfld.long 0x000 17. " ,18 bit" " -,18"
bitfld.long 0x000 16. " ,17 bit" " -,17"
bitfld.long 0x000 15. " ,16 bit" " -,16"
bitfld.long 0x000 14. " ,15 bit" " -,15"
bitfld.long 0x000 13. " ,14 bit" " -,14"
bitfld.long 0x000 12. " ,13 bit" " -,13"
bitfld.long 0x000 11. " ,12 bit" " -,12"
bitfld.long 0x000 10. " ,11 bit" " -,11"
bitfld.long 0x000 9. " ,10 bit" "-,10"
bitfld.long 0x000 8. " ,9 bit" "-,9"
bitfld.long 0x000 7. " ,8 bit" "-,8"
bitfld.long 0x000 6. " ,7 bit" "-,7"
bitfld.long 0x000 5. " ,6 bit" "-,6"
bitfld.long 0x000 4. " ,5 bit" "-,5"
bitfld.long 0x000 3. " ,4 bit" "-,4"
bitfld.long 0x000 2. " ,3 bit" "-,3"
bitfld.long 0x000 1. " ,2 bit" "-,2"
bitfld.long 0x000 0. " ,1 bit" "-,1"
group 0x004--0x007
line.long 0x000 "CPS,Current Port Size"
bitfld.long 0x000 31. " ,32 bit" " -,32"
bitfld.long 0x000 30. " ,31 bit" " -,31"
bitfld.long 0x000 29. " ,30 bit" " -,30"
bitfld.long 0x000 28. " ,29 bit" " -,29"
bitfld.long 0x000 27. " ,28 bit" " -,28"
bitfld.long 0x000 26. " ,27 bit" " -,27"
bitfld.long 0x000 25. " ,26 bit" " -,26"
bitfld.long 0x000 24. " ,25 bit" " -,25"
bitfld.long 0x000 23. " ,24 bit" " -,24"
bitfld.long 0x000 22. " ,23 bit" " -,23"
bitfld.long 0x000 21. " ,22 bit" " -,22"
bitfld.long 0x000 20. " ,21 bit" " -,21"
bitfld.long 0x000 19. " ,20 bit" " -,20"
bitfld.long 0x000 18. " ,19 bit" " -,19"
bitfld.long 0x000 17. " ,18 bit" " -,18"
bitfld.long 0x000 16. " ,17 bit" " -,17"
bitfld.long 0x000 15. " ,16 bit" " -,16"
bitfld.long 0x000 14. " ,15 bit" " -,15"
bitfld.long 0x000 13. " ,14 bit" " -,14"
bitfld.long 0x000 12. " ,13 bit" " -,13"
bitfld.long 0x000 11. " ,12 bit" " -,12"
bitfld.long 0x000 10. " ,11 bit" " -,11"
bitfld.long 0x000 9. " ,10 bit" "-,10"
bitfld.long 0x000 8. " ,9 bit" "-,9"
bitfld.long 0x000 7. " ,8 bit" "-,8"
bitfld.long 0x000 6. " ,7 bit" "-,7"
bitfld.long 0x000 5. " ,6 bit" "-,6"
bitfld.long 0x000 4. " ,5 bit" "-,5"
bitfld.long 0x000 3. " ,4 bit" "-,4"
bitfld.long 0x000 2. " ,3 bit" "-,3"
bitfld.long 0x000 1. " ,2 bit" "-,2"
bitfld.long 0x000 0. " ,1 bit" "-,1"
group 0x010--0x013
line.long 0x000 "ACPR,Asynchronous Clock Prescaler Register"
decmask.long.word 0x0 0.--12. 1. 1. " PRESCALER ,Divisor"
group 0x0f0--0x0f3
line.long 0x000 "SPPR,SWO Selected Pin Protocol"
bitfld.long 0x0 0.--1. " PPROTOCOL ,Pin Protocol" "Parallel Port,Manchester,UART/NRZ,reserved"
width 10.
rgroup 0x100--0x103 "Trigger"
line.long 0x000 "SUPPTM,Supported Trigger Modes"
group 0x104--0x107
line.long 0x000 "TRIGCOUNT,Trigger Counter"
group 0x108--0x10b
line.long 0x000 "TRIGMULT,Trigger Multiplier"
rgroup 0x400--0x403 "EXTCTL Registers"
line.long 0x000 "EINPORT,EXTCTL In Port"
hexmask.long.long 0x000 0.--31. 1. " EXTCTLIP ,EXCTL In Port"
group 0x404--0x407
line.long 0x000 "EOUTPORT,EXTCTL OUT Port"
hexmask.long.long 0x000 0.--31. 1. " EXTCTLOP ,EXCTL Out Port"
rgroup 0x200--0x203 "Test Pattern Generator"
line.long 0x000 "STPM,Supported Test Patterns/Modes"
bitfld.long 0x000 16.--17. " PContEn ,Test Mode" "None,Timed,Continuous,Timed & Continuous"
textline "                   "
bitfld.long 0x000 3. "         PatF0 ,FF/00 Pattern" "No,Yes"
bitfld.long 0x000 2. "    PatA5 ,AA/55 Pattern" "No,Yes"
bitfld.long 0x000 1. "    PatW0 ,Walking 0's Pattern" "No,Yes"
bitfld.long 0x000 0. "    PatW1 ,Walking 1's Pattern" "No,Yes"
group 0x204--0x207
line.long 0x000 "CTPM,Current Test Pattern/Mode"
bitfld.long 0x000 16.--17. " PContEn ,Test Mode" "Disabled,Timed,Continuous,Reserved"
textline "                   "
bitfld.long 0x000 3. "         PatF0 ,FF/00 Pattern" "No,Yes"
bitfld.long 0x000 2. "    PatA5 ,AA/55 Pattern" "No,Yes"
bitfld.long 0x000 1. "    PatW0 ,Walking 0's Pattern" "No,Yes"
bitfld.long 0x000 0. "    PatW1 ,Walking 1's Pattern" "No,Yes"
group 0x208--0x20B
line.long 0x000 "TPRC,Test Pattern Repeat Counter"
hexmask.long.byte 0x000 0.--7. 1. " CC      ,Cycle Count"
rgroup 0x300--0x303 "Formatter and Flush Control"
line.long 0x000 "FFSTAT,Formatted and Flush Status Register"
bitfld.long 0x000 3. " FTNONSTOP ,Formatter cannot be stopped" "No,Yes"
bitfld.long 0x000 2. "  TCPRESENT ,TRACECTL Exist" "No,Yes"
bitfld.long 0x000 1. "  FTSTOPPED ,Formatter Stopped" "No,Yes"
bitfld.long 0x000 0. "  FLINPROG  ,Flush in Progress" "No,Yes"
group 0x304--0x307
line.long 0x000 "FFCTRL,Formatted and Flush Control"
bitfld.long 0x000 13. " STOPTRIG  ,Stop the Formatter Once a Trigger Event" "Disabled,Enabled"
bitfld.long 0x000 12. "       STOPFL    ,Stop the Formatter Once a Flush Completed" "Disabled,Enabled"
textline "                   "
bitfld.long 0x000 10. " TRIGFL    ,Trigger on Flush Completion" "Not completed,Completed"
bitfld.long 0x000 9. "  TRIGEVT   ,Trigger on a Trigger Event" "No event,Event"
textline "                   "
bitfld.long 0x000 8. " TRIGIN    ,Trigger on TRIGIN Being Assertet" "Not asserted,Asserted"
bitfld.long 0x000 6. "   FONMAN    ,Manually Generate a Flush" "Not generated,Generated"
textline "                   "
bitfld.long 0x000 5. " FONTRIG   ,Generate Flush via Trigger Event" "Disabled,Enabled"
bitfld.long 0x000 4. "       FONFLIN   ,Generate flush via FLUSHIN interface" "Disabled,Enabled"
textline "                   "
bitfld.long 0x000 1. " ENFCONT   ,Continuous formatting" "Disabled,Enabled"
bitfld.long 0x000 0. "       ENFTC     ,Enable Formatting" "Disabled,Enabled"
group 0x308--0x30B
line.long 0x000 "FSC,Formatter Synchronization Counter"
hexmask.long.word 0x000 0.--12. 1. " CC        ,Cycle Count"
width 15.
tree "CoreSight Management Registers"
rgroup 0xF84--0xF8B
line.long 0x000 "LSR,Lock Status Register"
bitfld.long 0x000 0.--1. " ISLAR     ,Lock Address Register Present" "Reserved,Present,Absent,?..."
line.long 0x004 "IID1,Input ID#1"
hexmask.long.byte 0x004 0.--7. 1. " IID       ,Input ID#1"
wgroup.long 0xFB0++0x03
line.long 0x00 "TRCLAR,Software Lock Access Register"
rgroup.long 0xFB4++0x0B
line.long 0x00 "TRCLSR,Software Lock Status Register"
bitfld.long 0x00 1. " SLK       ,Software Lock status" "Clear,Set"
bitfld.long 0x00 0. "            SLI     ,Indicates whether the Software Lock is implemented on this interface" "No,Implemented"
rgroup 0xFC8--0xFCF
line.long 0x000 "DeviceID,Device ID"
hexmask.long.byte 0x000 0.--4. 1. " HLI       ,Hidden Level of Input Multiplexing"
bitfld.long 0x000 5. "               SYNC    ,ATCLK/TRACECLKIN sync" "synchronous,asynchronous"
bitfld.long 0x000 6.--8. "     FIFOSIZE ,FIFOSIZE" "1,2,4,8,16,32,64,128"
textline "                        "
bitfld.long 0x000 9. " CLOCKDATA ,Clock+Data supported" "supported,not-supported"
bitfld.long 0x000 10.--11. "    SWO     ,SWO supported" "not-supported,Manchester,UART/NRZ,Manchester+UART/NRZ"
line.long 0x004 "DTI,Device Type Identifier"
hexmask.long.byte 0x004 0.--7. 1. " TRACEBUS  ,Traced Stimulus Off a Bus"
group 0xf00--0xf03 "Integration Test Registers"
line.long 0x000 "ITCTRL,Integration Mode Control"
bitfld.long 0x000 0. " ENABLE       ,Enable Integration mode" "no,yes"
wgroup 0xEE4--0xEE7
line.long 0x000 "ITTRFLINACK,Integration Test Trigger In and Flush In Acknowledge Register"
bitfld.long 0x000 1. " FLUSHINACK ,Set the Value of FLUSHINACK" "Low,High"
bitfld.long 0x000 0. "  TRIGINACK  ,Set the Value of TRIGINACK" "Low,High"
rgroup 0xEE8--0xEEB
line.long 0x000 "ITTRFLIN,Integration Test Trigger In and Flush In Register"
bitfld.long 0x000 1. " FLUSHIN    ,Read the Value of FLUSHIN" "Low,High"
bitfld.long 0x000 0. "        TRIGIN     ,Read the Value of TRIGIN" "Low,High"    
rgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 4. " ATDATAS[31]  ,Returns the Value of the ATDATAS[31] Input Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAS[23]  ,Returns the Value of the ATDATAS[23] Input pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAS[15]  ,Returns the Value of the ATDATAS[15] Input Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAS[7]   ,Returns the Value of the ATDATAS[7] Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAS[0]   ,Returns the Value of the ATDATAS[0] Input Pin" "Low,High"
wgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFREADYS     ,Drives the ATREADYS Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDS     ,Drives the ATVALIDS Output Pin" "Low,High"
rgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDS        ,Returns the Value of the ATIDS Input Pins"
rgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESS[1]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESS[0]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 1. "  AFVALIDS     ,Returns the Value of the AFVALIDS Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYS     ,Returns the Value of the ATREADYS Input Pin" "Low,High"
rgroup.long 0xFE0++0x0F "Peripheral Identification Registers"
line.long 0x00 "TRCPIDR0,Peripheral ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PART_0    ,Part Number [7:0]"
line.long 0x04 "TRCPIDR1,Peripheral ID Register 1"
bitfld.long 0x04 4.--7. " DES_0     ,JEP106 Identity Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PART_1  ,Part Number [11:8]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCPIDR2,Peripheral ID Register 2"
bitfld.long 0x08 4.--7. " REVISION  ,Revision [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x08 3. "               JEDEC   ,JEDEC" "Low,High"
bitfld.long 0x08 0.--2. "             DES_1    ,JEP106 Identity Code [6:4]" "0,1,2,3,4,5,6,7"
line.long 0x0C "TRCPIDR3,Peripheral ID Register 3"
bitfld.long 0x0C 4.--7. " REVAND    ,RevAnd [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x0C 0.--3. "               CMOD    ,Customer Modified [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFD0++0x03
line.long 0x00 "TRCPIDR4,Peripheral ID Register 4"
bitfld.long 0x00 4.--7. " SIZE      ,Always 0x0 indicating a single 4KB component" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x00 0.--3. "               DES_2   ,JEP106 Continuation Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFF0++0x0F "Component Identification Registers"
line.long 0x00 "TRCCIDR0,Component ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PRMBL_0   ,PRMBL_0"
line.long 0x04 "TRCCIDR1,Component ID Register 1"
bitfld.long 0x04 4.--7. " CLASS     ,CLASS" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PRMBL_1 ,PRMBL_2" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCCIDR2,Component ID Register 2"
hexmask.long.byte 0x08 0.--7. 1. " PRMBL_2   ,PRMBL_2"
line.long 0x0C "TRCCIDR3,Component ID Register 3"
hexmask.long.byte 0x0C 0.--7. 1. " PRMBL_3   ,PRMBL_3"
tree.end

tree.end
endif
sif COMPonent.AVAILABLE("tpiu4")
tree "TPIU4"
base e:comp.base("tpiu4",-1)
width 5.
rgroup 0x000--0x003 "Trace Port Control Registers"
line.long 0x000 "SPS,Supported Port Sizes"
bitfld.long 0x000 31. " ,32 bit" " -,32"
bitfld.long 0x000 30. " ,31 bit" " -,31"
bitfld.long 0x000 29. " ,30 bit" " -,30"
bitfld.long 0x000 28. " ,29 bit" " -,29"
bitfld.long 0x000 27. " ,28 bit" " -,28"
bitfld.long 0x000 26. " ,27 bit" " -,27"
bitfld.long 0x000 25. " ,26 bit" " -,26"
bitfld.long 0x000 24. " ,25 bit" " -,25"
bitfld.long 0x000 23. " ,24 bit" " -,24"
bitfld.long 0x000 22. " ,23 bit" " -,23"
bitfld.long 0x000 21. " ,22 bit" " -,22"
bitfld.long 0x000 20. " ,21 bit" " -,21"
bitfld.long 0x000 19. " ,20 bit" " -,20"
bitfld.long 0x000 18. " ,19 bit" " -,19"
bitfld.long 0x000 17. " ,18 bit" " -,18"
bitfld.long 0x000 16. " ,17 bit" " -,17"
bitfld.long 0x000 15. " ,16 bit" " -,16"
bitfld.long 0x000 14. " ,15 bit" " -,15"
bitfld.long 0x000 13. " ,14 bit" " -,14"
bitfld.long 0x000 12. " ,13 bit" " -,13"
bitfld.long 0x000 11. " ,12 bit" " -,12"
bitfld.long 0x000 10. " ,11 bit" " -,11"
bitfld.long 0x000 9. " ,10 bit" "-,10"
bitfld.long 0x000 8. " ,9 bit" "-,9"
bitfld.long 0x000 7. " ,8 bit" "-,8"
bitfld.long 0x000 6. " ,7 bit" "-,7"
bitfld.long 0x000 5. " ,6 bit" "-,6"
bitfld.long 0x000 4. " ,5 bit" "-,5"
bitfld.long 0x000 3. " ,4 bit" "-,4"
bitfld.long 0x000 2. " ,3 bit" "-,3"
bitfld.long 0x000 1. " ,2 bit" "-,2"
bitfld.long 0x000 0. " ,1 bit" "-,1"
group 0x004--0x007
line.long 0x000 "CPS,Current Port Size"
bitfld.long 0x000 31. " ,32 bit" " -,32"
bitfld.long 0x000 30. " ,31 bit" " -,31"
bitfld.long 0x000 29. " ,30 bit" " -,30"
bitfld.long 0x000 28. " ,29 bit" " -,29"
bitfld.long 0x000 27. " ,28 bit" " -,28"
bitfld.long 0x000 26. " ,27 bit" " -,27"
bitfld.long 0x000 25. " ,26 bit" " -,26"
bitfld.long 0x000 24. " ,25 bit" " -,25"
bitfld.long 0x000 23. " ,24 bit" " -,24"
bitfld.long 0x000 22. " ,23 bit" " -,23"
bitfld.long 0x000 21. " ,22 bit" " -,22"
bitfld.long 0x000 20. " ,21 bit" " -,21"
bitfld.long 0x000 19. " ,20 bit" " -,20"
bitfld.long 0x000 18. " ,19 bit" " -,19"
bitfld.long 0x000 17. " ,18 bit" " -,18"
bitfld.long 0x000 16. " ,17 bit" " -,17"
bitfld.long 0x000 15. " ,16 bit" " -,16"
bitfld.long 0x000 14. " ,15 bit" " -,15"
bitfld.long 0x000 13. " ,14 bit" " -,14"
bitfld.long 0x000 12. " ,13 bit" " -,13"
bitfld.long 0x000 11. " ,12 bit" " -,12"
bitfld.long 0x000 10. " ,11 bit" " -,11"
bitfld.long 0x000 9. " ,10 bit" "-,10"
bitfld.long 0x000 8. " ,9 bit" "-,9"
bitfld.long 0x000 7. " ,8 bit" "-,8"
bitfld.long 0x000 6. " ,7 bit" "-,7"
bitfld.long 0x000 5. " ,6 bit" "-,6"
bitfld.long 0x000 4. " ,5 bit" "-,5"
bitfld.long 0x000 3. " ,4 bit" "-,4"
bitfld.long 0x000 2. " ,3 bit" "-,3"
bitfld.long 0x000 1. " ,2 bit" "-,2"
bitfld.long 0x000 0. " ,1 bit" "-,1"
group 0x010--0x013
line.long 0x000 "ACPR,Asynchronous Clock Prescaler Register"
decmask.long.word 0x0 0.--12. 1. 1. " PRESCALER ,Divisor"
group 0x0f0--0x0f3
line.long 0x000 "SPPR,SWO Selected Pin Protocol"
bitfld.long 0x0 0.--1. " PPROTOCOL ,Pin Protocol" "Parallel Port,Manchester,UART/NRZ,reserved"
width 10.
rgroup 0x100--0x103 "Trigger"
line.long 0x000 "SUPPTM,Supported Trigger Modes"
group 0x104--0x107
line.long 0x000 "TRIGCOUNT,Trigger Counter"
group 0x108--0x10b
line.long 0x000 "TRIGMULT,Trigger Multiplier"
rgroup 0x400--0x403 "EXTCTL Registers"
line.long 0x000 "EINPORT,EXTCTL In Port"
hexmask.long.long 0x000 0.--31. 1. " EXTCTLIP ,EXCTL In Port"
group 0x404--0x407
line.long 0x000 "EOUTPORT,EXTCTL OUT Port"
hexmask.long.long 0x000 0.--31. 1. " EXTCTLOP ,EXCTL Out Port"
rgroup 0x200--0x203 "Test Pattern Generator"
line.long 0x000 "STPM,Supported Test Patterns/Modes"
bitfld.long 0x000 16.--17. " PContEn ,Test Mode" "None,Timed,Continuous,Timed & Continuous"
textline "                   "
bitfld.long 0x000 3. "         PatF0 ,FF/00 Pattern" "No,Yes"
bitfld.long 0x000 2. "    PatA5 ,AA/55 Pattern" "No,Yes"
bitfld.long 0x000 1. "    PatW0 ,Walking 0's Pattern" "No,Yes"
bitfld.long 0x000 0. "    PatW1 ,Walking 1's Pattern" "No,Yes"
group 0x204--0x207
line.long 0x000 "CTPM,Current Test Pattern/Mode"
bitfld.long 0x000 16.--17. " PContEn ,Test Mode" "Disabled,Timed,Continuous,Reserved"
textline "                   "
bitfld.long 0x000 3. "         PatF0 ,FF/00 Pattern" "No,Yes"
bitfld.long 0x000 2. "    PatA5 ,AA/55 Pattern" "No,Yes"
bitfld.long 0x000 1. "    PatW0 ,Walking 0's Pattern" "No,Yes"
bitfld.long 0x000 0. "    PatW1 ,Walking 1's Pattern" "No,Yes"
group 0x208--0x20B
line.long 0x000 "TPRC,Test Pattern Repeat Counter"
hexmask.long.byte 0x000 0.--7. 1. " CC      ,Cycle Count"
rgroup 0x300--0x303 "Formatter and Flush Control"
line.long 0x000 "FFSTAT,Formatted and Flush Status Register"
bitfld.long 0x000 3. " FTNONSTOP ,Formatter cannot be stopped" "No,Yes"
bitfld.long 0x000 2. "  TCPRESENT ,TRACECTL Exist" "No,Yes"
bitfld.long 0x000 1. "  FTSTOPPED ,Formatter Stopped" "No,Yes"
bitfld.long 0x000 0. "  FLINPROG  ,Flush in Progress" "No,Yes"
group 0x304--0x307
line.long 0x000 "FFCTRL,Formatted and Flush Control"
bitfld.long 0x000 13. " STOPTRIG  ,Stop the Formatter Once a Trigger Event" "Disabled,Enabled"
bitfld.long 0x000 12. "       STOPFL    ,Stop the Formatter Once a Flush Completed" "Disabled,Enabled"
textline "                   "
bitfld.long 0x000 10. " TRIGFL    ,Trigger on Flush Completion" "Not completed,Completed"
bitfld.long 0x000 9. "  TRIGEVT   ,Trigger on a Trigger Event" "No event,Event"
textline "                   "
bitfld.long 0x000 8. " TRIGIN    ,Trigger on TRIGIN Being Assertet" "Not asserted,Asserted"
bitfld.long 0x000 6. "   FONMAN    ,Manually Generate a Flush" "Not generated,Generated"
textline "                   "
bitfld.long 0x000 5. " FONTRIG   ,Generate Flush via Trigger Event" "Disabled,Enabled"
bitfld.long 0x000 4. "       FONFLIN   ,Generate flush via FLUSHIN interface" "Disabled,Enabled"
textline "                   "
bitfld.long 0x000 1. " ENFCONT   ,Continuous formatting" "Disabled,Enabled"
bitfld.long 0x000 0. "       ENFTC     ,Enable Formatting" "Disabled,Enabled"
group 0x308--0x30B
line.long 0x000 "FSC,Formatter Synchronization Counter"
hexmask.long.word 0x000 0.--12. 1. " CC        ,Cycle Count"
width 15.
tree "CoreSight Management Registers"
rgroup 0xF84--0xF8B
line.long 0x000 "LSR,Lock Status Register"
bitfld.long 0x000 0.--1. " ISLAR     ,Lock Address Register Present" "Reserved,Present,Absent,?..."
line.long 0x004 "IID1,Input ID#1"
hexmask.long.byte 0x004 0.--7. 1. " IID       ,Input ID#1"
wgroup.long 0xFB0++0x03
line.long 0x00 "TRCLAR,Software Lock Access Register"
rgroup.long 0xFB4++0x0B
line.long 0x00 "TRCLSR,Software Lock Status Register"
bitfld.long 0x00 1. " SLK       ,Software Lock status" "Clear,Set"
bitfld.long 0x00 0. "            SLI     ,Indicates whether the Software Lock is implemented on this interface" "No,Implemented"
rgroup 0xFC8--0xFCF
line.long 0x000 "DeviceID,Device ID"
hexmask.long.byte 0x000 0.--4. 1. " HLI       ,Hidden Level of Input Multiplexing"
bitfld.long 0x000 5. "               SYNC    ,ATCLK/TRACECLKIN sync" "synchronous,asynchronous"
bitfld.long 0x000 6.--8. "     FIFOSIZE ,FIFOSIZE" "1,2,4,8,16,32,64,128"
textline "                        "
bitfld.long 0x000 9. " CLOCKDATA ,Clock+Data supported" "supported,not-supported"
bitfld.long 0x000 10.--11. "    SWO     ,SWO supported" "not-supported,Manchester,UART/NRZ,Manchester+UART/NRZ"
line.long 0x004 "DTI,Device Type Identifier"
hexmask.long.byte 0x004 0.--7. 1. " TRACEBUS  ,Traced Stimulus Off a Bus"
group 0xf00--0xf03 "Integration Test Registers"
line.long 0x000 "ITCTRL,Integration Mode Control"
bitfld.long 0x000 0. " ENABLE       ,Enable Integration mode" "no,yes"
wgroup 0xEE4--0xEE7
line.long 0x000 "ITTRFLINACK,Integration Test Trigger In and Flush In Acknowledge Register"
bitfld.long 0x000 1. " FLUSHINACK ,Set the Value of FLUSHINACK" "Low,High"
bitfld.long 0x000 0. "  TRIGINACK  ,Set the Value of TRIGINACK" "Low,High"
rgroup 0xEE8--0xEEB
line.long 0x000 "ITTRFLIN,Integration Test Trigger In and Flush In Register"
bitfld.long 0x000 1. " FLUSHIN    ,Read the Value of FLUSHIN" "Low,High"
bitfld.long 0x000 0. "        TRIGIN     ,Read the Value of TRIGIN" "Low,High"    
rgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 4. " ATDATAS[31]  ,Returns the Value of the ATDATAS[31] Input Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAS[23]  ,Returns the Value of the ATDATAS[23] Input pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAS[15]  ,Returns the Value of the ATDATAS[15] Input Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAS[7]   ,Returns the Value of the ATDATAS[7] Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAS[0]   ,Returns the Value of the ATDATAS[0] Input Pin" "Low,High"
wgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFREADYS     ,Drives the ATREADYS Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDS     ,Drives the ATVALIDS Output Pin" "Low,High"
rgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDS        ,Returns the Value of the ATIDS Input Pins"
rgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESS[1]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESS[0]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 1. "  AFVALIDS     ,Returns the Value of the AFVALIDS Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYS     ,Returns the Value of the ATREADYS Input Pin" "Low,High"
rgroup.long 0xFE0++0x0F "Peripheral Identification Registers"
line.long 0x00 "TRCPIDR0,Peripheral ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PART_0    ,Part Number [7:0]"
line.long 0x04 "TRCPIDR1,Peripheral ID Register 1"
bitfld.long 0x04 4.--7. " DES_0     ,JEP106 Identity Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PART_1  ,Part Number [11:8]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCPIDR2,Peripheral ID Register 2"
bitfld.long 0x08 4.--7. " REVISION  ,Revision [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x08 3. "               JEDEC   ,JEDEC" "Low,High"
bitfld.long 0x08 0.--2. "             DES_1    ,JEP106 Identity Code [6:4]" "0,1,2,3,4,5,6,7"
line.long 0x0C "TRCPIDR3,Peripheral ID Register 3"
bitfld.long 0x0C 4.--7. " REVAND    ,RevAnd [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x0C 0.--3. "               CMOD    ,Customer Modified [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFD0++0x03
line.long 0x00 "TRCPIDR4,Peripheral ID Register 4"
bitfld.long 0x00 4.--7. " SIZE      ,Always 0x0 indicating a single 4KB component" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x00 0.--3. "               DES_2   ,JEP106 Continuation Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFF0++0x0F "Component Identification Registers"
line.long 0x00 "TRCCIDR0,Component ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PRMBL_0   ,PRMBL_0"
line.long 0x04 "TRCCIDR1,Component ID Register 1"
bitfld.long 0x04 4.--7. " CLASS     ,CLASS" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PRMBL_1 ,PRMBL_2" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCCIDR2,Component ID Register 2"
hexmask.long.byte 0x08 0.--7. 1. " PRMBL_2   ,PRMBL_2"
line.long 0x0C "TRCCIDR3,Component ID Register 3"
hexmask.long.byte 0x0C 0.--7. 1. " PRMBL_3   ,PRMBL_3"
tree.end

tree.end
endif
sif COMPonent.AVAILABLE("funnel1")
tree "FUNNEL1   "+COMPonent.NAME("FUNNEL1",-1)
base e:comp.base("funnel1",-1)
width 11.
group 0x000--0x007 "Funnel Control Registers"
line.long 0x000 "FUNCTRL,Funnel Control Register"
bitfld.long 0x000 8.--11. " MINHT    ,Minimum Hold Time[1]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
textline "                    "
bitfld.long 0x000 7. " ENSLP7   ,Enable Slave Port 7" "Disabled,Enabled"
bitfld.long 0x000 6. "  ENSLP6   ,Enable Slave Port 6" "Disabled,Enabled"
textline "                    "
bitfld.long 0x000 5. " ENSLP5   ,Enable Slave Port 5" "Disabled,Enabled"
bitfld.long 0x000 4. "  ENSLP4   ,Enable Slave Port 4" "Disabled,Enabled"
textline "                    "
bitfld.long 0x000 3. " ENSLP3   ,Enable Slave Port 3" "Disabled,Enabled"
bitfld.long 0x000 2. "  ENSLP2   ,Enable Slave Port 2" "Disabled,Enabled"
textline "                    "
bitfld.long 0x000 1. " ENSLP1   ,Enable Slave Port 1" "Disabled,Enabled"
bitfld.long 0x000 0. "  ENSLP0   ,Enable Slave Port 0" "Disabled,Enabled"
line.long 0x004 "PRIORCTRL,Priority Control Register"
bitfld.long 0x004 21.--23. " PRIOR7   ,Priority Port 7" "0,1,2,3,4,5,6,7"
bitfld.long 0x004 18.--20. "         PRIOR6   ,Priority Port 6" "0,1,2,3,4,5,6,7"
textline "                    "
bitfld.long 0x004 15.--17. " PRIOR5   ,Priority Port 5" "0,1,2,3,4,5,6,7"
bitfld.long 0x004 12.--14. "         PRIOR4   ,Priority Port 4" "0,1,2,3,4,5,6,7"
textline "                    "
bitfld.long 0x004 9.--11. " PRIOR3   ,Priority Port 3" "0,1,2,3,4,5,6,7"
bitfld.long 0x004 6.--8. "         PRIOR2   ,Priority Port 2" "0,1,2,3,4,5,6,7"
textline "                    "
bitfld.long 0x004 3.--5. " PRIOR1   ,Priority Port 1" "0,1,2,3,4,5,6,7"
bitfld.long 0x004 0.--2. "         PRIOR0   ,Priority Port 0" "0,1,2,3,4,5,6,7"
width 15.
tree "CoreSight Management Registers"
rgroup 0xF84--0xFA7
line.long 0x000 "LSR,Lock Status Register"
bitfld.long 0x000 0.--1. " LSR     ,Lock Status" "0x0,0x1,No Lock Access,0x3"
group 0xFC4--0xFC7
line.long 0x000 "DEVCSID,Device CoreSight ID"
hexmask.long.long 0x000 0.--7. 1. " CDID    ,Device CoreSight ID"
rgroup 0xFC8--0xFCF
line.long 0x000 "INP_OUTIDC,Input Port and Output ID Count"
hexmask.long.long 0x000 0.--7. 1. " ID      ,Input Port and Output ID Count"
line.long 0x004 "DTI,Device Type Identifier"
hexmask.long.byte 0x004 0.--7. 1. " DTI     ,Device Type Identifier"
group 0xf00--0xf03 "Integration Test Registers"
line.long 0x000 "ITCTRL,Integration Mode Control"
bitfld.long 0x000 0. " ENABLE       ,Enable Integration mode" "no,yes"
rgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAS[127] ,Returns the Value of the ATDATAS[127] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[119] ,Returns the Value of the ATDATAS[119] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[111] ,Returns the Value of the ATDATAS[111] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[103] ,Returns the Value of the ATDATAS[103] Input Pin" "Low,High"
textline "                       "
bitfld.long 0x000 8. "  ATDATAS[95]  ,Returns the Value of the ATDATAS[95] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[87]  ,Returns the Value of the ATDATAS[87] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[79]  ,Returns the Value of the ATDATAS[79] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[71]  ,Returns the Value of the ATDATAS[71] Input Pin" "Low,High"
textline "                       "
bitfld.long 0x000 8. "  ATDATAS[63]  ,Returns the Value of the ATDATAS[63] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[55]  ,Returns the Value of the ATDATAS[55] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[47]  ,Returns the Value of the ATDATAS[47] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[39]  ,Returns the Value of the ATDATAS[39] Input Pin" "Low,High"
textline "                       "
bitfld.long 0x000 4. "  ATDATAS[31]  ,Returns the Value of the ATDATAS[31] Input Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAS[23]  ,Returns the Value of the ATDATAS[23] Input pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAS[15]  ,Returns the Value of the ATDATAS[15] Input Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAS[7]   ,Returns the Value of the ATDATAS[7] Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAS[0]   ,Returns the Value of the ATDATAS[0] Input Pin" "Low,High"
wgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDS     ,Drives the AFVALIDS Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYS     ,Drives the ATREADYS Output Pin" "Low,High"
rgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDS        ,Returns the Value of the ATIDS Input Pins"
rgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESS[1]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESS[0]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYS     ,Returns the Value of the AFREADYS Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDS     ,Returns the Value of the ATVALIDS Input Pin" "Low,High"
wgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAM[127] ,Drives the ATDATAM[127] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[119] ,Drives the ATDATAM[119] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[111] ,Drives the ATDATAM[111] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[103] ,Drives the ATDATAM[103] Output Pin" "Low,High"
textline "                       "
bitfld.long 0x000 8. "  ATDATAM[95]  ,Drives the ATDATAM[95] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[87]  ,Drives the ATDATAM[87] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[79]  ,Drives the ATDATAM[79] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[71]  ,Drives the ATDATAM[71] Output Pin" "Low,High"
textline "                       "
bitfld.long 0x000 8. "  ATDATAM[63]  ,Drives the ATDATAM[63] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[55]  ,Drives the ATDATAM[55] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[47]  ,Drives the ATDATAM[47] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[39]  ,Drives the ATDATAM[39] Output Pin" "Low,High"
textline "                       "
bitfld.long 0x000 4. "  ATDATAM[31]  ,Drives the ATDATAM[31] Output Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAM[23]  ,Drives the ATDATAM[23] Output pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAM[15]  ,Drives the ATDATAM[15] Output Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAM[7]   ,Drives the ATDATAM[7] Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAM[0]   ,Drives the ATDATAM[0] Output Pin" "Low,High"
rgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDM     ,Returns the Value of the AFVALIDM Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYM     ,Returns the Value of the ATREADYM Input Pin" "Low,High"
wgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDM        ,Drives the ATIDM Output Pins"
wgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESM[1]  ,Drives the ATBYTESM[1] Output Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESM[0]  ,Drives the ATBYTESM[0] Output Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYM     ,Drives the AFREADYM Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDM     ,Drives the ATVALIDM Output Pin" "Low,High"
rgroup.long 0xFE0++0x0F "Peripheral Identification Registers"
line.long 0x00 "TRCPIDR0,Peripheral ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PART_0    ,Part Number [7:0]"
line.long 0x04 "TRCPIDR1,Peripheral ID Register 1"
bitfld.long 0x04 4.--7. " DES_0     ,JEP106 Identity Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PART_1  ,Part Number [11:8]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCPIDR2,Peripheral ID Register 2"
bitfld.long 0x08 4.--7. " REVISION  ,Revision [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x08 3. "               JEDEC   ,JEDEC" "Low,High"
bitfld.long 0x08 0.--2. "             DES_1    ,JEP106 Identity Code [6:4]" "0,1,2,3,4,5,6,7"
line.long 0x0C "TRCPIDR3,Peripheral ID Register 3"
bitfld.long 0x0C 4.--7. " REVAND    ,RevAnd [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x0C 0.--3. "               CMOD    ,Customer Modified [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFD0++0x03
line.long 0x00 "TRCPIDR4,Peripheral ID Register 4"
bitfld.long 0x00 4.--7. " SIZE      ,Always 0x0 indicating a single 4KB component" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x00 0.--3. "               DES_2   ,JEP106 Continuation Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFF0++0x0F "Component Identification Registers"
line.long 0x00 "TRCCIDR0,Component ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PRMBL_0   ,PRMBL_0"
line.long 0x04 "TRCCIDR1,Component ID Register 1"
bitfld.long 0x04 4.--7. " CLASS     ,CLASS" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PRMBL_1 ,PRMBL_2" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCCIDR2,Component ID Register 2"
hexmask.long.byte 0x08 0.--7. 1. " PRMBL_2   ,PRMBL_2"
line.long 0x0C "TRCCIDR3,Component ID Register 3"
hexmask.long.byte 0x0C 0.--7. 1. " PRMBL_3   ,PRMBL_3"
tree.end
tree.end
endif
sif COMPonent.AVAILABLE("funnel2")
tree "FUNNEL2   "+COMPonent.NAME("FUNNEL2",-1)
base e:comp.base("funnel2",-1)
width 11.
group 0x000--0x007 "Funnel Control Registers"
line.long 0x000 "FUNCTRL,Funnel Control Register"
bitfld.long 0x000 8.--11. " MINHT    ,Minimum Hold Time[1]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
textline "                    "
bitfld.long 0x000 7. " ENSLP7   ,Enable Slave Port 7" "Disabled,Enabled"
bitfld.long 0x000 6. "  ENSLP6   ,Enable Slave Port 6" "Disabled,Enabled"
textline "                    "
bitfld.long 0x000 5. " ENSLP5   ,Enable Slave Port 5" "Disabled,Enabled"
bitfld.long 0x000 4. "  ENSLP4   ,Enable Slave Port 4" "Disabled,Enabled"
textline "                    "
bitfld.long 0x000 3. " ENSLP3   ,Enable Slave Port 3" "Disabled,Enabled"
bitfld.long 0x000 2. "  ENSLP2   ,Enable Slave Port 2" "Disabled,Enabled"
textline "                    "
bitfld.long 0x000 1. " ENSLP1   ,Enable Slave Port 1" "Disabled,Enabled"
bitfld.long 0x000 0. "  ENSLP0   ,Enable Slave Port 0" "Disabled,Enabled"
line.long 0x004 "PRIORCTRL,Priority Control Register"
bitfld.long 0x004 21.--23. " PRIOR7   ,Priority Port 7" "0,1,2,3,4,5,6,7"
bitfld.long 0x004 18.--20. "         PRIOR6   ,Priority Port 6" "0,1,2,3,4,5,6,7"
textline "                    "
bitfld.long 0x004 15.--17. " PRIOR5   ,Priority Port 5" "0,1,2,3,4,5,6,7"
bitfld.long 0x004 12.--14. "         PRIOR4   ,Priority Port 4" "0,1,2,3,4,5,6,7"
textline "                    "
bitfld.long 0x004 9.--11. " PRIOR3   ,Priority Port 3" "0,1,2,3,4,5,6,7"
bitfld.long 0x004 6.--8. "         PRIOR2   ,Priority Port 2" "0,1,2,3,4,5,6,7"
textline "                    "
bitfld.long 0x004 3.--5. " PRIOR1   ,Priority Port 1" "0,1,2,3,4,5,6,7"
bitfld.long 0x004 0.--2. "         PRIOR0   ,Priority Port 0" "0,1,2,3,4,5,6,7"
width 15.
tree "CoreSight Management Registers"
rgroup 0xF84--0xFA7
line.long 0x000 "LSR,Lock Status Register"
bitfld.long 0x000 0.--1. " LSR     ,Lock Status" "0x0,0x1,No Lock Access,0x3"
group 0xFC4--0xFC7
line.long 0x000 "DEVCSID,Device CoreSight ID"
hexmask.long.long 0x000 0.--7. 1. " CDID    ,Device CoreSight ID"
rgroup 0xFC8--0xFCF
line.long 0x000 "INP_OUTIDC,Input Port and Output ID Count"
hexmask.long.long 0x000 0.--7. 1. " ID      ,Input Port and Output ID Count"
line.long 0x004 "DTI,Device Type Identifier"
hexmask.long.byte 0x004 0.--7. 1. " DTI     ,Device Type Identifier"
group 0xf00--0xf03 "Integration Test Registers"
line.long 0x000 "ITCTRL,Integration Mode Control"
bitfld.long 0x000 0. " ENABLE       ,Enable Integration mode" "no,yes"
rgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAS[127] ,Returns the Value of the ATDATAS[127] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[119] ,Returns the Value of the ATDATAS[119] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[111] ,Returns the Value of the ATDATAS[111] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[103] ,Returns the Value of the ATDATAS[103] Input Pin" "Low,High"
textline "                       "
bitfld.long 0x000 8. "  ATDATAS[95]  ,Returns the Value of the ATDATAS[95] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[87]  ,Returns the Value of the ATDATAS[87] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[79]  ,Returns the Value of the ATDATAS[79] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[71]  ,Returns the Value of the ATDATAS[71] Input Pin" "Low,High"
textline "                       "
bitfld.long 0x000 8. "  ATDATAS[63]  ,Returns the Value of the ATDATAS[63] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[55]  ,Returns the Value of the ATDATAS[55] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[47]  ,Returns the Value of the ATDATAS[47] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[39]  ,Returns the Value of the ATDATAS[39] Input Pin" "Low,High"
textline "                       "
bitfld.long 0x000 4. "  ATDATAS[31]  ,Returns the Value of the ATDATAS[31] Input Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAS[23]  ,Returns the Value of the ATDATAS[23] Input pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAS[15]  ,Returns the Value of the ATDATAS[15] Input Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAS[7]   ,Returns the Value of the ATDATAS[7] Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAS[0]   ,Returns the Value of the ATDATAS[0] Input Pin" "Low,High"
wgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDS     ,Drives the AFVALIDS Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYS     ,Drives the ATREADYS Output Pin" "Low,High"
rgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDS        ,Returns the Value of the ATIDS Input Pins"
rgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESS[1]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESS[0]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYS     ,Returns the Value of the AFREADYS Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDS     ,Returns the Value of the ATVALIDS Input Pin" "Low,High"
wgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAM[127] ,Drives the ATDATAM[127] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[119] ,Drives the ATDATAM[119] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[111] ,Drives the ATDATAM[111] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[103] ,Drives the ATDATAM[103] Output Pin" "Low,High"
textline "                       "
bitfld.long 0x000 8. "  ATDATAM[95]  ,Drives the ATDATAM[95] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[87]  ,Drives the ATDATAM[87] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[79]  ,Drives the ATDATAM[79] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[71]  ,Drives the ATDATAM[71] Output Pin" "Low,High"
textline "                       "
bitfld.long 0x000 8. "  ATDATAM[63]  ,Drives the ATDATAM[63] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[55]  ,Drives the ATDATAM[55] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[47]  ,Drives the ATDATAM[47] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[39]  ,Drives the ATDATAM[39] Output Pin" "Low,High"
textline "                       "
bitfld.long 0x000 4. "  ATDATAM[31]  ,Drives the ATDATAM[31] Output Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAM[23]  ,Drives the ATDATAM[23] Output pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAM[15]  ,Drives the ATDATAM[15] Output Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAM[7]   ,Drives the ATDATAM[7] Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAM[0]   ,Drives the ATDATAM[0] Output Pin" "Low,High"
rgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDM     ,Returns the Value of the AFVALIDM Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYM     ,Returns the Value of the ATREADYM Input Pin" "Low,High"
wgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDM        ,Drives the ATIDM Output Pins"
wgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESM[1]  ,Drives the ATBYTESM[1] Output Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESM[0]  ,Drives the ATBYTESM[0] Output Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYM     ,Drives the AFREADYM Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDM     ,Drives the ATVALIDM Output Pin" "Low,High"
rgroup.long 0xFE0++0x0F "Peripheral Identification Registers"
line.long 0x00 "TRCPIDR0,Peripheral ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PART_0    ,Part Number [7:0]"
line.long 0x04 "TRCPIDR1,Peripheral ID Register 1"
bitfld.long 0x04 4.--7. " DES_0     ,JEP106 Identity Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PART_1  ,Part Number [11:8]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCPIDR2,Peripheral ID Register 2"
bitfld.long 0x08 4.--7. " REVISION  ,Revision [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x08 3. "               JEDEC   ,JEDEC" "Low,High"
bitfld.long 0x08 0.--2. "             DES_1    ,JEP106 Identity Code [6:4]" "0,1,2,3,4,5,6,7"
line.long 0x0C "TRCPIDR3,Peripheral ID Register 3"
bitfld.long 0x0C 4.--7. " REVAND    ,RevAnd [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x0C 0.--3. "               CMOD    ,Customer Modified [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFD0++0x03
line.long 0x00 "TRCPIDR4,Peripheral ID Register 4"
bitfld.long 0x00 4.--7. " SIZE      ,Always 0x0 indicating a single 4KB component" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x00 0.--3. "               DES_2   ,JEP106 Continuation Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFF0++0x0F "Component Identification Registers"
line.long 0x00 "TRCCIDR0,Component ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PRMBL_0   ,PRMBL_0"
line.long 0x04 "TRCCIDR1,Component ID Register 1"
bitfld.long 0x04 4.--7. " CLASS     ,CLASS" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PRMBL_1 ,PRMBL_2" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCCIDR2,Component ID Register 2"
hexmask.long.byte 0x08 0.--7. 1. " PRMBL_2   ,PRMBL_2"
line.long 0x0C "TRCCIDR3,Component ID Register 3"
hexmask.long.byte 0x0C 0.--7. 1. " PRMBL_3   ,PRMBL_3"
tree.end
tree.end
endif
sif COMPonent.AVAILABLE("funnel3")
tree "FUNNEL3   "+COMPonent.NAME("FUNNEL3",-1)
base e:comp.base("funnel3",-1)
width 11.
group 0x000--0x007 "Funnel Control Registers"
line.long 0x000 "FUNCTRL,Funnel Control Register"
bitfld.long 0x000 8.--11. " MINHT    ,Minimum Hold Time[1]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
textline "                    "
bitfld.long 0x000 7. " ENSLP7   ,Enable Slave Port 7" "Disabled,Enabled"
bitfld.long 0x000 6. "  ENSLP6   ,Enable Slave Port 6" "Disabled,Enabled"
textline "                    "
bitfld.long 0x000 5. " ENSLP5   ,Enable Slave Port 5" "Disabled,Enabled"
bitfld.long 0x000 4. "  ENSLP4   ,Enable Slave Port 4" "Disabled,Enabled"
textline "                    "
bitfld.long 0x000 3. " ENSLP3   ,Enable Slave Port 3" "Disabled,Enabled"
bitfld.long 0x000 2. "  ENSLP2   ,Enable Slave Port 2" "Disabled,Enabled"
textline "                    "
bitfld.long 0x000 1. " ENSLP1   ,Enable Slave Port 1" "Disabled,Enabled"
bitfld.long 0x000 0. "  ENSLP0   ,Enable Slave Port 0" "Disabled,Enabled"
line.long 0x004 "PRIORCTRL,Priority Control Register"
bitfld.long 0x004 21.--23. " PRIOR7   ,Priority Port 7" "0,1,2,3,4,5,6,7"
bitfld.long 0x004 18.--20. "         PRIOR6   ,Priority Port 6" "0,1,2,3,4,5,6,7"
textline "                    "
bitfld.long 0x004 15.--17. " PRIOR5   ,Priority Port 5" "0,1,2,3,4,5,6,7"
bitfld.long 0x004 12.--14. "         PRIOR4   ,Priority Port 4" "0,1,2,3,4,5,6,7"
textline "                    "
bitfld.long 0x004 9.--11. " PRIOR3   ,Priority Port 3" "0,1,2,3,4,5,6,7"
bitfld.long 0x004 6.--8. "         PRIOR2   ,Priority Port 2" "0,1,2,3,4,5,6,7"
textline "                    "
bitfld.long 0x004 3.--5. " PRIOR1   ,Priority Port 1" "0,1,2,3,4,5,6,7"
bitfld.long 0x004 0.--2. "         PRIOR0   ,Priority Port 0" "0,1,2,3,4,5,6,7"
width 15.
tree "CoreSight Management Registers"
rgroup 0xF84--0xFA7
line.long 0x000 "LSR,Lock Status Register"
bitfld.long 0x000 0.--1. " LSR     ,Lock Status" "0x0,0x1,No Lock Access,0x3"
group 0xFC4--0xFC7
line.long 0x000 "DEVCSID,Device CoreSight ID"
hexmask.long.long 0x000 0.--7. 1. " CDID    ,Device CoreSight ID"
rgroup 0xFC8--0xFCF
line.long 0x000 "INP_OUTIDC,Input Port and Output ID Count"
hexmask.long.long 0x000 0.--7. 1. " ID      ,Input Port and Output ID Count"
line.long 0x004 "DTI,Device Type Identifier"
hexmask.long.byte 0x004 0.--7. 1. " DTI     ,Device Type Identifier"
group 0xf00--0xf03 "Integration Test Registers"
line.long 0x000 "ITCTRL,Integration Mode Control"
bitfld.long 0x000 0. " ENABLE       ,Enable Integration mode" "no,yes"
rgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAS[127] ,Returns the Value of the ATDATAS[127] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[119] ,Returns the Value of the ATDATAS[119] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[111] ,Returns the Value of the ATDATAS[111] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[103] ,Returns the Value of the ATDATAS[103] Input Pin" "Low,High"
textline "                       "
bitfld.long 0x000 8. "  ATDATAS[95]  ,Returns the Value of the ATDATAS[95] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[87]  ,Returns the Value of the ATDATAS[87] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[79]  ,Returns the Value of the ATDATAS[79] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[71]  ,Returns the Value of the ATDATAS[71] Input Pin" "Low,High"
textline "                       "
bitfld.long 0x000 8. "  ATDATAS[63]  ,Returns the Value of the ATDATAS[63] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[55]  ,Returns the Value of the ATDATAS[55] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[47]  ,Returns the Value of the ATDATAS[47] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[39]  ,Returns the Value of the ATDATAS[39] Input Pin" "Low,High"
textline "                       "
bitfld.long 0x000 4. "  ATDATAS[31]  ,Returns the Value of the ATDATAS[31] Input Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAS[23]  ,Returns the Value of the ATDATAS[23] Input pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAS[15]  ,Returns the Value of the ATDATAS[15] Input Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAS[7]   ,Returns the Value of the ATDATAS[7] Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAS[0]   ,Returns the Value of the ATDATAS[0] Input Pin" "Low,High"
wgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDS     ,Drives the AFVALIDS Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYS     ,Drives the ATREADYS Output Pin" "Low,High"
rgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDS        ,Returns the Value of the ATIDS Input Pins"
rgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESS[1]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESS[0]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYS     ,Returns the Value of the AFREADYS Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDS     ,Returns the Value of the ATVALIDS Input Pin" "Low,High"
wgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAM[127] ,Drives the ATDATAM[127] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[119] ,Drives the ATDATAM[119] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[111] ,Drives the ATDATAM[111] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[103] ,Drives the ATDATAM[103] Output Pin" "Low,High"
textline "                       "
bitfld.long 0x000 8. "  ATDATAM[95]  ,Drives the ATDATAM[95] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[87]  ,Drives the ATDATAM[87] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[79]  ,Drives the ATDATAM[79] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[71]  ,Drives the ATDATAM[71] Output Pin" "Low,High"
textline "                       "
bitfld.long 0x000 8. "  ATDATAM[63]  ,Drives the ATDATAM[63] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[55]  ,Drives the ATDATAM[55] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[47]  ,Drives the ATDATAM[47] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[39]  ,Drives the ATDATAM[39] Output Pin" "Low,High"
textline "                       "
bitfld.long 0x000 4. "  ATDATAM[31]  ,Drives the ATDATAM[31] Output Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAM[23]  ,Drives the ATDATAM[23] Output pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAM[15]  ,Drives the ATDATAM[15] Output Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAM[7]   ,Drives the ATDATAM[7] Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAM[0]   ,Drives the ATDATAM[0] Output Pin" "Low,High"
rgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDM     ,Returns the Value of the AFVALIDM Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYM     ,Returns the Value of the ATREADYM Input Pin" "Low,High"
wgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDM        ,Drives the ATIDM Output Pins"
wgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESM[1]  ,Drives the ATBYTESM[1] Output Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESM[0]  ,Drives the ATBYTESM[0] Output Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYM     ,Drives the AFREADYM Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDM     ,Drives the ATVALIDM Output Pin" "Low,High"
rgroup.long 0xFE0++0x0F "Peripheral Identification Registers"
line.long 0x00 "TRCPIDR0,Peripheral ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PART_0    ,Part Number [7:0]"
line.long 0x04 "TRCPIDR1,Peripheral ID Register 1"
bitfld.long 0x04 4.--7. " DES_0     ,JEP106 Identity Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PART_1  ,Part Number [11:8]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCPIDR2,Peripheral ID Register 2"
bitfld.long 0x08 4.--7. " REVISION  ,Revision [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x08 3. "               JEDEC   ,JEDEC" "Low,High"
bitfld.long 0x08 0.--2. "             DES_1    ,JEP106 Identity Code [6:4]" "0,1,2,3,4,5,6,7"
line.long 0x0C "TRCPIDR3,Peripheral ID Register 3"
bitfld.long 0x0C 4.--7. " REVAND    ,RevAnd [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x0C 0.--3. "               CMOD    ,Customer Modified [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFD0++0x03
line.long 0x00 "TRCPIDR4,Peripheral ID Register 4"
bitfld.long 0x00 4.--7. " SIZE      ,Always 0x0 indicating a single 4KB component" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x00 0.--3. "               DES_2   ,JEP106 Continuation Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFF0++0x0F "Component Identification Registers"
line.long 0x00 "TRCCIDR0,Component ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PRMBL_0   ,PRMBL_0"
line.long 0x04 "TRCCIDR1,Component ID Register 1"
bitfld.long 0x04 4.--7. " CLASS     ,CLASS" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PRMBL_1 ,PRMBL_2" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCCIDR2,Component ID Register 2"
hexmask.long.byte 0x08 0.--7. 1. " PRMBL_2   ,PRMBL_2"
line.long 0x0C "TRCCIDR3,Component ID Register 3"
hexmask.long.byte 0x0C 0.--7. 1. " PRMBL_3   ,PRMBL_3"
tree.end
tree.end
endif
sif COMPonent.AVAILABLE("funnel4")
tree "FUNNEL4   "+COMPonent.NAME("FUNNEL4",-1)
base e:comp.base("funnel4",-1)
width 11.
group 0x000--0x007 "Funnel Control Registers"
line.long 0x000 "FUNCTRL,Funnel Control Register"
bitfld.long 0x000 8.--11. " MINHT    ,Minimum Hold Time[1]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
textline "                    "
bitfld.long 0x000 7. " ENSLP7   ,Enable Slave Port 7" "Disabled,Enabled"
bitfld.long 0x000 6. "  ENSLP6   ,Enable Slave Port 6" "Disabled,Enabled"
textline "                    "
bitfld.long 0x000 5. " ENSLP5   ,Enable Slave Port 5" "Disabled,Enabled"
bitfld.long 0x000 4. "  ENSLP4   ,Enable Slave Port 4" "Disabled,Enabled"
textline "                    "
bitfld.long 0x000 3. " ENSLP3   ,Enable Slave Port 3" "Disabled,Enabled"
bitfld.long 0x000 2. "  ENSLP2   ,Enable Slave Port 2" "Disabled,Enabled"
textline "                    "
bitfld.long 0x000 1. " ENSLP1   ,Enable Slave Port 1" "Disabled,Enabled"
bitfld.long 0x000 0. "  ENSLP0   ,Enable Slave Port 0" "Disabled,Enabled"
line.long 0x004 "PRIORCTRL,Priority Control Register"
bitfld.long 0x004 21.--23. " PRIOR7   ,Priority Port 7" "0,1,2,3,4,5,6,7"
bitfld.long 0x004 18.--20. "         PRIOR6   ,Priority Port 6" "0,1,2,3,4,5,6,7"
textline "                    "
bitfld.long 0x004 15.--17. " PRIOR5   ,Priority Port 5" "0,1,2,3,4,5,6,7"
bitfld.long 0x004 12.--14. "         PRIOR4   ,Priority Port 4" "0,1,2,3,4,5,6,7"
textline "                    "
bitfld.long 0x004 9.--11. " PRIOR3   ,Priority Port 3" "0,1,2,3,4,5,6,7"
bitfld.long 0x004 6.--8. "         PRIOR2   ,Priority Port 2" "0,1,2,3,4,5,6,7"
textline "                    "
bitfld.long 0x004 3.--5. " PRIOR1   ,Priority Port 1" "0,1,2,3,4,5,6,7"
bitfld.long 0x004 0.--2. "         PRIOR0   ,Priority Port 0" "0,1,2,3,4,5,6,7"
width 15.
tree "CoreSight Management Registers"
rgroup 0xF84--0xFA7
line.long 0x000 "LSR,Lock Status Register"
bitfld.long 0x000 0.--1. " LSR     ,Lock Status" "0x0,0x1,No Lock Access,0x3"
group 0xFC4--0xFC7
line.long 0x000 "DEVCSID,Device CoreSight ID"
hexmask.long.long 0x000 0.--7. 1. " CDID    ,Device CoreSight ID"
rgroup 0xFC8--0xFCF
line.long 0x000 "INP_OUTIDC,Input Port and Output ID Count"
hexmask.long.long 0x000 0.--7. 1. " ID      ,Input Port and Output ID Count"
line.long 0x004 "DTI,Device Type Identifier"
hexmask.long.byte 0x004 0.--7. 1. " DTI     ,Device Type Identifier"
group 0xf00--0xf03 "Integration Test Registers"
line.long 0x000 "ITCTRL,Integration Mode Control"
bitfld.long 0x000 0. " ENABLE       ,Enable Integration mode" "no,yes"
rgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAS[127] ,Returns the Value of the ATDATAS[127] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[119] ,Returns the Value of the ATDATAS[119] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[111] ,Returns the Value of the ATDATAS[111] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[103] ,Returns the Value of the ATDATAS[103] Input Pin" "Low,High"
textline "                       "
bitfld.long 0x000 8. "  ATDATAS[95]  ,Returns the Value of the ATDATAS[95] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[87]  ,Returns the Value of the ATDATAS[87] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[79]  ,Returns the Value of the ATDATAS[79] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[71]  ,Returns the Value of the ATDATAS[71] Input Pin" "Low,High"
textline "                       "
bitfld.long 0x000 8. "  ATDATAS[63]  ,Returns the Value of the ATDATAS[63] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[55]  ,Returns the Value of the ATDATAS[55] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[47]  ,Returns the Value of the ATDATAS[47] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[39]  ,Returns the Value of the ATDATAS[39] Input Pin" "Low,High"
textline "                       "
bitfld.long 0x000 4. "  ATDATAS[31]  ,Returns the Value of the ATDATAS[31] Input Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAS[23]  ,Returns the Value of the ATDATAS[23] Input pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAS[15]  ,Returns the Value of the ATDATAS[15] Input Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAS[7]   ,Returns the Value of the ATDATAS[7] Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAS[0]   ,Returns the Value of the ATDATAS[0] Input Pin" "Low,High"
wgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDS     ,Drives the AFVALIDS Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYS     ,Drives the ATREADYS Output Pin" "Low,High"
rgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDS        ,Returns the Value of the ATIDS Input Pins"
rgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESS[1]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESS[0]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYS     ,Returns the Value of the AFREADYS Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDS     ,Returns the Value of the ATVALIDS Input Pin" "Low,High"
wgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAM[127] ,Drives the ATDATAM[127] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[119] ,Drives the ATDATAM[119] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[111] ,Drives the ATDATAM[111] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[103] ,Drives the ATDATAM[103] Output Pin" "Low,High"
textline "                       "
bitfld.long 0x000 8. "  ATDATAM[95]  ,Drives the ATDATAM[95] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[87]  ,Drives the ATDATAM[87] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[79]  ,Drives the ATDATAM[79] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[71]  ,Drives the ATDATAM[71] Output Pin" "Low,High"
textline "                       "
bitfld.long 0x000 8. "  ATDATAM[63]  ,Drives the ATDATAM[63] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[55]  ,Drives the ATDATAM[55] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[47]  ,Drives the ATDATAM[47] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[39]  ,Drives the ATDATAM[39] Output Pin" "Low,High"
textline "                       "
bitfld.long 0x000 4. "  ATDATAM[31]  ,Drives the ATDATAM[31] Output Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAM[23]  ,Drives the ATDATAM[23] Output pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAM[15]  ,Drives the ATDATAM[15] Output Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAM[7]   ,Drives the ATDATAM[7] Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAM[0]   ,Drives the ATDATAM[0] Output Pin" "Low,High"
rgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDM     ,Returns the Value of the AFVALIDM Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYM     ,Returns the Value of the ATREADYM Input Pin" "Low,High"
wgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDM        ,Drives the ATIDM Output Pins"
wgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESM[1]  ,Drives the ATBYTESM[1] Output Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESM[0]  ,Drives the ATBYTESM[0] Output Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYM     ,Drives the AFREADYM Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDM     ,Drives the ATVALIDM Output Pin" "Low,High"
rgroup.long 0xFE0++0x0F "Peripheral Identification Registers"
line.long 0x00 "TRCPIDR0,Peripheral ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PART_0    ,Part Number [7:0]"
line.long 0x04 "TRCPIDR1,Peripheral ID Register 1"
bitfld.long 0x04 4.--7. " DES_0     ,JEP106 Identity Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PART_1  ,Part Number [11:8]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCPIDR2,Peripheral ID Register 2"
bitfld.long 0x08 4.--7. " REVISION  ,Revision [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x08 3. "               JEDEC   ,JEDEC" "Low,High"
bitfld.long 0x08 0.--2. "             DES_1    ,JEP106 Identity Code [6:4]" "0,1,2,3,4,5,6,7"
line.long 0x0C "TRCPIDR3,Peripheral ID Register 3"
bitfld.long 0x0C 4.--7. " REVAND    ,RevAnd [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x0C 0.--3. "               CMOD    ,Customer Modified [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFD0++0x03
line.long 0x00 "TRCPIDR4,Peripheral ID Register 4"
bitfld.long 0x00 4.--7. " SIZE      ,Always 0x0 indicating a single 4KB component" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x00 0.--3. "               DES_2   ,JEP106 Continuation Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFF0++0x0F "Component Identification Registers"
line.long 0x00 "TRCCIDR0,Component ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PRMBL_0   ,PRMBL_0"
line.long 0x04 "TRCCIDR1,Component ID Register 1"
bitfld.long 0x04 4.--7. " CLASS     ,CLASS" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PRMBL_1 ,PRMBL_2" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCCIDR2,Component ID Register 2"
hexmask.long.byte 0x08 0.--7. 1. " PRMBL_2   ,PRMBL_2"
line.long 0x0C "TRCCIDR3,Component ID Register 3"
hexmask.long.byte 0x0C 0.--7. 1. " PRMBL_3   ,PRMBL_3"
tree.end
tree.end
endif
sif COMPonent.AVAILABLE("funnel5")
tree "FUNNEL5   "+COMPonent.NAME("FUNNEL5",-1)
base e:comp.base("funnel5",-1)
width 11.
group 0x000--0x007 "Funnel Control Registers"
line.long 0x000 "FUNCTRL,Funnel Control Register"
bitfld.long 0x000 8.--11. " MINHT    ,Minimum Hold Time[1]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
textline "                    "
bitfld.long 0x000 7. " ENSLP7   ,Enable Slave Port 7" "Disabled,Enabled"
bitfld.long 0x000 6. "  ENSLP6   ,Enable Slave Port 6" "Disabled,Enabled"
textline "                    "
bitfld.long 0x000 5. " ENSLP5   ,Enable Slave Port 5" "Disabled,Enabled"
bitfld.long 0x000 4. "  ENSLP4   ,Enable Slave Port 4" "Disabled,Enabled"
textline "                    "
bitfld.long 0x000 3. " ENSLP3   ,Enable Slave Port 3" "Disabled,Enabled"
bitfld.long 0x000 2. "  ENSLP2   ,Enable Slave Port 2" "Disabled,Enabled"
textline "                    "
bitfld.long 0x000 1. " ENSLP1   ,Enable Slave Port 1" "Disabled,Enabled"
bitfld.long 0x000 0. "  ENSLP0   ,Enable Slave Port 0" "Disabled,Enabled"
line.long 0x004 "PRIORCTRL,Priority Control Register"
bitfld.long 0x004 21.--23. " PRIOR7   ,Priority Port 7" "0,1,2,3,4,5,6,7"
bitfld.long 0x004 18.--20. "         PRIOR6   ,Priority Port 6" "0,1,2,3,4,5,6,7"
textline "                    "
bitfld.long 0x004 15.--17. " PRIOR5   ,Priority Port 5" "0,1,2,3,4,5,6,7"
bitfld.long 0x004 12.--14. "         PRIOR4   ,Priority Port 4" "0,1,2,3,4,5,6,7"
textline "                    "
bitfld.long 0x004 9.--11. " PRIOR3   ,Priority Port 3" "0,1,2,3,4,5,6,7"
bitfld.long 0x004 6.--8. "         PRIOR2   ,Priority Port 2" "0,1,2,3,4,5,6,7"
textline "                    "
bitfld.long 0x004 3.--5. " PRIOR1   ,Priority Port 1" "0,1,2,3,4,5,6,7"
bitfld.long 0x004 0.--2. "         PRIOR0   ,Priority Port 0" "0,1,2,3,4,5,6,7"
width 15.
tree "CoreSight Management Registers"
rgroup 0xF84--0xFA7
line.long 0x000 "LSR,Lock Status Register"
bitfld.long 0x000 0.--1. " LSR     ,Lock Status" "0x0,0x1,No Lock Access,0x3"
group 0xFC4--0xFC7
line.long 0x000 "DEVCSID,Device CoreSight ID"
hexmask.long.long 0x000 0.--7. 1. " CDID    ,Device CoreSight ID"
rgroup 0xFC8--0xFCF
line.long 0x000 "INP_OUTIDC,Input Port and Output ID Count"
hexmask.long.long 0x000 0.--7. 1. " ID      ,Input Port and Output ID Count"
line.long 0x004 "DTI,Device Type Identifier"
hexmask.long.byte 0x004 0.--7. 1. " DTI     ,Device Type Identifier"
group 0xf00--0xf03 "Integration Test Registers"
line.long 0x000 "ITCTRL,Integration Mode Control"
bitfld.long 0x000 0. " ENABLE       ,Enable Integration mode" "no,yes"
rgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAS[127] ,Returns the Value of the ATDATAS[127] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[119] ,Returns the Value of the ATDATAS[119] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[111] ,Returns the Value of the ATDATAS[111] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[103] ,Returns the Value of the ATDATAS[103] Input Pin" "Low,High"
textline "                       "
bitfld.long 0x000 8. "  ATDATAS[95]  ,Returns the Value of the ATDATAS[95] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[87]  ,Returns the Value of the ATDATAS[87] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[79]  ,Returns the Value of the ATDATAS[79] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[71]  ,Returns the Value of the ATDATAS[71] Input Pin" "Low,High"
textline "                       "
bitfld.long 0x000 8. "  ATDATAS[63]  ,Returns the Value of the ATDATAS[63] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[55]  ,Returns the Value of the ATDATAS[55] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[47]  ,Returns the Value of the ATDATAS[47] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[39]  ,Returns the Value of the ATDATAS[39] Input Pin" "Low,High"
textline "                       "
bitfld.long 0x000 4. "  ATDATAS[31]  ,Returns the Value of the ATDATAS[31] Input Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAS[23]  ,Returns the Value of the ATDATAS[23] Input pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAS[15]  ,Returns the Value of the ATDATAS[15] Input Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAS[7]   ,Returns the Value of the ATDATAS[7] Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAS[0]   ,Returns the Value of the ATDATAS[0] Input Pin" "Low,High"
wgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDS     ,Drives the AFVALIDS Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYS     ,Drives the ATREADYS Output Pin" "Low,High"
rgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDS        ,Returns the Value of the ATIDS Input Pins"
rgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESS[1]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESS[0]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYS     ,Returns the Value of the AFREADYS Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDS     ,Returns the Value of the ATVALIDS Input Pin" "Low,High"
wgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAM[127] ,Drives the ATDATAM[127] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[119] ,Drives the ATDATAM[119] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[111] ,Drives the ATDATAM[111] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[103] ,Drives the ATDATAM[103] Output Pin" "Low,High"
textline "                       "
bitfld.long 0x000 8. "  ATDATAM[95]  ,Drives the ATDATAM[95] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[87]  ,Drives the ATDATAM[87] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[79]  ,Drives the ATDATAM[79] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[71]  ,Drives the ATDATAM[71] Output Pin" "Low,High"
textline "                       "
bitfld.long 0x000 8. "  ATDATAM[63]  ,Drives the ATDATAM[63] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[55]  ,Drives the ATDATAM[55] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[47]  ,Drives the ATDATAM[47] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[39]  ,Drives the ATDATAM[39] Output Pin" "Low,High"
textline "                       "
bitfld.long 0x000 4. "  ATDATAM[31]  ,Drives the ATDATAM[31] Output Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAM[23]  ,Drives the ATDATAM[23] Output pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAM[15]  ,Drives the ATDATAM[15] Output Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAM[7]   ,Drives the ATDATAM[7] Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAM[0]   ,Drives the ATDATAM[0] Output Pin" "Low,High"
rgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDM     ,Returns the Value of the AFVALIDM Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYM     ,Returns the Value of the ATREADYM Input Pin" "Low,High"
wgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDM        ,Drives the ATIDM Output Pins"
wgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESM[1]  ,Drives the ATBYTESM[1] Output Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESM[0]  ,Drives the ATBYTESM[0] Output Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYM     ,Drives the AFREADYM Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDM     ,Drives the ATVALIDM Output Pin" "Low,High"
rgroup.long 0xFE0++0x0F "Peripheral Identification Registers"
line.long 0x00 "TRCPIDR0,Peripheral ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PART_0    ,Part Number [7:0]"
line.long 0x04 "TRCPIDR1,Peripheral ID Register 1"
bitfld.long 0x04 4.--7. " DES_0     ,JEP106 Identity Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PART_1  ,Part Number [11:8]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCPIDR2,Peripheral ID Register 2"
bitfld.long 0x08 4.--7. " REVISION  ,Revision [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x08 3. "               JEDEC   ,JEDEC" "Low,High"
bitfld.long 0x08 0.--2. "             DES_1    ,JEP106 Identity Code [6:4]" "0,1,2,3,4,5,6,7"
line.long 0x0C "TRCPIDR3,Peripheral ID Register 3"
bitfld.long 0x0C 4.--7. " REVAND    ,RevAnd [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x0C 0.--3. "               CMOD    ,Customer Modified [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFD0++0x03
line.long 0x00 "TRCPIDR4,Peripheral ID Register 4"
bitfld.long 0x00 4.--7. " SIZE      ,Always 0x0 indicating a single 4KB component" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x00 0.--3. "               DES_2   ,JEP106 Continuation Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFF0++0x0F "Component Identification Registers"
line.long 0x00 "TRCCIDR0,Component ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PRMBL_0   ,PRMBL_0"
line.long 0x04 "TRCCIDR1,Component ID Register 1"
bitfld.long 0x04 4.--7. " CLASS     ,CLASS" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PRMBL_1 ,PRMBL_2" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCCIDR2,Component ID Register 2"
hexmask.long.byte 0x08 0.--7. 1. " PRMBL_2   ,PRMBL_2"
line.long 0x0C "TRCCIDR3,Component ID Register 3"
hexmask.long.byte 0x0C 0.--7. 1. " PRMBL_3   ,PRMBL_3"
tree.end
tree.end
endif
sif COMPonent.AVAILABLE("funnel6")
tree "FUNNEL6   "+COMPonent.NAME("FUNNEL6",-1)
base e:comp.base("funnel6",-1)
width 11.
group 0x000--0x007 "Funnel Control Registers"
line.long 0x000 "FUNCTRL,Funnel Control Register"
bitfld.long 0x000 8.--11. " MINHT    ,Minimum Hold Time[1]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
textline "                    "
bitfld.long 0x000 7. " ENSLP7   ,Enable Slave Port 7" "Disabled,Enabled"
bitfld.long 0x000 6. "  ENSLP6   ,Enable Slave Port 6" "Disabled,Enabled"
textline "                    "
bitfld.long 0x000 5. " ENSLP5   ,Enable Slave Port 5" "Disabled,Enabled"
bitfld.long 0x000 4. "  ENSLP4   ,Enable Slave Port 4" "Disabled,Enabled"
textline "                    "
bitfld.long 0x000 3. " ENSLP3   ,Enable Slave Port 3" "Disabled,Enabled"
bitfld.long 0x000 2. "  ENSLP2   ,Enable Slave Port 2" "Disabled,Enabled"
textline "                    "
bitfld.long 0x000 1. " ENSLP1   ,Enable Slave Port 1" "Disabled,Enabled"
bitfld.long 0x000 0. "  ENSLP0   ,Enable Slave Port 0" "Disabled,Enabled"
line.long 0x004 "PRIORCTRL,Priority Control Register"
bitfld.long 0x004 21.--23. " PRIOR7   ,Priority Port 7" "0,1,2,3,4,5,6,7"
bitfld.long 0x004 18.--20. "         PRIOR6   ,Priority Port 6" "0,1,2,3,4,5,6,7"
textline "                    "
bitfld.long 0x004 15.--17. " PRIOR5   ,Priority Port 5" "0,1,2,3,4,5,6,7"
bitfld.long 0x004 12.--14. "         PRIOR4   ,Priority Port 4" "0,1,2,3,4,5,6,7"
textline "                    "
bitfld.long 0x004 9.--11. " PRIOR3   ,Priority Port 3" "0,1,2,3,4,5,6,7"
bitfld.long 0x004 6.--8. "         PRIOR2   ,Priority Port 2" "0,1,2,3,4,5,6,7"
textline "                    "
bitfld.long 0x004 3.--5. " PRIOR1   ,Priority Port 1" "0,1,2,3,4,5,6,7"
bitfld.long 0x004 0.--2. "         PRIOR0   ,Priority Port 0" "0,1,2,3,4,5,6,7"
width 15.
tree "CoreSight Management Registers"
rgroup 0xF84--0xFA7
line.long 0x000 "LSR,Lock Status Register"
bitfld.long 0x000 0.--1. " LSR     ,Lock Status" "0x0,0x1,No Lock Access,0x3"
group 0xFC4--0xFC7
line.long 0x000 "DEVCSID,Device CoreSight ID"
hexmask.long.long 0x000 0.--7. 1. " CDID    ,Device CoreSight ID"
rgroup 0xFC8--0xFCF
line.long 0x000 "INP_OUTIDC,Input Port and Output ID Count"
hexmask.long.long 0x000 0.--7. 1. " ID      ,Input Port and Output ID Count"
line.long 0x004 "DTI,Device Type Identifier"
hexmask.long.byte 0x004 0.--7. 1. " DTI     ,Device Type Identifier"
group 0xf00--0xf03 "Integration Test Registers"
line.long 0x000 "ITCTRL,Integration Mode Control"
bitfld.long 0x000 0. " ENABLE       ,Enable Integration mode" "no,yes"
rgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAS[127] ,Returns the Value of the ATDATAS[127] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[119] ,Returns the Value of the ATDATAS[119] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[111] ,Returns the Value of the ATDATAS[111] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[103] ,Returns the Value of the ATDATAS[103] Input Pin" "Low,High"
textline "                       "
bitfld.long 0x000 8. "  ATDATAS[95]  ,Returns the Value of the ATDATAS[95] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[87]  ,Returns the Value of the ATDATAS[87] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[79]  ,Returns the Value of the ATDATAS[79] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[71]  ,Returns the Value of the ATDATAS[71] Input Pin" "Low,High"
textline "                       "
bitfld.long 0x000 8. "  ATDATAS[63]  ,Returns the Value of the ATDATAS[63] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[55]  ,Returns the Value of the ATDATAS[55] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[47]  ,Returns the Value of the ATDATAS[47] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[39]  ,Returns the Value of the ATDATAS[39] Input Pin" "Low,High"
textline "                       "
bitfld.long 0x000 4. "  ATDATAS[31]  ,Returns the Value of the ATDATAS[31] Input Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAS[23]  ,Returns the Value of the ATDATAS[23] Input pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAS[15]  ,Returns the Value of the ATDATAS[15] Input Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAS[7]   ,Returns the Value of the ATDATAS[7] Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAS[0]   ,Returns the Value of the ATDATAS[0] Input Pin" "Low,High"
wgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDS     ,Drives the AFVALIDS Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYS     ,Drives the ATREADYS Output Pin" "Low,High"
rgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDS        ,Returns the Value of the ATIDS Input Pins"
rgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESS[1]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESS[0]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYS     ,Returns the Value of the AFREADYS Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDS     ,Returns the Value of the ATVALIDS Input Pin" "Low,High"
wgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAM[127] ,Drives the ATDATAM[127] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[119] ,Drives the ATDATAM[119] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[111] ,Drives the ATDATAM[111] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[103] ,Drives the ATDATAM[103] Output Pin" "Low,High"
textline "                       "
bitfld.long 0x000 8. "  ATDATAM[95]  ,Drives the ATDATAM[95] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[87]  ,Drives the ATDATAM[87] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[79]  ,Drives the ATDATAM[79] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[71]  ,Drives the ATDATAM[71] Output Pin" "Low,High"
textline "                       "
bitfld.long 0x000 8. "  ATDATAM[63]  ,Drives the ATDATAM[63] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[55]  ,Drives the ATDATAM[55] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[47]  ,Drives the ATDATAM[47] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[39]  ,Drives the ATDATAM[39] Output Pin" "Low,High"
textline "                       "
bitfld.long 0x000 4. "  ATDATAM[31]  ,Drives the ATDATAM[31] Output Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAM[23]  ,Drives the ATDATAM[23] Output pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAM[15]  ,Drives the ATDATAM[15] Output Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAM[7]   ,Drives the ATDATAM[7] Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAM[0]   ,Drives the ATDATAM[0] Output Pin" "Low,High"
rgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDM     ,Returns the Value of the AFVALIDM Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYM     ,Returns the Value of the ATREADYM Input Pin" "Low,High"
wgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDM        ,Drives the ATIDM Output Pins"
wgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESM[1]  ,Drives the ATBYTESM[1] Output Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESM[0]  ,Drives the ATBYTESM[0] Output Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYM     ,Drives the AFREADYM Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDM     ,Drives the ATVALIDM Output Pin" "Low,High"
rgroup.long 0xFE0++0x0F "Peripheral Identification Registers"
line.long 0x00 "TRCPIDR0,Peripheral ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PART_0    ,Part Number [7:0]"
line.long 0x04 "TRCPIDR1,Peripheral ID Register 1"
bitfld.long 0x04 4.--7. " DES_0     ,JEP106 Identity Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PART_1  ,Part Number [11:8]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCPIDR2,Peripheral ID Register 2"
bitfld.long 0x08 4.--7. " REVISION  ,Revision [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x08 3. "               JEDEC   ,JEDEC" "Low,High"
bitfld.long 0x08 0.--2. "             DES_1    ,JEP106 Identity Code [6:4]" "0,1,2,3,4,5,6,7"
line.long 0x0C "TRCPIDR3,Peripheral ID Register 3"
bitfld.long 0x0C 4.--7. " REVAND    ,RevAnd [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x0C 0.--3. "               CMOD    ,Customer Modified [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFD0++0x03
line.long 0x00 "TRCPIDR4,Peripheral ID Register 4"
bitfld.long 0x00 4.--7. " SIZE      ,Always 0x0 indicating a single 4KB component" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x00 0.--3. "               DES_2   ,JEP106 Continuation Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFF0++0x0F "Component Identification Registers"
line.long 0x00 "TRCCIDR0,Component ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PRMBL_0   ,PRMBL_0"
line.long 0x04 "TRCCIDR1,Component ID Register 1"
bitfld.long 0x04 4.--7. " CLASS     ,CLASS" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PRMBL_1 ,PRMBL_2" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCCIDR2,Component ID Register 2"
hexmask.long.byte 0x08 0.--7. 1. " PRMBL_2   ,PRMBL_2"
line.long 0x0C "TRCCIDR3,Component ID Register 3"
hexmask.long.byte 0x0C 0.--7. 1. " PRMBL_3   ,PRMBL_3"
tree.end
tree.end
endif
sif COMPonent.AVAILABLE("funnel7")
tree "FUNNEL7   "+COMPonent.NAME("FUNNEL7",-1)
base e:comp.base("funnel7",-1)
width 11.
group 0x000--0x007 "Funnel Control Registers"
line.long 0x000 "FUNCTRL,Funnel Control Register"
bitfld.long 0x000 8.--11. " MINHT    ,Minimum Hold Time[1]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
textline "                    "
bitfld.long 0x000 7. " ENSLP7   ,Enable Slave Port 7" "Disabled,Enabled"
bitfld.long 0x000 6. "  ENSLP6   ,Enable Slave Port 6" "Disabled,Enabled"
textline "                    "
bitfld.long 0x000 5. " ENSLP5   ,Enable Slave Port 5" "Disabled,Enabled"
bitfld.long 0x000 4. "  ENSLP4   ,Enable Slave Port 4" "Disabled,Enabled"
textline "                    "
bitfld.long 0x000 3. " ENSLP3   ,Enable Slave Port 3" "Disabled,Enabled"
bitfld.long 0x000 2. "  ENSLP2   ,Enable Slave Port 2" "Disabled,Enabled"
textline "                    "
bitfld.long 0x000 1. " ENSLP1   ,Enable Slave Port 1" "Disabled,Enabled"
bitfld.long 0x000 0. "  ENSLP0   ,Enable Slave Port 0" "Disabled,Enabled"
line.long 0x004 "PRIORCTRL,Priority Control Register"
bitfld.long 0x004 21.--23. " PRIOR7   ,Priority Port 7" "0,1,2,3,4,5,6,7"
bitfld.long 0x004 18.--20. "         PRIOR6   ,Priority Port 6" "0,1,2,3,4,5,6,7"
textline "                    "
bitfld.long 0x004 15.--17. " PRIOR5   ,Priority Port 5" "0,1,2,3,4,5,6,7"
bitfld.long 0x004 12.--14. "         PRIOR4   ,Priority Port 4" "0,1,2,3,4,5,6,7"
textline "                    "
bitfld.long 0x004 9.--11. " PRIOR3   ,Priority Port 3" "0,1,2,3,4,5,6,7"
bitfld.long 0x004 6.--8. "         PRIOR2   ,Priority Port 2" "0,1,2,3,4,5,6,7"
textline "                    "
bitfld.long 0x004 3.--5. " PRIOR1   ,Priority Port 1" "0,1,2,3,4,5,6,7"
bitfld.long 0x004 0.--2. "         PRIOR0   ,Priority Port 0" "0,1,2,3,4,5,6,7"
width 15.
tree "CoreSight Management Registers"
rgroup 0xF84--0xFA7
line.long 0x000 "LSR,Lock Status Register"
bitfld.long 0x000 0.--1. " LSR     ,Lock Status" "0x0,0x1,No Lock Access,0x3"
group 0xFC4--0xFC7
line.long 0x000 "DEVCSID,Device CoreSight ID"
hexmask.long.long 0x000 0.--7. 1. " CDID    ,Device CoreSight ID"
rgroup 0xFC8--0xFCF
line.long 0x000 "INP_OUTIDC,Input Port and Output ID Count"
hexmask.long.long 0x000 0.--7. 1. " ID      ,Input Port and Output ID Count"
line.long 0x004 "DTI,Device Type Identifier"
hexmask.long.byte 0x004 0.--7. 1. " DTI     ,Device Type Identifier"
group 0xf00--0xf03 "Integration Test Registers"
line.long 0x000 "ITCTRL,Integration Mode Control"
bitfld.long 0x000 0. " ENABLE       ,Enable Integration mode" "no,yes"
rgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAS[127] ,Returns the Value of the ATDATAS[127] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[119] ,Returns the Value of the ATDATAS[119] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[111] ,Returns the Value of the ATDATAS[111] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[103] ,Returns the Value of the ATDATAS[103] Input Pin" "Low,High"
textline "                       "
bitfld.long 0x000 8. "  ATDATAS[95]  ,Returns the Value of the ATDATAS[95] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[87]  ,Returns the Value of the ATDATAS[87] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[79]  ,Returns the Value of the ATDATAS[79] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[71]  ,Returns the Value of the ATDATAS[71] Input Pin" "Low,High"
textline "                       "
bitfld.long 0x000 8. "  ATDATAS[63]  ,Returns the Value of the ATDATAS[63] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[55]  ,Returns the Value of the ATDATAS[55] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[47]  ,Returns the Value of the ATDATAS[47] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[39]  ,Returns the Value of the ATDATAS[39] Input Pin" "Low,High"
textline "                       "
bitfld.long 0x000 4. "  ATDATAS[31]  ,Returns the Value of the ATDATAS[31] Input Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAS[23]  ,Returns the Value of the ATDATAS[23] Input pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAS[15]  ,Returns the Value of the ATDATAS[15] Input Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAS[7]   ,Returns the Value of the ATDATAS[7] Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAS[0]   ,Returns the Value of the ATDATAS[0] Input Pin" "Low,High"
wgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDS     ,Drives the AFVALIDS Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYS     ,Drives the ATREADYS Output Pin" "Low,High"
rgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDS        ,Returns the Value of the ATIDS Input Pins"
rgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESS[1]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESS[0]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYS     ,Returns the Value of the AFREADYS Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDS     ,Returns the Value of the ATVALIDS Input Pin" "Low,High"
wgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAM[127] ,Drives the ATDATAM[127] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[119] ,Drives the ATDATAM[119] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[111] ,Drives the ATDATAM[111] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[103] ,Drives the ATDATAM[103] Output Pin" "Low,High"
textline "                       "
bitfld.long 0x000 8. "  ATDATAM[95]  ,Drives the ATDATAM[95] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[87]  ,Drives the ATDATAM[87] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[79]  ,Drives the ATDATAM[79] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[71]  ,Drives the ATDATAM[71] Output Pin" "Low,High"
textline "                       "
bitfld.long 0x000 8. "  ATDATAM[63]  ,Drives the ATDATAM[63] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[55]  ,Drives the ATDATAM[55] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[47]  ,Drives the ATDATAM[47] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[39]  ,Drives the ATDATAM[39] Output Pin" "Low,High"
textline "                       "
bitfld.long 0x000 4. "  ATDATAM[31]  ,Drives the ATDATAM[31] Output Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAM[23]  ,Drives the ATDATAM[23] Output pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAM[15]  ,Drives the ATDATAM[15] Output Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAM[7]   ,Drives the ATDATAM[7] Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAM[0]   ,Drives the ATDATAM[0] Output Pin" "Low,High"
rgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDM     ,Returns the Value of the AFVALIDM Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYM     ,Returns the Value of the ATREADYM Input Pin" "Low,High"
wgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDM        ,Drives the ATIDM Output Pins"
wgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESM[1]  ,Drives the ATBYTESM[1] Output Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESM[0]  ,Drives the ATBYTESM[0] Output Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYM     ,Drives the AFREADYM Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDM     ,Drives the ATVALIDM Output Pin" "Low,High"
rgroup.long 0xFE0++0x0F "Peripheral Identification Registers"
line.long 0x00 "TRCPIDR0,Peripheral ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PART_0    ,Part Number [7:0]"
line.long 0x04 "TRCPIDR1,Peripheral ID Register 1"
bitfld.long 0x04 4.--7. " DES_0     ,JEP106 Identity Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PART_1  ,Part Number [11:8]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCPIDR2,Peripheral ID Register 2"
bitfld.long 0x08 4.--7. " REVISION  ,Revision [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x08 3. "               JEDEC   ,JEDEC" "Low,High"
bitfld.long 0x08 0.--2. "             DES_1    ,JEP106 Identity Code [6:4]" "0,1,2,3,4,5,6,7"
line.long 0x0C "TRCPIDR3,Peripheral ID Register 3"
bitfld.long 0x0C 4.--7. " REVAND    ,RevAnd [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x0C 0.--3. "               CMOD    ,Customer Modified [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFD0++0x03
line.long 0x00 "TRCPIDR4,Peripheral ID Register 4"
bitfld.long 0x00 4.--7. " SIZE      ,Always 0x0 indicating a single 4KB component" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x00 0.--3. "               DES_2   ,JEP106 Continuation Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFF0++0x0F "Component Identification Registers"
line.long 0x00 "TRCCIDR0,Component ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PRMBL_0   ,PRMBL_0"
line.long 0x04 "TRCCIDR1,Component ID Register 1"
bitfld.long 0x04 4.--7. " CLASS     ,CLASS" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PRMBL_1 ,PRMBL_2" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCCIDR2,Component ID Register 2"
hexmask.long.byte 0x08 0.--7. 1. " PRMBL_2   ,PRMBL_2"
line.long 0x0C "TRCCIDR3,Component ID Register 3"
hexmask.long.byte 0x0C 0.--7. 1. " PRMBL_3   ,PRMBL_3"
tree.end
tree.end
endif
sif COMPonent.AVAILABLE("funnel8")
tree "FUNNEL8   "+COMPonent.NAME("FUNNEL8",-1)
base e:comp.base("funnel8",-1)
width 11.
group 0x000--0x007 "Funnel Control Registers"
line.long 0x000 "FUNCTRL,Funnel Control Register"
bitfld.long 0x000 8.--11. " MINHT    ,Minimum Hold Time[1]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
textline "                    "
bitfld.long 0x000 7. " ENSLP7   ,Enable Slave Port 7" "Disabled,Enabled"
bitfld.long 0x000 6. "  ENSLP6   ,Enable Slave Port 6" "Disabled,Enabled"
textline "                    "
bitfld.long 0x000 5. " ENSLP5   ,Enable Slave Port 5" "Disabled,Enabled"
bitfld.long 0x000 4. "  ENSLP4   ,Enable Slave Port 4" "Disabled,Enabled"
textline "                    "
bitfld.long 0x000 3. " ENSLP3   ,Enable Slave Port 3" "Disabled,Enabled"
bitfld.long 0x000 2. "  ENSLP2   ,Enable Slave Port 2" "Disabled,Enabled"
textline "                    "
bitfld.long 0x000 1. " ENSLP1   ,Enable Slave Port 1" "Disabled,Enabled"
bitfld.long 0x000 0. "  ENSLP0   ,Enable Slave Port 0" "Disabled,Enabled"
line.long 0x004 "PRIORCTRL,Priority Control Register"
bitfld.long 0x004 21.--23. " PRIOR7   ,Priority Port 7" "0,1,2,3,4,5,6,7"
bitfld.long 0x004 18.--20. "         PRIOR6   ,Priority Port 6" "0,1,2,3,4,5,6,7"
textline "                    "
bitfld.long 0x004 15.--17. " PRIOR5   ,Priority Port 5" "0,1,2,3,4,5,6,7"
bitfld.long 0x004 12.--14. "         PRIOR4   ,Priority Port 4" "0,1,2,3,4,5,6,7"
textline "                    "
bitfld.long 0x004 9.--11. " PRIOR3   ,Priority Port 3" "0,1,2,3,4,5,6,7"
bitfld.long 0x004 6.--8. "         PRIOR2   ,Priority Port 2" "0,1,2,3,4,5,6,7"
textline "                    "
bitfld.long 0x004 3.--5. " PRIOR1   ,Priority Port 1" "0,1,2,3,4,5,6,7"
bitfld.long 0x004 0.--2. "         PRIOR0   ,Priority Port 0" "0,1,2,3,4,5,6,7"
width 15.
tree "CoreSight Management Registers"
rgroup 0xF84--0xFA7
line.long 0x000 "LSR,Lock Status Register"
bitfld.long 0x000 0.--1. " LSR     ,Lock Status" "0x0,0x1,No Lock Access,0x3"
group 0xFC4--0xFC7
line.long 0x000 "DEVCSID,Device CoreSight ID"
hexmask.long.long 0x000 0.--7. 1. " CDID    ,Device CoreSight ID"
rgroup 0xFC8--0xFCF
line.long 0x000 "INP_OUTIDC,Input Port and Output ID Count"
hexmask.long.long 0x000 0.--7. 1. " ID      ,Input Port and Output ID Count"
line.long 0x004 "DTI,Device Type Identifier"
hexmask.long.byte 0x004 0.--7. 1. " DTI     ,Device Type Identifier"
group 0xf00--0xf03 "Integration Test Registers"
line.long 0x000 "ITCTRL,Integration Mode Control"
bitfld.long 0x000 0. " ENABLE       ,Enable Integration mode" "no,yes"
rgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAS[127] ,Returns the Value of the ATDATAS[127] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[119] ,Returns the Value of the ATDATAS[119] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[111] ,Returns the Value of the ATDATAS[111] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[103] ,Returns the Value of the ATDATAS[103] Input Pin" "Low,High"
textline "                       "
bitfld.long 0x000 8. "  ATDATAS[95]  ,Returns the Value of the ATDATAS[95] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[87]  ,Returns the Value of the ATDATAS[87] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[79]  ,Returns the Value of the ATDATAS[79] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[71]  ,Returns the Value of the ATDATAS[71] Input Pin" "Low,High"
textline "                       "
bitfld.long 0x000 8. "  ATDATAS[63]  ,Returns the Value of the ATDATAS[63] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[55]  ,Returns the Value of the ATDATAS[55] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[47]  ,Returns the Value of the ATDATAS[47] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[39]  ,Returns the Value of the ATDATAS[39] Input Pin" "Low,High"
textline "                       "
bitfld.long 0x000 4. "  ATDATAS[31]  ,Returns the Value of the ATDATAS[31] Input Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAS[23]  ,Returns the Value of the ATDATAS[23] Input pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAS[15]  ,Returns the Value of the ATDATAS[15] Input Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAS[7]   ,Returns the Value of the ATDATAS[7] Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAS[0]   ,Returns the Value of the ATDATAS[0] Input Pin" "Low,High"
wgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDS     ,Drives the AFVALIDS Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYS     ,Drives the ATREADYS Output Pin" "Low,High"
rgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDS        ,Returns the Value of the ATIDS Input Pins"
rgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESS[1]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESS[0]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYS     ,Returns the Value of the AFREADYS Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDS     ,Returns the Value of the ATVALIDS Input Pin" "Low,High"
wgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAM[127] ,Drives the ATDATAM[127] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[119] ,Drives the ATDATAM[119] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[111] ,Drives the ATDATAM[111] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[103] ,Drives the ATDATAM[103] Output Pin" "Low,High"
textline "                       "
bitfld.long 0x000 8. "  ATDATAM[95]  ,Drives the ATDATAM[95] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[87]  ,Drives the ATDATAM[87] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[79]  ,Drives the ATDATAM[79] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[71]  ,Drives the ATDATAM[71] Output Pin" "Low,High"
textline "                       "
bitfld.long 0x000 8. "  ATDATAM[63]  ,Drives the ATDATAM[63] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[55]  ,Drives the ATDATAM[55] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[47]  ,Drives the ATDATAM[47] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[39]  ,Drives the ATDATAM[39] Output Pin" "Low,High"
textline "                       "
bitfld.long 0x000 4. "  ATDATAM[31]  ,Drives the ATDATAM[31] Output Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAM[23]  ,Drives the ATDATAM[23] Output pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAM[15]  ,Drives the ATDATAM[15] Output Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAM[7]   ,Drives the ATDATAM[7] Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAM[0]   ,Drives the ATDATAM[0] Output Pin" "Low,High"
rgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDM     ,Returns the Value of the AFVALIDM Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYM     ,Returns the Value of the ATREADYM Input Pin" "Low,High"
wgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDM        ,Drives the ATIDM Output Pins"
wgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESM[1]  ,Drives the ATBYTESM[1] Output Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESM[0]  ,Drives the ATBYTESM[0] Output Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYM     ,Drives the AFREADYM Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDM     ,Drives the ATVALIDM Output Pin" "Low,High"
rgroup.long 0xFE0++0x0F "Peripheral Identification Registers"
line.long 0x00 "TRCPIDR0,Peripheral ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PART_0    ,Part Number [7:0]"
line.long 0x04 "TRCPIDR1,Peripheral ID Register 1"
bitfld.long 0x04 4.--7. " DES_0     ,JEP106 Identity Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PART_1  ,Part Number [11:8]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCPIDR2,Peripheral ID Register 2"
bitfld.long 0x08 4.--7. " REVISION  ,Revision [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x08 3. "               JEDEC   ,JEDEC" "Low,High"
bitfld.long 0x08 0.--2. "             DES_1    ,JEP106 Identity Code [6:4]" "0,1,2,3,4,5,6,7"
line.long 0x0C "TRCPIDR3,Peripheral ID Register 3"
bitfld.long 0x0C 4.--7. " REVAND    ,RevAnd [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x0C 0.--3. "               CMOD    ,Customer Modified [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFD0++0x03
line.long 0x00 "TRCPIDR4,Peripheral ID Register 4"
bitfld.long 0x00 4.--7. " SIZE      ,Always 0x0 indicating a single 4KB component" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x00 0.--3. "               DES_2   ,JEP106 Continuation Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFF0++0x0F "Component Identification Registers"
line.long 0x00 "TRCCIDR0,Component ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PRMBL_0   ,PRMBL_0"
line.long 0x04 "TRCCIDR1,Component ID Register 1"
bitfld.long 0x04 4.--7. " CLASS     ,CLASS" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PRMBL_1 ,PRMBL_2" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCCIDR2,Component ID Register 2"
hexmask.long.byte 0x08 0.--7. 1. " PRMBL_2   ,PRMBL_2"
line.long 0x0C "TRCCIDR3,Component ID Register 3"
hexmask.long.byte 0x0C 0.--7. 1. " PRMBL_3   ,PRMBL_3"
tree.end
tree.end
endif
sif COMPonent.AVAILABLE("funnel9")
tree "FUNNEL9   "+COMPonent.NAME("FUNNEL9",-1)
base e:comp.base("funnel9",-1)
width 11.
group 0x000--0x007 "Funnel Control Registers"
line.long 0x000 "FUNCTRL,Funnel Control Register"
bitfld.long 0x000 8.--11. " MINHT    ,Minimum Hold Time[1]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
textline "                    "
bitfld.long 0x000 7. " ENSLP7   ,Enable Slave Port 7" "Disabled,Enabled"
bitfld.long 0x000 6. "  ENSLP6   ,Enable Slave Port 6" "Disabled,Enabled"
textline "                    "
bitfld.long 0x000 5. " ENSLP5   ,Enable Slave Port 5" "Disabled,Enabled"
bitfld.long 0x000 4. "  ENSLP4   ,Enable Slave Port 4" "Disabled,Enabled"
textline "                    "
bitfld.long 0x000 3. " ENSLP3   ,Enable Slave Port 3" "Disabled,Enabled"
bitfld.long 0x000 2. "  ENSLP2   ,Enable Slave Port 2" "Disabled,Enabled"
textline "                    "
bitfld.long 0x000 1. " ENSLP1   ,Enable Slave Port 1" "Disabled,Enabled"
bitfld.long 0x000 0. "  ENSLP0   ,Enable Slave Port 0" "Disabled,Enabled"
line.long 0x004 "PRIORCTRL,Priority Control Register"
bitfld.long 0x004 21.--23. " PRIOR7   ,Priority Port 7" "0,1,2,3,4,5,6,7"
bitfld.long 0x004 18.--20. "         PRIOR6   ,Priority Port 6" "0,1,2,3,4,5,6,7"
textline "                    "
bitfld.long 0x004 15.--17. " PRIOR5   ,Priority Port 5" "0,1,2,3,4,5,6,7"
bitfld.long 0x004 12.--14. "         PRIOR4   ,Priority Port 4" "0,1,2,3,4,5,6,7"
textline "                    "
bitfld.long 0x004 9.--11. " PRIOR3   ,Priority Port 3" "0,1,2,3,4,5,6,7"
bitfld.long 0x004 6.--8. "         PRIOR2   ,Priority Port 2" "0,1,2,3,4,5,6,7"
textline "                    "
bitfld.long 0x004 3.--5. " PRIOR1   ,Priority Port 1" "0,1,2,3,4,5,6,7"
bitfld.long 0x004 0.--2. "         PRIOR0   ,Priority Port 0" "0,1,2,3,4,5,6,7"
width 15.
tree "CoreSight Management Registers"
rgroup 0xF84--0xFA7
line.long 0x000 "LSR,Lock Status Register"
bitfld.long 0x000 0.--1. " LSR     ,Lock Status" "0x0,0x1,No Lock Access,0x3"
group 0xFC4--0xFC7
line.long 0x000 "DEVCSID,Device CoreSight ID"
hexmask.long.long 0x000 0.--7. 1. " CDID    ,Device CoreSight ID"
rgroup 0xFC8--0xFCF
line.long 0x000 "INP_OUTIDC,Input Port and Output ID Count"
hexmask.long.long 0x000 0.--7. 1. " ID      ,Input Port and Output ID Count"
line.long 0x004 "DTI,Device Type Identifier"
hexmask.long.byte 0x004 0.--7. 1. " DTI     ,Device Type Identifier"
group 0xf00--0xf03 "Integration Test Registers"
line.long 0x000 "ITCTRL,Integration Mode Control"
bitfld.long 0x000 0. " ENABLE       ,Enable Integration mode" "no,yes"
rgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAS[127] ,Returns the Value of the ATDATAS[127] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[119] ,Returns the Value of the ATDATAS[119] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[111] ,Returns the Value of the ATDATAS[111] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[103] ,Returns the Value of the ATDATAS[103] Input Pin" "Low,High"
textline "                       "
bitfld.long 0x000 8. "  ATDATAS[95]  ,Returns the Value of the ATDATAS[95] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[87]  ,Returns the Value of the ATDATAS[87] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[79]  ,Returns the Value of the ATDATAS[79] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[71]  ,Returns the Value of the ATDATAS[71] Input Pin" "Low,High"
textline "                       "
bitfld.long 0x000 8. "  ATDATAS[63]  ,Returns the Value of the ATDATAS[63] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[55]  ,Returns the Value of the ATDATAS[55] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[47]  ,Returns the Value of the ATDATAS[47] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[39]  ,Returns the Value of the ATDATAS[39] Input Pin" "Low,High"
textline "                       "
bitfld.long 0x000 4. "  ATDATAS[31]  ,Returns the Value of the ATDATAS[31] Input Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAS[23]  ,Returns the Value of the ATDATAS[23] Input pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAS[15]  ,Returns the Value of the ATDATAS[15] Input Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAS[7]   ,Returns the Value of the ATDATAS[7] Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAS[0]   ,Returns the Value of the ATDATAS[0] Input Pin" "Low,High"
wgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDS     ,Drives the AFVALIDS Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYS     ,Drives the ATREADYS Output Pin" "Low,High"
rgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDS        ,Returns the Value of the ATIDS Input Pins"
rgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESS[1]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESS[0]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYS     ,Returns the Value of the AFREADYS Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDS     ,Returns the Value of the ATVALIDS Input Pin" "Low,High"
wgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAM[127] ,Drives the ATDATAM[127] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[119] ,Drives the ATDATAM[119] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[111] ,Drives the ATDATAM[111] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[103] ,Drives the ATDATAM[103] Output Pin" "Low,High"
textline "                       "
bitfld.long 0x000 8. "  ATDATAM[95]  ,Drives the ATDATAM[95] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[87]  ,Drives the ATDATAM[87] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[79]  ,Drives the ATDATAM[79] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[71]  ,Drives the ATDATAM[71] Output Pin" "Low,High"
textline "                       "
bitfld.long 0x000 8. "  ATDATAM[63]  ,Drives the ATDATAM[63] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[55]  ,Drives the ATDATAM[55] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[47]  ,Drives the ATDATAM[47] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[39]  ,Drives the ATDATAM[39] Output Pin" "Low,High"
textline "                       "
bitfld.long 0x000 4. "  ATDATAM[31]  ,Drives the ATDATAM[31] Output Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAM[23]  ,Drives the ATDATAM[23] Output pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAM[15]  ,Drives the ATDATAM[15] Output Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAM[7]   ,Drives the ATDATAM[7] Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAM[0]   ,Drives the ATDATAM[0] Output Pin" "Low,High"
rgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDM     ,Returns the Value of the AFVALIDM Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYM     ,Returns the Value of the ATREADYM Input Pin" "Low,High"
wgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDM        ,Drives the ATIDM Output Pins"
wgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESM[1]  ,Drives the ATBYTESM[1] Output Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESM[0]  ,Drives the ATBYTESM[0] Output Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYM     ,Drives the AFREADYM Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDM     ,Drives the ATVALIDM Output Pin" "Low,High"
rgroup.long 0xFE0++0x0F "Peripheral Identification Registers"
line.long 0x00 "TRCPIDR0,Peripheral ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PART_0    ,Part Number [7:0]"
line.long 0x04 "TRCPIDR1,Peripheral ID Register 1"
bitfld.long 0x04 4.--7. " DES_0     ,JEP106 Identity Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PART_1  ,Part Number [11:8]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCPIDR2,Peripheral ID Register 2"
bitfld.long 0x08 4.--7. " REVISION  ,Revision [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x08 3. "               JEDEC   ,JEDEC" "Low,High"
bitfld.long 0x08 0.--2. "             DES_1    ,JEP106 Identity Code [6:4]" "0,1,2,3,4,5,6,7"
line.long 0x0C "TRCPIDR3,Peripheral ID Register 3"
bitfld.long 0x0C 4.--7. " REVAND    ,RevAnd [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x0C 0.--3. "               CMOD    ,Customer Modified [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFD0++0x03
line.long 0x00 "TRCPIDR4,Peripheral ID Register 4"
bitfld.long 0x00 4.--7. " SIZE      ,Always 0x0 indicating a single 4KB component" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x00 0.--3. "               DES_2   ,JEP106 Continuation Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFF0++0x0F "Component Identification Registers"
line.long 0x00 "TRCCIDR0,Component ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PRMBL_0   ,PRMBL_0"
line.long 0x04 "TRCCIDR1,Component ID Register 1"
bitfld.long 0x04 4.--7. " CLASS     ,CLASS" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PRMBL_1 ,PRMBL_2" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCCIDR2,Component ID Register 2"
hexmask.long.byte 0x08 0.--7. 1. " PRMBL_2   ,PRMBL_2"
line.long 0x0C "TRCCIDR3,Component ID Register 3"
hexmask.long.byte 0x0C 0.--7. 1. " PRMBL_3   ,PRMBL_3"
tree.end
tree.end
endif
sif COMPonent.AVAILABLE("funnel10")
tree "FUNNEL10   "+COMPonent.NAME("FUNNEL10",-1)
base e:comp.base("funnel10",-1)
width 11.
group 0x000--0x007 "Funnel Control Registers"
line.long 0x000 "FUNCTRL,Funnel Control Register"
bitfld.long 0x000 8.--11. " MINHT    ,Minimum Hold Time[1]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
textline "                    "
bitfld.long 0x000 7. " ENSLP7   ,Enable Slave Port 7" "Disabled,Enabled"
bitfld.long 0x000 6. "  ENSLP6   ,Enable Slave Port 6" "Disabled,Enabled"
textline "                    "
bitfld.long 0x000 5. " ENSLP5   ,Enable Slave Port 5" "Disabled,Enabled"
bitfld.long 0x000 4. "  ENSLP4   ,Enable Slave Port 4" "Disabled,Enabled"
textline "                    "
bitfld.long 0x000 3. " ENSLP3   ,Enable Slave Port 3" "Disabled,Enabled"
bitfld.long 0x000 2. "  ENSLP2   ,Enable Slave Port 2" "Disabled,Enabled"
textline "                    "
bitfld.long 0x000 1. " ENSLP1   ,Enable Slave Port 1" "Disabled,Enabled"
bitfld.long 0x000 0. "  ENSLP0   ,Enable Slave Port 0" "Disabled,Enabled"
line.long 0x004 "PRIORCTRL,Priority Control Register"
bitfld.long 0x004 21.--23. " PRIOR7   ,Priority Port 7" "0,1,2,3,4,5,6,7"
bitfld.long 0x004 18.--20. "         PRIOR6   ,Priority Port 6" "0,1,2,3,4,5,6,7"
textline "                    "
bitfld.long 0x004 15.--17. " PRIOR5   ,Priority Port 5" "0,1,2,3,4,5,6,7"
bitfld.long 0x004 12.--14. "         PRIOR4   ,Priority Port 4" "0,1,2,3,4,5,6,7"
textline "                    "
bitfld.long 0x004 9.--11. " PRIOR3   ,Priority Port 3" "0,1,2,3,4,5,6,7"
bitfld.long 0x004 6.--8. "         PRIOR2   ,Priority Port 2" "0,1,2,3,4,5,6,7"
textline "                    "
bitfld.long 0x004 3.--5. " PRIOR1   ,Priority Port 1" "0,1,2,3,4,5,6,7"
bitfld.long 0x004 0.--2. "         PRIOR0   ,Priority Port 0" "0,1,2,3,4,5,6,7"
width 15.
tree "CoreSight Management Registers"
rgroup 0xF84--0xFA7
line.long 0x000 "LSR,Lock Status Register"
bitfld.long 0x000 0.--1. " LSR     ,Lock Status" "0x0,0x1,No Lock Access,0x3"
group 0xFC4--0xFC7
line.long 0x000 "DEVCSID,Device CoreSight ID"
hexmask.long.long 0x000 0.--7. 1. " CDID    ,Device CoreSight ID"
rgroup 0xFC8--0xFCF
line.long 0x000 "INP_OUTIDC,Input Port and Output ID Count"
hexmask.long.long 0x000 0.--7. 1. " ID      ,Input Port and Output ID Count"
line.long 0x004 "DTI,Device Type Identifier"
hexmask.long.byte 0x004 0.--7. 1. " DTI     ,Device Type Identifier"
group 0xf00--0xf03 "Integration Test Registers"
line.long 0x000 "ITCTRL,Integration Mode Control"
bitfld.long 0x000 0. " ENABLE       ,Enable Integration mode" "no,yes"
rgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAS[127] ,Returns the Value of the ATDATAS[127] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[119] ,Returns the Value of the ATDATAS[119] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[111] ,Returns the Value of the ATDATAS[111] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[103] ,Returns the Value of the ATDATAS[103] Input Pin" "Low,High"
textline "                       "
bitfld.long 0x000 8. "  ATDATAS[95]  ,Returns the Value of the ATDATAS[95] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[87]  ,Returns the Value of the ATDATAS[87] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[79]  ,Returns the Value of the ATDATAS[79] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[71]  ,Returns the Value of the ATDATAS[71] Input Pin" "Low,High"
textline "                       "
bitfld.long 0x000 8. "  ATDATAS[63]  ,Returns the Value of the ATDATAS[63] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[55]  ,Returns the Value of the ATDATAS[55] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[47]  ,Returns the Value of the ATDATAS[47] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[39]  ,Returns the Value of the ATDATAS[39] Input Pin" "Low,High"
textline "                       "
bitfld.long 0x000 4. "  ATDATAS[31]  ,Returns the Value of the ATDATAS[31] Input Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAS[23]  ,Returns the Value of the ATDATAS[23] Input pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAS[15]  ,Returns the Value of the ATDATAS[15] Input Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAS[7]   ,Returns the Value of the ATDATAS[7] Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAS[0]   ,Returns the Value of the ATDATAS[0] Input Pin" "Low,High"
wgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDS     ,Drives the AFVALIDS Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYS     ,Drives the ATREADYS Output Pin" "Low,High"
rgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDS        ,Returns the Value of the ATIDS Input Pins"
rgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESS[1]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESS[0]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYS     ,Returns the Value of the AFREADYS Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDS     ,Returns the Value of the ATVALIDS Input Pin" "Low,High"
wgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAM[127] ,Drives the ATDATAM[127] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[119] ,Drives the ATDATAM[119] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[111] ,Drives the ATDATAM[111] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[103] ,Drives the ATDATAM[103] Output Pin" "Low,High"
textline "                       "
bitfld.long 0x000 8. "  ATDATAM[95]  ,Drives the ATDATAM[95] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[87]  ,Drives the ATDATAM[87] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[79]  ,Drives the ATDATAM[79] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[71]  ,Drives the ATDATAM[71] Output Pin" "Low,High"
textline "                       "
bitfld.long 0x000 8. "  ATDATAM[63]  ,Drives the ATDATAM[63] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[55]  ,Drives the ATDATAM[55] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[47]  ,Drives the ATDATAM[47] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[39]  ,Drives the ATDATAM[39] Output Pin" "Low,High"
textline "                       "
bitfld.long 0x000 4. "  ATDATAM[31]  ,Drives the ATDATAM[31] Output Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAM[23]  ,Drives the ATDATAM[23] Output pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAM[15]  ,Drives the ATDATAM[15] Output Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAM[7]   ,Drives the ATDATAM[7] Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAM[0]   ,Drives the ATDATAM[0] Output Pin" "Low,High"
rgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDM     ,Returns the Value of the AFVALIDM Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYM     ,Returns the Value of the ATREADYM Input Pin" "Low,High"
wgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDM        ,Drives the ATIDM Output Pins"
wgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESM[1]  ,Drives the ATBYTESM[1] Output Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESM[0]  ,Drives the ATBYTESM[0] Output Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYM     ,Drives the AFREADYM Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDM     ,Drives the ATVALIDM Output Pin" "Low,High"
rgroup.long 0xFE0++0x0F "Peripheral Identification Registers"
line.long 0x00 "TRCPIDR0,Peripheral ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PART_0    ,Part Number [7:0]"
line.long 0x04 "TRCPIDR1,Peripheral ID Register 1"
bitfld.long 0x04 4.--7. " DES_0     ,JEP106 Identity Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PART_1  ,Part Number [11:8]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCPIDR2,Peripheral ID Register 2"
bitfld.long 0x08 4.--7. " REVISION  ,Revision [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x08 3. "               JEDEC   ,JEDEC" "Low,High"
bitfld.long 0x08 0.--2. "             DES_1    ,JEP106 Identity Code [6:4]" "0,1,2,3,4,5,6,7"
line.long 0x0C "TRCPIDR3,Peripheral ID Register 3"
bitfld.long 0x0C 4.--7. " REVAND    ,RevAnd [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x0C 0.--3. "               CMOD    ,Customer Modified [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFD0++0x03
line.long 0x00 "TRCPIDR4,Peripheral ID Register 4"
bitfld.long 0x00 4.--7. " SIZE      ,Always 0x0 indicating a single 4KB component" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x00 0.--3. "               DES_2   ,JEP106 Continuation Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFF0++0x0F "Component Identification Registers"
line.long 0x00 "TRCCIDR0,Component ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PRMBL_0   ,PRMBL_0"
line.long 0x04 "TRCCIDR1,Component ID Register 1"
bitfld.long 0x04 4.--7. " CLASS     ,CLASS" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PRMBL_1 ,PRMBL_2" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCCIDR2,Component ID Register 2"
hexmask.long.byte 0x08 0.--7. 1. " PRMBL_2   ,PRMBL_2"
line.long 0x0C "TRCCIDR3,Component ID Register 3"
hexmask.long.byte 0x0C 0.--7. 1. " PRMBL_3   ,PRMBL_3"
tree.end
tree.end
endif
sif COMPonent.AVAILABLE("funnel11")
tree "FUNNEL11   "+COMPonent.NAME("FUNNEL11",-1)
base e:comp.base("funnel11",-1)
width 11.
group 0x000--0x007 "Funnel Control Registers"
line.long 0x000 "FUNCTRL,Funnel Control Register"
bitfld.long 0x000 8.--11. " MINHT    ,Minimum Hold Time[1]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
textline "                    "
bitfld.long 0x000 7. " ENSLP7   ,Enable Slave Port 7" "Disabled,Enabled"
bitfld.long 0x000 6. "  ENSLP6   ,Enable Slave Port 6" "Disabled,Enabled"
textline "                    "
bitfld.long 0x000 5. " ENSLP5   ,Enable Slave Port 5" "Disabled,Enabled"
bitfld.long 0x000 4. "  ENSLP4   ,Enable Slave Port 4" "Disabled,Enabled"
textline "                    "
bitfld.long 0x000 3. " ENSLP3   ,Enable Slave Port 3" "Disabled,Enabled"
bitfld.long 0x000 2. "  ENSLP2   ,Enable Slave Port 2" "Disabled,Enabled"
textline "                    "
bitfld.long 0x000 1. " ENSLP1   ,Enable Slave Port 1" "Disabled,Enabled"
bitfld.long 0x000 0. "  ENSLP0   ,Enable Slave Port 0" "Disabled,Enabled"
line.long 0x004 "PRIORCTRL,Priority Control Register"
bitfld.long 0x004 21.--23. " PRIOR7   ,Priority Port 7" "0,1,2,3,4,5,6,7"
bitfld.long 0x004 18.--20. "         PRIOR6   ,Priority Port 6" "0,1,2,3,4,5,6,7"
textline "                    "
bitfld.long 0x004 15.--17. " PRIOR5   ,Priority Port 5" "0,1,2,3,4,5,6,7"
bitfld.long 0x004 12.--14. "         PRIOR4   ,Priority Port 4" "0,1,2,3,4,5,6,7"
textline "                    "
bitfld.long 0x004 9.--11. " PRIOR3   ,Priority Port 3" "0,1,2,3,4,5,6,7"
bitfld.long 0x004 6.--8. "         PRIOR2   ,Priority Port 2" "0,1,2,3,4,5,6,7"
textline "                    "
bitfld.long 0x004 3.--5. " PRIOR1   ,Priority Port 1" "0,1,2,3,4,5,6,7"
bitfld.long 0x004 0.--2. "         PRIOR0   ,Priority Port 0" "0,1,2,3,4,5,6,7"
width 15.
tree "CoreSight Management Registers"
rgroup 0xF84--0xFA7
line.long 0x000 "LSR,Lock Status Register"
bitfld.long 0x000 0.--1. " LSR     ,Lock Status" "0x0,0x1,No Lock Access,0x3"
group 0xFC4--0xFC7
line.long 0x000 "DEVCSID,Device CoreSight ID"
hexmask.long.long 0x000 0.--7. 1. " CDID    ,Device CoreSight ID"
rgroup 0xFC8--0xFCF
line.long 0x000 "INP_OUTIDC,Input Port and Output ID Count"
hexmask.long.long 0x000 0.--7. 1. " ID      ,Input Port and Output ID Count"
line.long 0x004 "DTI,Device Type Identifier"
hexmask.long.byte 0x004 0.--7. 1. " DTI     ,Device Type Identifier"
group 0xf00--0xf03 "Integration Test Registers"
line.long 0x000 "ITCTRL,Integration Mode Control"
bitfld.long 0x000 0. " ENABLE       ,Enable Integration mode" "no,yes"
rgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAS[127] ,Returns the Value of the ATDATAS[127] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[119] ,Returns the Value of the ATDATAS[119] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[111] ,Returns the Value of the ATDATAS[111] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[103] ,Returns the Value of the ATDATAS[103] Input Pin" "Low,High"
textline "                       "
bitfld.long 0x000 8. "  ATDATAS[95]  ,Returns the Value of the ATDATAS[95] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[87]  ,Returns the Value of the ATDATAS[87] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[79]  ,Returns the Value of the ATDATAS[79] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[71]  ,Returns the Value of the ATDATAS[71] Input Pin" "Low,High"
textline "                       "
bitfld.long 0x000 8. "  ATDATAS[63]  ,Returns the Value of the ATDATAS[63] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[55]  ,Returns the Value of the ATDATAS[55] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[47]  ,Returns the Value of the ATDATAS[47] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[39]  ,Returns the Value of the ATDATAS[39] Input Pin" "Low,High"
textline "                       "
bitfld.long 0x000 4. "  ATDATAS[31]  ,Returns the Value of the ATDATAS[31] Input Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAS[23]  ,Returns the Value of the ATDATAS[23] Input pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAS[15]  ,Returns the Value of the ATDATAS[15] Input Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAS[7]   ,Returns the Value of the ATDATAS[7] Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAS[0]   ,Returns the Value of the ATDATAS[0] Input Pin" "Low,High"
wgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDS     ,Drives the AFVALIDS Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYS     ,Drives the ATREADYS Output Pin" "Low,High"
rgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDS        ,Returns the Value of the ATIDS Input Pins"
rgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESS[1]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESS[0]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYS     ,Returns the Value of the AFREADYS Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDS     ,Returns the Value of the ATVALIDS Input Pin" "Low,High"
wgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAM[127] ,Drives the ATDATAM[127] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[119] ,Drives the ATDATAM[119] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[111] ,Drives the ATDATAM[111] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[103] ,Drives the ATDATAM[103] Output Pin" "Low,High"
textline "                       "
bitfld.long 0x000 8. "  ATDATAM[95]  ,Drives the ATDATAM[95] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[87]  ,Drives the ATDATAM[87] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[79]  ,Drives the ATDATAM[79] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[71]  ,Drives the ATDATAM[71] Output Pin" "Low,High"
textline "                       "
bitfld.long 0x000 8. "  ATDATAM[63]  ,Drives the ATDATAM[63] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[55]  ,Drives the ATDATAM[55] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[47]  ,Drives the ATDATAM[47] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[39]  ,Drives the ATDATAM[39] Output Pin" "Low,High"
textline "                       "
bitfld.long 0x000 4. "  ATDATAM[31]  ,Drives the ATDATAM[31] Output Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAM[23]  ,Drives the ATDATAM[23] Output pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAM[15]  ,Drives the ATDATAM[15] Output Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAM[7]   ,Drives the ATDATAM[7] Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAM[0]   ,Drives the ATDATAM[0] Output Pin" "Low,High"
rgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDM     ,Returns the Value of the AFVALIDM Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYM     ,Returns the Value of the ATREADYM Input Pin" "Low,High"
wgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDM        ,Drives the ATIDM Output Pins"
wgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESM[1]  ,Drives the ATBYTESM[1] Output Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESM[0]  ,Drives the ATBYTESM[0] Output Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYM     ,Drives the AFREADYM Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDM     ,Drives the ATVALIDM Output Pin" "Low,High"
rgroup.long 0xFE0++0x0F "Peripheral Identification Registers"
line.long 0x00 "TRCPIDR0,Peripheral ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PART_0    ,Part Number [7:0]"
line.long 0x04 "TRCPIDR1,Peripheral ID Register 1"
bitfld.long 0x04 4.--7. " DES_0     ,JEP106 Identity Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PART_1  ,Part Number [11:8]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCPIDR2,Peripheral ID Register 2"
bitfld.long 0x08 4.--7. " REVISION  ,Revision [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x08 3. "               JEDEC   ,JEDEC" "Low,High"
bitfld.long 0x08 0.--2. "             DES_1    ,JEP106 Identity Code [6:4]" "0,1,2,3,4,5,6,7"
line.long 0x0C "TRCPIDR3,Peripheral ID Register 3"
bitfld.long 0x0C 4.--7. " REVAND    ,RevAnd [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x0C 0.--3. "               CMOD    ,Customer Modified [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFD0++0x03
line.long 0x00 "TRCPIDR4,Peripheral ID Register 4"
bitfld.long 0x00 4.--7. " SIZE      ,Always 0x0 indicating a single 4KB component" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x00 0.--3. "               DES_2   ,JEP106 Continuation Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFF0++0x0F "Component Identification Registers"
line.long 0x00 "TRCCIDR0,Component ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PRMBL_0   ,PRMBL_0"
line.long 0x04 "TRCCIDR1,Component ID Register 1"
bitfld.long 0x04 4.--7. " CLASS     ,CLASS" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PRMBL_1 ,PRMBL_2" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCCIDR2,Component ID Register 2"
hexmask.long.byte 0x08 0.--7. 1. " PRMBL_2   ,PRMBL_2"
line.long 0x0C "TRCCIDR3,Component ID Register 3"
hexmask.long.byte 0x0C 0.--7. 1. " PRMBL_3   ,PRMBL_3"
tree.end
tree.end
endif
sif COMPonent.AVAILABLE("funnel12")
tree "FUNNEL12   "+COMPonent.NAME("FUNNEL12",-1)
base e:comp.base("funnel12",-1)
width 11.
group 0x000--0x007 "Funnel Control Registers"
line.long 0x000 "FUNCTRL,Funnel Control Register"
bitfld.long 0x000 8.--11. " MINHT    ,Minimum Hold Time[1]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
textline "                    "
bitfld.long 0x000 7. " ENSLP7   ,Enable Slave Port 7" "Disabled,Enabled"
bitfld.long 0x000 6. "  ENSLP6   ,Enable Slave Port 6" "Disabled,Enabled"
textline "                    "
bitfld.long 0x000 5. " ENSLP5   ,Enable Slave Port 5" "Disabled,Enabled"
bitfld.long 0x000 4. "  ENSLP4   ,Enable Slave Port 4" "Disabled,Enabled"
textline "                    "
bitfld.long 0x000 3. " ENSLP3   ,Enable Slave Port 3" "Disabled,Enabled"
bitfld.long 0x000 2. "  ENSLP2   ,Enable Slave Port 2" "Disabled,Enabled"
textline "                    "
bitfld.long 0x000 1. " ENSLP1   ,Enable Slave Port 1" "Disabled,Enabled"
bitfld.long 0x000 0. "  ENSLP0   ,Enable Slave Port 0" "Disabled,Enabled"
line.long 0x004 "PRIORCTRL,Priority Control Register"
bitfld.long 0x004 21.--23. " PRIOR7   ,Priority Port 7" "0,1,2,3,4,5,6,7"
bitfld.long 0x004 18.--20. "         PRIOR6   ,Priority Port 6" "0,1,2,3,4,5,6,7"
textline "                    "
bitfld.long 0x004 15.--17. " PRIOR5   ,Priority Port 5" "0,1,2,3,4,5,6,7"
bitfld.long 0x004 12.--14. "         PRIOR4   ,Priority Port 4" "0,1,2,3,4,5,6,7"
textline "                    "
bitfld.long 0x004 9.--11. " PRIOR3   ,Priority Port 3" "0,1,2,3,4,5,6,7"
bitfld.long 0x004 6.--8. "         PRIOR2   ,Priority Port 2" "0,1,2,3,4,5,6,7"
textline "                    "
bitfld.long 0x004 3.--5. " PRIOR1   ,Priority Port 1" "0,1,2,3,4,5,6,7"
bitfld.long 0x004 0.--2. "         PRIOR0   ,Priority Port 0" "0,1,2,3,4,5,6,7"
width 15.
tree "CoreSight Management Registers"
rgroup 0xF84--0xFA7
line.long 0x000 "LSR,Lock Status Register"
bitfld.long 0x000 0.--1. " LSR     ,Lock Status" "0x0,0x1,No Lock Access,0x3"
group 0xFC4--0xFC7
line.long 0x000 "DEVCSID,Device CoreSight ID"
hexmask.long.long 0x000 0.--7. 1. " CDID    ,Device CoreSight ID"
rgroup 0xFC8--0xFCF
line.long 0x000 "INP_OUTIDC,Input Port and Output ID Count"
hexmask.long.long 0x000 0.--7. 1. " ID      ,Input Port and Output ID Count"
line.long 0x004 "DTI,Device Type Identifier"
hexmask.long.byte 0x004 0.--7. 1. " DTI     ,Device Type Identifier"
group 0xf00--0xf03 "Integration Test Registers"
line.long 0x000 "ITCTRL,Integration Mode Control"
bitfld.long 0x000 0. " ENABLE       ,Enable Integration mode" "no,yes"
rgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAS[127] ,Returns the Value of the ATDATAS[127] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[119] ,Returns the Value of the ATDATAS[119] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[111] ,Returns the Value of the ATDATAS[111] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[103] ,Returns the Value of the ATDATAS[103] Input Pin" "Low,High"
textline "                       "
bitfld.long 0x000 8. "  ATDATAS[95]  ,Returns the Value of the ATDATAS[95] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[87]  ,Returns the Value of the ATDATAS[87] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[79]  ,Returns the Value of the ATDATAS[79] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[71]  ,Returns the Value of the ATDATAS[71] Input Pin" "Low,High"
textline "                       "
bitfld.long 0x000 8. "  ATDATAS[63]  ,Returns the Value of the ATDATAS[63] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[55]  ,Returns the Value of the ATDATAS[55] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[47]  ,Returns the Value of the ATDATAS[47] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[39]  ,Returns the Value of the ATDATAS[39] Input Pin" "Low,High"
textline "                       "
bitfld.long 0x000 4. "  ATDATAS[31]  ,Returns the Value of the ATDATAS[31] Input Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAS[23]  ,Returns the Value of the ATDATAS[23] Input pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAS[15]  ,Returns the Value of the ATDATAS[15] Input Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAS[7]   ,Returns the Value of the ATDATAS[7] Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAS[0]   ,Returns the Value of the ATDATAS[0] Input Pin" "Low,High"
wgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDS     ,Drives the AFVALIDS Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYS     ,Drives the ATREADYS Output Pin" "Low,High"
rgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDS        ,Returns the Value of the ATIDS Input Pins"
rgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESS[1]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESS[0]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYS     ,Returns the Value of the AFREADYS Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDS     ,Returns the Value of the ATVALIDS Input Pin" "Low,High"
wgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAM[127] ,Drives the ATDATAM[127] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[119] ,Drives the ATDATAM[119] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[111] ,Drives the ATDATAM[111] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[103] ,Drives the ATDATAM[103] Output Pin" "Low,High"
textline "                       "
bitfld.long 0x000 8. "  ATDATAM[95]  ,Drives the ATDATAM[95] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[87]  ,Drives the ATDATAM[87] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[79]  ,Drives the ATDATAM[79] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[71]  ,Drives the ATDATAM[71] Output Pin" "Low,High"
textline "                       "
bitfld.long 0x000 8. "  ATDATAM[63]  ,Drives the ATDATAM[63] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[55]  ,Drives the ATDATAM[55] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[47]  ,Drives the ATDATAM[47] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[39]  ,Drives the ATDATAM[39] Output Pin" "Low,High"
textline "                       "
bitfld.long 0x000 4. "  ATDATAM[31]  ,Drives the ATDATAM[31] Output Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAM[23]  ,Drives the ATDATAM[23] Output pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAM[15]  ,Drives the ATDATAM[15] Output Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAM[7]   ,Drives the ATDATAM[7] Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAM[0]   ,Drives the ATDATAM[0] Output Pin" "Low,High"
rgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDM     ,Returns the Value of the AFVALIDM Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYM     ,Returns the Value of the ATREADYM Input Pin" "Low,High"
wgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDM        ,Drives the ATIDM Output Pins"
wgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESM[1]  ,Drives the ATBYTESM[1] Output Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESM[0]  ,Drives the ATBYTESM[0] Output Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYM     ,Drives the AFREADYM Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDM     ,Drives the ATVALIDM Output Pin" "Low,High"
rgroup.long 0xFE0++0x0F "Peripheral Identification Registers"
line.long 0x00 "TRCPIDR0,Peripheral ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PART_0    ,Part Number [7:0]"
line.long 0x04 "TRCPIDR1,Peripheral ID Register 1"
bitfld.long 0x04 4.--7. " DES_0     ,JEP106 Identity Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PART_1  ,Part Number [11:8]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCPIDR2,Peripheral ID Register 2"
bitfld.long 0x08 4.--7. " REVISION  ,Revision [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x08 3. "               JEDEC   ,JEDEC" "Low,High"
bitfld.long 0x08 0.--2. "             DES_1    ,JEP106 Identity Code [6:4]" "0,1,2,3,4,5,6,7"
line.long 0x0C "TRCPIDR3,Peripheral ID Register 3"
bitfld.long 0x0C 4.--7. " REVAND    ,RevAnd [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x0C 0.--3. "               CMOD    ,Customer Modified [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFD0++0x03
line.long 0x00 "TRCPIDR4,Peripheral ID Register 4"
bitfld.long 0x00 4.--7. " SIZE      ,Always 0x0 indicating a single 4KB component" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x00 0.--3. "               DES_2   ,JEP106 Continuation Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFF0++0x0F "Component Identification Registers"
line.long 0x00 "TRCCIDR0,Component ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PRMBL_0   ,PRMBL_0"
line.long 0x04 "TRCCIDR1,Component ID Register 1"
bitfld.long 0x04 4.--7. " CLASS     ,CLASS" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PRMBL_1 ,PRMBL_2" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCCIDR2,Component ID Register 2"
hexmask.long.byte 0x08 0.--7. 1. " PRMBL_2   ,PRMBL_2"
line.long 0x0C "TRCCIDR3,Component ID Register 3"
hexmask.long.byte 0x0C 0.--7. 1. " PRMBL_3   ,PRMBL_3"
tree.end
tree.end
endif
sif COMPonent.AVAILABLE("funnel13")
tree "FUNNEL13   "+COMPonent.NAME("FUNNEL13",-1)
base e:comp.base("funnel13",-1)
width 11.
group 0x000--0x007 "Funnel Control Registers"
line.long 0x000 "FUNCTRL,Funnel Control Register"
bitfld.long 0x000 8.--11. " MINHT    ,Minimum Hold Time[1]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
textline "                    "
bitfld.long 0x000 7. " ENSLP7   ,Enable Slave Port 7" "Disabled,Enabled"
bitfld.long 0x000 6. "  ENSLP6   ,Enable Slave Port 6" "Disabled,Enabled"
textline "                    "
bitfld.long 0x000 5. " ENSLP5   ,Enable Slave Port 5" "Disabled,Enabled"
bitfld.long 0x000 4. "  ENSLP4   ,Enable Slave Port 4" "Disabled,Enabled"
textline "                    "
bitfld.long 0x000 3. " ENSLP3   ,Enable Slave Port 3" "Disabled,Enabled"
bitfld.long 0x000 2. "  ENSLP2   ,Enable Slave Port 2" "Disabled,Enabled"
textline "                    "
bitfld.long 0x000 1. " ENSLP1   ,Enable Slave Port 1" "Disabled,Enabled"
bitfld.long 0x000 0. "  ENSLP0   ,Enable Slave Port 0" "Disabled,Enabled"
line.long 0x004 "PRIORCTRL,Priority Control Register"
bitfld.long 0x004 21.--23. " PRIOR7   ,Priority Port 7" "0,1,2,3,4,5,6,7"
bitfld.long 0x004 18.--20. "         PRIOR6   ,Priority Port 6" "0,1,2,3,4,5,6,7"
textline "                    "
bitfld.long 0x004 15.--17. " PRIOR5   ,Priority Port 5" "0,1,2,3,4,5,6,7"
bitfld.long 0x004 12.--14. "         PRIOR4   ,Priority Port 4" "0,1,2,3,4,5,6,7"
textline "                    "
bitfld.long 0x004 9.--11. " PRIOR3   ,Priority Port 3" "0,1,2,3,4,5,6,7"
bitfld.long 0x004 6.--8. "         PRIOR2   ,Priority Port 2" "0,1,2,3,4,5,6,7"
textline "                    "
bitfld.long 0x004 3.--5. " PRIOR1   ,Priority Port 1" "0,1,2,3,4,5,6,7"
bitfld.long 0x004 0.--2. "         PRIOR0   ,Priority Port 0" "0,1,2,3,4,5,6,7"
width 15.
tree "CoreSight Management Registers"
rgroup 0xF84--0xFA7
line.long 0x000 "LSR,Lock Status Register"
bitfld.long 0x000 0.--1. " LSR     ,Lock Status" "0x0,0x1,No Lock Access,0x3"
group 0xFC4--0xFC7
line.long 0x000 "DEVCSID,Device CoreSight ID"
hexmask.long.long 0x000 0.--7. 1. " CDID    ,Device CoreSight ID"
rgroup 0xFC8--0xFCF
line.long 0x000 "INP_OUTIDC,Input Port and Output ID Count"
hexmask.long.long 0x000 0.--7. 1. " ID      ,Input Port and Output ID Count"
line.long 0x004 "DTI,Device Type Identifier"
hexmask.long.byte 0x004 0.--7. 1. " DTI     ,Device Type Identifier"
group 0xf00--0xf03 "Integration Test Registers"
line.long 0x000 "ITCTRL,Integration Mode Control"
bitfld.long 0x000 0. " ENABLE       ,Enable Integration mode" "no,yes"
rgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAS[127] ,Returns the Value of the ATDATAS[127] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[119] ,Returns the Value of the ATDATAS[119] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[111] ,Returns the Value of the ATDATAS[111] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[103] ,Returns the Value of the ATDATAS[103] Input Pin" "Low,High"
textline "                       "
bitfld.long 0x000 8. "  ATDATAS[95]  ,Returns the Value of the ATDATAS[95] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[87]  ,Returns the Value of the ATDATAS[87] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[79]  ,Returns the Value of the ATDATAS[79] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[71]  ,Returns the Value of the ATDATAS[71] Input Pin" "Low,High"
textline "                       "
bitfld.long 0x000 8. "  ATDATAS[63]  ,Returns the Value of the ATDATAS[63] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[55]  ,Returns the Value of the ATDATAS[55] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[47]  ,Returns the Value of the ATDATAS[47] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[39]  ,Returns the Value of the ATDATAS[39] Input Pin" "Low,High"
textline "                       "
bitfld.long 0x000 4. "  ATDATAS[31]  ,Returns the Value of the ATDATAS[31] Input Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAS[23]  ,Returns the Value of the ATDATAS[23] Input pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAS[15]  ,Returns the Value of the ATDATAS[15] Input Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAS[7]   ,Returns the Value of the ATDATAS[7] Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAS[0]   ,Returns the Value of the ATDATAS[0] Input Pin" "Low,High"
wgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDS     ,Drives the AFVALIDS Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYS     ,Drives the ATREADYS Output Pin" "Low,High"
rgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDS        ,Returns the Value of the ATIDS Input Pins"
rgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESS[1]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESS[0]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYS     ,Returns the Value of the AFREADYS Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDS     ,Returns the Value of the ATVALIDS Input Pin" "Low,High"
wgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAM[127] ,Drives the ATDATAM[127] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[119] ,Drives the ATDATAM[119] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[111] ,Drives the ATDATAM[111] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[103] ,Drives the ATDATAM[103] Output Pin" "Low,High"
textline "                       "
bitfld.long 0x000 8. "  ATDATAM[95]  ,Drives the ATDATAM[95] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[87]  ,Drives the ATDATAM[87] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[79]  ,Drives the ATDATAM[79] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[71]  ,Drives the ATDATAM[71] Output Pin" "Low,High"
textline "                       "
bitfld.long 0x000 8. "  ATDATAM[63]  ,Drives the ATDATAM[63] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[55]  ,Drives the ATDATAM[55] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[47]  ,Drives the ATDATAM[47] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[39]  ,Drives the ATDATAM[39] Output Pin" "Low,High"
textline "                       "
bitfld.long 0x000 4. "  ATDATAM[31]  ,Drives the ATDATAM[31] Output Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAM[23]  ,Drives the ATDATAM[23] Output pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAM[15]  ,Drives the ATDATAM[15] Output Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAM[7]   ,Drives the ATDATAM[7] Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAM[0]   ,Drives the ATDATAM[0] Output Pin" "Low,High"
rgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDM     ,Returns the Value of the AFVALIDM Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYM     ,Returns the Value of the ATREADYM Input Pin" "Low,High"
wgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDM        ,Drives the ATIDM Output Pins"
wgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESM[1]  ,Drives the ATBYTESM[1] Output Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESM[0]  ,Drives the ATBYTESM[0] Output Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYM     ,Drives the AFREADYM Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDM     ,Drives the ATVALIDM Output Pin" "Low,High"
rgroup.long 0xFE0++0x0F "Peripheral Identification Registers"
line.long 0x00 "TRCPIDR0,Peripheral ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PART_0    ,Part Number [7:0]"
line.long 0x04 "TRCPIDR1,Peripheral ID Register 1"
bitfld.long 0x04 4.--7. " DES_0     ,JEP106 Identity Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PART_1  ,Part Number [11:8]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCPIDR2,Peripheral ID Register 2"
bitfld.long 0x08 4.--7. " REVISION  ,Revision [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x08 3. "               JEDEC   ,JEDEC" "Low,High"
bitfld.long 0x08 0.--2. "             DES_1    ,JEP106 Identity Code [6:4]" "0,1,2,3,4,5,6,7"
line.long 0x0C "TRCPIDR3,Peripheral ID Register 3"
bitfld.long 0x0C 4.--7. " REVAND    ,RevAnd [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x0C 0.--3. "               CMOD    ,Customer Modified [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFD0++0x03
line.long 0x00 "TRCPIDR4,Peripheral ID Register 4"
bitfld.long 0x00 4.--7. " SIZE      ,Always 0x0 indicating a single 4KB component" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x00 0.--3. "               DES_2   ,JEP106 Continuation Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFF0++0x0F "Component Identification Registers"
line.long 0x00 "TRCCIDR0,Component ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PRMBL_0   ,PRMBL_0"
line.long 0x04 "TRCCIDR1,Component ID Register 1"
bitfld.long 0x04 4.--7. " CLASS     ,CLASS" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PRMBL_1 ,PRMBL_2" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCCIDR2,Component ID Register 2"
hexmask.long.byte 0x08 0.--7. 1. " PRMBL_2   ,PRMBL_2"
line.long 0x0C "TRCCIDR3,Component ID Register 3"
hexmask.long.byte 0x0C 0.--7. 1. " PRMBL_3   ,PRMBL_3"
tree.end
tree.end
endif
sif COMPonent.AVAILABLE("funnel14")
tree "FUNNEL14   "+COMPonent.NAME("FUNNEL14",-1)
base e:comp.base("funnel14",-1)
width 11.
group 0x000--0x007 "Funnel Control Registers"
line.long 0x000 "FUNCTRL,Funnel Control Register"
bitfld.long 0x000 8.--11. " MINHT    ,Minimum Hold Time[1]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
textline "                    "
bitfld.long 0x000 7. " ENSLP7   ,Enable Slave Port 7" "Disabled,Enabled"
bitfld.long 0x000 6. "  ENSLP6   ,Enable Slave Port 6" "Disabled,Enabled"
textline "                    "
bitfld.long 0x000 5. " ENSLP5   ,Enable Slave Port 5" "Disabled,Enabled"
bitfld.long 0x000 4. "  ENSLP4   ,Enable Slave Port 4" "Disabled,Enabled"
textline "                    "
bitfld.long 0x000 3. " ENSLP3   ,Enable Slave Port 3" "Disabled,Enabled"
bitfld.long 0x000 2. "  ENSLP2   ,Enable Slave Port 2" "Disabled,Enabled"
textline "                    "
bitfld.long 0x000 1. " ENSLP1   ,Enable Slave Port 1" "Disabled,Enabled"
bitfld.long 0x000 0. "  ENSLP0   ,Enable Slave Port 0" "Disabled,Enabled"
line.long 0x004 "PRIORCTRL,Priority Control Register"
bitfld.long 0x004 21.--23. " PRIOR7   ,Priority Port 7" "0,1,2,3,4,5,6,7"
bitfld.long 0x004 18.--20. "         PRIOR6   ,Priority Port 6" "0,1,2,3,4,5,6,7"
textline "                    "
bitfld.long 0x004 15.--17. " PRIOR5   ,Priority Port 5" "0,1,2,3,4,5,6,7"
bitfld.long 0x004 12.--14. "         PRIOR4   ,Priority Port 4" "0,1,2,3,4,5,6,7"
textline "                    "
bitfld.long 0x004 9.--11. " PRIOR3   ,Priority Port 3" "0,1,2,3,4,5,6,7"
bitfld.long 0x004 6.--8. "         PRIOR2   ,Priority Port 2" "0,1,2,3,4,5,6,7"
textline "                    "
bitfld.long 0x004 3.--5. " PRIOR1   ,Priority Port 1" "0,1,2,3,4,5,6,7"
bitfld.long 0x004 0.--2. "         PRIOR0   ,Priority Port 0" "0,1,2,3,4,5,6,7"
width 15.
tree "CoreSight Management Registers"
rgroup 0xF84--0xFA7
line.long 0x000 "LSR,Lock Status Register"
bitfld.long 0x000 0.--1. " LSR     ,Lock Status" "0x0,0x1,No Lock Access,0x3"
group 0xFC4--0xFC7
line.long 0x000 "DEVCSID,Device CoreSight ID"
hexmask.long.long 0x000 0.--7. 1. " CDID    ,Device CoreSight ID"
rgroup 0xFC8--0xFCF
line.long 0x000 "INP_OUTIDC,Input Port and Output ID Count"
hexmask.long.long 0x000 0.--7. 1. " ID      ,Input Port and Output ID Count"
line.long 0x004 "DTI,Device Type Identifier"
hexmask.long.byte 0x004 0.--7. 1. " DTI     ,Device Type Identifier"
group 0xf00--0xf03 "Integration Test Registers"
line.long 0x000 "ITCTRL,Integration Mode Control"
bitfld.long 0x000 0. " ENABLE       ,Enable Integration mode" "no,yes"
rgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAS[127] ,Returns the Value of the ATDATAS[127] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[119] ,Returns the Value of the ATDATAS[119] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[111] ,Returns the Value of the ATDATAS[111] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[103] ,Returns the Value of the ATDATAS[103] Input Pin" "Low,High"
textline "                       "
bitfld.long 0x000 8. "  ATDATAS[95]  ,Returns the Value of the ATDATAS[95] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[87]  ,Returns the Value of the ATDATAS[87] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[79]  ,Returns the Value of the ATDATAS[79] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[71]  ,Returns the Value of the ATDATAS[71] Input Pin" "Low,High"
textline "                       "
bitfld.long 0x000 8. "  ATDATAS[63]  ,Returns the Value of the ATDATAS[63] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[55]  ,Returns the Value of the ATDATAS[55] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[47]  ,Returns the Value of the ATDATAS[47] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[39]  ,Returns the Value of the ATDATAS[39] Input Pin" "Low,High"
textline "                       "
bitfld.long 0x000 4. "  ATDATAS[31]  ,Returns the Value of the ATDATAS[31] Input Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAS[23]  ,Returns the Value of the ATDATAS[23] Input pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAS[15]  ,Returns the Value of the ATDATAS[15] Input Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAS[7]   ,Returns the Value of the ATDATAS[7] Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAS[0]   ,Returns the Value of the ATDATAS[0] Input Pin" "Low,High"
wgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDS     ,Drives the AFVALIDS Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYS     ,Drives the ATREADYS Output Pin" "Low,High"
rgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDS        ,Returns the Value of the ATIDS Input Pins"
rgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESS[1]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESS[0]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYS     ,Returns the Value of the AFREADYS Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDS     ,Returns the Value of the ATVALIDS Input Pin" "Low,High"
wgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAM[127] ,Drives the ATDATAM[127] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[119] ,Drives the ATDATAM[119] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[111] ,Drives the ATDATAM[111] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[103] ,Drives the ATDATAM[103] Output Pin" "Low,High"
textline "                       "
bitfld.long 0x000 8. "  ATDATAM[95]  ,Drives the ATDATAM[95] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[87]  ,Drives the ATDATAM[87] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[79]  ,Drives the ATDATAM[79] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[71]  ,Drives the ATDATAM[71] Output Pin" "Low,High"
textline "                       "
bitfld.long 0x000 8. "  ATDATAM[63]  ,Drives the ATDATAM[63] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[55]  ,Drives the ATDATAM[55] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[47]  ,Drives the ATDATAM[47] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[39]  ,Drives the ATDATAM[39] Output Pin" "Low,High"
textline "                       "
bitfld.long 0x000 4. "  ATDATAM[31]  ,Drives the ATDATAM[31] Output Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAM[23]  ,Drives the ATDATAM[23] Output pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAM[15]  ,Drives the ATDATAM[15] Output Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAM[7]   ,Drives the ATDATAM[7] Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAM[0]   ,Drives the ATDATAM[0] Output Pin" "Low,High"
rgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDM     ,Returns the Value of the AFVALIDM Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYM     ,Returns the Value of the ATREADYM Input Pin" "Low,High"
wgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDM        ,Drives the ATIDM Output Pins"
wgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESM[1]  ,Drives the ATBYTESM[1] Output Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESM[0]  ,Drives the ATBYTESM[0] Output Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYM     ,Drives the AFREADYM Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDM     ,Drives the ATVALIDM Output Pin" "Low,High"
rgroup.long 0xFE0++0x0F "Peripheral Identification Registers"
line.long 0x00 "TRCPIDR0,Peripheral ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PART_0    ,Part Number [7:0]"
line.long 0x04 "TRCPIDR1,Peripheral ID Register 1"
bitfld.long 0x04 4.--7. " DES_0     ,JEP106 Identity Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PART_1  ,Part Number [11:8]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCPIDR2,Peripheral ID Register 2"
bitfld.long 0x08 4.--7. " REVISION  ,Revision [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x08 3. "               JEDEC   ,JEDEC" "Low,High"
bitfld.long 0x08 0.--2. "             DES_1    ,JEP106 Identity Code [6:4]" "0,1,2,3,4,5,6,7"
line.long 0x0C "TRCPIDR3,Peripheral ID Register 3"
bitfld.long 0x0C 4.--7. " REVAND    ,RevAnd [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x0C 0.--3. "               CMOD    ,Customer Modified [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFD0++0x03
line.long 0x00 "TRCPIDR4,Peripheral ID Register 4"
bitfld.long 0x00 4.--7. " SIZE      ,Always 0x0 indicating a single 4KB component" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x00 0.--3. "               DES_2   ,JEP106 Continuation Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFF0++0x0F "Component Identification Registers"
line.long 0x00 "TRCCIDR0,Component ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PRMBL_0   ,PRMBL_0"
line.long 0x04 "TRCCIDR1,Component ID Register 1"
bitfld.long 0x04 4.--7. " CLASS     ,CLASS" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PRMBL_1 ,PRMBL_2" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCCIDR2,Component ID Register 2"
hexmask.long.byte 0x08 0.--7. 1. " PRMBL_2   ,PRMBL_2"
line.long 0x0C "TRCCIDR3,Component ID Register 3"
hexmask.long.byte 0x0C 0.--7. 1. " PRMBL_3   ,PRMBL_3"
tree.end
tree.end
endif
sif COMPonent.AVAILABLE("funnel15")
tree "FUNNEL15   "+COMPonent.NAME("FUNNEL15",-1)
base e:comp.base("funnel15",-1)
width 11.
group 0x000--0x007 "Funnel Control Registers"
line.long 0x000 "FUNCTRL,Funnel Control Register"
bitfld.long 0x000 8.--11. " MINHT    ,Minimum Hold Time[1]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
textline "                    "
bitfld.long 0x000 7. " ENSLP7   ,Enable Slave Port 7" "Disabled,Enabled"
bitfld.long 0x000 6. "  ENSLP6   ,Enable Slave Port 6" "Disabled,Enabled"
textline "                    "
bitfld.long 0x000 5. " ENSLP5   ,Enable Slave Port 5" "Disabled,Enabled"
bitfld.long 0x000 4. "  ENSLP4   ,Enable Slave Port 4" "Disabled,Enabled"
textline "                    "
bitfld.long 0x000 3. " ENSLP3   ,Enable Slave Port 3" "Disabled,Enabled"
bitfld.long 0x000 2. "  ENSLP2   ,Enable Slave Port 2" "Disabled,Enabled"
textline "                    "
bitfld.long 0x000 1. " ENSLP1   ,Enable Slave Port 1" "Disabled,Enabled"
bitfld.long 0x000 0. "  ENSLP0   ,Enable Slave Port 0" "Disabled,Enabled"
line.long 0x004 "PRIORCTRL,Priority Control Register"
bitfld.long 0x004 21.--23. " PRIOR7   ,Priority Port 7" "0,1,2,3,4,5,6,7"
bitfld.long 0x004 18.--20. "         PRIOR6   ,Priority Port 6" "0,1,2,3,4,5,6,7"
textline "                    "
bitfld.long 0x004 15.--17. " PRIOR5   ,Priority Port 5" "0,1,2,3,4,5,6,7"
bitfld.long 0x004 12.--14. "         PRIOR4   ,Priority Port 4" "0,1,2,3,4,5,6,7"
textline "                    "
bitfld.long 0x004 9.--11. " PRIOR3   ,Priority Port 3" "0,1,2,3,4,5,6,7"
bitfld.long 0x004 6.--8. "         PRIOR2   ,Priority Port 2" "0,1,2,3,4,5,6,7"
textline "                    "
bitfld.long 0x004 3.--5. " PRIOR1   ,Priority Port 1" "0,1,2,3,4,5,6,7"
bitfld.long 0x004 0.--2. "         PRIOR0   ,Priority Port 0" "0,1,2,3,4,5,6,7"
width 15.
tree "CoreSight Management Registers"
rgroup 0xF84--0xFA7
line.long 0x000 "LSR,Lock Status Register"
bitfld.long 0x000 0.--1. " LSR     ,Lock Status" "0x0,0x1,No Lock Access,0x3"
group 0xFC4--0xFC7
line.long 0x000 "DEVCSID,Device CoreSight ID"
hexmask.long.long 0x000 0.--7. 1. " CDID    ,Device CoreSight ID"
rgroup 0xFC8--0xFCF
line.long 0x000 "INP_OUTIDC,Input Port and Output ID Count"
hexmask.long.long 0x000 0.--7. 1. " ID      ,Input Port and Output ID Count"
line.long 0x004 "DTI,Device Type Identifier"
hexmask.long.byte 0x004 0.--7. 1. " DTI     ,Device Type Identifier"
group 0xf00--0xf03 "Integration Test Registers"
line.long 0x000 "ITCTRL,Integration Mode Control"
bitfld.long 0x000 0. " ENABLE       ,Enable Integration mode" "no,yes"
rgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAS[127] ,Returns the Value of the ATDATAS[127] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[119] ,Returns the Value of the ATDATAS[119] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[111] ,Returns the Value of the ATDATAS[111] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[103] ,Returns the Value of the ATDATAS[103] Input Pin" "Low,High"
textline "                       "
bitfld.long 0x000 8. "  ATDATAS[95]  ,Returns the Value of the ATDATAS[95] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[87]  ,Returns the Value of the ATDATAS[87] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[79]  ,Returns the Value of the ATDATAS[79] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[71]  ,Returns the Value of the ATDATAS[71] Input Pin" "Low,High"
textline "                       "
bitfld.long 0x000 8. "  ATDATAS[63]  ,Returns the Value of the ATDATAS[63] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[55]  ,Returns the Value of the ATDATAS[55] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[47]  ,Returns the Value of the ATDATAS[47] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[39]  ,Returns the Value of the ATDATAS[39] Input Pin" "Low,High"
textline "                       "
bitfld.long 0x000 4. "  ATDATAS[31]  ,Returns the Value of the ATDATAS[31] Input Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAS[23]  ,Returns the Value of the ATDATAS[23] Input pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAS[15]  ,Returns the Value of the ATDATAS[15] Input Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAS[7]   ,Returns the Value of the ATDATAS[7] Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAS[0]   ,Returns the Value of the ATDATAS[0] Input Pin" "Low,High"
wgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDS     ,Drives the AFVALIDS Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYS     ,Drives the ATREADYS Output Pin" "Low,High"
rgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDS        ,Returns the Value of the ATIDS Input Pins"
rgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESS[1]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESS[0]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYS     ,Returns the Value of the AFREADYS Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDS     ,Returns the Value of the ATVALIDS Input Pin" "Low,High"
wgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAM[127] ,Drives the ATDATAM[127] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[119] ,Drives the ATDATAM[119] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[111] ,Drives the ATDATAM[111] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[103] ,Drives the ATDATAM[103] Output Pin" "Low,High"
textline "                       "
bitfld.long 0x000 8. "  ATDATAM[95]  ,Drives the ATDATAM[95] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[87]  ,Drives the ATDATAM[87] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[79]  ,Drives the ATDATAM[79] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[71]  ,Drives the ATDATAM[71] Output Pin" "Low,High"
textline "                       "
bitfld.long 0x000 8. "  ATDATAM[63]  ,Drives the ATDATAM[63] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[55]  ,Drives the ATDATAM[55] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[47]  ,Drives the ATDATAM[47] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[39]  ,Drives the ATDATAM[39] Output Pin" "Low,High"
textline "                       "
bitfld.long 0x000 4. "  ATDATAM[31]  ,Drives the ATDATAM[31] Output Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAM[23]  ,Drives the ATDATAM[23] Output pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAM[15]  ,Drives the ATDATAM[15] Output Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAM[7]   ,Drives the ATDATAM[7] Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAM[0]   ,Drives the ATDATAM[0] Output Pin" "Low,High"
rgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDM     ,Returns the Value of the AFVALIDM Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYM     ,Returns the Value of the ATREADYM Input Pin" "Low,High"
wgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDM        ,Drives the ATIDM Output Pins"
wgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESM[1]  ,Drives the ATBYTESM[1] Output Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESM[0]  ,Drives the ATBYTESM[0] Output Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYM     ,Drives the AFREADYM Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDM     ,Drives the ATVALIDM Output Pin" "Low,High"
rgroup.long 0xFE0++0x0F "Peripheral Identification Registers"
line.long 0x00 "TRCPIDR0,Peripheral ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PART_0    ,Part Number [7:0]"
line.long 0x04 "TRCPIDR1,Peripheral ID Register 1"
bitfld.long 0x04 4.--7. " DES_0     ,JEP106 Identity Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PART_1  ,Part Number [11:8]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCPIDR2,Peripheral ID Register 2"
bitfld.long 0x08 4.--7. " REVISION  ,Revision [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x08 3. "               JEDEC   ,JEDEC" "Low,High"
bitfld.long 0x08 0.--2. "             DES_1    ,JEP106 Identity Code [6:4]" "0,1,2,3,4,5,6,7"
line.long 0x0C "TRCPIDR3,Peripheral ID Register 3"
bitfld.long 0x0C 4.--7. " REVAND    ,RevAnd [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x0C 0.--3. "               CMOD    ,Customer Modified [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFD0++0x03
line.long 0x00 "TRCPIDR4,Peripheral ID Register 4"
bitfld.long 0x00 4.--7. " SIZE      ,Always 0x0 indicating a single 4KB component" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x00 0.--3. "               DES_2   ,JEP106 Continuation Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFF0++0x0F "Component Identification Registers"
line.long 0x00 "TRCCIDR0,Component ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PRMBL_0   ,PRMBL_0"
line.long 0x04 "TRCCIDR1,Component ID Register 1"
bitfld.long 0x04 4.--7. " CLASS     ,CLASS" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PRMBL_1 ,PRMBL_2" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCCIDR2,Component ID Register 2"
hexmask.long.byte 0x08 0.--7. 1. " PRMBL_2   ,PRMBL_2"
line.long 0x0C "TRCCIDR3,Component ID Register 3"
hexmask.long.byte 0x0C 0.--7. 1. " PRMBL_3   ,PRMBL_3"
tree.end
tree.end
endif
sif COMPonent.AVAILABLE("funnel16")
tree "FUNNEL16   "+COMPonent.NAME("FUNNEL16",-1)
base e:comp.base("funnel16",-1)
width 11.
group 0x000--0x007 "Funnel Control Registers"
line.long 0x000 "FUNCTRL,Funnel Control Register"
bitfld.long 0x000 8.--11. " MINHT    ,Minimum Hold Time[1]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
textline "                    "
bitfld.long 0x000 7. " ENSLP7   ,Enable Slave Port 7" "Disabled,Enabled"
bitfld.long 0x000 6. "  ENSLP6   ,Enable Slave Port 6" "Disabled,Enabled"
textline "                    "
bitfld.long 0x000 5. " ENSLP5   ,Enable Slave Port 5" "Disabled,Enabled"
bitfld.long 0x000 4. "  ENSLP4   ,Enable Slave Port 4" "Disabled,Enabled"
textline "                    "
bitfld.long 0x000 3. " ENSLP3   ,Enable Slave Port 3" "Disabled,Enabled"
bitfld.long 0x000 2. "  ENSLP2   ,Enable Slave Port 2" "Disabled,Enabled"
textline "                    "
bitfld.long 0x000 1. " ENSLP1   ,Enable Slave Port 1" "Disabled,Enabled"
bitfld.long 0x000 0. "  ENSLP0   ,Enable Slave Port 0" "Disabled,Enabled"
line.long 0x004 "PRIORCTRL,Priority Control Register"
bitfld.long 0x004 21.--23. " PRIOR7   ,Priority Port 7" "0,1,2,3,4,5,6,7"
bitfld.long 0x004 18.--20. "         PRIOR6   ,Priority Port 6" "0,1,2,3,4,5,6,7"
textline "                    "
bitfld.long 0x004 15.--17. " PRIOR5   ,Priority Port 5" "0,1,2,3,4,5,6,7"
bitfld.long 0x004 12.--14. "         PRIOR4   ,Priority Port 4" "0,1,2,3,4,5,6,7"
textline "                    "
bitfld.long 0x004 9.--11. " PRIOR3   ,Priority Port 3" "0,1,2,3,4,5,6,7"
bitfld.long 0x004 6.--8. "         PRIOR2   ,Priority Port 2" "0,1,2,3,4,5,6,7"
textline "                    "
bitfld.long 0x004 3.--5. " PRIOR1   ,Priority Port 1" "0,1,2,3,4,5,6,7"
bitfld.long 0x004 0.--2. "         PRIOR0   ,Priority Port 0" "0,1,2,3,4,5,6,7"
width 15.
tree "CoreSight Management Registers"
rgroup 0xF84--0xFA7
line.long 0x000 "LSR,Lock Status Register"
bitfld.long 0x000 0.--1. " LSR     ,Lock Status" "0x0,0x1,No Lock Access,0x3"
group 0xFC4--0xFC7
line.long 0x000 "DEVCSID,Device CoreSight ID"
hexmask.long.long 0x000 0.--7. 1. " CDID    ,Device CoreSight ID"
rgroup 0xFC8--0xFCF
line.long 0x000 "INP_OUTIDC,Input Port and Output ID Count"
hexmask.long.long 0x000 0.--7. 1. " ID      ,Input Port and Output ID Count"
line.long 0x004 "DTI,Device Type Identifier"
hexmask.long.byte 0x004 0.--7. 1. " DTI     ,Device Type Identifier"
group 0xf00--0xf03 "Integration Test Registers"
line.long 0x000 "ITCTRL,Integration Mode Control"
bitfld.long 0x000 0. " ENABLE       ,Enable Integration mode" "no,yes"
rgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAS[127] ,Returns the Value of the ATDATAS[127] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[119] ,Returns the Value of the ATDATAS[119] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[111] ,Returns the Value of the ATDATAS[111] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[103] ,Returns the Value of the ATDATAS[103] Input Pin" "Low,High"
textline "                       "
bitfld.long 0x000 8. "  ATDATAS[95]  ,Returns the Value of the ATDATAS[95] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[87]  ,Returns the Value of the ATDATAS[87] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[79]  ,Returns the Value of the ATDATAS[79] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[71]  ,Returns the Value of the ATDATAS[71] Input Pin" "Low,High"
textline "                       "
bitfld.long 0x000 8. "  ATDATAS[63]  ,Returns the Value of the ATDATAS[63] Input pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAS[55]  ,Returns the Value of the ATDATAS[55] Input Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAS[47]  ,Returns the Value of the ATDATAS[47] Input pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAS[39]  ,Returns the Value of the ATDATAS[39] Input Pin" "Low,High"
textline "                       "
bitfld.long 0x000 4. "  ATDATAS[31]  ,Returns the Value of the ATDATAS[31] Input Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAS[23]  ,Returns the Value of the ATDATAS[23] Input pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAS[15]  ,Returns the Value of the ATDATAS[15] Input Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAS[7]   ,Returns the Value of the ATDATAS[7] Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAS[0]   ,Returns the Value of the ATDATAS[0] Input Pin" "Low,High"
wgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDS     ,Drives the AFVALIDS Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYS     ,Drives the ATREADYS Output Pin" "Low,High"
rgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDS        ,Returns the Value of the ATIDS Input Pins"
rgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESS[1]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESS[0]  ,Returns the Value of the ATBYTESS[1] Input Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYS     ,Returns the Value of the AFREADYS Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDS     ,Returns the Value of the ATVALIDS Input Pin" "Low,High"
wgroup 0xEEC--0xEEF
line.long 0x000 "ITATBDATA0,ATB Data 0"
bitfld.long 0x000 8. " ATDATAM[127] ,Drives the ATDATAM[127] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[119] ,Drives the ATDATAM[119] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[111] ,Drives the ATDATAM[111] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[103] ,Drives the ATDATAM[103] Output Pin" "Low,High"
textline "                       "
bitfld.long 0x000 8. "  ATDATAM[95]  ,Drives the ATDATAM[95] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[87]  ,Drives the ATDATAM[87] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[79]  ,Drives the ATDATAM[79] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[71]  ,Drives the ATDATAM[71] Output Pin" "Low,High"
textline "                       "
bitfld.long 0x000 8. "  ATDATAM[63]  ,Drives the ATDATAM[63] Output pin" "Low,High"
bitfld.long 0x000 7. "  ATDATAM[55]  ,Drives the ATDATAM[55] Output Pin" "Low,High"
bitfld.long 0x000 6. "  ATDATAM[47]  ,Drives the ATDATAM[47] Output pin" "Low,High"
bitfld.long 0x000 5. "  ATDATAM[39]  ,Drives the ATDATAM[39] Output Pin" "Low,High"
textline "                       "
bitfld.long 0x000 4. "  ATDATAM[31]  ,Drives the ATDATAM[31] Output Pin" "Low,High"
bitfld.long 0x000 3. "  ATDATAM[23]  ,Drives the ATDATAM[23] Output pin" "Low,High"
bitfld.long 0x000 2. "  ATDATAM[15]  ,Drives the ATDATAM[15] Output Pin" "Low,High"
bitfld.long 0x000 1. "  ATDATAM[7]   ,Drives the ATDATAM[7] Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATDATAM[0]   ,Drives the ATDATAM[0] Output Pin" "Low,High"
rgroup 0xEF0--0xEF3
line.long 0x000 "ITATBCTR2,ATB Control 2"
bitfld.long 0x000 1. " AFVALIDM     ,Returns the Value of the AFVALIDM Input Pin" "Low,High"
bitfld.long 0x000 0. "  ATREADYM     ,Returns the Value of the ATREADYM Input Pin" "Low,High"
wgroup 0xEF4--0xEF7
line.long 0x000 "ITATBCTR1,ATB Control 1"
hexmask.long.byte 0x000 0.--6. " ATIDM        ,Drives the ATIDM Output Pins"
wgroup 0xEF8--0xEFB
line.long 0x000 "ITATBCTR0,ATB Control 0"
bitfld.long 0x000 9. " ATBYTESM[1]  ,Drives the ATBYTESM[1] Output Pin" "Low,High"
bitfld.long 0x000 8. "  ATBYTESM[0]  ,Drives the ATBYTESM[0] Output Pin" "Low,High"
bitfld.long 0x000 1. "  AFREADYM     ,Drives the AFREADYM Output Pin" "Low,High"
bitfld.long 0x000 0. "  ATVALIDM     ,Drives the ATVALIDM Output Pin" "Low,High"
rgroup.long 0xFE0++0x0F "Peripheral Identification Registers"
line.long 0x00 "TRCPIDR0,Peripheral ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PART_0    ,Part Number [7:0]"
line.long 0x04 "TRCPIDR1,Peripheral ID Register 1"
bitfld.long 0x04 4.--7. " DES_0     ,JEP106 Identity Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PART_1  ,Part Number [11:8]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCPIDR2,Peripheral ID Register 2"
bitfld.long 0x08 4.--7. " REVISION  ,Revision [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x08 3. "               JEDEC   ,JEDEC" "Low,High"
bitfld.long 0x08 0.--2. "             DES_1    ,JEP106 Identity Code [6:4]" "0,1,2,3,4,5,6,7"
line.long 0x0C "TRCPIDR3,Peripheral ID Register 3"
bitfld.long 0x0C 4.--7. " REVAND    ,RevAnd [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x0C 0.--3. "               CMOD    ,Customer Modified [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFD0++0x03
line.long 0x00 "TRCPIDR4,Peripheral ID Register 4"
bitfld.long 0x00 4.--7. " SIZE      ,Always 0x0 indicating a single 4KB component" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x00 0.--3. "               DES_2   ,JEP106 Continuation Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFF0++0x0F "Component Identification Registers"
line.long 0x00 "TRCCIDR0,Component ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PRMBL_0   ,PRMBL_0"
line.long 0x04 "TRCCIDR1,Component ID Register 1"
bitfld.long 0x04 4.--7. " CLASS     ,CLASS" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PRMBL_1 ,PRMBL_2" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCCIDR2,Component ID Register 2"
hexmask.long.byte 0x08 0.--7. 1. " PRMBL_2   ,PRMBL_2"
line.long 0x0C "TRCCIDR3,Component ID Register 3"
hexmask.long.byte 0x0C 0.--7. 1. " PRMBL_3   ,PRMBL_3"
tree.end
tree.end
endif
sif COMPonent.AVAILABLE("replicator1")
tree "REPLICATOR1   "+COMPonent.NAME("REPLICATOR1",-1)
base e:comp.base("replicator1",-1)
width 12.
group.long 0x00++0x03
line.long 0x00 "IDFILTER0,Allows the setting of ID filter for Master 0."
bitfld.long 0x00 7. " ID0_70_7F ,filitering id's" " No,Yes"
bitfld.long 0x00 6. " ID0_60_6F ,filitering id's" " No,Yes"
bitfld.long 0x00 5. " ID0_50_5F ,filitering id's" " No,Yes"
bitfld.long 0x00 4. " ID0_40_4F ,filitering id's" " No,Yes"
textline "                     "
bitfld.long 0x00 3. " ID0_30_3F ,filitering id's" " No,Yes"
bitfld.long 0x00 2. " ID0_20_2F ,filitering id's" " No,Yes"
bitfld.long 0x00 1. " ID0_10_1F ,filitering id's" " No,Yes"
bitfld.long 0x00 0. " ID0_00_0F ,filitering id's" " No,Yes"
group.long 0x04++0x03
line.long 0x00 "IDFILTER1,Allows the setting of ID filter for Master 1."
bitfld.long 0x00 7. " ID1_70_7F ,filitering id's" " No,Yes"
bitfld.long 0x00 6. " ID1_60_6F ,filitering id's" " No,Yes"
bitfld.long 0x00 5. " ID1_50_5F ,filitering id's" " No,Yes"
bitfld.long 0x00 4. " ID1_40_4F ,filitering id's" " No,Yes"
textline "                     "
bitfld.long 0x00 3. " ID1_30_3F ,filitering id's" " No,Yes"
bitfld.long 0x00 2. " ID1_20_2F ,filitering id's" " No,Yes"
bitfld.long 0x00 1. " ID1_10_1F ,filitering id's" " No,Yes"
bitfld.long 0x00 0. " ID1_00_0F ,filitering id's" " No,Yes"
tree "CoreSight Management Registers"
group.long 0xFA0++0x03
line.long 0x00 "CLAIMSET,This is used in conjunction with Claim Tag Clear Register. CLAIMCLR. This register forms one half of the Claim Tag value. This location allows individual bits to be set. write. and returns the number of bits that can be set. read."
bitfld.long 0x00 0.--3. " CLAIMSET              ,This claim tag bit is implemented" ",,,,,,,,,,,,,,,Claim_Tag_Implemented_Bits: These bits are present within the claim tag field"
group.long 0xFA4++0x03
line.long 0x00 "CLAIMCLR,This register is used in conjunction with Claim Tag Set Register. CLAIMSET. This register forms one half of the Claim Tag value. This location enables individual bits to be cleared. write. and returns the current Claim Tag value. read."
bitfld.long 0x00 0.--3. " CLAIMCLR              ,The value present reflects the current setting of the Claim Tag." "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
group.long 0xFB0++0x03
line.long 0x00 "LAR,This is used to enable write access to device registers."
hexmask.long 0x00 0.--31. 1. " ACCESS_W              ,A write of 0xC5ACCE55 enables further write access to this device. An invalid write has the affect of removing write access."
group.long 0xFB4++0x03
line.long 0x00 "LSR,This indicates the status of the lock control mechanism"
bitfld.long 0x00 2. " LOCKTYPE              ,Indicates if the Lock Access Register. 0xFB0. is implemented as 8-bit or 32-bit." "Size_32bit: This component implements a 32-bit Lock Access Register,"
textline "                      "
bitfld.long 0x00 1. "LOCKGRANT             ,Returns the current status of the Lock." "Access_permitted: Write access is allowed to this device,Device_Locked: Write access to the component is blocked"
textline "                      "
bitfld.long 0x00 0. "LOCKEXIST             ,Indicates that a lock control mechanism exists for this device." "Lock_Not_Present: No lock control mechanism exists,Lock_Present: Lock control mechanism is present"
group.long 0xFB8++0x03
line.long 0x00 "AUTHSTATUS,Reports the required security level and current status of those enables. Where functionality changes on a given security level then this change in status must be reported in this register"
bitfld.long 0x00 6.--7. " SNID                  ,Indicates the security level for secure non-invasive debug" "Not_Implemented: Functionality not implemented or controlled elsewhere,,,"
textline "                      "
bitfld.long 0x00 4.--5. "SID                   ,Indicates the security level for secure invasive debug" "Not_Implemented: Functionality not implemented or controlled elsewhere,,,"
textline "                      "
bitfld.long 0x00 2.--3. "NSNID                 ,Indicates the security level for non-secure non-invasive debug" "Not_Implemented: Functionality not implemented or controlled elsewhere,,,"
textline "                      "
bitfld.long 0x00 0.--1. "NSID                  ,Indicates the security level for non-secure invasive debug" "Not_Implemented: Functionality not implemented or controlled elsewhere,,,"
group.long 0xEF8++0x03 "Integration Test Registers"
line.long 0x00 "ITATBCTR1,Returns the value of the ATREADYM0. ATREADYM1 and ATVALIDS inputs in integration mode."
bitfld.long 0x00 3. " ATVALIDS_R            ,Reads the value of the ATVALIDS input:" "LOW: Pin is at logic 0,HIGH: Pin is at logic 1"
textline "                      "
bitfld.long 0x00 1. "ATREADYM1_R           ,Reads the value of the ATREADYM1 input:" "LOW: Pin is at logic 0,HIGH: Pin is at logic 1"
textline "                      "
bitfld.long 0x00 0. "ATREADYM0_R           ,Reads the value of the ATREADYM0 input:" "LOW: Pin is at logic 0,HIGH: Pin is at logic 1"
group.long 0xEFC++0x03
line.long 0x00 "ITATBCTR0,Controls the value of the ATVALIDM0. ATVALIDM1 and ATREADYS outputs in integration mode."
bitfld.long 0x00 4. " ATREADYS_W            ,Sets the value of the ATREADYS output:" "LOW: Drive logic 0 on the ATREADYS output,HIGH: Drive logic 1 on the ATREADYS output"
textline "                      "
bitfld.long 0x00 2. "ATVALIDM1_W           ,Sets the value of the ATVALIDM1 output:" "LOW: Drive logic 0 on the ATVALIDM1 output,HIGH: Drive logic 1 on the ATVALIDM1 output"
textline "                      "
bitfld.long 0x00 0. "ATVALIDM0_W           ,Sets the value of the ATVALIDM0 output:" "LOW: Drive logic 0 on the ATVALIDM0 output,HIGH: Drive logic 1 on the ATVALIDM0 output"
group.long 0xF00++0x03
line.long 0x00 "ITCTRL,Used to enable topology detection"
bitfld.long 0x00 0. " Integration_mode      ,Enables the component to switch from functional mode to integration mode and back. If no integration functionality is implemented. this register must read as zero." "Functional_mode: Disable integration mode,Integration_mode: Enable integration mode"
rgroup.long 0xFE0++0x0F "Peripheral Identification Registers"
line.long 0x00 "TRCPIDR0,Peripheral ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PART_0    ,Part Number [7:0]"
line.long 0x04 "TRCPIDR1,Peripheral ID Register 1"
bitfld.long 0x04 4.--7. " DES_0     ,JEP106 Identity Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PART_1  ,Part Number [11:8]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCPIDR2,Peripheral ID Register 2"
bitfld.long 0x08 4.--7. " REVISION  ,Revision [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x08 3. "               JEDEC   ,JEDEC" "Low,High"
bitfld.long 0x08 0.--2. "             DES_1    ,JEP106 Identity Code [6:4]" "0,1,2,3,4,5,6,7"
line.long 0x0C "TRCPIDR3,Peripheral ID Register 3"
bitfld.long 0x0C 4.--7. " REVAND    ,RevAnd [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x0C 0.--3. "               CMOD    ,Customer Modified [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFD0++0x03
line.long 0x00 "TRCPIDR4,Peripheral ID Register 4"
bitfld.long 0x00 4.--7. " SIZE      ,Always 0x0 indicating a single 4KB component" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x00 0.--3. "               DES_2   ,JEP106 Continuation Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFF0++0x0F "Component Identification Registers"
line.long 0x00 "TRCCIDR0,Component ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PRMBL_0   ,PRMBL_0"
line.long 0x04 "TRCCIDR1,Component ID Register 1"
bitfld.long 0x04 4.--7. " CLASS     ,CLASS" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PRMBL_1 ,PRMBL_2" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCCIDR2,Component ID Register 2"
hexmask.long.byte 0x08 0.--7. 1. " PRMBL_2   ,PRMBL_2"
line.long 0x0C "TRCCIDR3,Component ID Register 3"
hexmask.long.byte 0x0C 0.--7. 1. " PRMBL_3   ,PRMBL_3"
tree.end
tree.end
endif
sif COMPonent.AVAILABLE("replicator2")
tree "REPLICATOR2   "+COMPonent.NAME("REPLICATOR2",-1)
base e:comp.base("replicator2",-1)
width 12.
group.long 0x00++0x03
line.long 0x00 "IDFILTER0,Allows the setting of ID filter for Master 0."
bitfld.long 0x00 7. " ID0_70_7F ,filitering id's" " No,Yes"
bitfld.long 0x00 6. " ID0_60_6F ,filitering id's" " No,Yes"
bitfld.long 0x00 5. " ID0_50_5F ,filitering id's" " No,Yes"
bitfld.long 0x00 4. " ID0_40_4F ,filitering id's" " No,Yes"
textline "                     "
bitfld.long 0x00 3. " ID0_30_3F ,filitering id's" " No,Yes"
bitfld.long 0x00 2. " ID0_20_2F ,filitering id's" " No,Yes"
bitfld.long 0x00 1. " ID0_10_1F ,filitering id's" " No,Yes"
bitfld.long 0x00 0. " ID0_00_0F ,filitering id's" " No,Yes"
group.long 0x04++0x03
line.long 0x00 "IDFILTER1,Allows the setting of ID filter for Master 1."
bitfld.long 0x00 7. " ID1_70_7F ,filitering id's" " No,Yes"
bitfld.long 0x00 6. " ID1_60_6F ,filitering id's" " No,Yes"
bitfld.long 0x00 5. " ID1_50_5F ,filitering id's" " No,Yes"
bitfld.long 0x00 4. " ID1_40_4F ,filitering id's" " No,Yes"
textline "                     "
bitfld.long 0x00 3. " ID1_30_3F ,filitering id's" " No,Yes"
bitfld.long 0x00 2. " ID1_20_2F ,filitering id's" " No,Yes"
bitfld.long 0x00 1. " ID1_10_1F ,filitering id's" " No,Yes"
bitfld.long 0x00 0. " ID1_00_0F ,filitering id's" " No,Yes"
tree "CoreSight Management Registers"
group.long 0xFA0++0x03
line.long 0x00 "CLAIMSET,This is used in conjunction with Claim Tag Clear Register. CLAIMCLR. This register forms one half of the Claim Tag value. This location allows individual bits to be set. write. and returns the number of bits that can be set. read."
bitfld.long 0x00 0.--3. " CLAIMSET              ,This claim tag bit is implemented" ",,,,,,,,,,,,,,,Claim_Tag_Implemented_Bits: These bits are present within the claim tag field"
group.long 0xFA4++0x03
line.long 0x00 "CLAIMCLR,This register is used in conjunction with Claim Tag Set Register. CLAIMSET. This register forms one half of the Claim Tag value. This location enables individual bits to be cleared. write. and returns the current Claim Tag value. read."
bitfld.long 0x00 0.--3. " CLAIMCLR              ,The value present reflects the current setting of the Claim Tag." "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
group.long 0xFB0++0x03
line.long 0x00 "LAR,This is used to enable write access to device registers."
hexmask.long 0x00 0.--31. 1. " ACCESS_W              ,A write of 0xC5ACCE55 enables further write access to this device. An invalid write has the affect of removing write access."
group.long 0xFB4++0x03
line.long 0x00 "LSR,This indicates the status of the lock control mechanism"
bitfld.long 0x00 2. " LOCKTYPE              ,Indicates if the Lock Access Register. 0xFB0. is implemented as 8-bit or 32-bit." "Size_32bit: This component implements a 32-bit Lock Access Register,"
textline "                      "
bitfld.long 0x00 1. "LOCKGRANT             ,Returns the current status of the Lock." "Access_permitted: Write access is allowed to this device,Device_Locked: Write access to the component is blocked"
textline "                      "
bitfld.long 0x00 0. "LOCKEXIST             ,Indicates that a lock control mechanism exists for this device." "Lock_Not_Present: No lock control mechanism exists,Lock_Present: Lock control mechanism is present"
group.long 0xFB8++0x03
line.long 0x00 "AUTHSTATUS,Reports the required security level and current status of those enables. Where functionality changes on a given security level then this change in status must be reported in this register"
bitfld.long 0x00 6.--7. " SNID                  ,Indicates the security level for secure non-invasive debug" "Not_Implemented: Functionality not implemented or controlled elsewhere,,,"
textline "                      "
bitfld.long 0x00 4.--5. "SID                   ,Indicates the security level for secure invasive debug" "Not_Implemented: Functionality not implemented or controlled elsewhere,,,"
textline "                      "
bitfld.long 0x00 2.--3. "NSNID                 ,Indicates the security level for non-secure non-invasive debug" "Not_Implemented: Functionality not implemented or controlled elsewhere,,,"
textline "                      "
bitfld.long 0x00 0.--1. "NSID                  ,Indicates the security level for non-secure invasive debug" "Not_Implemented: Functionality not implemented or controlled elsewhere,,,"
group.long 0xEF8++0x03 "Integration Test Registers"
line.long 0x00 "ITATBCTR1,Returns the value of the ATREADYM0. ATREADYM1 and ATVALIDS inputs in integration mode."
bitfld.long 0x00 3. " ATVALIDS_R            ,Reads the value of the ATVALIDS input:" "LOW: Pin is at logic 0,HIGH: Pin is at logic 1"
textline "                      "
bitfld.long 0x00 1. "ATREADYM1_R           ,Reads the value of the ATREADYM1 input:" "LOW: Pin is at logic 0,HIGH: Pin is at logic 1"
textline "                      "
bitfld.long 0x00 0. "ATREADYM0_R           ,Reads the value of the ATREADYM0 input:" "LOW: Pin is at logic 0,HIGH: Pin is at logic 1"
group.long 0xEFC++0x03
line.long 0x00 "ITATBCTR0,Controls the value of the ATVALIDM0. ATVALIDM1 and ATREADYS outputs in integration mode."
bitfld.long 0x00 4. " ATREADYS_W            ,Sets the value of the ATREADYS output:" "LOW: Drive logic 0 on the ATREADYS output,HIGH: Drive logic 1 on the ATREADYS output"
textline "                      "
bitfld.long 0x00 2. "ATVALIDM1_W           ,Sets the value of the ATVALIDM1 output:" "LOW: Drive logic 0 on the ATVALIDM1 output,HIGH: Drive logic 1 on the ATVALIDM1 output"
textline "                      "
bitfld.long 0x00 0. "ATVALIDM0_W           ,Sets the value of the ATVALIDM0 output:" "LOW: Drive logic 0 on the ATVALIDM0 output,HIGH: Drive logic 1 on the ATVALIDM0 output"
group.long 0xF00++0x03
line.long 0x00 "ITCTRL,Used to enable topology detection"
bitfld.long 0x00 0. " Integration_mode      ,Enables the component to switch from functional mode to integration mode and back. If no integration functionality is implemented. this register must read as zero." "Functional_mode: Disable integration mode,Integration_mode: Enable integration mode"
rgroup.long 0xFE0++0x0F "Peripheral Identification Registers"
line.long 0x00 "TRCPIDR0,Peripheral ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PART_0    ,Part Number [7:0]"
line.long 0x04 "TRCPIDR1,Peripheral ID Register 1"
bitfld.long 0x04 4.--7. " DES_0     ,JEP106 Identity Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PART_1  ,Part Number [11:8]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCPIDR2,Peripheral ID Register 2"
bitfld.long 0x08 4.--7. " REVISION  ,Revision [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x08 3. "               JEDEC   ,JEDEC" "Low,High"
bitfld.long 0x08 0.--2. "             DES_1    ,JEP106 Identity Code [6:4]" "0,1,2,3,4,5,6,7"
line.long 0x0C "TRCPIDR3,Peripheral ID Register 3"
bitfld.long 0x0C 4.--7. " REVAND    ,RevAnd [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x0C 0.--3. "               CMOD    ,Customer Modified [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFD0++0x03
line.long 0x00 "TRCPIDR4,Peripheral ID Register 4"
bitfld.long 0x00 4.--7. " SIZE      ,Always 0x0 indicating a single 4KB component" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x00 0.--3. "               DES_2   ,JEP106 Continuation Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFF0++0x0F "Component Identification Registers"
line.long 0x00 "TRCCIDR0,Component ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PRMBL_0   ,PRMBL_0"
line.long 0x04 "TRCCIDR1,Component ID Register 1"
bitfld.long 0x04 4.--7. " CLASS     ,CLASS" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PRMBL_1 ,PRMBL_2" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCCIDR2,Component ID Register 2"
hexmask.long.byte 0x08 0.--7. 1. " PRMBL_2   ,PRMBL_2"
line.long 0x0C "TRCCIDR3,Component ID Register 3"
hexmask.long.byte 0x0C 0.--7. 1. " PRMBL_3   ,PRMBL_3"
tree.end
tree.end
endif
sif COMPonent.AVAILABLE("replicator3")
tree "REPLICATOR3   "+COMPonent.NAME("REPLICATOR3",-1)
base e:comp.base("replicator3",-1)
width 12.
group.long 0x00++0x03
line.long 0x00 "IDFILTER0,Allows the setting of ID filter for Master 0."
bitfld.long 0x00 7. " ID0_70_7F ,filitering id's" " No,Yes"
bitfld.long 0x00 6. " ID0_60_6F ,filitering id's" " No,Yes"
bitfld.long 0x00 5. " ID0_50_5F ,filitering id's" " No,Yes"
bitfld.long 0x00 4. " ID0_40_4F ,filitering id's" " No,Yes"
textline "                     "
bitfld.long 0x00 3. " ID0_30_3F ,filitering id's" " No,Yes"
bitfld.long 0x00 2. " ID0_20_2F ,filitering id's" " No,Yes"
bitfld.long 0x00 1. " ID0_10_1F ,filitering id's" " No,Yes"
bitfld.long 0x00 0. " ID0_00_0F ,filitering id's" " No,Yes"
group.long 0x04++0x03
line.long 0x00 "IDFILTER1,Allows the setting of ID filter for Master 1."
bitfld.long 0x00 7. " ID1_70_7F ,filitering id's" " No,Yes"
bitfld.long 0x00 6. " ID1_60_6F ,filitering id's" " No,Yes"
bitfld.long 0x00 5. " ID1_50_5F ,filitering id's" " No,Yes"
bitfld.long 0x00 4. " ID1_40_4F ,filitering id's" " No,Yes"
textline "                     "
bitfld.long 0x00 3. " ID1_30_3F ,filitering id's" " No,Yes"
bitfld.long 0x00 2. " ID1_20_2F ,filitering id's" " No,Yes"
bitfld.long 0x00 1. " ID1_10_1F ,filitering id's" " No,Yes"
bitfld.long 0x00 0. " ID1_00_0F ,filitering id's" " No,Yes"
tree "CoreSight Management Registers"
group.long 0xFA0++0x03
line.long 0x00 "CLAIMSET,This is used in conjunction with Claim Tag Clear Register. CLAIMCLR. This register forms one half of the Claim Tag value. This location allows individual bits to be set. write. and returns the number of bits that can be set. read."
bitfld.long 0x00 0.--3. " CLAIMSET              ,This claim tag bit is implemented" ",,,,,,,,,,,,,,,Claim_Tag_Implemented_Bits: These bits are present within the claim tag field"
group.long 0xFA4++0x03
line.long 0x00 "CLAIMCLR,This register is used in conjunction with Claim Tag Set Register. CLAIMSET. This register forms one half of the Claim Tag value. This location enables individual bits to be cleared. write. and returns the current Claim Tag value. read."
bitfld.long 0x00 0.--3. " CLAIMCLR              ,The value present reflects the current setting of the Claim Tag." "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
group.long 0xFB0++0x03
line.long 0x00 "LAR,This is used to enable write access to device registers."
hexmask.long 0x00 0.--31. 1. " ACCESS_W              ,A write of 0xC5ACCE55 enables further write access to this device. An invalid write has the affect of removing write access."
group.long 0xFB4++0x03
line.long 0x00 "LSR,This indicates the status of the lock control mechanism"
bitfld.long 0x00 2. " LOCKTYPE              ,Indicates if the Lock Access Register. 0xFB0. is implemented as 8-bit or 32-bit." "Size_32bit: This component implements a 32-bit Lock Access Register,"
textline "                      "
bitfld.long 0x00 1. "LOCKGRANT             ,Returns the current status of the Lock." "Access_permitted: Write access is allowed to this device,Device_Locked: Write access to the component is blocked"
textline "                      "
bitfld.long 0x00 0. "LOCKEXIST             ,Indicates that a lock control mechanism exists for this device." "Lock_Not_Present: No lock control mechanism exists,Lock_Present: Lock control mechanism is present"
group.long 0xFB8++0x03
line.long 0x00 "AUTHSTATUS,Reports the required security level and current status of those enables. Where functionality changes on a given security level then this change in status must be reported in this register"
bitfld.long 0x00 6.--7. " SNID                  ,Indicates the security level for secure non-invasive debug" "Not_Implemented: Functionality not implemented or controlled elsewhere,,,"
textline "                      "
bitfld.long 0x00 4.--5. "SID                   ,Indicates the security level for secure invasive debug" "Not_Implemented: Functionality not implemented or controlled elsewhere,,,"
textline "                      "
bitfld.long 0x00 2.--3. "NSNID                 ,Indicates the security level for non-secure non-invasive debug" "Not_Implemented: Functionality not implemented or controlled elsewhere,,,"
textline "                      "
bitfld.long 0x00 0.--1. "NSID                  ,Indicates the security level for non-secure invasive debug" "Not_Implemented: Functionality not implemented or controlled elsewhere,,,"
group.long 0xEF8++0x03 "Integration Test Registers"
line.long 0x00 "ITATBCTR1,Returns the value of the ATREADYM0. ATREADYM1 and ATVALIDS inputs in integration mode."
bitfld.long 0x00 3. " ATVALIDS_R            ,Reads the value of the ATVALIDS input:" "LOW: Pin is at logic 0,HIGH: Pin is at logic 1"
textline "                      "
bitfld.long 0x00 1. "ATREADYM1_R           ,Reads the value of the ATREADYM1 input:" "LOW: Pin is at logic 0,HIGH: Pin is at logic 1"
textline "                      "
bitfld.long 0x00 0. "ATREADYM0_R           ,Reads the value of the ATREADYM0 input:" "LOW: Pin is at logic 0,HIGH: Pin is at logic 1"
group.long 0xEFC++0x03
line.long 0x00 "ITATBCTR0,Controls the value of the ATVALIDM0. ATVALIDM1 and ATREADYS outputs in integration mode."
bitfld.long 0x00 4. " ATREADYS_W            ,Sets the value of the ATREADYS output:" "LOW: Drive logic 0 on the ATREADYS output,HIGH: Drive logic 1 on the ATREADYS output"
textline "                      "
bitfld.long 0x00 2. "ATVALIDM1_W           ,Sets the value of the ATVALIDM1 output:" "LOW: Drive logic 0 on the ATVALIDM1 output,HIGH: Drive logic 1 on the ATVALIDM1 output"
textline "                      "
bitfld.long 0x00 0. "ATVALIDM0_W           ,Sets the value of the ATVALIDM0 output:" "LOW: Drive logic 0 on the ATVALIDM0 output,HIGH: Drive logic 1 on the ATVALIDM0 output"
group.long 0xF00++0x03
line.long 0x00 "ITCTRL,Used to enable topology detection"
bitfld.long 0x00 0. " Integration_mode      ,Enables the component to switch from functional mode to integration mode and back. If no integration functionality is implemented. this register must read as zero." "Functional_mode: Disable integration mode,Integration_mode: Enable integration mode"
rgroup.long 0xFE0++0x0F "Peripheral Identification Registers"
line.long 0x00 "TRCPIDR0,Peripheral ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PART_0    ,Part Number [7:0]"
line.long 0x04 "TRCPIDR1,Peripheral ID Register 1"
bitfld.long 0x04 4.--7. " DES_0     ,JEP106 Identity Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PART_1  ,Part Number [11:8]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCPIDR2,Peripheral ID Register 2"
bitfld.long 0x08 4.--7. " REVISION  ,Revision [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x08 3. "               JEDEC   ,JEDEC" "Low,High"
bitfld.long 0x08 0.--2. "             DES_1    ,JEP106 Identity Code [6:4]" "0,1,2,3,4,5,6,7"
line.long 0x0C "TRCPIDR3,Peripheral ID Register 3"
bitfld.long 0x0C 4.--7. " REVAND    ,RevAnd [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x0C 0.--3. "               CMOD    ,Customer Modified [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFD0++0x03
line.long 0x00 "TRCPIDR4,Peripheral ID Register 4"
bitfld.long 0x00 4.--7. " SIZE      ,Always 0x0 indicating a single 4KB component" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x00 0.--3. "               DES_2   ,JEP106 Continuation Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFF0++0x0F "Component Identification Registers"
line.long 0x00 "TRCCIDR0,Component ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PRMBL_0   ,PRMBL_0"
line.long 0x04 "TRCCIDR1,Component ID Register 1"
bitfld.long 0x04 4.--7. " CLASS     ,CLASS" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PRMBL_1 ,PRMBL_2" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCCIDR2,Component ID Register 2"
hexmask.long.byte 0x08 0.--7. 1. " PRMBL_2   ,PRMBL_2"
line.long 0x0C "TRCCIDR3,Component ID Register 3"
hexmask.long.byte 0x0C 0.--7. 1. " PRMBL_3   ,PRMBL_3"
tree.end
tree.end
endif
sif COMPonent.AVAILABLE("replicator4")
tree "REPLICATOR4   "+COMPonent.NAME("REPLICATOR4",-1)
base e:comp.base("replicator4",-1)
width 12.
group.long 0x00++0x03
line.long 0x00 "IDFILTER0,Allows the setting of ID filter for Master 0."
bitfld.long 0x00 7. " ID0_70_7F ,filitering id's" " No,Yes"
bitfld.long 0x00 6. " ID0_60_6F ,filitering id's" " No,Yes"
bitfld.long 0x00 5. " ID0_50_5F ,filitering id's" " No,Yes"
bitfld.long 0x00 4. " ID0_40_4F ,filitering id's" " No,Yes"
textline "                     "
bitfld.long 0x00 3. " ID0_30_3F ,filitering id's" " No,Yes"
bitfld.long 0x00 2. " ID0_20_2F ,filitering id's" " No,Yes"
bitfld.long 0x00 1. " ID0_10_1F ,filitering id's" " No,Yes"
bitfld.long 0x00 0. " ID0_00_0F ,filitering id's" " No,Yes"
group.long 0x04++0x03
line.long 0x00 "IDFILTER1,Allows the setting of ID filter for Master 1."
bitfld.long 0x00 7. " ID1_70_7F ,filitering id's" " No,Yes"
bitfld.long 0x00 6. " ID1_60_6F ,filitering id's" " No,Yes"
bitfld.long 0x00 5. " ID1_50_5F ,filitering id's" " No,Yes"
bitfld.long 0x00 4. " ID1_40_4F ,filitering id's" " No,Yes"
textline "                     "
bitfld.long 0x00 3. " ID1_30_3F ,filitering id's" " No,Yes"
bitfld.long 0x00 2. " ID1_20_2F ,filitering id's" " No,Yes"
bitfld.long 0x00 1. " ID1_10_1F ,filitering id's" " No,Yes"
bitfld.long 0x00 0. " ID1_00_0F ,filitering id's" " No,Yes"
tree "CoreSight Management Registers"
group.long 0xFA0++0x03
line.long 0x00 "CLAIMSET,This is used in conjunction with Claim Tag Clear Register. CLAIMCLR. This register forms one half of the Claim Tag value. This location allows individual bits to be set. write. and returns the number of bits that can be set. read."
bitfld.long 0x00 0.--3. " CLAIMSET              ,This claim tag bit is implemented" ",,,,,,,,,,,,,,,Claim_Tag_Implemented_Bits: These bits are present within the claim tag field"
group.long 0xFA4++0x03
line.long 0x00 "CLAIMCLR,This register is used in conjunction with Claim Tag Set Register. CLAIMSET. This register forms one half of the Claim Tag value. This location enables individual bits to be cleared. write. and returns the current Claim Tag value. read."
bitfld.long 0x00 0.--3. " CLAIMCLR              ,The value present reflects the current setting of the Claim Tag." "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
group.long 0xFB0++0x03
line.long 0x00 "LAR,This is used to enable write access to device registers."
hexmask.long 0x00 0.--31. 1. " ACCESS_W              ,A write of 0xC5ACCE55 enables further write access to this device. An invalid write has the affect of removing write access."
group.long 0xFB4++0x03
line.long 0x00 "LSR,This indicates the status of the lock control mechanism"
bitfld.long 0x00 2. " LOCKTYPE              ,Indicates if the Lock Access Register. 0xFB0. is implemented as 8-bit or 32-bit." "Size_32bit: This component implements a 32-bit Lock Access Register,"
textline "                      "
bitfld.long 0x00 1. "LOCKGRANT             ,Returns the current status of the Lock." "Access_permitted: Write access is allowed to this device,Device_Locked: Write access to the component is blocked"
textline "                      "
bitfld.long 0x00 0. "LOCKEXIST             ,Indicates that a lock control mechanism exists for this device." "Lock_Not_Present: No lock control mechanism exists,Lock_Present: Lock control mechanism is present"
group.long 0xFB8++0x03
line.long 0x00 "AUTHSTATUS,Reports the required security level and current status of those enables. Where functionality changes on a given security level then this change in status must be reported in this register"
bitfld.long 0x00 6.--7. " SNID                  ,Indicates the security level for secure non-invasive debug" "Not_Implemented: Functionality not implemented or controlled elsewhere,,,"
textline "                      "
bitfld.long 0x00 4.--5. "SID                   ,Indicates the security level for secure invasive debug" "Not_Implemented: Functionality not implemented or controlled elsewhere,,,"
textline "                      "
bitfld.long 0x00 2.--3. "NSNID                 ,Indicates the security level for non-secure non-invasive debug" "Not_Implemented: Functionality not implemented or controlled elsewhere,,,"
textline "                      "
bitfld.long 0x00 0.--1. "NSID                  ,Indicates the security level for non-secure invasive debug" "Not_Implemented: Functionality not implemented or controlled elsewhere,,,"
group.long 0xEF8++0x03 "Integration Test Registers"
line.long 0x00 "ITATBCTR1,Returns the value of the ATREADYM0. ATREADYM1 and ATVALIDS inputs in integration mode."
bitfld.long 0x00 3. " ATVALIDS_R            ,Reads the value of the ATVALIDS input:" "LOW: Pin is at logic 0,HIGH: Pin is at logic 1"
textline "                      "
bitfld.long 0x00 1. "ATREADYM1_R           ,Reads the value of the ATREADYM1 input:" "LOW: Pin is at logic 0,HIGH: Pin is at logic 1"
textline "                      "
bitfld.long 0x00 0. "ATREADYM0_R           ,Reads the value of the ATREADYM0 input:" "LOW: Pin is at logic 0,HIGH: Pin is at logic 1"
group.long 0xEFC++0x03
line.long 0x00 "ITATBCTR0,Controls the value of the ATVALIDM0. ATVALIDM1 and ATREADYS outputs in integration mode."
bitfld.long 0x00 4. " ATREADYS_W            ,Sets the value of the ATREADYS output:" "LOW: Drive logic 0 on the ATREADYS output,HIGH: Drive logic 1 on the ATREADYS output"
textline "                      "
bitfld.long 0x00 2. "ATVALIDM1_W           ,Sets the value of the ATVALIDM1 output:" "LOW: Drive logic 0 on the ATVALIDM1 output,HIGH: Drive logic 1 on the ATVALIDM1 output"
textline "                      "
bitfld.long 0x00 0. "ATVALIDM0_W           ,Sets the value of the ATVALIDM0 output:" "LOW: Drive logic 0 on the ATVALIDM0 output,HIGH: Drive logic 1 on the ATVALIDM0 output"
group.long 0xF00++0x03
line.long 0x00 "ITCTRL,Used to enable topology detection"
bitfld.long 0x00 0. " Integration_mode      ,Enables the component to switch from functional mode to integration mode and back. If no integration functionality is implemented. this register must read as zero." "Functional_mode: Disable integration mode,Integration_mode: Enable integration mode"
rgroup.long 0xFE0++0x0F "Peripheral Identification Registers"
line.long 0x00 "TRCPIDR0,Peripheral ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PART_0    ,Part Number [7:0]"
line.long 0x04 "TRCPIDR1,Peripheral ID Register 1"
bitfld.long 0x04 4.--7. " DES_0     ,JEP106 Identity Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PART_1  ,Part Number [11:8]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCPIDR2,Peripheral ID Register 2"
bitfld.long 0x08 4.--7. " REVISION  ,Revision [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x08 3. "               JEDEC   ,JEDEC" "Low,High"
bitfld.long 0x08 0.--2. "             DES_1    ,JEP106 Identity Code [6:4]" "0,1,2,3,4,5,6,7"
line.long 0x0C "TRCPIDR3,Peripheral ID Register 3"
bitfld.long 0x0C 4.--7. " REVAND    ,RevAnd [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x0C 0.--3. "               CMOD    ,Customer Modified [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFD0++0x03
line.long 0x00 "TRCPIDR4,Peripheral ID Register 4"
bitfld.long 0x00 4.--7. " SIZE      ,Always 0x0 indicating a single 4KB component" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x00 0.--3. "               DES_2   ,JEP106 Continuation Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFF0++0x0F "Component Identification Registers"
line.long 0x00 "TRCCIDR0,Component ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PRMBL_0   ,PRMBL_0"
line.long 0x04 "TRCCIDR1,Component ID Register 1"
bitfld.long 0x04 4.--7. " CLASS     ,CLASS" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PRMBL_1 ,PRMBL_2" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCCIDR2,Component ID Register 2"
hexmask.long.byte 0x08 0.--7. 1. " PRMBL_2   ,PRMBL_2"
line.long 0x0C "TRCCIDR3,Component ID Register 3"
hexmask.long.byte 0x0C 0.--7. 1. " PRMBL_3   ,PRMBL_3"
tree.end
tree.end
endif
sif COMPonent.AVAILABLE("replicator5")
tree "REPLICATOR5   "+COMPonent.NAME("REPLICATOR5",-1)
base e:comp.base("replicator5",-1)
width 12.
group.long 0x00++0x03
line.long 0x00 "IDFILTER0,Allows the setting of ID filter for Master 0."
bitfld.long 0x00 7. " ID0_70_7F ,filitering id's" " No,Yes"
bitfld.long 0x00 6. " ID0_60_6F ,filitering id's" " No,Yes"
bitfld.long 0x00 5. " ID0_50_5F ,filitering id's" " No,Yes"
bitfld.long 0x00 4. " ID0_40_4F ,filitering id's" " No,Yes"
textline "                     "
bitfld.long 0x00 3. " ID0_30_3F ,filitering id's" " No,Yes"
bitfld.long 0x00 2. " ID0_20_2F ,filitering id's" " No,Yes"
bitfld.long 0x00 1. " ID0_10_1F ,filitering id's" " No,Yes"
bitfld.long 0x00 0. " ID0_00_0F ,filitering id's" " No,Yes"
group.long 0x04++0x03
line.long 0x00 "IDFILTER1,Allows the setting of ID filter for Master 1."
bitfld.long 0x00 7. " ID1_70_7F ,filitering id's" " No,Yes"
bitfld.long 0x00 6. " ID1_60_6F ,filitering id's" " No,Yes"
bitfld.long 0x00 5. " ID1_50_5F ,filitering id's" " No,Yes"
bitfld.long 0x00 4. " ID1_40_4F ,filitering id's" " No,Yes"
textline "                     "
bitfld.long 0x00 3. " ID1_30_3F ,filitering id's" " No,Yes"
bitfld.long 0x00 2. " ID1_20_2F ,filitering id's" " No,Yes"
bitfld.long 0x00 1. " ID1_10_1F ,filitering id's" " No,Yes"
bitfld.long 0x00 0. " ID1_00_0F ,filitering id's" " No,Yes"
tree "CoreSight Management Registers"
group.long 0xFA0++0x03
line.long 0x00 "CLAIMSET,This is used in conjunction with Claim Tag Clear Register. CLAIMCLR. This register forms one half of the Claim Tag value. This location allows individual bits to be set. write. and returns the number of bits that can be set. read."
bitfld.long 0x00 0.--3. " CLAIMSET              ,This claim tag bit is implemented" ",,,,,,,,,,,,,,,Claim_Tag_Implemented_Bits: These bits are present within the claim tag field"
group.long 0xFA4++0x03
line.long 0x00 "CLAIMCLR,This register is used in conjunction with Claim Tag Set Register. CLAIMSET. This register forms one half of the Claim Tag value. This location enables individual bits to be cleared. write. and returns the current Claim Tag value. read."
bitfld.long 0x00 0.--3. " CLAIMCLR              ,The value present reflects the current setting of the Claim Tag." "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
group.long 0xFB0++0x03
line.long 0x00 "LAR,This is used to enable write access to device registers."
hexmask.long 0x00 0.--31. 1. " ACCESS_W              ,A write of 0xC5ACCE55 enables further write access to this device. An invalid write has the affect of removing write access."
group.long 0xFB4++0x03
line.long 0x00 "LSR,This indicates the status of the lock control mechanism"
bitfld.long 0x00 2. " LOCKTYPE              ,Indicates if the Lock Access Register. 0xFB0. is implemented as 8-bit or 32-bit." "Size_32bit: This component implements a 32-bit Lock Access Register,"
textline "                      "
bitfld.long 0x00 1. "LOCKGRANT             ,Returns the current status of the Lock." "Access_permitted: Write access is allowed to this device,Device_Locked: Write access to the component is blocked"
textline "                      "
bitfld.long 0x00 0. "LOCKEXIST             ,Indicates that a lock control mechanism exists for this device." "Lock_Not_Present: No lock control mechanism exists,Lock_Present: Lock control mechanism is present"
group.long 0xFB8++0x03
line.long 0x00 "AUTHSTATUS,Reports the required security level and current status of those enables. Where functionality changes on a given security level then this change in status must be reported in this register"
bitfld.long 0x00 6.--7. " SNID                  ,Indicates the security level for secure non-invasive debug" "Not_Implemented: Functionality not implemented or controlled elsewhere,,,"
textline "                      "
bitfld.long 0x00 4.--5. "SID                   ,Indicates the security level for secure invasive debug" "Not_Implemented: Functionality not implemented or controlled elsewhere,,,"
textline "                      "
bitfld.long 0x00 2.--3. "NSNID                 ,Indicates the security level for non-secure non-invasive debug" "Not_Implemented: Functionality not implemented or controlled elsewhere,,,"
textline "                      "
bitfld.long 0x00 0.--1. "NSID                  ,Indicates the security level for non-secure invasive debug" "Not_Implemented: Functionality not implemented or controlled elsewhere,,,"
group.long 0xEF8++0x03 "Integration Test Registers"
line.long 0x00 "ITATBCTR1,Returns the value of the ATREADYM0. ATREADYM1 and ATVALIDS inputs in integration mode."
bitfld.long 0x00 3. " ATVALIDS_R            ,Reads the value of the ATVALIDS input:" "LOW: Pin is at logic 0,HIGH: Pin is at logic 1"
textline "                      "
bitfld.long 0x00 1. "ATREADYM1_R           ,Reads the value of the ATREADYM1 input:" "LOW: Pin is at logic 0,HIGH: Pin is at logic 1"
textline "                      "
bitfld.long 0x00 0. "ATREADYM0_R           ,Reads the value of the ATREADYM0 input:" "LOW: Pin is at logic 0,HIGH: Pin is at logic 1"
group.long 0xEFC++0x03
line.long 0x00 "ITATBCTR0,Controls the value of the ATVALIDM0. ATVALIDM1 and ATREADYS outputs in integration mode."
bitfld.long 0x00 4. " ATREADYS_W            ,Sets the value of the ATREADYS output:" "LOW: Drive logic 0 on the ATREADYS output,HIGH: Drive logic 1 on the ATREADYS output"
textline "                      "
bitfld.long 0x00 2. "ATVALIDM1_W           ,Sets the value of the ATVALIDM1 output:" "LOW: Drive logic 0 on the ATVALIDM1 output,HIGH: Drive logic 1 on the ATVALIDM1 output"
textline "                      "
bitfld.long 0x00 0. "ATVALIDM0_W           ,Sets the value of the ATVALIDM0 output:" "LOW: Drive logic 0 on the ATVALIDM0 output,HIGH: Drive logic 1 on the ATVALIDM0 output"
group.long 0xF00++0x03
line.long 0x00 "ITCTRL,Used to enable topology detection"
bitfld.long 0x00 0. " Integration_mode      ,Enables the component to switch from functional mode to integration mode and back. If no integration functionality is implemented. this register must read as zero." "Functional_mode: Disable integration mode,Integration_mode: Enable integration mode"
rgroup.long 0xFE0++0x0F "Peripheral Identification Registers"
line.long 0x00 "TRCPIDR0,Peripheral ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PART_0    ,Part Number [7:0]"
line.long 0x04 "TRCPIDR1,Peripheral ID Register 1"
bitfld.long 0x04 4.--7. " DES_0     ,JEP106 Identity Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PART_1  ,Part Number [11:8]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCPIDR2,Peripheral ID Register 2"
bitfld.long 0x08 4.--7. " REVISION  ,Revision [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x08 3. "               JEDEC   ,JEDEC" "Low,High"
bitfld.long 0x08 0.--2. "             DES_1    ,JEP106 Identity Code [6:4]" "0,1,2,3,4,5,6,7"
line.long 0x0C "TRCPIDR3,Peripheral ID Register 3"
bitfld.long 0x0C 4.--7. " REVAND    ,RevAnd [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x0C 0.--3. "               CMOD    ,Customer Modified [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFD0++0x03
line.long 0x00 "TRCPIDR4,Peripheral ID Register 4"
bitfld.long 0x00 4.--7. " SIZE      ,Always 0x0 indicating a single 4KB component" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x00 0.--3. "               DES_2   ,JEP106 Continuation Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFF0++0x0F "Component Identification Registers"
line.long 0x00 "TRCCIDR0,Component ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PRMBL_0   ,PRMBL_0"
line.long 0x04 "TRCCIDR1,Component ID Register 1"
bitfld.long 0x04 4.--7. " CLASS     ,CLASS" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PRMBL_1 ,PRMBL_2" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCCIDR2,Component ID Register 2"
hexmask.long.byte 0x08 0.--7. 1. " PRMBL_2   ,PRMBL_2"
line.long 0x0C "TRCCIDR3,Component ID Register 3"
hexmask.long.byte 0x0C 0.--7. 1. " PRMBL_3   ,PRMBL_3"
tree.end
tree.end
endif
sif COMPonent.AVAILABLE("replicator6")
tree "REPLICATOR6   "+COMPonent.NAME("REPLICATOR6",-1)
base e:comp.base("replicator6",-1)
width 12.
group.long 0x00++0x03
line.long 0x00 "IDFILTER0,Allows the setting of ID filter for Master 0."
bitfld.long 0x00 7. " ID0_70_7F ,filitering id's" " No,Yes"
bitfld.long 0x00 6. " ID0_60_6F ,filitering id's" " No,Yes"
bitfld.long 0x00 5. " ID0_50_5F ,filitering id's" " No,Yes"
bitfld.long 0x00 4. " ID0_40_4F ,filitering id's" " No,Yes"
textline "                     "
bitfld.long 0x00 3. " ID0_30_3F ,filitering id's" " No,Yes"
bitfld.long 0x00 2. " ID0_20_2F ,filitering id's" " No,Yes"
bitfld.long 0x00 1. " ID0_10_1F ,filitering id's" " No,Yes"
bitfld.long 0x00 0. " ID0_00_0F ,filitering id's" " No,Yes"
group.long 0x04++0x03
line.long 0x00 "IDFILTER1,Allows the setting of ID filter for Master 1."
bitfld.long 0x00 7. " ID1_70_7F ,filitering id's" " No,Yes"
bitfld.long 0x00 6. " ID1_60_6F ,filitering id's" " No,Yes"
bitfld.long 0x00 5. " ID1_50_5F ,filitering id's" " No,Yes"
bitfld.long 0x00 4. " ID1_40_4F ,filitering id's" " No,Yes"
textline "                     "
bitfld.long 0x00 3. " ID1_30_3F ,filitering id's" " No,Yes"
bitfld.long 0x00 2. " ID1_20_2F ,filitering id's" " No,Yes"
bitfld.long 0x00 1. " ID1_10_1F ,filitering id's" " No,Yes"
bitfld.long 0x00 0. " ID1_00_0F ,filitering id's" " No,Yes"
tree "CoreSight Management Registers"
group.long 0xFA0++0x03
line.long 0x00 "CLAIMSET,This is used in conjunction with Claim Tag Clear Register. CLAIMCLR. This register forms one half of the Claim Tag value. This location allows individual bits to be set. write. and returns the number of bits that can be set. read."
bitfld.long 0x00 0.--3. " CLAIMSET              ,This claim tag bit is implemented" ",,,,,,,,,,,,,,,Claim_Tag_Implemented_Bits: These bits are present within the claim tag field"
group.long 0xFA4++0x03
line.long 0x00 "CLAIMCLR,This register is used in conjunction with Claim Tag Set Register. CLAIMSET. This register forms one half of the Claim Tag value. This location enables individual bits to be cleared. write. and returns the current Claim Tag value. read."
bitfld.long 0x00 0.--3. " CLAIMCLR              ,The value present reflects the current setting of the Claim Tag." "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
group.long 0xFB0++0x03
line.long 0x00 "LAR,This is used to enable write access to device registers."
hexmask.long 0x00 0.--31. 1. " ACCESS_W              ,A write of 0xC5ACCE55 enables further write access to this device. An invalid write has the affect of removing write access."
group.long 0xFB4++0x03
line.long 0x00 "LSR,This indicates the status of the lock control mechanism"
bitfld.long 0x00 2. " LOCKTYPE              ,Indicates if the Lock Access Register. 0xFB0. is implemented as 8-bit or 32-bit." "Size_32bit: This component implements a 32-bit Lock Access Register,"
textline "                      "
bitfld.long 0x00 1. "LOCKGRANT             ,Returns the current status of the Lock." "Access_permitted: Write access is allowed to this device,Device_Locked: Write access to the component is blocked"
textline "                      "
bitfld.long 0x00 0. "LOCKEXIST             ,Indicates that a lock control mechanism exists for this device." "Lock_Not_Present: No lock control mechanism exists,Lock_Present: Lock control mechanism is present"
group.long 0xFB8++0x03
line.long 0x00 "AUTHSTATUS,Reports the required security level and current status of those enables. Where functionality changes on a given security level then this change in status must be reported in this register"
bitfld.long 0x00 6.--7. " SNID                  ,Indicates the security level for secure non-invasive debug" "Not_Implemented: Functionality not implemented or controlled elsewhere,,,"
textline "                      "
bitfld.long 0x00 4.--5. "SID                   ,Indicates the security level for secure invasive debug" "Not_Implemented: Functionality not implemented or controlled elsewhere,,,"
textline "                      "
bitfld.long 0x00 2.--3. "NSNID                 ,Indicates the security level for non-secure non-invasive debug" "Not_Implemented: Functionality not implemented or controlled elsewhere,,,"
textline "                      "
bitfld.long 0x00 0.--1. "NSID                  ,Indicates the security level for non-secure invasive debug" "Not_Implemented: Functionality not implemented or controlled elsewhere,,,"
group.long 0xEF8++0x03 "Integration Test Registers"
line.long 0x00 "ITATBCTR1,Returns the value of the ATREADYM0. ATREADYM1 and ATVALIDS inputs in integration mode."
bitfld.long 0x00 3. " ATVALIDS_R            ,Reads the value of the ATVALIDS input:" "LOW: Pin is at logic 0,HIGH: Pin is at logic 1"
textline "                      "
bitfld.long 0x00 1. "ATREADYM1_R           ,Reads the value of the ATREADYM1 input:" "LOW: Pin is at logic 0,HIGH: Pin is at logic 1"
textline "                      "
bitfld.long 0x00 0. "ATREADYM0_R           ,Reads the value of the ATREADYM0 input:" "LOW: Pin is at logic 0,HIGH: Pin is at logic 1"
group.long 0xEFC++0x03
line.long 0x00 "ITATBCTR0,Controls the value of the ATVALIDM0. ATVALIDM1 and ATREADYS outputs in integration mode."
bitfld.long 0x00 4. " ATREADYS_W            ,Sets the value of the ATREADYS output:" "LOW: Drive logic 0 on the ATREADYS output,HIGH: Drive logic 1 on the ATREADYS output"
textline "                      "
bitfld.long 0x00 2. "ATVALIDM1_W           ,Sets the value of the ATVALIDM1 output:" "LOW: Drive logic 0 on the ATVALIDM1 output,HIGH: Drive logic 1 on the ATVALIDM1 output"
textline "                      "
bitfld.long 0x00 0. "ATVALIDM0_W           ,Sets the value of the ATVALIDM0 output:" "LOW: Drive logic 0 on the ATVALIDM0 output,HIGH: Drive logic 1 on the ATVALIDM0 output"
group.long 0xF00++0x03
line.long 0x00 "ITCTRL,Used to enable topology detection"
bitfld.long 0x00 0. " Integration_mode      ,Enables the component to switch from functional mode to integration mode and back. If no integration functionality is implemented. this register must read as zero." "Functional_mode: Disable integration mode,Integration_mode: Enable integration mode"
rgroup.long 0xFE0++0x0F "Peripheral Identification Registers"
line.long 0x00 "TRCPIDR0,Peripheral ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PART_0    ,Part Number [7:0]"
line.long 0x04 "TRCPIDR1,Peripheral ID Register 1"
bitfld.long 0x04 4.--7. " DES_0     ,JEP106 Identity Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PART_1  ,Part Number [11:8]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCPIDR2,Peripheral ID Register 2"
bitfld.long 0x08 4.--7. " REVISION  ,Revision [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x08 3. "               JEDEC   ,JEDEC" "Low,High"
bitfld.long 0x08 0.--2. "             DES_1    ,JEP106 Identity Code [6:4]" "0,1,2,3,4,5,6,7"
line.long 0x0C "TRCPIDR3,Peripheral ID Register 3"
bitfld.long 0x0C 4.--7. " REVAND    ,RevAnd [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x0C 0.--3. "               CMOD    ,Customer Modified [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFD0++0x03
line.long 0x00 "TRCPIDR4,Peripheral ID Register 4"
bitfld.long 0x00 4.--7. " SIZE      ,Always 0x0 indicating a single 4KB component" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x00 0.--3. "               DES_2   ,JEP106 Continuation Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFF0++0x0F "Component Identification Registers"
line.long 0x00 "TRCCIDR0,Component ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PRMBL_0   ,PRMBL_0"
line.long 0x04 "TRCCIDR1,Component ID Register 1"
bitfld.long 0x04 4.--7. " CLASS     ,CLASS" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PRMBL_1 ,PRMBL_2" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCCIDR2,Component ID Register 2"
hexmask.long.byte 0x08 0.--7. 1. " PRMBL_2   ,PRMBL_2"
line.long 0x0C "TRCCIDR3,Component ID Register 3"
hexmask.long.byte 0x0C 0.--7. 1. " PRMBL_3   ,PRMBL_3"
tree.end
tree.end
endif
sif COMPonent.AVAILABLE("replicator7")
tree "REPLICATOR7   "+COMPonent.NAME("REPLICATOR7",-1)
base e:comp.base("replicator7",-1)
width 12.
group.long 0x00++0x03
line.long 0x00 "IDFILTER0,Allows the setting of ID filter for Master 0."
bitfld.long 0x00 7. " ID0_70_7F ,filitering id's" " No,Yes"
bitfld.long 0x00 6. " ID0_60_6F ,filitering id's" " No,Yes"
bitfld.long 0x00 5. " ID0_50_5F ,filitering id's" " No,Yes"
bitfld.long 0x00 4. " ID0_40_4F ,filitering id's" " No,Yes"
textline "                     "
bitfld.long 0x00 3. " ID0_30_3F ,filitering id's" " No,Yes"
bitfld.long 0x00 2. " ID0_20_2F ,filitering id's" " No,Yes"
bitfld.long 0x00 1. " ID0_10_1F ,filitering id's" " No,Yes"
bitfld.long 0x00 0. " ID0_00_0F ,filitering id's" " No,Yes"
group.long 0x04++0x03
line.long 0x00 "IDFILTER1,Allows the setting of ID filter for Master 1."
bitfld.long 0x00 7. " ID1_70_7F ,filitering id's" " No,Yes"
bitfld.long 0x00 6. " ID1_60_6F ,filitering id's" " No,Yes"
bitfld.long 0x00 5. " ID1_50_5F ,filitering id's" " No,Yes"
bitfld.long 0x00 4. " ID1_40_4F ,filitering id's" " No,Yes"
textline "                     "
bitfld.long 0x00 3. " ID1_30_3F ,filitering id's" " No,Yes"
bitfld.long 0x00 2. " ID1_20_2F ,filitering id's" " No,Yes"
bitfld.long 0x00 1. " ID1_10_1F ,filitering id's" " No,Yes"
bitfld.long 0x00 0. " ID1_00_0F ,filitering id's" " No,Yes"
tree "CoreSight Management Registers"
group.long 0xFA0++0x03
line.long 0x00 "CLAIMSET,This is used in conjunction with Claim Tag Clear Register. CLAIMCLR. This register forms one half of the Claim Tag value. This location allows individual bits to be set. write. and returns the number of bits that can be set. read."
bitfld.long 0x00 0.--3. " CLAIMSET              ,This claim tag bit is implemented" ",,,,,,,,,,,,,,,Claim_Tag_Implemented_Bits: These bits are present within the claim tag field"
group.long 0xFA4++0x03
line.long 0x00 "CLAIMCLR,This register is used in conjunction with Claim Tag Set Register. CLAIMSET. This register forms one half of the Claim Tag value. This location enables individual bits to be cleared. write. and returns the current Claim Tag value. read."
bitfld.long 0x00 0.--3. " CLAIMCLR              ,The value present reflects the current setting of the Claim Tag." "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
group.long 0xFB0++0x03
line.long 0x00 "LAR,This is used to enable write access to device registers."
hexmask.long 0x00 0.--31. 1. " ACCESS_W              ,A write of 0xC5ACCE55 enables further write access to this device. An invalid write has the affect of removing write access."
group.long 0xFB4++0x03
line.long 0x00 "LSR,This indicates the status of the lock control mechanism"
bitfld.long 0x00 2. " LOCKTYPE              ,Indicates if the Lock Access Register. 0xFB0. is implemented as 8-bit or 32-bit." "Size_32bit: This component implements a 32-bit Lock Access Register,"
textline "                      "
bitfld.long 0x00 1. "LOCKGRANT             ,Returns the current status of the Lock." "Access_permitted: Write access is allowed to this device,Device_Locked: Write access to the component is blocked"
textline "                      "
bitfld.long 0x00 0. "LOCKEXIST             ,Indicates that a lock control mechanism exists for this device." "Lock_Not_Present: No lock control mechanism exists,Lock_Present: Lock control mechanism is present"
group.long 0xFB8++0x03
line.long 0x00 "AUTHSTATUS,Reports the required security level and current status of those enables. Where functionality changes on a given security level then this change in status must be reported in this register"
bitfld.long 0x00 6.--7. " SNID                  ,Indicates the security level for secure non-invasive debug" "Not_Implemented: Functionality not implemented or controlled elsewhere,,,"
textline "                      "
bitfld.long 0x00 4.--5. "SID                   ,Indicates the security level for secure invasive debug" "Not_Implemented: Functionality not implemented or controlled elsewhere,,,"
textline "                      "
bitfld.long 0x00 2.--3. "NSNID                 ,Indicates the security level for non-secure non-invasive debug" "Not_Implemented: Functionality not implemented or controlled elsewhere,,,"
textline "                      "
bitfld.long 0x00 0.--1. "NSID                  ,Indicates the security level for non-secure invasive debug" "Not_Implemented: Functionality not implemented or controlled elsewhere,,,"
group.long 0xEF8++0x03 "Integration Test Registers"
line.long 0x00 "ITATBCTR1,Returns the value of the ATREADYM0. ATREADYM1 and ATVALIDS inputs in integration mode."
bitfld.long 0x00 3. " ATVALIDS_R            ,Reads the value of the ATVALIDS input:" "LOW: Pin is at logic 0,HIGH: Pin is at logic 1"
textline "                      "
bitfld.long 0x00 1. "ATREADYM1_R           ,Reads the value of the ATREADYM1 input:" "LOW: Pin is at logic 0,HIGH: Pin is at logic 1"
textline "                      "
bitfld.long 0x00 0. "ATREADYM0_R           ,Reads the value of the ATREADYM0 input:" "LOW: Pin is at logic 0,HIGH: Pin is at logic 1"
group.long 0xEFC++0x03
line.long 0x00 "ITATBCTR0,Controls the value of the ATVALIDM0. ATVALIDM1 and ATREADYS outputs in integration mode."
bitfld.long 0x00 4. " ATREADYS_W            ,Sets the value of the ATREADYS output:" "LOW: Drive logic 0 on the ATREADYS output,HIGH: Drive logic 1 on the ATREADYS output"
textline "                      "
bitfld.long 0x00 2. "ATVALIDM1_W           ,Sets the value of the ATVALIDM1 output:" "LOW: Drive logic 0 on the ATVALIDM1 output,HIGH: Drive logic 1 on the ATVALIDM1 output"
textline "                      "
bitfld.long 0x00 0. "ATVALIDM0_W           ,Sets the value of the ATVALIDM0 output:" "LOW: Drive logic 0 on the ATVALIDM0 output,HIGH: Drive logic 1 on the ATVALIDM0 output"
group.long 0xF00++0x03
line.long 0x00 "ITCTRL,Used to enable topology detection"
bitfld.long 0x00 0. " Integration_mode      ,Enables the component to switch from functional mode to integration mode and back. If no integration functionality is implemented. this register must read as zero." "Functional_mode: Disable integration mode,Integration_mode: Enable integration mode"
rgroup.long 0xFE0++0x0F "Peripheral Identification Registers"
line.long 0x00 "TRCPIDR0,Peripheral ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PART_0    ,Part Number [7:0]"
line.long 0x04 "TRCPIDR1,Peripheral ID Register 1"
bitfld.long 0x04 4.--7. " DES_0     ,JEP106 Identity Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PART_1  ,Part Number [11:8]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCPIDR2,Peripheral ID Register 2"
bitfld.long 0x08 4.--7. " REVISION  ,Revision [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x08 3. "               JEDEC   ,JEDEC" "Low,High"
bitfld.long 0x08 0.--2. "             DES_1    ,JEP106 Identity Code [6:4]" "0,1,2,3,4,5,6,7"
line.long 0x0C "TRCPIDR3,Peripheral ID Register 3"
bitfld.long 0x0C 4.--7. " REVAND    ,RevAnd [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x0C 0.--3. "               CMOD    ,Customer Modified [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFD0++0x03
line.long 0x00 "TRCPIDR4,Peripheral ID Register 4"
bitfld.long 0x00 4.--7. " SIZE      ,Always 0x0 indicating a single 4KB component" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x00 0.--3. "               DES_2   ,JEP106 Continuation Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFF0++0x0F "Component Identification Registers"
line.long 0x00 "TRCCIDR0,Component ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PRMBL_0   ,PRMBL_0"
line.long 0x04 "TRCCIDR1,Component ID Register 1"
bitfld.long 0x04 4.--7. " CLASS     ,CLASS" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PRMBL_1 ,PRMBL_2" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCCIDR2,Component ID Register 2"
hexmask.long.byte 0x08 0.--7. 1. " PRMBL_2   ,PRMBL_2"
line.long 0x0C "TRCCIDR3,Component ID Register 3"
hexmask.long.byte 0x0C 0.--7. 1. " PRMBL_3   ,PRMBL_3"
tree.end
tree.end
endif
sif COMPonent.AVAILABLE("replicator8")
tree "REPLICATOR8   "+COMPonent.NAME("REPLICATOR8",-1)
base e:comp.base("replicator8",-1)
width 12.
group.long 0x00++0x03
line.long 0x00 "IDFILTER0,Allows the setting of ID filter for Master 0."
bitfld.long 0x00 7. " ID0_70_7F ,filitering id's" " No,Yes"
bitfld.long 0x00 6. " ID0_60_6F ,filitering id's" " No,Yes"
bitfld.long 0x00 5. " ID0_50_5F ,filitering id's" " No,Yes"
bitfld.long 0x00 4. " ID0_40_4F ,filitering id's" " No,Yes"
textline "                     "
bitfld.long 0x00 3. " ID0_30_3F ,filitering id's" " No,Yes"
bitfld.long 0x00 2. " ID0_20_2F ,filitering id's" " No,Yes"
bitfld.long 0x00 1. " ID0_10_1F ,filitering id's" " No,Yes"
bitfld.long 0x00 0. " ID0_00_0F ,filitering id's" " No,Yes"
group.long 0x04++0x03
line.long 0x00 "IDFILTER1,Allows the setting of ID filter for Master 1."
bitfld.long 0x00 7. " ID1_70_7F ,filitering id's" " No,Yes"
bitfld.long 0x00 6. " ID1_60_6F ,filitering id's" " No,Yes"
bitfld.long 0x00 5. " ID1_50_5F ,filitering id's" " No,Yes"
bitfld.long 0x00 4. " ID1_40_4F ,filitering id's" " No,Yes"
textline "                     "
bitfld.long 0x00 3. " ID1_30_3F ,filitering id's" " No,Yes"
bitfld.long 0x00 2. " ID1_20_2F ,filitering id's" " No,Yes"
bitfld.long 0x00 1. " ID1_10_1F ,filitering id's" " No,Yes"
bitfld.long 0x00 0. " ID1_00_0F ,filitering id's" " No,Yes"
tree "CoreSight Management Registers"
group.long 0xFA0++0x03
line.long 0x00 "CLAIMSET,This is used in conjunction with Claim Tag Clear Register. CLAIMCLR. This register forms one half of the Claim Tag value. This location allows individual bits to be set. write. and returns the number of bits that can be set. read."
bitfld.long 0x00 0.--3. " CLAIMSET              ,This claim tag bit is implemented" ",,,,,,,,,,,,,,,Claim_Tag_Implemented_Bits: These bits are present within the claim tag field"
group.long 0xFA4++0x03
line.long 0x00 "CLAIMCLR,This register is used in conjunction with Claim Tag Set Register. CLAIMSET. This register forms one half of the Claim Tag value. This location enables individual bits to be cleared. write. and returns the current Claim Tag value. read."
bitfld.long 0x00 0.--3. " CLAIMCLR              ,The value present reflects the current setting of the Claim Tag." "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
group.long 0xFB0++0x03
line.long 0x00 "LAR,This is used to enable write access to device registers."
hexmask.long 0x00 0.--31. 1. " ACCESS_W              ,A write of 0xC5ACCE55 enables further write access to this device. An invalid write has the affect of removing write access."
group.long 0xFB4++0x03
line.long 0x00 "LSR,This indicates the status of the lock control mechanism"
bitfld.long 0x00 2. " LOCKTYPE              ,Indicates if the Lock Access Register. 0xFB0. is implemented as 8-bit or 32-bit." "Size_32bit: This component implements a 32-bit Lock Access Register,"
textline "                      "
bitfld.long 0x00 1. "LOCKGRANT             ,Returns the current status of the Lock." "Access_permitted: Write access is allowed to this device,Device_Locked: Write access to the component is blocked"
textline "                      "
bitfld.long 0x00 0. "LOCKEXIST             ,Indicates that a lock control mechanism exists for this device." "Lock_Not_Present: No lock control mechanism exists,Lock_Present: Lock control mechanism is present"
group.long 0xFB8++0x03
line.long 0x00 "AUTHSTATUS,Reports the required security level and current status of those enables. Where functionality changes on a given security level then this change in status must be reported in this register"
bitfld.long 0x00 6.--7. " SNID                  ,Indicates the security level for secure non-invasive debug" "Not_Implemented: Functionality not implemented or controlled elsewhere,,,"
textline "                      "
bitfld.long 0x00 4.--5. "SID                   ,Indicates the security level for secure invasive debug" "Not_Implemented: Functionality not implemented or controlled elsewhere,,,"
textline "                      "
bitfld.long 0x00 2.--3. "NSNID                 ,Indicates the security level for non-secure non-invasive debug" "Not_Implemented: Functionality not implemented or controlled elsewhere,,,"
textline "                      "
bitfld.long 0x00 0.--1. "NSID                  ,Indicates the security level for non-secure invasive debug" "Not_Implemented: Functionality not implemented or controlled elsewhere,,,"
group.long 0xEF8++0x03 "Integration Test Registers"
line.long 0x00 "ITATBCTR1,Returns the value of the ATREADYM0. ATREADYM1 and ATVALIDS inputs in integration mode."
bitfld.long 0x00 3. " ATVALIDS_R            ,Reads the value of the ATVALIDS input:" "LOW: Pin is at logic 0,HIGH: Pin is at logic 1"
textline "                      "
bitfld.long 0x00 1. "ATREADYM1_R           ,Reads the value of the ATREADYM1 input:" "LOW: Pin is at logic 0,HIGH: Pin is at logic 1"
textline "                      "
bitfld.long 0x00 0. "ATREADYM0_R           ,Reads the value of the ATREADYM0 input:" "LOW: Pin is at logic 0,HIGH: Pin is at logic 1"
group.long 0xEFC++0x03
line.long 0x00 "ITATBCTR0,Controls the value of the ATVALIDM0. ATVALIDM1 and ATREADYS outputs in integration mode."
bitfld.long 0x00 4. " ATREADYS_W            ,Sets the value of the ATREADYS output:" "LOW: Drive logic 0 on the ATREADYS output,HIGH: Drive logic 1 on the ATREADYS output"
textline "                      "
bitfld.long 0x00 2. "ATVALIDM1_W           ,Sets the value of the ATVALIDM1 output:" "LOW: Drive logic 0 on the ATVALIDM1 output,HIGH: Drive logic 1 on the ATVALIDM1 output"
textline "                      "
bitfld.long 0x00 0. "ATVALIDM0_W           ,Sets the value of the ATVALIDM0 output:" "LOW: Drive logic 0 on the ATVALIDM0 output,HIGH: Drive logic 1 on the ATVALIDM0 output"
group.long 0xF00++0x03
line.long 0x00 "ITCTRL,Used to enable topology detection"
bitfld.long 0x00 0. " Integration_mode      ,Enables the component to switch from functional mode to integration mode and back. If no integration functionality is implemented. this register must read as zero." "Functional_mode: Disable integration mode,Integration_mode: Enable integration mode"
rgroup.long 0xFE0++0x0F "Peripheral Identification Registers"
line.long 0x00 "TRCPIDR0,Peripheral ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PART_0    ,Part Number [7:0]"
line.long 0x04 "TRCPIDR1,Peripheral ID Register 1"
bitfld.long 0x04 4.--7. " DES_0     ,JEP106 Identity Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PART_1  ,Part Number [11:8]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCPIDR2,Peripheral ID Register 2"
bitfld.long 0x08 4.--7. " REVISION  ,Revision [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x08 3. "               JEDEC   ,JEDEC" "Low,High"
bitfld.long 0x08 0.--2. "             DES_1    ,JEP106 Identity Code [6:4]" "0,1,2,3,4,5,6,7"
line.long 0x0C "TRCPIDR3,Peripheral ID Register 3"
bitfld.long 0x0C 4.--7. " REVAND    ,RevAnd [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x0C 0.--3. "               CMOD    ,Customer Modified [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFD0++0x03
line.long 0x00 "TRCPIDR4,Peripheral ID Register 4"
bitfld.long 0x00 4.--7. " SIZE      ,Always 0x0 indicating a single 4KB component" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x00 0.--3. "               DES_2   ,JEP106 Continuation Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFF0++0x0F "Component Identification Registers"
line.long 0x00 "TRCCIDR0,Component ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PRMBL_0   ,PRMBL_0"
line.long 0x04 "TRCCIDR1,Component ID Register 1"
bitfld.long 0x04 4.--7. " CLASS     ,CLASS" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PRMBL_1 ,PRMBL_2" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCCIDR2,Component ID Register 2"
hexmask.long.byte 0x08 0.--7. 1. " PRMBL_2   ,PRMBL_2"
line.long 0x0C "TRCCIDR3,Component ID Register 3"
hexmask.long.byte 0x0C 0.--7. 1. " PRMBL_3   ,PRMBL_3"
tree.end
tree.end
endif
sif COMPonent.AVAILABLE("replicator9")
tree "REPLICATOR9   "+COMPonent.NAME("REPLICATOR9",-1)
base e:comp.base("replicator9",-1)
width 12.
group.long 0x00++0x03
line.long 0x00 "IDFILTER0,Allows the setting of ID filter for Master 0."
bitfld.long 0x00 7. " ID0_70_7F ,filitering id's" " No,Yes"
bitfld.long 0x00 6. " ID0_60_6F ,filitering id's" " No,Yes"
bitfld.long 0x00 5. " ID0_50_5F ,filitering id's" " No,Yes"
bitfld.long 0x00 4. " ID0_40_4F ,filitering id's" " No,Yes"
textline "                     "
bitfld.long 0x00 3. " ID0_30_3F ,filitering id's" " No,Yes"
bitfld.long 0x00 2. " ID0_20_2F ,filitering id's" " No,Yes"
bitfld.long 0x00 1. " ID0_10_1F ,filitering id's" " No,Yes"
bitfld.long 0x00 0. " ID0_00_0F ,filitering id's" " No,Yes"
group.long 0x04++0x03
line.long 0x00 "IDFILTER1,Allows the setting of ID filter for Master 1."
bitfld.long 0x00 7. " ID1_70_7F ,filitering id's" " No,Yes"
bitfld.long 0x00 6. " ID1_60_6F ,filitering id's" " No,Yes"
bitfld.long 0x00 5. " ID1_50_5F ,filitering id's" " No,Yes"
bitfld.long 0x00 4. " ID1_40_4F ,filitering id's" " No,Yes"
textline "                     "
bitfld.long 0x00 3. " ID1_30_3F ,filitering id's" " No,Yes"
bitfld.long 0x00 2. " ID1_20_2F ,filitering id's" " No,Yes"
bitfld.long 0x00 1. " ID1_10_1F ,filitering id's" " No,Yes"
bitfld.long 0x00 0. " ID1_00_0F ,filitering id's" " No,Yes"
tree "CoreSight Management Registers"
group.long 0xFA0++0x03
line.long 0x00 "CLAIMSET,This is used in conjunction with Claim Tag Clear Register. CLAIMCLR. This register forms one half of the Claim Tag value. This location allows individual bits to be set. write. and returns the number of bits that can be set. read."
bitfld.long 0x00 0.--3. " CLAIMSET              ,This claim tag bit is implemented" ",,,,,,,,,,,,,,,Claim_Tag_Implemented_Bits: These bits are present within the claim tag field"
group.long 0xFA4++0x03
line.long 0x00 "CLAIMCLR,This register is used in conjunction with Claim Tag Set Register. CLAIMSET. This register forms one half of the Claim Tag value. This location enables individual bits to be cleared. write. and returns the current Claim Tag value. read."
bitfld.long 0x00 0.--3. " CLAIMCLR              ,The value present reflects the current setting of the Claim Tag." "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
group.long 0xFB0++0x03
line.long 0x00 "LAR,This is used to enable write access to device registers."
hexmask.long 0x00 0.--31. 1. " ACCESS_W              ,A write of 0xC5ACCE55 enables further write access to this device. An invalid write has the affect of removing write access."
group.long 0xFB4++0x03
line.long 0x00 "LSR,This indicates the status of the lock control mechanism"
bitfld.long 0x00 2. " LOCKTYPE              ,Indicates if the Lock Access Register. 0xFB0. is implemented as 8-bit or 32-bit." "Size_32bit: This component implements a 32-bit Lock Access Register,"
textline "                      "
bitfld.long 0x00 1. "LOCKGRANT             ,Returns the current status of the Lock." "Access_permitted: Write access is allowed to this device,Device_Locked: Write access to the component is blocked"
textline "                      "
bitfld.long 0x00 0. "LOCKEXIST             ,Indicates that a lock control mechanism exists for this device." "Lock_Not_Present: No lock control mechanism exists,Lock_Present: Lock control mechanism is present"
group.long 0xFB8++0x03
line.long 0x00 "AUTHSTATUS,Reports the required security level and current status of those enables. Where functionality changes on a given security level then this change in status must be reported in this register"
bitfld.long 0x00 6.--7. " SNID                  ,Indicates the security level for secure non-invasive debug" "Not_Implemented: Functionality not implemented or controlled elsewhere,,,"
textline "                      "
bitfld.long 0x00 4.--5. "SID                   ,Indicates the security level for secure invasive debug" "Not_Implemented: Functionality not implemented or controlled elsewhere,,,"
textline "                      "
bitfld.long 0x00 2.--3. "NSNID                 ,Indicates the security level for non-secure non-invasive debug" "Not_Implemented: Functionality not implemented or controlled elsewhere,,,"
textline "                      "
bitfld.long 0x00 0.--1. "NSID                  ,Indicates the security level for non-secure invasive debug" "Not_Implemented: Functionality not implemented or controlled elsewhere,,,"
group.long 0xEF8++0x03 "Integration Test Registers"
line.long 0x00 "ITATBCTR1,Returns the value of the ATREADYM0. ATREADYM1 and ATVALIDS inputs in integration mode."
bitfld.long 0x00 3. " ATVALIDS_R            ,Reads the value of the ATVALIDS input:" "LOW: Pin is at logic 0,HIGH: Pin is at logic 1"
textline "                      "
bitfld.long 0x00 1. "ATREADYM1_R           ,Reads the value of the ATREADYM1 input:" "LOW: Pin is at logic 0,HIGH: Pin is at logic 1"
textline "                      "
bitfld.long 0x00 0. "ATREADYM0_R           ,Reads the value of the ATREADYM0 input:" "LOW: Pin is at logic 0,HIGH: Pin is at logic 1"
group.long 0xEFC++0x03
line.long 0x00 "ITATBCTR0,Controls the value of the ATVALIDM0. ATVALIDM1 and ATREADYS outputs in integration mode."
bitfld.long 0x00 4. " ATREADYS_W            ,Sets the value of the ATREADYS output:" "LOW: Drive logic 0 on the ATREADYS output,HIGH: Drive logic 1 on the ATREADYS output"
textline "                      "
bitfld.long 0x00 2. "ATVALIDM1_W           ,Sets the value of the ATVALIDM1 output:" "LOW: Drive logic 0 on the ATVALIDM1 output,HIGH: Drive logic 1 on the ATVALIDM1 output"
textline "                      "
bitfld.long 0x00 0. "ATVALIDM0_W           ,Sets the value of the ATVALIDM0 output:" "LOW: Drive logic 0 on the ATVALIDM0 output,HIGH: Drive logic 1 on the ATVALIDM0 output"
group.long 0xF00++0x03
line.long 0x00 "ITCTRL,Used to enable topology detection"
bitfld.long 0x00 0. " Integration_mode      ,Enables the component to switch from functional mode to integration mode and back. If no integration functionality is implemented. this register must read as zero." "Functional_mode: Disable integration mode,Integration_mode: Enable integration mode"
rgroup.long 0xFE0++0x0F "Peripheral Identification Registers"
line.long 0x00 "TRCPIDR0,Peripheral ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PART_0    ,Part Number [7:0]"
line.long 0x04 "TRCPIDR1,Peripheral ID Register 1"
bitfld.long 0x04 4.--7. " DES_0     ,JEP106 Identity Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PART_1  ,Part Number [11:8]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCPIDR2,Peripheral ID Register 2"
bitfld.long 0x08 4.--7. " REVISION  ,Revision [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x08 3. "               JEDEC   ,JEDEC" "Low,High"
bitfld.long 0x08 0.--2. "             DES_1    ,JEP106 Identity Code [6:4]" "0,1,2,3,4,5,6,7"
line.long 0x0C "TRCPIDR3,Peripheral ID Register 3"
bitfld.long 0x0C 4.--7. " REVAND    ,RevAnd [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x0C 0.--3. "               CMOD    ,Customer Modified [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFD0++0x03
line.long 0x00 "TRCPIDR4,Peripheral ID Register 4"
bitfld.long 0x00 4.--7. " SIZE      ,Always 0x0 indicating a single 4KB component" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x00 0.--3. "               DES_2   ,JEP106 Continuation Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFF0++0x0F "Component Identification Registers"
line.long 0x00 "TRCCIDR0,Component ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PRMBL_0   ,PRMBL_0"
line.long 0x04 "TRCCIDR1,Component ID Register 1"
bitfld.long 0x04 4.--7. " CLASS     ,CLASS" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PRMBL_1 ,PRMBL_2" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCCIDR2,Component ID Register 2"
hexmask.long.byte 0x08 0.--7. 1. " PRMBL_2   ,PRMBL_2"
line.long 0x0C "TRCCIDR3,Component ID Register 3"
hexmask.long.byte 0x0C 0.--7. 1. " PRMBL_3   ,PRMBL_3"
tree.end
tree.end
endif
sif COMPonent.AVAILABLE("replicator10")
tree "REPLICATOR10   "+COMPonent.NAME("REPLICATOR10",-1)
base e:comp.base("replicator10",-1)
width 12.
group.long 0x00++0x03
line.long 0x00 "IDFILTER0,Allows the setting of ID filter for Master 0."
bitfld.long 0x00 7. " ID0_70_7F ,filitering id's" " No,Yes"
bitfld.long 0x00 6. " ID0_60_6F ,filitering id's" " No,Yes"
bitfld.long 0x00 5. " ID0_50_5F ,filitering id's" " No,Yes"
bitfld.long 0x00 4. " ID0_40_4F ,filitering id's" " No,Yes"
textline "                     "
bitfld.long 0x00 3. " ID0_30_3F ,filitering id's" " No,Yes"
bitfld.long 0x00 2. " ID0_20_2F ,filitering id's" " No,Yes"
bitfld.long 0x00 1. " ID0_10_1F ,filitering id's" " No,Yes"
bitfld.long 0x00 0. " ID0_00_0F ,filitering id's" " No,Yes"
group.long 0x04++0x03
line.long 0x00 "IDFILTER1,Allows the setting of ID filter for Master 1."
bitfld.long 0x00 7. " ID1_70_7F ,filitering id's" " No,Yes"
bitfld.long 0x00 6. " ID1_60_6F ,filitering id's" " No,Yes"
bitfld.long 0x00 5. " ID1_50_5F ,filitering id's" " No,Yes"
bitfld.long 0x00 4. " ID1_40_4F ,filitering id's" " No,Yes"
textline "                     "
bitfld.long 0x00 3. " ID1_30_3F ,filitering id's" " No,Yes"
bitfld.long 0x00 2. " ID1_20_2F ,filitering id's" " No,Yes"
bitfld.long 0x00 1. " ID1_10_1F ,filitering id's" " No,Yes"
bitfld.long 0x00 0. " ID1_00_0F ,filitering id's" " No,Yes"
tree "CoreSight Management Registers"
group.long 0xFA0++0x03
line.long 0x00 "CLAIMSET,This is used in conjunction with Claim Tag Clear Register. CLAIMCLR. This register forms one half of the Claim Tag value. This location allows individual bits to be set. write. and returns the number of bits that can be set. read."
bitfld.long 0x00 0.--3. " CLAIMSET              ,This claim tag bit is implemented" ",,,,,,,,,,,,,,,Claim_Tag_Implemented_Bits: These bits are present within the claim tag field"
group.long 0xFA4++0x03
line.long 0x00 "CLAIMCLR,This register is used in conjunction with Claim Tag Set Register. CLAIMSET. This register forms one half of the Claim Tag value. This location enables individual bits to be cleared. write. and returns the current Claim Tag value. read."
bitfld.long 0x00 0.--3. " CLAIMCLR              ,The value present reflects the current setting of the Claim Tag." "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
group.long 0xFB0++0x03
line.long 0x00 "LAR,This is used to enable write access to device registers."
hexmask.long 0x00 0.--31. 1. " ACCESS_W              ,A write of 0xC5ACCE55 enables further write access to this device. An invalid write has the affect of removing write access."
group.long 0xFB4++0x03
line.long 0x00 "LSR,This indicates the status of the lock control mechanism"
bitfld.long 0x00 2. " LOCKTYPE              ,Indicates if the Lock Access Register. 0xFB0. is implemented as 8-bit or 32-bit." "Size_32bit: This component implements a 32-bit Lock Access Register,"
textline "                      "
bitfld.long 0x00 1. "LOCKGRANT             ,Returns the current status of the Lock." "Access_permitted: Write access is allowed to this device,Device_Locked: Write access to the component is blocked"
textline "                      "
bitfld.long 0x00 0. "LOCKEXIST             ,Indicates that a lock control mechanism exists for this device." "Lock_Not_Present: No lock control mechanism exists,Lock_Present: Lock control mechanism is present"
group.long 0xFB8++0x03
line.long 0x00 "AUTHSTATUS,Reports the required security level and current status of those enables. Where functionality changes on a given security level then this change in status must be reported in this register"
bitfld.long 0x00 6.--7. " SNID                  ,Indicates the security level for secure non-invasive debug" "Not_Implemented: Functionality not implemented or controlled elsewhere,,,"
textline "                      "
bitfld.long 0x00 4.--5. "SID                   ,Indicates the security level for secure invasive debug" "Not_Implemented: Functionality not implemented or controlled elsewhere,,,"
textline "                      "
bitfld.long 0x00 2.--3. "NSNID                 ,Indicates the security level for non-secure non-invasive debug" "Not_Implemented: Functionality not implemented or controlled elsewhere,,,"
textline "                      "
bitfld.long 0x00 0.--1. "NSID                  ,Indicates the security level for non-secure invasive debug" "Not_Implemented: Functionality not implemented or controlled elsewhere,,,"
group.long 0xEF8++0x03 "Integration Test Registers"
line.long 0x00 "ITATBCTR1,Returns the value of the ATREADYM0. ATREADYM1 and ATVALIDS inputs in integration mode."
bitfld.long 0x00 3. " ATVALIDS_R            ,Reads the value of the ATVALIDS input:" "LOW: Pin is at logic 0,HIGH: Pin is at logic 1"
textline "                      "
bitfld.long 0x00 1. "ATREADYM1_R           ,Reads the value of the ATREADYM1 input:" "LOW: Pin is at logic 0,HIGH: Pin is at logic 1"
textline "                      "
bitfld.long 0x00 0. "ATREADYM0_R           ,Reads the value of the ATREADYM0 input:" "LOW: Pin is at logic 0,HIGH: Pin is at logic 1"
group.long 0xEFC++0x03
line.long 0x00 "ITATBCTR0,Controls the value of the ATVALIDM0. ATVALIDM1 and ATREADYS outputs in integration mode."
bitfld.long 0x00 4. " ATREADYS_W            ,Sets the value of the ATREADYS output:" "LOW: Drive logic 0 on the ATREADYS output,HIGH: Drive logic 1 on the ATREADYS output"
textline "                      "
bitfld.long 0x00 2. "ATVALIDM1_W           ,Sets the value of the ATVALIDM1 output:" "LOW: Drive logic 0 on the ATVALIDM1 output,HIGH: Drive logic 1 on the ATVALIDM1 output"
textline "                      "
bitfld.long 0x00 0. "ATVALIDM0_W           ,Sets the value of the ATVALIDM0 output:" "LOW: Drive logic 0 on the ATVALIDM0 output,HIGH: Drive logic 1 on the ATVALIDM0 output"
group.long 0xF00++0x03
line.long 0x00 "ITCTRL,Used to enable topology detection"
bitfld.long 0x00 0. " Integration_mode      ,Enables the component to switch from functional mode to integration mode and back. If no integration functionality is implemented. this register must read as zero." "Functional_mode: Disable integration mode,Integration_mode: Enable integration mode"
rgroup.long 0xFE0++0x0F "Peripheral Identification Registers"
line.long 0x00 "TRCPIDR0,Peripheral ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PART_0    ,Part Number [7:0]"
line.long 0x04 "TRCPIDR1,Peripheral ID Register 1"
bitfld.long 0x04 4.--7. " DES_0     ,JEP106 Identity Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PART_1  ,Part Number [11:8]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCPIDR2,Peripheral ID Register 2"
bitfld.long 0x08 4.--7. " REVISION  ,Revision [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x08 3. "               JEDEC   ,JEDEC" "Low,High"
bitfld.long 0x08 0.--2. "             DES_1    ,JEP106 Identity Code [6:4]" "0,1,2,3,4,5,6,7"
line.long 0x0C "TRCPIDR3,Peripheral ID Register 3"
bitfld.long 0x0C 4.--7. " REVAND    ,RevAnd [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x0C 0.--3. "               CMOD    ,Customer Modified [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFD0++0x03
line.long 0x00 "TRCPIDR4,Peripheral ID Register 4"
bitfld.long 0x00 4.--7. " SIZE      ,Always 0x0 indicating a single 4KB component" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x00 0.--3. "               DES_2   ,JEP106 Continuation Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFF0++0x0F "Component Identification Registers"
line.long 0x00 "TRCCIDR0,Component ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PRMBL_0   ,PRMBL_0"
line.long 0x04 "TRCCIDR1,Component ID Register 1"
bitfld.long 0x04 4.--7. " CLASS     ,CLASS" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PRMBL_1 ,PRMBL_2" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCCIDR2,Component ID Register 2"
hexmask.long.byte 0x08 0.--7. 1. " PRMBL_2   ,PRMBL_2"
line.long 0x0C "TRCCIDR3,Component ID Register 3"
hexmask.long.byte 0x0C 0.--7. 1. " PRMBL_3   ,PRMBL_3"
tree.end
tree.end
endif
sif COMPonent.AVAILABLE("replicator11")
tree "REPLICATOR11   "+COMPonent.NAME("REPLICATOR11",-1)
base e:comp.base("replicator11",-1)
width 12.
group.long 0x00++0x03
line.long 0x00 "IDFILTER0,Allows the setting of ID filter for Master 0."
bitfld.long 0x00 7. " ID0_70_7F ,filitering id's" " No,Yes"
bitfld.long 0x00 6. " ID0_60_6F ,filitering id's" " No,Yes"
bitfld.long 0x00 5. " ID0_50_5F ,filitering id's" " No,Yes"
bitfld.long 0x00 4. " ID0_40_4F ,filitering id's" " No,Yes"
textline "                     "
bitfld.long 0x00 3. " ID0_30_3F ,filitering id's" " No,Yes"
bitfld.long 0x00 2. " ID0_20_2F ,filitering id's" " No,Yes"
bitfld.long 0x00 1. " ID0_10_1F ,filitering id's" " No,Yes"
bitfld.long 0x00 0. " ID0_00_0F ,filitering id's" " No,Yes"
group.long 0x04++0x03
line.long 0x00 "IDFILTER1,Allows the setting of ID filter for Master 1."
bitfld.long 0x00 7. " ID1_70_7F ,filitering id's" " No,Yes"
bitfld.long 0x00 6. " ID1_60_6F ,filitering id's" " No,Yes"
bitfld.long 0x00 5. " ID1_50_5F ,filitering id's" " No,Yes"
bitfld.long 0x00 4. " ID1_40_4F ,filitering id's" " No,Yes"
textline "                     "
bitfld.long 0x00 3. " ID1_30_3F ,filitering id's" " No,Yes"
bitfld.long 0x00 2. " ID1_20_2F ,filitering id's" " No,Yes"
bitfld.long 0x00 1. " ID1_10_1F ,filitering id's" " No,Yes"
bitfld.long 0x00 0. " ID1_00_0F ,filitering id's" " No,Yes"
tree "CoreSight Management Registers"
group.long 0xFA0++0x03
line.long 0x00 "CLAIMSET,This is used in conjunction with Claim Tag Clear Register. CLAIMCLR. This register forms one half of the Claim Tag value. This location allows individual bits to be set. write. and returns the number of bits that can be set. read."
bitfld.long 0x00 0.--3. " CLAIMSET              ,This claim tag bit is implemented" ",,,,,,,,,,,,,,,Claim_Tag_Implemented_Bits: These bits are present within the claim tag field"
group.long 0xFA4++0x03
line.long 0x00 "CLAIMCLR,This register is used in conjunction with Claim Tag Set Register. CLAIMSET. This register forms one half of the Claim Tag value. This location enables individual bits to be cleared. write. and returns the current Claim Tag value. read."
bitfld.long 0x00 0.--3. " CLAIMCLR              ,The value present reflects the current setting of the Claim Tag." "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
group.long 0xFB0++0x03
line.long 0x00 "LAR,This is used to enable write access to device registers."
hexmask.long 0x00 0.--31. 1. " ACCESS_W              ,A write of 0xC5ACCE55 enables further write access to this device. An invalid write has the affect of removing write access."
group.long 0xFB4++0x03
line.long 0x00 "LSR,This indicates the status of the lock control mechanism"
bitfld.long 0x00 2. " LOCKTYPE              ,Indicates if the Lock Access Register. 0xFB0. is implemented as 8-bit or 32-bit." "Size_32bit: This component implements a 32-bit Lock Access Register,"
textline "                      "
bitfld.long 0x00 1. "LOCKGRANT             ,Returns the current status of the Lock." "Access_permitted: Write access is allowed to this device,Device_Locked: Write access to the component is blocked"
textline "                      "
bitfld.long 0x00 0. "LOCKEXIST             ,Indicates that a lock control mechanism exists for this device." "Lock_Not_Present: No lock control mechanism exists,Lock_Present: Lock control mechanism is present"
group.long 0xFB8++0x03
line.long 0x00 "AUTHSTATUS,Reports the required security level and current status of those enables. Where functionality changes on a given security level then this change in status must be reported in this register"
bitfld.long 0x00 6.--7. " SNID                  ,Indicates the security level for secure non-invasive debug" "Not_Implemented: Functionality not implemented or controlled elsewhere,,,"
textline "                      "
bitfld.long 0x00 4.--5. "SID                   ,Indicates the security level for secure invasive debug" "Not_Implemented: Functionality not implemented or controlled elsewhere,,,"
textline "                      "
bitfld.long 0x00 2.--3. "NSNID                 ,Indicates the security level for non-secure non-invasive debug" "Not_Implemented: Functionality not implemented or controlled elsewhere,,,"
textline "                      "
bitfld.long 0x00 0.--1. "NSID                  ,Indicates the security level for non-secure invasive debug" "Not_Implemented: Functionality not implemented or controlled elsewhere,,,"
group.long 0xEF8++0x03 "Integration Test Registers"
line.long 0x00 "ITATBCTR1,Returns the value of the ATREADYM0. ATREADYM1 and ATVALIDS inputs in integration mode."
bitfld.long 0x00 3. " ATVALIDS_R            ,Reads the value of the ATVALIDS input:" "LOW: Pin is at logic 0,HIGH: Pin is at logic 1"
textline "                      "
bitfld.long 0x00 1. "ATREADYM1_R           ,Reads the value of the ATREADYM1 input:" "LOW: Pin is at logic 0,HIGH: Pin is at logic 1"
textline "                      "
bitfld.long 0x00 0. "ATREADYM0_R           ,Reads the value of the ATREADYM0 input:" "LOW: Pin is at logic 0,HIGH: Pin is at logic 1"
group.long 0xEFC++0x03
line.long 0x00 "ITATBCTR0,Controls the value of the ATVALIDM0. ATVALIDM1 and ATREADYS outputs in integration mode."
bitfld.long 0x00 4. " ATREADYS_W            ,Sets the value of the ATREADYS output:" "LOW: Drive logic 0 on the ATREADYS output,HIGH: Drive logic 1 on the ATREADYS output"
textline "                      "
bitfld.long 0x00 2. "ATVALIDM1_W           ,Sets the value of the ATVALIDM1 output:" "LOW: Drive logic 0 on the ATVALIDM1 output,HIGH: Drive logic 1 on the ATVALIDM1 output"
textline "                      "
bitfld.long 0x00 0. "ATVALIDM0_W           ,Sets the value of the ATVALIDM0 output:" "LOW: Drive logic 0 on the ATVALIDM0 output,HIGH: Drive logic 1 on the ATVALIDM0 output"
group.long 0xF00++0x03
line.long 0x00 "ITCTRL,Used to enable topology detection"
bitfld.long 0x00 0. " Integration_mode      ,Enables the component to switch from functional mode to integration mode and back. If no integration functionality is implemented. this register must read as zero." "Functional_mode: Disable integration mode,Integration_mode: Enable integration mode"
rgroup.long 0xFE0++0x0F "Peripheral Identification Registers"
line.long 0x00 "TRCPIDR0,Peripheral ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PART_0    ,Part Number [7:0]"
line.long 0x04 "TRCPIDR1,Peripheral ID Register 1"
bitfld.long 0x04 4.--7. " DES_0     ,JEP106 Identity Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PART_1  ,Part Number [11:8]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCPIDR2,Peripheral ID Register 2"
bitfld.long 0x08 4.--7. " REVISION  ,Revision [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x08 3. "               JEDEC   ,JEDEC" "Low,High"
bitfld.long 0x08 0.--2. "             DES_1    ,JEP106 Identity Code [6:4]" "0,1,2,3,4,5,6,7"
line.long 0x0C "TRCPIDR3,Peripheral ID Register 3"
bitfld.long 0x0C 4.--7. " REVAND    ,RevAnd [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x0C 0.--3. "               CMOD    ,Customer Modified [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFD0++0x03
line.long 0x00 "TRCPIDR4,Peripheral ID Register 4"
bitfld.long 0x00 4.--7. " SIZE      ,Always 0x0 indicating a single 4KB component" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x00 0.--3. "               DES_2   ,JEP106 Continuation Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFF0++0x0F "Component Identification Registers"
line.long 0x00 "TRCCIDR0,Component ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PRMBL_0   ,PRMBL_0"
line.long 0x04 "TRCCIDR1,Component ID Register 1"
bitfld.long 0x04 4.--7. " CLASS     ,CLASS" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PRMBL_1 ,PRMBL_2" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCCIDR2,Component ID Register 2"
hexmask.long.byte 0x08 0.--7. 1. " PRMBL_2   ,PRMBL_2"
line.long 0x0C "TRCCIDR3,Component ID Register 3"
hexmask.long.byte 0x0C 0.--7. 1. " PRMBL_3   ,PRMBL_3"
tree.end
tree.end
endif
sif COMPonent.AVAILABLE("replicator12")
tree "REPLICATOR12   "+COMPonent.NAME("REPLICATOR12",-1)
base e:comp.base("replicator12",-1)
width 12.
group.long 0x00++0x03
line.long 0x00 "IDFILTER0,Allows the setting of ID filter for Master 0."
bitfld.long 0x00 7. " ID0_70_7F ,filitering id's" " No,Yes"
bitfld.long 0x00 6. " ID0_60_6F ,filitering id's" " No,Yes"
bitfld.long 0x00 5. " ID0_50_5F ,filitering id's" " No,Yes"
bitfld.long 0x00 4. " ID0_40_4F ,filitering id's" " No,Yes"
textline "                     "
bitfld.long 0x00 3. " ID0_30_3F ,filitering id's" " No,Yes"
bitfld.long 0x00 2. " ID0_20_2F ,filitering id's" " No,Yes"
bitfld.long 0x00 1. " ID0_10_1F ,filitering id's" " No,Yes"
bitfld.long 0x00 0. " ID0_00_0F ,filitering id's" " No,Yes"
group.long 0x04++0x03
line.long 0x00 "IDFILTER1,Allows the setting of ID filter for Master 1."
bitfld.long 0x00 7. " ID1_70_7F ,filitering id's" " No,Yes"
bitfld.long 0x00 6. " ID1_60_6F ,filitering id's" " No,Yes"
bitfld.long 0x00 5. " ID1_50_5F ,filitering id's" " No,Yes"
bitfld.long 0x00 4. " ID1_40_4F ,filitering id's" " No,Yes"
textline "                     "
bitfld.long 0x00 3. " ID1_30_3F ,filitering id's" " No,Yes"
bitfld.long 0x00 2. " ID1_20_2F ,filitering id's" " No,Yes"
bitfld.long 0x00 1. " ID1_10_1F ,filitering id's" " No,Yes"
bitfld.long 0x00 0. " ID1_00_0F ,filitering id's" " No,Yes"
tree "CoreSight Management Registers"
group.long 0xFA0++0x03
line.long 0x00 "CLAIMSET,This is used in conjunction with Claim Tag Clear Register. CLAIMCLR. This register forms one half of the Claim Tag value. This location allows individual bits to be set. write. and returns the number of bits that can be set. read."
bitfld.long 0x00 0.--3. " CLAIMSET              ,This claim tag bit is implemented" ",,,,,,,,,,,,,,,Claim_Tag_Implemented_Bits: These bits are present within the claim tag field"
group.long 0xFA4++0x03
line.long 0x00 "CLAIMCLR,This register is used in conjunction with Claim Tag Set Register. CLAIMSET. This register forms one half of the Claim Tag value. This location enables individual bits to be cleared. write. and returns the current Claim Tag value. read."
bitfld.long 0x00 0.--3. " CLAIMCLR              ,The value present reflects the current setting of the Claim Tag." "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
group.long 0xFB0++0x03
line.long 0x00 "LAR,This is used to enable write access to device registers."
hexmask.long 0x00 0.--31. 1. " ACCESS_W              ,A write of 0xC5ACCE55 enables further write access to this device. An invalid write has the affect of removing write access."
group.long 0xFB4++0x03
line.long 0x00 "LSR,This indicates the status of the lock control mechanism"
bitfld.long 0x00 2. " LOCKTYPE              ,Indicates if the Lock Access Register. 0xFB0. is implemented as 8-bit or 32-bit." "Size_32bit: This component implements a 32-bit Lock Access Register,"
textline "                      "
bitfld.long 0x00 1. "LOCKGRANT             ,Returns the current status of the Lock." "Access_permitted: Write access is allowed to this device,Device_Locked: Write access to the component is blocked"
textline "                      "
bitfld.long 0x00 0. "LOCKEXIST             ,Indicates that a lock control mechanism exists for this device." "Lock_Not_Present: No lock control mechanism exists,Lock_Present: Lock control mechanism is present"
group.long 0xFB8++0x03
line.long 0x00 "AUTHSTATUS,Reports the required security level and current status of those enables. Where functionality changes on a given security level then this change in status must be reported in this register"
bitfld.long 0x00 6.--7. " SNID                  ,Indicates the security level for secure non-invasive debug" "Not_Implemented: Functionality not implemented or controlled elsewhere,,,"
textline "                      "
bitfld.long 0x00 4.--5. "SID                   ,Indicates the security level for secure invasive debug" "Not_Implemented: Functionality not implemented or controlled elsewhere,,,"
textline "                      "
bitfld.long 0x00 2.--3. "NSNID                 ,Indicates the security level for non-secure non-invasive debug" "Not_Implemented: Functionality not implemented or controlled elsewhere,,,"
textline "                      "
bitfld.long 0x00 0.--1. "NSID                  ,Indicates the security level for non-secure invasive debug" "Not_Implemented: Functionality not implemented or controlled elsewhere,,,"
group.long 0xEF8++0x03 "Integration Test Registers"
line.long 0x00 "ITATBCTR1,Returns the value of the ATREADYM0. ATREADYM1 and ATVALIDS inputs in integration mode."
bitfld.long 0x00 3. " ATVALIDS_R            ,Reads the value of the ATVALIDS input:" "LOW: Pin is at logic 0,HIGH: Pin is at logic 1"
textline "                      "
bitfld.long 0x00 1. "ATREADYM1_R           ,Reads the value of the ATREADYM1 input:" "LOW: Pin is at logic 0,HIGH: Pin is at logic 1"
textline "                      "
bitfld.long 0x00 0. "ATREADYM0_R           ,Reads the value of the ATREADYM0 input:" "LOW: Pin is at logic 0,HIGH: Pin is at logic 1"
group.long 0xEFC++0x03
line.long 0x00 "ITATBCTR0,Controls the value of the ATVALIDM0. ATVALIDM1 and ATREADYS outputs in integration mode."
bitfld.long 0x00 4. " ATREADYS_W            ,Sets the value of the ATREADYS output:" "LOW: Drive logic 0 on the ATREADYS output,HIGH: Drive logic 1 on the ATREADYS output"
textline "                      "
bitfld.long 0x00 2. "ATVALIDM1_W           ,Sets the value of the ATVALIDM1 output:" "LOW: Drive logic 0 on the ATVALIDM1 output,HIGH: Drive logic 1 on the ATVALIDM1 output"
textline "                      "
bitfld.long 0x00 0. "ATVALIDM0_W           ,Sets the value of the ATVALIDM0 output:" "LOW: Drive logic 0 on the ATVALIDM0 output,HIGH: Drive logic 1 on the ATVALIDM0 output"
group.long 0xF00++0x03
line.long 0x00 "ITCTRL,Used to enable topology detection"
bitfld.long 0x00 0. " Integration_mode      ,Enables the component to switch from functional mode to integration mode and back. If no integration functionality is implemented. this register must read as zero." "Functional_mode: Disable integration mode,Integration_mode: Enable integration mode"
rgroup.long 0xFE0++0x0F "Peripheral Identification Registers"
line.long 0x00 "TRCPIDR0,Peripheral ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PART_0    ,Part Number [7:0]"
line.long 0x04 "TRCPIDR1,Peripheral ID Register 1"
bitfld.long 0x04 4.--7. " DES_0     ,JEP106 Identity Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PART_1  ,Part Number [11:8]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCPIDR2,Peripheral ID Register 2"
bitfld.long 0x08 4.--7. " REVISION  ,Revision [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x08 3. "               JEDEC   ,JEDEC" "Low,High"
bitfld.long 0x08 0.--2. "             DES_1    ,JEP106 Identity Code [6:4]" "0,1,2,3,4,5,6,7"
line.long 0x0C "TRCPIDR3,Peripheral ID Register 3"
bitfld.long 0x0C 4.--7. " REVAND    ,RevAnd [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x0C 0.--3. "               CMOD    ,Customer Modified [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFD0++0x03
line.long 0x00 "TRCPIDR4,Peripheral ID Register 4"
bitfld.long 0x00 4.--7. " SIZE      ,Always 0x0 indicating a single 4KB component" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x00 0.--3. "               DES_2   ,JEP106 Continuation Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFF0++0x0F "Component Identification Registers"
line.long 0x00 "TRCCIDR0,Component ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PRMBL_0   ,PRMBL_0"
line.long 0x04 "TRCCIDR1,Component ID Register 1"
bitfld.long 0x04 4.--7. " CLASS     ,CLASS" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PRMBL_1 ,PRMBL_2" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCCIDR2,Component ID Register 2"
hexmask.long.byte 0x08 0.--7. 1. " PRMBL_2   ,PRMBL_2"
line.long 0x0C "TRCCIDR3,Component ID Register 3"
hexmask.long.byte 0x0C 0.--7. 1. " PRMBL_3   ,PRMBL_3"
tree.end
tree.end
endif
sif COMPonent.AVAILABLE("replicator13")
tree "REPLICATOR13   "+COMPonent.NAME("REPLICATOR13",-1)
base e:comp.base("replicator13",-1)
width 12.
group.long 0x00++0x03
line.long 0x00 "IDFILTER0,Allows the setting of ID filter for Master 0."
bitfld.long 0x00 7. " ID0_70_7F ,filitering id's" " No,Yes"
bitfld.long 0x00 6. " ID0_60_6F ,filitering id's" " No,Yes"
bitfld.long 0x00 5. " ID0_50_5F ,filitering id's" " No,Yes"
bitfld.long 0x00 4. " ID0_40_4F ,filitering id's" " No,Yes"
textline "                     "
bitfld.long 0x00 3. " ID0_30_3F ,filitering id's" " No,Yes"
bitfld.long 0x00 2. " ID0_20_2F ,filitering id's" " No,Yes"
bitfld.long 0x00 1. " ID0_10_1F ,filitering id's" " No,Yes"
bitfld.long 0x00 0. " ID0_00_0F ,filitering id's" " No,Yes"
group.long 0x04++0x03
line.long 0x00 "IDFILTER1,Allows the setting of ID filter for Master 1."
bitfld.long 0x00 7. " ID1_70_7F ,filitering id's" " No,Yes"
bitfld.long 0x00 6. " ID1_60_6F ,filitering id's" " No,Yes"
bitfld.long 0x00 5. " ID1_50_5F ,filitering id's" " No,Yes"
bitfld.long 0x00 4. " ID1_40_4F ,filitering id's" " No,Yes"
textline "                     "
bitfld.long 0x00 3. " ID1_30_3F ,filitering id's" " No,Yes"
bitfld.long 0x00 2. " ID1_20_2F ,filitering id's" " No,Yes"
bitfld.long 0x00 1. " ID1_10_1F ,filitering id's" " No,Yes"
bitfld.long 0x00 0. " ID1_00_0F ,filitering id's" " No,Yes"
tree "CoreSight Management Registers"
group.long 0xFA0++0x03
line.long 0x00 "CLAIMSET,This is used in conjunction with Claim Tag Clear Register. CLAIMCLR. This register forms one half of the Claim Tag value. This location allows individual bits to be set. write. and returns the number of bits that can be set. read."
bitfld.long 0x00 0.--3. " CLAIMSET              ,This claim tag bit is implemented" ",,,,,,,,,,,,,,,Claim_Tag_Implemented_Bits: These bits are present within the claim tag field"
group.long 0xFA4++0x03
line.long 0x00 "CLAIMCLR,This register is used in conjunction with Claim Tag Set Register. CLAIMSET. This register forms one half of the Claim Tag value. This location enables individual bits to be cleared. write. and returns the current Claim Tag value. read."
bitfld.long 0x00 0.--3. " CLAIMCLR              ,The value present reflects the current setting of the Claim Tag." "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
group.long 0xFB0++0x03
line.long 0x00 "LAR,This is used to enable write access to device registers."
hexmask.long 0x00 0.--31. 1. " ACCESS_W              ,A write of 0xC5ACCE55 enables further write access to this device. An invalid write has the affect of removing write access."
group.long 0xFB4++0x03
line.long 0x00 "LSR,This indicates the status of the lock control mechanism"
bitfld.long 0x00 2. " LOCKTYPE              ,Indicates if the Lock Access Register. 0xFB0. is implemented as 8-bit or 32-bit." "Size_32bit: This component implements a 32-bit Lock Access Register,"
textline "                      "
bitfld.long 0x00 1. "LOCKGRANT             ,Returns the current status of the Lock." "Access_permitted: Write access is allowed to this device,Device_Locked: Write access to the component is blocked"
textline "                      "
bitfld.long 0x00 0. "LOCKEXIST             ,Indicates that a lock control mechanism exists for this device." "Lock_Not_Present: No lock control mechanism exists,Lock_Present: Lock control mechanism is present"
group.long 0xFB8++0x03
line.long 0x00 "AUTHSTATUS,Reports the required security level and current status of those enables. Where functionality changes on a given security level then this change in status must be reported in this register"
bitfld.long 0x00 6.--7. " SNID                  ,Indicates the security level for secure non-invasive debug" "Not_Implemented: Functionality not implemented or controlled elsewhere,,,"
textline "                      "
bitfld.long 0x00 4.--5. "SID                   ,Indicates the security level for secure invasive debug" "Not_Implemented: Functionality not implemented or controlled elsewhere,,,"
textline "                      "
bitfld.long 0x00 2.--3. "NSNID                 ,Indicates the security level for non-secure non-invasive debug" "Not_Implemented: Functionality not implemented or controlled elsewhere,,,"
textline "                      "
bitfld.long 0x00 0.--1. "NSID                  ,Indicates the security level for non-secure invasive debug" "Not_Implemented: Functionality not implemented or controlled elsewhere,,,"
group.long 0xEF8++0x03 "Integration Test Registers"
line.long 0x00 "ITATBCTR1,Returns the value of the ATREADYM0. ATREADYM1 and ATVALIDS inputs in integration mode."
bitfld.long 0x00 3. " ATVALIDS_R            ,Reads the value of the ATVALIDS input:" "LOW: Pin is at logic 0,HIGH: Pin is at logic 1"
textline "                      "
bitfld.long 0x00 1. "ATREADYM1_R           ,Reads the value of the ATREADYM1 input:" "LOW: Pin is at logic 0,HIGH: Pin is at logic 1"
textline "                      "
bitfld.long 0x00 0. "ATREADYM0_R           ,Reads the value of the ATREADYM0 input:" "LOW: Pin is at logic 0,HIGH: Pin is at logic 1"
group.long 0xEFC++0x03
line.long 0x00 "ITATBCTR0,Controls the value of the ATVALIDM0. ATVALIDM1 and ATREADYS outputs in integration mode."
bitfld.long 0x00 4. " ATREADYS_W            ,Sets the value of the ATREADYS output:" "LOW: Drive logic 0 on the ATREADYS output,HIGH: Drive logic 1 on the ATREADYS output"
textline "                      "
bitfld.long 0x00 2. "ATVALIDM1_W           ,Sets the value of the ATVALIDM1 output:" "LOW: Drive logic 0 on the ATVALIDM1 output,HIGH: Drive logic 1 on the ATVALIDM1 output"
textline "                      "
bitfld.long 0x00 0. "ATVALIDM0_W           ,Sets the value of the ATVALIDM0 output:" "LOW: Drive logic 0 on the ATVALIDM0 output,HIGH: Drive logic 1 on the ATVALIDM0 output"
group.long 0xF00++0x03
line.long 0x00 "ITCTRL,Used to enable topology detection"
bitfld.long 0x00 0. " Integration_mode      ,Enables the component to switch from functional mode to integration mode and back. If no integration functionality is implemented. this register must read as zero." "Functional_mode: Disable integration mode,Integration_mode: Enable integration mode"
rgroup.long 0xFE0++0x0F "Peripheral Identification Registers"
line.long 0x00 "TRCPIDR0,Peripheral ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PART_0    ,Part Number [7:0]"
line.long 0x04 "TRCPIDR1,Peripheral ID Register 1"
bitfld.long 0x04 4.--7. " DES_0     ,JEP106 Identity Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PART_1  ,Part Number [11:8]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCPIDR2,Peripheral ID Register 2"
bitfld.long 0x08 4.--7. " REVISION  ,Revision [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x08 3. "               JEDEC   ,JEDEC" "Low,High"
bitfld.long 0x08 0.--2. "             DES_1    ,JEP106 Identity Code [6:4]" "0,1,2,3,4,5,6,7"
line.long 0x0C "TRCPIDR3,Peripheral ID Register 3"
bitfld.long 0x0C 4.--7. " REVAND    ,RevAnd [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x0C 0.--3. "               CMOD    ,Customer Modified [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFD0++0x03
line.long 0x00 "TRCPIDR4,Peripheral ID Register 4"
bitfld.long 0x00 4.--7. " SIZE      ,Always 0x0 indicating a single 4KB component" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x00 0.--3. "               DES_2   ,JEP106 Continuation Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFF0++0x0F "Component Identification Registers"
line.long 0x00 "TRCCIDR0,Component ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PRMBL_0   ,PRMBL_0"
line.long 0x04 "TRCCIDR1,Component ID Register 1"
bitfld.long 0x04 4.--7. " CLASS     ,CLASS" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PRMBL_1 ,PRMBL_2" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCCIDR2,Component ID Register 2"
hexmask.long.byte 0x08 0.--7. 1. " PRMBL_2   ,PRMBL_2"
line.long 0x0C "TRCCIDR3,Component ID Register 3"
hexmask.long.byte 0x0C 0.--7. 1. " PRMBL_3   ,PRMBL_3"
tree.end
tree.end
endif
sif COMPonent.AVAILABLE("replicator14")
tree "REPLICATOR14   "+COMPonent.NAME("REPLICATOR14",-1)
base e:comp.base("replicator14",-1)
width 12.
group.long 0x00++0x03
line.long 0x00 "IDFILTER0,Allows the setting of ID filter for Master 0."
bitfld.long 0x00 7. " ID0_70_7F ,filitering id's" " No,Yes"
bitfld.long 0x00 6. " ID0_60_6F ,filitering id's" " No,Yes"
bitfld.long 0x00 5. " ID0_50_5F ,filitering id's" " No,Yes"
bitfld.long 0x00 4. " ID0_40_4F ,filitering id's" " No,Yes"
textline "                     "
bitfld.long 0x00 3. " ID0_30_3F ,filitering id's" " No,Yes"
bitfld.long 0x00 2. " ID0_20_2F ,filitering id's" " No,Yes"
bitfld.long 0x00 1. " ID0_10_1F ,filitering id's" " No,Yes"
bitfld.long 0x00 0. " ID0_00_0F ,filitering id's" " No,Yes"
group.long 0x04++0x03
line.long 0x00 "IDFILTER1,Allows the setting of ID filter for Master 1."
bitfld.long 0x00 7. " ID1_70_7F ,filitering id's" " No,Yes"
bitfld.long 0x00 6. " ID1_60_6F ,filitering id's" " No,Yes"
bitfld.long 0x00 5. " ID1_50_5F ,filitering id's" " No,Yes"
bitfld.long 0x00 4. " ID1_40_4F ,filitering id's" " No,Yes"
textline "                     "
bitfld.long 0x00 3. " ID1_30_3F ,filitering id's" " No,Yes"
bitfld.long 0x00 2. " ID1_20_2F ,filitering id's" " No,Yes"
bitfld.long 0x00 1. " ID1_10_1F ,filitering id's" " No,Yes"
bitfld.long 0x00 0. " ID1_00_0F ,filitering id's" " No,Yes"
tree "CoreSight Management Registers"
group.long 0xFA0++0x03
line.long 0x00 "CLAIMSET,This is used in conjunction with Claim Tag Clear Register. CLAIMCLR. This register forms one half of the Claim Tag value. This location allows individual bits to be set. write. and returns the number of bits that can be set. read."
bitfld.long 0x00 0.--3. " CLAIMSET              ,This claim tag bit is implemented" ",,,,,,,,,,,,,,,Claim_Tag_Implemented_Bits: These bits are present within the claim tag field"
group.long 0xFA4++0x03
line.long 0x00 "CLAIMCLR,This register is used in conjunction with Claim Tag Set Register. CLAIMSET. This register forms one half of the Claim Tag value. This location enables individual bits to be cleared. write. and returns the current Claim Tag value. read."
bitfld.long 0x00 0.--3. " CLAIMCLR              ,The value present reflects the current setting of the Claim Tag." "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
group.long 0xFB0++0x03
line.long 0x00 "LAR,This is used to enable write access to device registers."
hexmask.long 0x00 0.--31. 1. " ACCESS_W              ,A write of 0xC5ACCE55 enables further write access to this device. An invalid write has the affect of removing write access."
group.long 0xFB4++0x03
line.long 0x00 "LSR,This indicates the status of the lock control mechanism"
bitfld.long 0x00 2. " LOCKTYPE              ,Indicates if the Lock Access Register. 0xFB0. is implemented as 8-bit or 32-bit." "Size_32bit: This component implements a 32-bit Lock Access Register,"
textline "                      "
bitfld.long 0x00 1. "LOCKGRANT             ,Returns the current status of the Lock." "Access_permitted: Write access is allowed to this device,Device_Locked: Write access to the component is blocked"
textline "                      "
bitfld.long 0x00 0. "LOCKEXIST             ,Indicates that a lock control mechanism exists for this device." "Lock_Not_Present: No lock control mechanism exists,Lock_Present: Lock control mechanism is present"
group.long 0xFB8++0x03
line.long 0x00 "AUTHSTATUS,Reports the required security level and current status of those enables. Where functionality changes on a given security level then this change in status must be reported in this register"
bitfld.long 0x00 6.--7. " SNID                  ,Indicates the security level for secure non-invasive debug" "Not_Implemented: Functionality not implemented or controlled elsewhere,,,"
textline "                      "
bitfld.long 0x00 4.--5. "SID                   ,Indicates the security level for secure invasive debug" "Not_Implemented: Functionality not implemented or controlled elsewhere,,,"
textline "                      "
bitfld.long 0x00 2.--3. "NSNID                 ,Indicates the security level for non-secure non-invasive debug" "Not_Implemented: Functionality not implemented or controlled elsewhere,,,"
textline "                      "
bitfld.long 0x00 0.--1. "NSID                  ,Indicates the security level for non-secure invasive debug" "Not_Implemented: Functionality not implemented or controlled elsewhere,,,"
group.long 0xEF8++0x03 "Integration Test Registers"
line.long 0x00 "ITATBCTR1,Returns the value of the ATREADYM0. ATREADYM1 and ATVALIDS inputs in integration mode."
bitfld.long 0x00 3. " ATVALIDS_R            ,Reads the value of the ATVALIDS input:" "LOW: Pin is at logic 0,HIGH: Pin is at logic 1"
textline "                      "
bitfld.long 0x00 1. "ATREADYM1_R           ,Reads the value of the ATREADYM1 input:" "LOW: Pin is at logic 0,HIGH: Pin is at logic 1"
textline "                      "
bitfld.long 0x00 0. "ATREADYM0_R           ,Reads the value of the ATREADYM0 input:" "LOW: Pin is at logic 0,HIGH: Pin is at logic 1"
group.long 0xEFC++0x03
line.long 0x00 "ITATBCTR0,Controls the value of the ATVALIDM0. ATVALIDM1 and ATREADYS outputs in integration mode."
bitfld.long 0x00 4. " ATREADYS_W            ,Sets the value of the ATREADYS output:" "LOW: Drive logic 0 on the ATREADYS output,HIGH: Drive logic 1 on the ATREADYS output"
textline "                      "
bitfld.long 0x00 2. "ATVALIDM1_W           ,Sets the value of the ATVALIDM1 output:" "LOW: Drive logic 0 on the ATVALIDM1 output,HIGH: Drive logic 1 on the ATVALIDM1 output"
textline "                      "
bitfld.long 0x00 0. "ATVALIDM0_W           ,Sets the value of the ATVALIDM0 output:" "LOW: Drive logic 0 on the ATVALIDM0 output,HIGH: Drive logic 1 on the ATVALIDM0 output"
group.long 0xF00++0x03
line.long 0x00 "ITCTRL,Used to enable topology detection"
bitfld.long 0x00 0. " Integration_mode      ,Enables the component to switch from functional mode to integration mode and back. If no integration functionality is implemented. this register must read as zero." "Functional_mode: Disable integration mode,Integration_mode: Enable integration mode"
rgroup.long 0xFE0++0x0F "Peripheral Identification Registers"
line.long 0x00 "TRCPIDR0,Peripheral ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PART_0    ,Part Number [7:0]"
line.long 0x04 "TRCPIDR1,Peripheral ID Register 1"
bitfld.long 0x04 4.--7. " DES_0     ,JEP106 Identity Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PART_1  ,Part Number [11:8]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCPIDR2,Peripheral ID Register 2"
bitfld.long 0x08 4.--7. " REVISION  ,Revision [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x08 3. "               JEDEC   ,JEDEC" "Low,High"
bitfld.long 0x08 0.--2. "             DES_1    ,JEP106 Identity Code [6:4]" "0,1,2,3,4,5,6,7"
line.long 0x0C "TRCPIDR3,Peripheral ID Register 3"
bitfld.long 0x0C 4.--7. " REVAND    ,RevAnd [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x0C 0.--3. "               CMOD    ,Customer Modified [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFD0++0x03
line.long 0x00 "TRCPIDR4,Peripheral ID Register 4"
bitfld.long 0x00 4.--7. " SIZE      ,Always 0x0 indicating a single 4KB component" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x00 0.--3. "               DES_2   ,JEP106 Continuation Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFF0++0x0F "Component Identification Registers"
line.long 0x00 "TRCCIDR0,Component ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PRMBL_0   ,PRMBL_0"
line.long 0x04 "TRCCIDR1,Component ID Register 1"
bitfld.long 0x04 4.--7. " CLASS     ,CLASS" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PRMBL_1 ,PRMBL_2" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCCIDR2,Component ID Register 2"
hexmask.long.byte 0x08 0.--7. 1. " PRMBL_2   ,PRMBL_2"
line.long 0x0C "TRCCIDR3,Component ID Register 3"
hexmask.long.byte 0x0C 0.--7. 1. " PRMBL_3   ,PRMBL_3"
tree.end
tree.end
endif
sif COMPonent.AVAILABLE("replicator15")
tree "REPLICATOR15   "+COMPonent.NAME("REPLICATOR15",-1)
base e:comp.base("replicator15",-1)
width 12.
group.long 0x00++0x03
line.long 0x00 "IDFILTER0,Allows the setting of ID filter for Master 0."
bitfld.long 0x00 7. " ID0_70_7F ,filitering id's" " No,Yes"
bitfld.long 0x00 6. " ID0_60_6F ,filitering id's" " No,Yes"
bitfld.long 0x00 5. " ID0_50_5F ,filitering id's" " No,Yes"
bitfld.long 0x00 4. " ID0_40_4F ,filitering id's" " No,Yes"
textline "                     "
bitfld.long 0x00 3. " ID0_30_3F ,filitering id's" " No,Yes"
bitfld.long 0x00 2. " ID0_20_2F ,filitering id's" " No,Yes"
bitfld.long 0x00 1. " ID0_10_1F ,filitering id's" " No,Yes"
bitfld.long 0x00 0. " ID0_00_0F ,filitering id's" " No,Yes"
group.long 0x04++0x03
line.long 0x00 "IDFILTER1,Allows the setting of ID filter for Master 1."
bitfld.long 0x00 7. " ID1_70_7F ,filitering id's" " No,Yes"
bitfld.long 0x00 6. " ID1_60_6F ,filitering id's" " No,Yes"
bitfld.long 0x00 5. " ID1_50_5F ,filitering id's" " No,Yes"
bitfld.long 0x00 4. " ID1_40_4F ,filitering id's" " No,Yes"
textline "                     "
bitfld.long 0x00 3. " ID1_30_3F ,filitering id's" " No,Yes"
bitfld.long 0x00 2. " ID1_20_2F ,filitering id's" " No,Yes"
bitfld.long 0x00 1. " ID1_10_1F ,filitering id's" " No,Yes"
bitfld.long 0x00 0. " ID1_00_0F ,filitering id's" " No,Yes"
tree "CoreSight Management Registers"
group.long 0xFA0++0x03
line.long 0x00 "CLAIMSET,This is used in conjunction with Claim Tag Clear Register. CLAIMCLR. This register forms one half of the Claim Tag value. This location allows individual bits to be set. write. and returns the number of bits that can be set. read."
bitfld.long 0x00 0.--3. " CLAIMSET              ,This claim tag bit is implemented" ",,,,,,,,,,,,,,,Claim_Tag_Implemented_Bits: These bits are present within the claim tag field"
group.long 0xFA4++0x03
line.long 0x00 "CLAIMCLR,This register is used in conjunction with Claim Tag Set Register. CLAIMSET. This register forms one half of the Claim Tag value. This location enables individual bits to be cleared. write. and returns the current Claim Tag value. read."
bitfld.long 0x00 0.--3. " CLAIMCLR              ,The value present reflects the current setting of the Claim Tag." "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
group.long 0xFB0++0x03
line.long 0x00 "LAR,This is used to enable write access to device registers."
hexmask.long 0x00 0.--31. 1. " ACCESS_W              ,A write of 0xC5ACCE55 enables further write access to this device. An invalid write has the affect of removing write access."
group.long 0xFB4++0x03
line.long 0x00 "LSR,This indicates the status of the lock control mechanism"
bitfld.long 0x00 2. " LOCKTYPE              ,Indicates if the Lock Access Register. 0xFB0. is implemented as 8-bit or 32-bit." "Size_32bit: This component implements a 32-bit Lock Access Register,"
textline "                      "
bitfld.long 0x00 1. "LOCKGRANT             ,Returns the current status of the Lock." "Access_permitted: Write access is allowed to this device,Device_Locked: Write access to the component is blocked"
textline "                      "
bitfld.long 0x00 0. "LOCKEXIST             ,Indicates that a lock control mechanism exists for this device." "Lock_Not_Present: No lock control mechanism exists,Lock_Present: Lock control mechanism is present"
group.long 0xFB8++0x03
line.long 0x00 "AUTHSTATUS,Reports the required security level and current status of those enables. Where functionality changes on a given security level then this change in status must be reported in this register"
bitfld.long 0x00 6.--7. " SNID                  ,Indicates the security level for secure non-invasive debug" "Not_Implemented: Functionality not implemented or controlled elsewhere,,,"
textline "                      "
bitfld.long 0x00 4.--5. "SID                   ,Indicates the security level for secure invasive debug" "Not_Implemented: Functionality not implemented or controlled elsewhere,,,"
textline "                      "
bitfld.long 0x00 2.--3. "NSNID                 ,Indicates the security level for non-secure non-invasive debug" "Not_Implemented: Functionality not implemented or controlled elsewhere,,,"
textline "                      "
bitfld.long 0x00 0.--1. "NSID                  ,Indicates the security level for non-secure invasive debug" "Not_Implemented: Functionality not implemented or controlled elsewhere,,,"
group.long 0xEF8++0x03 "Integration Test Registers"
line.long 0x00 "ITATBCTR1,Returns the value of the ATREADYM0. ATREADYM1 and ATVALIDS inputs in integration mode."
bitfld.long 0x00 3. " ATVALIDS_R            ,Reads the value of the ATVALIDS input:" "LOW: Pin is at logic 0,HIGH: Pin is at logic 1"
textline "                      "
bitfld.long 0x00 1. "ATREADYM1_R           ,Reads the value of the ATREADYM1 input:" "LOW: Pin is at logic 0,HIGH: Pin is at logic 1"
textline "                      "
bitfld.long 0x00 0. "ATREADYM0_R           ,Reads the value of the ATREADYM0 input:" "LOW: Pin is at logic 0,HIGH: Pin is at logic 1"
group.long 0xEFC++0x03
line.long 0x00 "ITATBCTR0,Controls the value of the ATVALIDM0. ATVALIDM1 and ATREADYS outputs in integration mode."
bitfld.long 0x00 4. " ATREADYS_W            ,Sets the value of the ATREADYS output:" "LOW: Drive logic 0 on the ATREADYS output,HIGH: Drive logic 1 on the ATREADYS output"
textline "                      "
bitfld.long 0x00 2. "ATVALIDM1_W           ,Sets the value of the ATVALIDM1 output:" "LOW: Drive logic 0 on the ATVALIDM1 output,HIGH: Drive logic 1 on the ATVALIDM1 output"
textline "                      "
bitfld.long 0x00 0. "ATVALIDM0_W           ,Sets the value of the ATVALIDM0 output:" "LOW: Drive logic 0 on the ATVALIDM0 output,HIGH: Drive logic 1 on the ATVALIDM0 output"
group.long 0xF00++0x03
line.long 0x00 "ITCTRL,Used to enable topology detection"
bitfld.long 0x00 0. " Integration_mode      ,Enables the component to switch from functional mode to integration mode and back. If no integration functionality is implemented. this register must read as zero." "Functional_mode: Disable integration mode,Integration_mode: Enable integration mode"
rgroup.long 0xFE0++0x0F "Peripheral Identification Registers"
line.long 0x00 "TRCPIDR0,Peripheral ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PART_0    ,Part Number [7:0]"
line.long 0x04 "TRCPIDR1,Peripheral ID Register 1"
bitfld.long 0x04 4.--7. " DES_0     ,JEP106 Identity Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PART_1  ,Part Number [11:8]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCPIDR2,Peripheral ID Register 2"
bitfld.long 0x08 4.--7. " REVISION  ,Revision [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x08 3. "               JEDEC   ,JEDEC" "Low,High"
bitfld.long 0x08 0.--2. "             DES_1    ,JEP106 Identity Code [6:4]" "0,1,2,3,4,5,6,7"
line.long 0x0C "TRCPIDR3,Peripheral ID Register 3"
bitfld.long 0x0C 4.--7. " REVAND    ,RevAnd [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x0C 0.--3. "               CMOD    ,Customer Modified [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFD0++0x03
line.long 0x00 "TRCPIDR4,Peripheral ID Register 4"
bitfld.long 0x00 4.--7. " SIZE      ,Always 0x0 indicating a single 4KB component" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x00 0.--3. "               DES_2   ,JEP106 Continuation Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFF0++0x0F "Component Identification Registers"
line.long 0x00 "TRCCIDR0,Component ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PRMBL_0   ,PRMBL_0"
line.long 0x04 "TRCCIDR1,Component ID Register 1"
bitfld.long 0x04 4.--7. " CLASS     ,CLASS" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PRMBL_1 ,PRMBL_2" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCCIDR2,Component ID Register 2"
hexmask.long.byte 0x08 0.--7. 1. " PRMBL_2   ,PRMBL_2"
line.long 0x0C "TRCCIDR3,Component ID Register 3"
hexmask.long.byte 0x0C 0.--7. 1. " PRMBL_3   ,PRMBL_3"
tree.end
tree.end
endif
sif COMPonent.AVAILABLE("replicator16")
tree "REPLICATOR16   "+COMPonent.NAME("REPLICATOR16",-1)
base e:comp.base("replicator16",-1)
width 12.
group.long 0x00++0x03
line.long 0x00 "IDFILTER0,Allows the setting of ID filter for Master 0."
bitfld.long 0x00 7. " ID0_70_7F ,filitering id's" " No,Yes"
bitfld.long 0x00 6. " ID0_60_6F ,filitering id's" " No,Yes"
bitfld.long 0x00 5. " ID0_50_5F ,filitering id's" " No,Yes"
bitfld.long 0x00 4. " ID0_40_4F ,filitering id's" " No,Yes"
textline "                     "
bitfld.long 0x00 3. " ID0_30_3F ,filitering id's" " No,Yes"
bitfld.long 0x00 2. " ID0_20_2F ,filitering id's" " No,Yes"
bitfld.long 0x00 1. " ID0_10_1F ,filitering id's" " No,Yes"
bitfld.long 0x00 0. " ID0_00_0F ,filitering id's" " No,Yes"
group.long 0x04++0x03
line.long 0x00 "IDFILTER1,Allows the setting of ID filter for Master 1."
bitfld.long 0x00 7. " ID1_70_7F ,filitering id's" " No,Yes"
bitfld.long 0x00 6. " ID1_60_6F ,filitering id's" " No,Yes"
bitfld.long 0x00 5. " ID1_50_5F ,filitering id's" " No,Yes"
bitfld.long 0x00 4. " ID1_40_4F ,filitering id's" " No,Yes"
textline "                     "
bitfld.long 0x00 3. " ID1_30_3F ,filitering id's" " No,Yes"
bitfld.long 0x00 2. " ID1_20_2F ,filitering id's" " No,Yes"
bitfld.long 0x00 1. " ID1_10_1F ,filitering id's" " No,Yes"
bitfld.long 0x00 0. " ID1_00_0F ,filitering id's" " No,Yes"
tree "CoreSight Management Registers"
group.long 0xFA0++0x03
line.long 0x00 "CLAIMSET,This is used in conjunction with Claim Tag Clear Register. CLAIMCLR. This register forms one half of the Claim Tag value. This location allows individual bits to be set. write. and returns the number of bits that can be set. read."
bitfld.long 0x00 0.--3. " CLAIMSET              ,This claim tag bit is implemented" ",,,,,,,,,,,,,,,Claim_Tag_Implemented_Bits: These bits are present within the claim tag field"
group.long 0xFA4++0x03
line.long 0x00 "CLAIMCLR,This register is used in conjunction with Claim Tag Set Register. CLAIMSET. This register forms one half of the Claim Tag value. This location enables individual bits to be cleared. write. and returns the current Claim Tag value. read."
bitfld.long 0x00 0.--3. " CLAIMCLR              ,The value present reflects the current setting of the Claim Tag." "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
group.long 0xFB0++0x03
line.long 0x00 "LAR,This is used to enable write access to device registers."
hexmask.long 0x00 0.--31. 1. " ACCESS_W              ,A write of 0xC5ACCE55 enables further write access to this device. An invalid write has the affect of removing write access."
group.long 0xFB4++0x03
line.long 0x00 "LSR,This indicates the status of the lock control mechanism"
bitfld.long 0x00 2. " LOCKTYPE              ,Indicates if the Lock Access Register. 0xFB0. is implemented as 8-bit or 32-bit." "Size_32bit: This component implements a 32-bit Lock Access Register,"
textline "                      "
bitfld.long 0x00 1. "LOCKGRANT             ,Returns the current status of the Lock." "Access_permitted: Write access is allowed to this device,Device_Locked: Write access to the component is blocked"
textline "                      "
bitfld.long 0x00 0. "LOCKEXIST             ,Indicates that a lock control mechanism exists for this device." "Lock_Not_Present: No lock control mechanism exists,Lock_Present: Lock control mechanism is present"
group.long 0xFB8++0x03
line.long 0x00 "AUTHSTATUS,Reports the required security level and current status of those enables. Where functionality changes on a given security level then this change in status must be reported in this register"
bitfld.long 0x00 6.--7. " SNID                  ,Indicates the security level for secure non-invasive debug" "Not_Implemented: Functionality not implemented or controlled elsewhere,,,"
textline "                      "
bitfld.long 0x00 4.--5. "SID                   ,Indicates the security level for secure invasive debug" "Not_Implemented: Functionality not implemented or controlled elsewhere,,,"
textline "                      "
bitfld.long 0x00 2.--3. "NSNID                 ,Indicates the security level for non-secure non-invasive debug" "Not_Implemented: Functionality not implemented or controlled elsewhere,,,"
textline "                      "
bitfld.long 0x00 0.--1. "NSID                  ,Indicates the security level for non-secure invasive debug" "Not_Implemented: Functionality not implemented or controlled elsewhere,,,"
group.long 0xEF8++0x03 "Integration Test Registers"
line.long 0x00 "ITATBCTR1,Returns the value of the ATREADYM0. ATREADYM1 and ATVALIDS inputs in integration mode."
bitfld.long 0x00 3. " ATVALIDS_R            ,Reads the value of the ATVALIDS input:" "LOW: Pin is at logic 0,HIGH: Pin is at logic 1"
textline "                      "
bitfld.long 0x00 1. "ATREADYM1_R           ,Reads the value of the ATREADYM1 input:" "LOW: Pin is at logic 0,HIGH: Pin is at logic 1"
textline "                      "
bitfld.long 0x00 0. "ATREADYM0_R           ,Reads the value of the ATREADYM0 input:" "LOW: Pin is at logic 0,HIGH: Pin is at logic 1"
group.long 0xEFC++0x03
line.long 0x00 "ITATBCTR0,Controls the value of the ATVALIDM0. ATVALIDM1 and ATREADYS outputs in integration mode."
bitfld.long 0x00 4. " ATREADYS_W            ,Sets the value of the ATREADYS output:" "LOW: Drive logic 0 on the ATREADYS output,HIGH: Drive logic 1 on the ATREADYS output"
textline "                      "
bitfld.long 0x00 2. "ATVALIDM1_W           ,Sets the value of the ATVALIDM1 output:" "LOW: Drive logic 0 on the ATVALIDM1 output,HIGH: Drive logic 1 on the ATVALIDM1 output"
textline "                      "
bitfld.long 0x00 0. "ATVALIDM0_W           ,Sets the value of the ATVALIDM0 output:" "LOW: Drive logic 0 on the ATVALIDM0 output,HIGH: Drive logic 1 on the ATVALIDM0 output"
group.long 0xF00++0x03
line.long 0x00 "ITCTRL,Used to enable topology detection"
bitfld.long 0x00 0. " Integration_mode      ,Enables the component to switch from functional mode to integration mode and back. If no integration functionality is implemented. this register must read as zero." "Functional_mode: Disable integration mode,Integration_mode: Enable integration mode"
rgroup.long 0xFE0++0x0F "Peripheral Identification Registers"
line.long 0x00 "TRCPIDR0,Peripheral ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PART_0    ,Part Number [7:0]"
line.long 0x04 "TRCPIDR1,Peripheral ID Register 1"
bitfld.long 0x04 4.--7. " DES_0     ,JEP106 Identity Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PART_1  ,Part Number [11:8]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCPIDR2,Peripheral ID Register 2"
bitfld.long 0x08 4.--7. " REVISION  ,Revision [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x08 3. "               JEDEC   ,JEDEC" "Low,High"
bitfld.long 0x08 0.--2. "             DES_1    ,JEP106 Identity Code [6:4]" "0,1,2,3,4,5,6,7"
line.long 0x0C "TRCPIDR3,Peripheral ID Register 3"
bitfld.long 0x0C 4.--7. " REVAND    ,RevAnd [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x0C 0.--3. "               CMOD    ,Customer Modified [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFD0++0x03
line.long 0x00 "TRCPIDR4,Peripheral ID Register 4"
bitfld.long 0x00 4.--7. " SIZE      ,Always 0x0 indicating a single 4KB component" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x00 0.--3. "               DES_2   ,JEP106 Continuation Code [3:0]" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
rgroup.long 0xFF0++0x0F "Component Identification Registers"
line.long 0x00 "TRCCIDR0,Component ID Register 0"
hexmask.long.byte 0x00 0.--7. 1. " PRMBL_0   ,PRMBL_0"
line.long 0x04 "TRCCIDR1,Component ID Register 1"
bitfld.long 0x04 4.--7. " CLASS     ,CLASS" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
bitfld.long 0x04 0.--3. "               PRMBL_1 ,PRMBL_2" "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15"
line.long 0x08 "TRCCIDR2,Component ID Register 2"
hexmask.long.byte 0x08 0.--7. 1. " PRMBL_2   ,PRMBL_2"
line.long 0x0C "TRCCIDR3,Component ID Register 3"
hexmask.long.byte 0x0C 0.--7. 1. " PRMBL_3   ,PRMBL_3"
tree.end
tree.end
endif

textline ""

