From: Alexandre Marquet <tb@a-marquet.fr>
The firmware trustzone needs a special call to bring up the secondary
cpu core on the Manta board. This seems to be not needed on other
exynos5 boards and comes down to the available firmware on
a particular board.
Signed-off-by: Alexandre Marquet <tb@a-marquet.fr>
Signed-off-by: Lukas Timmermann <linux@timmermann.space>
---
arch/arm/mach-exynos/firmware.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/arch/arm/mach-exynos/firmware.c b/arch/arm/mach-exynos/firmware.c
index a5e22678e27b..e9b0ed07bb90 100644
--- a/arch/arm/mach-exynos/firmware.c
+++ b/arch/arm/mach-exynos/firmware.c
@@ -61,10 +61,10 @@ static int exynos_cpu_boot(int cpu)
* Exynos3250 doesn't need to send smc command for secondary CPU boot
* because Exynos3250 removes WFE in secure mode.
*
- * On Exynos5 devices the call is ignored by trustzone firmware.
+ * On most Exynos5 devices the call is ignored by trustzone firmware.
*/
if (!soc_is_exynos4210() && !soc_is_exynos4212() &&
- !soc_is_exynos4412())
+ !soc_is_exynos4412() && !of_machine_is_compatible("google,manta"))
return 0;
/*
--
2.52.0
Hi Lukas,
On Mon, Dec 15, 2025 at 04:05:24PM +0100, Lukas Timmermann wrote:
> From: Alexandre Marquet <tb@a-marquet.fr>
>
> The firmware trustzone needs a special call to bring up the secondary
> cpu core on the Manta board. This seems to be not needed on other
> exynos5 boards and comes down to the available firmware on
> a particular board.
>
> Signed-off-by: Alexandre Marquet <tb@a-marquet.fr>
> Signed-off-by: Lukas Timmermann <linux@timmermann.space>
Reviewed-by: Henrik Grimler <henrik@grimler.se>
I had a look at the manta bootloader, but have not been able to
pinpoint where the smc calls are handled. Nevertheless, Seems like
manta might be the only Exynos 5 android device that needs CPU1BOOT. I
tried to track down exynos5250-arndale's tzsw to compare with, but
seems like it is no longer available anywhere unfortunately.
Here's a summary of my findings from looking at sboot/the tzsw from
various devices, where `CPU1BOOT SMC is handled == yes` means that the
device needs the SMC call.
.----------------------.--------------.--------------.--------------.
| Device (exynos-) | Similar tzsw | CPU1BOOT SMC | sboot/tzsw |
| | to odroidxu? | is handled? | source |
.----------------------.--------------.--------------.--------------.
4212-tab3 | yes | yes | T310XXSBQB2
4412-i9300 | yes | yes | I9300XXUGPE1
4412-i9305 | yes | yes | I9305XXUFPB1
4412-odroid{x,x2,u3} | yes | yes | wiki.odroid.com/_media/en/boot.tar.gz
4412-origen | no | don't know | Linaro's origen hwpack 20130130
5260-hllte (SM-N7505)| no | don't know | N7505XXSDRI2
5410-odroidxu | yes | no | github.com/hsnaves/exynos5410-firmware
5410-ja3g | no | don't know | I9500XXUHPK1
5420-chagall-wifi | no | no | T800XXU1CRJ1
5420-arndale-octa | yes | no | Linaro's arndale-octa hwpack 20140323
5422-odroid-xu{3,4} | yes | no | Hardkernel's u-boot 2020.01 branch
5422-samsung-k3g | no | don't know | G900HXXU1CVG7
As can be seen none of the Exynos 5 devices in the list have been
confirmed to need/handle CPU1BOOT.
Best regards,
Henrik Grimler
> ---
> arch/arm/mach-exynos/firmware.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/arch/arm/mach-exynos/firmware.c b/arch/arm/mach-exynos/firmware.c
> index a5e22678e27b..e9b0ed07bb90 100644
> --- a/arch/arm/mach-exynos/firmware.c
> +++ b/arch/arm/mach-exynos/firmware.c
> @@ -61,10 +61,10 @@ static int exynos_cpu_boot(int cpu)
> * Exynos3250 doesn't need to send smc command for secondary CPU boot
> * because Exynos3250 removes WFE in secure mode.
> *
> - * On Exynos5 devices the call is ignored by trustzone firmware.
> + * On most Exynos5 devices the call is ignored by trustzone firmware.
> */
> if (!soc_is_exynos4210() && !soc_is_exynos4212() &&
> - !soc_is_exynos4412())
> + !soc_is_exynos4412() && !of_machine_is_compatible("google,manta"))
> return 0;
>
> /*
>
> --
> 2.52.0
>
>
© 2016 - 2026 Red Hat, Inc.