Table of Contents
Create demo-example.bif file in same folder as shown below.
the_ROM_image: { [fsbl_config] a53_x64 [pmufw_image] pmufw.elf [bootloader,destination_cpu=a53-0] zynqmp_fsbl.elf [bootloader,destination_cpu=r5-0] rpu.elf [destination_cpu=a53-0, exception_level=el-3,trustzone] bl31.elf [destination_cpu=a53-0, exception_level=el-2] u-boot.elf } |
Create BOOT.bin file using following command.
bootgen -arch zynqmp -image demo-example.bif -w -o BOOT.bin |
After booting linux write following lines on linux console.
(In petalinux prebuilt image by default RTC wakeup source is enabled. So you need to disable RTC wakeup source otherwise Linux can wakeup from RTC)(In petalinux prebuilt image by default split mode config object is present, So if RPU is running in split mode, RPU1 needs to be powered down, else PMU would consider it PM disabled PU and would not released all unused nodes causing FPD on during APU suspend)
echo disabled > /sys/devices/platform/amba/ffa60000.rtc/power/wakeup echo request_wakeup 8 1 0 1 > /sys/kernel/debug/zynqmp_pm/power echo force_powerdown 8 > /sys/kernel/debug/zynqmp_pm/power echo release_node 69 > /sys/kernel/debug/zynqmp_pm/power echo MMIO_WRITE 0xFFD80064 1 1 > /sys/kernel/debug/zynqmp_pm/power |
(For v2018.2)
echo disabled > /sys/devices/platform/amba/ffa60000.rtc/power/wakeup echo pm_request_wakeup 8 1 0 1 > /sys/kernel/debug/zynqmp-firmware/pm echo pm_force_powerdown 8 > /sys/kernel/debug/zynqmp-firmware/pm echo pm_release_node 69 > /sys/kernel/debug/zynqmp-firmware/pm echo 0 > /sys/module/printk/parameters/console_suspend echo 0x1 0x1 > /sys/firmware/zynqmp/pggs3 |
(For v2018.3)
echo disabled > /sys/devices/platform/amba/ffa60000.rtc/power/wakeup echo disabled > /sys/devices/platform/amba/ff000000.serial/power/wakeup echo disabled > /sys/devices/platform/amba/ff010000.serial/power/wakeup echo pm_release_node 69 > /sys/kernel/debug/zynqmp-firmware/pm echo 0 > /sys/module/printk/parameters/console_suspend echo 0x1 0x1 > /sys/firmware/zynqmp/pggs3 |
(For v2019.1 - Later)
echo disabled > /sys/devices/platform/amba/ffa60000.rtc/power/wakeup echo disabled > /sys/devices/platform/amba/ff000000.serial/power/wakeup echo disabled > /sys/devices/platform/amba/ff010000.serial/power/wakeup echo disabled > /sys/devices/platform/amba/ff0a0000.gpio/power/wakeup echo pm_release_node 69 > /sys/kernel/debug/zynqmp-firmware/pm echo 0 > /sys/module/printk/parameters/console_suspend echo 0x1 0x1 > /sys/firmware/zynqmp/pggs3 |
Create demo-example.bif file in same folder as shown below.
the_ROM_image: { [fsbl_config] a53_x64 [pmufw_image] pmufw.elf [bootloader,destination_cpu=a53-0] fsbl.elf [bootloader,destination_cpu=r5-0] rpu.elf [destination_cpu=a53-0] apu.elf } |
Create BOOT.bin file using following command.
bootgen -arch zynqmp -image demo-example.bif -w -o BOOT.bin |