##############################################################################
## 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 EvrV2Core.yaml
#include EvrV2PulsegenRegs.yaml

EvrV2Core: &EvrV2Core
  class:       MMIODev
  description: LCLS-II Timing Receiver module
  size:        0x800
  children:
    #########################################################:
    IrqEnable:
      class: IntField
      sizeBits: 1
      mode: RW
      description: Interrupt Enable
      at:
        offset: 0x00
    #########################################################:
    IrqStatus:
      class: IntField
      sizeBits: 1
      mode: RO
      description: Interrupt Pending
      at:
        offset: 0x04
    #########################################################:
    DmaFullThr:
      class: IntField
      sizeBits: 24
      mode: RW
      description: Set threshold in bytes for asserting readout full
      at:
         offset: 0x18
    #########################################################:
    ChannelBsaEnable:
      class: IntField
      sizeBits: 1
      lsBit: 1
      mode: RW
      description: Enable BSA channel
      at:
         offset: 0x20
         nelms:  12
         stride: 32
    #########################################################:
    ChannelDmaEnable:
      class: IntField
      sizeBits: 1
      lsBit: 2
      mode: RW
      at:
         offset: 0x20
         nelms:  12
         stride: 32
    #########################################################:
    ChannelBsaDelay:
      class: IntField
      sizeBits: 20
      lsBit: 0
      mode: RW
      description: Channel BSA active delay
      at:
         offset: 0x2C
         nelms:  12
         stride: 32
    #########################################################:
    ChannelBsaSetup:
      class: IntField
      sizeBits: 12
      lsBit: 4
      mode: RW
      description: Channel BSA active setup
      at:
         offset: 0x2E
         nelms:  12
         stride: 32
    #########################################################:
    ChannelBsaWidth:
      class: IntField
      sizeBits: 20
      mode: RW
      description: Channel BSA active width
      at:
         offset: 0x30
         nelms:  12
         stride: 32
    #########################################################:
    <<: *EvrV2PulsegenRegs
