diff options
author | Chanwoo Choi <cw00.choi@samsung.com> | 2010-10-14 02:02:44 -0400 |
---|---|---|
committer | Kukjin Kim <kgene.kim@samsung.com> | 2010-10-25 03:06:45 -0400 |
commit | 5112267e3f9af59e1439707cfe347cc8111d407a (patch) | |
tree | a31b59c56fdd5ec567381d1ddaa9818ae08ec8d1 /arch | |
parent | d2e7eca36dde5ee8979362bed5b27e47b37e94a0 (diff) |
ARM: S5PV210: Add i2c information to Goni and Aquila board
This patch the I2C board information for the WM8994 used in the Goni/Aquila
as audio codec and adds the I2C platform drivers.
Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/arm/mach-s5pv210/mach-aquila.c | 27 | ||||
-rw-r--r-- | arch/arm/mach-s5pv210/mach-goni.c | 27 |
2 files changed, 54 insertions, 0 deletions
diff --git a/arch/arm/mach-s5pv210/mach-aquila.c b/arch/arm/mach-s5pv210/mach-aquila.c index bf772de6b0c3..b0974929dec7 100644 --- a/arch/arm/mach-s5pv210/mach-aquila.c +++ b/arch/arm/mach-s5pv210/mach-aquila.c | |||
@@ -404,6 +404,28 @@ static struct i2c_board_info i2c_gpio_pmic_devs[] __initdata = { | |||
404 | #endif | 404 | #endif |
405 | }; | 405 | }; |
406 | 406 | ||
407 | /* GPIO I2C AP 1.8V */ | ||
408 | #define AP_I2C_GPIO_BUS_5 5 | ||
409 | static struct i2c_gpio_platform_data aquila_i2c_gpio5_data = { | ||
410 | .sda_pin = S5PV210_MP05(3), /* XM0ADDR_11 */ | ||
411 | .scl_pin = S5PV210_MP05(2), /* XM0ADDR_10 */ | ||
412 | }; | ||
413 | |||
414 | static struct platform_device aquila_i2c_gpio5 = { | ||
415 | .name = "i2c-gpio", | ||
416 | .id = AP_I2C_GPIO_BUS_5, | ||
417 | .dev = { | ||
418 | .platform_data = &aquila_i2c_gpio5_data, | ||
419 | }, | ||
420 | }; | ||
421 | |||
422 | static struct i2c_board_info i2c_gpio5_devs[] __initdata = { | ||
423 | { | ||
424 | /* CS/ADDR = low 0x34 (FYI: high = 0x36) */ | ||
425 | I2C_BOARD_INFO("wm8994", 0x1a), | ||
426 | }, | ||
427 | }; | ||
428 | |||
407 | /* PMIC Power button */ | 429 | /* PMIC Power button */ |
408 | static struct gpio_keys_button aquila_gpio_keys_table[] = { | 430 | static struct gpio_keys_button aquila_gpio_keys_table[] = { |
409 | { | 431 | { |
@@ -475,6 +497,7 @@ static void aquila_setup_sdhci(void) | |||
475 | 497 | ||
476 | static struct platform_device *aquila_devices[] __initdata = { | 498 | static struct platform_device *aquila_devices[] __initdata = { |
477 | &aquila_i2c_gpio_pmic, | 499 | &aquila_i2c_gpio_pmic, |
500 | &aquila_i2c_gpio5, | ||
478 | &aquila_device_gpiokeys, | 501 | &aquila_device_gpiokeys, |
479 | &s3c_device_fb, | 502 | &s3c_device_fb, |
480 | &s5p_device_onenand, | 503 | &s5p_device_onenand, |
@@ -506,6 +529,10 @@ static void __init aquila_machine_init(void) | |||
506 | s3c_fimc_setname(1, "s5p-fimc"); | 529 | s3c_fimc_setname(1, "s5p-fimc"); |
507 | s3c_fimc_setname(2, "s5p-fimc"); | 530 | s3c_fimc_setname(2, "s5p-fimc"); |
508 | 531 | ||
532 | /* SOUND */ | ||
533 | i2c_register_board_info(AP_I2C_GPIO_BUS_5, i2c_gpio5_devs, | ||
534 | ARRAY_SIZE(i2c_gpio5_devs)); | ||
535 | |||
509 | /* FB */ | 536 | /* FB */ |
510 | s3c_fb_set_platdata(&aquila_lcd_pdata); | 537 | s3c_fb_set_platdata(&aquila_lcd_pdata); |
511 | 538 | ||
diff --git a/arch/arm/mach-s5pv210/mach-goni.c b/arch/arm/mach-s5pv210/mach-goni.c index 1bae3f13f0a0..54d80f3fd5d0 100644 --- a/arch/arm/mach-s5pv210/mach-goni.c +++ b/arch/arm/mach-s5pv210/mach-goni.c | |||
@@ -545,6 +545,28 @@ static struct i2c_board_info i2c_gpio_pmic_devs[] __initdata = { | |||
545 | #endif | 545 | #endif |
546 | }; | 546 | }; |
547 | 547 | ||
548 | /* GPIO I2C AP 1.8V */ | ||
549 | #define AP_I2C_GPIO_BUS_5 5 | ||
550 | static struct i2c_gpio_platform_data goni_i2c_gpio5_data = { | ||
551 | .sda_pin = S5PV210_MP05(3), /* XM0ADDR_11 */ | ||
552 | .scl_pin = S5PV210_MP05(2), /* XM0ADDR_10 */ | ||
553 | }; | ||
554 | |||
555 | static struct platform_device goni_i2c_gpio5 = { | ||
556 | .name = "i2c-gpio", | ||
557 | .id = AP_I2C_GPIO_BUS_5, | ||
558 | .dev = { | ||
559 | .platform_data = &goni_i2c_gpio5_data, | ||
560 | }, | ||
561 | }; | ||
562 | |||
563 | static struct i2c_board_info i2c_gpio5_devs[] __initdata = { | ||
564 | { | ||
565 | /* CS/ADDR = low 0x34 (FYI: high = 0x36) */ | ||
566 | I2C_BOARD_INFO("wm8994", 0x1a), | ||
567 | }, | ||
568 | }; | ||
569 | |||
548 | /* PMIC Power button */ | 570 | /* PMIC Power button */ |
549 | static struct gpio_keys_button goni_gpio_keys_table[] = { | 571 | static struct gpio_keys_button goni_gpio_keys_table[] = { |
550 | { | 572 | { |
@@ -645,6 +667,7 @@ static struct platform_device *goni_devices[] __initdata = { | |||
645 | &s5p_device_onenand, | 667 | &s5p_device_onenand, |
646 | &goni_spi_gpio, | 668 | &goni_spi_gpio, |
647 | &goni_i2c_gpio_pmic, | 669 | &goni_i2c_gpio_pmic, |
670 | &goni_i2c_gpio5, | ||
648 | &mmc2_fixed_voltage, | 671 | &mmc2_fixed_voltage, |
649 | &goni_device_gpiokeys, | 672 | &goni_device_gpiokeys, |
650 | &s5p_device_fimc0, | 673 | &s5p_device_fimc0, |
@@ -689,6 +712,10 @@ static void __init goni_machine_init(void) | |||
689 | /* SDHCI */ | 712 | /* SDHCI */ |
690 | goni_setup_sdhci(); | 713 | goni_setup_sdhci(); |
691 | 714 | ||
715 | /* SOUND */ | ||
716 | i2c_register_board_info(AP_I2C_GPIO_BUS_5, i2c_gpio5_devs, | ||
717 | ARRAY_SIZE(i2c_gpio5_devs)); | ||
718 | |||
692 | /* FB */ | 719 | /* FB */ |
693 | s3c_fb_set_platdata(&goni_lcd_pdata); | 720 | s3c_fb_set_platdata(&goni_lcd_pdata); |
694 | 721 | ||