This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Enable PIE/POE Cause Linux fail to boot

Hi Arm Community,

I'm trying PIE/POE feature provided by v8.9, and I notice Linux becomes compatible with this feature since v6.5. Thus I use scripts provided here to setup the environment. However, when I enable PIE feature, the boot seems to get stuck. This is my fvp settings:

Fullscreen
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
-C pctl.startup=0.0.0.0 \
-C bp.secure_memory=0 \
-C cluster0.NUM_CORES=2 \
-C cluster1.NUM_CORES=0 \
-C cluster0.has_permission_indirection_s1=2 \
-C cluster0.has_permission_indirection_s2=2 \
-C cluster0.has_permission_overlay_s1=2 \
-C cluster0.has_permission_overlay_s2=2 \
-C cache_state_modelled=0 \
-C bp.pl011_uart0.untimed_fifos=1 \
-C bp.pl011_uart0.unbuffered_output=1 \
-C bp.pl011_uart0.out_file="${WORKSPACE}/aemfvp-a/uart0.log" \
-C bp.pl011_uart1.out_file="${WORKSPACE}/aemfvp-a/uart1.log" \
-C bp.secureflashloader.fname="${WORKSPACE}/output/aemfvp-a/aemfvp-a/tf-bl1.bin" \
-C bp.flashloader0.fname="${WORKSPACE}/output/aemfvp-a/aemfvp-a/fip-uboot.bin" \
-C cluster0.cpu0.semihosting-cwd="${WORKSPACE}/output/aemfvp-a/aemfvp-a/" \
-C bp.ve_sysregs.mmbSiteDefault=0 \
-C bp.ve_sysregs.exit_on_shutdown=1 \
-C bp.virtioblockdevice.image_path="${WORKSPACE}/output/aemfvp-a/components/aemfvp-a/grub-busybox.img" \
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

And I got this output:

But once I remove "-C cluster0.has_permission_indirection_s1=2 -C cluster0.has_permission_indirection_s2=2 -C cluster0.has_permission_overlay_s1=2 -C cluster0.has_permission_overlay_s2=2" to disable PIE/POE, then everything is OK, kernel can boot successfully.

How can I solve it? Or anyone successfully run Linux with PIE enabled can share some setup configurations or steps?

0