]> git.kernelconcepts.de Git - karo-tx-linux.git/blobdiff - arch/arm/mach-omap2/twl-common.c
Merge branch 'peter/for-tony' of git://gitorious.org/omap-audio/linux-audio into...
[karo-tx-linux.git] / arch / arm / mach-omap2 / twl-common.c
index e49b40b4c90a23c9522d00ce2aab8ba01a4de39a..931495a2587244a2c3060631af42b08279bebead 100644 (file)
@@ -528,24 +528,29 @@ void __init omap4_pmic_get_config(struct twl4030_platform_data *pmic_data,
        defined(CONFIG_SND_OMAP_SOC_OMAP_TWL4030_MODULE)
 #include <linux/platform_data/omap-twl4030.h>
 
+/* Commonly used configuration */
 static struct omap_tw4030_pdata omap_twl4030_audio_data;
 
 static struct platform_device audio_device = {
        .name           = "omap-twl4030",
        .id             = -1,
-       .dev = {
-               .platform_data = &omap_twl4030_audio_data,
-       },
 };
 
-void __init omap_twl4030_audio_init(char *card_name)
+void __init omap_twl4030_audio_init(char *card_name,
+                                   struct omap_tw4030_pdata *pdata)
 {
-       omap_twl4030_audio_data.card_name = card_name;
+       if (!pdata)
+               pdata = &omap_twl4030_audio_data;
+
+       pdata->card_name = card_name;
+
+       audio_device.dev.platform_data = pdata;
        platform_device_register(&audio_device);
 }
 
 #else /* SOC_OMAP_TWL4030 */
-void __init omap_twl4030_audio_init(char *card_name)
+void __init omap_twl4030_audio_init(char *card_name,
+                                   struct omap_tw4030_pdata *pdata)
 {
        return;
 }