diff --git a/arch/arm/cpu/at91-common/spl_atmel.c b/arch/arm/cpu/at91-common/spl_atmel.c
index 7297530e7dd1ab9855039a38442e0ea0a1a3239e..9cb57708526d8268b121b682039c3bbaab63d3e7 100644
--- a/arch/arm/cpu/at91-common/spl_atmel.c
+++ b/arch/arm/cpu/at91-common/spl_atmel.c
@@ -58,6 +58,11 @@ static void switch_to_main_crystal_osc(void)
 	writel(tmp, &pmc->mor);
 }
 
+__weak void matrix_init(void)
+{
+	/* This only be used for sama5d4 soc now */
+}
+
 void s_init(void)
 {
 	switch_to_main_crystal_osc();
@@ -70,6 +75,8 @@ void s_init(void)
 
 	at91_clock_init(CONFIG_SYS_AT91_MAIN_CLOCK);
 
+	matrix_init();
+
 	timer_init();
 
 	board_early_init_f();