bootrom: Memory.MappedMemory @ sysbus 0x00000000
    size: 0x8000

flash: Memory.MappedMemory @ sysbus 0x1000000
    size: 0x10000

sram: Memory.MappedMemory @ sysbus 0x20000000
    size: 0x18000

edacsram: Memory.MappedMemory @ sysbus 0x4000D000
    size: 0x1000

systemrom: Memory.MappedMemory @ sysbus 0xF0000000
    size: 0x1000

mtbsfr: Memory.MappedMemory @ sysbus 0xF0200000
    size: 0x1000

mtbsram: Memory.MappedMemory @ sysbus 0xF0210000
    size: 0x10000

uart0: UART.GaislerAPBUART @ sysbus <0x40004000, +0x1000>
    frequency: 40000000
    -> nvic@14

uart1: UART.GaislerAPBUART @ sysbus <0x40005000, +0x1000>
    frequency: 40000000
    -> nvic@15

timer0: Timers.ARM_SP804_Timer @ sysbus 0x40001000
    frequency: 50000000
    -> nvic@1

timer1: Timers.ARM_SP804_Timer @ sysbus 0x40002000
    frequency: 50000000
    -> nvic@2

adc: Analog.CAES_ADC @ sysbus 0x4000F000
    -> nvic@21

gpio0: GPIOPort.ARM_AHB_GPIO @ sysbus 0x40020000
    -> nvic@22

gpio1: GPIOPort.ARM_AHB_GPIO @ sysbus 0x40021000
    hasDedicatedIRQs: true
    CombinedIRQ -> nvic@23
    DedicatedIRQ0 -> nvic@5
    DedicatedIRQ1 -> nvic@6
    DedicatedIRQ2 -> nvic@7
    DedicatedIRQ3 -> nvic@8
    DedicatedIRQ4 -> nvic@9
    DedicatedIRQ5 -> nvic@10
    DedicatedIRQ6 -> nvic@11
    DedicatedIRQ7 -> nvic@12

gpio2: GPIOPort.ARM_AHB_GPIO @ sysbus 0x40022000
    alternateFunctionResetValue: 0xFFFF
    -> nvic@24

can0: CAN.UT32_CAN @ sysbus 0x40023000
    -> nvic@16

can1: CAN.UT32_CAN @ sysbus 0x40024000
    -> nvic@17

nvic: IRQControllers.NVIC @ sysbus 0xE000E000
    priorityMask: 0xF0
    systickFrequency: 50000000
    IRQ -> cpu@0

cpu: CPU.CortexM @ sysbus
    nvic: nvic
    cpuType: "cortex-m0+"

sysbus:
    init:
        Tag <0x40000000 0x1000> "RTC"
        Tag <0x40003000 0x1000> "PWM"
        Tag <0x40006000 0x1000> "SPI"
        Tag <0x40007000 0x1000> "DACs"
        Tag <0x40008000 0x1000> "Watchdog"
        Tag <0x40009000 0x1000> "I2C0"
        Tag <0x4000A000 0x1000> "I2C1"
        Tag <0x4000B000 0x1000> "Trim Control"
        Tag <0x4000C000 0x1000> "NFC"
        Tag <0x4000E000 0x1000> "Comparators"
        Tag <0x4002F000 0x1000> "System Controller"
        Tag <0xE0000000 0x1000> "Private peripheral bus addresses in the Cortex-M0+"
