1:name: Zynqmp
2:description: This script runs Linux on Zynq UltraScale+ MPSoC with remoteproc enabled.
3
4using sysbus
5$name?="ZynqUS+"
6mach create $name
7
8machine LoadPlatformDescription @platforms/cpus/zynqmp.repl
9machine SetSerialExecution True
10sysbus SilenceRange <0xFF0F0104 0x100>  # Silencing QSPI accesses to speed up boot time
11showAnalyzer uart0
12showAnalyzer uart1
13
14$dtb?=       @https://dl.antmicro.com/projects/renode/zynq-us_plus--sm-k26-revA-remoteproc.dtb-s_39351-3552c56edd753f963afeb0dff0fde05b77eae71f
15$atf_elf?=   @https://dl.antmicro.com/projects/renode/zynq-us_plus--bl31.elf-s_770984-aad9c28d989600caa8fd436bca66eb500e0606dd
16$uboot?=     @https://dl.antmicro.com/projects/renode/zynq-us_plus--u-boot.bin-s_1351888-8291c2fd5e7fed3bda101e4c0694991fb40af277
17$uboot_elf?= @https://dl.antmicro.com/projects/renode/zynq-us_plus--u-boot.elf-s_1418000-23d4b0115d096ce9ed85c7e146f687a528382326
18$linux?=     @https://dl.antmicro.com/projects/renode/zynq-us_plus--linux.Image-s_21965312-dd92630f6236b895cd938eede475770d18f9bd6f
19$linux_elf?= @https://dl.antmicro.com/projects/renode/zynq-us_plus--vmlinux-s_26614776-efb126bb528fb25d022b3cec1c1a08d555608e65
20$rootfs?=    @https://dl.antmicro.com/projects/renode/zynq-us_plus--rootfs.ext2-s_62914560-8855af9789b427c44a5f0378c256a3ab7867c46b
21
22macro reset
23"""
24    apu0 PC 0x1000000
25    apu1 IsHalted true
26    apu2 IsHalted true
27    apu3 IsHalted true
28
29    rpu0 IsHalted true
30    rpu1 IsHalted true
31
32    # We register ttc0 to rpu0 because it is used by philosophers sample
33    # running on rpu0.
34    ipi.platformManagementUnit RegisterPeripheral rpu0 ttc0
35
36    sysbus LoadELF    $atf_elf cpu=apu0
37
38    sysbus LoadFdt    $dtb    0x100000   "earlycon console=ttyPS1,115200n8 root=/dev/ram0 rw initrd=0x20000000,64M" false context=apu0
39    sysbus LoadBinary $uboot  0x8000000  cpu=apu0
40    sysbus LoadBinary $linux  0x10000000 cpu=apu0
41    sysbus LoadBinary $rootfs 0x20000000 cpu=apu0
42
43    sysbus LoadSymbolsFrom $uboot_elf context=apu0
44    sysbus LoadSymbolsFrom $linux_elf context=apu0
45"""
46
47runMacro $reset
48