projects
/
platform
/
kernel
/
u-boot.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch 'master' of git://git.denx.de/u-boot-arm
[platform/kernel/u-boot.git]
/
arch
/
arm
/
cpu
/
arm926ejs
/
mx27
/
generic.c
diff --git
a/arch/arm/cpu/arm926ejs/mx27/generic.c
b/arch/arm/cpu/arm926ejs/mx27/generic.c
index
65c4813
..
a9a13cb
100644
(file)
--- a/
arch/arm/cpu/arm926ejs/mx27/generic.c
+++ b/
arch/arm/cpu/arm926ejs/mx27/generic.c
@@
-24,6
+24,7
@@
#include <asm/io.h>
#include <asm/arch/imx-regs.h>
#include <asm/arch/clock.h>
#include <asm/io.h>
#include <asm/arch/imx-regs.h>
#include <asm/arch/clock.h>
+#include <asm/arch/gpio.h>
#ifdef CONFIG_MXC_MMC
#include <asm/arch/mxcmmc.h>
#endif
#ifdef CONFIG_MXC_MMC
#include <asm/arch/mxcmmc.h>
#endif
@@
-158,6
+159,8
@@
unsigned int mxc_get_clock(enum mxc_clock clk)
switch (clk) {
case MXC_ARM_CLK:
return imx_get_armclk();
switch (clk) {
case MXC_ARM_CLK:
return imx_get_armclk();
+ case MXC_I2C_CLK:
+ return imx_get_ahbclk()/2;
case MXC_UART_CLK:
return imx_get_perclk1();
case MXC_FEC_CLK:
case MXC_UART_CLK:
return imx_get_perclk1();
case MXC_FEC_CLK:
@@
-209,7
+212,7
@@
int cpu_mmc_init(bd_t *bis)
void imx_gpio_mode(int gpio_mode)
{
void imx_gpio_mode(int gpio_mode)
{
- struct gpio_
regs *regs = (struct gpio
_regs *)IMX_GPIO_BASE;
+ struct gpio_
port_regs *regs = (struct gpio_port
_regs *)IMX_GPIO_BASE;
unsigned int pin = gpio_mode & GPIO_PIN_MASK;
unsigned int port = (gpio_mode & GPIO_PORT_MASK) >> GPIO_PORT_SHIFT;
unsigned int ocr = (gpio_mode & GPIO_OCR_MASK) >> GPIO_OCR_SHIFT;
unsigned int pin = gpio_mode & GPIO_PIN_MASK;
unsigned int port = (gpio_mode & GPIO_PORT_MASK) >> GPIO_PORT_SHIFT;
unsigned int ocr = (gpio_mode & GPIO_OCR_MASK) >> GPIO_OCR_SHIFT;
@@
-228,11
+231,11
@@
void imx_gpio_mode(int gpio_mode)
/* Data direction */
if (gpio_mode & GPIO_OUT) {
/* Data direction */
if (gpio_mode & GPIO_OUT) {
- writel(readl(®s->port[port].
d
dir) | 1 << pin,
- ®s->port[port].
d
dir);
+ writel(readl(®s->port[port].
gpio_
dir) | 1 << pin,
+ ®s->port[port].
gpio_
dir);
} else {
} else {
- writel(readl(®s->port[port].
d
dir) & ~(1 << pin),
- ®s->port[port].
d
dir);
+ writel(readl(®s->port[port].
gpio_
dir) & ~(1 << pin),
+ ®s->port[port].
gpio_
dir);
}
/* Primary / alternate function */
}
/* Primary / alternate function */
@@
-379,3
+382,11
@@
void mx27_sd2_init_pins(void)
}
#endif /* CONFIG_MXC_MMC */
}
#endif /* CONFIG_MXC_MMC */
+
+#ifndef CONFIG_SYS_DCACHE_OFF
+void enable_caches(void)
+{
+ /* Enable D-cache. I-cache is already enabled in start.S */
+ dcache_enable();
+}
+#endif /* CONFIG_SYS_DCACHE_OFF */