diff options
author | Zachary P. Landau <zachary.landau@labxtechnologies.com> | 2006-01-26 17:35:56 -0500 |
---|---|---|
committer | Zachary P. Landau <zachary.landau@labxtechnologies.com> | 2006-01-26 17:35:56 -0500 |
commit | eacbd317757327e8e7f018f5701c950429c4c6ae (patch) | |
tree | f5a0b6fffe7391bd7c2cf3165b0b1c7171a5df84 /cpu/mcf52x2/cpu_init.c | |
parent | c4b465f63e3b6fc998526dc217ff988e5c91e667 (diff) | |
download | u-boot-imx-eacbd317757327e8e7f018f5701c950429c4c6ae.zip u-boot-imx-eacbd317757327e8e7f018f5701c950429c4c6ae.tar.gz u-boot-imx-eacbd317757327e8e7f018f5701c950429c4c6ae.tar.bz2 |
Add support for Freescale M5271 processor
Diffstat (limited to 'cpu/mcf52x2/cpu_init.c')
-rw-r--r-- | cpu/mcf52x2/cpu_init.c | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/cpu/mcf52x2/cpu_init.c b/cpu/mcf52x2/cpu_init.c index 350c431..d33adc2 100644 --- a/cpu/mcf52x2/cpu_init.c +++ b/cpu/mcf52x2/cpu_init.c @@ -24,6 +24,11 @@ #include <common.h> #include <watchdog.h> +#ifdef CONFIG_M5271 +#include <asm/m5271.h> +#include <asm/immap_5271.h> +#endif + #ifdef CONFIG_M5272 #include <asm/m5272.h> #include <asm/immap_5272.h> @@ -38,6 +43,38 @@ #include <asm/m5249.h> #endif +#if defined(CONFIG_M5271) +void cpu_init_f (void) +{ +#ifndef CONFIG_WATCHDOG + /* Disable the watchdog if we aren't using it */ + mbar_writeShort(MCF_WTM_WCR, 0); +#endif + + /* Set clockspeed to 100MHz */ + mbar_writeShort(MCF_FMPLL_SYNCR, + MCF_FMPLL_SYNCR_MFD(0) | MCF_FMPLL_SYNCR_RFD(0)); + while (!mbar_readByte(MCF_FMPLL_SYNSR) & MCF_FMPLL_SYNSR_LOCK); + + /* Enable UART pins */ + mbar_writeShort(MCF_GPIO_PAR_UART, MCF_GPIO_PAR_UART_U0TXD | + MCF_GPIO_PAR_UART_U0RXD | + MCF_GPIO_PAR_UART_U1RXD_UART1 | + MCF_GPIO_PAR_UART_U1TXD_UART1); + + /* Enable Ethernet pins */ + mbar_writeByte(MCF_GPIO_PAR_FECI2C, CFG_FECI2C); +} + +/* + * initialize higher level parts of CPU like timers + */ +int cpu_init_r (void) +{ + return (0); +} +#endif + #if defined(CONFIG_M5272) /* * Breath some life into the CPU... |