diff options
| -rw-r--r-- | arch/arm/mach-exynos/mach-origen.c | 2 | ||||
| -rw-r--r-- | arch/arm/mach-s3c64xx/Kconfig | 2 | ||||
| -rw-r--r-- | arch/arm/mach-s3c64xx/mach-crag6410-module.c | 141 | ||||
| -rw-r--r-- | arch/arm/mach-s3c64xx/mach-crag6410.c | 29 |
4 files changed, 148 insertions, 26 deletions
diff --git a/arch/arm/mach-exynos/mach-origen.c b/arch/arm/mach-exynos/mach-origen.c index 9adf491674ea..23be71a9dfd3 100644 --- a/arch/arm/mach-exynos/mach-origen.c +++ b/arch/arm/mach-exynos/mach-origen.c | |||
| @@ -100,6 +100,7 @@ static struct regulator_consumer_supply __initdata ldo3_consumer[] = { | |||
| 100 | REGULATOR_SUPPLY("vddcore", "s5p-mipi-csis.0"), /* MIPI */ | 100 | REGULATOR_SUPPLY("vddcore", "s5p-mipi-csis.0"), /* MIPI */ |
| 101 | REGULATOR_SUPPLY("vdd", "exynos4-hdmi"), /* HDMI */ | 101 | REGULATOR_SUPPLY("vdd", "exynos4-hdmi"), /* HDMI */ |
| 102 | REGULATOR_SUPPLY("vdd_pll", "exynos4-hdmi"), /* HDMI */ | 102 | REGULATOR_SUPPLY("vdd_pll", "exynos4-hdmi"), /* HDMI */ |
| 103 | REGULATOR_SUPPLY("vusb_a", "s3c-hsotg"), /* OTG */ | ||
| 103 | }; | 104 | }; |
| 104 | static struct regulator_consumer_supply __initdata ldo6_consumer[] = { | 105 | static struct regulator_consumer_supply __initdata ldo6_consumer[] = { |
| 105 | REGULATOR_SUPPLY("vddio", "s5p-mipi-csis.0"), /* MIPI */ | 106 | REGULATOR_SUPPLY("vddio", "s5p-mipi-csis.0"), /* MIPI */ |
| @@ -110,6 +111,7 @@ static struct regulator_consumer_supply __initdata ldo7_consumer[] = { | |||
| 110 | static struct regulator_consumer_supply __initdata ldo8_consumer[] = { | 111 | static struct regulator_consumer_supply __initdata ldo8_consumer[] = { |
| 111 | REGULATOR_SUPPLY("vdd", "s5p-adc"), /* ADC */ | 112 | REGULATOR_SUPPLY("vdd", "s5p-adc"), /* ADC */ |
| 112 | REGULATOR_SUPPLY("vdd_osc", "exynos4-hdmi"), /* HDMI */ | 113 | REGULATOR_SUPPLY("vdd_osc", "exynos4-hdmi"), /* HDMI */ |
| 114 | REGULATOR_SUPPLY("vusb_d", "s3c-hsotg"), /* OTG */ | ||
| 113 | }; | 115 | }; |
| 114 | static struct regulator_consumer_supply __initdata ldo9_consumer[] = { | 116 | static struct regulator_consumer_supply __initdata ldo9_consumer[] = { |
| 115 | REGULATOR_SUPPLY("dvdd", "swb-a31"), /* AR6003 WLAN & CSR 8810 BT */ | 117 | REGULATOR_SUPPLY("dvdd", "swb-a31"), /* AR6003 WLAN & CSR 8810 BT */ |
diff --git a/arch/arm/mach-s3c64xx/Kconfig b/arch/arm/mach-s3c64xx/Kconfig index 63e7ae3ee9e6..131c86284711 100644 --- a/arch/arm/mach-s3c64xx/Kconfig +++ b/arch/arm/mach-s3c64xx/Kconfig | |||
| @@ -294,6 +294,7 @@ config MACH_WLF_CRAGG_6410 | |||
| 294 | select S3C64XX_SETUP_SDHCI | 294 | select S3C64XX_SETUP_SDHCI |
| 295 | select S3C64XX_SETUP_SPI | 295 | select S3C64XX_SETUP_SPI |
| 296 | select S3C64XX_SETUP_USB_PHY | 296 | select S3C64XX_SETUP_USB_PHY |
| 297 | select S3C_DEV_FB | ||
| 297 | select S3C_DEV_HSMMC | 298 | select S3C_DEV_HSMMC |
| 298 | select S3C_DEV_HSMMC1 | 299 | select S3C_DEV_HSMMC1 |
| 299 | select S3C_DEV_HSMMC2 | 300 | select S3C_DEV_HSMMC2 |
| @@ -304,6 +305,7 @@ config MACH_WLF_CRAGG_6410 | |||
| 304 | select S3C_DEV_WDT | 305 | select S3C_DEV_WDT |
| 305 | select SAMSUNG_DEV_ADC | 306 | select SAMSUNG_DEV_ADC |
| 306 | select SAMSUNG_DEV_KEYPAD | 307 | select SAMSUNG_DEV_KEYPAD |
| 308 | select SAMSUNG_DEV_PWM | ||
| 307 | select SAMSUNG_GPIO_EXTRA128 | 309 | select SAMSUNG_GPIO_EXTRA128 |
| 308 | help | 310 | help |
| 309 | Machine support for the Wolfson Cragganmore S3C6410 variant. | 311 | Machine support for the Wolfson Cragganmore S3C6410 variant. |
diff --git a/arch/arm/mach-s3c64xx/mach-crag6410-module.c b/arch/arm/mach-s3c64xx/mach-crag6410-module.c index 4e3fe57674c8..c6d8dba90623 100644 --- a/arch/arm/mach-s3c64xx/mach-crag6410-module.c +++ b/arch/arm/mach-s3c64xx/mach-crag6410-module.c | |||
| @@ -20,6 +20,8 @@ | |||
| 20 | 20 | ||
| 21 | #include <linux/regulator/machine.h> | 21 | #include <linux/regulator/machine.h> |
| 22 | 22 | ||
| 23 | #include <sound/wm0010.h> | ||
| 24 | #include <sound/wm2200.h> | ||
| 23 | #include <sound/wm5100.h> | 25 | #include <sound/wm5100.h> |
| 24 | #include <sound/wm8996.h> | 26 | #include <sound/wm8996.h> |
| 25 | #include <sound/wm8962.h> | 27 | #include <sound/wm8962.h> |
| @@ -33,14 +35,34 @@ static struct s3c64xx_spi_csinfo wm0010_spi_csinfo = { | |||
| 33 | .line = S3C64XX_GPC(3), | 35 | .line = S3C64XX_GPC(3), |
| 34 | }; | 36 | }; |
| 35 | 37 | ||
| 38 | static struct wm0010_pdata wm0010_pdata = { | ||
| 39 | .gpio_reset = S3C64XX_GPN(6), | ||
| 40 | .reset_active_high = 1, /* Active high for Glenfarclas Rev 2 */ | ||
| 41 | }; | ||
| 42 | |||
| 36 | static struct spi_board_info wm1253_devs[] = { | 43 | static struct spi_board_info wm1253_devs[] = { |
| 37 | [0] = { | 44 | [0] = { |
| 38 | .modalias = "wm0010", | 45 | .modalias = "wm0010", |
| 46 | .max_speed_hz = 26 * 1000 * 1000, | ||
| 39 | .bus_num = 0, | 47 | .bus_num = 0, |
| 40 | .chip_select = 0, | 48 | .chip_select = 0, |
| 41 | .mode = SPI_MODE_0, | 49 | .mode = SPI_MODE_0, |
| 42 | .irq = S3C_EINT(5), | 50 | .irq = S3C_EINT(5), |
| 43 | .controller_data = &wm0010_spi_csinfo, | 51 | .controller_data = &wm0010_spi_csinfo, |
| 52 | .platform_data = &wm0010_pdata, | ||
| 53 | }, | ||
| 54 | }; | ||
| 55 | |||
| 56 | static struct spi_board_info balblair_devs[] = { | ||
| 57 | [0] = { | ||
| 58 | .modalias = "wm0010", | ||
| 59 | .max_speed_hz = 26 * 1000 * 1000, | ||
| 60 | .bus_num = 0, | ||
| 61 | .chip_select = 0, | ||
| 62 | .mode = SPI_MODE_0, | ||
| 63 | .irq = S3C_EINT(4), | ||
| 64 | .controller_data = &wm0010_spi_csinfo, | ||
| 65 | .platform_data = &wm0010_pdata, | ||
| 44 | }, | 66 | }, |
| 45 | }; | 67 | }; |
| 46 | 68 | ||
| @@ -166,12 +188,13 @@ static struct regulator_init_data wm8994_ldo2 = { | |||
| 166 | 188 | ||
| 167 | static struct wm8994_pdata wm8994_pdata = { | 189 | static struct wm8994_pdata wm8994_pdata = { |
| 168 | .gpio_base = CODEC_GPIO_BASE, | 190 | .gpio_base = CODEC_GPIO_BASE, |
| 191 | .micb2_delay = 150, | ||
| 169 | .gpio_defaults = { | 192 | .gpio_defaults = { |
| 170 | 0x3, /* IRQ out, active high, CMOS */ | 193 | 0x3, /* IRQ out, active high, CMOS */ |
| 171 | }, | 194 | }, |
| 172 | .ldo = { | 195 | .ldo = { |
| 173 | { .init_data = &wm8994_ldo1, }, | 196 | { .enable = S3C64XX_GPN(6), .init_data = &wm8994_ldo1, }, |
| 174 | { .init_data = &wm8994_ldo2, }, | 197 | { .enable = S3C64XX_GPN(4), .init_data = &wm8994_ldo2, }, |
| 175 | }, | 198 | }, |
| 176 | }; | 199 | }; |
| 177 | 200 | ||
| @@ -182,7 +205,7 @@ static const struct i2c_board_info wm1277_devs[] = { | |||
| 182 | }, | 205 | }, |
| 183 | }; | 206 | }; |
| 184 | 207 | ||
| 185 | static struct arizona_pdata wm5102_pdata = { | 208 | static struct arizona_pdata wm5102_reva_pdata = { |
| 186 | .ldoena = S3C64XX_GPN(7), | 209 | .ldoena = S3C64XX_GPN(7), |
| 187 | .gpio_base = CODEC_GPIO_BASE, | 210 | .gpio_base = CODEC_GPIO_BASE, |
| 188 | .irq_active_high = true, | 211 | .irq_active_high = true, |
| @@ -193,64 +216,131 @@ static struct arizona_pdata wm5102_pdata = { | |||
| 193 | }, | 216 | }, |
| 194 | }; | 217 | }; |
| 195 | 218 | ||
| 196 | static struct s3c64xx_spi_csinfo wm5102_spi_csinfo = { | 219 | static struct s3c64xx_spi_csinfo codec_spi_csinfo = { |
| 197 | .line = S3C64XX_GPN(5), | 220 | .line = S3C64XX_GPN(5), |
| 198 | }; | 221 | }; |
| 199 | 222 | ||
| 223 | static struct spi_board_info wm5102_reva_spi_devs[] = { | ||
| 224 | [0] = { | ||
| 225 | .modalias = "wm5102", | ||
| 226 | .max_speed_hz = 10 * 1000 * 1000, | ||
| 227 | .bus_num = 0, | ||
| 228 | .chip_select = 1, | ||
| 229 | .mode = SPI_MODE_0, | ||
| 230 | .irq = GLENFARCLAS_PMIC_IRQ_BASE + | ||
| 231 | WM831X_IRQ_GPIO_2, | ||
| 232 | .controller_data = &codec_spi_csinfo, | ||
| 233 | .platform_data = &wm5102_reva_pdata, | ||
| 234 | }, | ||
| 235 | }; | ||
| 236 | |||
| 237 | static struct arizona_pdata wm5102_pdata = { | ||
| 238 | .ldoena = S3C64XX_GPN(7), | ||
| 239 | .gpio_base = CODEC_GPIO_BASE, | ||
| 240 | .irq_active_high = true, | ||
| 241 | .micd_pol_gpio = CODEC_GPIO_BASE + 2, | ||
| 242 | .gpio_defaults = { | ||
| 243 | [2] = 0x10000, /* AIF3TXLRCLK */ | ||
| 244 | [3] = 0x4, /* OPCLK */ | ||
| 245 | }, | ||
| 246 | }; | ||
| 247 | |||
| 200 | static struct spi_board_info wm5102_spi_devs[] = { | 248 | static struct spi_board_info wm5102_spi_devs[] = { |
| 201 | [0] = { | 249 | [0] = { |
| 202 | .modalias = "wm5102", | 250 | .modalias = "wm5102", |
| 203 | .max_speed_hz = 10 * 1000 * 1000, | 251 | .max_speed_hz = 10 * 1000 * 1000, |
| 204 | .bus_num = 0, | 252 | .bus_num = 0, |
| 205 | .chip_select = 0, | 253 | .chip_select = 1, |
| 206 | .mode = SPI_MODE_0, | 254 | .mode = SPI_MODE_0, |
| 207 | .irq = GLENFARCLAS_PMIC_IRQ_BASE + | 255 | .irq = GLENFARCLAS_PMIC_IRQ_BASE + |
| 208 | WM831X_IRQ_GPIO_2, | 256 | WM831X_IRQ_GPIO_2, |
| 209 | .controller_data = &wm5102_spi_csinfo, | 257 | .controller_data = &codec_spi_csinfo, |
| 210 | .platform_data = &wm5102_pdata, | 258 | .platform_data = &wm5102_pdata, |
| 211 | }, | 259 | }, |
| 212 | }; | 260 | }; |
| 213 | 261 | ||
| 262 | static struct spi_board_info wm5110_spi_devs[] = { | ||
| 263 | [0] = { | ||
| 264 | .modalias = "wm5110", | ||
| 265 | .max_speed_hz = 10 * 1000 * 1000, | ||
| 266 | .bus_num = 0, | ||
| 267 | .chip_select = 1, | ||
| 268 | .mode = SPI_MODE_0, | ||
| 269 | .irq = GLENFARCLAS_PMIC_IRQ_BASE + | ||
| 270 | WM831X_IRQ_GPIO_2, | ||
| 271 | .controller_data = &codec_spi_csinfo, | ||
| 272 | .platform_data = &wm5102_reva_pdata, | ||
| 273 | }, | ||
| 274 | }; | ||
| 275 | |||
| 214 | static const struct i2c_board_info wm6230_i2c_devs[] = { | 276 | static const struct i2c_board_info wm6230_i2c_devs[] = { |
| 215 | { I2C_BOARD_INFO("wm9081", 0x6c), | 277 | { I2C_BOARD_INFO("wm9081", 0x6c), |
| 216 | .platform_data = &wm9081_pdata, }, | 278 | .platform_data = &wm9081_pdata, }, |
| 217 | }; | 279 | }; |
| 218 | 280 | ||
| 281 | static struct wm2200_pdata wm2200_pdata = { | ||
| 282 | .ldo_ena = S3C64XX_GPN(7), | ||
| 283 | .gpio_defaults = { | ||
| 284 | [2] = 0x0005, /* GPIO3 24.576MHz output clock */ | ||
| 285 | }, | ||
| 286 | }; | ||
| 287 | |||
| 288 | static const struct i2c_board_info wm2200_i2c[] = { | ||
| 289 | { I2C_BOARD_INFO("wm2200", 0x3a), | ||
| 290 | .platform_data = &wm2200_pdata, }, | ||
| 291 | }; | ||
| 292 | |||
| 219 | static __devinitdata const struct { | 293 | static __devinitdata const struct { |
| 220 | u8 id; | 294 | u8 id; |
| 295 | u8 rev; | ||
| 221 | const char *name; | 296 | const char *name; |
| 222 | const struct i2c_board_info *i2c_devs; | 297 | const struct i2c_board_info *i2c_devs; |
| 223 | int num_i2c_devs; | 298 | int num_i2c_devs; |
| 224 | const struct spi_board_info *spi_devs; | 299 | const struct spi_board_info *spi_devs; |
| 225 | int num_spi_devs; | 300 | int num_spi_devs; |
| 226 | } gf_mods[] = { | 301 | } gf_mods[] = { |
| 227 | { .id = 0x01, .name = "1250-EV1 Springbank" }, | 302 | { .id = 0x01, .rev = 0xff, .name = "1250-EV1 Springbank" }, |
| 228 | { .id = 0x02, .name = "1251-EV1 Jura" }, | 303 | { .id = 0x02, .rev = 0xff, .name = "1251-EV1 Jura" }, |
| 229 | { .id = 0x03, .name = "1252-EV1 Glenlivet" }, | 304 | { .id = 0x03, .rev = 0xff, .name = "1252-EV1 Glenlivet" }, |
| 230 | { .id = 0x11, .name = "6249-EV2 Glenfarclas", }, | 305 | { .id = 0x06, .rev = 0xff, .name = "WM8997-6721-CS96-EV1 Lapraoig" }, |
| 231 | { .id = 0x14, .name = "6271-EV1 Lochnagar" }, | 306 | { .id = 0x07, .rev = 0xff, .name = "WM5110-6271 Deanston", |
| 232 | { .id = 0x15, .name = "6320-EV1 Bells", | 307 | .spi_devs = wm5110_spi_devs, |
| 308 | .num_spi_devs = ARRAY_SIZE(wm5110_spi_devs) }, | ||
| 309 | { .id = 0x08, .rev = 0xff, .name = "WM8903-6102 Tamdhu" }, | ||
| 310 | { .id = 0x09, .rev = 0xff, .name = "WM1811A-6305 Adelphi" }, | ||
| 311 | { .id = 0x0a, .rev = 0xff, .name = "WM8996-6272 Blackadder" }, | ||
| 312 | { .id = 0x0b, .rev = 0xff, .name = "WM8994-6235 Benromach" }, | ||
| 313 | { .id = 0x11, .rev = 0xff, .name = "6249-EV2 Glenfarclas", }, | ||
| 314 | { .id = 0x14, .rev = 0xff, .name = "6271-EV1 Lochnagar" }, | ||
| 315 | { .id = 0x15, .rev = 0xff, .name = "6320-EV1 Bells", | ||
| 233 | .i2c_devs = wm6230_i2c_devs, | 316 | .i2c_devs = wm6230_i2c_devs, |
| 234 | .num_i2c_devs = ARRAY_SIZE(wm6230_i2c_devs) }, | 317 | .num_i2c_devs = ARRAY_SIZE(wm6230_i2c_devs) }, |
| 235 | { .id = 0x21, .name = "1275-EV1 Mortlach" }, | 318 | { .id = 0x21, .rev = 0xff, .name = "1275-EV1 Mortlach" }, |
| 236 | { .id = 0x25, .name = "1274-EV1 Glencadam" }, | 319 | { .id = 0x25, .rev = 0xff, .name = "1274-EV1 Glencadam" }, |
| 237 | { .id = 0x31, .name = "1253-EV1 Tomatin", | 320 | { .id = 0x31, .rev = 0xff, .name = "1253-EV1 Tomatin", |
| 238 | .spi_devs = wm1253_devs, .num_spi_devs = ARRAY_SIZE(wm1253_devs) }, | 321 | .spi_devs = wm1253_devs, .num_spi_devs = ARRAY_SIZE(wm1253_devs) }, |
| 239 | { .id = 0x32, .name = "XXXX-EV1 Caol Illa" }, | 322 | { .id = 0x32, .rev = 0xff, .name = "XXXX-EV1 Caol Illa" }, |
| 240 | { .id = 0x33, .name = "XXXX-EV1 Oban" }, | 323 | { .id = 0x33, .rev = 0xff, .name = "XXXX-EV1 Oban" }, |
| 241 | { .id = 0x34, .name = "WM0010-6320-CS42 Balblair" }, | 324 | { .id = 0x34, .rev = 0xff, .name = "WM0010-6320-CS42 Balblair", |
| 242 | { .id = 0x39, .name = "1254-EV1 Dallas Dhu", | 325 | .spi_devs = balblair_devs, |
| 326 | .num_spi_devs = ARRAY_SIZE(balblair_devs) }, | ||
| 327 | { .id = 0x39, .rev = 0xff, .name = "1254-EV1 Dallas Dhu", | ||
| 243 | .i2c_devs = wm1254_devs, .num_i2c_devs = ARRAY_SIZE(wm1254_devs) }, | 328 | .i2c_devs = wm1254_devs, .num_i2c_devs = ARRAY_SIZE(wm1254_devs) }, |
| 244 | { .id = 0x3a, .name = "1259-EV1 Tobermory", | 329 | { .id = 0x3a, .rev = 0xff, .name = "1259-EV1 Tobermory", |
| 245 | .i2c_devs = wm1259_devs, .num_i2c_devs = ARRAY_SIZE(wm1259_devs) }, | 330 | .i2c_devs = wm1259_devs, .num_i2c_devs = ARRAY_SIZE(wm1259_devs) }, |
| 246 | { .id = 0x3b, .name = "1255-EV1 Kilchoman", | 331 | { .id = 0x3b, .rev = 0xff, .name = "1255-EV1 Kilchoman", |
| 247 | .i2c_devs = wm1255_devs, .num_i2c_devs = ARRAY_SIZE(wm1255_devs) }, | 332 | .i2c_devs = wm1255_devs, .num_i2c_devs = ARRAY_SIZE(wm1255_devs) }, |
| 248 | { .id = 0x3c, .name = "1273-EV1 Longmorn" }, | 333 | { .id = 0x3c, .rev = 0xff, .name = "1273-EV1 Longmorn" }, |
| 249 | { .id = 0x3d, .name = "1277-EV1 Littlemill", | 334 | { .id = 0x3d, .rev = 0xff, .name = "1277-EV1 Littlemill", |
| 250 | .i2c_devs = wm1277_devs, .num_i2c_devs = ARRAY_SIZE(wm1277_devs) }, | 335 | .i2c_devs = wm1277_devs, .num_i2c_devs = ARRAY_SIZE(wm1277_devs) }, |
| 251 | { .id = 0x3e, .name = "WM5102-6271-EV1-CS127 Amrut", | 336 | { .id = 0x3e, .rev = 0, .name = "WM5102-6271-EV1-CS127 Amrut", |
| 337 | .spi_devs = wm5102_reva_spi_devs, | ||
| 338 | .num_spi_devs = ARRAY_SIZE(wm5102_reva_spi_devs) }, | ||
| 339 | { .id = 0x3e, .rev = -1, .name = "WM5102-6271-EV1-CS127 Amrut", | ||
| 252 | .spi_devs = wm5102_spi_devs, | 340 | .spi_devs = wm5102_spi_devs, |
| 253 | .num_spi_devs = ARRAY_SIZE(wm5102_spi_devs) }, | 341 | .num_spi_devs = ARRAY_SIZE(wm5102_spi_devs) }, |
| 342 | { .id = 0x3f, .rev = -1, .name = "WM2200-6271-CS90-M-REV1", | ||
| 343 | .i2c_devs = wm2200_i2c, .num_i2c_devs = ARRAY_SIZE(wm2200_i2c) }, | ||
| 254 | }; | 344 | }; |
| 255 | 345 | ||
| 256 | static __devinit int wlf_gf_module_probe(struct i2c_client *i2c, | 346 | static __devinit int wlf_gf_module_probe(struct i2c_client *i2c, |
| @@ -267,7 +357,8 @@ static __devinit int wlf_gf_module_probe(struct i2c_client *i2c, | |||
| 267 | id = (ret & 0xfe) >> 2; | 357 | id = (ret & 0xfe) >> 2; |
| 268 | rev = ret & 0x3; | 358 | rev = ret & 0x3; |
| 269 | for (i = 0; i < ARRAY_SIZE(gf_mods); i++) | 359 | for (i = 0; i < ARRAY_SIZE(gf_mods); i++) |
| 270 | if (id == gf_mods[i].id) | 360 | if (id == gf_mods[i].id && (gf_mods[i].rev == 0xff || |
| 361 | rev == gf_mods[i].rev)) | ||
| 271 | break; | 362 | break; |
| 272 | 363 | ||
| 273 | if (i < ARRAY_SIZE(gf_mods)) { | 364 | if (i < ARRAY_SIZE(gf_mods)) { |
diff --git a/arch/arm/mach-s3c64xx/mach-crag6410.c b/arch/arm/mach-s3c64xx/mach-crag6410.c index 13b7eaa45fd0..2abe95d0401f 100644 --- a/arch/arm/mach-s3c64xx/mach-crag6410.c +++ b/arch/arm/mach-s3c64xx/mach-crag6410.c | |||
| @@ -304,6 +304,13 @@ static struct regulator_consumer_supply wallvdd_consumers[] = { | |||
| 304 | REGULATOR_SUPPLY("SPKVDDL", "1-001a"), | 304 | REGULATOR_SUPPLY("SPKVDDL", "1-001a"), |
| 305 | REGULATOR_SUPPLY("SPKVDDR", "1-001a"), | 305 | REGULATOR_SUPPLY("SPKVDDR", "1-001a"), |
| 306 | 306 | ||
| 307 | REGULATOR_SUPPLY("SPKVDDL", "spi0.1"), | ||
| 308 | REGULATOR_SUPPLY("SPKVDDR", "spi0.1"), | ||
| 309 | REGULATOR_SUPPLY("SPKVDDL", "wm5102-codec"), | ||
| 310 | REGULATOR_SUPPLY("SPKVDDR", "wm5102-codec"), | ||
| 311 | REGULATOR_SUPPLY("SPKVDDL", "wm5110-codec"), | ||
| 312 | REGULATOR_SUPPLY("SPKVDDR", "wm5110-codec"), | ||
| 313 | |||
| 307 | REGULATOR_SUPPLY("DC1VDD", "0-0034"), | 314 | REGULATOR_SUPPLY("DC1VDD", "0-0034"), |
| 308 | REGULATOR_SUPPLY("DC2VDD", "0-0034"), | 315 | REGULATOR_SUPPLY("DC2VDD", "0-0034"), |
| 309 | REGULATOR_SUPPLY("DC3VDD", "0-0034"), | 316 | REGULATOR_SUPPLY("DC3VDD", "0-0034"), |
| @@ -597,6 +604,7 @@ static struct s3c2410_platform_i2c i2c0_pdata = { | |||
| 597 | static struct regulator_consumer_supply pvdd_1v2_consumers[] __devinitdata = { | 604 | static struct regulator_consumer_supply pvdd_1v2_consumers[] __devinitdata = { |
| 598 | REGULATOR_SUPPLY("DCVDD", "spi0.0"), | 605 | REGULATOR_SUPPLY("DCVDD", "spi0.0"), |
| 599 | REGULATOR_SUPPLY("AVDD", "spi0.0"), | 606 | REGULATOR_SUPPLY("AVDD", "spi0.0"), |
| 607 | REGULATOR_SUPPLY("AVDD", "spi0.1"), | ||
| 600 | }; | 608 | }; |
| 601 | 609 | ||
| 602 | static struct regulator_init_data pvdd_1v2 __devinitdata = { | 610 | static struct regulator_init_data pvdd_1v2 __devinitdata = { |
| @@ -621,6 +629,24 @@ static struct regulator_consumer_supply pvdd_1v8_consumers[] __devinitdata = { | |||
| 621 | REGULATOR_SUPPLY("DCVDD", "1-001a"), | 629 | REGULATOR_SUPPLY("DCVDD", "1-001a"), |
| 622 | REGULATOR_SUPPLY("AVDD", "1-001a"), | 630 | REGULATOR_SUPPLY("AVDD", "1-001a"), |
| 623 | REGULATOR_SUPPLY("DBVDD", "spi0.0"), | 631 | REGULATOR_SUPPLY("DBVDD", "spi0.0"), |
| 632 | |||
| 633 | REGULATOR_SUPPLY("DBVDD", "1-003a"), | ||
| 634 | REGULATOR_SUPPLY("LDOVDD", "1-003a"), | ||
| 635 | REGULATOR_SUPPLY("CPVDD", "1-003a"), | ||
| 636 | REGULATOR_SUPPLY("AVDD", "1-003a"), | ||
| 637 | REGULATOR_SUPPLY("DBVDD1", "spi0.1"), | ||
| 638 | REGULATOR_SUPPLY("DBVDD2", "spi0.1"), | ||
| 639 | REGULATOR_SUPPLY("DBVDD3", "spi0.1"), | ||
| 640 | REGULATOR_SUPPLY("LDOVDD", "spi0.1"), | ||
| 641 | REGULATOR_SUPPLY("CPVDD", "spi0.1"), | ||
| 642 | |||
| 643 | REGULATOR_SUPPLY("DBVDD2", "wm5102-codec"), | ||
| 644 | REGULATOR_SUPPLY("DBVDD3", "wm5102-codec"), | ||
| 645 | REGULATOR_SUPPLY("CPVDD", "wm5102-codec"), | ||
| 646 | |||
| 647 | REGULATOR_SUPPLY("DBVDD2", "wm5110-codec"), | ||
| 648 | REGULATOR_SUPPLY("DBVDD3", "wm5110-codec"), | ||
| 649 | REGULATOR_SUPPLY("CPVDD", "wm5110-codec"), | ||
| 624 | }; | 650 | }; |
| 625 | 651 | ||
| 626 | static struct regulator_init_data pvdd_1v8 __devinitdata = { | 652 | static struct regulator_init_data pvdd_1v8 __devinitdata = { |
| @@ -685,6 +711,7 @@ static struct i2c_board_info i2c_devs1[] __devinitdata = { | |||
| 685 | .irq = S3C_EINT(0), | 711 | .irq = S3C_EINT(0), |
| 686 | .platform_data = &glenfarclas_pmic_pdata }, | 712 | .platform_data = &glenfarclas_pmic_pdata }, |
| 687 | 713 | ||
| 714 | { I2C_BOARD_INFO("wlf-gf-module", 0x20) }, | ||
| 688 | { I2C_BOARD_INFO("wlf-gf-module", 0x22) }, | 715 | { I2C_BOARD_INFO("wlf-gf-module", 0x22) }, |
| 689 | { I2C_BOARD_INFO("wlf-gf-module", 0x24) }, | 716 | { I2C_BOARD_INFO("wlf-gf-module", 0x24) }, |
| 690 | { I2C_BOARD_INFO("wlf-gf-module", 0x25) }, | 717 | { I2C_BOARD_INFO("wlf-gf-module", 0x25) }, |
| @@ -810,7 +837,7 @@ static void __init crag6410_machine_init(void) | |||
| 810 | i2c_register_board_info(1, i2c_devs1, ARRAY_SIZE(i2c_devs1)); | 837 | i2c_register_board_info(1, i2c_devs1, ARRAY_SIZE(i2c_devs1)); |
| 811 | 838 | ||
| 812 | samsung_keypad_set_platdata(&crag6410_keypad_data); | 839 | samsung_keypad_set_platdata(&crag6410_keypad_data); |
| 813 | s3c64xx_spi0_set_platdata(NULL, 0, 1); | 840 | s3c64xx_spi0_set_platdata(NULL, 0, 2); |
| 814 | 841 | ||
| 815 | platform_add_devices(crag6410_devices, ARRAY_SIZE(crag6410_devices)); | 842 | platform_add_devices(crag6410_devices, ARRAY_SIZE(crag6410_devices)); |
| 816 | 843 | ||
