]> git.ipfire.org Git - people/ms/u-boot.git/blob - arch/arm/mach-uniphier/ph1-ld4/clkrst_init.c
ARM: uniphier: remove kernel parameter settings from environment
[people/ms/u-boot.git] / arch / arm / mach-uniphier / ph1-ld4 / clkrst_init.c
1 /*
2 * Copyright (C) 2011-2015 Masahiro Yamada <yamada.masahiro@socionext.com>
3 *
4 * SPDX-License-Identifier: GPL-2.0+
5 */
6
7 #include <linux/io.h>
8 #include <mach/sc-regs.h>
9
10 void clkrst_init(void)
11 {
12 u32 tmp;
13
14 /* deassert reset */
15 tmp = readl(SC_RSTCTRL);
16 #ifdef CONFIG_UNIPHIER_ETH
17 tmp |= SC_RSTCTRL_NRST_ETHER;
18 #endif
19 #ifdef CONFIG_USB_EHCI_UNIPHIER
20 tmp |= SC_RSTCTRL_NRST_STDMAC;
21 #endif
22 #ifdef CONFIG_NAND_DENALI
23 tmp |= SC_RSTCTRL_NRST_NAND;
24 #endif
25 writel(tmp, SC_RSTCTRL);
26 readl(SC_RSTCTRL); /* dummy read */
27
28 /* privide clocks */
29 tmp = readl(SC_CLKCTRL);
30 #ifdef CONFIG_UNIPHIER_ETH
31 tmp |= SC_CLKCTRL_CEN_ETHER;
32 #endif
33 #ifdef CONFIG_USB_EHCI_UNIPHIER
34 tmp |= SC_CLKCTRL_CEN_MIO | SC_CLKCTRL_CEN_STDMAC;
35 #endif
36 #ifdef CONFIG_NAND_DENALI
37 tmp |= SC_CLKCTRL_CEN_NAND;
38 #endif
39 writel(tmp, SC_CLKCTRL);
40 readl(SC_CLKCTRL); /* dummy read */
41 }