ARM: S3C24XX: Specify audio codec platform_data for mini2440 board
authorSylwester Nawrocki <s.nawrocki@samsung.com>
Thu, 4 Aug 2016 13:38:42 +0000 (15:38 +0200)
committerMark Brown <broonie@kernel.org>
Mon, 8 Aug 2016 10:55:20 +0000 (11:55 +0100)
The L3 bus GPIOs are specified in the board file rather than through
the sound card's device platform_data. This allows to ensure the codec
driver doesn't get probed with uninitialized platform_data field of
its corresponding platform device.

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
arch/arm/mach-s3c24xx/mach-mini2440.c

index a8521684a7f543fedf47ea365d0f02dd57bb313d..13999c1c46cf8f8f621e05277d875eae094664b2 100644 (file)
@@ -497,9 +497,28 @@ static struct i2c_board_info mini2440_i2c_devs[] __initdata = {
        },
 };
 
+static struct uda134x_platform_data s3c24xx_uda134x = {
+       .l3 = {
+               .gpio_clk = S3C2410_GPB(4),
+               .gpio_data = S3C2410_GPB(3),
+               .gpio_mode = S3C2410_GPB(2),
+               .use_gpios = 1,
+               .data_hold = 1,
+               .data_setup = 1,
+               .clock_high = 1,
+               .mode_hold = 1,
+               .mode = 1,
+               .mode_setup = 1,
+       },
+       .model = UDA134X_UDA1341,
+};
+
 static struct platform_device uda1340_codec = {
                .name = "uda134x-codec",
                .id = -1,
+               .dev = {
+                       .platform_data  = &s3c24xx_uda134x,
+               },
 };
 
 static struct platform_device *mini2440_devices[] __initdata = {