##############################################################################
## This file is part of 'SLAC Firmware Standard Library'.
## It is subject to the license terms in the LICENSE.txt file found in the
## top-level directory of this distribution and at:
##    https://confluence.slac.stanford.edu/display/ppareg/LICENSE.html.
## No part of 'SLAC Firmware Standard Library', including this file,
## may be copied, modified, propagated, or distributed except according to
## the terms contained in the LICENSE.txt file.
##############################################################################
#schemaversion 3.0.0
#once AxiSysMonUltraScale.yaml

AxiSysMonUltraScale: &AxiSysMonUltraScale
  name: AxiSysMonUltraScale
  class: MMIODev
  configPrio: 1
  description: AXI-Lite System Managment for Xilinx Ultra Scale (Refer to PG185 and
    UG580)
  size: 0x800
  children:
    #########################################################
    SR:
      at:
        offset: 0x04
      class: IntField
      name: SR
      mode: RO
      description: Status Register
    #########################################################
    AOSR:
      at:
        offset: 0x08
      class: IntField
      name: AOSR
      mode: RO
      description: Alarm Output Status Register
    #########################################################
    CONVSTR:
      at:
        offset: 0x0C
      class: IntField
      name: CONVSTR
      mode: WO
      description: CONVST Register
    #########################################################
    SYSMONRR:
      at:
        offset: 0x10
      class: IntField
      name: SYSMONRR
      mode: WO
      description: SYSMON Hard Macro Reset Register
    #########################################################
    GIER:
      at:
        offset: 0x5C
      class: IntField
      name: GIER
      mode: RW
      description: Global Interrupt Enable Register
    #########################################################
    IPISR:
      at:
        offset: 0x60
      class: IntField
      name: IPISR
      mode: RO
      description: IP Interrupt Status Register
    #########################################################
    IPIER:
      at:
        offset: 0x68
      class: IntField
      name: IPIER
      mode: RW
      description: IP Interrupt Enable Register
    #########################################################
    Temperature:
      at:
        offset: 0x400
      class: IntField
      name: Temperature
      mode: RO
      description: Temperature's ADC value
    #########################################################
    VCCINT:
      at:
        offset: 0x404
      class: IntField
      name: VCCINT
      mode: RO
      description: VCCINT's ADC value
    #########################################################
    VCCAUX:
      at:
        offset: 0x408
      class: IntField
      name: VCCAUX
      mode: RO
      description: VCCAUX's ADC value
    #########################################################
    VP_VN:
      at:
        offset: 0x40C
      class: IntField
      name: VP_VN
      mode: RO
      description: VP/VN's ADC value
    #########################################################
    VREFP:
      at:
        offset: 0x410
      class: IntField
      name: VREFP
      mode: RO
      description: VREFP's ADC value
    #########################################################
    VREFN:
      at:
        offset: 0x414
      class: IntField
      name: VREFN
      mode: RO
      description: VREFN's ADC value
    #########################################################
    VBRAM:
      at:
        offset: 0x418
      class: IntField
      name: VBRAM
      mode: RO
      description: VBRAM's ADC value
    #########################################################
    SupplyOffset:
      at:
        offset: 0x420
      class: IntField
      name: SupplyOffset
      mode: RO
      description: Supply Offset
    #########################################################
    ADCOffset:
      at:
        offset: 0x424
      class: IntField
      name: ADCOffset
      mode: RO
      description: ADC Offset
    #########################################################
    GainError:
      at:
        offset: 0x428
      class: IntField
      name: GainError
      mode: RO
      description: Gain Error
    #########################################################
    VAUXP_VAUXN:
      at:
        offset: 0x440
        nelms: 16
      class: IntField
      name: VAUXP_VAUXN
      mode: RO
      description: VAUXP_VAUXN's ADC values
    #########################################################
    MaxTemp:
      at:
        offset: 0x480
      class: IntField
      name: MaxTemp
      mode: RO
      description: maximum temperature measurement
    #########################################################
    MaxVCCINT:
      at:
        offset: 0x484
      class: IntField
      name: MaxVCCINT
      mode: RO
      description: maximum VCCINT measurement
    #########################################################
    MaxVCCAUX:
      at:
        offset: 0x488
      class: IntField
      name: MaxVCCAUX
      mode: RO
      description: maximum VCCAUX measurement
    #########################################################
    MaxVBRAM:
      at:
        offset: 0x48C
      class: IntField
      name: MaxVBRAM
      mode: RO
      description: maximum VBRAM measurement
    #########################################################
    MinTemp:
      at:
        offset: 0x490
      class: IntField
      name: MinTemp
      mode: RO
      description: minimum temperature measurement
    #########################################################
    MinVCCINT:
      at:
        offset: 0x494
      class: IntField
      name: MinVCCINT
      mode: RO
      description: minimum VCCINT measurement
    #########################################################
    MinVCCAUX:
      at:
        offset: 0x498
      class: IntField
      name: MinVCCAUX
      mode: RO
      description: minimum VCCAUX measurement
    #########################################################
    MinVBRAM:
      at:
        offset: 0x49C
      class: IntField
      name: MinVBRAM
      mode: RO
      description: minimum VBRAM measurement
    #########################################################
    I2C_Address:
      at:
        offset: 0x4E0
      class: IntField
      name: I2C_Address
      mode: RO
      description: I2C Address
    #########################################################
    FlagRegister:
      at:
        offset: 0x4FC
      class: IntField
      name: FlagRegister
      mode: RO
      description: Flag Register
    #########################################################
    ConfigurationRegister:
      at:
        offset: 0x500
        nelms: 4
      class: IntField
      name: ConfigurationRegister
      mode: RW
      description: Configuration Registers
    #########################################################
    SequenceRegister8:
      at:
        offset: 0x518
      class: IntField
      name: SequenceRegister8
      mode: RW
      description: Sequence Register 8
    #########################################################
    SequenceReg9:
      at:
        offset: 0x51C
      class: IntField
      name: SequenceReg9
      mode: RW
      description: Sequence Register 9
    #########################################################
    SequenceReg_7_0:
      at:
        offset: 0x520
        nelms: 8
      class: IntField
      name: SequenceReg_7_0
      mode: RW
      description: Sequence Register [7:0]
    #########################################################
    AlarmThresholdReg_8_0:
      at:
        offset: 0x540
        nelms: 9
      class: IntField
      name: AlarmThresholdReg_8_0
      mode: RW
      description: Alarm Threshold Register [8:0]
    #########################################################
    AlarmThresholdReg12:
      at:
        offset: 0x570
      class: IntField
      name: AlarmThresholdReg12
      mode: RW
      description: Alarm Threshold Register 12
    #########################################################
    AlarmThresholdReg16:
      at:
        offset: 0x580
      class: IntField
      name: AlarmThresholdReg16
      mode: RW
      description: Alarm Threshold Register 16
    #########################################################
    AlarmThresholdReg_25_16:
      at:
        offset: 0x580
        nelms: 8
      class: IntField
      name: AlarmThresholdReg_25_16
      mode: RW
      description: Alarm Threshold Register [25:16]
    #########################################################
    VUSER:
      at:
        offset: 0x600
        nelms: 4
      class: IntField
      name: VUSER
      mode: RO
      description: VUSER[4:0] supply monitor measurement
    #########################################################
    MAX_VUSER:
      at:
        offset: 0x680
        nelms: 4
      class: IntField
      name: MAX_VUSER
      mode: RO
      description: Maximum VUSER[4:0] supply monitor measurement
    #########################################################
    MIN_VUSER:
      at:
        offset: 0x6A0
        nelms: 4
      class: IntField
      name: MIN_VUSER
      mode: RO
      description: Minimum VUSER[4:0] supply monitor measurement
    #########################################################
