lpc55-pac 0.3.0

Peripheral access API for NXP LPC55 microcontrollers
Documentation
_svd: lpc55.svd

INPUTMUX:
  TIMER*CAPTSEL*:
    _delete:
      - CAPTSEL
    _add:
      CAPTSEL:
        description: Input number to TIMER%s capture inputs 0 to 4
        access: read-write
        bitOffset: 0
        bitWidth: 5

  SCT0_INMUX*:
    _delete:
      - INP_N
    _add:
      INP_N:
        description: Input number to SCT0 inputs 0 to 6.
        access: read-write
        bitOffset: 0
        bitWidth: 5

  DMA0_ITRIG_INMUX*:
    _delete:
      - INP
    _add:
      INP:
        description: Trigger input number (decimal value) for DMA channel n (n = 0 to 22).
        access: read-write
        bitOffset: 0
        bitWidth: 5

SYSCON:
  _delete:
    _registers:
      - AHBCLKCTRLX?
      - PRESETCTRLX?
  ADCCLKSEL:
    _delete:
      - SEL
    _add:
      SEL:
        description: ADC clock source select
        access: read-write
        bitOffset: 0
        bitWidth: 3
    SEL:
      mainclk: [0x00, "Main clk."]
      pll0: [0x01, "PLL0 clk."]
      fro96: [0x02, "FRO 96 MHZ clk."]
      none: [0x04, "No clk."]


PUF:
  KEYENABLE:
    _add:
      KEY:
        description: Key destination for PUF key.
        access: read-write
        bitOffset: 0
        bitWidth: 8
    KEY:
      aes: [0x56, "Send key to AES engine."]
      prince0: [0x59, "Send key to PRINCE engine for memory layout 0."]
      prince1: [0x65, "Send key to PRINCE engine for memory layout 1."]
      prince2: [0x95, "Send key to PRINCE engine for memory layout 2."]
      none: [0x55, "Do not send key to any hardware engine."]

# Fix bogus offsets
SAU:
  _modify:
    description: Security Attribution Unit
    CTRL:
      addressOffset: 0x00
    TYPE:
      addressOffset: 0x04
    RNR:
      addressOffset: 0x08
    RBAR:
      addressOffset: 0x0c
    RLAR:
      addressOffset: 0x10
    SFSR:
      addressOffset: 0x14
    SFAR:
      addressOffset: 0x18

_modify:
  # Make USB0 and USB1 have the same register block
  USBHSD:
    name: USB1
  # Fix size of block (see offsets above)
  SAU:
    addressBlock:
      size: 0x1C

USB1:
  EPLISTSTART:
    _delete:
      - EP_LIST_PRG
      - EP_LIST_FIXED
    ## Making this field larger is more safe, otherwise bits get truncated for USB0.
    _add:
      EP_LIST:
        description: Programmable portion of the USB EP command/status list address.  The upper 12 bits should be 0x401.
        bitOffset: 8
        bitWidth: 24

_delete:
  - USB0

_add:
  USB0:
    derivedFrom: USB1
    baseAddress: "0x40084000"
    interrupts:
      USB0_NEEDCLK:
        value: 27
      USB0:
        value: 28