diff options
Diffstat (limited to 'arch/arm/mach-shmobile/clock-r8a7779.c')
-rw-r--r-- | arch/arm/mach-shmobile/clock-r8a7779.c | 23 |
1 files changed, 22 insertions, 1 deletions
diff --git a/arch/arm/mach-shmobile/clock-r8a7779.c b/arch/arm/mach-shmobile/clock-r8a7779.c index 7d86bfbb5b06..31d5cd4d9787 100644 --- a/arch/arm/mach-shmobile/clock-r8a7779.c +++ b/arch/arm/mach-shmobile/clock-r8a7779.c | |||
@@ -26,6 +26,25 @@ | |||
26 | #include <mach/clock.h> | 26 | #include <mach/clock.h> |
27 | #include <mach/common.h> | 27 | #include <mach/common.h> |
28 | 28 | ||
29 | /* | ||
30 | * MD1 = 1 MD1 = 0 | ||
31 | * (PLLA = 1500) (PLLA = 1600) | ||
32 | * (MHz) (MHz) | ||
33 | *------------------------------------------------+-------------------- | ||
34 | * clkz 1000 (2/3) 800 (1/2) | ||
35 | * clkzs 250 (1/6) 200 (1/8) | ||
36 | * clki 750 (1/2) 800 (1/2) | ||
37 | * clks 250 (1/6) 200 (1/8) | ||
38 | * clks1 125 (1/12) 100 (1/16) | ||
39 | * clks3 187.5 (1/8) 200 (1/8) | ||
40 | * clks4 93.7 (1/16) 100 (1/16) | ||
41 | * clkp 62.5 (1/24) 50 (1/32) | ||
42 | * clkg 62.5 (1/24) 66.6 (1/24) | ||
43 | * clkb, CLKOUT | ||
44 | * (MD2 = 0) 62.5 (1/24) 66.6 (1/24) | ||
45 | * (MD2 = 1) 41.6 (1/36) 50 (1/32) | ||
46 | */ | ||
47 | |||
29 | #define MD(nr) BIT(nr) | 48 | #define MD(nr) BIT(nr) |
30 | 49 | ||
31 | #define FRQMR IOMEM(0xffc80014) | 50 | #define FRQMR IOMEM(0xffc80014) |
@@ -93,7 +112,7 @@ static struct clk *main_clks[] = { | |||
93 | }; | 112 | }; |
94 | 113 | ||
95 | enum { MSTP323, MSTP322, MSTP321, MSTP320, | 114 | enum { MSTP323, MSTP322, MSTP321, MSTP320, |
96 | MSTP115, | 115 | MSTP115, MSTP114, |
97 | MSTP103, MSTP101, MSTP100, | 116 | MSTP103, MSTP101, MSTP100, |
98 | MSTP030, | 117 | MSTP030, |
99 | MSTP029, MSTP028, MSTP027, MSTP026, MSTP025, MSTP024, MSTP023, MSTP022, MSTP021, | 118 | MSTP029, MSTP028, MSTP027, MSTP026, MSTP025, MSTP024, MSTP023, MSTP022, MSTP021, |
@@ -107,6 +126,7 @@ static struct clk mstp_clks[MSTP_NR] = { | |||
107 | [MSTP321] = SH_CLK_MSTP32(&clkp_clk, MSTPCR3, 21, 0), /* SDHI2 */ | 126 | [MSTP321] = SH_CLK_MSTP32(&clkp_clk, MSTPCR3, 21, 0), /* SDHI2 */ |
108 | [MSTP320] = SH_CLK_MSTP32(&clkp_clk, MSTPCR3, 20, 0), /* SDHI3 */ | 127 | [MSTP320] = SH_CLK_MSTP32(&clkp_clk, MSTPCR3, 20, 0), /* SDHI3 */ |
109 | [MSTP115] = SH_CLK_MSTP32(&clkp_clk, MSTPCR1, 15, 0), /* SATA */ | 128 | [MSTP115] = SH_CLK_MSTP32(&clkp_clk, MSTPCR1, 15, 0), /* SATA */ |
129 | [MSTP114] = SH_CLK_MSTP32(&clkp_clk, MSTPCR1, 14, 0), /* Ether */ | ||
110 | [MSTP103] = SH_CLK_MSTP32(&clks_clk, MSTPCR1, 3, 0), /* DU */ | 130 | [MSTP103] = SH_CLK_MSTP32(&clks_clk, MSTPCR1, 3, 0), /* DU */ |
111 | [MSTP101] = SH_CLK_MSTP32(&clkp_clk, MSTPCR1, 1, 0), /* USB2 */ | 131 | [MSTP101] = SH_CLK_MSTP32(&clkp_clk, MSTPCR1, 1, 0), /* USB2 */ |
112 | [MSTP100] = SH_CLK_MSTP32(&clkp_clk, MSTPCR1, 0, 0), /* USB0/1 */ | 132 | [MSTP100] = SH_CLK_MSTP32(&clkp_clk, MSTPCR1, 0, 0), /* USB0/1 */ |
@@ -143,6 +163,7 @@ static struct clk_lookup lookups[] = { | |||
143 | /* MSTP32 clocks */ | 163 | /* MSTP32 clocks */ |
144 | CLKDEV_DEV_ID("sata_rcar", &mstp_clks[MSTP115]), /* SATA */ | 164 | CLKDEV_DEV_ID("sata_rcar", &mstp_clks[MSTP115]), /* SATA */ |
145 | CLKDEV_DEV_ID("fc600000.sata", &mstp_clks[MSTP115]), /* SATA w/DT */ | 165 | CLKDEV_DEV_ID("fc600000.sata", &mstp_clks[MSTP115]), /* SATA w/DT */ |
166 | CLKDEV_DEV_ID("sh-eth", &mstp_clks[MSTP114]), /* Ether */ | ||
146 | CLKDEV_DEV_ID("ehci-platform.1", &mstp_clks[MSTP101]), /* USB EHCI port2 */ | 167 | CLKDEV_DEV_ID("ehci-platform.1", &mstp_clks[MSTP101]), /* USB EHCI port2 */ |
147 | CLKDEV_DEV_ID("ohci-platform.1", &mstp_clks[MSTP101]), /* USB OHCI port2 */ | 168 | CLKDEV_DEV_ID("ohci-platform.1", &mstp_clks[MSTP101]), /* USB OHCI port2 */ |
148 | CLKDEV_DEV_ID("ehci-platform.0", &mstp_clks[MSTP100]), /* USB EHCI port0/1 */ | 169 | CLKDEV_DEV_ID("ehci-platform.0", &mstp_clks[MSTP100]), /* USB EHCI port0/1 */ |