layerscape: add patches-5.4
[openwrt/staging/wigyori.git] / target / linux / layerscape / patches-5.4 / 809-jailhouse-0021-arm64-export-__hyp_stub_vectors.patch
diff --git a/target/linux/layerscape/patches-5.4/809-jailhouse-0021-arm64-export-__hyp_stub_vectors.patch b/target/linux/layerscape/patches-5.4/809-jailhouse-0021-arm64-export-__hyp_stub_vectors.patch
new file mode 100644 (file)
index 0000000..e523b56
--- /dev/null
@@ -0,0 +1,35 @@
+From a6445874f3371aee451f79c67168f8c4f95d6438 Mon Sep 17 00:00:00 2001
+From: Peng Fan <peng.fan@nxp.com>
+Date: Fri, 15 Nov 2019 17:07:52 +0800
+Subject: [PATCH] arm64: export __hyp_stub_vectors
+
+External hypervisors, like Jailhouse, need this address when they are
+deactivated, in order to restore original state.
+
+Signed-off-by: Peng Fan <peng.fan@nxp.com>
+---
+ arch/arm64/include/asm/virt.h | 2 ++
+ arch/arm64/kernel/hyp-stub.S  | 1 +
+ 2 files changed, 3 insertions(+)
+
+--- a/arch/arm64/include/asm/virt.h
++++ b/arch/arm64/include/asm/virt.h
+@@ -62,6 +62,8 @@
+  */
+ extern u32 __boot_cpu_mode[2];
++extern char __hyp_stub_vectors[];
++
+ void __hyp_set_vectors(phys_addr_t phys_vector_base);
+ void __hyp_reset_vectors(void);
+--- a/arch/arm64/kernel/hyp-stub.S
++++ b/arch/arm64/kernel/hyp-stub.S
+@@ -42,6 +42,7 @@ ENTRY(__hyp_stub_vectors)
+       ventry  el1_fiq_invalid                 // FIQ 32-bit EL1
+       ventry  el1_error_invalid               // Error 32-bit EL1
+ ENDPROC(__hyp_stub_vectors)
++EXPORT_SYMBOL(__hyp_stub_vectors);
+       .align 11