aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMark Brown <broonie@opensource.wolfsonmicro.com>2012-10-17 04:41:09 -0400
committerKukjin Kim <kgene.kim@samsung.com>2012-10-17 04:41:09 -0400
commite6a194b7827ab8ece296f579c9d3f156c1545a3f (patch)
tree34fca5e5b711f5d0bc3eec8f49a2db6879cffc3b
parent41830ee0a8098cae5fd1f6dbe24803d290338096 (diff)
ARM: S3C64XX: Add WM2200 module for Cragganmore
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
-rw-r--r--arch/arm/mach-s3c64xx/mach-crag6410-module.c15
-rw-r--r--arch/arm/mach-s3c64xx/mach-crag6410.c5
2 files changed, 20 insertions, 0 deletions
diff --git a/arch/arm/mach-s3c64xx/mach-crag6410-module.c b/arch/arm/mach-s3c64xx/mach-crag6410-module.c
index fc758b1a4ffa..4744c42ebdf5 100644
--- a/arch/arm/mach-s3c64xx/mach-crag6410-module.c
+++ b/arch/arm/mach-s3c64xx/mach-crag6410-module.c
@@ -21,6 +21,7 @@
21#include <linux/regulator/machine.h> 21#include <linux/regulator/machine.h>
22 22
23#include <sound/wm0010.h> 23#include <sound/wm0010.h>
24#include <sound/wm2200.h>
24#include <sound/wm5100.h> 25#include <sound/wm5100.h>
25#include <sound/wm8996.h> 26#include <sound/wm8996.h>
26#include <sound/wm8962.h> 27#include <sound/wm8962.h>
@@ -277,6 +278,18 @@ static const struct i2c_board_info wm6230_i2c_devs[] = {
277 .platform_data = &wm9081_pdata, }, 278 .platform_data = &wm9081_pdata, },
278}; 279};
279 280
281static 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
288static const struct i2c_board_info wm2200_i2c[] = {
289 { I2C_BOARD_INFO("wm2200", 0x3a),
290 .platform_data = &wm2200_pdata, },
291};
292
280static __devinitdata const struct { 293static __devinitdata const struct {
281 u8 id; 294 u8 id;
282 u8 rev; 295 u8 rev;
@@ -326,6 +339,8 @@ static __devinitdata const struct {
326 { .id = 0x3e, .rev = -1, .name = "WM5102-6271-EV1-CS127 Amrut", 339 { .id = 0x3e, .rev = -1, .name = "WM5102-6271-EV1-CS127 Amrut",
327 .spi_devs = wm5102_spi_devs, 340 .spi_devs = wm5102_spi_devs,
328 .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) },
329}; 344};
330 345
331static __devinit int wlf_gf_module_probe(struct i2c_client *i2c, 346static __devinit int wlf_gf_module_probe(struct i2c_client *i2c,
diff --git a/arch/arm/mach-s3c64xx/mach-crag6410.c b/arch/arm/mach-s3c64xx/mach-crag6410.c
index 6d5b2c668825..7e355238abe8 100644
--- a/arch/arm/mach-s3c64xx/mach-crag6410.c
+++ b/arch/arm/mach-s3c64xx/mach-crag6410.c
@@ -629,6 +629,11 @@ static struct regulator_consumer_supply pvdd_1v8_consumers[] __devinitdata = {
629 REGULATOR_SUPPLY("DCVDD", "1-001a"), 629 REGULATOR_SUPPLY("DCVDD", "1-001a"),
630 REGULATOR_SUPPLY("AVDD", "1-001a"), 630 REGULATOR_SUPPLY("AVDD", "1-001a"),
631 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"),
632 REGULATOR_SUPPLY("DBVDD1", "spi0.1"), 637 REGULATOR_SUPPLY("DBVDD1", "spi0.1"),
633 REGULATOR_SUPPLY("DBVDD2", "spi0.1"), 638 REGULATOR_SUPPLY("DBVDD2", "spi0.1"),
634 REGULATOR_SUPPLY("DBVDD3", "spi0.1"), 639 REGULATOR_SUPPLY("DBVDD3", "spi0.1"),