diff options
Diffstat (limited to 'cpu')
-rw-r--r-- | cpu/arm_cortexa8/mx51/generic.c | 2 | ||||
-rw-r--r-- | cpu/arm_cortexa8/mx53/generic.c | 19 |
2 files changed, 21 insertions, 0 deletions
diff --git a/cpu/arm_cortexa8/mx51/generic.c b/cpu/arm_cortexa8/mx51/generic.c index 0762c03..eb1a023 100644 --- a/cpu/arm_cortexa8/mx51/generic.c +++ b/cpu/arm_cortexa8/mx51/generic.c @@ -26,7 +26,9 @@ #include <common.h> #include <asm/arch/mx51.h> #include <asm/errno.h> +#ifdef CONFIG_ARCH_CPU_INIT #include <asm/cache-cp15.h> +#endif #include "crm_regs.h" enum pll_clocks { diff --git a/cpu/arm_cortexa8/mx53/generic.c b/cpu/arm_cortexa8/mx53/generic.c index 01220c3..f75d15a 100644 --- a/cpu/arm_cortexa8/mx53/generic.c +++ b/cpu/arm_cortexa8/mx53/generic.c @@ -24,6 +24,9 @@ #include <asm/arch/mx53.h> #include <asm/errno.h> #include "crm_regs.h" +#ifdef CONFIG_ARCH_CPU_INIT +#include <asm/cache-cp15.h> +#endif enum pll_clocks { PLL1_CLK = MXC_DPLL1_BASE, @@ -336,6 +339,7 @@ int cpu_eth_init(bd_t *bis) int rc = -ENODEV; #if defined(CONFIG_MXC_FEC) char *env = NULL; + rc = mxc_fec_initialize(bis); env = getenv("fec_addr"); @@ -345,3 +349,18 @@ int cpu_eth_init(bd_t *bis) return rc; } +#if defined(CONFIG_ARCH_CPU_INIT) +int arch_cpu_init(void) +{ + icache_enable(); + dcache_enable(); + +#ifdef CONFIG_L2_OFF + l2_cache_disable(); +#else + l2_cache_enable(); +#endif + return 0; +} +#endif + |