summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Agner <stefan.agner@toradex.com>2014-12-02 18:17:10 +0100
committerStefan Agner <stefan.agner@toradex.com>2014-12-03 00:38:15 +0100
commit7e8cf7a82c3ddd5b7d54a9f81cf8027b78fc0d6c (patch)
tree8a4951aae134381e7c74d7c79f591e6679e0f502
parentd7808def2faa98140e0ac9c61ec5816b65cebd56 (diff)
ARM: vf610: fix DIV_SELECT and clear it for USB PLL's
Fix the DIV_SELECT definition for PLL3 and PLL7, but don't set it in the PLL control registers since USB needs a clock multiplier of 20 to get 480MHz. Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
-rw-r--r--arch/arm/include/asm/arch-vf610/crm_regs.h4
-rw-r--r--board/toradex/colibri_vf/colibri_vf.c8
2 files changed, 6 insertions, 6 deletions
diff --git a/arch/arm/include/asm/arch-vf610/crm_regs.h b/arch/arm/include/asm/arch-vf610/crm_regs.h
index 62050dafd1..97de7c0ac4 100644
--- a/arch/arm/include/asm/arch-vf610/crm_regs.h
+++ b/arch/arm/include/asm/arch-vf610/crm_regs.h
@@ -220,7 +220,7 @@ struct anadig_reg {
#define ANADIG_PLL7_CTRL_BYPASS (1 << 16)
#define ANADIG_PLL7_CTRL_ENABLE (1 << 13)
#define ANADIG_PLL7_CTRL_POWERDOWN (1 << 12)
-#define ANADIG_PLL7_CTRL_DIV_SELECT 1
+#define ANADIG_PLL7_CTRL_DIV_SELECT (1 << 1)
#define ANADIG_PLL5_CTRL_BYPASS (1 << 16)
#define ANADIG_PLL5_CTRL_ENABLE (1 << 13)
#define ANADIG_PLL5_CTRL_POWERDOWN (1 << 12)
@@ -228,7 +228,7 @@ struct anadig_reg {
#define ANADIG_PLL3_CTRL_BYPASS (1 << 16)
#define ANADIG_PLL3_CTRL_ENABLE (1 << 13)
#define ANADIG_PLL3_CTRL_POWERDOWN (1 << 12)
-#define ANADIG_PLL3_CTRL_DIV_SELECT 1
+#define ANADIG_PLL3_CTRL_DIV_SELECT (1 << 1)
#define ANADIG_PLL2_CTRL_ENABLE (1 << 13)
#define ANADIG_PLL2_CTRL_POWERDOWN (1 << 12)
#define ANADIG_PLL2_CTRL_DIV_SELECT 1
diff --git a/board/toradex/colibri_vf/colibri_vf.c b/board/toradex/colibri_vf/colibri_vf.c
index fa027d4f75..92af6370cd 100644
--- a/board/toradex/colibri_vf/colibri_vf.c
+++ b/board/toradex/colibri_vf/colibri_vf.c
@@ -179,14 +179,14 @@ static void clock_init(void)
CCM_CCGR10_NFC_CTRL_MASK);
clrsetbits_le32(&anadig->pll7_ctrl, ANADIG_PLL7_CTRL_BYPASS |
- ANADIG_PLL7_CTRL_POWERDOWN, ANADIG_PLL7_CTRL_ENABLE |
- ANADIG_PLL7_CTRL_DIV_SELECT);
+ ANADIG_PLL7_CTRL_POWERDOWN | ANADIG_PLL7_CTRL_DIV_SELECT,
+ ANADIG_PLL7_CTRL_ENABLE);
clrsetbits_le32(&anadig->pll5_ctrl, ANADIG_PLL5_CTRL_BYPASS |
ANADIG_PLL5_CTRL_POWERDOWN, ANADIG_PLL5_CTRL_ENABLE |
ANADIG_PLL5_CTRL_DIV_SELECT);
clrsetbits_le32(&anadig->pll3_ctrl, ANADIG_PLL3_CTRL_BYPASS |
- ANADIG_PLL3_CTRL_POWERDOWN, ANADIG_PLL3_CTRL_ENABLE |
- ANADIG_PLL3_CTRL_DIV_SELECT);
+ ANADIG_PLL3_CTRL_POWERDOWN | ANADIG_PLL3_CTRL_DIV_SELECT,
+ ANADIG_PLL3_CTRL_ENABLE);
if (is_colibri_vf61()) {
clrsetbits_le32(&anadig->pll2_ctrl, ANADIG_PLL5_CTRL_BYPASS |