Skip to content
Permalink
Branch: master
Find file Copy path
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
98 lines (76 sloc) 3.41 KB
machine LoadPeripheralsFromJSONFile @platforms/cpus/vybrid.json
sysbus Tag <0x40001000, 0x40001fff> "mscm_mscm"
sysbus Tag <0x40002000, 0x40002fff> "intc_interrupt-controller"
sysbus Tag <0x40006000, 0x40006fff> "L2_l2-cache"
sysbus Tag <0x40027000, 0x40027fff> "uart0_serial"
sysbus Tag <0x40028000, 0x40028fff> "uart1_serial"
sysbus Tag <0x40029000, 0x40029fff> "uart2_serial"
sysbus Tag <0x4002a000, 0x4002afff> "uart3_serial"
sysbus Tag <0x40037000, 0x40037fff> "pit_pit"
sysbus Tag <0x4003e000, 0x4003efff> "wdog"
sysbus Tag <0x40044000, 0x40044fff> "qspi0_quadspi"
sysbus Tag <0x40048000, 0x40048fff> "iomuxc_iomuxc"
sysbus Tag <0x40024000, 0x40024fff> "dmamux"
sysbus Tag <0x40031000, 0x40031fff> "sai_dma"
sysbus Tag <0x40058000, 0x400591ff> "dcu"
sysbus Tag <0x40049000, 0x40049fff> "gpio0_gpio_mux"
sysbus Tag <0x4004a000, 0x4004afff> "gpio1_gpio_mux"
sysbus Tag <0x4004b000, 0x4004bfff> "gpio2_gpio_mux"
sysbus Tag <0x4004c000, 0x4004cfff> "gpio3_gpio_mux"
sysbus Tag <0x4004d000, 0x4004dfff> "gpio4_gpio_mux"
sysbus Tag <0x40050000, 0x40050fff> "anatop"
sysbus Tag <0x4006b000, 0x4006bfff> "clks_ccm"
sysbus Tag <0x40080000, 0x40080fff> "aips1_aips-bus"
sysbus Tag <0x400a9000, 0x400a9fff> "uart4_serial"
sysbus Tag <0x400aa000, 0x400aafff> "uart5_serial"
sysbus Tag <0x400d0000, 0x400d0fff> "fec0_ethernet"
sysbus Tag <0x400d1000, 0x400d1fff> "fec1_ethernet"
sysbus Tag <0x400e0000, 0x400effff> "nand"
sysbus Tag <0x400B2000, 0x400B2FFF> "sdhci"
sysbus Tag <0x4003D000, 0x4003DFFF> "TCON"
sysbus Tag <0x400A7000, 0x400A7FFF> "SNVS"
sysbus Tag <0x4006E000, 0x4006E0FF> "SRC"
sysbus Tag <0x4006E000, 0x4006E003> "SRC_SCR"
sysbus Tag <0x4006E004, 0x4006E007> "SRC_SBMR1"
sysbus Tag <0x4006E014, 0x4006E017> "SRC_SICR"
sysbus Tag <0x4006E01C, 0x4006E01F> "SRC_SBMR2"
sysbus Tag <0x400AE000, 0x400AEFFF> "DDRMC"
sysbus Tag <0x40066000, 0x40066fff> "I2C0"
sysbus Tag <0x40067000, 0x40067fff> "I2C1"
#### DDR settings (u-boot checks for ram size this way
# CR001
sysbus Tag <0x400AE004, 0x400AE007> "DDRMC_CR001" 0x00020B10
# CR073
sysbus Tag <0x400AE124, 0x400AE127> "DDRMC_CR073" 0x0a010300
# CR078
sysbus Tag <0x400AE138, 0x400AE13B> "DDRMC_CR078" 0x0000000c
####
# TODO investigate what are the values on real hardware
sysbus Tag <0x40050080, 0x40050083> "ANADIG_PLL4_NUM" 0xFFFFFFFF
sysbus Tag <0x40050090, 0x40050093> "ANADIG_PLL4_DENOM" 0xFFFFFFFF
# taken from vybrid platform tests!
sysbus Tag <0x40050010, 0x40050013> "ANADIG_PLL3_CTRL" 0xFFFFFFFF
sysbus Tag <0x40050020, 0x40050023> "ANADIG_PLL7_CTRL" 0xFFFFFFFF
sysbus Tag <0x400500E0, 0x400500E3> "ANADIG_PLL5_CTRL" 0xFFFFFFFF
sysbus Tag <0x40050070, 0x40050073> "ANADIG_PLL4_CTRL" 0xFFFFFFFF
sysbus Tag <0x40044304, 0x40044307> "QuadSPI0_LCKCR" 0xFFFFFFFF
sysbus Tag <0x40050830, 0x40050833> "USBPHY0_CTRL" 0xFFFFFFFF
#### multicore-specific stuff starts here
sysbus.cpu_M4 IsHalted True
$M4_PC=
"""
# SRC->GPR[2]
if request.isWrite:
sysbus.Machine["sysbus.cpu_M4"].DebugLog("Setting PC to 0x%08X from Cortex-A5" % request.value)
sysbus.Machine["sysbus.cpu_M4"].PC = request.value
"""
machine PyDevFromString $M4_PC 0x4006e028 4
$M4_START=
"""
# CCM->CCOWR
if (request.isWrite) and (request.value == 0x00015a5a):
sysbus.Machine["sysbus.cpu_M4"].DebugLog("Got magic value (0x%08X) from Cortex-A5, starting Cortex-M4" % request.value)
sysbus.Machine["sysbus.cpu_M4"].IsHalted = False
"""
machine PyDevFromString $M4_START 0x4006b08c 4
#### end of multicore-specific stuff
You can’t perform that action at this time.