]> git.sur5r.net Git - u-boot/blobdiff - arch/arm/mach-uniphier/clk/clk-pxs3.c
ARM: uniphier: compute SSCPLL values more precisely
[u-boot] / arch / arm / mach-uniphier / clk / clk-pxs3.c
index 2dee857a18c8d17cd201c7b04f9eeda8bb1620b0..3b9cc626f1414fe5c8e8fbdf6be11db497f1bb2b 100644 (file)
@@ -4,14 +4,26 @@
  * SPDX-License-Identifier:    GPL-2.0+
  */
 
+#include <linux/bitops.h>
 #include <linux/io.h>
 
 #include "../init.h"
+#include "../sc64-regs.h"
 
 #define SDCTRL_EMMC_HW_RESET   0x59810280
 
 void uniphier_pxs3_clk_init(void)
 {
+       u32 tmp;
+
+       tmp = readl(SC_RSTCTRL6);
+       tmp |= BIT(8);                  /* Mali */
+       writel(tmp, SC_RSTCTRL6);
+
+       tmp = readl(SC_CLKCTRL6);
+       tmp |= BIT(8);                  /* Mali */
+       writel(tmp, SC_CLKCTRL6);
+
        /* TODO: use "mmc-pwrseq-emmc" */
        writel(1, SDCTRL_EMMC_HW_RESET);
 }