summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--board/freescale/mx53_loco/lowlevel_init.S2
-rw-r--r--board/freescale/mx53_loco/mx53_loco.c15
-rw-r--r--board/freescale/mx53_smd/lowlevel_init.S2
-rw-r--r--board/freescale/mx53_smd/mx53_smd.c14
4 files changed, 30 insertions, 3 deletions
diff --git a/board/freescale/mx53_loco/lowlevel_init.S b/board/freescale/mx53_loco/lowlevel_init.S
index ac374f3..5b76063 100644
--- a/board/freescale/mx53_loco/lowlevel_init.S
+++ b/board/freescale/mx53_loco/lowlevel_init.S
@@ -97,7 +97,7 @@
mov r1, #0x4
str r1, [r0, #CLKCTL_CCSR]
- setup_pll PLL1_BASE_ADDR, 1000
+ setup_pll PLL1_BASE_ADDR, 800
setup_pll PLL3_BASE_ADDR, 400
diff --git a/board/freescale/mx53_loco/mx53_loco.c b/board/freescale/mx53_loco/mx53_loco.c
index 4f588ea..4c26d8f 100644
--- a/board/freescale/mx53_loco/mx53_loco.c
+++ b/board/freescale/mx53_loco/mx53_loco.c
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2010 Freescale Semiconductor, Inc.
+ * Copyright (C) 2010-2011 Freescale Semiconductor, Inc.
*
* See file CREDITS for list of people who contributed to this
* project.
@@ -299,6 +299,15 @@ static void setup_i2c(unsigned int module_base)
break;
}
}
+
+void setup_pmic_voltages(void)
+{
+ int value;
+ i2c_init(CONFIG_SYS_I2C_SPEED, CONFIG_SYS_I2C_SLAVE);
+ /* increase VDDGP as 1.2V for 1GHZ */
+ value = 0x5c;
+ i2c_write(0x48, 0x2e, 1, &value, 1);
+}
#endif
#if defined(CONFIG_DWC_AHSATA)
@@ -549,6 +558,10 @@ int board_init(void)
#ifdef CONFIG_I2C_MXC
setup_i2c(CONFIG_SYS_I2C_PORT);
+ /* Increase VDDGP voltage */
+ setup_pmic_voltages();
+ /* Switch to 1GHZ */
+ clk_config(CONFIG_REF_CLK_FREQ, 1000, CPU_CLK);
#endif
#if defined(CONFIG_DWC_AHSATA)
diff --git a/board/freescale/mx53_smd/lowlevel_init.S b/board/freescale/mx53_smd/lowlevel_init.S
index 5feaaf1..60ee843 100644
--- a/board/freescale/mx53_smd/lowlevel_init.S
+++ b/board/freescale/mx53_smd/lowlevel_init.S
@@ -97,7 +97,7 @@
mov r1, #0x4
str r1, [r0, #CLKCTL_CCSR]
- setup_pll PLL1_BASE_ADDR, 1000
+ setup_pll PLL1_BASE_ADDR, 800
setup_pll PLL3_BASE_ADDR, 400
diff --git a/board/freescale/mx53_smd/mx53_smd.c b/board/freescale/mx53_smd/mx53_smd.c
index be1185f..1b44b3c 100644
--- a/board/freescale/mx53_smd/mx53_smd.c
+++ b/board/freescale/mx53_smd/mx53_smd.c
@@ -363,6 +363,16 @@ static void setup_i2c(unsigned int module_base)
break;
}
}
+
+void setup_pmic_voltages(void)
+{
+ int value;
+ i2c_init(CONFIG_SYS_I2C_SPEED, CONFIG_SYS_I2C_SLAVE);
+ /* increase VDDGP as 1.2V for 1GHZ */
+ value = 0x5c;
+ i2c_write(0x48, 0x2e, 1, &value, 1);
+}
+
#endif
#if defined(CONFIG_DWC_AHSATA)
@@ -684,6 +694,10 @@ int board_init(void)
#ifdef CONFIG_I2C_MXC
setup_i2c(CONFIG_SYS_I2C_PORT);
+ /* Increase VDDGP voltage */
+ setup_pmic_voltages();
+ /* Switch to 1GHZ */
+ clk_config(CONFIG_REF_CLK_FREQ, 1000, CPU_CLK);
#endif
#if defined(CONFIG_DWC_AHSATA)