;Register definition for ARMv8
;=============================
;
; name: user defined name of the register
; type: the type of the register
;	GPR	general purpose register
;	SYS	System register
;	MM	memory mapped register
;	DMMx	direct memory mapped register with offset
;		x = 1..4
;		the base is defined in the configuration file
;		e.g. DMM1 0x02200000
; addr:	the number, adddress or offset of the register
; size	the size of the register (8,16 or 32)
;
;
;  AV8 Register Numbers :
;  +-------+-------+-------+-------+
;  | | | | | | | | | | | | | | | | |
;  +-+-----+-------+-------+-----+-+
;  |o| op1 |  CRn  |  CRm  | op2 |-|
;  +-+-----+-------+-------+-----+-+
;
;  AV7 Register Numbers (low word):
;  +-------+-------+-------+-------+
;  | | | | | | | | | | | | | | | | |
;  +-----+-+-------+-----+-+-------+
;  |opc_2|0|  CRm  |opc_1|0|  nbr  |
;  +-----+-+-------+-----+-+-------+
;  High word defines the CP number
;
;
;name		type	addr		size
;-------------------------------------------
;
;
; System Registers
; ----------------
midr_el1        SYS     0x8000
ctr_el0         SYS     0xb002
mpidr_el1       SYS     0x800a          64
revidr_el1      SYS     0x800c
dczid_el0       SYS     0xb00e
id_pfr0_el1     SYS     0x8010
id_pfr1_el1     SYS     0x8012
id_dfr0_el1     SYS     0x8014
id_afr0_el1     SYS     0x8016
id_mmfr0_el1    SYS     0x8018
id_mmfr1_el1    SYS     0x801a
id_mmfr2_el1    SYS     0x801c
id_mmfr3_el1    SYS     0x801e
id_isar0_el1    SYS     0x8020
id_isar1_el1    SYS     0x8022
id_isar2_el1    SYS     0x8024
id_isar3_el1    SYS     0x8026
id_isar4_el1    SYS     0x8028
id_isar5_el1    SYS     0x802a
mvfr0_el1       SYS     0x8030
mvfr1_el1       SYS     0x8032
mvfr2_el1       SYS     0x8034
aa64pfr0_el1    SYS     0x8040
aa64pfr1_el1    SYS     0x8042
aa64dfr0_el1    SYS     0x8050
aa64dfr1_el1    SYS     0x8052
aa64afr0_el1    SYS     0x8058
aa64afr1_el1    SYS     0x805a
aa64isar0_el1   SYS     0x8060
aa64isar1_el1   SYS     0x8062
aa64mmfr0_el1   SYS     0x8070
aa64mmfr1_el1   SYS     0x8072
ccsidr_el1      SYS     0x9000
clidr_el1       SYS     0x9002
aidr_el1        SYS     0x900e
csselr_el1      SYS     0xa000
vpidr_el2       SYS     0xc000
vmpidr_el2      SYS     0xc00a          64
sctlr_el1       SYS     0x8100
sctlr_el2       SYS     0xc100
sctlr_el3       SYS     0xe100
actlr_el1       SYS     0x8102
actlr_el2       SYS     0xc102
actlr_el3       SYS     0xe102
cpacr_el1       SYS     0x8104
cptr_el2        SYS     0xc114
cptr_el3        SYS     0xe114
scr_el3         SYS     0xe110
hcr_el2         SYS     0xc110          64
mdcr_el2        SYS     0xc112
;mdcr_el3        SYS     0xe132
hstr_el2        SYS     0xc116
hacr_el2        SYS     0xc11e
ttbr0_el1       SYS     0x8200          64
ttbr1_el1       SYS     0x8202          64
ttbr0_el2       SYS     0xc200          64
ttbr0_el3       SYS     0xe200          64
vttbr_el2       SYS     0xc210          64
tcr_el1         SYS     0x8204          64
tcr_el2         SYS     0xc204
tcr_el3         SYS     0xe204
vtcr_el2        SYS     0xc214
afsr0_el1       SYS     0x8510
afsr1_el1       SYS     0x8512
afsr0_el2       SYS     0xc510
afsr1_el2       SYS     0xc512
afsr0_el3       SYS     0xe510
afsr1_el3       SYS     0xe512
esr_el1         SYS     0x8520
esr_el2         SYS     0xc520
esr_el3         SYS     0xe520
far_el1         SYS     0x8600          64
far_el2         SYS     0xc600          64
far_el3         SYS     0xe600          64
hpfar_el2       SYS     0xc608          64
par_el1         SYS     0x8740          64
mair_el1        SYS     0x8a20          64
mair_el2        SYS     0xca20          64
mair_el3        SYS     0xea20          64
amair_el1       SYS     0x8a30          64
amair_el2       SYS     0xca30          64
amair_el3       SYS     0xea30          64
vbar_el1        SYS     0x8c00          64
vbar_el2        SYS     0xcc00          64
vbar_el3        SYS     0xec00          64
;rvbar_el1       SYS     0x8c02          64
;rvbar_el2       SYS     0xcc02          64
rvbar_el3       SYS     0xec02          64
;rmr_el1         SYS     0x8c04          64
;rmr_el2         SYS     0xcc04          64
;rmr_el3         SYS     0xec04          64
isr_el1         SYS     0x8c10
contextidr_el1  SYS     0x8d02
tpidr_el0       SYS     0xbd04          64
tpidrro_el0     SYS     0xbd06          64
tpidr_el1       SYS     0x8d08          64
tpidr_el2       SYS     0xcd04          64
tpidr_el3       SYS     0xed04          64
;teecr32_el1     SYS     0x2000
cntfrq_el0      SYS     0xbe00
cntpct_el0      SYS     0xbe02          64
cntvct_el0      SYS     0xbe04          64
cntvoff_el2     SYS     0xce06          64
cntkctl_el1     SYS     0x8e10
cnthctl_el2     SYS     0xce10
cntp_tval_el0   SYS     0xbe20
cntp_ctl_el0    SYS     0xbe22
cntp_cval_el0   SYS     0xbe24          64
cntv_tval_el0   SYS     0xbe30
cntv_ctl_el0    SYS     0xbe32
cntv_cval_el0   SYS     0xbe34          64
cnthp_tval_el2  SYS     0xce20
cnthp_ctl_el2   SYS     0xce22
cnthp_cval_el2  SYS     0xce24          64
cntps_tval_el1  SYS     0xfe20
cntps_ctl_el1   SYS     0xfe22
cntps_cval_el1  SYS     0xfe24          64
;dacr32_el2      SYS     0xc300
;ifsr32_el2      SYS     0xc502
;teehbr32_el1    SYS     0x2100
;sder32_el3      SYS     0xe112
;fpexc32_el2     SYS     0xc530
;
spsr_el1        SYS     0x8400          32
spsr_el2        SYS     0xc400          32
elr_el1         SYS     0x8402          64
elr_el2         SYS     0xc402          64
;sp_el0          SYS     0x8410          64
sp_el1          SYS     0xc410          64
sp_el2          SYS     0xe410          64
;
dlr_el0         SYS     0xb452          64
dspsr_el0       SYS     0xb450          32
;
;
; Internal Debug Registers
; ------------------------
mdscr_el1       SYS     0x0024          32
;
;
; External Debug Registers
; ------------------------
dbg_edesr       DBG     0x00020         32
dbg_edecr       DBG     0x00024         32
dbg_edwar       DBG     0x00030         64
dbg_edscr       DBG     0x00088         32
;
;dbg_oslar       DBG     0x00300         32
dbg_edprcr      DBG     0x00310         32
dbg_edprsr      DBG     0x00314         32
;
dbg_bvr0        DBG     0x00400         64
dbg_bcr0        DBG     0x00408         32
;
dbg_bvr1        DBG     0x00410         64
dbg_bcr1        DBG     0x00418         32
;
; Cross-trigger Interface Registers
; ---------------------------------
cti_control     DBG     0x10000         32
cti_intack      DBG     0x10010         32
cti_appset      DBG     0x10014         32
cti_appclear    DBG     0x10018         32
cti_apppulse    DBG     0x1001C         32
cti_inen0       DBG     0x10020         32
cti_inen1       DBG     0x10024         32
cti_outen0      DBG     0x100A0         32
cti_outen1      DBG     0x100A4         32
cti_triginsta   DBG     0x10130         32
cti_trigoutsta  DBG     0x10134         32
cti_chinsta     DBG     0x10138         32
cti_choutsta    DBG     0x1013C         32
cti_gate        DBG     0x10140         32
cti_asicctl     DBG     0x10144         32
;
; RST Registers
; -------------
rst_boot        MM      0x87E006001600  64
rst_delay       MM      0x87E006001608  64
rst_cfg         MM      0x87E006001610  64
rst_ocx         MM      0x87E006001618  64
rst_int         MM      0x87E006001628  64
rst_int_w1s     MM      0x87E006001630  64
rst_ckill       MM      0x87E006001638  64
rst_ctl0        MM      0x87E006001640  64
rst_ctl1        MM      0x87E006001648  64
rst_ctl2        MM      0x87E006001650  64
rst_ctl3        MM      0x87E006001658  64
rst_ctl4        MM      0x87E006001660  64
rst_ctl5        MM      0x87E006001668  64
rst_soft_rst    MM      0x87E006001680  64
rst_out_ctl     MM      0x87E006001688  64
rst_therm_alert MM      0x87E006001690  64
rst_int_ena_w1s MM      0x87E0060016A0  64
rst_int_ena_w1c MM      0x87E0060016A8  64
rst_soft_prst0  MM      0x87E0060016C0  64
rst_soft_prst1  MM      0x87E0060016C8  64
rst_soft_prst2  MM      0x87E0060016D0  64
rst_soft_prst3  MM      0x87E0060016D8  64
rst_soft_prst4  MM      0x87E0060016E0  64
rst_soft_prst5  MM      0x87E0060016E8  64
rst_pp_power    MM      0x87E006001700  64
rst_power_dbg   MM      0x87E006001708  64
rst_pp_pwr_stat MM      0x87E006001710  64
rst_pp_avail    MM      0x87E006001738  64
rst_pp_reset    MM      0x87E006001740  64
rst_pp_pending  MM      0x87E006001748  64
rst_dbg_reset   MM      0x87E006001750  64
rst_ref_cntr    MM      0x87E006001758  64
rst_tns_pll_ctl MM      0x87E006001780  64
rst_cold_data0  MM      0x87E0060017C0  64
rst_cold_data1  MM      0x87E0060017C8  64
rst_cold_data2  MM      0x87E0060017D0  64
rst_cold_data3  MM      0x87E0060017D8  64
rst_cold_data4  MM      0x87E0060017E0  64
rst_cold_data5  MM      0x87E0060017E8  64


