blob: 842e72d0431154f2c7322c060f1fba5d7b280064 [file] [log] [blame]
fsmcBank1: Memory.MappedMemory @ sysbus 0x60000000
size: 0x10000000
sram: Memory.MappedMemory @ sysbus 0x20000000
size: 0x00040000
flash: Memory.MappedMemory @ sysbus 0x08000000
size: 0x200000
flash_controller: MTD.STM32F4_FlashController @ {
sysbus 0x40023C00;
sysbus new Bus.BusMultiRegistration { address: 0x1FFFC000; size: 0x100; region: "optionBytes" }
}
flash: flash
usart1: UART.STM32_UART @ sysbus <0x40011000, +0x100>
-> nvic@37
usart2: UART.STM32_UART @ sysbus <0x40004400, +0x100>
-> nvic@38
usart3: UART.STM32_UART @ sysbus <0x40004800, +0x100>
-> nvic@39
uart4: UART.STM32_UART @ sysbus <0x40004C00, +0x100>
-> nvic@52
uart5: UART.STM32_UART @ sysbus <0x40005000, +0x100>
-> nvic@53
can1: CAN.STMCAN @ sysbus <0x40006400, +0x400>
[0-3] -> nvic@[19-22]
can2: CAN.STMCAN @ sysbus <0x40006800, +0x400>
[0-3] -> nvic@[63-66]
master: can1
nvic: IRQControllers.NVIC @ sysbus 0xE000E000
priorityMask: 0xF0
systickFrequency: 72000000
IRQ -> cpu@0
cpu: CPU.CortexM @ sysbus
cpuType: "cortex-m4"
nvic: nvic
pwr: Miscellaneous.STM32_PWR @ sysbus 0x40007000
crc: CRC.STM32F4_CRC @ sysbus 0x40023000
exti: IRQControllers.STM32F4_EXTI @ sysbus 0x40013C00
numberOfOutputLines: 24
[0-4] -> nvic@[6-10]
[5-9] -> nvicInput23@[0-4]
[10-15] -> nvicInput40@[0-5]
[16, 17, 18, 22] -> nvic@[1, 41, 42, 3]
nvicInput23: Miscellaneous.CombinedInput @ none
numberOfInputs: 5
-> nvic@23
nvicInput40: Miscellaneous.CombinedInput @ none
numberOfInputs: 6
-> nvic@40
gpioPortA: GPIOPort.STM32_GPIOPort @ sysbus <0x40020000, +0x400>
modeResetValue: 0xA8000000
pullUpPullDownResetValue: 0x64000000
numberOfAFs: 16
[0-15] -> exti@[0-15]
gpioPortB: GPIOPort.STM32_GPIOPort @ sysbus <0x40020400, +0x400>
modeResetValue: 0x00000280
outputSpeedResetValue: 0x000000C0
pullUpPullDownResetValue: 0x00000100
numberOfAFs: 16
[0-15] -> exti@[0-15]
gpioPortC: GPIOPort.STM32_GPIOPort @ sysbus <0x40020800, +0x400>
numberOfAFs: 16
[0-15] -> exti@[0-15]
gpioPortD: GPIOPort.STM32_GPIOPort @ sysbus <0x40020C00, +0x400>
numberOfAFs: 16
[0-15] -> exti@[0-15]
gpioPortE: GPIOPort.STM32_GPIOPort @ sysbus <0x40021000, +0x400>
numberOfAFs: 16
[0-15] -> exti@[0-15]
gpioPortF: GPIOPort.STM32_GPIOPort @ sysbus <0x40021400, +0x400>
numberOfAFs: 16
[0-15] -> exti@[0-15]
ethernet: Network.SynopsysEthernetMAC @ sysbus 0x40028000
-> nvic@61
rom1: Memory.MappedMemory @ sysbus 0x1FFF0000
size: 0xC000
rom2: Memory.MappedMemory @ sysbus 0x1FFFC400
size: 0x3C00
spi1: SPI.STM32SPI @ sysbus 0x40013000
spi2: SPI.STM32SPI @ sysbus 0x40003800
IRQ->nvic@35
DMARecieve->dma1@3
spi3: SPI.STM32SPI @ sysbus 0x40003C00
i2c1: I2C.STM32F4_I2C @ sysbus 0x40005400
EventInterrupt -> nvic@31
ErrorInterrupt -> nvic@32
i2c2: I2C.STM32F4_I2C @ sysbus 0x40005800
EventInterrupt -> nvic@33
ErrorInterrupt -> nvic@34
i2c3: I2C.STM32F4_I2C @ sysbus 0x40005C00
EventInterrupt -> nvic@72
ErrorInterrupt -> nvic@73
dma1: DMA.STM32DMA @ sysbus 0x40026000
[0-7] -> nvic@[11-17,47]
dma2: DMA.STM32DMA @ sysbus 0x40026400
[0-7] -> nvic@[56-60,68-70]
rng: Miscellaneous.STM32F4_RNG @ sysbus 0x50060800
-> nvic@80
iwdg: Timers.STM32_IndependentWatchdog @ sysbus 0x40003000
frequency: 32000
windowOption: false
defaultPrescaler: 0x4
rtc: Timers.STM32F4_RTC @ sysbus 0x40002800
AlarmIRQ -> nvic@41
rcc: Miscellaneous.STM32F4_RCC @ sysbus 0x40023800
rtcPeripheral: rtc
timer1: Timers.STM32_Timer @ sysbus 0x40010000
-> nvic@25
frequency: 10000000
initialLimit: 0xFFFF
timer2: Timers.STM32_Timer @ sysbus 0x40000000
-> nvic@28
frequency: 10000000
initialLimit: 0xFFFFFFFF
timer3: Timers.STM32_Timer @ sysbus 0x40000400
-> nvic@29
frequency: 10000000
initialLimit: 0xFFFF
timer4: Timers.STM32_Timer @ sysbus 0x40000800
-> nvic@30
frequency: 10000000
initialLimit: 0xFFFF
timer5: Timers.STM32_Timer @ sysbus 0x40000C00
-> nvic@50
frequency: 10000000
initialLimit: 0xFFFFFFFF
timer6: Timers.STM32_Timer @ sysbus 0x40001000
-> nvic@54
frequency: 10000000
initialLimit: 0xFFFF
timer7: Timers.STM32_Timer @ sysbus 0x40001400
-> nvic@55
frequency: 10000000
initialLimit: 0xFFFF
timer8: Timers.STM32_Timer @ sysbus 0x40010400
-> nvic@44
frequency: 10000000
initialLimit: 0xFFFF
timer9: Timers.STM32_Timer @ sysbus 0x40014000
-> nvic@24
frequency: 10000000
initialLimit: 0xFFFF
timer10: Timers.STM32_Timer @ sysbus 0x40014400
-> nvic@25
frequency: 10000000
initialLimit: 0xFFFF
timer11: Timers.STM32_Timer @ sysbus 0x40014800
-> nvic@26
frequency: 10000000
initialLimit: 0xFFFF
timer12: Timers.STM32_Timer @ sysbus 0x40001800
-> nvic@43
frequency: 10000000
initialLimit: 0xFFFF
timer13: Timers.STM32_Timer @ sysbus 0x40001C00
-> nvic@44
frequency: 10000000
initialLimit: 0xFFFF
timer14: Timers.STM32_Timer @ sysbus 0x40002000
-> nvic@45
frequency: 10000000
initialLimit: 0xFFFF
bitbandPeripherals: Miscellaneous.BitBanding @ sysbus <0x42000000, +0x2000000>
peripheralBase: 0x40000000
bitbandSram: Miscellaneous.BitBanding @ sysbus <0x22000000, +0x200000>
peripheralBase: 0x20000000
sysbus:
init:
ApplySVD @https://dl.antmicro.com/projects/renode/svd/STM32F40x.svd.gz
Tag <0x40021000, 0x40021003> "GPIOE_MODER" 0xFFFFFFFF
Tag <0x40021004, 0x40021007> "GPIOE_OTYPER" 0x00000008
// FLASH and USB tags are required for CubeMX-based projects to pass the initialization phase
Tag <0x50000010, 0x5000003f> "USB:RESET" 0x80000000