sysbus:
    init:
        Tag <0x400ac000 0x4000> "iomuxcgpr"
        Tag <0x400b0000 0x4000> "flexram"
        Tag <0x400d4000 0x4000> "snvs"
        Tag <0x400d8000 0x4000> "anatop / tempmon / usbphy1 / usbphy2"
        Tag <0x400e8000 0x4000> "edma0"
        Tag <0x400ec000 0x4000> "edma0"
        Tag <0x400f8000 0x4000> "src"
        Tag <0x400fc000 0x4000> "ccm"
        Tag <0x40184000 0x4000> "lpuart1"
        Tag <0x40188000 0x4000> "lpuart2"
        Tag <0x4018c000 0x4000> "lpuart3"
        Tag <0x40190000 0x4000> "lpuart4"
        Tag <0x40194000 0x4000> "lpuart5"
        Tag <0x4019c000 0x4000> "lpuart7"
        Tag <0x401a0000 0x4000> "lpuart8"
        Tag <0x401ac000 0x4000> "flexio1"
        Tag <0x401b0000 0x4000> "flexio2"
        Tag <0x401ec000 0x4000> "gpt_hw_timer"
        Tag <0x401f0000 0x4000> "gpt2"
        Tag <0x401f8000 0x4000> "iomuxc"
        Tag <0x402a4000 0x4000> "flexspi2"
        Tag <0x402b4000 0x4000> "pxp"
        Tag <0x402b8000 0x4000> "lcdif"
        Tag <0x402bc000 0x4000> "csi"
        Tag <0x402c0000 0x4000> "usdhc1"
        Tag <0x402c4000 0x4000> "usdhc2"
        Tag <0x402f0000 0x4000> "semc"
        Tag <0x402fc000 0x4000> "dcp"
        Tag <0x40384000 0x4000> "sai1"
        Tag <0x40388000 0x4000> "sai2"
        Tag <0x4038c000 0x4000> "sai3"
        Tag <0x40394000 0x4000> "lpspi1"
        Tag <0x40398000 0x4000> "lpspi2"
        Tag <0x4039c000 0x4000> "lpspi3"
        Tag <0x403a0000 0x4000> "lpspi4"
        Tag <0x403bc000 0x4000> "xbar1"
        Tag <0x403c0000 0x4000> "xbar2"
        Tag <0x403c4000 0x4000> "xbar3"
        Tag <0x403c8000 0x4000> "qdec1"
        Tag <0x403cc000 0x4000> "qdec2"
        Tag <0x403d0000 0x4000> "qdec3"
        Tag <0x403d4000 0x4000> "qdec4"
        Tag <0x403f0000 0x4000> "lpi2c1"
        Tag <0x403f4000 0x4000> "lpi2c2"
        Tag <0x403f8000 0x4000> "lpi2c3"
        Tag <0x403fc000 0x4000> "lpi2c4"
        Tag <0x42020000 0x4000> "flexio3"
        Tag <0x40084000 0x1000> "pit0"
        Tag <0x400c4000 0x1000> "adc1"
        Tag <0x400c8000 0x1000> "adc2"
        Tag <0x401d0000 0x1000> "flexcan1"
        Tag <0x401d4000 0x1000> "flexcan2"
        Tag <0x401d8000 0x1000> "flexcan3"
        Tag <0xe0000000 0x1000> "itm"
        Tag <0x402d4000 0x628> "enet2"
        Tag <0x402d8000 0x628> "enet"
        Tag <0x402e0000 0x200> "usb1"
        Tag <0x402e0200 0x200> "usb2"
        Tag <0x401dc000 0x7a> "qtmr1"
        Tag <0x401e0000 0x7a> "qtmr2"
        Tag <0x401e4000 0x7a> "qtmr3"
        Tag <0x401e8000 0x7a> "qtmr4"
        Tag <0xe000ed90 0x40> "mpu"
        Tag <0xe000e010 0x10> "systick"
        Tag <0x400b8000 0xa> "wdog0"
        Tag <0x400d0000 0xa> "wdog1"

itcm: Memory.MappedMemory @ sysbus 0x0
    size: 0x20000

dtcm: Memory.MappedMemory @ sysbus 0x20000000
    size: 0x20000

ocram2: Memory.MappedMemory @ sysbus 0x20200000
    size: 0x80000

ocram: Memory.MappedMemory @ sysbus 0x20280000
    size: 0x40000

w25q64jvxgim: Memory.MappedMemory @ sysbus 0x60000000
    size: 0x800000

// autogenerated

gpio2: GPIOPort.IMXRT_GPIO @ sysbus 0x401bc000
    IRQ->nvic0@82

boardled: Miscellaneous.LED @ gpio2 0x3

gpio2:
    3 -> boardled@0

nvic0: IRQControllers.NVIC @ {
    sysbus new Bus.BusPointRegistration { address: 0xe000e000; cpu: cpu0 }
}
    -> cpu0@0
    systickFrequency: 600000000

cpu0: CPU.CortexM @ sysbus
    cpuType: "cortex-m7"
    nvic: nvic0

flexpwm1: Timers.IMXRT_PWM @ sysbus 0x403dc000
    0->nvic0@106

flexpwm2: Timers.IMXRT_PWM @ sysbus 0x403e0000
    0->nvic0@141

flexpwm3: Timers.IMXRT_PWM @ sysbus 0x403e4000
    0->nvic0@146

flexpwm4: Timers.IMXRT_PWM @ sysbus 0x403e8000
    0->nvic0@151

flexspi: SPI.IMXRT_FlexSPI @ sysbus 0x402a8000
    ->nvic0@108

gpio1: GPIOPort.IMXRT_GPIO @ sysbus 0x401b8000
    IRQ->nvic0@80

gpio3: GPIOPort.IMXRT_GPIO @ sysbus 0x401c0000
    IRQ->nvic0@84

gpio4: GPIOPort.IMXRT_GPIO @ sysbus 0x401c4000
    IRQ->nvic0@86

gpio5: GPIOPort.IMXRT_GPIO @ sysbus 0x400c0000
    IRQ->nvic0@88

gpio6: GPIOPort.IMXRT_GPIO @ sysbus 0x42000000

gpio7: GPIOPort.IMXRT_GPIO @ sysbus 0x42004000

gpio8: GPIOPort.IMXRT_GPIO @ sysbus 0x42008000

gpio9: GPIOPort.IMXRT_GPIO @ sysbus 0x4200c000

trng: Miscellaneous.IMX_TRNG @ sysbus 0x400cc000
    ->nvic0@53

lpuart6: UART.NXP_LPUART @ sysbus 0x40198000
    IRQ->nvic0@25

// cortex-m overlay

dwt: Miscellaneous.DWT @ sysbus 0xE0001000
    frequency: 72000000

// nxp,mimxrt1062 overlay

sysbus:
    init add:
        Tag <0x40080000 4> "dcdc" 0xFFFFFFFF
        Tag <0x400D8000 4> "analog" 0xFFFFFFFF