aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-s3c2410
diff options
context:
space:
mode:
authorVasily Khoruzhick <anarsoul@gmail.com>2010-09-27 02:32:49 -0400
committerBen Dooks <ben-linux@fluff.org>2010-10-29 19:45:35 -0400
commit68730b451b7d44a9e85b76aac2d8c1aa751d38a4 (patch)
tree42cd08ee24642a67fe2659bf6285ed4684c13689 /arch/arm/mach-s3c2410
parent53193dd3ba3c7dfdd7fdf2b068c8f92cc46a5693 (diff)
ARM: h1940: add UDA1380 to i2c devices list
Register UDA1380 codec during H1940 machine init Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com> Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Diffstat (limited to 'arch/arm/mach-s3c2410')
-rw-r--r--arch/arm/mach-s3c2410/mach-h1940.c20
1 files changed, 20 insertions, 0 deletions
diff --git a/arch/arm/mach-s3c2410/mach-h1940.c b/arch/arm/mach-s3c2410/mach-h1940.c
index 974c6e4fb6a..a5cd324708c 100644
--- a/arch/arm/mach-s3c2410/mach-h1940.c
+++ b/arch/arm/mach-s3c2410/mach-h1940.c
@@ -24,6 +24,7 @@
24#include <linux/io.h> 24#include <linux/io.h>
25#include <linux/gpio.h> 25#include <linux/gpio.h>
26#include <linux/pwm_backlight.h> 26#include <linux/pwm_backlight.h>
27#include <linux/i2c.h>
27#include <video/platform_lcd.h> 28#include <video/platform_lcd.h>
28 29
29#include <linux/mmc/host.h> 30#include <linux/mmc/host.h>
@@ -59,6 +60,8 @@
59#include <plat/mci.h> 60#include <plat/mci.h>
60#include <plat/ts.h> 61#include <plat/ts.h>
61 62
63#include <sound/uda1380.h>
64
62#define H1940_LATCH ((void __force __iomem *)0xF8000000) 65#define H1940_LATCH ((void __force __iomem *)0xF8000000)
63 66
64#define H1940_PA_LATCH S3C2410_CS2 67#define H1940_PA_LATCH S3C2410_CS2
@@ -365,12 +368,26 @@ static struct platform_device h1940_lcd_powerdev = {
365 .dev.platform_data = &h1940_lcd_power_data, 368 .dev.platform_data = &h1940_lcd_power_data,
366}; 369};
367 370
371static struct uda1380_platform_data uda1380_info = {
372 .gpio_power = H1940_LATCH_UDA_POWER,
373 .gpio_reset = S3C2410_GPA(12),
374 .dac_clk = UDA1380_DAC_CLK_SYSCLK,
375};
376
377static struct i2c_board_info h1940_i2c_devices[] = {
378 {
379 I2C_BOARD_INFO("uda1380", 0x1a),
380 .platform_data = &uda1380_info,
381 },
382};
383
368static struct platform_device *h1940_devices[] __initdata = { 384static struct platform_device *h1940_devices[] __initdata = {
369 &s3c_device_ohci, 385 &s3c_device_ohci,
370 &s3c_device_lcd, 386 &s3c_device_lcd,
371 &s3c_device_wdt, 387 &s3c_device_wdt,
372 &s3c_device_i2c0, 388 &s3c_device_i2c0,
373 &s3c_device_iis, 389 &s3c_device_iis,
390 &s3c_device_pcm,
374 &s3c_device_usbgadget, 391 &s3c_device_usbgadget,
375 &h1940_device_leds, 392 &h1940_device_leds,
376 &h1940_device_bluetooth, 393 &h1940_device_bluetooth,
@@ -465,6 +482,9 @@ static void __init h1940_init(void)
465 gpio_direction_output(H1940_LATCH_SD_POWER, 0); 482 gpio_direction_output(H1940_LATCH_SD_POWER, 0);
466 483
467 platform_add_devices(h1940_devices, ARRAY_SIZE(h1940_devices)); 484 platform_add_devices(h1940_devices, ARRAY_SIZE(h1940_devices));
485
486 i2c_register_board_info(0, h1940_i2c_devices,
487 ARRAY_SIZE(h1940_i2c_devices));
468} 488}
469 489
470MACHINE_START(H1940, "IPAQ-H1940") 490MACHINE_START(H1940, "IPAQ-H1940")