]> git.kernelconcepts.de Git - karo-tx-uboot.git/blobdiff - arch/arm/mach-uniphier/ph1-pro4/clkrst_init.c
karo: cleanup after merge of v2015.10-rc2
[karo-tx-uboot.git] / arch / arm / mach-uniphier / ph1-pro4 / clkrst_init.c
index 1bbd9440deb4ac1a20661087d595ed9241bce5fa..46cace77e54127ccda9dda0bcbecfa862864d82f 100644 (file)
@@ -13,15 +13,44 @@ void clkrst_init(void)
 
        /* deassert reset */
        tmp = readl(SC_RSTCTRL);
-       tmp |= SC_RSTCTRL_NRST_ETHER | SC_RSTCTRL_NRST_UMC1
-               | SC_RSTCTRL_NRST_UMC0 | SC_RSTCTRL_NRST_NAND;
+#ifdef CONFIG_USB_XHCI_UNIPHIER
+       tmp |= SC_RSTCTRL_NRST_USB3B0 | SC_RSTCTRL_NRST_USB3C0 |
+               SC_RSTCTRL_NRST_GIO;
+#endif
+#ifdef CONFIG_UNIPHIER_ETH
+       tmp |= SC_RSTCTRL_NRST_ETHER;
+#endif
+#ifdef CONFIG_USB_EHCI_UNIPHIER
+       tmp |= SC_RSTCTRL_NRST_STDMAC;
+#endif
+#ifdef CONFIG_NAND_DENALI
+       tmp |= SC_RSTCTRL_NRST_NAND;
+#endif
        writel(tmp, SC_RSTCTRL);
        readl(SC_RSTCTRL); /* dummy read */
 
+#ifdef CONFIG_USB_XHCI_UNIPHIER
+       tmp = readl(SC_RSTCTRL2);
+       tmp |= SC_RSTCTRL2_NRST_USB3B1 | SC_RSTCTRL2_NRST_USB3C1;
+       writel(tmp, SC_RSTCTRL2);
+       readl(SC_RSTCTRL2); /* dummy read */
+#endif
+
        /* privide clocks */
        tmp = readl(SC_CLKCTRL);
-       tmp |= SC_CLKCTRL_CLK_ETHER | SC_CLKCTRL_CLK_MIO | SC_CLKCTRL_CLK_UMC
-            | SC_CLKCTRL_CLK_NAND | SC_CLKCTRL_CLK_SBC | SC_CLKCTRL_CLK_PERI;
+#ifdef CONFIG_USB_XHCI_UNIPHIER
+       tmp |= SC_CLKCTRL_CEN_USB31 | SC_CLKCTRL_CEN_USB30 |
+               SC_CLKCTRL_CEN_GIO;
+#endif
+#ifdef CONFIG_UNIPHIER_ETH
+       tmp |= SC_CLKCTRL_CEN_ETHER;
+#endif
+#ifdef CONFIG_USB_EHCI_UNIPHIER
+       tmp |= SC_CLKCTRL_CEN_MIO | SC_CLKCTRL_CEN_STDMAC;
+#endif
+#ifdef CONFIG_NAND_DENALI
+       tmp |= SC_CLKCTRL_CEN_NAND;
+#endif
        writel(tmp, SC_CLKCTRL);
        readl(SC_CLKCTRL); /* dummy read */
 }