summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMasahiro Yamada <yamada.masahiro@socionext.com>2017-04-14 11:30:05 +0900
committerMasahiro Yamada <yamada.masahiro@socionext.com>2017-04-20 23:49:50 +0900
commit395e2142e40068dec646b642a6394d798ebd348e (patch)
tree7cd5889cf532c870827b36f40c9f8a3eed7b2798
parent3c476d841daa491f87c8f07851038afbdf4d90a8 (diff)
ARM: uniphier: setup EHCI PHY paramters for LD11
Set the same PHY parameters as the Boot ROM uses. Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
-rw-r--r--arch/arm/mach-uniphier/clk/clk-ld11.c9
-rw-r--r--arch/arm/mach-uniphier/sg-regs.h1
2 files changed, 10 insertions, 0 deletions
diff --git a/arch/arm/mach-uniphier/clk/clk-ld11.c b/arch/arm/mach-uniphier/clk/clk-ld11.c
index a4dcde743b..36aa787984 100644
--- a/arch/arm/mach-uniphier/clk/clk-ld11.c
+++ b/arch/arm/mach-uniphier/clk/clk-ld11.c
@@ -37,9 +37,18 @@ void uniphier_ld11_clk_init(void)
{
/* FIXME: the current clk driver can not handle parents */
u32 tmp;
+ int ch;
+
tmp = readl(SC_CLKCTRL4);
tmp |= SC_CLKCTRL4_MIO | SC_CLKCTRL4_STDMAC;
writel(tmp, SC_CLKCTRL4);
+
+ for (ch = 0; ch < 3; ch++) {
+ void __iomem *phyctrl = (void __iomem *)SG_USBPHYCTRL;
+
+ writel(0x82280600, phyctrl + 8 * ch);
+ writel(0x00000106, phyctrl + 8 * ch + 4);
+ }
}
#endif
}
diff --git a/arch/arm/mach-uniphier/sg-regs.h b/arch/arm/mach-uniphier/sg-regs.h
index 4d7e6f7fa3..dc94084c89 100644
--- a/arch/arm/mach-uniphier/sg-regs.h
+++ b/arch/arm/mach-uniphier/sg-regs.h
@@ -55,6 +55,7 @@
#define SG_MEMCONF_SPARSEMEM (0x1 << 4)
+#define SG_USBPHYCTRL (SG_CTRL_BASE | 0x500)
#define SG_ETPHYPSHUT (SG_CTRL_BASE | 0x554)
#define SG_ETPHYCNT (SG_CTRL_BASE | 0x550)