summaryrefslogtreecommitdiff
path: root/arch/arm/mach-bcm/board_bcm281xx.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm/mach-bcm/board_bcm281xx.c')
-rw-r--r--arch/arm/mach-bcm/board_bcm281xx.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/arch/arm/mach-bcm/board_bcm281xx.c b/arch/arm/mach-bcm/board_bcm281xx.c
index 3fe1e4d..8d9f931 100644
--- a/arch/arm/mach-bcm/board_bcm281xx.c
+++ b/arch/arm/mach-bcm/board_bcm281xx.c
@@ -29,15 +29,18 @@ static int __init kona_l2_cache_init(void)
if (!IS_ENABLED(CONFIG_CACHE_L2X0))
return 0;
+ if (bcm_kona_smc_init() < 0) {
+ pr_info("Kona secure API not available. Skipping L2 init\n");
+ return 0;
+ }
+
bcm_kona_smc(SSAPI_ENABLE_L2_CACHE, 0, 0, 0, 0);
/*
* The aux_val and aux_mask have no effect since L2 cache is already
* enabled. Pass 0s for aux_val and 1s for aux_mask for default value.
*/
- l2x0_of_init(0, ~0);
-
- return 0;
+ return l2x0_of_init(0, ~0);
}
static void bcm_board_setup_restart(void)
@@ -58,7 +61,6 @@ static void __init board_init(void)
of_platform_populate(NULL, of_default_bus_match_table, NULL,
&platform_bus);
- bcm_kona_smc_init();
bcm_board_setup_restart();
kona_l2_cache_init();
}