diff options
| -rw-r--r-- | arch/arm/mach-shmobile/clock-r7s72100.c | 21 |
1 files changed, 18 insertions, 3 deletions
diff --git a/arch/arm/mach-shmobile/clock-r7s72100.c b/arch/arm/mach-shmobile/clock-r7s72100.c index dd8ce87596de..ffb0fff41375 100644 --- a/arch/arm/mach-shmobile/clock-r7s72100.c +++ b/arch/arm/mach-shmobile/clock-r7s72100.c | |||
| @@ -22,12 +22,14 @@ | |||
| 22 | #include <mach/common.h> | 22 | #include <mach/common.h> |
| 23 | #include <mach/r7s72100.h> | 23 | #include <mach/r7s72100.h> |
| 24 | 24 | ||
| 25 | /* registers */ | 25 | /* Frequency Control Registers */ |
| 26 | #define FRQCR 0xfcfe0010 | 26 | #define FRQCR 0xfcfe0010 |
| 27 | #define FRQCR2 0xfcfe0014 | 27 | #define FRQCR2 0xfcfe0014 |
| 28 | /* Standby Control Registers */ | ||
| 28 | #define STBCR3 0xfcfe0420 | 29 | #define STBCR3 0xfcfe0420 |
| 29 | #define STBCR4 0xfcfe0424 | 30 | #define STBCR4 0xfcfe0424 |
| 30 | #define STBCR9 0xfcfe0438 | 31 | #define STBCR9 0xfcfe0438 |
| 32 | #define STBCR10 0xfcfe043c | ||
| 31 | 33 | ||
| 32 | #define PLL_RATE 30 | 34 | #define PLL_RATE 30 |
| 33 | 35 | ||
| @@ -145,11 +147,19 @@ struct clk div4_clks[DIV4_NR] = { | |||
| 145 | | CLK_ENABLE_ON_INIT), | 147 | | CLK_ENABLE_ON_INIT), |
| 146 | }; | 148 | }; |
| 147 | 149 | ||
| 148 | enum { MSTP97, MSTP96, MSTP95, MSTP94, | 150 | enum { |
| 151 | MSTP107, MSTP106, MSTP105, MSTP104, MSTP103, | ||
| 152 | MSTP97, MSTP96, MSTP95, MSTP94, | ||
| 149 | MSTP47, MSTP46, MSTP45, MSTP44, MSTP43, MSTP42, MSTP41, MSTP40, | 153 | MSTP47, MSTP46, MSTP45, MSTP44, MSTP43, MSTP42, MSTP41, MSTP40, |
| 150 | MSTP33, MSTP_NR }; | 154 | MSTP33, MSTP_NR |
| 155 | }; | ||
| 151 | 156 | ||
| 152 | static struct clk mstp_clks[MSTP_NR] = { | 157 | static struct clk mstp_clks[MSTP_NR] = { |
| 158 | [MSTP107] = SH_CLK_MSTP8(&peripheral1_clk, STBCR10, 7, 0), /* RSPI0 */ | ||
| 159 | [MSTP106] = SH_CLK_MSTP8(&peripheral1_clk, STBCR10, 6, 0), /* RSPI1 */ | ||
| 160 | [MSTP105] = SH_CLK_MSTP8(&peripheral1_clk, STBCR10, 5, 0), /* RSPI2 */ | ||
| 161 | [MSTP104] = SH_CLK_MSTP8(&peripheral1_clk, STBCR10, 4, 0), /* RSPI3 */ | ||
| 162 | [MSTP103] = SH_CLK_MSTP8(&peripheral1_clk, STBCR10, 3, 0), /* RSPI4 */ | ||
| 153 | [MSTP97] = SH_CLK_MSTP8(&peripheral0_clk, STBCR9, 7, 0), /* RIIC0 */ | 163 | [MSTP97] = SH_CLK_MSTP8(&peripheral0_clk, STBCR9, 7, 0), /* RIIC0 */ |
| 154 | [MSTP96] = SH_CLK_MSTP8(&peripheral0_clk, STBCR9, 6, 0), /* RIIC1 */ | 164 | [MSTP96] = SH_CLK_MSTP8(&peripheral0_clk, STBCR9, 6, 0), /* RIIC1 */ |
| 155 | [MSTP95] = SH_CLK_MSTP8(&peripheral0_clk, STBCR9, 5, 0), /* RIIC2 */ | 165 | [MSTP95] = SH_CLK_MSTP8(&peripheral0_clk, STBCR9, 5, 0), /* RIIC2 */ |
| @@ -176,6 +186,11 @@ static struct clk_lookup lookups[] = { | |||
| 176 | CLKDEV_CON_ID("cpu_clk", &div4_clks[DIV4_I]), | 186 | CLKDEV_CON_ID("cpu_clk", &div4_clks[DIV4_I]), |
| 177 | 187 | ||
| 178 | /* MSTP clocks */ | 188 | /* MSTP clocks */ |
| 189 | CLKDEV_DEV_ID("rspi-rz.0", &mstp_clks[MSTP107]), | ||
| 190 | CLKDEV_DEV_ID("rspi-rz.1", &mstp_clks[MSTP106]), | ||
| 191 | CLKDEV_DEV_ID("rspi-rz.2", &mstp_clks[MSTP105]), | ||
| 192 | CLKDEV_DEV_ID("rspi-rz.3", &mstp_clks[MSTP104]), | ||
| 193 | CLKDEV_DEV_ID("rspi-rz.4", &mstp_clks[MSTP103]), | ||
| 179 | CLKDEV_DEV_ID("fcfee000.i2c", &mstp_clks[MSTP97]), | 194 | CLKDEV_DEV_ID("fcfee000.i2c", &mstp_clks[MSTP97]), |
| 180 | CLKDEV_DEV_ID("fcfee400.i2c", &mstp_clks[MSTP96]), | 195 | CLKDEV_DEV_ID("fcfee400.i2c", &mstp_clks[MSTP96]), |
| 181 | CLKDEV_DEV_ID("fcfee800.i2c", &mstp_clks[MSTP95]), | 196 | CLKDEV_DEV_ID("fcfee800.i2c", &mstp_clks[MSTP95]), |
