Merge tag 'asoc-3.8' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound...
authorTakashi Iwai <tiwai@suse.de>
Mon, 10 Dec 2012 08:00:45 +0000 (09:00 +0100)
committerTakashi Iwai <tiwai@suse.de>
Mon, 10 Dec 2012 08:00:45 +0000 (09:00 +0100)
ASoC: Updates for v3.8

Some incremental updates, nothing too exciting.  The biggest block here
is the __dev annotation removal stuff from Bill, everything else is the
usual driver-specific stuff - a combination of fixes and development.

There will be at least more more set of fixes to come but I wanted to
get these out ready for the merge window to make sure Bill's stuff makes
it in.

267 files changed:
arch/arm/mach-exynos/mach-armlex4210.c
arch/arm/mach-exynos/mach-smdkv310.c
arch/arm/mach-s3c24xx/mach-gta02.c
arch/arm/mach-s3c24xx/mach-h1940.c
arch/arm/mach-s3c24xx/mach-mini2440.c
arch/arm/mach-s3c24xx/mach-rx1950.c
arch/arm/mach-s3c64xx/mach-crag6410.c
arch/arm/mach-s3c64xx/mach-smdk6410.c
arch/arm/mach-s5p64x0/mach-smdk6440.c
arch/arm/mach-s5p64x0/mach-smdk6450.c
arch/arm/mach-s5pc100/mach-smdkc100.c
arch/arm/mach-s5pv210/mach-smdkc110.c
arch/arm/mach-s5pv210/mach-smdkv210.c
arch/arm/plat-samsung/devs.c
arch/arm/plat-samsung/include/plat/devs.h
include/linux/platform_data/davinci_asp.h
include/linux/platform_data/omap-twl4030.h
sound/soc/atmel/sam9g20_wm8731.c
sound/soc/au1x/ac97c.c
sound/soc/au1x/db1000.c
sound/soc/au1x/db1200.c
sound/soc/au1x/dbdma2.c
sound/soc/au1x/dma.c
sound/soc/au1x/i2sc.c
sound/soc/au1x/psc-ac97.c
sound/soc/au1x/psc-i2s.c
sound/soc/blackfin/bf5xx-ac97-pcm.c
sound/soc/blackfin/bf5xx-ac97.c
sound/soc/blackfin/bf5xx-ad1836.c
sound/soc/blackfin/bf5xx-i2s-pcm.c
sound/soc/blackfin/bf5xx-i2s.c
sound/soc/blackfin/bf5xx-tdm-pcm.c
sound/soc/blackfin/bf5xx-tdm.c
sound/soc/blackfin/bf6xx-i2s.c
sound/soc/blackfin/bfin-eval-adau1373.c
sound/soc/blackfin/bfin-eval-adau1701.c
sound/soc/blackfin/bfin-eval-adav80x.c
sound/soc/cirrus/edb93xx.c
sound/soc/cirrus/ep93xx-ac97.c
sound/soc/cirrus/ep93xx-i2s.c
sound/soc/cirrus/ep93xx-pcm.c
sound/soc/cirrus/simone.c
sound/soc/cirrus/snappercl15.c
sound/soc/codecs/88pm860x-codec.c
sound/soc/codecs/ab8500-codec.c
sound/soc/codecs/ac97.c
sound/soc/codecs/ad1836.c
sound/soc/codecs/ad193x.c
sound/soc/codecs/ad1980.c
sound/soc/codecs/ad73311.c
sound/soc/codecs/adau1373.c
sound/soc/codecs/adau1701.c
sound/soc/codecs/adav80x.c
sound/soc/codecs/ads117x.c
sound/soc/codecs/ak4104.c
sound/soc/codecs/ak4535.c
sound/soc/codecs/ak4641.c
sound/soc/codecs/ak4642.c
sound/soc/codecs/ak4671.c
sound/soc/codecs/alc5623.c
sound/soc/codecs/alc5632.c
sound/soc/codecs/arizona.c
sound/soc/codecs/arizona.h
sound/soc/codecs/cq93vc.c
sound/soc/codecs/cs4271.c
sound/soc/codecs/cs42l52.c
sound/soc/codecs/cs42l73.c
sound/soc/codecs/da7210.c
sound/soc/codecs/da732x.c
sound/soc/codecs/da9055.c
sound/soc/codecs/dfbmcs320.c
sound/soc/codecs/dmic.c
sound/soc/codecs/isabelle.c
sound/soc/codecs/jz4740.c
sound/soc/codecs/lm4857.c
sound/soc/codecs/lm49453.c
sound/soc/codecs/max9768.c
sound/soc/codecs/max98088.c
sound/soc/codecs/max98095.c
sound/soc/codecs/max9850.c
sound/soc/codecs/max9877.c
sound/soc/codecs/mc13783.c
sound/soc/codecs/ml26124.c
sound/soc/codecs/omap-hdmi.c
sound/soc/codecs/pcm3008.c
sound/soc/codecs/rt5631.c
sound/soc/codecs/sgtl5000.c
sound/soc/codecs/si476x.c
sound/soc/codecs/sn95031.c
sound/soc/codecs/ssm2602.c
sound/soc/codecs/sta32x.c
sound/soc/codecs/sta529.c
sound/soc/codecs/stac9766.c
sound/soc/codecs/tlv320aic32x4.c
sound/soc/codecs/tlv320dac33.c
sound/soc/codecs/tpa6130a2.c
sound/soc/codecs/twl4030.c
sound/soc/codecs/twl6040.c
sound/soc/codecs/uda134x.c
sound/soc/codecs/uda1380.c
sound/soc/codecs/wl1273.c
sound/soc/codecs/wm0010.c
sound/soc/codecs/wm1250-ev1.c
sound/soc/codecs/wm2000.c
sound/soc/codecs/wm2200.c
sound/soc/codecs/wm5100.c
sound/soc/codecs/wm5102.c
sound/soc/codecs/wm5110.c
sound/soc/codecs/wm8350.c
sound/soc/codecs/wm8400.c
sound/soc/codecs/wm8510.c
sound/soc/codecs/wm8523.c
sound/soc/codecs/wm8711.c
sound/soc/codecs/wm8727.c
sound/soc/codecs/wm8728.c
sound/soc/codecs/wm8731.c
sound/soc/codecs/wm8737.c
sound/soc/codecs/wm8741.c
sound/soc/codecs/wm8750.c
sound/soc/codecs/wm8753.c
sound/soc/codecs/wm8770.c
sound/soc/codecs/wm8776.c
sound/soc/codecs/wm8782.c
sound/soc/codecs/wm8804.c
sound/soc/codecs/wm8900.c
sound/soc/codecs/wm8903.c
sound/soc/codecs/wm8904.c
sound/soc/codecs/wm8940.c
sound/soc/codecs/wm8955.c
sound/soc/codecs/wm8960.c
sound/soc/codecs/wm8961.c
sound/soc/codecs/wm8962.c
sound/soc/codecs/wm8971.c
sound/soc/codecs/wm8974.c
sound/soc/codecs/wm8978.c
sound/soc/codecs/wm8983.c
sound/soc/codecs/wm8985.c
sound/soc/codecs/wm8988.c
sound/soc/codecs/wm8990.c
sound/soc/codecs/wm8991.c
sound/soc/codecs/wm8993.c
sound/soc/codecs/wm8994.c
sound/soc/codecs/wm8994.h
sound/soc/codecs/wm8995.c
sound/soc/codecs/wm8996.c
sound/soc/codecs/wm9081.c
sound/soc/codecs/wm9090.c
sound/soc/codecs/wm9705.c
sound/soc/codecs/wm9712.c
sound/soc/codecs/wm9713.c
sound/soc/codecs/wm_adsp.c
sound/soc/davinci/davinci-mcasp.c
sound/soc/davinci/davinci-mcasp.h
sound/soc/fsl/eukrea-tlv320.c
sound/soc/fsl/fsl_dma.c
sound/soc/fsl/fsl_ssi.c
sound/soc/fsl/imx-audmux.c
sound/soc/fsl/imx-mc13783.c
sound/soc/fsl/imx-pcm-dma.c
sound/soc/fsl/imx-pcm-fiq.c
sound/soc/fsl/imx-sgtl5000.c
sound/soc/fsl/imx-ssi.c
sound/soc/fsl/mpc5200_psc_ac97.c
sound/soc/fsl/mpc5200_psc_i2s.c
sound/soc/fsl/mpc8610_hpcd.c
sound/soc/fsl/mx27vis-aic32x4.c
sound/soc/fsl/p1022_ds.c
sound/soc/fsl/p1022_rdk.c
sound/soc/fsl/pcm030-audio-fabric.c
sound/soc/jz4740/jz4740-i2s.c
sound/soc/jz4740/jz4740-pcm.c
sound/soc/jz4740/qi_lb60.c
sound/soc/kirkwood/kirkwood-dma.c
sound/soc/kirkwood/kirkwood-i2s.c
sound/soc/kirkwood/kirkwood-openrd.c
sound/soc/kirkwood/kirkwood-t5325.c
sound/soc/mid-x86/mfld_machine.c
sound/soc/mxs/mxs-pcm.c
sound/soc/mxs/mxs-saif.c
sound/soc/mxs/mxs-sgtl5000.c
sound/soc/nuc900/nuc900-ac97.c
sound/soc/nuc900/nuc900-pcm.c
sound/soc/omap/ams-delta.c
sound/soc/omap/mcbsp.c
sound/soc/omap/mcbsp.h
sound/soc/omap/omap-abe-twl6040.c
sound/soc/omap/omap-dmic.c
sound/soc/omap/omap-hdmi-card.c
sound/soc/omap/omap-hdmi.c
sound/soc/omap/omap-mcbsp.c
sound/soc/omap/omap-mcpdm.c
sound/soc/omap/omap-pcm.c
sound/soc/omap/omap-twl4030.c
sound/soc/omap/zoom2.c
sound/soc/pxa/brownstone.c
sound/soc/pxa/corgi.c
sound/soc/pxa/e740_wm9705.c
sound/soc/pxa/e750_wm9705.c
sound/soc/pxa/e800_wm9712.c
sound/soc/pxa/hx4700.c
sound/soc/pxa/imote2.c
sound/soc/pxa/mioa701_wm9713.c
sound/soc/pxa/mmp-pcm.c
sound/soc/pxa/mmp-sspa.c
sound/soc/pxa/palm27x.c
sound/soc/pxa/poodle.c
sound/soc/pxa/pxa-ssp.c
sound/soc/pxa/pxa2xx-ac97.c
sound/soc/pxa/pxa2xx-i2s.c
sound/soc/pxa/pxa2xx-pcm.c
sound/soc/pxa/tosa.c
sound/soc/pxa/ttc-dkb.c
sound/soc/s6000/s6000-i2s.c
sound/soc/s6000/s6000-pcm.c
sound/soc/samsung/ac97.c
sound/soc/samsung/bells.c
sound/soc/samsung/dma.c
sound/soc/samsung/dma.h
sound/soc/samsung/goni_wm8994.c
sound/soc/samsung/h1940_uda1380.c
sound/soc/samsung/i2s.c
sound/soc/samsung/idma.c
sound/soc/samsung/jive_wm8750.c
sound/soc/samsung/littlemill.c
sound/soc/samsung/ln2440sbc_alc650.c
sound/soc/samsung/lowland.c
sound/soc/samsung/neo1973_wm8753.c
sound/soc/samsung/pcm.c
sound/soc/samsung/rx1950_uda1380.c
sound/soc/samsung/s3c2412-i2s.c
sound/soc/samsung/s3c24xx-i2s.c
sound/soc/samsung/s3c24xx_simtec.c
sound/soc/samsung/s3c24xx_simtec_hermes.c
sound/soc/samsung/s3c24xx_simtec_tlv320aic23.c
sound/soc/samsung/s3c24xx_uda134x.c
sound/soc/samsung/smartq_wm8987.c
sound/soc/samsung/smdk2443_wm9710.c
sound/soc/samsung/smdk_spdif.c
sound/soc/samsung/smdk_wm8580.c
sound/soc/samsung/smdk_wm8580pcm.c
sound/soc/samsung/smdk_wm8994.c
sound/soc/samsung/smdk_wm8994pcm.c
sound/soc/samsung/smdk_wm9713.c
sound/soc/samsung/spdif.c
sound/soc/samsung/speyside.c
sound/soc/samsung/tobermory.c
sound/soc/sh/dma-sh7760.c
sound/soc/sh/hac.c
sound/soc/sh/siu_dai.c
sound/soc/sh/ssi.c
sound/soc/soc-utils.c
sound/soc/spear/spear_pcm.c
sound/soc/tegra/tegra20_das.c
sound/soc/tegra/tegra20_i2s.c
sound/soc/tegra/tegra20_spdif.c
sound/soc/tegra/tegra30_ahub.c
sound/soc/tegra/tegra30_i2s.c
sound/soc/tegra/tegra_alc5632.c
sound/soc/tegra/tegra_pcm.c
sound/soc/tegra/tegra_wm8753.c
sound/soc/tegra/tegra_wm8903.c
sound/soc/tegra/trimslice.c
sound/soc/txx9/txx9aclc-ac97.c
sound/soc/txx9/txx9aclc.c
sound/soc/ux500/mop500.c
sound/soc/ux500/ux500_msp_dai.c
sound/soc/ux500/ux500_pcm.c

index 3f37a5e..b938f9f 100644 (file)
@@ -147,7 +147,6 @@ static struct platform_device *armlex4210_devices[] __initdata = {
        &s3c_device_hsmmc3,
        &s3c_device_rtc,
        &s3c_device_wdt,
-       &samsung_asoc_dma,
        &armlex4210_smsc911x,
        &exynos4_device_ahci,
 };
index ee4fb1a..5de9ee2 100644 (file)
@@ -311,7 +311,6 @@ static struct platform_device *smdkv310_devices[] __initdata = {
        &s5p_device_mfc_l,
        &s5p_device_mfc_r,
        &exynos4_device_spdif,
-       &samsung_asoc_dma,
        &samsung_asoc_idma,
        &s5p_device_fimd0,
        &smdkv310_device_audio,
index 4a96346..973b87c 100644 (file)
@@ -521,7 +521,6 @@ static struct platform_device *gta02_devices[] __initdata = {
        &gta02_nor_flash,
        &s3c24xx_pwm_device,
        &s3c_device_iis,
-       &samsung_asoc_dma,
        &s3c_device_i2c0,
        &gta02_dfbmcs320_device,
        &gta02_buttons_device,
index 63aaf07..b23dd1b 100644 (file)
@@ -632,7 +632,6 @@ static struct platform_device *h1940_devices[] __initdata = {
        &s3c_device_wdt,
        &s3c_device_i2c0,
        &s3c_device_iis,
-       &samsung_asoc_dma,
        &s3c_device_usbgadget,
        &h1940_device_leds,
        &h1940_device_bluetooth,
index 393c0f1..a31d5b8 100644 (file)
@@ -519,7 +519,6 @@ static struct platform_device *mini2440_devices[] __initdata = {
        &s3c_device_iis,
        &uda1340_codec,
        &mini2440_audio,
-       &samsung_asoc_dma,
 };
 
 static void __init mini2440_map_io(void)
index 379fde5..0606f2f 100644 (file)
@@ -712,7 +712,6 @@ static struct platform_device *rx1950_devices[] __initdata = {
        &s3c_device_wdt,
        &s3c_device_i2c0,
        &s3c_device_iis,
-       &samsung_asoc_dma,
        &s3c_device_usbgadget,
        &s3c_device_rtc,
        &s3c_device_nand,
index 13b7eaa..ef2117d 100644 (file)
@@ -357,7 +357,6 @@ static struct platform_device *crag6410_devices[] __initdata = {
        &s3c_device_timer[0],
        &s3c64xx_device_iis0,
        &s3c64xx_device_iis1,
-       &samsung_asoc_dma,
        &samsung_device_keypad,
        &crag6410_gpio_keydev,
        &crag6410_dm9k_device,
index da1a771..574a9ee 100644 (file)
@@ -275,7 +275,6 @@ static struct platform_device *smdk6410_devices[] __initdata = {
        &s3c_device_fb,
        &s3c_device_ohci,
        &s3c_device_usb_hsotg,
-       &samsung_asoc_dma,
        &s3c64xx_device_iisv4,
        &samsung_device_keypad,
 
index 96ea1fe..1af8235 100644 (file)
@@ -165,7 +165,6 @@ static struct platform_device *smdk6440_devices[] __initdata = {
        &s3c_device_i2c1,
        &s3c_device_ts,
        &s3c_device_wdt,
-       &samsung_asoc_dma,
        &s5p6440_device_iis,
        &s3c_device_fb,
        &smdk6440_lcd_lte480wv,
index 12748b6..62526cc 100644 (file)
@@ -183,7 +183,6 @@ static struct platform_device *smdk6450_devices[] __initdata = {
        &s3c_device_i2c1,
        &s3c_device_ts,
        &s3c_device_wdt,
-       &samsung_asoc_dma,
        &s5p6450_device_iis0,
        &s3c_device_fb,
        &smdk6450_lcd_lte480wv,
index dba7384..9abe95e 100644 (file)
@@ -197,7 +197,6 @@ static struct platform_device *smdkc100_devices[] __initdata = {
        &s3c_device_ts,
        &s3c_device_wdt,
        &smdkc100_lcd_powerdev,
-       &samsung_asoc_dma,
        &s5pc100_device_iis0,
        &samsung_device_keypad,
        &s5pc100_device_ac97,
index d9c99fc..f1f3bd3 100644 (file)
@@ -85,7 +85,6 @@ static struct s3c_ide_platdata smdkc110_ide_pdata __initdata = {
 };
 
 static struct platform_device *smdkc110_devices[] __initdata = {
-       &samsung_asoc_dma,
        &s5pv210_device_iis0,
        &s5pv210_device_ac97,
        &s5pv210_device_spdif,
index 4cdb5bb..6bc8404 100644 (file)
@@ -234,7 +234,6 @@ static struct platform_device *smdkv210_devices[] __initdata = {
        &s5pv210_device_ac97,
        &s5pv210_device_iis0,
        &s5pv210_device_spdif,
-       &samsung_asoc_dma,
        &samsung_asoc_idma,
        &samsung_device_keypad,
        &smdkv210_dm9000,
index 03f654d..7d27a24 100644 (file)
@@ -146,15 +146,6 @@ struct platform_device s3c_device_camif = {
 
 /* ASOC DMA */
 
-struct platform_device samsung_asoc_dma = {
-       .name           = "samsung-audio",
-       .id             = -1,
-       .dev            = {
-               .dma_mask               = &samsung_device_dma_mask,
-               .coherent_dma_mask      = DMA_BIT_MASK(32),
-       }
-};
-
 struct platform_device samsung_asoc_idma = {
        .name           = "samsung-idma",
        .id             = -1,
index 5da4b4f..c45f70c 100644 (file)
@@ -135,7 +135,6 @@ extern struct platform_device exynos4_device_spdif;
 
 extern struct platform_device exynos_device_drm;
 
-extern struct platform_device samsung_asoc_dma;
 extern struct platform_device samsung_asoc_idma;
 extern struct platform_device samsung_device_keypad;
 
index f3d6e4f..8db5ae0 100644 (file)
@@ -23,7 +23,6 @@ struct snd_platform_data {
        u32 rx_dma_offset;
        int asp_chan_q; /* event queue number for ASP channel */
        int ram_chan_q; /* event queue number for RAM channel */
-       unsigned int codec_fmt;
        /*
         * Allowing this is more efficient and eliminates left and right swaps
         * caused by underruns, but will swap the left and right channels
index c7bef78..ee60ef7 100644 (file)
 #ifndef _OMAP_TWL4030_H_
 #define _OMAP_TWL4030_H_
 
+/* To select if only one channel is connected in a stereo port */
+#define OMAP_TWL4030_LEFT      (1 << 0)
+#define OMAP_TWL4030_RIGHT     (1 << 1)
+
 struct omap_tw4030_pdata {
        const char *card_name;
+       /* Voice port is connected to McBSP3 */
+       bool voice_connected;
+
+       /* The driver will parse the connection flags if this flag is set */
+       bool    custom_routing;
+       /* Flags to indicate connected audio ports. */
+       u8      has_hs;
+       u8      has_hf;
+       u8      has_predriv;
+       u8      has_carkit;
+       bool    has_ear;
+
+       bool    has_mainmic;
+       bool    has_submic;
+       bool    has_hsmic;
+       bool    has_carkitmic;
+       bool    has_digimic0;
+       bool    has_digimic1;
+       u8      has_linein;
+
+       /* Jack detect GPIO or  <= 0 if it is not implemented */
+       int jack_detect;
 };
 
 #endif /* _OMAP_TWL4030_H_ */
index 0744610..da97629 100644 (file)
@@ -197,7 +197,7 @@ static struct snd_soc_card snd_soc_at91sam9g20ek = {
        .set_bias_level = at91sam9g20ek_set_bias_level,
 };
 
-static int __devinit at91sam9g20ek_audio_probe(struct platform_device *pdev)
+static int at91sam9g20ek_audio_probe(struct platform_device *pdev)
 {
        struct device_node *np = pdev->dev.of_node;
        struct device_node *codec_np, *cpu_np;
@@ -301,7 +301,7 @@ err:
        return ret;
 }
 
-static int __devexit at91sam9g20ek_audio_remove(struct platform_device *pdev)
+static int at91sam9g20ek_audio_remove(struct platform_device *pdev)
 {
        struct snd_soc_card *card = platform_get_drvdata(pdev);
 
@@ -328,7 +328,7 @@ static struct platform_driver at91sam9g20ek_audio_driver = {
                .of_match_table = of_match_ptr(at91sam9g20ek_wm8731_dt_ids),
        },
        .probe  = at91sam9g20ek_audio_probe,
-       .remove = __devexit_p(at91sam9g20ek_audio_remove),
+       .remove = at91sam9g20ek_audio_remove,
 };
 
 module_platform_driver(at91sam9g20ek_audio_driver);
index c5ac244..ea7d9d1 100644 (file)
@@ -223,7 +223,7 @@ static struct snd_soc_dai_driver au1xac97c_dai_driver = {
        .ops                    = &alchemy_ac97c_ops,
 };
 
-static int __devinit au1xac97c_drvprobe(struct platform_device *pdev)
+static int au1xac97c_drvprobe(struct platform_device *pdev)
 {
        int ret;
        struct resource *iores, *dmares;
@@ -276,7 +276,7 @@ static int __devinit au1xac97c_drvprobe(struct platform_device *pdev)
        return 0;
 }
 
-static int __devexit au1xac97c_drvremove(struct platform_device *pdev)
+static int au1xac97c_drvremove(struct platform_device *pdev)
 {
        struct au1xpsc_audio_data *ctx = platform_get_drvdata(pdev);
 
@@ -330,7 +330,7 @@ static struct platform_driver au1xac97c_driver = {
                .pm     = AU1XPSCAC97_PMOPS,
        },
        .probe          = au1xac97c_drvprobe,
-       .remove         = __devexit_p(au1xac97c_drvremove),
+       .remove         = au1xac97c_drvremove,
 };
 
 static int __init au1xac97c_load(void)
index 511d83c..376d976 100644 (file)
@@ -34,14 +34,14 @@ static struct snd_soc_card db1000_ac97 = {
        .num_links      = 1,
 };
 
-static int __devinit db1000_audio_probe(struct platform_device *pdev)
+static int db1000_audio_probe(struct platform_device *pdev)
 {
        struct snd_soc_card *card = &db1000_ac97;
        card->dev = &pdev->dev;
        return snd_soc_register_card(card);
 }
 
-static int __devexit db1000_audio_remove(struct platform_device *pdev)
+static int db1000_audio_remove(struct platform_device *pdev)
 {
        struct snd_soc_card *card = platform_get_drvdata(pdev);
        snd_soc_unregister_card(card);
@@ -55,7 +55,7 @@ static struct platform_driver db1000_audio_driver = {
                .pm     = &snd_soc_pm_ops,
        },
        .probe          = db1000_audio_probe,
-       .remove         = __devexit_p(db1000_audio_remove),
+       .remove         = db1000_audio_remove,
 };
 
 module_platform_driver(db1000_audio_driver);
index 30ea513..a497a0c 100644 (file)
@@ -167,7 +167,7 @@ static struct snd_soc_card db1550_i2s_machine = {
 
 /*-------------------------  COMMON PART  ---------------------------*/
 
-static struct snd_soc_card *db1200_cards[] __devinitdata = {
+static struct snd_soc_card *db1200_cards[] = {
        &db1200_ac97_machine,
        &db1200_i2s_machine,
        &db1300_ac97_machine,
@@ -176,7 +176,7 @@ static struct snd_soc_card *db1200_cards[] __devinitdata = {
        &db1550_i2s_machine,
 };
 
-static int __devinit db1200_audio_probe(struct platform_device *pdev)
+static int db1200_audio_probe(struct platform_device *pdev)
 {
        const struct platform_device_id *pid = platform_get_device_id(pdev);
        struct snd_soc_card *card;
@@ -186,7 +186,7 @@ static int __devinit db1200_audio_probe(struct platform_device *pdev)
        return snd_soc_register_card(card);
 }
 
-static int __devexit db1200_audio_remove(struct platform_device *pdev)
+static int db1200_audio_remove(struct platform_device *pdev)
 {
        struct snd_soc_card *card = platform_get_drvdata(pdev);
        snd_soc_unregister_card(card);
@@ -201,7 +201,7 @@ static struct platform_driver db1200_audio_driver = {
        },
        .id_table       = db1200_pids,
        .probe          = db1200_audio_probe,
-       .remove         = __devexit_p(db1200_audio_remove),
+       .remove         = db1200_audio_remove,
 };
 
 module_platform_driver(db1200_audio_driver);
index 8372cd3..3b4eafa 100644 (file)
@@ -347,7 +347,7 @@ static struct snd_soc_platform_driver au1xpsc_soc_platform = {
        .pcm_free       = au1xpsc_pcm_free_dma_buffers,
 };
 
-static int __devinit au1xpsc_pcm_drvprobe(struct platform_device *pdev)
+static int au1xpsc_pcm_drvprobe(struct platform_device *pdev)
 {
        struct au1xpsc_audio_dmadata *dmadata;
 
@@ -362,7 +362,7 @@ static int __devinit au1xpsc_pcm_drvprobe(struct platform_device *pdev)
        return snd_soc_register_platform(&pdev->dev, &au1xpsc_soc_platform);
 }
 
-static int __devexit au1xpsc_pcm_drvremove(struct platform_device *pdev)
+static int au1xpsc_pcm_drvremove(struct platform_device *pdev)
 {
        snd_soc_unregister_platform(&pdev->dev);
 
@@ -375,7 +375,7 @@ static struct platform_driver au1xpsc_pcm_driver = {
                .owner  = THIS_MODULE,
        },
        .probe          = au1xpsc_pcm_drvprobe,
-       .remove         = __devexit_p(au1xpsc_pcm_drvremove),
+       .remove         = au1xpsc_pcm_drvremove,
 };
 
 module_platform_driver(au1xpsc_pcm_driver);
index 0a91b18..befd107 100644 (file)
@@ -322,7 +322,7 @@ static struct snd_soc_platform_driver alchemy_pcm_soc_platform = {
        .pcm_free       = alchemy_pcm_free_dma_buffers,
 };
 
-static int __devinit alchemy_pcm_drvprobe(struct platform_device *pdev)
+static int alchemy_pcm_drvprobe(struct platform_device *pdev)
 {
        struct alchemy_pcm_ctx *ctx;
 
@@ -335,7 +335,7 @@ static int __devinit alchemy_pcm_drvprobe(struct platform_device *pdev)
        return snd_soc_register_platform(&pdev->dev, &alchemy_pcm_soc_platform);
 }
 
-static int __devexit alchemy_pcm_drvremove(struct platform_device *pdev)
+static int alchemy_pcm_drvremove(struct platform_device *pdev)
 {
        snd_soc_unregister_platform(&pdev->dev);
 
@@ -348,7 +348,7 @@ static struct platform_driver alchemy_pcmdma_driver = {
                .owner  = THIS_MODULE,
        },
        .probe          = alchemy_pcm_drvprobe,
-       .remove         = __devexit_p(alchemy_pcm_drvremove),
+       .remove         = alchemy_pcm_drvremove,
 };
 
 module_platform_driver(alchemy_pcmdma_driver);
index d4b9e36..072448a 100644 (file)
@@ -225,7 +225,7 @@ static struct snd_soc_dai_driver au1xi2s_dai_driver = {
        .ops = &au1xi2s_dai_ops,
 };
 
-static int __devinit au1xi2s_drvprobe(struct platform_device *pdev)
+static int au1xi2s_drvprobe(struct platform_device *pdev)
 {
        struct resource *iores, *dmares;
        struct au1xpsc_audio_data *ctx;
@@ -263,7 +263,7 @@ static int __devinit au1xi2s_drvprobe(struct platform_device *pdev)
        return snd_soc_register_dai(&pdev->dev, &au1xi2s_dai_driver);
 }
 
-static int __devexit au1xi2s_drvremove(struct platform_device *pdev)
+static int au1xi2s_drvremove(struct platform_device *pdev)
 {
        struct au1xpsc_audio_data *ctx = platform_get_drvdata(pdev);
 
@@ -309,7 +309,7 @@ static struct platform_driver au1xi2s_driver = {
                .pm     = AU1XI2SC_PMOPS,
        },
        .probe          = au1xi2s_drvprobe,
-       .remove         = __devexit_p(au1xi2s_drvremove),
+       .remove         = au1xi2s_drvremove,
 };
 
 module_platform_driver(au1xi2s_driver);
index 476b79a..6ba07e3 100644 (file)
@@ -361,7 +361,7 @@ static const struct snd_soc_dai_driver au1xpsc_ac97_dai_template = {
        .ops = &au1xpsc_ac97_dai_ops,
 };
 
-static int __devinit au1xpsc_ac97_drvprobe(struct platform_device *pdev)
+static int au1xpsc_ac97_drvprobe(struct platform_device *pdev)
 {
        int ret;
        struct resource *iores, *dmares;
@@ -427,7 +427,7 @@ static int __devinit au1xpsc_ac97_drvprobe(struct platform_device *pdev)
        return 0;
 }
 
-static int __devexit au1xpsc_ac97_drvremove(struct platform_device *pdev)
+static int au1xpsc_ac97_drvremove(struct platform_device *pdev)
 {
        struct au1xpsc_audio_data *wd = platform_get_drvdata(pdev);
 
@@ -495,7 +495,7 @@ static struct platform_driver au1xpsc_ac97_driver = {
                .pm     = AU1XPSCAC97_PMOPS,
        },
        .probe          = au1xpsc_ac97_drvprobe,
-       .remove         = __devexit_p(au1xpsc_ac97_drvremove),
+       .remove         = au1xpsc_ac97_drvremove,
 };
 
 static int __init au1xpsc_ac97_load(void)
index 0607ba3..360b4e5 100644 (file)
@@ -288,7 +288,7 @@ static const struct snd_soc_dai_driver au1xpsc_i2s_dai_template = {
        .ops = &au1xpsc_i2s_dai_ops,
 };
 
-static int __devinit au1xpsc_i2s_drvprobe(struct platform_device *pdev)
+static int au1xpsc_i2s_drvprobe(struct platform_device *pdev)
 {
        struct resource *iores, *dmares;
        unsigned long sel;
@@ -353,7 +353,7 @@ static int __devinit au1xpsc_i2s_drvprobe(struct platform_device *pdev)
        return snd_soc_register_dai(&pdev->dev, &wd->dai_drv);
 }
 
-static int __devexit au1xpsc_i2s_drvremove(struct platform_device *pdev)
+static int au1xpsc_i2s_drvremove(struct platform_device *pdev)
 {
        struct au1xpsc_audio_data *wd = platform_get_drvdata(pdev);
 
@@ -418,7 +418,7 @@ static struct platform_driver au1xpsc_i2s_driver = {
                .pm     = AU1XPSCI2S_PMOPS,
        },
        .probe          = au1xpsc_i2s_drvprobe,
-       .remove         = __devexit_p(au1xpsc_i2s_drvremove),
+       .remove         = au1xpsc_i2s_drvremove,
 };
 
 module_platform_driver(au1xpsc_i2s_driver);
index d7dc9bd..7e2f360 100644 (file)
@@ -453,12 +453,12 @@ static struct snd_soc_platform_driver bf5xx_ac97_soc_platform = {
        .pcm_free       = bf5xx_pcm_free_dma_buffers,
 };
 
-static int __devinit bf5xx_soc_platform_probe(struct platform_device *pdev)
+static int bf5xx_soc_platform_probe(struct platform_device *pdev)
 {
        return snd_soc_register_platform(&pdev->dev, &bf5xx_ac97_soc_platform);
 }
 
-static int __devexit bf5xx_soc_platform_remove(struct platform_device *pdev)
+static int bf5xx_soc_platform_remove(struct platform_device *pdev)
 {
        snd_soc_unregister_platform(&pdev->dev);
        return 0;
@@ -471,7 +471,7 @@ static struct platform_driver bf5xx_pcm_driver = {
        },
 
        .probe = bf5xx_soc_platform_probe,
-       .remove = __devexit_p(bf5xx_soc_platform_remove),
+       .remove = bf5xx_soc_platform_remove,
 };
 
 module_platform_driver(bf5xx_pcm_driver);
index f4e9dc4..8e41bcb 100644 (file)
@@ -282,7 +282,7 @@ static struct snd_soc_dai_driver bfin_ac97_dai = {
                .formats = SNDRV_PCM_FMTBIT_S16_LE, },
 };
 
-static int __devinit asoc_bfin_ac97_probe(struct platform_device *pdev)
+static int asoc_bfin_ac97_probe(struct platform_device *pdev)
 {
        struct sport_device *sport_handle;
        int ret;
@@ -352,7 +352,7 @@ gpio_err:
        return ret;
 }
 
-static int __devexit asoc_bfin_ac97_remove(struct platform_device *pdev)
+static int asoc_bfin_ac97_remove(struct platform_device *pdev)
 {
        struct sport_device *sport_handle = platform_get_drvdata(pdev);
 
@@ -372,7 +372,7 @@ static struct platform_driver asoc_bfin_ac97_driver = {
        },
 
        .probe = asoc_bfin_ac97_probe,
-       .remove = __devexit_p(asoc_bfin_ac97_remove),
+       .remove = asoc_bfin_ac97_remove,
 };
 
 module_platform_driver(asoc_bfin_ac97_driver);
index 16b9c9e..d23f4b0 100644 (file)
@@ -75,7 +75,7 @@ static struct snd_soc_card bf5xx_ad1836 = {
        .num_links = 1,
 };
 
-static __devinit int bf5xx_ad1836_driver_probe(struct platform_device *pdev)
+static int bf5xx_ad1836_driver_probe(struct platform_device *pdev)
 {
        struct snd_soc_card *card = &bf5xx_ad1836;
        const char **link_name;
@@ -98,7 +98,7 @@ static __devinit int bf5xx_ad1836_driver_probe(struct platform_device *pdev)
        return ret;
 }
 
-static int __devexit bf5xx_ad1836_driver_remove(struct platform_device *pdev)
+static int bf5xx_ad1836_driver_remove(struct platform_device *pdev)
 {
        struct snd_soc_card *card = platform_get_drvdata(pdev);
 
@@ -113,7 +113,7 @@ static struct platform_driver bf5xx_ad1836_driver = {
                .pm = &snd_soc_pm_ops,
        },
        .probe = bf5xx_ad1836_driver_probe,
-       .remove = __devexit_p(bf5xx_ad1836_driver_remove),
+       .remove = bf5xx_ad1836_driver_remove,
 };
 module_platform_driver(bf5xx_ad1836_driver);
 
index 63205d7..262c1de 100644 (file)
@@ -292,12 +292,12 @@ static struct snd_soc_platform_driver bf5xx_i2s_soc_platform = {
        .pcm_free       = bf5xx_pcm_free_dma_buffers,
 };
 
-static int __devinit bfin_i2s_soc_platform_probe(struct platform_device *pdev)
+static int bfin_i2s_soc_platform_probe(struct platform_device *pdev)
 {
        return snd_soc_register_platform(&pdev->dev, &bf5xx_i2s_soc_platform);
 }
 
-static int __devexit bfin_i2s_soc_platform_remove(struct platform_device *pdev)
+static int bfin_i2s_soc_platform_remove(struct platform_device *pdev)
 {
        snd_soc_unregister_platform(&pdev->dev);
        return 0;
@@ -310,7 +310,7 @@ static struct platform_driver bfin_i2s_pcm_driver = {
        },
 
        .probe = bfin_i2s_soc_platform_probe,
-       .remove = __devexit_p(bfin_i2s_soc_platform_remove),
+       .remove = bfin_i2s_soc_platform_remove,
 };
 
 module_platform_driver(bfin_i2s_pcm_driver);
index 4dccf03..168d88b 100644 (file)
@@ -245,7 +245,7 @@ static struct snd_soc_dai_driver bf5xx_i2s_dai = {
        .ops = &bf5xx_i2s_dai_ops,
 };
 
-static int __devinit bf5xx_i2s_probe(struct platform_device *pdev)
+static int bf5xx_i2s_probe(struct platform_device *pdev)
 {
        struct sport_device *sport_handle;
        int ret;
@@ -267,7 +267,7 @@ static int __devinit bf5xx_i2s_probe(struct platform_device *pdev)
        return 0;
 }
 
-static int __devexit bf5xx_i2s_remove(struct platform_device *pdev)
+static int bf5xx_i2s_remove(struct platform_device *pdev)
 {
        struct sport_device *sport_handle = platform_get_drvdata(pdev);
 
@@ -281,7 +281,7 @@ static int __devexit bf5xx_i2s_remove(struct platform_device *pdev)
 
 static struct platform_driver bfin_i2s_driver = {
        .probe  = bf5xx_i2s_probe,
-       .remove = __devexit_p(bf5xx_i2s_remove),
+       .remove = bf5xx_i2s_remove,
        .driver = {
                .name = "bfin-i2s",
                .owner = THIS_MODULE,
index 254490c..0e6b888 100644 (file)
@@ -317,12 +317,12 @@ static struct snd_soc_platform_driver bf5xx_tdm_soc_platform = {
        .pcm_free       = bf5xx_pcm_free_dma_buffers,
 };
 
-static int __devinit bf5xx_soc_platform_probe(struct platform_device *pdev)
+static int bf5xx_soc_platform_probe(struct platform_device *pdev)
 {
        return snd_soc_register_platform(&pdev->dev, &bf5xx_tdm_soc_platform);
 }
 
-static int __devexit bf5xx_soc_platform_remove(struct platform_device *pdev)
+static int bf5xx_soc_platform_remove(struct platform_device *pdev)
 {
        snd_soc_unregister_platform(&pdev->dev);
        return 0;
@@ -335,7 +335,7 @@ static struct platform_driver bfin_tdm_driver = {
        },
 
        .probe = bf5xx_soc_platform_probe,
-       .remove = __devexit_p(bf5xx_soc_platform_remove),
+       .remove = bf5xx_soc_platform_remove,
 };
 
 module_platform_driver(bfin_tdm_driver);
index 594f882..c1e516e 100644 (file)
@@ -249,7 +249,7 @@ static struct snd_soc_dai_driver bf5xx_tdm_dai = {
        .ops = &bf5xx_tdm_dai_ops,
 };
 
-static int __devinit bfin_tdm_probe(struct platform_device *pdev)
+static int bfin_tdm_probe(struct platform_device *pdev)
 {
        struct sport_device *sport_handle;
        int ret;
@@ -295,7 +295,7 @@ sport_config_err:
        return ret;
 }
 
-static int __devexit bfin_tdm_remove(struct platform_device *pdev)
+static int bfin_tdm_remove(struct platform_device *pdev)
 {
        struct sport_device *sport_handle = platform_get_drvdata(pdev);
 
@@ -307,7 +307,7 @@ static int __devexit bfin_tdm_remove(struct platform_device *pdev)
 
 static struct platform_driver bfin_tdm_driver = {
        .probe  = bfin_tdm_probe,
-       .remove = __devexit_p(bfin_tdm_remove),
+       .remove = bfin_tdm_remove,
        .driver = {
                .name   = "bfin-tdm",
                .owner  = THIS_MODULE,
index c3c2466..8f33797 100644 (file)
@@ -186,7 +186,7 @@ static struct snd_soc_dai_driver bfin_i2s_dai = {
        .ops = &bfin_i2s_dai_ops,
 };
 
-static int __devinit bfin_i2s_probe(struct platform_device *pdev)
+static int bfin_i2s_probe(struct platform_device *pdev)
 {
        struct sport_device *sport;
        struct device *dev = &pdev->dev;
@@ -208,7 +208,7 @@ static int __devinit bfin_i2s_probe(struct platform_device *pdev)
        return 0;
 }
 
-static int __devexit bfin_i2s_remove(struct platform_device *pdev)
+static int bfin_i2s_remove(struct platform_device *pdev)
 {
        struct sport_device *sport = platform_get_drvdata(pdev);
 
@@ -220,7 +220,7 @@ static int __devexit bfin_i2s_remove(struct platform_device *pdev)
 
 static struct platform_driver bfin_i2s_driver = {
        .probe  = bfin_i2s_probe,
-       .remove = __devexit_p(bfin_i2s_remove),
+       .remove = bfin_i2s_remove,
        .driver = {
                .name = "bfin-i2s",
                .owner = THIS_MODULE,
index f3adbdb..4ef9683 100644 (file)
@@ -157,7 +157,7 @@ static int bfin_eval_adau1373_probe(struct platform_device *pdev)
        return snd_soc_register_card(&bfin_eval_adau1373);
 }
 
-static int __devexit bfin_eval_adau1373_remove(struct platform_device *pdev)
+static int bfin_eval_adau1373_remove(struct platform_device *pdev)
 {
        struct snd_soc_card *card = platform_get_drvdata(pdev);
 
@@ -173,7 +173,7 @@ static struct platform_driver bfin_eval_adau1373_driver = {
                .pm = &snd_soc_pm_ops,
        },
        .probe = bfin_eval_adau1373_probe,
-       .remove = __devexit_p(bfin_eval_adau1373_remove),
+       .remove = bfin_eval_adau1373_remove,
 };
 
 module_platform_driver(bfin_eval_adau1373_driver);
index b0531fc..3b55081 100644 (file)
@@ -97,7 +97,7 @@ static int bfin_eval_adau1701_probe(struct platform_device *pdev)
        return snd_soc_register_card(&bfin_eval_adau1701);
 }
 
-static int __devexit bfin_eval_adau1701_remove(struct platform_device *pdev)
+static int bfin_eval_adau1701_remove(struct platform_device *pdev)
 {
        struct snd_soc_card *card = platform_get_drvdata(pdev);
 
@@ -113,7 +113,7 @@ static struct platform_driver bfin_eval_adau1701_driver = {
                .pm = &snd_soc_pm_ops,
        },
        .probe = bfin_eval_adau1701_probe,
-       .remove = __devexit_p(bfin_eval_adau1701_remove),
+       .remove = bfin_eval_adau1701_remove,
 };
 
 module_platform_driver(bfin_eval_adau1701_driver);
index 84b0998..3b1b61a 100644 (file)
@@ -122,7 +122,7 @@ static int bfin_eval_adav80x_probe(struct platform_device *pdev)
        return snd_soc_register_card(&bfin_eval_adav80x);
 }
 
-static int __devexit bfin_eval_adav80x_remove(struct platform_device *pdev)
+static int bfin_eval_adav80x_remove(struct platform_device *pdev)
 {
        struct snd_soc_card *card = platform_get_drvdata(pdev);
 
@@ -145,7 +145,7 @@ static struct platform_driver bfin_eval_adav80x_driver = {
                .pm = &snd_soc_pm_ops,
        },
        .probe = bfin_eval_adav80x_probe,
-       .remove = __devexit_p(bfin_eval_adav80x_remove),
+       .remove = bfin_eval_adav80x_remove,
        .id_table = bfin_eval_adav80x_ids,
 };
 
index e01cb02..5db68cf 100644 (file)
@@ -80,7 +80,7 @@ static struct snd_soc_card snd_soc_edb93xx = {
        .num_links      = 1,
 };
 
-static int __devinit edb93xx_probe(struct platform_device *pdev)
+static int edb93xx_probe(struct platform_device *pdev)
 {
        struct snd_soc_card *card = &snd_soc_edb93xx;
        int ret;
@@ -101,7 +101,7 @@ static int __devinit edb93xx_probe(struct platform_device *pdev)
        return ret;
 }
 
-static int __devexit edb93xx_remove(struct platform_device *pdev)
+static int edb93xx_remove(struct platform_device *pdev)
 {
        struct snd_soc_card *card = platform_get_drvdata(pdev);
 
@@ -117,7 +117,7 @@ static struct platform_driver edb93xx_driver = {
                .owner  = THIS_MODULE,
        },
        .probe          = edb93xx_probe,
-       .remove         = __devexit_p(edb93xx_remove),
+       .remove         = edb93xx_remove,
 };
 
 module_platform_driver(edb93xx_driver);
index c352165..f3f50e6 100644 (file)
@@ -352,7 +352,7 @@ static struct snd_soc_dai_driver ep93xx_ac97_dai = {
        .ops                    = &ep93xx_ac97_dai_ops,
 };
 
-static int __devinit ep93xx_ac97_probe(struct platform_device *pdev)
+static int ep93xx_ac97_probe(struct platform_device *pdev)
 {
        struct ep93xx_ac97_info *info;
        struct resource *res;
@@ -402,7 +402,7 @@ fail:
        return ret;
 }
 
-static int __devexit ep93xx_ac97_remove(struct platform_device *pdev)
+static int ep93xx_ac97_remove(struct platform_device *pdev)
 {
        struct ep93xx_ac97_info *info = platform_get_drvdata(pdev);
 
@@ -420,7 +420,7 @@ static int __devexit ep93xx_ac97_remove(struct platform_device *pdev)
 
 static struct platform_driver ep93xx_ac97_driver = {
        .probe  = ep93xx_ac97_probe,
-       .remove = __devexit_p(ep93xx_ac97_remove),
+       .remove = ep93xx_ac97_remove,
        .driver = {
                .name = "ep93xx-ac97",
                .owner = THIS_MODULE,
index ac4a751..3365d4e 100644 (file)
@@ -422,7 +422,7 @@ fail:
        return err;
 }
 
-static int __devexit ep93xx_i2s_remove(struct platform_device *pdev)
+static int ep93xx_i2s_remove(struct platform_device *pdev)
 {
        struct ep93xx_i2s_info *info = dev_get_drvdata(&pdev->dev);
 
@@ -436,7 +436,7 @@ static int __devexit ep93xx_i2s_remove(struct platform_device *pdev)
 
 static struct platform_driver ep93xx_i2s_driver = {
        .probe  = ep93xx_i2s_probe,
-       .remove = __devexit_p(ep93xx_i2s_remove),
+       .remove = ep93xx_i2s_remove,
        .driver = {
                .name   = "ep93xx-i2s",
                .owner  = THIS_MODULE,
index 665d9c9..72eb7a4 100644 (file)
@@ -213,12 +213,12 @@ static struct snd_soc_platform_driver ep93xx_soc_platform = {
        .pcm_free       = &ep93xx_pcm_free_dma_buffers,
 };
 
-static int __devinit ep93xx_soc_platform_probe(struct platform_device *pdev)
+static int ep93xx_soc_platform_probe(struct platform_device *pdev)
 {
        return snd_soc_register_platform(&pdev->dev, &ep93xx_soc_platform);
 }
 
-static int __devexit ep93xx_soc_platform_remove(struct platform_device *pdev)
+static int ep93xx_soc_platform_remove(struct platform_device *pdev)
 {
        snd_soc_unregister_platform(&pdev->dev);
        return 0;
@@ -231,7 +231,7 @@ static struct platform_driver ep93xx_pcm_driver = {
        },
 
        .probe = ep93xx_soc_platform_probe,
-       .remove = __devexit_p(ep93xx_soc_platform_remove),
+       .remove = ep93xx_soc_platform_remove,
 };
 
 module_platform_driver(ep93xx_pcm_driver);
index dd99709..a397bb0 100644 (file)
@@ -41,7 +41,7 @@ static struct snd_soc_card snd_soc_simone = {
 
 static struct platform_device *simone_snd_ac97_device;
 
-static int __devinit simone_probe(struct platform_device *pdev)
+static int simone_probe(struct platform_device *pdev)
 {
        struct snd_soc_card *card = &snd_soc_simone;
        int ret;
@@ -63,7 +63,7 @@ static int __devinit simone_probe(struct platform_device *pdev)
        return ret;
 }
 
-static int __devexit simone_remove(struct platform_device *pdev)
+static int simone_remove(struct platform_device *pdev)
 {
        struct snd_soc_card *card = platform_get_drvdata(pdev);
 
@@ -79,7 +79,7 @@ static struct platform_driver simone_driver = {
                .owner  = THIS_MODULE,
        },
        .probe          = simone_probe,
-       .remove         = __devexit_p(simone_remove),
+       .remove         = simone_remove,
 };
 
 module_platform_driver(simone_driver);
index a193cea..9d77fe2 100644 (file)
@@ -98,7 +98,7 @@ static struct snd_soc_card snd_soc_snappercl15 = {
        .num_links      = 1,
 };
 
-static int __devinit snappercl15_probe(struct platform_device *pdev)
+static int snappercl15_probe(struct platform_device *pdev)
 {
        struct snd_soc_card *card = &snd_soc_snappercl15;
        int ret;
@@ -119,7 +119,7 @@ static int __devinit snappercl15_probe(struct platform_device *pdev)
        return ret;
 }
 
-static int __devexit snappercl15_remove(struct platform_device *pdev)
+static int snappercl15_remove(struct platform_device *pdev)
 {
        struct snd_soc_card *card = platform_get_drvdata(pdev);
 
@@ -135,7 +135,7 @@ static struct platform_driver snappercl15_driver = {
                .owner  = THIS_MODULE,
        },
        .probe          = snappercl15_probe,
-       .remove         = __devexit_p(snappercl15_remove),
+       .remove         = snappercl15_remove,
 };
 
 module_platform_driver(snappercl15_driver);
index 9fd3b68..60159c0 100644 (file)
@@ -1423,7 +1423,7 @@ static struct snd_soc_codec_driver soc_codec_dev_pm860x = {
        .num_dapm_routes = ARRAY_SIZE(pm860x_dapm_routes),
 };
 
-static int __devinit pm860x_codec_probe(struct platform_device *pdev)
+static int pm860x_codec_probe(struct platform_device *pdev)
 {
        struct pm860x_chip *chip = dev_get_drvdata(pdev->dev.parent);
        struct pm860x_priv *pm860x;
@@ -1463,7 +1463,7 @@ out:
        return -EINVAL;
 }
 
-static int __devexit pm860x_codec_remove(struct platform_device *pdev)
+static int pm860x_codec_remove(struct platform_device *pdev)
 {
        snd_soc_unregister_codec(&pdev->dev);
        platform_set_drvdata(pdev, NULL);
@@ -1476,7 +1476,7 @@ static struct platform_driver pm860x_codec_driver = {
                .owner  = THIS_MODULE,
        },
        .probe  = pm860x_codec_probe,
-       .remove = __devexit_p(pm860x_codec_remove),
+       .remove = pm860x_codec_remove,
 };
 
 module_platform_driver(pm860x_codec_driver);
index 4d96090..6c12ac2 100644 (file)
@@ -2554,7 +2554,7 @@ static struct snd_soc_codec_driver ab8500_codec_driver = {
        .num_dapm_routes =      ARRAY_SIZE(ab8500_dapm_routes),
 };
 
-static int __devinit ab8500_codec_driver_probe(struct platform_device *pdev)
+static int ab8500_codec_driver_probe(struct platform_device *pdev)
 {
        int status;
        struct ab8500_codec_drvdata *drvdata;
@@ -2580,7 +2580,7 @@ static int __devinit ab8500_codec_driver_probe(struct platform_device *pdev)
        return status;
 }
 
-static int __devexit ab8500_codec_driver_remove(struct platform_device *pdev)
+static int ab8500_codec_driver_remove(struct platform_device *pdev)
 {
        dev_info(&pdev->dev, "%s Enter.\n", __func__);
 
@@ -2595,7 +2595,7 @@ static struct platform_driver ab8500_codec_platform_driver = {
                .owner  = THIS_MODULE,
        },
        .probe          = ab8500_codec_driver_probe,
-       .remove         = __devexit_p(ab8500_codec_driver_remove),
+       .remove         = ab8500_codec_driver_remove,
        .suspend        = NULL,
        .resume         = NULL,
 };
index ea06b83..ef2ae32 100644 (file)
@@ -118,13 +118,13 @@ static struct snd_soc_codec_driver soc_codec_dev_ac97 = {
        .resume =       ac97_soc_resume,
 };
 
-static __devinit int ac97_probe(struct platform_device *pdev)
+static int ac97_probe(struct platform_device *pdev)
 {
        return snd_soc_register_codec(&pdev->dev,
                        &soc_codec_dev_ac97, &ac97_dai, 1);
 }
 
-static int __devexit ac97_remove(struct platform_device *pdev)
+static int ac97_remove(struct platform_device *pdev)
 {
        snd_soc_unregister_codec(&pdev->dev);
        return 0;
@@ -137,7 +137,7 @@ static struct platform_driver ac97_codec_driver = {
        },
 
        .probe = ac97_probe,
-       .remove = __devexit_p(ac97_remove),
+       .remove = ac97_remove,
 };
 
 module_platform_driver(ac97_codec_driver);
index dce6ebe..9a92b79 100644 (file)
@@ -360,7 +360,7 @@ static const struct regmap_config ad1836_regmap_config = {
        .cache_type = REGCACHE_RBTREE,
 };
 
-static int __devinit ad1836_spi_probe(struct spi_device *spi)
+static int ad1836_spi_probe(struct spi_device *spi)
 {
        struct ad1836_priv *ad1836;
        int ret;
@@ -383,7 +383,7 @@ static int __devinit ad1836_spi_probe(struct spi_device *spi)
        return ret;
 }
 
-static int __devexit ad1836_spi_remove(struct spi_device *spi)
+static int ad1836_spi_remove(struct spi_device *spi)
 {
        snd_soc_unregister_codec(&spi->dev);
        return 0;
@@ -405,7 +405,7 @@ static struct spi_driver ad1836_spi_driver = {
                .owner  = THIS_MODULE,
        },
        .probe          = ad1836_spi_probe,
-       .remove         = __devexit_p(ad1836_spi_remove),
+       .remove         = ad1836_spi_remove,
        .id_table       = ad1836_ids,
 };
 
index 2f75266..aea7e52 100644 (file)
@@ -378,7 +378,7 @@ static const struct regmap_config ad193x_spi_regmap_config = {
        .volatile_reg = adau193x_reg_volatile,
 };
 
-static int __devinit ad193x_spi_probe(struct spi_device *spi)
+static int ad193x_spi_probe(struct spi_device *spi)
 {
        struct ad193x_priv *ad193x;
 
@@ -397,7 +397,7 @@ static int __devinit ad193x_spi_probe(struct spi_device *spi)
                        &ad193x_dai, 1);
 }
 
-static int __devexit ad193x_spi_remove(struct spi_device *spi)
+static int ad193x_spi_remove(struct spi_device *spi)
 {
        snd_soc_unregister_codec(&spi->dev);
        return 0;
@@ -409,7 +409,7 @@ static struct spi_driver ad193x_spi_driver = {
                .owner  = THIS_MODULE,
        },
        .probe          = ad193x_spi_probe,
-       .remove         = __devexit_p(ad193x_spi_remove),
+       .remove         = ad193x_spi_remove,
 };
 #endif
 
@@ -430,8 +430,8 @@ static const struct i2c_device_id ad193x_id[] = {
 };
 MODULE_DEVICE_TABLE(i2c, ad193x_id);
 
-static int __devinit ad193x_i2c_probe(struct i2c_client *client,
-               const struct i2c_device_id *id)
+static int ad193x_i2c_probe(struct i2c_client *client,
+                           const struct i2c_device_id *id)
 {
        struct ad193x_priv *ad193x;
 
@@ -450,7 +450,7 @@ static int __devinit ad193x_i2c_probe(struct i2c_client *client,
                        &ad193x_dai, 1);
 }
 
-static int __devexit ad193x_i2c_remove(struct i2c_client *client)
+static int ad193x_i2c_remove(struct i2c_client *client)
 {
        snd_soc_unregister_codec(&client->dev);
        return 0;
@@ -461,7 +461,7 @@ static struct i2c_driver ad193x_i2c_driver = {
                .name = "ad193x",
        },
        .probe    = ad193x_i2c_probe,
-       .remove   = __devexit_p(ad193x_i2c_remove),
+       .remove   = ad193x_i2c_remove,
        .id_table = ad193x_id,
 };
 #endif
index 8c39ddd..f385342 100644 (file)
@@ -255,13 +255,13 @@ static struct snd_soc_codec_driver soc_codec_dev_ad1980 = {
        .read = ac97_read,
 };
 
-static __devinit int ad1980_probe(struct platform_device *pdev)
+static int ad1980_probe(struct platform_device *pdev)
 {
        return snd_soc_register_codec(&pdev->dev,
                        &soc_codec_dev_ad1980, &ad1980_dai, 1);
 }
 
-static int __devexit ad1980_remove(struct platform_device *pdev)
+static int ad1980_remove(struct platform_device *pdev)
 {
        snd_soc_unregister_codec(&pdev->dev);
        return 0;
@@ -274,7 +274,7 @@ static struct platform_driver ad1980_codec_driver = {
        },
 
        .probe = ad1980_probe,
-       .remove = __devexit_p(ad1980_remove),
+       .remove = ad1980_remove,
 };
 
 module_platform_driver(ad1980_codec_driver);
index ee7a68d..b1f2baf 100644 (file)
@@ -47,7 +47,7 @@ static int ad73311_probe(struct platform_device *pdev)
                        &soc_codec_dev_ad73311, &ad73311_dai, 1);
 }
 
-static int __devexit ad73311_remove(struct platform_device *pdev)
+static int ad73311_remove(struct platform_device *pdev)
 {
        snd_soc_unregister_codec(&pdev->dev);
        return 0;
@@ -60,7 +60,7 @@ static struct platform_driver ad73311_codec_driver = {
        },
 
        .probe = ad73311_probe,
-       .remove = __devexit_p(ad73311_remove),
+       .remove = ad73311_remove,
 };
 
 module_platform_driver(ad73311_codec_driver);
index 704544b..068b3ae 100644 (file)
@@ -1353,8 +1353,8 @@ static struct snd_soc_codec_driver adau1373_codec_driver = {
        .num_dapm_routes = ARRAY_SIZE(adau1373_dapm_routes),
 };
 
-static int __devinit adau1373_i2c_probe(struct i2c_client *client,
-       const struct i2c_device_id *id)
+static int adau1373_i2c_probe(struct i2c_client *client,
+                             const struct i2c_device_id *id)
 {
        struct adau1373 *adau1373;
        int ret;
@@ -1370,7 +1370,7 @@ static int __devinit adau1373_i2c_probe(struct i2c_client *client,
        return ret;
 }
 
-static int __devexit adau1373_i2c_remove(struct i2c_client *client)
+static int adau1373_i2c_remove(struct i2c_client *client)
 {
        snd_soc_unregister_codec(&client->dev);
        return 0;
@@ -1388,7 +1388,7 @@ static struct i2c_driver adau1373_i2c_driver = {
                .owner = THIS_MODULE,
        },
        .probe = adau1373_i2c_probe,
-       .remove = __devexit_p(adau1373_i2c_remove),
+       .remove = adau1373_i2c_remove,
        .id_table = adau1373_i2c_id,
 };
 
index 51f2f3c..dafdbe8 100644 (file)
@@ -489,8 +489,8 @@ static struct snd_soc_codec_driver adau1701_codec_drv = {
        .set_sysclk             = adau1701_set_sysclk,
 };
 
-static __devinit int adau1701_i2c_probe(struct i2c_client *client,
-               const struct i2c_device_id *id)
+static int adau1701_i2c_probe(struct i2c_client *client,
+                             const struct i2c_device_id *id)
 {
        struct adau1701 *adau1701;
        int ret;
@@ -505,7 +505,7 @@ static __devinit int adau1701_i2c_probe(struct i2c_client *client,
        return ret;
 }
 
-static __devexit int adau1701_i2c_remove(struct i2c_client *client)
+static int adau1701_i2c_remove(struct i2c_client *client)
 {
        snd_soc_unregister_codec(&client->dev);
        return 0;
@@ -523,7 +523,7 @@ static struct i2c_driver adau1701_i2c_driver = {
                .owner  = THIS_MODULE,
        },
        .probe          = adau1701_i2c_probe,
-       .remove         = __devexit_p(adau1701_i2c_remove),
+       .remove         = adau1701_i2c_remove,
        .id_table       = adau1701_i2c_id,
 };
 
index ebd7b37..3c839cc 100644 (file)
@@ -839,8 +839,8 @@ static struct snd_soc_codec_driver adav80x_codec_driver = {
        .num_dapm_routes = ARRAY_SIZE(adav80x_dapm_routes),
 };
 
-static int __devinit adav80x_bus_probe(struct device *dev,
-               enum snd_soc_control_type control_type)
+static int adav80x_bus_probe(struct device *dev,
+                            enum snd_soc_control_type control_type)
 {
        struct adav80x *adav80x;
        int ret;
@@ -860,7 +860,7 @@ static int __devinit adav80x_bus_probe(struct device *dev,
        return ret;
 }
 
-static int __devexit adav80x_bus_remove(struct device *dev)
+static int adav80x_bus_remove(struct device *dev)
 {
        snd_soc_unregister_codec(dev);
        kfree(dev_get_drvdata(dev));
@@ -868,12 +868,12 @@ static int __devexit adav80x_bus_remove(struct device *dev)
 }
 
 #if defined(CONFIG_SPI_MASTER)
-static int __devinit adav80x_spi_probe(struct spi_device *spi)
+static int adav80x_spi_probe(struct spi_device *spi)
 {
        return adav80x_bus_probe(&spi->dev, SND_SOC_SPI);
 }
 
-static int __devexit adav80x_spi_remove(struct spi_device *spi)
+static int adav80x_spi_remove(struct spi_device *spi)
 {
        return adav80x_bus_remove(&spi->dev);
 }
@@ -884,7 +884,7 @@ static struct spi_driver adav80x_spi_driver = {
                .owner  = THIS_MODULE,
        },
        .probe          = adav80x_spi_probe,
-       .remove         = __devexit_p(adav80x_spi_remove),
+       .remove         = adav80x_spi_remove,
 };
 #endif
 
@@ -895,13 +895,13 @@ static const struct i2c_device_id adav80x_id[] = {
 };
 MODULE_DEVICE_TABLE(i2c, adav80x_id);
 
-static int __devinit adav80x_i2c_probe(struct i2c_client *client,
-               const struct i2c_device_id *id)
+static int adav80x_i2c_probe(struct i2c_client *client,
+                            const struct i2c_device_id *id)
 {
        return adav80x_bus_probe(&client->dev, SND_SOC_I2C);
 }
 
-static int __devexit adav80x_i2c_remove(struct i2c_client *client)
+static int adav80x_i2c_remove(struct i2c_client *client)
 {
        return adav80x_bus_remove(&client->dev);
 }
@@ -912,7 +912,7 @@ static struct i2c_driver adav80x_i2c_driver = {
                .owner = THIS_MODULE,
        },
        .probe = adav80x_i2c_probe,
-       .remove = __devexit_p(adav80x_i2c_remove),
+       .remove = adav80x_i2c_remove,
        .id_table = adav80x_id,
 };
 #endif
index 8103b93..506d474 100644 (file)
@@ -36,13 +36,13 @@ static struct snd_soc_dai_driver ads117x_dai = {
 
 static struct snd_soc_codec_driver soc_codec_dev_ads117x;
 
-static __devinit int ads117x_probe(struct platform_device *pdev)
+static int ads117x_probe(struct platform_device *pdev)
 {
        return snd_soc_register_codec(&pdev->dev,
                        &soc_codec_dev_ads117x, &ads117x_dai, 1);
 }
 
-static int __devexit ads117x_remove(struct platform_device *pdev)
+static int ads117x_remove(struct platform_device *pdev)
 {
        snd_soc_unregister_codec(&pdev->dev);
        return 0;
@@ -55,7 +55,7 @@ static struct platform_driver ads117x_codec_driver = {
        },
 
        .probe = ads117x_probe,
-       .remove = __devexit_p(ads117x_remove),
+       .remove = ads117x_remove,
 };
 
 module_platform_driver(ads117x_codec_driver);
index 4b11b82..6f6c335 100644 (file)
@@ -258,7 +258,7 @@ static int ak4104_spi_probe(struct spi_device *spi)
        return ret;
 }
 
-static int __devexit ak4104_spi_remove(struct spi_device *spi)
+static int ak4104_spi_remove(struct spi_device *spi)
 {
        snd_soc_unregister_codec(&spi->dev);
        return 0;
@@ -277,7 +277,7 @@ static struct spi_driver ak4104_spi_driver = {
                .of_match_table = ak4104_of_match,
        },
        .probe  = ak4104_spi_probe,
-       .remove = __devexit_p(ak4104_spi_remove),
+       .remove = ak4104_spi_remove,
 };
 
 module_spi_driver(ak4104_spi_driver);
index fc55810..684fe91 100644 (file)
@@ -436,8 +436,8 @@ static struct snd_soc_codec_driver soc_codec_dev_ak4535 = {
        .num_dapm_routes = ARRAY_SIZE(ak4535_audio_map),
 };
 
-static __devinit int ak4535_i2c_probe(struct i2c_client *i2c,
-                                     const struct i2c_device_id *id)
+static int ak4535_i2c_probe(struct i2c_client *i2c,
+                           const struct i2c_device_id *id)
 {
        struct ak4535_priv *ak4535;
        int ret;
@@ -462,7 +462,7 @@ static __devinit int ak4535_i2c_probe(struct i2c_client *i2c,
        return ret;
 }
 
-static __devexit int ak4535_i2c_remove(struct i2c_client *client)
+static int ak4535_i2c_remove(struct i2c_client *client)
 {
        snd_soc_unregister_codec(&client->dev);
        return 0;
@@ -480,7 +480,7 @@ static struct i2c_driver ak4535_i2c_driver = {
                .owner = THIS_MODULE,
        },
        .probe =    ak4535_i2c_probe,
-       .remove =   __devexit_p(ak4535_i2c_remove),
+       .remove =   ak4535_i2c_remove,
        .id_table = ak4535_i2c_id,
 };
 
index 543a12f..5f9af1f 100644 (file)
@@ -557,8 +557,8 @@ static struct snd_soc_codec_driver soc_codec_dev_ak4641 = {
 };
 
 
-static int __devinit ak4641_i2c_probe(struct i2c_client *i2c,
-                                     const struct i2c_device_id *id)
+static int ak4641_i2c_probe(struct i2c_client *i2c,
+                           const struct i2c_device_id *id)
 {
        struct ak4641_platform_data *pdata = i2c->dev.platform_data;
        struct ak4641_priv *ak4641;
@@ -610,7 +610,7 @@ err_out:
        return ret;
 }
 
-static int __devexit ak4641_i2c_remove(struct i2c_client *i2c)
+static int ak4641_i2c_remove(struct i2c_client *i2c)
 {
        struct ak4641_platform_data *pdata = i2c->dev.platform_data;
 
@@ -640,7 +640,7 @@ static struct i2c_driver ak4641_i2c_driver = {
                .owner = THIS_MODULE,
        },
        .probe =    ak4641_i2c_probe,
-       .remove =   __devexit_p(ak4641_i2c_remove),
+       .remove =   ak4641_i2c_remove,
        .id_table = ak4641_i2c_id,
 };
 
index 546466a..1f0cdab 100644 (file)
@@ -513,15 +513,15 @@ static struct snd_soc_codec_driver soc_codec_dev_ak4648 = {
 };
 
 #if defined(CONFIG_I2C) || defined(CONFIG_I2C_MODULE)
-static __devinit int ak4642_i2c_probe(struct i2c_client *i2c,
-                                     const struct i2c_device_id *id)
+static int ak4642_i2c_probe(struct i2c_client *i2c,
+                           const struct i2c_device_id *id)
 {
        return snd_soc_register_codec(&i2c->dev,
                                (struct snd_soc_codec_driver *)id->driver_data,
                                &ak4642_dai, 1);
 }
 
-static __devexit int ak4642_i2c_remove(struct i2c_client *client)
+static int ak4642_i2c_remove(struct i2c_client *client)
 {
        snd_soc_unregister_codec(&client->dev);
        return 0;
@@ -541,7 +541,7 @@ static struct i2c_driver ak4642_i2c_driver = {
                .owner = THIS_MODULE,
        },
        .probe          = ak4642_i2c_probe,
-       .remove         = __devexit_p(ak4642_i2c_remove),
+       .remove         = ak4642_i2c_remove,
        .id_table       = ak4642_i2c_id,
 };
 #endif
index 2b45797..25bdf6a 100644 (file)
@@ -655,8 +655,8 @@ static struct snd_soc_codec_driver soc_codec_dev_ak4671 = {
        .num_dapm_routes = ARRAY_SIZE(ak4671_intercon),
 };
 
-static int __devinit ak4671_i2c_probe(struct i2c_client *client,
-               const struct i2c_device_id *id)
+static int ak4671_i2c_probe(struct i2c_client *client,
+                           const struct i2c_device_id *id)
 {
        struct ak4671_priv *ak4671;
        int ret;
@@ -674,7 +674,7 @@ static int __devinit ak4671_i2c_probe(struct i2c_client *client,
        return ret;
 }
 
-static __devexit int ak4671_i2c_remove(struct i2c_client *client)
+static int ak4671_i2c_remove(struct i2c_client *client)
 {
        snd_soc_unregister_codec(&client->dev);
        return 0;
@@ -692,7 +692,7 @@ static struct i2c_driver ak4671_i2c_driver = {
                .owner = THIS_MODULE,
        },
        .probe = ak4671_i2c_probe,
-       .remove = __devexit_p(ak4671_i2c_remove),
+       .remove = ak4671_i2c_remove,
        .id_table = ak4671_i2c_id,
 };
 
index 1960478..256c364 100644 (file)
@@ -991,8 +991,8 @@ static struct snd_soc_codec_driver soc_codec_device_alc5623 = {
  *    low  = 0x1a
  *    high = 0x1b
  */
-static __devinit int alc5623_i2c_probe(struct i2c_client *client,
-                               const struct i2c_device_id *id)
+static int alc5623_i2c_probe(struct i2c_client *client,
+                            const struct i2c_device_id *id)
 {
        struct alc5623_platform_data *pdata;
        struct alc5623_priv *alc5623;
@@ -1058,7 +1058,7 @@ static __devinit int alc5623_i2c_probe(struct i2c_client *client,
        return ret;
 }
 
-static __devexit int alc5623_i2c_remove(struct i2c_client *client)
+static int alc5623_i2c_remove(struct i2c_client *client)
 {
        snd_soc_unregister_codec(&client->dev);
        return 0;
@@ -1079,7 +1079,7 @@ static struct i2c_driver alc5623_i2c_driver = {
                .owner = THIS_MODULE,
        },
        .probe = alc5623_i2c_probe,
-       .remove =  __devexit_p(alc5623_i2c_remove),
+       .remove =  alc5623_i2c_remove,
        .id_table = alc5623_i2c_table,
 };
 
index 7dd0242..f2e62e4 100644 (file)
@@ -1116,8 +1116,8 @@ static struct regmap_config alc5632_regmap = {
  *    low  = 0x1a
  *    high = 0x1b
  */
-static __devinit int alc5632_i2c_probe(struct i2c_client *client,
-                               const struct i2c_device_id *id)
+static int alc5632_i2c_probe(struct i2c_client *client,
+                            const struct i2c_device_id *id)
 {
        struct alc5632_priv *alc5632;
        int ret, ret1, ret2;
@@ -1179,7 +1179,7 @@ static __devinit int alc5632_i2c_probe(struct i2c_client *client,
        return ret;
 }
 
-static __devexit int alc5632_i2c_remove(struct i2c_client *client)
+static int alc5632_i2c_remove(struct i2c_client *client)
 {
        snd_soc_unregister_codec(&client->dev);
        return 0;
@@ -1198,7 +1198,7 @@ static struct i2c_driver alc5632_i2c_driver = {
                .owner = THIS_MODULE,
        },
        .probe = alc5632_i2c_probe,
-       .remove =  __devexit_p(alc5632_i2c_remove),
+       .remove =  alc5632_i2c_remove,
        .id_table = alc5632_i2c_table,
 };
 
index 87cfaa3..adf397b 100644 (file)
@@ -226,6 +226,31 @@ EXPORT_SYMBOL_GPL(arizona_mixer_values);
 const DECLARE_TLV_DB_SCALE(arizona_mixer_tlv, -3200, 100, 0);
 EXPORT_SYMBOL_GPL(arizona_mixer_tlv);
 
+static const char *arizona_vol_ramp_text[] = {
+       "0ms/6dB", "0.5ms/6dB", "1ms/6dB", "2ms/6dB", "4ms/6dB", "8ms/6dB",
+       "15ms/6dB", "30ms/6dB",
+};
+
+const struct soc_enum arizona_in_vd_ramp =
+       SOC_ENUM_SINGLE(ARIZONA_INPUT_VOLUME_RAMP,
+                       ARIZONA_IN_VD_RAMP_SHIFT, 7, arizona_vol_ramp_text);
+EXPORT_SYMBOL_GPL(arizona_in_vd_ramp);
+
+const struct soc_enum arizona_in_vi_ramp =
+       SOC_ENUM_SINGLE(ARIZONA_INPUT_VOLUME_RAMP,
+                       ARIZONA_IN_VI_RAMP_SHIFT, 7, arizona_vol_ramp_text);
+EXPORT_SYMBOL_GPL(arizona_in_vi_ramp);
+
+const struct soc_enum arizona_out_vd_ramp =
+       SOC_ENUM_SINGLE(ARIZONA_OUTPUT_VOLUME_RAMP,
+                       ARIZONA_OUT_VD_RAMP_SHIFT, 7, arizona_vol_ramp_text);
+EXPORT_SYMBOL_GPL(arizona_out_vd_ramp);
+
+const struct soc_enum arizona_out_vi_ramp =
+       SOC_ENUM_SINGLE(ARIZONA_OUTPUT_VOLUME_RAMP,
+                       ARIZONA_OUT_VI_RAMP_SHIFT, 7, arizona_vol_ramp_text);
+EXPORT_SYMBOL_GPL(arizona_out_vi_ramp);
+
 static const char *arizona_lhpf_mode_text[] = {
        "Low-pass", "High-pass"
 };
@@ -749,6 +774,9 @@ static int arizona_dai_set_sysclk(struct snd_soc_dai *dai,
                return -EBUSY;
        }
 
+       dev_dbg(codec->dev, "Setting AIF%d to %s\n", dai->id + 1,
+               arizona_dai_clk_str(clk_id));
+
        memset(&routes, 0, sizeof(routes));
        routes[0].sink = dai->driver->capture.stream_name;
        routes[1].sink = dai->driver->playback.stream_name;
@@ -761,6 +789,8 @@ static int arizona_dai_set_sysclk(struct snd_soc_dai *dai,
        routes[1].source = arizona_dai_clk_str(clk_id);
        snd_soc_dapm_add_routes(&codec->dapm, routes, ARRAY_SIZE(routes));
 
+       dai_priv->clk = clk_id;
+
        return snd_soc_dapm_sync(&codec->dapm);
 }
 
@@ -1016,7 +1046,7 @@ int arizona_set_fll(struct arizona_fll *fll, int source,
                                   ARIZONA_FLL1_SYNC_ENA);
 
        ret = wait_for_completion_timeout(&fll->ok,
-                                         msecs_to_jiffies(25));
+                                         msecs_to_jiffies(250));
        if (ret == 0)
                arizona_fll_warn(fll, "Timed out waiting for lock\n");
 
index 84c415d..41dae1e 100644 (file)
@@ -165,6 +165,12 @@ extern int arizona_mixer_values[ARIZONA_NUM_MIXER_INPUTS];
        ARIZONA_MIXER_ROUTES(name, name "L"), \
        ARIZONA_MIXER_ROUTES(name, name "R")
 
+extern const struct soc_enum arizona_in_vi_ramp;
+extern const struct soc_enum arizona_in_vd_ramp;
+
+extern const struct soc_enum arizona_out_vi_ramp;
+extern const struct soc_enum arizona_out_vd_ramp;
+
 extern const struct soc_enum arizona_lhpf1_mode;
 extern const struct soc_enum arizona_lhpf2_mode;
 extern const struct soc_enum arizona_lhpf3_mode;
index 064cd6a..23316c8 100644 (file)
@@ -201,7 +201,7 @@ static struct platform_driver cq93vc_codec_driver = {
        },
 
        .probe = cq93vc_platform_probe,
-       .remove = __devexit_p(cq93vc_platform_remove),
+       .remove = cq93vc_platform_remove,
 };
 
 module_platform_driver(cq93vc_codec_driver);
index 6ad3878..4f11279 100644 (file)
@@ -570,7 +570,7 @@ static struct snd_soc_codec_driver soc_codec_dev_cs4271 = {
 };
 
 #if defined(CONFIG_SPI_MASTER)
-static int __devinit cs4271_spi_probe(struct spi_device *spi)
+static int cs4271_spi_probe(struct spi_device *spi)
 {
        struct cs4271_private *cs4271;
 
@@ -585,7 +585,7 @@ static int __devinit cs4271_spi_probe(struct spi_device *spi)
                &cs4271_dai, 1);
 }
 
-static int __devexit cs4271_spi_remove(struct spi_device *spi)
+static int cs4271_spi_remove(struct spi_device *spi)
 {
        snd_soc_unregister_codec(&spi->dev);
        return 0;
@@ -598,7 +598,7 @@ static struct spi_driver cs4271_spi_driver = {
                .of_match_table = of_match_ptr(cs4271_dt_ids),
        },
        .probe          = cs4271_spi_probe,
-       .remove         = __devexit_p(cs4271_spi_remove),
+       .remove         = cs4271_spi_remove,
 };
 #endif /* defined(CONFIG_SPI_MASTER) */
 
@@ -609,8 +609,8 @@ static const struct i2c_device_id cs4271_i2c_id[] = {
 };
 MODULE_DEVICE_TABLE(i2c, cs4271_i2c_id);
 
-static int __devinit cs4271_i2c_probe(struct i2c_client *client,
-                                     const struct i2c_device_id *id)
+static int cs4271_i2c_probe(struct i2c_client *client,
+                           const struct i2c_device_id *id)
 {
        struct cs4271_private *cs4271;
 
@@ -625,7 +625,7 @@ static int __devinit cs4271_i2c_probe(struct i2c_client *client,
                &cs4271_dai, 1);
 }
 
-static int __devexit cs4271_i2c_remove(struct i2c_client *client)
+static int cs4271_i2c_remove(struct i2c_client *client)
 {
        snd_soc_unregister_codec(&client->dev);
        return 0;
@@ -639,7 +639,7 @@ static struct i2c_driver cs4271_i2c_driver = {
        },
        .id_table       = cs4271_i2c_id,
        .probe          = cs4271_i2c_probe,
-       .remove         = __devexit_p(cs4271_i2c_remove),
+       .remove         = cs4271_i2c_remove,
 };
 #endif /* defined(CONFIG_I2C) || defined(CONFIG_I2C_MODULE) */
 
index 97a8105..99bb1c6 100644 (file)
@@ -1271,7 +1271,7 @@ static struct i2c_driver cs42l52_i2c_driver = {
        },
        .id_table = cs42l52_id,
        .probe =    cs42l52_i2c_probe,
-       .remove =   __devexit_p(cs42l52_i2c_remove),
+       .remove =   cs42l52_i2c_remove,
 };
 
 module_i2c_driver(cs42l52_i2c_driver);
index 2c08c4c..a0791ec 100644 (file)
@@ -1345,8 +1345,8 @@ static struct regmap_config cs42l73_regmap = {
        .cache_type = REGCACHE_RBTREE,
 };
 
-static __devinit int cs42l73_i2c_probe(struct i2c_client *i2c_client,
-                                      const struct i2c_device_id *id)
+static int cs42l73_i2c_probe(struct i2c_client *i2c_client,
+                            const struct i2c_device_id *id)
 {
        struct cs42l73_private *cs42l73;
        int ret;
@@ -1406,7 +1406,7 @@ static __devinit int cs42l73_i2c_probe(struct i2c_client *i2c_client,
        return 0;
 }
 
-static __devexit int cs42l73_i2c_remove(struct i2c_client *client)
+static int cs42l73_i2c_remove(struct i2c_client *client)
 {
        snd_soc_unregister_codec(&client->dev);
        return 0;
@@ -1426,7 +1426,7 @@ static struct i2c_driver cs42l73_i2c_driver = {
                   },
        .id_table = cs42l73_id,
        .probe = cs42l73_i2c_probe,
-       .remove = __devexit_p(cs42l73_i2c_remove),
+       .remove = cs42l73_i2c_remove,
 
 };
 
index ab1ee5b..9c12314 100644 (file)
@@ -1218,8 +1218,8 @@ static const struct regmap_config da7210_regmap_config_i2c = {
        .cache_type = REGCACHE_RBTREE,
 };
 
-static int __devinit da7210_i2c_probe(struct i2c_client *i2c,
-                                     const struct i2c_device_id *id)
+static int da7210_i2c_probe(struct i2c_client *i2c,
+                           const struct i2c_device_id *id)
 {
        struct da7210_priv *da7210;
        int ret;
@@ -1251,7 +1251,7 @@ static int __devinit da7210_i2c_probe(struct i2c_client *i2c,
        return ret;
 }
 
-static int __devexit da7210_i2c_remove(struct i2c_client *client)
+static int da7210_i2c_remove(struct i2c_client *client)
 {
        snd_soc_unregister_codec(&client->dev);
        return 0;
@@ -1270,7 +1270,7 @@ static struct i2c_driver da7210_i2c_driver = {
                .owner = THIS_MODULE,
        },
        .probe          = da7210_i2c_probe,
-       .remove         = __devexit_p(da7210_i2c_remove),
+       .remove         = da7210_i2c_remove,
        .id_table       = da7210_i2c_id,
 };
 #endif
@@ -1314,7 +1314,7 @@ static const struct regmap_config da7210_regmap_config_spi = {
        .cache_type = REGCACHE_RBTREE,
 };
 
-static int __devinit da7210_spi_probe(struct spi_device *spi)
+static int da7210_spi_probe(struct spi_device *spi)
 {
        struct da7210_priv *da7210;
        int ret;
@@ -1337,24 +1337,15 @@ static int __devinit da7210_spi_probe(struct spi_device *spi)
        if (ret != 0)
                dev_warn(&spi->dev, "Failed to apply regmap patch: %d\n", ret);
 
-       ret =  snd_soc_register_codec(&spi->dev,
+       ret = snd_soc_register_codec(&spi->dev,
                        &soc_codec_dev_da7210, &da7210_dai, 1);
-       if (ret < 0)
-               goto err_regmap;
-
-       return ret;
-
-err_regmap:
-       regmap_exit(da7210->regmap);
 
        return ret;
 }
 
-static int __devexit da7210_spi_remove(struct spi_device *spi)
+static int da7210_spi_remove(struct spi_device *spi)
 {
-       struct da7210_priv *da7210 = spi_get_drvdata(spi);
        snd_soc_unregister_codec(&spi->dev);
-       regmap_exit(da7210->regmap);
        return 0;
 }
 
@@ -1364,7 +1355,7 @@ static struct spi_driver da7210_spi_driver = {
                .owner = THIS_MODULE,
        },
        .probe = da7210_spi_probe,
-       .remove = __devexit_p(da7210_spi_remove)
+       .remove = da7210_spi_remove
 };
 #endif
 
index 01be2a3..dc0284d 100644 (file)
@@ -1557,8 +1557,8 @@ static struct snd_soc_codec_driver soc_codec_dev_da732x = {
        .reg_cache_size         = ARRAY_SIZE(da732x_reg_cache),
 };
 
-static __devinit int da732x_i2c_probe(struct i2c_client *i2c,
-                                     const struct i2c_device_id *id)
+static int da732x_i2c_probe(struct i2c_client *i2c,
+                           const struct i2c_device_id *id)
 {
        struct da732x_priv *da732x;
        unsigned int reg;
@@ -1596,7 +1596,7 @@ err:
        return ret;
 }
 
-static __devexit int da732x_i2c_remove(struct i2c_client *client)
+static int da732x_i2c_remove(struct i2c_client *client)
 {
        snd_soc_unregister_codec(&client->dev);
 
@@ -1615,7 +1615,7 @@ static struct i2c_driver da732x_i2c_driver = {
                .owner  = THIS_MODULE,
        },
        .probe          = da732x_i2c_probe,
-       .remove         = __devexit_p(da732x_i2c_remove),
+       .remove         = da732x_i2c_remove,
        .id_table       = da732x_i2c_id,
 };
 
index d3a6de2..fc9802d 100644 (file)
@@ -1484,8 +1484,8 @@ static const struct regmap_config da9055_regmap_config = {
        .cache_type = REGCACHE_RBTREE,
 };
 
-static int __devinit da9055_i2c_probe(struct i2c_client *i2c,
-                                     const struct i2c_device_id *id)
+static int da9055_i2c_probe(struct i2c_client *i2c,
+                           const struct i2c_device_id *id)
 {
        struct da9055_priv *da9055;
        struct da9055_platform_data *pdata = dev_get_platdata(&i2c->dev);
@@ -1517,7 +1517,7 @@ static int __devinit da9055_i2c_probe(struct i2c_client *i2c,
        return ret;
 }
 
-static int __devexit da9055_remove(struct i2c_client *client)
+static int da9055_remove(struct i2c_client *client)
 {
        snd_soc_unregister_codec(&client->dev);
        return 0;
@@ -1536,7 +1536,7 @@ static struct i2c_driver da9055_i2c_driver = {
                .owner = THIS_MODULE,
        },
        .probe          = da9055_i2c_probe,
-       .remove         = __devexit_p(da9055_remove),
+       .remove         = da9055_remove,
        .id_table       = da9055_i2c_id,
 };
 
index bfe46aa..4f4f7f4 100644 (file)
@@ -33,13 +33,13 @@ static struct snd_soc_dai_driver dfbmcs320_dai = {
 
 static struct snd_soc_codec_driver soc_codec_dev_dfbmcs320;
 
-static int __devinit dfbmcs320_probe(struct platform_device *pdev)
+static int dfbmcs320_probe(struct platform_device *pdev)
 {
        return snd_soc_register_codec(&pdev->dev, &soc_codec_dev_dfbmcs320,
                        &dfbmcs320_dai, 1);
 }
 
-static int __devexit dfbmcs320_remove(struct platform_device *pdev)
+static int dfbmcs320_remove(struct platform_device *pdev)
 {
        snd_soc_unregister_codec(&pdev->dev);
 
@@ -52,7 +52,7 @@ static struct platform_driver dfmcs320_driver = {
                .owner = THIS_MODULE,
        },
        .probe = dfbmcs320_probe,
-       .remove = __devexit_p(dfbmcs320_remove),
+       .remove = dfbmcs320_remove,
 };
 
 module_platform_driver(dfmcs320_driver);
index 3e929f0..66967ba 100644 (file)
@@ -66,13 +66,13 @@ static struct snd_soc_codec_driver soc_dmic = {
        .probe  = dmic_probe,
 };
 
-static int __devinit dmic_dev_probe(struct platform_device *pdev)
+static int dmic_dev_probe(struct platform_device *pdev)
 {
        return snd_soc_register_codec(&pdev->dev,
                        &soc_dmic, &dmic_dai, 1);
 }
 
-static int __devexit dmic_dev_remove(struct platform_device *pdev)
+static int dmic_dev_remove(struct platform_device *pdev)
 {
        snd_soc_unregister_codec(&pdev->dev);
        return 0;
@@ -86,7 +86,7 @@ static struct platform_driver dmic_driver = {
                .owner = THIS_MODULE,
        },
        .probe = dmic_dev_probe,
-       .remove = __devexit_p(dmic_dev_remove),
+       .remove = dmic_dev_remove,
 };
 
 module_platform_driver(dmic_driver);
index 1bf5560..53b455b 100644 (file)
@@ -1119,8 +1119,8 @@ static const struct regmap_config isabelle_regmap_config = {
        .cache_type = REGCACHE_RBTREE,
 };
 
-static int __devinit isabelle_i2c_probe(struct i2c_client *i2c,
-                                       const struct i2c_device_id *id)
+static int isabelle_i2c_probe(struct i2c_client *i2c,
+                             const struct i2c_device_id *id)
 {
        struct regmap *isabelle_regmap;
        int ret = 0;
@@ -1145,7 +1145,7 @@ static int __devinit isabelle_i2c_probe(struct i2c_client *i2c,
        return ret;
 }
 
-static int __devexit isabelle_i2c_remove(struct i2c_client *client)
+static int isabelle_i2c_remove(struct i2c_client *client)
 {
        snd_soc_unregister_codec(&client->dev);
        return 0;
@@ -1163,7 +1163,7 @@ static struct i2c_driver isabelle_i2c_driver = {
                .owner = THIS_MODULE,
        },
        .probe = isabelle_i2c_probe,
-       .remove = __devexit_p(isabelle_i2c_remove),
+       .remove = isabelle_i2c_remove,
        .id_table = isabelle_i2c_id,
 };
 
index 9ad1da3..d991529 100644 (file)
@@ -348,7 +348,7 @@ static const struct regmap_config jz4740_codec_regmap_config = {
        .cache_type = REGCACHE_RBTREE,
 };
 
-static int __devinit jz4740_codec_probe(struct platform_device *pdev)
+static int jz4740_codec_probe(struct platform_device *pdev)
 {
        int ret;
        struct jz4740_codec *jz4740_codec;
@@ -380,7 +380,7 @@ static int __devinit jz4740_codec_probe(struct platform_device *pdev)
        return ret;
 }
 
-static int __devexit jz4740_codec_remove(struct platform_device *pdev)
+static int jz4740_codec_remove(struct platform_device *pdev)
 {
        snd_soc_unregister_codec(&pdev->dev);
 
@@ -391,7 +391,7 @@ static int __devexit jz4740_codec_remove(struct platform_device *pdev)
 
 static struct platform_driver jz4740_codec_driver = {
        .probe = jz4740_codec_probe,
-       .remove = __devexit_p(jz4740_codec_remove),
+       .remove = jz4740_codec_remove,
        .driver = {
                .name = "jz4740-codec",
                .owner = THIS_MODULE,
index 81a328c..9f9f595 100644 (file)
@@ -209,8 +209,8 @@ static struct snd_soc_codec_driver soc_codec_dev_lm4857 = {
        .set_bias_level = lm4857_set_bias_level,
 };
 
-static int __devinit lm4857_i2c_probe(struct i2c_client *i2c,
-       const struct i2c_device_id *id)
+static int lm4857_i2c_probe(struct i2c_client *i2c,
+                           const struct i2c_device_id *id)
 {
        struct lm4857 *lm4857;
        int ret;
@@ -228,7 +228,7 @@ static int __devinit lm4857_i2c_probe(struct i2c_client *i2c,
        return ret;
 }
 
-static int __devexit lm4857_i2c_remove(struct i2c_client *i2c)
+static int lm4857_i2c_remove(struct i2c_client *i2c)
 {
        snd_soc_unregister_codec(&i2c->dev);
        return 0;
@@ -246,7 +246,7 @@ static struct i2c_driver lm4857_i2c_driver = {
                .owner = THIS_MODULE,
        },
        .probe = lm4857_i2c_probe,
-       .remove = __devexit_p(lm4857_i2c_remove),
+       .remove = lm4857_i2c_remove,
        .id_table = lm4857_i2c_id,
 };
 
index 096b6aa..d75257d 100644 (file)
@@ -1483,8 +1483,8 @@ static const struct regmap_config lm49453_regmap_config = {
        .cache_type = REGCACHE_RBTREE,
 };
 
-static __devinit int lm49453_i2c_probe(struct i2c_client *i2c,
-                                      const struct i2c_device_id *id)
+static int lm49453_i2c_probe(struct i2c_client *i2c,
+                            const struct i2c_device_id *id)
 {
        struct lm49453_priv *lm49453;
        int ret = 0;
@@ -1514,7 +1514,7 @@ static __devinit int lm49453_i2c_probe(struct i2c_client *i2c,
        return ret;
 }
 
-static int __devexit lm49453_i2c_remove(struct i2c_client *client)
+static int lm49453_i2c_remove(struct i2c_client *client)
 {
        snd_soc_unregister_codec(&client->dev);
        return 0;
@@ -1532,7 +1532,7 @@ static struct i2c_driver lm49453_i2c_driver = {
                .owner = THIS_MODULE,
        },
        .probe = lm49453_i2c_probe,
-       .remove = __devexit_p(lm49453_i2c_remove),
+       .remove = lm49453_i2c_remove,
        .id_table = lm49453_i2c_id,
 };
 
index a777de6..a6ac231 100644 (file)
@@ -159,8 +159,8 @@ static const struct regmap_config max9768_i2c_regmap_config = {
        .cache_type = REGCACHE_RBTREE,
 };
 
-static int __devinit max9768_i2c_probe(struct i2c_client *client,
-       const struct i2c_device_id *id)
+static int max9768_i2c_probe(struct i2c_client *client,
+                            const struct i2c_device_id *id)
 {
        struct max9768 *max9768;
        struct max9768_pdata *pdata = client->dev.platform_data;
@@ -208,7 +208,7 @@ static int __devinit max9768_i2c_probe(struct i2c_client *client,
        return err;
 }
 
-static int __devexit max9768_i2c_remove(struct i2c_client *client)
+static int max9768_i2c_remove(struct i2c_client *client)
 {
        struct max9768 *max9768 = i2c_get_clientdata(client);
 
@@ -234,7 +234,7 @@ static struct i2c_driver max9768_i2c_driver = {
                .owner = THIS_MODULE,
        },
        .probe = max9768_i2c_probe,
-       .remove = __devexit_p(max9768_i2c_remove),
+       .remove = max9768_i2c_remove,
        .id_table = max9768_i2c_id,
 };
 module_i2c_driver(max9768_i2c_driver);
index b858264..a4c16fd 100644 (file)
@@ -2084,7 +2084,7 @@ static int max98088_i2c_probe(struct i2c_client *i2c,
        return ret;
 }
 
-static int __devexit max98088_i2c_remove(struct i2c_client *client)
+static int max98088_i2c_remove(struct i2c_client *client)
 {
        snd_soc_unregister_codec(&client->dev);
        return 0;
index 38d43c5..41cdd16 100644 (file)
@@ -2511,7 +2511,7 @@ static int max98095_i2c_probe(struct i2c_client *i2c,
        return ret;
 }
 
-static int __devexit max98095_i2c_remove(struct i2c_client *client)
+static int max98095_i2c_remove(struct i2c_client *client)
 {
        snd_soc_unregister_codec(&client->dev);
        return 0;
@@ -2529,7 +2529,7 @@ static struct i2c_driver max98095_i2c_driver = {
                .owner = THIS_MODULE,
        },
        .probe  = max98095_i2c_probe,
-       .remove = __devexit_p(max98095_i2c_remove),
+       .remove = max98095_i2c_remove,
        .id_table = max98095_i2c_id,
 };
 
index efe535c..58c38a5 100644 (file)
@@ -329,8 +329,8 @@ static struct snd_soc_codec_driver soc_codec_dev_max9850 = {
        .num_dapm_routes = ARRAY_SIZE(max9850_dapm_routes),
 };
 
-static int __devinit max9850_i2c_probe(struct i2c_client *i2c,
-               const struct i2c_device_id *id)
+static int max9850_i2c_probe(struct i2c_client *i2c,
+                            const struct i2c_device_id *id)
 {
        struct max9850_priv *max9850;
        int ret;
@@ -347,7 +347,7 @@ static int __devinit max9850_i2c_probe(struct i2c_client *i2c,
        return ret;
 }
 
-static __devexit int max9850_i2c_remove(struct i2c_client *client)
+static int max9850_i2c_remove(struct i2c_client *client)
 {
        snd_soc_unregister_codec(&client->dev);
        return 0;
@@ -365,7 +365,7 @@ static struct i2c_driver max9850_i2c_driver = {
                .owner = THIS_MODULE,
        },
        .probe = max9850_i2c_probe,
-       .remove = __devexit_p(max9850_i2c_remove),
+       .remove = max9850_i2c_remove,
        .id_table = max9850_i2c_id,
 };
 
index d15e594..6b6c74c 100644 (file)
@@ -258,8 +258,8 @@ int max9877_add_controls(struct snd_soc_codec *codec)
 }
 EXPORT_SYMBOL_GPL(max9877_add_controls);
 
-static int __devinit max9877_i2c_probe(struct i2c_client *client,
-               const struct i2c_device_id *id)
+static int max9877_i2c_probe(struct i2c_client *client,
+                            const struct i2c_device_id *id)
 {
        i2c = client;
 
@@ -268,7 +268,7 @@ static int __devinit max9877_i2c_probe(struct i2c_client *client,
        return 0;
 }
 
-static __devexit int max9877_i2c_remove(struct i2c_client *client)
+static int max9877_i2c_remove(struct i2c_client *client)
 {
        i2c = NULL;
 
@@ -287,7 +287,7 @@ static struct i2c_driver max9877_i2c_driver = {
                .owner = THIS_MODULE,
        },
        .probe = max9877_i2c_probe,
-       .remove = __devexit_p(max9877_i2c_remove),
+       .remove = max9877_i2c_remove,
        .id_table = max9877_i2c_id,
 };
 
index bc95599..5402dfb 100644 (file)
@@ -779,7 +779,7 @@ static struct platform_driver mc13783_codec_driver = {
                   .owner = THIS_MODULE,
                   },
        .probe = mc13783_codec_probe,
-       .remove = __devexit_p(mc13783_codec_remove),
+       .remove = mc13783_codec_remove,
 };
 
 module_platform_driver(mc13783_codec_driver);
index 96aa5fa..2611882 100644 (file)
@@ -626,8 +626,8 @@ static const struct regmap_config ml26124_i2c_regmap = {
        .write_flag_mask = 0x01,
 };
 
-static __devinit int ml26124_i2c_probe(struct i2c_client *i2c,
-                                     const struct i2c_device_id *id)
+static int ml26124_i2c_probe(struct i2c_client *i2c,
+                            const struct i2c_device_id *id)
 {
        struct ml26124_priv *priv;
        int ret;
@@ -649,7 +649,7 @@ static __devinit int ml26124_i2c_probe(struct i2c_client *i2c,
                        &soc_codec_dev_ml26124, &ml26124_dai, 1);
 }
 
-static __devexit int ml26124_i2c_remove(struct i2c_client *client)
+static int ml26124_i2c_remove(struct i2c_client *client)
 {
        snd_soc_unregister_codec(&client->dev);
        return 0;
@@ -667,7 +667,7 @@ static struct i2c_driver ml26124_i2c_driver = {
                .owner = THIS_MODULE,
        },
        .probe = ml26124_i2c_probe,
-       .remove = __devexit_p(ml26124_i2c_remove),
+       .remove = ml26124_i2c_remove,
        .id_table = ml26124_i2c_id,
 };
 
index 1bf5c74..529d064 100644 (file)
@@ -39,13 +39,13 @@ static struct snd_soc_dai_driver omap_hdmi_codec_dai = {
        },
 };
 
-static __devinit int omap_hdmi_codec_probe(struct platform_device *pdev)
+static int omap_hdmi_codec_probe(struct platform_device *pdev)
 {
        return snd_soc_register_codec(&pdev->dev, &omap_hdmi_codec,
                        &omap_hdmi_codec_dai, 1);
 }
 
-static __devexit int omap_hdmi_codec_remove(struct platform_device *pdev)
+static int omap_hdmi_codec_remove(struct platform_device *pdev)
 {
        snd_soc_unregister_codec(&pdev->dev);
        return 0;
@@ -58,7 +58,7 @@ static struct platform_driver omap_hdmi_codec_driver = {
        },
 
        .probe          = omap_hdmi_codec_probe,
-       .remove         = __devexit_p(omap_hdmi_codec_remove),
+       .remove         = omap_hdmi_codec_remove,
 };
 
 module_platform_driver(omap_hdmi_codec_driver);
index edcaa7e..f2a6282 100644 (file)
@@ -149,13 +149,13 @@ static struct snd_soc_codec_driver soc_codec_dev_pcm3008 = {
        .resume =       pcm3008_soc_resume,
 };
 
-static int __devinit pcm3008_codec_probe(struct platform_device *pdev)
+static int pcm3008_codec_probe(struct platform_device *pdev)
 {
        return snd_soc_register_codec(&pdev->dev,
                        &soc_codec_dev_pcm3008, &pcm3008_dai, 1);
 }
 
-static int __devexit pcm3008_codec_remove(struct platform_device *pdev)
+static int pcm3008_codec_remove(struct platform_device *pdev)
 {
        snd_soc_unregister_codec(&pdev->dev);
        return 0;
@@ -165,7 +165,7 @@ MODULE_ALIAS("platform:pcm3008-codec");
 
 static struct platform_driver pcm3008_codec_driver = {
        .probe          = pcm3008_codec_probe,
-       .remove         = __devexit_p(pcm3008_codec_remove),
+       .remove         = pcm3008_codec_remove,
        .driver         = {
                .name   = "pcm3008-codec",
                .owner  = THIS_MODULE,
index d6ca615..912c9cb 100644 (file)
@@ -1748,7 +1748,7 @@ static int rt5631_i2c_probe(struct i2c_client *i2c,
        return ret;
 }
 
-static __devexit int rt5631_i2c_remove(struct i2c_client *client)
+static int rt5631_i2c_remove(struct i2c_client *client)
 {
        snd_soc_unregister_codec(&client->dev);
        return 0;
@@ -1760,7 +1760,7 @@ static struct i2c_driver rt5631_i2c_driver = {
                .owner = THIS_MODULE,
        },
        .probe = rt5631_i2c_probe,
-       .remove   = __devexit_p(rt5631_i2c_remove),
+       .remove   = rt5631_i2c_remove,
        .id_table = rt5631_i2c_id,
 };
 
index df2f99d..cb1675c 100644 (file)
@@ -1404,8 +1404,8 @@ static struct snd_soc_codec_driver sgtl5000_driver = {
        .num_dapm_routes = ARRAY_SIZE(sgtl5000_dapm_routes),
 };
 
-static __devinit int sgtl5000_i2c_probe(struct i2c_client *client,
-                                       const struct i2c_device_id *id)
+static int sgtl5000_i2c_probe(struct i2c_client *client,
+                             const struct i2c_device_id *id)
 {
        struct sgtl5000_priv *sgtl5000;
        int ret;
@@ -1422,7 +1422,7 @@ static __devinit int sgtl5000_i2c_probe(struct i2c_client *client,
        return ret;
 }
 
-static __devexit int sgtl5000_i2c_remove(struct i2c_client *client)
+static int sgtl5000_i2c_remove(struct i2c_client *client)
 {
        snd_soc_unregister_codec(&client->dev);
 
@@ -1449,7 +1449,7 @@ static struct i2c_driver sgtl5000_i2c_driver = {
                   .of_match_table = sgtl5000_dt_ids,
                   },
        .probe = sgtl5000_i2c_probe,
-       .remove = __devexit_p(sgtl5000_i2c_remove),
+       .remove = sgtl5000_i2c_remove,
        .id_table = sgtl5000_id,
 };
 
index 38145ba..f2d61a1 100644 (file)
@@ -226,13 +226,13 @@ static struct snd_soc_codec_driver soc_codec_dev_si476x = {
        .write  = si476x_codec_write,
 };
 
-static int __devinit si476x_platform_probe(struct platform_device *pdev)
+static int si476x_platform_probe(struct platform_device *pdev)
 {
        return snd_soc_register_codec(&pdev->dev, &soc_codec_dev_si476x,
                                      &si476x_dai, 1);
 }
 
-static int __devexit si476x_platform_remove(struct platform_device *pdev)
+static int si476x_platform_remove(struct platform_device *pdev)
 {
        snd_soc_unregister_codec(&pdev->dev);
        return 0;
@@ -246,7 +246,7 @@ static struct platform_driver si476x_platform_driver = {
                .owner  = THIS_MODULE,
        },
        .probe          = si476x_platform_probe,
-       .remove         = __devexit_p(si476x_platform_remove),
+       .remove         = si476x_platform_remove,
 };
 module_platform_driver(si476x_platform_driver);
 
index 50dbdb9..d1ae869 100644 (file)
@@ -896,14 +896,14 @@ struct snd_soc_codec_driver sn95031_codec = {
        .num_dapm_routes        = ARRAY_SIZE(sn95031_audio_map),
 };
 
-static int __devinit sn95031_device_probe(struct platform_device *pdev)
+static int sn95031_device_probe(struct platform_device *pdev)
 {
        pr_debug("codec device probe called for %s\n", dev_name(&pdev->dev));
        return snd_soc_register_codec(&pdev->dev, &sn95031_codec,
                        sn95031_dais, ARRAY_SIZE(sn95031_dais));
 }
 
-static int __devexit sn95031_device_remove(struct platform_device *pdev)
+static int sn95031_device_remove(struct platform_device *pdev)
 {
        pr_debug("codec device remove called\n");
        snd_soc_unregister_codec(&pdev->dev);
@@ -916,7 +916,7 @@ static struct platform_driver sn95031_codec_driver = {
                .owner          = THIS_MODULE,
        },
        .probe          = sn95031_device_probe,
-       .remove         = __devexit_p(sn95031_device_remove),
+       .remove         = sn95031_device_remove,
 };
 
 module_platform_driver(sn95031_codec_driver);
index 079066f..f8d30e5 100644 (file)
@@ -691,7 +691,7 @@ static const struct regmap_config ssm2602_regmap_config = {
 };
 
 #if defined(CONFIG_SPI_MASTER)
-static int __devinit ssm2602_spi_probe(struct spi_device *spi)
+static int ssm2602_spi_probe(struct spi_device *spi)
 {
        struct ssm2602_priv *ssm2602;
        int ret;
@@ -713,7 +713,7 @@ static int __devinit ssm2602_spi_probe(struct spi_device *spi)
        return ret;
 }
 
-static int __devexit ssm2602_spi_remove(struct spi_device *spi)
+static int ssm2602_spi_remove(struct spi_device *spi)
 {
        snd_soc_unregister_codec(&spi->dev);
        return 0;
@@ -725,7 +725,7 @@ static struct spi_driver ssm2602_spi_driver = {
                .owner  = THIS_MODULE,
        },
        .probe          = ssm2602_spi_probe,
-       .remove         = __devexit_p(ssm2602_spi_remove),
+       .remove         = ssm2602_spi_remove,
 };
 #endif
 
@@ -736,7 +736,7 @@ static struct spi_driver ssm2602_spi_driver = {
  *    low  = 0x1a
  *    high = 0x1b
  */
-static int __devinit ssm2602_i2c_probe(struct i2c_client *i2c,
+static int ssm2602_i2c_probe(struct i2c_client *i2c,
                             const struct i2c_device_id *id)
 {
        struct ssm2602_priv *ssm2602;
@@ -759,7 +759,7 @@ static int __devinit ssm2602_i2c_probe(struct i2c_client *i2c,
        return ret;
 }
 
-static int __devexit ssm2602_i2c_remove(struct i2c_client *client)
+static int ssm2602_i2c_remove(struct i2c_client *client)
 {
        snd_soc_unregister_codec(&client->dev);
        return 0;
@@ -780,7 +780,7 @@ static struct i2c_driver ssm2602_i2c_driver = {
                .owner = THIS_MODULE,
        },
        .probe = ssm2602_i2c_probe,
-       .remove = __devexit_p(ssm2602_i2c_remove),
+       .remove = ssm2602_i2c_remove,
        .id_table = ssm2602_i2c_id,
 };
 #endif
index 0935bfe..cfb55fe 100644 (file)
@@ -995,8 +995,8 @@ static const struct regmap_config sta32x_regmap = {
        .volatile_reg =         sta32x_reg_is_volatile,
 };
 
-static __devinit int sta32x_i2c_probe(struct i2c_client *i2c,
-                                     const struct i2c_device_id *id)
+static int sta32x_i2c_probe(struct i2c_client *i2c,
+                           const struct i2c_device_id *id)
 {
        struct sta32x_priv *sta32x;
        int ret, i;
@@ -1033,7 +1033,7 @@ static __devinit int sta32x_i2c_probe(struct i2c_client *i2c,
        return ret;
 }
 
-static __devexit int sta32x_i2c_remove(struct i2c_client *client)
+static int sta32x_i2c_remove(struct i2c_client *client)
 {
        snd_soc_unregister_codec(&client->dev);
        return 0;
@@ -1053,7 +1053,7 @@ static struct i2c_driver sta32x_i2c_driver = {
                .owner = THIS_MODULE,
        },
        .probe =    sta32x_i2c_probe,
-       .remove =   __devexit_p(sta32x_i2c_remove),
+       .remove =   sta32x_i2c_remove,
        .id_table = sta32x_i2c_id,
 };
 
index 9e31448..ab355c4 100644 (file)
@@ -380,8 +380,8 @@ static const struct regmap_config sta529_regmap = {
        .num_reg_defaults = ARRAY_SIZE(sta529_reg_defaults),
 };
 
-static __devinit int sta529_i2c_probe(struct i2c_client *i2c,
-               const struct i2c_device_id *id)
+static int sta529_i2c_probe(struct i2c_client *i2c,
+                           const struct i2c_device_id *id)
 {
        struct sta529 *sta529;
        int ret;
@@ -412,7 +412,7 @@ static __devinit int sta529_i2c_probe(struct i2c_client *i2c,
        return ret;
 }
 
-static int __devexit sta529_i2c_remove(struct i2c_client *client)
+static int sta529_i2c_remove(struct i2c_client *client)
 {
        snd_soc_unregister_codec(&client->dev);
 
@@ -431,7 +431,7 @@ static struct i2c_driver sta529_i2c_driver = {
                .owner = THIS_MODULE,
        },
        .probe          = sta529_i2c_probe,
-       .remove         = __devexit_p(sta529_i2c_remove),
+       .remove         = sta529_i2c_remove,
        .id_table       = sta529_i2c_id,
 };
 
index 982e437..2eda85b 100644 (file)
@@ -385,13 +385,13 @@ static struct snd_soc_codec_driver soc_codec_dev_stac9766 = {
        .reg_cache_default = stac9766_reg,
 };
 
-static __devinit int stac9766_probe(struct platform_device *pdev)
+static int stac9766_probe(struct platform_device *pdev)
 {
        return snd_soc_register_codec(&pdev->dev,
                        &soc_codec_dev_stac9766, stac9766_dai, ARRAY_SIZE(stac9766_dai));
 }
 
-static int __devexit stac9766_remove(struct platform_device *pdev)
+static int stac9766_remove(struct platform_device *pdev)
 {
        snd_soc_unregister_codec(&pdev->dev);
        return 0;
@@ -404,7 +404,7 @@ static struct platform_driver stac9766_codec_driver = {
        },
 
        .probe = stac9766_probe,
-       .remove = __devexit_p(stac9766_remove),
+       .remove = stac9766_remove,
 };
 
 module_platform_driver(stac9766_codec_driver);
index e39e08d..17df4e3 100644 (file)
@@ -716,8 +716,8 @@ static struct snd_soc_codec_driver soc_codec_dev_aic32x4 = {
        .set_bias_level = aic32x4_set_bias_level,
 };
 
-static __devinit int aic32x4_i2c_probe(struct i2c_client *i2c,
-                                     const struct i2c_device_id *id)
+static int aic32x4_i2c_probe(struct i2c_client *i2c,
+                            const struct i2c_device_id *id)
 {
        struct aic32x4_pdata *pdata = i2c->dev.platform_data;
        struct aic32x4_priv *aic32x4;
@@ -748,7 +748,7 @@ static __devinit int aic32x4_i2c_probe(struct i2c_client *i2c,
        return ret;
 }
 
-static __devexit int aic32x4_i2c_remove(struct i2c_client *client)
+static int aic32x4_i2c_remove(struct i2c_client *client)
 {
        snd_soc_unregister_codec(&client->dev);
        return 0;
@@ -766,7 +766,7 @@ static struct i2c_driver aic32x4_i2c_driver = {
                .owner = THIS_MODULE,
        },
        .probe =    aic32x4_i2c_probe,
-       .remove =   __devexit_p(aic32x4_i2c_remove),
+       .remove =   aic32x4_i2c_remove,
        .id_table = aic32x4_i2c_id,
 };
 
index d2e16c5..782b0cd 100644 (file)
@@ -1514,8 +1514,8 @@ static struct snd_soc_dai_driver dac33_dai = {
        .ops = &dac33_dai_ops,
 };
 
-static int __devinit dac33_i2c_probe(struct i2c_client *client,
-                                    const struct i2c_device_id *id)
+static int dac33_i2c_probe(struct i2c_client *client,
+                          const struct i2c_device_id *id)
 {
        struct tlv320dac33_platform_data *pdata;
        struct tlv320dac33_priv *dac33;
@@ -1586,7 +1586,7 @@ err_gpio:
        return ret;
 }
 
-static int __devexit dac33_i2c_remove(struct i2c_client *client)
+static int dac33_i2c_remove(struct i2c_client *client)
 {
        struct tlv320dac33_priv *dac33 = i2c_get_clientdata(client);
 
@@ -1617,7 +1617,7 @@ static struct i2c_driver tlv320dac33_i2c_driver = {
                .owner = THIS_MODULE,
        },
        .probe          = dac33_i2c_probe,
-       .remove         = __devexit_p(dac33_i2c_remove),
+       .remove         = dac33_i2c_remove,
        .id_table       = tlv320dac33_i2c_id,
 };
 
index 565ff39..8d75aa1 100644 (file)
@@ -359,8 +359,8 @@ int tpa6130a2_add_controls(struct snd_soc_codec *codec)
 }
 EXPORT_SYMBOL_GPL(tpa6130a2_add_controls);
 
-static int __devinit tpa6130a2_probe(struct i2c_client *client,
-                                    const struct i2c_device_id *id)
+static int tpa6130a2_probe(struct i2c_client *client,
+                          const struct i2c_device_id *id)
 {
        struct device *dev;
        struct tpa6130a2_data *data;
@@ -455,7 +455,7 @@ err_gpio:
        return ret;
 }
 
-static int __devexit tpa6130a2_remove(struct i2c_client *client)
+static int tpa6130a2_remove(struct i2c_client *client)
 {
        struct tpa6130a2_data *data = i2c_get_clientdata(client);
 
@@ -483,7 +483,7 @@ static struct i2c_driver tpa6130a2_i2c_driver = {
                .owner = THIS_MODULE,
        },
        .probe = tpa6130a2_probe,
-       .remove = __devexit_p(tpa6130a2_remove),
+       .remove = tpa6130a2_remove,
        .id_table = tpa6130a2_id,
 };
 
index e7f6089..63b280b 100644 (file)
@@ -2334,13 +2334,13 @@ static struct snd_soc_codec_driver soc_codec_dev_twl4030 = {
        .num_dapm_routes = ARRAY_SIZE(intercon),
 };
 
-static int __devinit twl4030_codec_probe(struct platform_device *pdev)
+static int twl4030_codec_probe(struct platform_device *pdev)
 {
        return snd_soc_register_codec(&pdev->dev, &soc_codec_dev_twl4030,
                        twl4030_dai, ARRAY_SIZE(twl4030_dai));
 }
 
-static int __devexit twl4030_codec_remove(struct platform_device *pdev)
+static int twl4030_codec_remove(struct platform_device *pdev)
 {
        snd_soc_unregister_codec(&pdev->dev);
        return 0;
@@ -2350,7 +2350,7 @@ MODULE_ALIAS("platform:twl4030-codec");
 
 static struct platform_driver twl4030_codec_driver = {
        .probe          = twl4030_codec_probe,
-       .remove         = __devexit_p(twl4030_codec_remove),
+       .remove         = twl4030_codec_remove,
        .driver         = {
                .name   = "twl4030-codec",
                .owner  = THIS_MODULE,
index 00b85cc..3fc3fc6 100644 (file)
@@ -1229,13 +1229,13 @@ static struct snd_soc_codec_driver soc_codec_dev_twl6040 = {
        .num_dapm_routes = ARRAY_SIZE(intercon),
 };
 
-static int __devinit twl6040_codec_probe(struct platform_device *pdev)
+static int twl6040_codec_probe(struct platform_device *pdev)
 {
        return snd_soc_register_codec(&pdev->dev, &soc_codec_dev_twl6040,
                                      twl6040_dai, ARRAY_SIZE(twl6040_dai));
 }
 
-static int __devexit twl6040_codec_remove(struct platform_device *pdev)
+static int twl6040_codec_remove(struct platform_device *pdev)
 {
        snd_soc_unregister_codec(&pdev->dev);
        return 0;
@@ -1247,7 +1247,7 @@ static struct platform_driver twl6040_codec_driver = {
                .owner = THIS_MODULE,
        },
        .probe = twl6040_codec_probe,
-       .remove = __devexit_p(twl6040_codec_remove),
+       .remove = twl6040_codec_remove,
 };
 
 module_platform_driver(twl6040_codec_driver);
index 6c3d43b..6d0aa44 100644 (file)
@@ -601,13 +601,13 @@ static struct snd_soc_codec_driver soc_codec_dev_uda134x = {
        .set_bias_level = uda134x_set_bias_level,
 };
 
-static int __devinit uda134x_codec_probe(struct platform_device *pdev)
+static int uda134x_codec_probe(struct platform_device *pdev)
 {
        return snd_soc_register_codec(&pdev->dev,
                        &soc_codec_dev_uda134x, &uda134x_dai, 1);
 }
 
-static int __devexit uda134x_codec_remove(struct platform_device *pdev)
+static int uda134x_codec_remove(struct platform_device *pdev)
 {
        snd_soc_unregister_codec(&pdev->dev);
        return 0;
@@ -619,7 +619,7 @@ static struct platform_driver uda134x_codec_driver = {
                .owner = THIS_MODULE,
        },
        .probe = uda134x_codec_probe,
-       .remove = __devexit_p(uda134x_codec_remove),
+       .remove = uda134x_codec_remove,
 };
 
 module_platform_driver(uda134x_codec_driver);
index 2502214..fd0a314 100644 (file)
@@ -795,8 +795,8 @@ static struct snd_soc_codec_driver soc_codec_dev_uda1380 = {
 };
 
 #if defined(CONFIG_I2C) || defined(CONFIG_I2C_MODULE)
-static __devinit int uda1380_i2c_probe(struct i2c_client *i2c,
-                                     const struct i2c_device_id *id)
+static int uda1380_i2c_probe(struct i2c_client *i2c,
+                            const struct i2c_device_id *id)
 {
        struct uda1380_priv *uda1380;
        int ret;
@@ -814,7 +814,7 @@ static __devinit int uda1380_i2c_probe(struct i2c_client *i2c,
        return ret;
 }
 
-static int __devexit uda1380_i2c_remove(struct i2c_client *i2c)
+static int uda1380_i2c_remove(struct i2c_client *i2c)
 {
        snd_soc_unregister_codec(&i2c->dev);
        return 0;
@@ -832,7 +832,7 @@ static struct i2c_driver uda1380_i2c_driver = {
                .owner = THIS_MODULE,
        },
        .probe =    uda1380_i2c_probe,
-       .remove =   __devexit_p(uda1380_i2c_remove),
+       .remove =   uda1380_i2c_remove,
        .id_table = uda1380_i2c_id,
 };
 #endif
index 7b24d6d..54cd3da 100644 (file)
@@ -485,13 +485,13 @@ static struct snd_soc_codec_driver soc_codec_dev_wl1273 = {
        .remove = wl1273_remove,
 };
 
-static int __devinit wl1273_platform_probe(struct platform_device *pdev)
+static int wl1273_platform_probe(struct platform_device *pdev)
 {
        return snd_soc_register_codec(&pdev->dev, &soc_codec_dev_wl1273,
                                      &wl1273_dai, 1);
 }
 
-static int __devexit wl1273_platform_remove(struct platform_device *pdev)
+static int wl1273_platform_remove(struct platform_device *pdev)
 {
        snd_soc_unregister_codec(&pdev->dev);
        return 0;
@@ -505,7 +505,7 @@ static struct platform_driver wl1273_platform_driver = {
                .owner  = THIS_MODULE,
        },
        .probe          = wl1273_platform_probe,
-       .remove         = __devexit_p(wl1273_platform_remove),
+       .remove         = wl1273_platform_remove,
 };
 
 module_platform_driver(wl1273_platform_driver);
index 40256b5..ad2fee4 100644 (file)
@@ -885,7 +885,7 @@ static int wm0010_probe(struct snd_soc_codec *codec)
        return 0;
 }
 
-static int __devinit wm0010_spi_probe(struct spi_device *spi)
+static int wm0010_spi_probe(struct spi_device *spi)
 {
        unsigned long gpio_flags;
        int ret;
@@ -985,7 +985,7 @@ static int __devinit wm0010_spi_probe(struct spi_device *spi)
        return 0;
 }
 
-static int __devexit wm0010_spi_remove(struct spi_device *spi)
+static int wm0010_spi_remove(struct spi_device *spi)
 {
        struct wm0010_priv *wm0010 = spi_get_drvdata(spi);
 
@@ -1007,7 +1007,7 @@ static struct spi_driver wm0010_spi_driver = {
                .owner  = THIS_MODULE,
        },
        .probe          = wm0010_spi_probe,
-       .remove         = __devexit_p(wm0010_spi_remove),
+       .remove         = wm0010_spi_remove,
 };
 
 module_spi_driver(wm0010_spi_driver);
index 951d7b4..6e6b93d 100644 (file)
@@ -153,7 +153,7 @@ static struct snd_soc_codec_driver soc_codec_dev_wm1250_ev1 = {
        .idle_bias_off = true,
 };
 
-static int __devinit wm1250_ev1_pdata(struct i2c_client *i2c)
+static int wm1250_ev1_pdata(struct i2c_client *i2c)
 {
        struct wm1250_ev1_pdata *pdata = dev_get_platdata(&i2c->dev);
        struct wm1250_priv *wm1250;
@@ -199,8 +199,8 @@ static void wm1250_ev1_free(struct i2c_client *i2c)
                gpio_free_array(wm1250->gpios, ARRAY_SIZE(wm1250->gpios));
 }
 
-static int __devinit wm1250_ev1_probe(struct i2c_client *i2c,
-                                     const struct i2c_device_id *i2c_id)
+static int wm1250_ev1_probe(struct i2c_client *i2c,
+                           const struct i2c_device_id *i2c_id)
 {
        int id, board, rev, ret;
 
@@ -237,7 +237,7 @@ static int __devinit wm1250_ev1_probe(struct i2c_client *i2c,
        return 0;
 }
 
-static int __devexit wm1250_ev1_remove(struct i2c_client *i2c)
+static int wm1250_ev1_remove(struct i2c_client *i2c)
 {
        snd_soc_unregister_codec(&i2c->dev);
        wm1250_ev1_free(i2c);
@@ -257,7 +257,7 @@ static struct i2c_driver wm1250_ev1_i2c_driver = {
                .owner = THIS_MODULE,
        },
        .probe =    wm1250_ev1_probe,
-       .remove =   __devexit_p(wm1250_ev1_remove),
+       .remove =   wm1250_ev1_remove,
        .id_table = wm1250_ev1_i2c_id,
 };
 
index 02750ab..1cbe88f 100644 (file)
@@ -764,8 +764,8 @@ static struct snd_soc_codec_driver soc_codec_dev_wm2000 = {
        .num_controls = ARRAY_SIZE(wm2000_controls),
 };
 
-static int __devinit wm2000_i2c_probe(struct i2c_client *i2c,
-                                     const struct i2c_device_id *i2c_id)
+static int wm2000_i2c_probe(struct i2c_client *i2c,
+                           const struct i2c_device_id *i2c_id)
 {
        struct wm2000_priv *wm2000;
        struct wm2000_platform_data *pdata;
@@ -871,7 +871,7 @@ out:
        return ret;
 }
 
-static __devexit int wm2000_i2c_remove(struct i2c_client *i2c)
+static int wm2000_i2c_remove(struct i2c_client *i2c)
 {
        snd_soc_unregister_codec(&i2c->dev);
 
@@ -890,7 +890,7 @@ static struct i2c_driver wm2000_i2c_driver = {
                .owner = THIS_MODULE,
        },
        .probe = wm2000_i2c_probe,
-       .remove = __devexit_p(wm2000_i2c_remove),
+       .remove = wm2000_i2c_remove,
        .id_table = wm2000_i2c_id,
 };
 
index ff45b02..afcf31d 100644 (file)
@@ -2184,8 +2184,8 @@ static const unsigned int wm2200_mic_ctrl_reg[] = {
        WM2200_IN3L_CONTROL,
 };
 
-static __devinit int wm2200_i2c_probe(struct i2c_client *i2c,
-                                     const struct i2c_device_id *id)
+static int wm2200_i2c_probe(struct i2c_client *i2c,
+                           const struct i2c_device_id *id)
 {
        struct wm2200_pdata *pdata = dev_get_platdata(&i2c->dev);
        struct wm2200_priv *wm2200;
@@ -2385,7 +2385,7 @@ err_enable:
        return ret;
 }
 
-static __devexit int wm2200_i2c_remove(struct i2c_client *i2c)
+static int wm2200_i2c_remove(struct i2c_client *i2c)
 {
        struct wm2200_priv *wm2200 = i2c_get_clientdata(i2c);
 
@@ -2458,7 +2458,7 @@ static struct i2c_driver wm2200_i2c_driver = {
                .pm = &wm2200_pm,
        },
        .probe =    wm2200_i2c_probe,
-       .remove =   __devexit_p(wm2200_i2c_remove),
+       .remove =   wm2200_i2c_remove,
        .id_table = wm2200_i2c_id,
 };
 
index 9f57996..5a5f369 100644 (file)
@@ -2414,8 +2414,8 @@ static const unsigned int wm5100_mic_ctrl_reg[] = {
        WM5100_IN4L_CONTROL,
 };
 
-static __devinit int wm5100_i2c_probe(struct i2c_client *i2c,
-                                     const struct i2c_device_id *id)
+static int wm5100_i2c_probe(struct i2c_client *i2c,
+                           const struct i2c_device_id *id)
 {
        struct wm5100_pdata *pdata = dev_get_platdata(&i2c->dev);
        struct wm5100_priv *wm5100;
@@ -2639,7 +2639,7 @@ err:
        return ret;
 }
 
-static __devexit int wm5100_i2c_remove(struct i2c_client *i2c)
+static int wm5100_i2c_remove(struct i2c_client *i2c)
 {
        struct wm5100_priv *wm5100 = i2c_get_clientdata(i2c);
 
@@ -2717,7 +2717,7 @@ static struct i2c_driver wm5100_i2c_driver = {
                .pm = &wm5100_pm,
        },
        .probe =    wm5100_i2c_probe,
-       .remove =   __devexit_p(wm5100_i2c_remove),
+       .remove =   wm5100_i2c_remove,
        .id_table = wm5100_i2c_id,
 };
 
index 53793b1..688ade0 100644 (file)
@@ -635,11 +635,23 @@ SOC_DOUBLE_R_TLV("IN3 Digital Volume", ARIZONA_ADC_DIGITAL_VOLUME_3L,
                 ARIZONA_ADC_DIGITAL_VOLUME_3R, ARIZONA_IN3L_DIG_VOL_SHIFT,
                 0xbf, 0, digital_tlv),
 
+SOC_ENUM("Input Ramp Up", arizona_in_vi_ramp),
+SOC_ENUM("Input Ramp Down", arizona_in_vd_ramp),
+
 ARIZONA_MIXER_CONTROLS("EQ1", ARIZONA_EQ1MIX_INPUT_1_SOURCE),
 ARIZONA_MIXER_CONTROLS("EQ2", ARIZONA_EQ2MIX_INPUT_1_SOURCE),
 ARIZONA_MIXER_CONTROLS("EQ3", ARIZONA_EQ3MIX_INPUT_1_SOURCE),
 ARIZONA_MIXER_CONTROLS("EQ4", ARIZONA_EQ4MIX_INPUT_1_SOURCE),
 
+SND_SOC_BYTES_MASK("EQ1 Coefficeints", ARIZONA_EQ1_1, 21,
+                  ARIZONA_EQ1_ENA_MASK),
+SND_SOC_BYTES_MASK("EQ2 Coefficeints", ARIZONA_EQ2_1, 21,
+                  ARIZONA_EQ2_ENA_MASK),
+SND_SOC_BYTES_MASK("EQ3 Coefficeints", ARIZONA_EQ3_1, 21,
+                  ARIZONA_EQ3_ENA_MASK),
+SND_SOC_BYTES_MASK("EQ4 Coefficeints", ARIZONA_EQ4_1, 21,
+                  ARIZONA_EQ4_ENA_MASK),
+
 SOC_SINGLE_TLV("EQ1 B1 Volume", ARIZONA_EQ1_1, ARIZONA_EQ1_B1_GAIN_SHIFT,
               24, 0, eq_tlv),
 SOC_SINGLE_TLV("EQ1 B2 Volume", ARIZONA_EQ1_1, ARIZONA_EQ1_B2_GAIN_SHIFT,
@@ -695,6 +707,11 @@ ARIZONA_MIXER_CONTROLS("LHPF2", ARIZONA_HPLP2MIX_INPUT_1_SOURCE),
 ARIZONA_MIXER_CONTROLS("LHPF3", ARIZONA_HPLP3MIX_INPUT_1_SOURCE),
 ARIZONA_MIXER_CONTROLS("LHPF4", ARIZONA_HPLP4MIX_INPUT_1_SOURCE),
 
+SND_SOC_BYTES("LHPF1 Coefficients", ARIZONA_HPLPF1_2, 1),
+SND_SOC_BYTES("LHPF2 Coefficients", ARIZONA_HPLPF2_2, 1),
+SND_SOC_BYTES("LHPF3 Coefficients", ARIZONA_HPLPF3_2, 1),
+SND_SOC_BYTES("LHPF4 Coefficients", ARIZONA_HPLPF4_2, 1),
+
 ARIZONA_MIXER_CONTROLS("DSP1L", ARIZONA_DSP1LMIX_INPUT_1_SOURCE),
 ARIZONA_MIXER_CONTROLS("DSP1R", ARIZONA_DSP1RMIX_INPUT_1_SOURCE),
 
@@ -748,6 +765,9 @@ SOC_DOUBLE_R_TLV("SPKDAT1 Digital Volume", ARIZONA_DAC_DIGITAL_VOLUME_5L,
                 ARIZONA_DAC_DIGITAL_VOLUME_5R, ARIZONA_OUT5L_VOL_SHIFT,
                 0xbf, 0, digital_tlv),
 
+SOC_ENUM("Output Ramp Up", arizona_out_vi_ramp),
+SOC_ENUM("Output Ramp Down", arizona_out_vd_ramp),
+
 SOC_DOUBLE("SPKDAT1 Switch", ARIZONA_PDM_SPK1_CTRL_1, ARIZONA_SPK1L_MUTE_SHIFT,
           ARIZONA_SPK1R_MUTE_SHIFT, 1, 1),
 
@@ -1455,7 +1475,7 @@ static struct snd_soc_codec_driver soc_codec_dev_wm5102 = {
        .num_dapm_routes = ARRAY_SIZE(wm5102_dapm_routes),
 };
 
-static int __devinit wm5102_probe(struct platform_device *pdev)
+static int wm5102_probe(struct platform_device *pdev)
 {
        struct arizona *arizona = dev_get_drvdata(pdev->dev.parent);
        struct wm5102_priv *wm5102;
@@ -1507,7 +1527,7 @@ static int __devinit wm5102_probe(struct platform_device *pdev)
                                      wm5102_dai, ARRAY_SIZE(wm5102_dai));
 }
 
-static int __devexit wm5102_remove(struct platform_device *pdev)
+static int wm5102_remove(struct platform_device *pdev)
 {
        snd_soc_unregister_codec(&pdev->dev);
        pm_runtime_disable(&pdev->dev);
@@ -1521,7 +1541,7 @@ static struct platform_driver wm5102_codec_driver = {
                .owner = THIS_MODULE,
        },
        .probe = wm5102_probe,
-       .remove = __devexit_p(wm5102_remove),
+       .remove = wm5102_remove,
 };
 
 module_platform_driver(wm5102_codec_driver);
index 2a075ad..ae80c8c 100644 (file)
@@ -84,11 +84,23 @@ SOC_DOUBLE_R_TLV("IN4 Digital Volume", ARIZONA_ADC_DIGITAL_VOLUME_4L,
                 ARIZONA_ADC_DIGITAL_VOLUME_4R, ARIZONA_IN4L_DIG_VOL_SHIFT,
                 0xbf, 0, digital_tlv),
 
+SOC_ENUM("Input Ramp Up", arizona_in_vi_ramp),
+SOC_ENUM("Input Ramp Down", arizona_in_vd_ramp),
+
 ARIZONA_MIXER_CONTROLS("EQ1", ARIZONA_EQ1MIX_INPUT_1_SOURCE),
 ARIZONA_MIXER_CONTROLS("EQ2", ARIZONA_EQ2MIX_INPUT_1_SOURCE),
 ARIZONA_MIXER_CONTROLS("EQ3", ARIZONA_EQ3MIX_INPUT_1_SOURCE),
 ARIZONA_MIXER_CONTROLS("EQ4", ARIZONA_EQ4MIX_INPUT_1_SOURCE),
 
+SND_SOC_BYTES_MASK("EQ1 Coefficeints", ARIZONA_EQ1_1, 21,
+                  ARIZONA_EQ1_ENA_MASK),
+SND_SOC_BYTES_MASK("EQ2 Coefficeints", ARIZONA_EQ2_1, 21,
+                  ARIZONA_EQ2_ENA_MASK),
+SND_SOC_BYTES_MASK("EQ3 Coefficeints", ARIZONA_EQ3_1, 21,
+                  ARIZONA_EQ3_ENA_MASK),
+SND_SOC_BYTES_MASK("EQ4 Coefficeints", ARIZONA_EQ4_1, 21,
+                  ARIZONA_EQ4_ENA_MASK),
+
 SOC_SINGLE_TLV("EQ1 B1 Volume", ARIZONA_EQ1_1, ARIZONA_EQ1_B1_GAIN_SHIFT,
               24, 0, eq_tlv),
 SOC_SINGLE_TLV("EQ1 B2 Volume", ARIZONA_EQ1_1, ARIZONA_EQ1_B2_GAIN_SHIFT,
@@ -148,6 +160,11 @@ ARIZONA_MIXER_CONTROLS("LHPF2", ARIZONA_HPLP2MIX_INPUT_1_SOURCE),
 ARIZONA_MIXER_CONTROLS("LHPF3", ARIZONA_HPLP3MIX_INPUT_1_SOURCE),
 ARIZONA_MIXER_CONTROLS("LHPF4", ARIZONA_HPLP4MIX_INPUT_1_SOURCE),
 
+SND_SOC_BYTES("LHPF1 Coefficients", ARIZONA_HPLPF1_2, 1),
+SND_SOC_BYTES("LHPF2 Coefficients", ARIZONA_HPLPF2_2, 1),
+SND_SOC_BYTES("LHPF3 Coefficients", ARIZONA_HPLPF3_2, 1),
+SND_SOC_BYTES("LHPF4 Coefficients", ARIZONA_HPLPF4_2, 1),
+
 SOC_ENUM("LHPF1 Mode", arizona_lhpf1_mode),
 SOC_ENUM("LHPF2 Mode", arizona_lhpf2_mode),
 SOC_ENUM("LHPF3 Mode", arizona_lhpf3_mode),
@@ -243,6 +260,9 @@ SOC_DOUBLE("SPKDAT1 Switch", ARIZONA_PDM_SPK1_CTRL_1, ARIZONA_SPK1L_MUTE_SHIFT,
 SOC_DOUBLE("SPKDAT2 Switch", ARIZONA_PDM_SPK2_CTRL_1, ARIZONA_SPK2L_MUTE_SHIFT,
           ARIZONA_SPK2R_MUTE_SHIFT, 1, 1),
 
+SOC_ENUM("Output Ramp Up", arizona_out_vi_ramp),
+SOC_ENUM("Output Ramp Down", arizona_out_vd_ramp),
+
 ARIZONA_MIXER_CONTROLS("AIF1TX1", ARIZONA_AIF1TX1MIX_INPUT_1_SOURCE),
 ARIZONA_MIXER_CONTROLS("AIF1TX2", ARIZONA_AIF1TX2MIX_INPUT_1_SOURCE),
 ARIZONA_MIXER_CONTROLS("AIF1TX3", ARIZONA_AIF1TX3MIX_INPUT_1_SOURCE),
@@ -972,7 +992,7 @@ static struct snd_soc_codec_driver soc_codec_dev_wm5110 = {
        .num_dapm_routes = ARRAY_SIZE(wm5110_dapm_routes),
 };
 
-static int __devinit wm5110_probe(struct platform_device *pdev)
+static int wm5110_probe(struct platform_device *pdev)
 {
        struct arizona *arizona = dev_get_drvdata(pdev->dev.parent);
        struct wm5110_priv *wm5110;
@@ -1011,7 +1031,7 @@ static int __devinit wm5110_probe(struct platform_device *pdev)
                                      wm5110_dai, ARRAY_SIZE(wm5110_dai));
 }
 
-static int __devexit wm5110_remove(struct platform_device *pdev)
+static int wm5110_remove(struct platform_device *pdev)
 {
        snd_soc_unregister_codec(&pdev->dev);
        pm_runtime_disable(&pdev->dev);
@@ -1025,7 +1045,7 @@ static struct platform_driver wm5110_codec_driver = {
                .owner = THIS_MODULE,
        },
        .probe = wm5110_probe,
-       .remove = __devexit_p(wm5110_remove),
+       .remove = wm5110_remove,
 };
 
 module_platform_driver(wm5110_codec_driver);
index 32b8f08..fb92fb4 100644 (file)
@@ -1625,13 +1625,13 @@ static struct snd_soc_codec_driver soc_codec_dev_wm8350 = {
        .num_dapm_routes = ARRAY_SIZE(wm8350_dapm_routes),
 };
 
-static int __devinit wm8350_probe(struct platform_device *pdev)
+static int wm8350_probe(struct platform_device *pdev)
 {
        return snd_soc_register_codec(&pdev->dev, &soc_codec_dev_wm8350,
                        &wm8350_dai, 1);
 }
 
-static int __devexit wm8350_remove(struct platform_device *pdev)
+static int wm8350_remove(struct platform_device *pdev)
 {
        snd_soc_unregister_codec(&pdev->dev);
        return 0;
@@ -1643,7 +1643,7 @@ static struct platform_driver wm8350_codec_driver = {
                   .owner = THIS_MODULE,
                   },
        .probe = wm8350_probe,
-       .remove = __devexit_p(wm8350_remove),
+       .remove = wm8350_remove,
 };
 
 module_platform_driver(wm8350_codec_driver);
index 262c440..af6d227 100644 (file)
@@ -1431,13 +1431,13 @@ static struct snd_soc_codec_driver soc_codec_dev_wm8400 = {
        .num_dapm_routes = ARRAY_SIZE(wm8400_dapm_routes),
 };
 
-static int __devinit wm8400_probe(struct platform_device *pdev)
+static int wm8400_probe(struct platform_device *pdev)
 {
        return snd_soc_register_codec(&pdev->dev, &soc_codec_dev_wm8400,
                        &wm8400_dai, 1);
 }
 
-static int __devexit wm8400_remove(struct platform_device *pdev)
+static int wm8400_remove(struct platform_device *pdev)
 {
        snd_soc_unregister_codec(&pdev->dev);
        return 0;
@@ -1449,7 +1449,7 @@ static struct platform_driver wm8400_codec_driver = {
                   .owner = THIS_MODULE,
                   },
        .probe = wm8400_probe,
-       .remove = __devexit_p(wm8400_remove),
+       .remove = wm8400_remove,
 };
 
 module_platform_driver(wm8400_codec_driver);
index 923e7e1..6ed5433 100644 (file)
@@ -645,7 +645,7 @@ static const struct regmap_config wm8510_regmap = {
 };
 
 #if defined(CONFIG_SPI_MASTER)
-static int __devinit wm8510_spi_probe(struct spi_device *spi)
+static int wm8510_spi_probe(struct spi_device *spi)
 {
        struct wm8510_priv *wm8510;
        int ret;
@@ -667,7 +667,7 @@ static int __devinit wm8510_spi_probe(struct spi_device *spi)
        return ret;
 }
 
-static int __devexit wm8510_spi_remove(struct spi_device *spi)
+static int wm8510_spi_remove(struct spi_device *spi)
 {
        snd_soc_unregister_codec(&spi->dev);
        return 0;
@@ -680,13 +680,13 @@ static struct spi_driver wm8510_spi_driver = {
                .of_match_table = wm8510_of_match,
        },
        .probe          = wm8510_spi_probe,
-       .remove         = __devexit_p(wm8510_spi_remove),
+       .remove         = wm8510_spi_remove,
 };
 #endif /* CONFIG_SPI_MASTER */
 
 #if defined(CONFIG_I2C) || defined(CONFIG_I2C_MODULE)
-static __devinit int wm8510_i2c_probe(struct i2c_client *i2c,
-                                     const struct i2c_device_id *id)
+static int wm8510_i2c_probe(struct i2c_client *i2c,
+                           const struct i2c_device_id *id)
 {
        struct wm8510_priv *wm8510;
        int ret;
@@ -708,7 +708,7 @@ static __devinit int wm8510_i2c_probe(struct i2c_client *i2c,
        return ret;
 }
 
-static __devexit int wm8510_i2c_remove(struct i2c_client *client)
+static int wm8510_i2c_remove(struct i2c_client *client)
 {
        snd_soc_unregister_codec(&client->dev);
        return 0;
@@ -727,7 +727,7 @@ static struct i2c_driver wm8510_i2c_driver = {
                .of_match_table = wm8510_of_match,
        },
        .probe =    wm8510_i2c_probe,
-       .remove =   __devexit_p(wm8510_i2c_remove),
+       .remove =   wm8510_i2c_remove,
        .id_table = wm8510_i2c_id,
 };
 #endif
index 8d5c276..139bf9a 100644 (file)
@@ -453,8 +453,8 @@ static const struct regmap_config wm8523_regmap = {
 };
 
 #if defined(CONFIG_I2C) || defined(CONFIG_I2C_MODULE)
-static __devinit int wm8523_i2c_probe(struct i2c_client *i2c,
-                                     const struct i2c_device_id *id)
+static int wm8523_i2c_probe(struct i2c_client *i2c,
+                           const struct i2c_device_id *id)
 {
        struct wm8523_priv *wm8523;
        unsigned int val;
@@ -528,7 +528,7 @@ err_enable:
        return ret;
 }
 
-static __devexit int wm8523_i2c_remove(struct i2c_client *client)
+static int wm8523_i2c_remove(struct i2c_client *client)
 {
        snd_soc_unregister_codec(&client->dev);
        return 0;
@@ -547,7 +547,7 @@ static struct i2c_driver wm8523_i2c_driver = {
                .of_match_table = wm8523_of_match,
        },
        .probe =    wm8523_i2c_probe,
-       .remove =   __devexit_p(wm8523_i2c_remove),
+       .remove =   wm8523_i2c_remove,
        .id_table = wm8523_i2c_id,
 };
 #endif
index 8b8bb70..5b428b0 100644 (file)
@@ -429,7 +429,7 @@ static const struct regmap_config wm8711_regmap = {
 };
 
 #if defined(CONFIG_SPI_MASTER)
-static int __devinit wm8711_spi_probe(struct spi_device *spi)
+static int wm8711_spi_probe(struct spi_device *spi)
 {
        struct wm8711_priv *wm8711;
        int ret;
@@ -451,7 +451,7 @@ static int __devinit wm8711_spi_probe(struct spi_device *spi)
        return ret;
 }
 
-static int __devexit wm8711_spi_remove(struct spi_device *spi)
+static int wm8711_spi_remove(struct spi_device *spi)
 {
        snd_soc_unregister_codec(&spi->dev);
 
@@ -465,13 +465,13 @@ static struct spi_driver wm8711_spi_driver = {
                .of_match_table = wm8711_of_match,
        },
        .probe          = wm8711_spi_probe,
-       .remove         = __devexit_p(wm8711_spi_remove),
+       .remove         = wm8711_spi_remove,
 };
 #endif /* CONFIG_SPI_MASTER */
 
 #if defined(CONFIG_I2C) || defined(CONFIG_I2C_MODULE)
-static __devinit int wm8711_i2c_probe(struct i2c_client *client,
-                                     const struct i2c_device_id *id)
+static int wm8711_i2c_probe(struct i2c_client *client,
+                           const struct i2c_device_id *id)
 {
        struct wm8711_priv *wm8711;
        int ret;
@@ -493,7 +493,7 @@ static __devinit int wm8711_i2c_probe(struct i2c_client *client,
        return ret;
 }
 
-static __devexit int wm8711_i2c_remove(struct i2c_client *client)
+static int wm8711_i2c_remove(struct i2c_client *client)
 {
        snd_soc_unregister_codec(&client->dev);
        return 0;
@@ -512,7 +512,7 @@ static struct i2c_driver wm8711_i2c_driver = {
                .of_match_table = wm8711_of_match,
        },
        .probe =    wm8711_i2c_probe,
-       .remove =   __devexit_p(wm8711_i2c_remove),
+       .remove =   wm8711_i2c_remove,
        .id_table = wm8711_i2c_id,
 };
 #endif
index e817056..462f5e4 100644 (file)
@@ -45,13 +45,13 @@ static struct snd_soc_dai_driver wm8727_dai = {
 
 static struct snd_soc_codec_driver soc_codec_dev_wm8727;
 
-static __devinit int wm8727_probe(struct platform_device *pdev)
+static int wm8727_probe(struct platform_device *pdev)
 {
        return snd_soc_register_codec(&pdev->dev,
                        &soc_codec_dev_wm8727, &wm8727_dai, 1);
 }
 
-static int __devexit wm8727_remove(struct platform_device *pdev)
+static int wm8727_remove(struct platform_device *pdev)
 {
        snd_soc_unregister_codec(&pdev->dev);
        return 0;
@@ -64,7 +64,7 @@ static struct platform_driver wm8727_codec_driver = {
        },
 
        .probe = wm8727_probe,
-       .remove = __devexit_p(wm8727_remove),
+       .remove = wm8727_remove,
 };
 
 module_platform_driver(wm8727_codec_driver);
index 00a12a0..c6a292d 100644 (file)
@@ -280,7 +280,7 @@ static const struct regmap_config wm8728_regmap = {
 };
 
 #if defined(CONFIG_SPI_MASTER)
-static int __devinit wm8728_spi_probe(struct spi_device *spi)
+static int wm8728_spi_probe(struct spi_device *spi)
 {
        struct wm8728_priv *wm8728;
        int ret;
@@ -302,7 +302,7 @@ static int __devinit wm8728_spi_probe(struct spi_device *spi)
        return ret;
 }
 
-static int __devexit wm8728_spi_remove(struct spi_device *spi)
+static int wm8728_spi_remove(struct spi_device *spi)
 {
        snd_soc_unregister_codec(&spi->dev);
 
@@ -316,13 +316,13 @@ static struct spi_driver wm8728_spi_driver = {
                .of_match_table = wm8728_of_match,
        },
        .probe          = wm8728_spi_probe,
-       .remove         = __devexit_p(wm8728_spi_remove),
+       .remove         = wm8728_spi_remove,
 };
 #endif /* CONFIG_SPI_MASTER */
 
 #if defined(CONFIG_I2C) || defined(CONFIG_I2C_MODULE)
-static __devinit int wm8728_i2c_probe(struct i2c_client *i2c,
-                                     const struct i2c_device_id *id)
+static int wm8728_i2c_probe(struct i2c_client *i2c,
+                           const struct i2c_device_id *id)
 {
        struct wm8728_priv *wm8728;
        int ret;
@@ -344,7 +344,7 @@ static __devinit int wm8728_i2c_probe(struct i2c_client *i2c,
        return ret;
 }
 
-static __devexit int wm8728_i2c_remove(struct i2c_client *client)
+static int wm8728_i2c_remove(struct i2c_client *client)
 {
        snd_soc_unregister_codec(&client->dev);
        return 0;
@@ -363,7 +363,7 @@ static struct i2c_driver wm8728_i2c_driver = {
                .of_match_table = wm8728_of_match,
        },
        .probe =    wm8728_i2c_probe,
-       .remove =   __devexit_p(wm8728_i2c_remove),
+       .remove =   wm8728_i2c_remove,
        .id_table = wm8728_i2c_id,
 };
 #endif
index bb1d269..5276062 100644 (file)
@@ -631,7 +631,7 @@ static const struct regmap_config wm8731_regmap = {
 };
 
 #if defined(CONFIG_SPI_MASTER)
-static int __devinit wm8731_spi_probe(struct spi_device *spi)
+static int wm8731_spi_probe(struct spi_device *spi)
 {
        struct wm8731_priv *wm8731;
        int ret;
@@ -661,7 +661,7 @@ static int __devinit wm8731_spi_probe(struct spi_device *spi)
        return 0;
 }
 
-static int __devexit wm8731_spi_remove(struct spi_device *spi)
+static int wm8731_spi_remove(struct spi_device *spi)
 {
        snd_soc_unregister_codec(&spi->dev);
        return 0;
@@ -674,13 +674,13 @@ static struct spi_driver wm8731_spi_driver = {
                .of_match_table = wm8731_of_match,
        },
        .probe          = wm8731_spi_probe,
-       .remove         = __devexit_p(wm8731_spi_remove),
+       .remove         = wm8731_spi_remove,
 };
 #endif /* CONFIG_SPI_MASTER */
 
 #if defined(CONFIG_I2C) || defined(CONFIG_I2C_MODULE)
-static __devinit int wm8731_i2c_probe(struct i2c_client *i2c,
-                                     const struct i2c_device_id *id)
+static int wm8731_i2c_probe(struct i2c_client *i2c,
+                           const struct i2c_device_id *id)
 {
        struct wm8731_priv *wm8731;
        int ret;
@@ -710,7 +710,7 @@ static __devinit int wm8731_i2c_probe(struct i2c_client *i2c,
        return 0;
 }
 
-static __devexit int wm8731_i2c_remove(struct i2c_client *client)
+static int wm8731_i2c_remove(struct i2c_client *client)
 {
        snd_soc_unregister_codec(&client->dev);
        return 0;
@@ -729,7 +729,7 @@ static struct i2c_driver wm8731_i2c_driver = {
                .of_match_table = wm8731_of_match,
        },
        .probe =    wm8731_i2c_probe,
-       .remove =   __devexit_p(wm8731_i2c_remove),
+       .remove =   wm8731_i2c_remove,
        .id_table = wm8731_i2c_id,
 };
 #endif
index 5c9634f..2f167a8 100644 (file)
@@ -645,8 +645,8 @@ static const struct regmap_config wm8737_regmap = {
 };
 
 #if defined(CONFIG_I2C) || defined(CONFIG_I2C_MODULE)
-static __devinit int wm8737_i2c_probe(struct i2c_client *i2c,
-                                     const struct i2c_device_id *id)
+static int wm8737_i2c_probe(struct i2c_client *i2c,
+                           const struct i2c_device_id *id)
 {
        struct wm8737_priv *wm8737;
        int ret, i;
@@ -679,7 +679,7 @@ static __devinit int wm8737_i2c_probe(struct i2c_client *i2c,
 
 }
 
-static __devexit int wm8737_i2c_remove(struct i2c_client *client)
+static int wm8737_i2c_remove(struct i2c_client *client)
 {
        snd_soc_unregister_codec(&client->dev);
 
@@ -699,13 +699,13 @@ static struct i2c_driver wm8737_i2c_driver = {
                .of_match_table = wm8737_of_match,
        },
        .probe =    wm8737_i2c_probe,
-       .remove =   __devexit_p(wm8737_i2c_remove),
+       .remove =   wm8737_i2c_remove,
        .id_table = wm8737_i2c_id,
 };
 #endif
 
 #if defined(CONFIG_SPI_MASTER)
-static int __devinit wm8737_spi_probe(struct spi_device *spi)
+static int wm8737_spi_probe(struct spi_device *spi)
 {
        struct wm8737_priv *wm8737;
        int ret, i;
@@ -737,7 +737,7 @@ static int __devinit wm8737_spi_probe(struct spi_device *spi)
        return ret;
 }
 
-static int __devexit wm8737_spi_remove(struct spi_device *spi)
+static int wm8737_spi_remove(struct spi_device *spi)
 {
        snd_soc_unregister_codec(&spi->dev);
 
@@ -751,7 +751,7 @@ static struct spi_driver wm8737_spi_driver = {
                .of_match_table = wm8737_of_match,
        },
        .probe          = wm8737_spi_probe,
-       .remove         = __devexit_p(wm8737_spi_remove),
+       .remove         = wm8737_spi_remove,
 };
 #endif /* CONFIG_SPI_MASTER */
 
index 99b8ebe..b18813c 100644 (file)
@@ -562,7 +562,7 @@ static struct i2c_driver wm8741_i2c_driver = {
 #endif
 
 #if defined(CONFIG_SPI_MASTER)
-static int __devinit wm8741_spi_probe(struct spi_device *spi)
+static int wm8741_spi_probe(struct spi_device *spi)
 {
        struct wm8741_priv *wm8741;
        int ret, i;
@@ -596,7 +596,7 @@ static int __devinit wm8741_spi_probe(struct spi_device *spi)
        return ret;
 }
 
-static int __devexit wm8741_spi_remove(struct spi_device *spi)
+static int wm8741_spi_remove(struct spi_device *spi)
 {
        snd_soc_unregister_codec(&spi->dev);
        return 0;
@@ -609,7 +609,7 @@ static struct spi_driver wm8741_spi_driver = {
                .of_match_table = wm8741_of_match,
        },
        .probe          = wm8741_spi_probe,
-       .remove         = __devexit_p(wm8741_spi_remove),
+       .remove         = wm8741_spi_remove,
 };
 #endif /* CONFIG_SPI_MASTER */
 
index 7665d68..50d5ff6 100644 (file)
@@ -769,7 +769,7 @@ static const struct regmap_config wm8750_regmap = {
 };
 
 #if defined(CONFIG_SPI_MASTER)
-static int __devinit wm8750_spi_probe(struct spi_device *spi)
+static int wm8750_spi_probe(struct spi_device *spi)
 {
        struct wm8750_priv *wm8750;
        struct regmap *regmap;
@@ -791,7 +791,7 @@ static int __devinit wm8750_spi_probe(struct spi_device *spi)
        return ret;
 }
 
-static int __devexit wm8750_spi_remove(struct spi_device *spi)
+static int wm8750_spi_remove(struct spi_device *spi)
 {
        snd_soc_unregister_codec(&spi->dev);
        return 0;
@@ -812,13 +812,13 @@ static struct spi_driver wm8750_spi_driver = {
        },
        .id_table       = wm8750_spi_ids,
        .probe          = wm8750_spi_probe,
-       .remove         = __devexit_p(wm8750_spi_remove),
+       .remove         = wm8750_spi_remove,
 };
 #endif /* CONFIG_SPI_MASTER */
 
 #if defined(CONFIG_I2C) || defined(CONFIG_I2C_MODULE)
-static __devinit int wm8750_i2c_probe(struct i2c_client *i2c,
-                                     const struct i2c_device_id *id)
+static int wm8750_i2c_probe(struct i2c_client *i2c,
+                           const struct i2c_device_id *id)
 {
        struct wm8750_priv *wm8750;
        struct regmap *regmap;
@@ -840,7 +840,7 @@ static __devinit int wm8750_i2c_probe(struct i2c_client *i2c,
        return ret;
 }
 
-static __devexit int wm8750_i2c_remove(struct i2c_client *client)
+static int wm8750_i2c_remove(struct i2c_client *client)
 {
        snd_soc_unregister_codec(&client->dev);
        return 0;
@@ -860,7 +860,7 @@ static struct i2c_driver wm8750_i2c_driver = {
                .of_match_table = wm8750_of_match,
        },
        .probe =    wm8750_i2c_probe,
-       .remove =   __devexit_p(wm8750_i2c_remove),
+       .remove =   wm8750_i2c_remove,
        .id_table = wm8750_i2c_id,
 };
 #endif
index 50a5dc7..0a4ab4c 100644 (file)
@@ -1550,7 +1550,7 @@ static const struct regmap_config wm8753_regmap = {
 };
 
 #if defined(CONFIG_SPI_MASTER)
-static int __devinit wm8753_spi_probe(struct spi_device *spi)
+static int wm8753_spi_probe(struct spi_device *spi)
 {
        struct wm8753_priv *wm8753;
        int ret;
@@ -1578,7 +1578,7 @@ static int __devinit wm8753_spi_probe(struct spi_device *spi)
        return ret;
 }
 
-static int __devexit wm8753_spi_remove(struct spi_device *spi)
+static int wm8753_spi_remove(struct spi_device *spi)
 {
        snd_soc_unregister_codec(&spi->dev);
        return 0;
@@ -1591,13 +1591,13 @@ static struct spi_driver wm8753_spi_driver = {
                .of_match_table = wm8753_of_match,
        },
        .probe          = wm8753_spi_probe,
-       .remove         = __devexit_p(wm8753_spi_remove),
+       .remove         = wm8753_spi_remove,
 };
 #endif /* CONFIG_SPI_MASTER */
 
 #if defined(CONFIG_I2C) || defined(CONFIG_I2C_MODULE)
-static __devinit int wm8753_i2c_probe(struct i2c_client *i2c,
-                                     const struct i2c_device_id *id)
+static int wm8753_i2c_probe(struct i2c_client *i2c,
+                           const struct i2c_device_id *id)
 {
        struct wm8753_priv *wm8753;
        int ret;
@@ -1625,7 +1625,7 @@ static __devinit int wm8753_i2c_probe(struct i2c_client *i2c,
        return ret;
 }
 
-static __devexit int wm8753_i2c_remove(struct i2c_client *client)
+static int wm8753_i2c_remove(struct i2c_client *client)
 {
        snd_soc_unregister_codec(&client->dev);
        return 0;
@@ -1644,7 +1644,7 @@ static struct i2c_driver wm8753_i2c_driver = {
                .of_match_table = wm8753_of_match,
        },
        .probe =    wm8753_i2c_probe,
-       .remove =   __devexit_p(wm8753_i2c_remove),
+       .remove =   wm8753_i2c_remove,
        .id_table = wm8753_i2c_id,
 };
 #endif
index 0b690ba..89a18d8 100644 (file)
@@ -650,7 +650,7 @@ static const struct regmap_config wm8770_regmap = {
        .volatile_reg = wm8770_volatile_reg,
 };
 
-static int __devinit wm8770_spi_probe(struct spi_device *spi)
+static int wm8770_spi_probe(struct spi_device *spi)
 {
        struct wm8770_priv *wm8770;
        int ret, i;
@@ -697,7 +697,7 @@ static int __devinit wm8770_spi_probe(struct spi_device *spi)
        return ret;
 }
 
-static int __devexit wm8770_spi_remove(struct spi_device *spi)
+static int wm8770_spi_remove(struct spi_device *spi)
 {
        struct wm8770_priv *wm8770 = spi_get_drvdata(spi);
        int i;
@@ -718,7 +718,7 @@ static struct spi_driver wm8770_spi_driver = {
                .of_match_table = wm8770_of_match,
        },
        .probe = wm8770_spi_probe,
-       .remove = __devexit_p(wm8770_spi_remove)
+       .remove = wm8770_spi_remove
 };
 
 module_spi_driver(wm8770_spi_driver);
index c32249d..f31017e 100644 (file)
@@ -492,7 +492,7 @@ static const struct regmap_config wm8776_regmap = {
 };
 
 #if defined(CONFIG_SPI_MASTER)
-static int __devinit wm8776_spi_probe(struct spi_device *spi)
+static int wm8776_spi_probe(struct spi_device *spi)
 {
        struct wm8776_priv *wm8776;
        int ret;
@@ -514,7 +514,7 @@ static int __devinit wm8776_spi_probe(struct spi_device *spi)
        return ret;
 }
 
-static int __devexit wm8776_spi_remove(struct spi_device *spi)
+static int wm8776_spi_remove(struct spi_device *spi)
 {
        snd_soc_unregister_codec(&spi->dev);
        return 0;
@@ -527,13 +527,13 @@ static struct spi_driver wm8776_spi_driver = {
                .of_match_table = wm8776_of_match,
        },
        .probe          = wm8776_spi_probe,
-       .remove         = __devexit_p(wm8776_spi_remove),
+       .remove         = wm8776_spi_remove,
 };
 #endif /* CONFIG_SPI_MASTER */
 
 #if defined(CONFIG_I2C) || defined(CONFIG_I2C_MODULE)
-static __devinit int wm8776_i2c_probe(struct i2c_client *i2c,
-                                     const struct i2c_device_id *id)
+static int wm8776_i2c_probe(struct i2c_client *i2c,
+                           const struct i2c_device_id *id)
 {
        struct wm8776_priv *wm8776;
        int ret;
@@ -555,7 +555,7 @@ static __devinit int wm8776_i2c_probe(struct i2c_client *i2c,
        return ret;
 }
 
-static __devexit int wm8776_i2c_remove(struct i2c_client *client)
+static int wm8776_i2c_remove(struct i2c_client *client)
 {
        snd_soc_unregister_codec(&client->dev);
        return 0;
@@ -575,7 +575,7 @@ static struct i2c_driver wm8776_i2c_driver = {
                .of_match_table = wm8776_of_match,
        },
        .probe =    wm8776_i2c_probe,
-       .remove =   __devexit_p(wm8776_i2c_remove),
+       .remove =   wm8776_i2c_remove,
        .id_table = wm8776_i2c_id,
 };
 #endif
index 3fdea98..f1fdbf6 100644 (file)
@@ -42,13 +42,13 @@ static struct snd_soc_dai_driver wm8782_dai = {
 
 static struct snd_soc_codec_driver soc_codec_dev_wm8782;
 
-static __devinit int wm8782_probe(struct platform_device *pdev)
+static int wm8782_probe(struct platform_device *pdev)
 {
        return snd_soc_register_codec(&pdev->dev,
                        &soc_codec_dev_wm8782, &wm8782_dai, 1);
 }
 
-static int __devexit wm8782_remove(struct platform_device *pdev)
+static int wm8782_remove(struct platform_device *pdev)
 {
        snd_soc_unregister_codec(&pdev->dev);
        return 0;
@@ -60,7 +60,7 @@ static struct platform_driver wm8782_codec_driver = {
                .owner = THIS_MODULE,
        },
        .probe = wm8782_probe,
-       .remove = __devexit_p(wm8782_remove),
+       .remove = wm8782_remove,
 };
 
 module_platform_driver(wm8782_codec_driver);
index 837bfb5..d321a87 100644 (file)
@@ -702,7 +702,7 @@ static struct regmap_config wm8804_regmap_config = {
 };
 
 #if defined(CONFIG_SPI_MASTER)
-static int __devinit wm8804_spi_probe(struct spi_device *spi)
+static int wm8804_spi_probe(struct spi_device *spi)
 {
        struct wm8804_priv *wm8804;
        int ret;
@@ -725,7 +725,7 @@ static int __devinit wm8804_spi_probe(struct spi_device *spi)
        return ret;
 }
 
-static int __devexit wm8804_spi_remove(struct spi_device *spi)
+static int wm8804_spi_remove(struct spi_device *spi)
 {
        snd_soc_unregister_codec(&spi->dev);
        return 0;
@@ -738,13 +738,13 @@ static struct spi_driver wm8804_spi_driver = {
                .of_match_table = wm8804_of_match,
        },
        .probe = wm8804_spi_probe,
-       .remove = __devexit_p(wm8804_spi_remove)
+       .remove = wm8804_spi_remove
 };
 #endif
 
 #if defined(CONFIG_I2C) || defined(CONFIG_I2C_MODULE)
-static __devinit int wm8804_i2c_probe(struct i2c_client *i2c,
-                                     const struct i2c_device_id *id)
+static int wm8804_i2c_probe(struct i2c_client *i2c,
+                           const struct i2c_device_id *id)
 {
        struct wm8804_priv *wm8804;
        int ret;
@@ -766,7 +766,7 @@ static __devinit int wm8804_i2c_probe(struct i2c_client *i2c,
        return ret;
 }
 
-static __devexit int wm8804_i2c_remove(struct i2c_client *i2c)
+static int wm8804_i2c_remove(struct i2c_client *i2c)
 {
        snd_soc_unregister_codec(&i2c->dev);
        return 0;
@@ -785,7 +785,7 @@ static struct i2c_driver wm8804_i2c_driver = {
                .of_match_table = wm8804_of_match,
        },
        .probe = wm8804_i2c_probe,
-       .remove = __devexit_p(wm8804_i2c_remove),
+       .remove = wm8804_i2c_remove,
        .id_table = wm8804_i2c_id
 };
 #endif
index e781f86..7c8257c 100644 (file)
@@ -1247,7 +1247,7 @@ static const struct regmap_config wm8900_regmap = {
 };
 
 #if defined(CONFIG_SPI_MASTER)
-static int __devinit wm8900_spi_probe(struct spi_device *spi)
+static int wm8900_spi_probe(struct spi_device *spi)
 {
        struct wm8900_priv *wm8900;
        int ret;
@@ -1269,7 +1269,7 @@ static int __devinit wm8900_spi_probe(struct spi_device *spi)
        return ret;
 }
 
-static int __devexit wm8900_spi_remove(struct spi_device *spi)
+static int wm8900_spi_remove(struct spi_device *spi)
 {
        snd_soc_unregister_codec(&spi->dev);
        return 0;
@@ -1281,13 +1281,13 @@ static struct spi_driver wm8900_spi_driver = {
                .owner  = THIS_MODULE,
        },
        .probe          = wm8900_spi_probe,
-       .remove         = __devexit_p(wm8900_spi_remove),
+       .remove         = wm8900_spi_remove,
 };
 #endif /* CONFIG_SPI_MASTER */
 
 #if defined(CONFIG_I2C) || defined(CONFIG_I2C_MODULE)
-static __devinit int wm8900_i2c_probe(struct i2c_client *i2c,
-                                     const struct i2c_device_id *id)
+static int wm8900_i2c_probe(struct i2c_client *i2c,
+                           const struct i2c_device_id *id)
 {
        struct wm8900_priv *wm8900;
        int ret;
@@ -1309,7 +1309,7 @@ static __devinit int wm8900_i2c_probe(struct i2c_client *i2c,
        return ret;
 }
 
-static __devexit int wm8900_i2c_remove(struct i2c_client *client)
+static int wm8900_i2c_remove(struct i2c_client *client)
 {
        snd_soc_unregister_codec(&client->dev);
        return 0;
@@ -1327,7 +1327,7 @@ static struct i2c_driver wm8900_i2c_driver = {
                .owner = THIS_MODULE,
        },
        .probe =    wm8900_i2c_probe,
-       .remove =   __devexit_p(wm8900_i2c_remove),
+       .remove =   wm8900_i2c_remove,
        .id_table = wm8900_i2c_id,
 };
 #endif
index 839414f..134e41c 100644 (file)
@@ -2020,8 +2020,8 @@ static int wm8903_set_pdata_from_of(struct i2c_client *i2c,
        return 0;
 }
 
-static __devinit int wm8903_i2c_probe(struct i2c_client *i2c,
-                                     const struct i2c_device_id *id)
+static int wm8903_i2c_probe(struct i2c_client *i2c,
+                           const struct i2c_device_id *id)
 {
        struct wm8903_platform_data *pdata = dev_get_platdata(&i2c->dev);
        struct wm8903_priv *wm8903;
@@ -2206,7 +2206,7 @@ err:
        return ret;
 }
 
-static __devexit int wm8903_i2c_remove(struct i2c_client *client)
+static int wm8903_i2c_remove(struct i2c_client *client)
 {
        struct wm8903_priv *wm8903 = i2c_get_clientdata(client);
 
@@ -2237,7 +2237,7 @@ static struct i2c_driver wm8903_i2c_driver = {
                .of_match_table = wm8903_of_match,
        },
        .probe =    wm8903_i2c_probe,
-       .remove =   __devexit_p(wm8903_i2c_remove),
+       .remove =   wm8903_i2c_remove,
        .id_table = wm8903_i2c_id,
 };
 
index 7c8df52..3ff195c 100644 (file)
@@ -2111,8 +2111,8 @@ static const struct regmap_config wm8904_regmap = {
        .num_reg_defaults = ARRAY_SIZE(wm8904_reg_defaults),
 };
 
-static __devinit int wm8904_i2c_probe(struct i2c_client *i2c,
-                                     const struct i2c_device_id *id)
+static int wm8904_i2c_probe(struct i2c_client *i2c,
+                           const struct i2c_device_id *id)
 {
        struct wm8904_priv *wm8904;
        unsigned int val;
@@ -2247,7 +2247,7 @@ err_enable:
        return ret;
 }
 
-static __devexit int wm8904_i2c_remove(struct i2c_client *client)
+static int wm8904_i2c_remove(struct i2c_client *client)
 {
        snd_soc_unregister_codec(&client->dev);
        return 0;
@@ -2267,7 +2267,7 @@ static struct i2c_driver wm8904_i2c_driver = {
                .owner = THIS_MODULE,
        },
        .probe =    wm8904_i2c_probe,
-       .remove =   __devexit_p(wm8904_i2c_remove),
+       .remove =   wm8904_i2c_remove,
        .id_table = wm8904_i2c_id,
 };
 
index b20aa4e..b1591c6 100644 (file)
@@ -742,8 +742,8 @@ static struct snd_soc_codec_driver soc_codec_dev_wm8940 = {
        .volatile_register = wm8940_volatile_register,
 };
 
-static __devinit int wm8940_i2c_probe(struct i2c_client *i2c,
-                                     const struct i2c_device_id *id)
+static int wm8940_i2c_probe(struct i2c_client *i2c,
+                           const struct i2c_device_id *id)
 {
        struct wm8940_priv *wm8940;
        int ret;
@@ -762,7 +762,7 @@ static __devinit int wm8940_i2c_probe(struct i2c_client *i2c,
        return ret;
 }
 
-static __devexit int wm8940_i2c_remove(struct i2c_client *client)
+static int wm8940_i2c_remove(struct i2c_client *client)
 {
        snd_soc_unregister_codec(&client->dev);
 
@@ -781,7 +781,7 @@ static struct i2c_driver wm8940_i2c_driver = {
                .owner = THIS_MODULE,
        },
        .probe =    wm8940_i2c_probe,
-       .remove =   __devexit_p(wm8940_i2c_remove),
+       .remove =   wm8940_i2c_remove,
        .id_table = wm8940_i2c_id,
 };
 
index 7a82b7d..82c8ba9 100644 (file)
@@ -1012,8 +1012,8 @@ static const struct regmap_config wm8955_regmap = {
        .num_reg_defaults = ARRAY_SIZE(wm8955_reg_defaults),
 };
 
-static __devinit int wm8955_i2c_probe(struct i2c_client *i2c,
-                                     const struct i2c_device_id *id)
+static int wm8955_i2c_probe(struct i2c_client *i2c,
+                           const struct i2c_device_id *id)
 {
        struct wm8955_priv *wm8955;
        int ret;
@@ -1039,7 +1039,7 @@ static __devinit int wm8955_i2c_probe(struct i2c_client *i2c,
        return ret;
 }
 
-static __devexit int wm8955_i2c_remove(struct i2c_client *client)
+static int wm8955_i2c_remove(struct i2c_client *client)
 {
        snd_soc_unregister_codec(&client->dev);
 
@@ -1058,7 +1058,7 @@ static struct i2c_driver wm8955_i2c_driver = {
                .owner = THIS_MODULE,
        },
        .probe =    wm8955_i2c_probe,
-       .remove =   __devexit_p(wm8955_i2c_remove),
+       .remove =   wm8955_i2c_remove,
        .id_table = wm8955_i2c_id,
 };
 
index cf09cb6..9bb9273 100644 (file)
@@ -1028,8 +1028,8 @@ static const struct regmap_config wm8960_regmap = {
        .volatile_reg = wm8960_volatile,
 };
 
-static __devinit int wm8960_i2c_probe(struct i2c_client *i2c,
-                                     const struct i2c_device_id *id)
+static int wm8960_i2c_probe(struct i2c_client *i2c,
+                           const struct i2c_device_id *id)
 {
        struct wm8960_data *pdata = dev_get_platdata(&i2c->dev);
        struct wm8960_priv *wm8960;
@@ -1062,7 +1062,7 @@ static __devinit int wm8960_i2c_probe(struct i2c_client *i2c,
        return ret;
 }
 
-static __devexit int wm8960_i2c_remove(struct i2c_client *client)
+static int wm8960_i2c_remove(struct i2c_client *client)
 {
        snd_soc_unregister_codec(&client->dev);
        return 0;
@@ -1080,7 +1080,7 @@ static struct i2c_driver wm8960_i2c_driver = {
                .owner = THIS_MODULE,
        },
        .probe =    wm8960_i2c_probe,
-       .remove =   __devexit_p(wm8960_i2c_remove),
+       .remove =   wm8960_i2c_remove,
        .id_table = wm8960_i2c_id,
 };
 
index f387670..900328e 100644 (file)
@@ -937,8 +937,8 @@ static const struct regmap_config wm8961_regmap = {
        .readable_reg = wm8961_readable,
 };
 
-static __devinit int wm8961_i2c_probe(struct i2c_client *i2c,
-                                     const struct i2c_device_id *id)
+static int wm8961_i2c_probe(struct i2c_client *i2c,
+                           const struct i2c_device_id *id)
 {
        struct wm8961_priv *wm8961;
        unsigned int val;
@@ -993,7 +993,7 @@ static __devinit int wm8961_i2c_probe(struct i2c_client *i2c,
        return ret;
 }
 
-static __devexit int wm8961_i2c_remove(struct i2c_client *client)
+static int wm8961_i2c_remove(struct i2c_client *client)
 {
        snd_soc_unregister_codec(&client->dev);
 
@@ -1012,7 +1012,7 @@ static struct i2c_driver wm8961_i2c_driver = {
                .owner = THIS_MODULE,
        },
        .probe =    wm8961_i2c_probe,
-       .remove =   __devexit_p(wm8961_i2c_remove),
+       .remove =   wm8961_i2c_remove,
        .id_table = wm8961_i2c_id,
 };
 
index 8fd38cb..bd4b0db 100644 (file)
@@ -3588,8 +3588,8 @@ static const struct regmap_config wm8962_regmap = {
        .cache_type = REGCACHE_RBTREE,
 };
 
-static __devinit int wm8962_i2c_probe(struct i2c_client *i2c,
-                                     const struct i2c_device_id *id)
+static int wm8962_i2c_probe(struct i2c_client *i2c,
+                           const struct i2c_device_id *id)
 {
        struct wm8962_pdata *pdata = dev_get_platdata(&i2c->dev);
        struct wm8962_priv *wm8962;
@@ -3699,7 +3699,7 @@ err:
        return ret;
 }
 
-static __devexit int wm8962_i2c_remove(struct i2c_client *client)
+static int wm8962_i2c_remove(struct i2c_client *client)
 {
        snd_soc_unregister_codec(&client->dev);
        return 0;
@@ -3765,7 +3765,7 @@ static struct i2c_driver wm8962_i2c_driver = {
                .pm = &wm8962_pm,
        },
        .probe =    wm8962_i2c_probe,
-       .remove =   __devexit_p(wm8962_i2c_remove),
+       .remove =   wm8962_i2c_remove,
        .id_table = wm8962_i2c_id,
 };
 
index 70dd27e..67aba78 100644 (file)
@@ -717,8 +717,8 @@ static const struct regmap_config wm8971_regmap = {
        .cache_type = REGCACHE_RBTREE,
 };
 
-static __devinit int wm8971_i2c_probe(struct i2c_client *i2c,
-                                     const struct i2c_device_id *id)
+static int wm8971_i2c_probe(struct i2c_client *i2c,
+                           const struct i2c_device_id *id)
 {
        struct wm8971_priv *wm8971;
        struct regmap *regmap;
@@ -741,7 +741,7 @@ static __devinit int wm8971_i2c_probe(struct i2c_client *i2c,
        return ret;
 }
 
-static __devexit int wm8971_i2c_remove(struct i2c_client *client)
+static int wm8971_i2c_remove(struct i2c_client *client)
 {
        snd_soc_unregister_codec(&client->dev);
        return 0;
@@ -759,7 +759,7 @@ static struct i2c_driver wm8971_i2c_driver = {
                .owner = THIS_MODULE,
        },
        .probe =    wm8971_i2c_probe,
-       .remove =   __devexit_p(wm8971_i2c_remove),
+       .remove =   wm8971_i2c_remove,
        .id_table = wm8971_i2c_id,
 };
 
index 9a39511..ea58b73 100644 (file)
@@ -625,8 +625,8 @@ static struct snd_soc_codec_driver soc_codec_dev_wm8974 = {
        .num_dapm_routes = ARRAY_SIZE(wm8974_dapm_routes),
 };
 
-static __devinit int wm8974_i2c_probe(struct i2c_client *i2c,
-                                     const struct i2c_device_id *id)
+static int wm8974_i2c_probe(struct i2c_client *i2c,
+                           const struct i2c_device_id *id)
 {
        int ret;
 
@@ -636,7 +636,7 @@ static __devinit int wm8974_i2c_probe(struct i2c_client *i2c,
        return ret;
 }
 
-static __devexit int wm8974_i2c_remove(struct i2c_client *client)
+static int wm8974_i2c_remove(struct i2c_client *client)
 {
        snd_soc_unregister_codec(&client->dev);
 
@@ -655,7 +655,7 @@ static struct i2c_driver wm8974_i2c_driver = {
                .owner = THIS_MODULE,
        },
        .probe =    wm8974_i2c_probe,
-       .remove =   __devexit_p(wm8974_i2c_remove),
+       .remove =   wm8974_i2c_remove,
        .id_table = wm8974_i2c_id,
 };
 
index 8c1dac9..f347af3 100644 (file)
@@ -1035,8 +1035,8 @@ static const struct regmap_config wm8978_regmap_config = {
        .num_reg_defaults = ARRAY_SIZE(wm8978_reg_defaults),
 };
 
-static __devinit int wm8978_i2c_probe(struct i2c_client *i2c,
-                                     const struct i2c_device_id *id)
+static int wm8978_i2c_probe(struct i2c_client *i2c,
+                           const struct i2c_device_id *id)
 {
        struct wm8978_priv *wm8978;
        int ret;
@@ -1046,7 +1046,7 @@ static __devinit int wm8978_i2c_probe(struct i2c_client *i2c,
        if (wm8978 == NULL)
                return -ENOMEM;
 
-       wm8978->regmap = regmap_init_i2c(i2c, &wm8978_regmap_config);
+       wm8978->regmap = devm_regmap_init_i2c(i2c, &wm8978_regmap_config);
        if (IS_ERR(wm8978->regmap)) {
                ret = PTR_ERR(wm8978->regmap);
                dev_err(&i2c->dev, "Failed to allocate regmap: %d\n", ret);
@@ -1059,29 +1059,22 @@ static __devinit int wm8978_i2c_probe(struct i2c_client *i2c,
        ret = regmap_write(wm8978->regmap, WM8978_RESET, 0);
        if (ret != 0) {
                dev_err(&i2c->dev, "Failed to issue reset: %d\n", ret);
-               goto err;
+               return ret;
        }
 
        ret = snd_soc_register_codec(&i2c->dev,
                        &soc_codec_dev_wm8978, &wm8978_dai, 1);
        if (ret != 0) {
                dev_err(&i2c->dev, "Failed to register CODEC: %d\n", ret);
-               goto err;
+               return ret;
        }
 
        return 0;
-
-err:
-       regmap_exit(wm8978->regmap);
-       return ret;
 }
 
-static __devexit int wm8978_i2c_remove(struct i2c_client *client)
+static int wm8978_i2c_remove(struct i2c_client *client)
 {
-       struct wm8978_priv *wm8978 = i2c_get_clientdata(client);
-
        snd_soc_unregister_codec(&client->dev);
-       regmap_exit(wm8978->regmap);
 
        return 0;
 }
@@ -1098,7 +1091,7 @@ static struct i2c_driver wm8978_i2c_driver = {
                .owner = THIS_MODULE,
        },
        .probe =    wm8978_i2c_probe,
-       .remove =   __devexit_p(wm8978_i2c_remove),
+       .remove =   wm8978_i2c_remove,
        .id_table = wm8978_i2c_id,
 };
 
index d8879f2..9fe1e04 100644 (file)
@@ -1087,7 +1087,7 @@ static const struct regmap_config wm8983_regmap = {
 };
 
 #if defined(CONFIG_SPI_MASTER)
-static int __devinit wm8983_spi_probe(struct spi_device *spi)
+static int wm8983_spi_probe(struct spi_device *spi)
 {
        struct wm8983_priv *wm8983;
        int ret;
@@ -1110,7 +1110,7 @@ static int __devinit wm8983_spi_probe(struct spi_device *spi)
        return ret;
 }
 
-static int __devexit wm8983_spi_remove(struct spi_device *spi)
+static int wm8983_spi_remove(struct spi_device *spi)
 {
        snd_soc_unregister_codec(&spi->dev);
        return 0;
@@ -1122,13 +1122,13 @@ static struct spi_driver wm8983_spi_driver = {
                .owner = THIS_MODULE,
        },
        .probe = wm8983_spi_probe,
-       .remove = __devexit_p(wm8983_spi_remove)
+       .remove = wm8983_spi_remove
 };
 #endif
 
 #if defined(CONFIG_I2C) || defined(CONFIG_I2C_MODULE)
-static __devinit int wm8983_i2c_probe(struct i2c_client *i2c,
-                                     const struct i2c_device_id *id)
+static int wm8983_i2c_probe(struct i2c_client *i2c,
+                           const struct i2c_device_id *id)
 {
        struct wm8983_priv *wm8983;
        int ret;
@@ -1152,7 +1152,7 @@ static __devinit int wm8983_i2c_probe(struct i2c_client *i2c,
        return ret;
 }
 
-static __devexit int wm8983_i2c_remove(struct i2c_client *client)
+static int wm8983_i2c_remove(struct i2c_client *client)
 {
        snd_soc_unregister_codec(&client->dev);
        return 0;
@@ -1170,7 +1170,7 @@ static struct i2c_driver wm8983_i2c_driver = {
                .owner = THIS_MODULE,
        },
        .probe = wm8983_i2c_probe,
-       .remove = __devexit_p(wm8983_i2c_remove),
+       .remove = wm8983_i2c_remove,
        .id_table = wm8983_i2c_id
 };
 #endif
index 7b3f409..ab37826 100644 (file)
@@ -1111,7 +1111,7 @@ static const struct regmap_config wm8985_regmap = {
 };
 
 #if defined(CONFIG_SPI_MASTER)
-static int __devinit wm8985_spi_probe(struct spi_device *spi)
+static int wm8985_spi_probe(struct spi_device *spi)
 {
        struct wm8985_priv *wm8985;
        int ret;
@@ -1135,7 +1135,7 @@ static int __devinit wm8985_spi_probe(struct spi_device *spi)
        return ret;
 }
 
-static int __devexit wm8985_spi_remove(struct spi_device *spi)
+static int wm8985_spi_remove(struct spi_device *spi)
 {
        snd_soc_unregister_codec(&spi->dev);
        return 0;
@@ -1147,13 +1147,13 @@ static struct spi_driver wm8985_spi_driver = {
                .owner = THIS_MODULE,
        },
        .probe = wm8985_spi_probe,
-       .remove = __devexit_p(wm8985_spi_remove)
+       .remove = wm8985_spi_remove
 };
 #endif
 
 #if defined(CONFIG_I2C) || defined(CONFIG_I2C_MODULE)
-static __devinit int wm8985_i2c_probe(struct i2c_client *i2c,
-                                     const struct i2c_device_id *id)
+static int wm8985_i2c_probe(struct i2c_client *i2c,
+                           const struct i2c_device_id *id)
 {
        struct wm8985_priv *wm8985;
        int ret;
@@ -1177,7 +1177,7 @@ static __devinit int wm8985_i2c_probe(struct i2c_client *i2c,
        return ret;
 }
 
-static __devexit int wm8985_i2c_remove(struct i2c_client *i2c)
+static int wm8985_i2c_remove(struct i2c_client *i2c)
 {
        snd_soc_unregister_codec(&i2c->dev);
        return 0;
@@ -1195,7 +1195,7 @@ static struct i2c_driver wm8985_i2c_driver = {
                .owner = THIS_MODULE,
        },
        .probe = wm8985_i2c_probe,
-       .remove = __devexit_p(wm8985_i2c_remove),
+       .remove = wm8985_i2c_remove,
        .id_table = wm8985_i2c_id
 };
 #endif
index 715788d..39b9acc 100644 (file)
@@ -872,7 +872,7 @@ static struct regmap_config wm8988_regmap = {
 };
 
 #if defined(CONFIG_SPI_MASTER)
-static int __devinit wm8988_spi_probe(struct spi_device *spi)
+static int wm8988_spi_probe(struct spi_device *spi)
 {
        struct wm8988_priv *wm8988;
        int ret;
@@ -896,7 +896,7 @@ static int __devinit wm8988_spi_probe(struct spi_device *spi)
        return ret;
 }
 
-static int __devexit wm8988_spi_remove(struct spi_device *spi)
+static int wm8988_spi_remove(struct spi_device *spi)
 {
        snd_soc_unregister_codec(&spi->dev);
        return 0;
@@ -908,13 +908,13 @@ static struct spi_driver wm8988_spi_driver = {
                .owner  = THIS_MODULE,
        },
        .probe          = wm8988_spi_probe,
-       .remove         = __devexit_p(wm8988_spi_remove),
+       .remove         = wm8988_spi_remove,
 };
 #endif /* CONFIG_SPI_MASTER */
 
 #if defined(CONFIG_I2C) || defined(CONFIG_I2C_MODULE)
-static __devinit int wm8988_i2c_probe(struct i2c_client *i2c,
-                                     const struct i2c_device_id *id)
+static int wm8988_i2c_probe(struct i2c_client *i2c,
+                           const struct i2c_device_id *id)
 {
        struct wm8988_priv *wm8988;
        int ret;
@@ -938,7 +938,7 @@ static __devinit int wm8988_i2c_probe(struct i2c_client *i2c,
        return ret;
 }
 
-static __devexit int wm8988_i2c_remove(struct i2c_client *client)
+static int wm8988_i2c_remove(struct i2c_client *client)
 {
        snd_soc_unregister_codec(&client->dev);
        return 0;
@@ -956,7 +956,7 @@ static struct i2c_driver wm8988_i2c_driver = {
                .owner = THIS_MODULE,
        },
        .probe =    wm8988_i2c_probe,
-       .remove =   __devexit_p(wm8988_i2c_remove),
+       .remove =   wm8988_i2c_remove,
        .id_table = wm8988_i2c_id,
 };
 #endif
index c28c83e..837978e 100644 (file)
@@ -1382,8 +1382,8 @@ static struct snd_soc_codec_driver soc_codec_dev_wm8990 = {
 };
 
 #if defined(CONFIG_I2C) || defined(CONFIG_I2C_MODULE)
-static __devinit int wm8990_i2c_probe(struct i2c_client *i2c,
-                                     const struct i2c_device_id *id)
+static int wm8990_i2c_probe(struct i2c_client *i2c,
+                           const struct i2c_device_id *id)
 {
        struct wm8990_priv *wm8990;
        int ret;
@@ -1401,7 +1401,7 @@ static __devinit int wm8990_i2c_probe(struct i2c_client *i2c,
        return ret;
 }
 
-static __devexit int wm8990_i2c_remove(struct i2c_client *client)
+static int wm8990_i2c_remove(struct i2c_client *client)
 {
        snd_soc_unregister_codec(&client->dev);
 
@@ -1420,7 +1420,7 @@ static struct i2c_driver wm8990_i2c_driver = {
                .owner = THIS_MODULE,
        },
        .probe =    wm8990_i2c_probe,
-       .remove =   __devexit_p(wm8990_i2c_remove),
+       .remove =   wm8990_i2c_remove,
        .id_table = wm8990_i2c_id,
 };
 #endif
index fe439f0..3a39df7 100644 (file)
@@ -1357,8 +1357,8 @@ static struct snd_soc_codec_driver soc_codec_dev_wm8991 = {
        .reg_cache_default = wm8991_reg_defs
 };
 
-static __devinit int wm8991_i2c_probe(struct i2c_client *i2c,
-                                     const struct i2c_device_id *id)
+static int wm8991_i2c_probe(struct i2c_client *i2c,
+                           const struct i2c_device_id *id)
 {
        struct wm8991_priv *wm8991;
        int ret;
@@ -1376,7 +1376,7 @@ static __devinit int wm8991_i2c_probe(struct i2c_client *i2c,
        return ret;
 }
 
-static __devexit int wm8991_i2c_remove(struct i2c_client *client)
+static int wm8991_i2c_remove(struct i2c_client *client)
 {
        snd_soc_unregister_codec(&client->dev);
 
@@ -1395,7 +1395,7 @@ static struct i2c_driver wm8991_i2c_driver = {
                .owner = THIS_MODULE,
        },
        .probe = wm8991_i2c_probe,
-       .remove = __devexit_p(wm8991_i2c_remove),
+       .remove = wm8991_i2c_remove,
        .id_table = wm8991_i2c_id,
 };
 
index 347a359..433d59a 100644 (file)
@@ -1645,8 +1645,8 @@ static struct snd_soc_codec_driver soc_codec_dev_wm8993 = {
        .set_bias_level = wm8993_set_bias_level,
 };
 
-static __devinit int wm8993_i2c_probe(struct i2c_client *i2c,
-                                     const struct i2c_device_id *id)
+static int wm8993_i2c_probe(struct i2c_client *i2c,
+                           const struct i2c_device_id *id)
 {
        struct wm8993_priv *wm8993;
        unsigned int reg;
@@ -1745,7 +1745,7 @@ err_enable:
        return ret;
 }
 
-static __devexit int wm8993_i2c_remove(struct i2c_client *i2c)
+static int wm8993_i2c_remove(struct i2c_client *i2c)
 {
        struct wm8993_priv *wm8993 = i2c_get_clientdata(i2c);
 
@@ -1769,7 +1769,7 @@ static struct i2c_driver wm8993_i2c_driver = {
                .owner = THIS_MODULE,
        },
        .probe =    wm8993_i2c_probe,
-       .remove =   __devexit_p(wm8993_i2c_remove),
+       .remove =   wm8993_i2c_remove,
        .id_table = wm8993_i2c_id,
 };
 
index 302f69a..3b269fa 100644 (file)
@@ -91,8 +91,6 @@ static int wm8994_retune_mobile_base[] = {
        WM8994_AIF2_EQ_GAINS_1,
 };
 
-static void wm8958_default_micdet(u16 status, void *data);
-
 static const struct wm8958_micd_rate micdet_rates[] = {
        { 32768,       true,  1, 4 },
        { 32768,       false, 1, 1 },
@@ -116,9 +114,6 @@ static void wm8958_micd_set_rate(struct snd_soc_codec *codec)
        const struct wm8958_micd_rate *rates;
        int num_rates;
 
-       if (wm8994->jack_cb != wm8958_default_micdet)
-               return;
-
        idle = !wm8994->jack_mic;
 
        sysclk = snd_soc_read(codec, WM8994_CLOCKING_1);
@@ -740,7 +735,7 @@ static void wm1811_jackdet_set_mode(struct snd_soc_codec *codec, u16 mode)
 {
        struct wm8994_priv *wm8994 = snd_soc_codec_get_drvdata(codec);
 
-       if (!wm8994->jackdet || !wm8994->jack_cb)
+       if (!wm8994->jackdet || !wm8994->micdet[0].jack)
                return;
 
        if (wm8994->active_refcount)
@@ -3405,38 +3400,80 @@ static irqreturn_t wm8994_mic_irq(int irq, void *data)
        return IRQ_HANDLED;
 }
 
-/* Default microphone detection handler for WM8958 - the user can
- * override this if they wish.
- */
-static void wm8958_default_micdet(u16 status, void *data)
+static void wm1811_micd_stop(struct snd_soc_codec *codec)
+{
+       struct wm8994_priv *wm8994 = snd_soc_codec_get_drvdata(codec);
+
+       if (!wm8994->jackdet)
+               return;
+
+       mutex_lock(&wm8994->accdet_lock);
+
+       snd_soc_update_bits(codec, WM8958_MIC_DETECT_1, WM8958_MICD_ENA, 0);
+
+       wm1811_jackdet_set_mode(codec, WM1811_JACKDET_MODE_JACK);
+
+       mutex_unlock(&wm8994->accdet_lock);
+
+       if (wm8994->wm8994->pdata.jd_ext_cap)
+               snd_soc_dapm_disable_pin(&codec->dapm,
+                                        "MICBIAS2");
+}
+
+static void wm8958_button_det(struct snd_soc_codec *codec, u16 status)
 {
-       struct snd_soc_codec *codec = data;
        struct wm8994_priv *wm8994 = snd_soc_codec_get_drvdata(codec);
        int report;
 
-       dev_dbg(codec->dev, "MICDET %x\n", status);
+       report = 0;
+       if (status & 0x4)
+               report |= SND_JACK_BTN_0;
+
+       if (status & 0x8)
+               report |= SND_JACK_BTN_1;
+
+       if (status & 0x10)
+               report |= SND_JACK_BTN_2;
+
+       if (status & 0x20)
+               report |= SND_JACK_BTN_3;
+
+       if (status & 0x40)
+               report |= SND_JACK_BTN_4;
+
+       if (status & 0x80)
+               report |= SND_JACK_BTN_5;
+
+       snd_soc_jack_report(wm8994->micdet[0].jack, report,
+                           wm8994->btn_mask);
+}
+
+static void wm8958_mic_id(void *data, u16 status)
+{
+       struct snd_soc_codec *codec = data;
+       struct wm8994_priv *wm8994 = snd_soc_codec_get_drvdata(codec);
 
        /* Either nothing present or just starting detection */
        if (!(status & WM8958_MICD_STS)) {
-               if (!wm8994->jackdet) {
-                       /* If nothing present then clear our statuses */
-                       dev_dbg(codec->dev, "Detected open circuit\n");
-                       wm8994->jack_mic = false;
-                       wm8994->mic_detecting = true;
+               /* If nothing present then clear our statuses */
+               dev_dbg(codec->dev, "Detected open circuit\n");
+               wm8994->jack_mic = false;
+               wm8994->mic_detecting = true;
 
-                       wm8958_micd_set_rate(codec);
+               wm1811_micd_stop(codec);
 
-                       snd_soc_jack_report(wm8994->micdet[0].jack, 0,
-                                           wm8994->btn_mask |
-                                           SND_JACK_HEADSET);
-               }
+               wm8958_micd_set_rate(codec);
+
+               snd_soc_jack_report(wm8994->micdet[0].jack, 0,
+                                   wm8994->btn_mask |
+                                   SND_JACK_HEADSET);
                return;
        }
 
        /* If the measurement is showing a high impedence we've got a
         * microphone.
         */
-       if (wm8994->mic_detecting && (status & 0x600)) {
+       if (status & 0x600) {
                dev_dbg(codec->dev, "Detected microphone\n");
 
                wm8994->mic_detecting = false;
@@ -3449,57 +3486,18 @@ static void wm8958_default_micdet(u16 status, void *data)
        }
 
 
-       if (wm8994->mic_detecting && status & 0xfc) {
+       if (status & 0xfc) {
                dev_dbg(codec->dev, "Detected headphone\n");
                wm8994->mic_detecting = false;
 
                wm8958_micd_set_rate(codec);
 
                /* If we have jackdet that will detect removal */
-               if (wm8994->jackdet) {
-                       mutex_lock(&wm8994->accdet_lock);
-
-                       snd_soc_update_bits(codec, WM8958_MIC_DETECT_1,
-                                           WM8958_MICD_ENA, 0);
-
-                       wm1811_jackdet_set_mode(codec,
-                                               WM1811_JACKDET_MODE_JACK);
-
-                       mutex_unlock(&wm8994->accdet_lock);
-
-                       if (wm8994->wm8994->pdata.jd_ext_cap)
-                               snd_soc_dapm_disable_pin(&codec->dapm,
-                                                        "MICBIAS2");
-               }
+               wm1811_micd_stop(codec);
 
                snd_soc_jack_report(wm8994->micdet[0].jack, SND_JACK_HEADPHONE,
                                    SND_JACK_HEADSET);
        }
-
-       /* Report short circuit as a button */
-       if (wm8994->jack_mic) {
-               report = 0;
-               if (status & 0x4)
-                       report |= SND_JACK_BTN_0;
-
-               if (status & 0x8)
-                       report |= SND_JACK_BTN_1;
-
-               if (status & 0x10)
-                       report |= SND_JACK_BTN_2;
-
-               if (status & 0x20)
-                       report |= SND_JACK_BTN_3;
-
-               if (status & 0x40)
-                       report |= SND_JACK_BTN_4;
-
-               if (status & 0x80)
-                       report |= SND_JACK_BTN_5;
-
-               snd_soc_jack_report(wm8994->micdet[0].jack, report,
-                                   wm8994->btn_mask);
-       }
 }
 
 /* Deferred mic detection to allow for extra settling time */
@@ -3523,15 +3521,20 @@ static void wm1811_mic_work(struct work_struct *work)
 
        dev_dbg(codec->dev, "Starting mic detection\n");
 
-       /*
-        * Start off measument of microphone impedence to find out
-        * what's actually there.
-        */
-       wm8994->mic_detecting = true;
-       wm1811_jackdet_set_mode(codec, WM1811_JACKDET_MODE_MIC);
+       /* Use a user-supplied callback if we have one */
+       if (wm8994->micd_cb) {
+               wm8994->micd_cb(wm8994->micd_cb_data);
+       } else {
+               /*
+                * Start off measument of microphone impedence to find out
+                * what's actually there.
+                */
+               wm8994->mic_detecting = true;
+               wm1811_jackdet_set_mode(codec, WM1811_JACKDET_MODE_MIC);
 
-       snd_soc_update_bits(codec, WM8958_MIC_DETECT_1,
-                           WM8958_MICD_ENA, WM8958_MICD_ENA);
+               snd_soc_update_bits(codec, WM8958_MIC_DETECT_1,
+                                   WM8958_MICD_ENA, WM8958_MICD_ENA);
+       }
 
        mutex_unlock(&wm8994->accdet_lock);
 
@@ -3643,7 +3646,8 @@ static void wm1811_jackdet_bootstrap(struct work_struct *work)
  * detection algorithm.
  */
 int wm8958_mic_detect(struct snd_soc_codec *codec, struct snd_soc_jack *jack,
-                     wm8958_micdet_cb cb, void *cb_data)
+                     wm1811_micdet_cb det_cb, void *det_cb_data,
+                     wm1811_mic_id_cb id_cb, void *id_cb_data)
 {
        struct wm8994_priv *wm8994 = snd_soc_codec_get_drvdata(codec);
        struct wm8994 *control = wm8994->wm8994;
@@ -3658,21 +3662,26 @@ int wm8958_mic_detect(struct snd_soc_codec *codec, struct snd_soc_jack *jack,
        }
 
        if (jack) {
-               if (!cb) {
-                       dev_dbg(codec->dev, "Using default micdet callback\n");
-                       cb = wm8958_default_micdet;
-                       cb_data = codec;
-               }
-
                snd_soc_dapm_force_enable_pin(&codec->dapm, "CLK_SYS");
                snd_soc_dapm_sync(&codec->dapm);
 
                wm8994->micdet[0].jack = jack;
-               wm8994->jack_cb = cb;
-               wm8994->jack_cb_data = cb_data;
 
-               wm8994->mic_detecting = true;
-               wm8994->jack_mic = false;
+               if (det_cb) {
+                       wm8994->micd_cb = det_cb;
+                       wm8994->micd_cb_data = det_cb_data;
+               } else {
+                       wm8994->mic_detecting = true;
+                       wm8994->jack_mic = false;
+               }
+
+               if (id_cb) {
+                       wm8994->mic_id_cb = id_cb;
+                       wm8994->mic_id_cb_data = id_cb_data;
+               } else {
+                       wm8994->mic_id_cb = wm8958_mic_id;
+                       wm8994->mic_id_cb_data = codec;
+               }
 
                wm8958_micd_set_rate(codec);
 
@@ -3772,10 +3781,22 @@ static irqreturn_t wm8958_mic_irq(int irq, void *data)
        trace_snd_soc_jack_irq(dev_name(codec->dev));
 #endif
 
-       if (wm8994->jack_cb)
-               wm8994->jack_cb(reg, wm8994->jack_cb_data);
+       /* Avoid a transient report when the accessory is being removed */
+       if (wm8994->jackdet) {
+               reg = snd_soc_read(codec, WM1811_JACKDET_CTRL);
+               if (reg < 0) {
+                       dev_err(codec->dev, "Failed to read jack status: %d\n",
+                               reg);
+               } else if (!(reg & WM1811_JACKDET_LVL)) {
+                       dev_dbg(codec->dev, "Ignoring removed jack\n");
+                       return IRQ_HANDLED;
+               }
+       }
+
+       if (wm8994->mic_detecting)
+               wm8994->mic_id_cb(wm8994->mic_id_cb_data, reg);
        else
-               dev_warn(codec->dev, "Accessory detection with no callback\n");
+               wm8958_button_det(codec, reg);
 
 out:
        pm_runtime_put(codec->dev);
@@ -4266,7 +4287,7 @@ static struct snd_soc_codec_driver soc_codec_dev_wm8994 = {
        .set_bias_level = wm8994_set_bias_level,
 };
 
-static int __devinit wm8994_probe(struct platform_device *pdev)
+static int wm8994_probe(struct platform_device *pdev)
 {
        struct wm8994_priv *wm8994;
 
@@ -4282,7 +4303,7 @@ static int __devinit wm8994_probe(struct platform_device *pdev)
                        wm8994_dai, ARRAY_SIZE(wm8994_dai));
 }
 
-static int __devexit wm8994_remove(struct platform_device *pdev)
+static int wm8994_remove(struct platform_device *pdev)
 {
        snd_soc_unregister_codec(&pdev->dev);
        return 0;
@@ -4306,7 +4327,7 @@ static int wm8994_resume(struct device *dev)
 {
        struct wm8994_priv *wm8994 = dev_get_drvdata(dev);
 
-       if (wm8994->jackdet && wm8994->jack_cb)
+       if (wm8994->jackdet && wm8994->jackdet_mode)
                regmap_update_bits(wm8994->wm8994->regmap, WM8994_ANTIPOP_2,
                                   WM1811_JACKDET_MODE_MASK,
                                   WM1811_JACKDET_MODE_AUDIO);
@@ -4326,7 +4347,7 @@ static struct platform_driver wm8994_codec_driver = {
                .pm = &wm8994_pm_ops,
        },
        .probe = wm8994_probe,
-       .remove = __devexit_p(wm8994_remove),
+       .remove = wm8994_remove,
 };
 
 module_platform_driver(wm8994_codec_driver);
index 3120c0f..45f1927 100644 (file)
@@ -39,12 +39,14 @@ enum wm8994_vmid_mode {
        WM8994_VMID_FORCE,
 };
 
-typedef void (*wm8958_micdet_cb)(u16 status, void *data);
+typedef void (*wm1811_micdet_cb)(void *data);
+typedef void (*wm1811_mic_id_cb)(void *data, u16 status);
 
 int wm8994_mic_detect(struct snd_soc_codec *codec, struct snd_soc_jack *jack,
                      int micbias);
 int wm8958_mic_detect(struct snd_soc_codec *codec, struct snd_soc_jack *jack,
-                     wm8958_micdet_cb cb, void *cb_data);
+                     wm1811_micdet_cb cb, void *det_cb_data,
+                     wm1811_mic_id_cb id_cb, void *id_cb_data);
 
 int wm8994_vmid_mode(struct snd_soc_codec *codec, enum wm8994_vmid_mode mode);
 
@@ -138,9 +140,11 @@ struct wm8994_priv {
        int jackdet_mode;
        struct delayed_work jackdet_bootstrap;
 
-       wm8958_micdet_cb jack_cb;
-       void *jack_cb_data;
        int micdet_irq;
+       wm1811_micdet_cb micd_cb;
+       void *micd_cb_data;
+       wm1811_mic_id_cb mic_id_cb;
+       void *mic_id_cb_data;
 
        int revision;
 
index f1a7cf1..90a65c4 100644 (file)
@@ -2256,7 +2256,7 @@ static struct regmap_config wm8995_regmap = {
 };
 
 #if defined(CONFIG_SPI_MASTER)
-static int __devinit wm8995_spi_probe(struct spi_device *spi)
+static int wm8995_spi_probe(struct spi_device *spi)
 {
        struct wm8995_priv *wm8995;
        int ret;
@@ -2280,7 +2280,7 @@ static int __devinit wm8995_spi_probe(struct spi_device *spi)
        return ret;
 }
 
-static int __devexit wm8995_spi_remove(struct spi_device *spi)
+static int wm8995_spi_remove(struct spi_device *spi)
 {
        snd_soc_unregister_codec(&spi->dev);
        return 0;
@@ -2292,13 +2292,13 @@ static struct spi_driver wm8995_spi_driver = {
                .owner = THIS_MODULE,
        },
        .probe = wm8995_spi_probe,
-       .remove = __devexit_p(wm8995_spi_remove)
+       .remove = wm8995_spi_remove
 };
 #endif
 
 #if defined(CONFIG_I2C) || defined(CONFIG_I2C_MODULE)
-static __devinit int wm8995_i2c_probe(struct i2c_client *i2c,
-                                     const struct i2c_device_id *id)
+static int wm8995_i2c_probe(struct i2c_client *i2c,
+                           const struct i2c_device_id *id)
 {
        struct wm8995_priv *wm8995;
        int ret;
@@ -2325,7 +2325,7 @@ static __devinit int wm8995_i2c_probe(struct i2c_client *i2c,
        return ret;
 }
 
-static __devexit int wm8995_i2c_remove(struct i2c_client *client)
+static int wm8995_i2c_remove(struct i2c_client *client)
 {
        snd_soc_unregister_codec(&client->dev);
        return 0;
@@ -2344,7 +2344,7 @@ static struct i2c_driver wm8995_i2c_driver = {
                .owner = THIS_MODULE,
        },
        .probe = wm8995_i2c_probe,
-       .remove = __devexit_p(wm8995_i2c_remove),
+       .remove = wm8995_i2c_remove,
        .id_table = wm8995_i2c_id
 };
 #endif
index 6dcb02c..46fe83d 100644 (file)
@@ -2765,8 +2765,8 @@ static struct snd_soc_dai_driver wm8996_dai[] = {
        },
 };
 
-static __devinit int wm8996_i2c_probe(struct i2c_client *i2c,
-                                     const struct i2c_device_id *id)
+static int wm8996_i2c_probe(struct i2c_client *i2c,
+                           const struct i2c_device_id *id)
 {
        struct wm8996_priv *wm8996;
        int ret, i;
@@ -3077,7 +3077,7 @@ err:
        return ret;
 }
 
-static __devexit int wm8996_i2c_remove(struct i2c_client *client)
+static int wm8996_i2c_remove(struct i2c_client *client)
 {
        struct wm8996_priv *wm8996 = i2c_get_clientdata(client);
        int i;
@@ -3107,7 +3107,7 @@ static struct i2c_driver wm8996_i2c_driver = {
                .owner = THIS_MODULE,
        },
        .probe =    wm8996_i2c_probe,
-       .remove =   __devexit_p(wm8996_i2c_remove),
+       .remove =   wm8996_i2c_remove,
        .id_table = wm8996_i2c_id,
 };
 
index 860144e..630b3d7 100644 (file)
@@ -1327,8 +1327,8 @@ static const struct regmap_config wm9081_regmap = {
 };
 
 #if defined(CONFIG_I2C) || defined(CONFIG_I2C_MODULE)
-static __devinit int wm9081_i2c_probe(struct i2c_client *i2c,
-                                     const struct i2c_device_id *id)
+static int wm9081_i2c_probe(struct i2c_client *i2c,
+                           const struct i2c_device_id *id)
 {
        struct wm9081_priv *wm9081;
        unsigned int reg;
@@ -1386,7 +1386,7 @@ static __devinit int wm9081_i2c_probe(struct i2c_client *i2c,
        return 0;
 }
 
-static __devexit int wm9081_i2c_remove(struct i2c_client *client)
+static int wm9081_i2c_remove(struct i2c_client *client)
 {
        snd_soc_unregister_codec(&client->dev);
        return 0;
@@ -1404,7 +1404,7 @@ static struct i2c_driver wm9081_i2c_driver = {
                .owner = THIS_MODULE,
        },
        .probe =    wm9081_i2c_probe,
-       .remove =   __devexit_p(wm9081_i2c_remove),
+       .remove =   wm9081_i2c_remove,
        .id_table = wm9081_i2c_id,
 };
 #endif
index bb55a70..a07fe16 100644 (file)
@@ -664,7 +664,7 @@ static int wm9090_i2c_probe(struct i2c_client *i2c,
        return 0;
 }
 
-static int __devexit wm9090_i2c_remove(struct i2c_client *i2c)
+static int wm9090_i2c_remove(struct i2c_client *i2c)
 {
        snd_soc_unregister_codec(&i2c->dev);
        return 0;
@@ -683,7 +683,7 @@ static struct i2c_driver wm9090_i2c_driver = {
                .owner = THIS_MODULE,
        },
        .probe = wm9090_i2c_probe,
-       .remove = __devexit_p(wm9090_i2c_remove),
+       .remove = wm9090_i2c_remove,
        .id_table = wm9090_id,
 };
 
index e8e782a..05b1f34 100644 (file)
@@ -382,13 +382,13 @@ static struct snd_soc_codec_driver soc_codec_dev_wm9705 = {
        .num_dapm_routes = ARRAY_SIZE(wm9705_audio_map),
 };
 
-static __devinit int wm9705_probe(struct platform_device *pdev)
+static int wm9705_probe(struct platform_device *pdev)
 {
        return snd_soc_register_codec(&pdev->dev,
                        &soc_codec_dev_wm9705, wm9705_dai, ARRAY_SIZE(wm9705_dai));
 }
 
-static int __devexit wm9705_remove(struct platform_device *pdev)
+static int wm9705_remove(struct platform_device *pdev)
 {
        snd_soc_unregister_codec(&pdev->dev);
        return 0;
@@ -401,7 +401,7 @@ static struct platform_driver wm9705_codec_driver = {
        },
 
        .probe = wm9705_probe,
-       .remove = __devexit_p(wm9705_remove),
+       .remove = wm9705_remove,
 };
 
 module_platform_driver(wm9705_codec_driver);
index 4dd73ea..8e9a6a3 100644 (file)
@@ -685,13 +685,13 @@ static struct snd_soc_codec_driver soc_codec_dev_wm9712 = {
        .num_dapm_routes = ARRAY_SIZE(wm9712_audio_map),
 };
 
-static __devinit int wm9712_probe(struct platform_device *pdev)
+static int wm9712_probe(struct platform_device *pdev)
 {
        return snd_soc_register_codec(&pdev->dev,
                        &soc_codec_dev_wm9712, wm9712_dai, ARRAY_SIZE(wm9712_dai));
 }
 
-static int __devexit wm9712_remove(struct platform_device *pdev)
+static int wm9712_remove(struct platform_device *pdev)
 {
        snd_soc_unregister_codec(&pdev->dev);
        return 0;
@@ -704,7 +704,7 @@ static struct platform_driver wm9712_codec_driver = {
        },
 
        .probe = wm9712_probe,
-       .remove = __devexit_p(wm9712_remove),
+       .remove = wm9712_remove,
 };
 
 module_platform_driver(wm9712_codec_driver);
index 3eb19fb..f7afa68 100644 (file)
@@ -1254,13 +1254,13 @@ static struct snd_soc_codec_driver soc_codec_dev_wm9713 = {
        .num_dapm_routes = ARRAY_SIZE(wm9713_audio_map),
 };
 
-static __devinit int wm9713_probe(struct platform_device *pdev)
+static int wm9713_probe(struct platform_device *pdev)
 {
        return snd_soc_register_codec(&pdev->dev,
                        &soc_codec_dev_wm9713, wm9713_dai, ARRAY_SIZE(wm9713_dai));
 }
 
-static int __devexit wm9713_remove(struct platform_device *pdev)
+static int wm9713_remove(struct platform_device *pdev)
 {
        snd_soc_unregister_codec(&pdev->dev);
        return 0;
@@ -1273,7 +1273,7 @@ static struct platform_driver wm9713_codec_driver = {
        },
 
        .probe = wm9713_probe,
-       .remove = __devexit_p(wm9713_remove),
+       .remove = wm9713_remove,
 };
 
 module_platform_driver(wm9713_codec_driver);
index 7fdb68e..ffc89fa 100644 (file)
@@ -544,6 +544,28 @@ int wm_adsp2_event(struct snd_soc_dapm_widget *w,
 
        switch (event) {
        case SND_SOC_DAPM_POST_PMU:
+               /*
+                * For simplicity set the DSP clock rate to be the
+                * SYSCLK rate rather than making it configurable.
+                */
+               ret = regmap_read(dsp->regmap, ARIZONA_SYSTEM_CLOCK_1, &val);
+               if (ret != 0) {
+                       adsp_err(dsp, "Failed to read SYSCLK state: %d\n",
+                                ret);
+                       return ret;
+               }
+               val = (val & ARIZONA_SYSCLK_FREQ_MASK)
+                       >> ARIZONA_SYSCLK_FREQ_SHIFT;
+
+               ret = regmap_update_bits(dsp->regmap,
+                                        dsp->base + ADSP2_CLOCKING,
+                                        ADSP2_CLK_SEL_MASK, val);
+               if (ret != 0) {
+                       adsp_err(dsp, "Failed to set clock rate: %d\n",
+                                ret);
+                       return ret;
+               }
+
                if (dsp->dvfs) {
                        ret = regmap_read(dsp->regmap,
                                          dsp->base + ADSP2_CLOCKING, &val);
@@ -631,6 +653,17 @@ int wm_adsp2_init(struct wm_adsp *adsp, bool dvfs)
 {
        int ret;
 
+       /*
+        * Disable the DSP memory by default when in reset for a small
+        * power saving.
+        */
+       ret = regmap_update_bits(adsp->regmap, adsp->base + ADSP2_CONTROL,
+                                ADSP2_MEM_ENA, 0);
+       if (ret != 0) {
+               adsp_err(adsp, "Failed to clear memory retention: %d\n", ret);
+               return ret;
+       }
+
        if (dvfs) {
                adsp->dvfs = devm_regulator_get(adsp->dev, "DCVDD");
                if (IS_ERR(adsp->dvfs)) {
index 5715595..55e2bf6 100644 (file)
@@ -593,6 +593,10 @@ static int davinci_mcasp_set_clkdiv(struct snd_soc_dai *dai, int div_id, int div
                               ACLKRDIV(div - 1), ACLKRDIV_MASK);
                break;
 
+       case 2:         /* BCLK/LRCLK ratio */
+               dev->bclk_lrclk_ratio = div;
+               break;
+
        default:
                return -EINVAL;
        }
@@ -619,57 +623,25 @@ static int davinci_mcasp_set_sysclk(struct snd_soc_dai *dai, int clk_id,
 }
 
 static int davinci_config_channel_size(struct davinci_audio_dev *dev,
-                                      int channel_size)
+                                      int word_length)
 {
-       u32 fmt = 0;
-       u32 mask, rotate;
-
-       switch (channel_size) {
-       case DAVINCI_AUDIO_WORD_8:
-               fmt = 0x03;
-               rotate = 6;
-               mask = 0x000000ff;
-               break;
-
-       case DAVINCI_AUDIO_WORD_12:
-               fmt = 0x05;
-               rotate = 5;
-               mask = 0x00000fff;
-               break;
-
-       case DAVINCI_AUDIO_WORD_16:
-               fmt = 0x07;
-               rotate = 4;
-               mask = 0x0000ffff;
-               break;
-
-       case DAVINCI_AUDIO_WORD_20:
-               fmt = 0x09;
-               rotate = 3;
-               mask = 0x000fffff;
-               break;
-
-       case DAVINCI_AUDIO_WORD_24:
-               fmt = 0x0B;
-               rotate = 2;
-               mask = 0x00ffffff;
-               break;
-
-       case DAVINCI_AUDIO_WORD_28:
-               fmt = 0x0D;
-               rotate = 1;
-               mask = 0x0fffffff;
-               break;
-
-       case DAVINCI_AUDIO_WORD_32:
-               fmt = 0x0F;
-               rotate = 0;
-               mask = 0xffffffff;
-               break;
-
-       default:
-               return -EINVAL;
-       }
+       u32 fmt;
+       u32 rotate = (32 - word_length) / 4;
+       u32 mask = (1ULL << word_length) - 1;
+
+       /*
+        * if s BCLK-to-LRCLK ratio has been configured via the set_clkdiv()
+        * callback, take it into account here. That allows us to for example
+        * send 32 bits per channel to the codec, while only 16 of them carry
+        * audio payload.
+        * The clock ratio is given for a full period of data (both left and
+        * right channels), so it has to be divided by 2.
+        */
+       if (dev->bclk_lrclk_ratio)
+               word_length = dev->bclk_lrclk_ratio / 2;
+
+       /* mapping of the XSSZ bit-field as described in the datasheet */
+       fmt = (word_length >> 1) - 1;
 
        mcasp_mod_bits(dev->base + DAVINCI_MCASP_RXFMT_REG,
                                        RXSSZ(fmt), RXSSZ(0x0F));
@@ -856,19 +828,19 @@ static int davinci_mcasp_hw_params(struct snd_pcm_substream *substream,
        case SNDRV_PCM_FORMAT_U8:
        case SNDRV_PCM_FORMAT_S8:
                dma_params->data_type = 1;
-               word_length = DAVINCI_AUDIO_WORD_8;
+               word_length = 8;
                break;
 
        case SNDRV_PCM_FORMAT_U16_LE:
        case SNDRV_PCM_FORMAT_S16_LE:
                dma_params->data_type = 2;
-               word_length = DAVINCI_AUDIO_WORD_16;
+               word_length = 16;
                break;
 
        case SNDRV_PCM_FORMAT_U24_3LE:
        case SNDRV_PCM_FORMAT_S24_3LE:
                dma_params->data_type = 3;
-               word_length = DAVINCI_AUDIO_WORD_24;
+               word_length = 24;
                break;
 
        case SNDRV_PCM_FORMAT_U24_LE:
@@ -876,7 +848,7 @@ static int davinci_mcasp_hw_params(struct snd_pcm_substream *substream,
        case SNDRV_PCM_FORMAT_U32_LE:
        case SNDRV_PCM_FORMAT_S32_LE:
                dma_params->data_type = 4;
-               word_length = DAVINCI_AUDIO_WORD_32;
+               word_length = 32;
                break;
 
        default:
@@ -1158,7 +1130,6 @@ static int davinci_mcasp_probe(struct platform_device *pdev)
        dev->tdm_slots = pdata->tdm_slots;
        dev->num_serializer = pdata->num_serializer;
        dev->serial_dir = pdata->serial_dir;
-       dev->codec_fmt = pdata->codec_fmt;
        dev->version = pdata->version;
        dev->txnumevt = pdata->txnumevt;
        dev->rxnumevt = pdata->rxnumevt;
index 156f15f..0edd3b5 100644 (file)
 #define DAVINCI_MCASP_I2S_DAI  0
 #define DAVINCI_MCASP_DIT_DAI  1
 
-enum {
-       DAVINCI_AUDIO_WORD_8 = 0,
-       DAVINCI_AUDIO_WORD_12,
-       DAVINCI_AUDIO_WORD_16,
-       DAVINCI_AUDIO_WORD_20,
-       DAVINCI_AUDIO_WORD_24,
-       DAVINCI_AUDIO_WORD_32,
-       DAVINCI_AUDIO_WORD_28,  /* This is only valid for McASP */
-};
-
 struct davinci_audio_dev {
        struct davinci_pcm_dma_params dma_params[2];
        void __iomem *base;
-       int sample_rate;
        struct device *dev;
-       unsigned int codec_fmt;
 
        /* McASP specific data */
        int     tdm_slots;
@@ -50,6 +38,7 @@ struct davinci_audio_dev {
        u8      num_serializer;
        u8      *serial_dir;
        u8      version;
+       u8      bclk_lrclk_ratio;
 
        /* McASP FIFO related */
        u8      txnumevt;
index 267d5b4..75ffdf0 100644 (file)
@@ -93,7 +93,7 @@ static struct snd_soc_card eukrea_tlv320 = {
        .num_links      = 1,
 };
 
-static int __devinit eukrea_tlv320_probe(struct platform_device *pdev)
+static int eukrea_tlv320_probe(struct platform_device *pdev)
 {
        int ret;
        int int_port = 0, ext_port;
@@ -142,7 +142,7 @@ static int __devinit eukrea_tlv320_probe(struct platform_device *pdev)
        return ret;
 }
 
-static int __devexit eukrea_tlv320_remove(struct platform_device *pdev)
+static int eukrea_tlv320_remove(struct platform_device *pdev)
 {
        snd_soc_unregister_card(&eukrea_tlv320);
 
@@ -155,7 +155,7 @@ static struct platform_driver eukrea_tlv320_driver = {
                .owner = THIS_MODULE,
        },
        .probe = eukrea_tlv320_probe,
-       .remove = __devexit_p(eukrea_tlv320_remove),};
+       .remove = eukrea_tlv320_remove,};
 
 module_platform_driver(eukrea_tlv320_driver);
 
index 6feb265..9cc5c1f 100644 (file)
@@ -894,7 +894,7 @@ static struct snd_pcm_ops fsl_dma_ops = {
        .pointer        = fsl_dma_pointer,
 };
 
-static int __devinit fsl_soc_dma_probe(struct platform_device *pdev)
+static int fsl_soc_dma_probe(struct platform_device *pdev)
  {
        struct dma_object *dma;
        struct device_node *np = pdev->dev.of_node;
@@ -958,7 +958,7 @@ static int __devinit fsl_soc_dma_probe(struct platform_device *pdev)
        return 0;
 }
 
-static int __devexit fsl_soc_dma_remove(struct platform_device *pdev)
+static int fsl_soc_dma_remove(struct platform_device *pdev)
 {
        struct dma_object *dma = dev_get_drvdata(&pdev->dev);
 
@@ -983,7 +983,7 @@ static struct platform_driver fsl_soc_dma_driver = {
                .of_match_table = fsl_soc_dma_ids,
        },
        .probe = fsl_soc_dma_probe,
-       .remove = __devexit_p(fsl_soc_dma_remove),
+       .remove = fsl_soc_dma_remove,
 };
 
 module_platform_driver(fsl_soc_dma_driver);
index 4ed2afd..7decbd9 100644 (file)
@@ -639,7 +639,7 @@ static void make_lowercase(char *s)
        }
 }
 
-static int __devinit fsl_ssi_probe(struct platform_device *pdev)
+static int fsl_ssi_probe(struct platform_device *pdev)
 {
        struct fsl_ssi_private *ssi_private;
        int ret = 0;
index 524ce62..251f4d9 100644 (file)
@@ -162,7 +162,7 @@ static void __init audmux_debugfs_init(void)
        }
 }
 
-static void __devexit audmux_debugfs_remove(void)
+static void audmux_debugfs_remove(void)
 {
        debugfs_remove_recursive(audmux_debugfs_root);
 }
@@ -244,7 +244,7 @@ int imx_audmux_v2_configure_port(unsigned int port, unsigned int ptcr,
 }
 EXPORT_SYMBOL_GPL(imx_audmux_v2_configure_port);
 
-static int __devinit imx_audmux_probe(struct platform_device *pdev)
+static int imx_audmux_probe(struct platform_device *pdev)
 {
        struct resource *res;
        struct pinctrl *pinctrl;
@@ -278,7 +278,7 @@ static int __devinit imx_audmux_probe(struct platform_device *pdev)
        return 0;
 }
 
-static int __devexit imx_audmux_remove(struct platform_device *pdev)
+static int imx_audmux_remove(struct platform_device *pdev)
 {
        if (audmux_type == IMX31_AUDMUX)
                audmux_debugfs_remove();
@@ -289,7 +289,7 @@ static int __devexit imx_audmux_remove(struct platform_device *pdev)
 
 static struct platform_driver imx_audmux_driver = {
        .probe          = imx_audmux_probe,
-       .remove         = __devexit_p(imx_audmux_remove),
+       .remove         = imx_audmux_remove,
        .id_table       = imx_audmux_ids,
        .driver = {
                .name   = DRIVER_NAME,
index 549b31f..4ae30f2 100644 (file)
@@ -98,7 +98,7 @@ static struct snd_soc_card imx_mc13783 = {
        .num_dapm_routes = ARRAY_SIZE(imx_mc13783_routes),
 };
 
-static int __devinit imx_mc13783_probe(struct platform_device *pdev)
+static int imx_mc13783_probe(struct platform_device *pdev)
 {
        int ret;
 
@@ -148,7 +148,7 @@ static int __devinit imx_mc13783_probe(struct platform_device *pdev)
        return ret;
 }
 
-static int __devexit imx_mc13783_remove(struct platform_device *pdev)
+static int imx_mc13783_remove(struct platform_device *pdev)
 {
        snd_soc_unregister_card(&imx_mc13783);
 
@@ -161,7 +161,7 @@ static struct platform_driver imx_mc13783_audio_driver = {
                .owner = THIS_MODULE,
        },
        .probe = imx_mc13783_probe,
-       .remove = __devexit_p(imx_mc13783_remove)
+       .remove = imx_mc13783_remove
 };
 
 module_platform_driver(imx_mc13783_audio_driver);
index d85929b..bf363d8 100644 (file)
@@ -154,12 +154,12 @@ static struct snd_soc_platform_driver imx_soc_platform_mx2 = {
        .pcm_free       = imx_pcm_free,
 };
 
-static int __devinit imx_soc_platform_probe(struct platform_device *pdev)
+static int imx_soc_platform_probe(struct platform_device *pdev)
 {
        return snd_soc_register_platform(&pdev->dev, &imx_soc_platform_mx2);
 }
 
-static int __devexit imx_soc_platform_remove(struct platform_device *pdev)
+static int imx_soc_platform_remove(struct platform_device *pdev)
 {
        snd_soc_unregister_platform(&pdev->dev);
        return 0;
@@ -171,7 +171,7 @@ static struct platform_driver imx_pcm_driver = {
                        .owner = THIS_MODULE,
        },
        .probe = imx_soc_platform_probe,
-       .remove = __devexit_p(imx_soc_platform_remove),
+       .remove = imx_soc_platform_remove,
 };
 
 module_platform_driver(imx_pcm_driver);
index 22c6130..713bd79 100644 (file)
@@ -282,7 +282,7 @@ static struct snd_soc_platform_driver imx_soc_platform_fiq = {
        .pcm_free       = imx_pcm_fiq_free,
 };
 
-static int __devinit imx_soc_platform_probe(struct platform_device *pdev)
+static int imx_soc_platform_probe(struct platform_device *pdev)
 {
        struct imx_ssi *ssi = platform_get_drvdata(pdev);
        int ret;
@@ -316,7 +316,7 @@ failed_register:
        return ret;
 }
 
-static int __devexit imx_soc_platform_remove(struct platform_device *pdev)
+static int imx_soc_platform_remove(struct platform_device *pdev)
 {
        snd_soc_unregister_platform(&pdev->dev);
        return 0;
@@ -329,7 +329,7 @@ static struct platform_driver imx_pcm_driver = {
        },
 
        .probe = imx_soc_platform_probe,
-       .remove = __devexit_p(imx_soc_platform_remove),
+       .remove = imx_soc_platform_remove,
 };
 
 module_platform_driver(imx_pcm_driver);
index 3d9b1c4..424347e 100644 (file)
@@ -56,7 +56,7 @@ static const struct snd_soc_dapm_widget imx_sgtl5000_dapm_widgets[] = {
        SND_SOC_DAPM_SPK("Ext Spk", NULL),
 };
 
-static int __devinit imx_sgtl5000_probe(struct platform_device *pdev)
+static int imx_sgtl5000_probe(struct platform_device *pdev)
 {
        struct device_node *np = pdev->dev.of_node;
        struct device_node *ssi_np, *codec_np;
@@ -185,7 +185,7 @@ fail:
        return ret;
 }
 
-static int __devexit imx_sgtl5000_remove(struct platform_device *pdev)
+static int imx_sgtl5000_remove(struct platform_device *pdev)
 {
        struct imx_sgtl5000_data *data = platform_get_drvdata(pdev);
 
@@ -211,7 +211,7 @@ static struct platform_driver imx_sgtl5000_driver = {
                .of_match_table = imx_sgtl5000_dt_ids,
        },
        .probe = imx_sgtl5000_probe,
-       .remove = __devexit_p(imx_sgtl5000_remove),
+       .remove = imx_sgtl5000_remove,
 };
 module_platform_driver(imx_sgtl5000_driver);
 
index 006f7d4..2c8d89e 100644 (file)
@@ -639,7 +639,7 @@ failed_clk:
        return ret;
 }
 
-static int __devexit imx_ssi_remove(struct platform_device *pdev)
+static int imx_ssi_remove(struct platform_device *pdev)
 {
        struct resource *res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
        struct imx_ssi *ssi = platform_get_drvdata(pdev);
@@ -660,7 +660,7 @@ static int __devexit imx_ssi_remove(struct platform_device *pdev)
 
 static struct platform_driver imx_ssi_driver = {
        .probe = imx_ssi_probe,
-       .remove = __devexit_p(imx_ssi_remove),
+       .remove = imx_ssi_remove,
 
        .driver = {
                .name = "imx-ssi",
index a313c0a..a4aec04 100644 (file)
@@ -277,7 +277,7 @@ static struct snd_soc_dai_driver psc_ac97_dai[] = {
  * - Probe/remove operations
  * - OF device match table
  */
-static int __devinit psc_ac97_of_probe(struct platform_device *op)
+static int psc_ac97_of_probe(struct platform_device *op)
 {
        int rc;
        struct snd_ac97 ac97;
@@ -310,7 +310,7 @@ static int __devinit psc_ac97_of_probe(struct platform_device *op)
        return 0;
 }
 
-static int __devexit psc_ac97_of_remove(struct platform_device *op)
+static int psc_ac97_of_remove(struct platform_device *op)
 {
        mpc5200_audio_dma_destroy(op);
        snd_soc_unregister_dais(&op->dev, ARRAY_SIZE(psc_ac97_dai));
@@ -318,7 +318,7 @@ static int __devexit psc_ac97_of_remove(struct platform_device *op)
 }
 
 /* Match table for of_platform binding */
-static struct of_device_id psc_ac97_match[] __devinitdata = {
+static struct of_device_id psc_ac97_match[] = {
        { .compatible = "fsl,mpc5200-psc-ac97", },
        { .compatible = "fsl,mpc5200b-psc-ac97", },
        {}
@@ -327,7 +327,7 @@ MODULE_DEVICE_TABLE(of, psc_ac97_match);
 
 static struct platform_driver psc_ac97_driver = {
        .probe = psc_ac97_of_probe,
-       .remove = __devexit_p(psc_ac97_of_remove),
+       .remove = psc_ac97_of_remove,
        .driver = {
                .name = "mpc5200-psc-ac97",
                .owner = THIS_MODULE,
index ba1f0a6..b95b966 100644 (file)
@@ -153,7 +153,7 @@ static struct snd_soc_dai_driver psc_i2s_dai[] = {{
  * - Probe/remove operations
  * - OF device match table
  */
-static int __devinit psc_i2s_of_probe(struct platform_device *op)
+static int psc_i2s_of_probe(struct platform_device *op)
 {
        int rc;
        struct psc_dma *psc_dma;
@@ -205,7 +205,7 @@ static int __devinit psc_i2s_of_probe(struct platform_device *op)
 
 }
 
-static int __devexit psc_i2s_of_remove(struct platform_device *op)
+static int psc_i2s_of_remove(struct platform_device *op)
 {
        mpc5200_audio_dma_destroy(op);
        snd_soc_unregister_dais(&op->dev, ARRAY_SIZE(psc_i2s_dai));
@@ -213,7 +213,7 @@ static int __devexit psc_i2s_of_remove(struct platform_device *op)
 }
 
 /* Match table for of_platform binding */
-static struct of_device_id psc_i2s_match[] __devinitdata = {
+static struct of_device_id psc_i2s_match[] = {
        { .compatible = "fsl,mpc5200-psc-i2s", },
        { .compatible = "fsl,mpc5200b-psc-i2s", },
        {}
@@ -222,7 +222,7 @@ MODULE_DEVICE_TABLE(of, psc_i2s_match);
 
 static struct platform_driver psc_i2s_driver = {
        .probe = psc_i2s_of_probe,
-       .remove = __devexit_p(psc_i2s_of_remove),
+       .remove = psc_i2s_of_remove,
        .driver = {
                .name = "mpc5200-psc-i2s",
                .owner = THIS_MODULE,
index 9ff9318..228c52e 100644 (file)
@@ -368,7 +368,7 @@ error_alloc:
  *
  * This function is called when the platform device is removed.
  */
-static int __devexit mpc8610_hpcd_remove(struct platform_device *pdev)
+static int mpc8610_hpcd_remove(struct platform_device *pdev)
 {
        struct snd_soc_card *card = platform_get_drvdata(pdev);
        struct mpc8610_hpcd_data *machine_data =
@@ -382,7 +382,7 @@ static int __devexit mpc8610_hpcd_remove(struct platform_device *pdev)
 
 static struct platform_driver mpc8610_hpcd_driver = {
        .probe = mpc8610_hpcd_probe,
-       .remove = __devexit_p(mpc8610_hpcd_remove),
+       .remove = mpc8610_hpcd_remove,
        .driver = {
                /* The name must match 'compatible' property in the device tree,
                 * in lowercase letters.
index 2b76877..3d10741 100644 (file)
@@ -180,7 +180,7 @@ static struct snd_soc_card mx27vis_aic32x4 = {
        .num_dapm_routes = ARRAY_SIZE(aic32x4_dapm_routes),
 };
 
-static int __devinit mx27vis_aic32x4_probe(struct platform_device *pdev)
+static int mx27vis_aic32x4_probe(struct platform_device *pdev)
 {
        struct snd_mx27vis_platform_data *pdata = pdev->dev.platform_data;
        int ret;
@@ -219,7 +219,7 @@ static int __devinit mx27vis_aic32x4_probe(struct platform_device *pdev)
        return ret;
 }
 
-static int __devexit mx27vis_aic32x4_remove(struct platform_device *pdev)
+static int mx27vis_aic32x4_remove(struct platform_device *pdev)
 {
        snd_soc_unregister_card(&mx27vis_aic32x4);
 
@@ -232,7 +232,7 @@ static struct platform_driver mx27vis_aic32x4_audio_driver = {
                .owner = THIS_MODULE,
        },
        .probe = mx27vis_aic32x4_probe,
-       .remove = __devexit_p(mx27vis_aic32x4_remove),
+       .remove = mx27vis_aic32x4_remove,
 };
 
 module_platform_driver(mx27vis_aic32x4_audio_driver);
index 144d496..ba59c23 100644 (file)
@@ -376,7 +376,7 @@ error_put:
  *
  * This function is called when the platform device is removed.
  */
-static int __devexit p1022_ds_remove(struct platform_device *pdev)
+static int p1022_ds_remove(struct platform_device *pdev)
 {
        struct snd_soc_card *card = platform_get_drvdata(pdev);
        struct machine_data *mdata =
@@ -390,7 +390,7 @@ static int __devexit p1022_ds_remove(struct platform_device *pdev)
 
 static struct platform_driver p1022_ds_driver = {
        .probe = p1022_ds_probe,
-       .remove = __devexit_p(p1022_ds_remove),
+       .remove = p1022_ds_remove,
        .driver = {
                /*
                 * The name must match 'compatible' property in the device tree,
index 897e32f..f215519 100644 (file)
@@ -326,7 +326,7 @@ error_put:
  *
  * This function is called when the platform device is removed.
  */
-static int __devexit p1022_rdk_remove(struct platform_device *pdev)
+static int p1022_rdk_remove(struct platform_device *pdev)
 {
        struct snd_soc_card *card = platform_get_drvdata(pdev);
        struct machine_data *mdata =
@@ -340,7 +340,7 @@ static int __devexit p1022_rdk_remove(struct platform_device *pdev)
 
 static struct platform_driver p1022_rdk_driver = {
        .probe = p1022_rdk_probe,
-       .remove = __devexit_p(p1022_rdk_remove),
+       .remove = p1022_rdk_remove,
        .driver = {
                /*
                 * The name must match 'compatible' property in the device tree,
index 4d26192..8e52c14 100644 (file)
@@ -101,7 +101,7 @@ static int __init pcm030_fabric_probe(struct platform_device *op)
        return ret;
 }
 
-static int __devexit pcm030_fabric_remove(struct platform_device *op)
+static int pcm030_fabric_remove(struct platform_device *op)
 {
        struct pcm030_audio_data *pdata = platform_get_drvdata(op);
        int ret;
@@ -120,7 +120,7 @@ MODULE_DEVICE_TABLE(of, pcm030_audio_match);
 
 static struct platform_driver pcm030_fabric_driver = {
        .probe          = pcm030_fabric_probe,
-       .remove         = __devexit_p(pcm030_fabric_remove),
+       .remove         = pcm030_fabric_remove,
        .driver         = {
                .name   = DRV_NAME,
                .owner  = THIS_MODULE,
index 4134967..6cef491 100644 (file)
@@ -425,7 +425,7 @@ static struct snd_soc_dai_driver jz4740_i2s_dai = {
        .resume = jz4740_i2s_resume,
 };
 
-static int __devinit jz4740_i2s_dev_probe(struct platform_device *pdev)
+static int jz4740_i2s_dev_probe(struct platform_device *pdev)
 {
        struct jz4740_i2s *i2s;
        int ret;
@@ -492,7 +492,7 @@ err_free:
        return ret;
 }
 
-static int __devexit jz4740_i2s_dev_remove(struct platform_device *pdev)
+static int jz4740_i2s_dev_remove(struct platform_device *pdev)
 {
        struct jz4740_i2s *i2s = platform_get_drvdata(pdev);
 
@@ -512,7 +512,7 @@ static int __devexit jz4740_i2s_dev_remove(struct platform_device *pdev)
 
 static struct platform_driver jz4740_i2s_driver = {
        .probe = jz4740_i2s_dev_probe,
-       .remove = __devexit_p(jz4740_i2s_dev_remove),
+       .remove = jz4740_i2s_dev_remove,
        .driver = {
                .name = "jz4740-i2s",
                .owner = THIS_MODULE,
index 9b8cf25..7100592 100644 (file)
@@ -335,12 +335,12 @@ static struct snd_soc_platform_driver jz4740_soc_platform = {
                .pcm_free       = jz4740_pcm_free,
 };
 
-static int __devinit jz4740_pcm_probe(struct platform_device *pdev)
+static int jz4740_pcm_probe(struct platform_device *pdev)
 {
        return snd_soc_register_platform(&pdev->dev, &jz4740_soc_platform);
 }
 
-static int __devexit jz4740_pcm_remove(struct platform_device *pdev)
+static int jz4740_pcm_remove(struct platform_device *pdev)
 {
        snd_soc_unregister_platform(&pdev->dev);
        return 0;
@@ -348,7 +348,7 @@ static int __devexit jz4740_pcm_remove(struct platform_device *pdev)
 
 static struct platform_driver jz4740_pcm_driver = {
        .probe = jz4740_pcm_probe,
-       .remove = __devexit_p(jz4740_pcm_remove),
+       .remove = jz4740_pcm_remove,
        .driver = {
                .name = "jz4740-pcm-audio",
                .owner = THIS_MODULE,
index e8aaff1..55fd6b5 100644 (file)
@@ -96,7 +96,7 @@ static const struct gpio qi_lb60_gpios[] = {
        { QI_LB60_AMP_GPIO, GPIOF_OUT_INIT_LOW, "AMP" },
 };
 
-static int __devinit qi_lb60_probe(struct platform_device *pdev)
+static int qi_lb60_probe(struct platform_device *pdev)
 {
        struct snd_soc_card *card = &qi_lb60;
        int ret;
@@ -116,7 +116,7 @@ static int __devinit qi_lb60_probe(struct platform_device *pdev)
        return ret;
 }
 
-static int __devexit qi_lb60_remove(struct platform_device *pdev)
+static int qi_lb60_remove(struct platform_device *pdev)
 {
        struct snd_soc_card *card = platform_get_drvdata(pdev);
 
@@ -131,7 +131,7 @@ static struct platform_driver qi_lb60_driver = {
                .owner  = THIS_MODULE,
        },
        .probe          = qi_lb60_probe,
-       .remove         = __devexit_p(qi_lb60_remove),
+       .remove         = qi_lb60_remove,
 };
 
 module_platform_driver(qi_lb60_driver);
index 58d5a96..d3d4bdc 100644 (file)
@@ -372,12 +372,12 @@ static struct snd_soc_platform_driver kirkwood_soc_platform = {
        .pcm_free       = kirkwood_dma_free_dma_buffers,
 };
 
-static int __devinit kirkwood_soc_platform_probe(struct platform_device *pdev)
+static int kirkwood_soc_platform_probe(struct platform_device *pdev)
 {
        return snd_soc_register_platform(&pdev->dev, &kirkwood_soc_platform);
 }
 
-static int __devexit kirkwood_soc_platform_remove(struct platform_device *pdev)
+static int kirkwood_soc_platform_remove(struct platform_device *pdev)
 {
        snd_soc_unregister_platform(&pdev->dev);
        return 0;
@@ -390,7 +390,7 @@ static struct platform_driver kirkwood_pcm_driver = {
        },
 
        .probe = kirkwood_soc_platform_probe,
-       .remove = __devexit_p(kirkwood_soc_platform_remove),
+       .remove = kirkwood_soc_platform_remove,
 };
 
 module_platform_driver(kirkwood_pcm_driver);
index d3629d5..282d8b1 100644 (file)
@@ -451,7 +451,7 @@ static struct snd_soc_dai_driver kirkwood_i2s_dai_extclk = {
        .ops = &kirkwood_i2s_dai_ops,
 };
 
-static __devinit int kirkwood_i2s_dev_probe(struct platform_device *pdev)
+static int kirkwood_i2s_dev_probe(struct platform_device *pdev)
 {
        struct kirkwood_asoc_platform_data *data = pdev->dev.platform_data;
        struct snd_soc_dai_driver *soc_dai = &kirkwood_i2s_dai;
@@ -540,7 +540,7 @@ static __devinit int kirkwood_i2s_dev_probe(struct platform_device *pdev)
        return err;
 }
 
-static __devexit int kirkwood_i2s_dev_remove(struct platform_device *pdev)
+static int kirkwood_i2s_dev_remove(struct platform_device *pdev)
 {
        struct kirkwood_dma_data *priv = dev_get_drvdata(&pdev->dev);
 
@@ -557,7 +557,7 @@ static __devexit int kirkwood_i2s_dev_remove(struct platform_device *pdev)
 
 static struct platform_driver kirkwood_i2s_driver = {
        .probe  = kirkwood_i2s_dev_probe,
-       .remove = __devexit_p(kirkwood_i2s_dev_remove),
+       .remove = kirkwood_i2s_dev_remove,
        .driver = {
                .name = DRV_NAME,
                .owner = THIS_MODULE,
index c28540a..b979c71 100644 (file)
@@ -71,7 +71,7 @@ static struct snd_soc_card openrd_client = {
        .num_links = ARRAY_SIZE(openrd_client_dai),
 };
 
-static int __devinit openrd_probe(struct platform_device *pdev)
+static int openrd_probe(struct platform_device *pdev)
 {
        struct snd_soc_card *card = &openrd_client;
        int ret;
@@ -85,7 +85,7 @@ static int __devinit openrd_probe(struct platform_device *pdev)
        return ret;
 }
 
-static int __devexit openrd_remove(struct platform_device *pdev)
+static int openrd_remove(struct platform_device *pdev)
 {
        struct snd_soc_card *card = platform_get_drvdata(pdev);
 
@@ -99,7 +99,7 @@ static struct platform_driver openrd_driver = {
                .owner  = THIS_MODULE,
        },
        .probe          = openrd_probe,
-       .remove         = __devexit_p(openrd_remove),
+       .remove         = openrd_remove,
 };
 
 module_platform_driver(openrd_driver);
index c67bbc5..1d0ed6f 100644 (file)
@@ -92,7 +92,7 @@ static struct snd_soc_card t5325 = {
        .num_dapm_routes = ARRAY_SIZE(t5325_route),
 };
 
-static int __devinit t5325_probe(struct platform_device *pdev)
+static int t5325_probe(struct platform_device *pdev)
 {
        struct snd_soc_card *card = &t5325;
        int ret;
@@ -106,7 +106,7 @@ static int __devinit t5325_probe(struct platform_device *pdev)
        return ret;
 }
 
-static int __devexit t5325_remove(struct platform_device *pdev)
+static int t5325_remove(struct platform_device *pdev)
 {
        struct snd_soc_card *card = platform_get_drvdata(pdev);
 
@@ -120,7 +120,7 @@ static struct platform_driver t5325_driver = {
                .owner  = THIS_MODULE,
        },
        .probe          = t5325_probe,
-       .remove         = __devexit_p(t5325_remove),
+       .remove         = t5325_remove,
 };
 
 module_platform_driver(t5325_driver);
index 2cc7782..4139116 100644 (file)
@@ -358,7 +358,7 @@ static irqreturn_t snd_mfld_jack_detection(int irq, void *data)
        return IRQ_HANDLED;
 }
 
-static int __devinit snd_mfld_mc_probe(struct platform_device *pdev)
+static int snd_mfld_mc_probe(struct platform_device *pdev)
 {
        int ret_val = 0, irq;
        struct mfld_mc_private *mc_drv_ctx;
@@ -417,7 +417,7 @@ unalloc:
        return ret_val;
 }
 
-static int __devexit snd_mfld_mc_remove(struct platform_device *pdev)
+static int snd_mfld_mc_remove(struct platform_device *pdev)
 {
        struct mfld_mc_private *mc_drv_ctx = platform_get_drvdata(pdev);
 
@@ -435,7 +435,7 @@ static struct platform_driver snd_mfld_mc_driver = {
                .name = "msic_audio",
        },
        .probe = snd_mfld_mc_probe,
-       .remove = __devexit_p(snd_mfld_mc_remove),
+       .remove = snd_mfld_mc_remove,
 };
 
 module_platform_driver(snd_mfld_mc_driver);
index f82d766..564b5b6 100644 (file)
@@ -220,13 +220,13 @@ static struct snd_soc_platform_driver mxs_soc_platform = {
        .pcm_free       = mxs_pcm_free,
 };
 
-int __devinit mxs_pcm_platform_register(struct device *dev)
+int mxs_pcm_platform_register(struct device *dev)
 {
        return snd_soc_register_platform(dev, &mxs_soc_platform);
 }
 EXPORT_SYMBOL_GPL(mxs_pcm_platform_register);
 
-void __devexit mxs_pcm_platform_unregister(struct device *dev)
+void mxs_pcm_platform_unregister(struct device *dev)
 {
        snd_soc_unregister_platform(dev);
 }
index b304e37..365d9d2 100644 (file)
@@ -657,7 +657,7 @@ static irqreturn_t mxs_saif_irq(int irq, void *dev_id)
        return IRQ_HANDLED;
 }
 
-static int __devinit mxs_saif_probe(struct platform_device *pdev)
+static int mxs_saif_probe(struct platform_device *pdev)
 {
        struct device_node *np = pdev->dev.of_node;
        struct resource *iores, *dmares;
@@ -792,7 +792,7 @@ failed_pdev_alloc:
        return ret;
 }
 
-static int __devexit mxs_saif_remove(struct platform_device *pdev)
+static int mxs_saif_remove(struct platform_device *pdev)
 {
        mxs_pcm_platform_unregister(&pdev->dev);
        snd_soc_unregister_dai(&pdev->dev);
@@ -808,7 +808,7 @@ MODULE_DEVICE_TABLE(of, mxs_saif_dt_ids);
 
 static struct platform_driver mxs_saif_driver = {
        .probe = mxs_saif_probe,
-       .remove = __devexit_p(mxs_saif_remove),
+       .remove = mxs_saif_remove,
 
        .driver = {
                .name = "mxs-saif",
index 215113b..b1d9b5e 100644 (file)
@@ -112,7 +112,7 @@ static struct snd_soc_card mxs_sgtl5000 = {
        .num_links      = ARRAY_SIZE(mxs_sgtl5000_dai),
 };
 
-static int __devinit mxs_sgtl5000_probe_dt(struct platform_device *pdev)
+static int mxs_sgtl5000_probe_dt(struct platform_device *pdev)
 {
        struct device_node *np = pdev->dev.of_node;
        struct device_node *saif_np[2], *codec_np;
@@ -145,7 +145,7 @@ static int __devinit mxs_sgtl5000_probe_dt(struct platform_device *pdev)
        return ret;
 }
 
-static int __devinit mxs_sgtl5000_probe(struct platform_device *pdev)
+static int mxs_sgtl5000_probe(struct platform_device *pdev)
 {
        struct snd_soc_card *card = &mxs_sgtl5000;
        int ret;
@@ -176,7 +176,7 @@ static int __devinit mxs_sgtl5000_probe(struct platform_device *pdev)
        return 0;
 }
 
-static int __devexit mxs_sgtl5000_remove(struct platform_device *pdev)
+static int mxs_sgtl5000_remove(struct platform_device *pdev)
 {
        struct snd_soc_card *card = platform_get_drvdata(pdev);
 
@@ -200,7 +200,7 @@ static struct platform_driver mxs_sgtl5000_audio_driver = {
                .of_match_table = mxs_sgtl5000_dt_ids,
        },
        .probe = mxs_sgtl5000_probe,
-       .remove = __devexit_p(mxs_sgtl5000_remove),
+       .remove = mxs_sgtl5000_remove,
 };
 
 module_platform_driver(mxs_sgtl5000_audio_driver);
index 946020a..0418467 100644 (file)
@@ -314,7 +314,7 @@ static struct snd_soc_dai_driver nuc900_ac97_dai = {
        .ops = &nuc900_ac97_dai_ops,
 };
 
-static int __devinit nuc900_ac97_drvprobe(struct platform_device *pdev)
+static int nuc900_ac97_drvprobe(struct platform_device *pdev)
 {
        struct nuc900_audio *nuc900_audio;
        int ret;
@@ -382,7 +382,7 @@ out0:
        return ret;
 }
 
-static int __devexit nuc900_ac97_drvremove(struct platform_device *pdev)
+static int nuc900_ac97_drvremove(struct platform_device *pdev)
 {
        snd_soc_unregister_dai(&pdev->dev);
 
@@ -403,7 +403,7 @@ static struct platform_driver nuc900_ac97_driver = {
                .owner  = THIS_MODULE,
        },
        .probe          = nuc900_ac97_drvprobe,
-       .remove         = __devexit_p(nuc900_ac97_drvremove),
+       .remove         = nuc900_ac97_drvremove,
 };
 
 module_platform_driver(nuc900_ac97_driver);
index 37585b4..c894ff0 100644 (file)
@@ -337,12 +337,12 @@ static struct snd_soc_platform_driver nuc900_soc_platform = {
        .pcm_free       = nuc900_dma_free_dma_buffers,
 };
 
-static int __devinit nuc900_soc_platform_probe(struct platform_device *pdev)
+static int nuc900_soc_platform_probe(struct platform_device *pdev)
 {
        return snd_soc_register_platform(&pdev->dev, &nuc900_soc_platform);
 }
 
-static int __devexit nuc900_soc_platform_remove(struct platform_device *pdev)
+static int nuc900_soc_platform_remove(struct platform_device *pdev)
 {
        snd_soc_unregister_platform(&pdev->dev);
        return 0;
@@ -355,7 +355,7 @@ static struct platform_driver nuc900_pcm_driver = {
        },
 
        .probe = nuc900_soc_platform_probe,
-       .remove = __devexit_p(nuc900_soc_platform_remove),
+       .remove = nuc900_soc_platform_remove,
 };
 
 module_platform_driver(nuc900_pcm_driver);
index d8e96b2..2600447 100644 (file)
@@ -575,7 +575,7 @@ static struct snd_soc_card ams_delta_audio_card = {
 };
 
 /* Module init/exit */
-static __devinit int ams_delta_probe(struct platform_device *pdev)
+static int ams_delta_probe(struct platform_device *pdev)
 {
        struct snd_soc_card *card = &ams_delta_audio_card;
        int ret;
@@ -591,7 +591,7 @@ static __devinit int ams_delta_probe(struct platform_device *pdev)
        return 0;
 }
 
-static int __devexit ams_delta_remove(struct platform_device *pdev)
+static int ams_delta_remove(struct platform_device *pdev)
 {
        struct snd_soc_card *card = platform_get_drvdata(pdev);
 
@@ -616,7 +616,7 @@ static struct platform_driver ams_delta_driver = {
                .owner = THIS_MODULE,
        },
        .probe = ams_delta_probe,
-       .remove = __devexit_p(ams_delta_remove),
+       .remove = ams_delta_remove,
 };
 
 module_platform_driver(ams_delta_driver);
index a9a2438..285c836 100644 (file)
@@ -930,8 +930,7 @@ static const struct attribute_group sidetone_attr_group = {
        .attrs = (struct attribute **)sidetone_attrs,
 };
 
-static int __devinit omap_st_add(struct omap_mcbsp *mcbsp,
-                                struct resource *res)
+static int omap_st_add(struct omap_mcbsp *mcbsp, struct resource *res)
 {
        struct omap_mcbsp_st_data *st_data;
        int err;
@@ -957,7 +956,7 @@ static int __devinit omap_st_add(struct omap_mcbsp *mcbsp,
  * McBSP1 and McBSP3 are directly mapped on 1610 and 1510.
  * 730 has only 2 McBSP, and both of them are MPU peripherals.
  */
-int __devinit omap_mcbsp_init(struct platform_device *pdev)
+int omap_mcbsp_init(struct platform_device *pdev)
 {
        struct omap_mcbsp *mcbsp = platform_get_drvdata(pdev);
        struct resource *res;
@@ -1085,7 +1084,7 @@ err_thres:
        return ret;
 }
 
-void __devexit omap_mcbsp_sysfs_remove(struct omap_mcbsp *mcbsp)
+void omap_mcbsp_sysfs_remove(struct omap_mcbsp *mcbsp)
 {
        if (mcbsp->pdata->buffer_size)
                sysfs_remove_group(&mcbsp->dev->kobj, &additional_attr_group);
index a89791c..f93e0b0 100644 (file)
@@ -347,7 +347,7 @@ int omap_st_enable(struct omap_mcbsp *mcbsp);
 int omap_st_disable(struct omap_mcbsp *mcbsp);
 int omap_st_is_enabled(struct omap_mcbsp *mcbsp);
 
-int __devinit omap_mcbsp_init(struct platform_device *pdev);
-void __devexit omap_mcbsp_sysfs_remove(struct omap_mcbsp *mcbsp);
+int omap_mcbsp_init(struct platform_device *pdev);
+void omap_mcbsp_sysfs_remove(struct omap_mcbsp *mcbsp);
 
 #endif /* __ASOC_MCBSP_H */
index 1d6ea86..e7d93fa 100644 (file)
@@ -273,7 +273,7 @@ static struct snd_soc_card omap_abe_card = {
        .num_dapm_routes = ARRAY_SIZE(audio_map),
 };
 
-static __devinit int omap_abe_probe(struct platform_device *pdev)
+static int omap_abe_probe(struct platform_device *pdev)
 {
        struct omap_abe_twl6040_data *pdata = dev_get_platdata(&pdev->dev);
        struct device_node *node = pdev->dev.of_node;
@@ -390,7 +390,7 @@ err_unregister:
        return ret;
 }
 
-static int __devexit omap_abe_remove(struct platform_device *pdev)
+static int omap_abe_remove(struct platform_device *pdev)
 {
        struct snd_soc_card *card = platform_get_drvdata(pdev);
        struct abe_twl6040 *priv = snd_soc_card_get_drvdata(card);
@@ -417,7 +417,7 @@ static struct platform_driver omap_abe_driver = {
                .of_match_table = omap_abe_of_match,
        },
        .probe = omap_abe_probe,
-       .remove = __devexit_p(omap_abe_remove),
+       .remove = omap_abe_remove,
 };
 
 module_platform_driver(omap_abe_driver);
index 5a6aeaf..ba49ccd 100644 (file)
@@ -448,7 +448,7 @@ static struct snd_soc_dai_driver omap_dmic_dai = {
        .ops = &omap_dmic_dai_ops,
 };
 
-static __devinit int asoc_dmic_probe(struct platform_device *pdev)
+static int asoc_dmic_probe(struct platform_device *pdev)
 {
        struct omap_dmic *dmic;
        struct resource *res;
@@ -518,7 +518,7 @@ err_put_clk:
        return ret;
 }
 
-static int __devexit asoc_dmic_remove(struct platform_device *pdev)
+static int asoc_dmic_remove(struct platform_device *pdev)
 {
        struct omap_dmic *dmic = platform_get_drvdata(pdev);
 
@@ -541,7 +541,7 @@ static struct platform_driver asoc_dmic_driver = {
                .of_match_table = omap_dmic_of_match,
        },
        .probe = asoc_dmic_probe,
-       .remove = __devexit_p(asoc_dmic_remove),
+       .remove = asoc_dmic_remove,
 };
 
 module_platform_driver(asoc_dmic_driver);
index eaa2ea0..d4eaa92 100644 (file)
@@ -45,7 +45,7 @@ static struct snd_soc_card snd_soc_omap_hdmi = {
        .num_links = 1,
 };
 
-static __devinit int omap_hdmi_probe(struct platform_device *pdev)
+static int omap_hdmi_probe(struct platform_device *pdev)
 {
        struct snd_soc_card *card = &snd_soc_omap_hdmi;
        int ret;
@@ -61,7 +61,7 @@ static __devinit int omap_hdmi_probe(struct platform_device *pdev)
        return 0;
 }
 
-static int __devexit omap_hdmi_remove(struct platform_device *pdev)
+static int omap_hdmi_remove(struct platform_device *pdev)
 {
        struct snd_soc_card *card = platform_get_drvdata(pdev);
 
@@ -76,7 +76,7 @@ static struct platform_driver omap_hdmi_driver = {
                .owner = THIS_MODULE,
        },
        .probe = omap_hdmi_probe,
-       .remove = __devexit_p(omap_hdmi_remove),
+       .remove = omap_hdmi_remove,
 };
 
 module_platform_driver(omap_hdmi_driver);
index f59c69f..7ea2481 100644 (file)
@@ -262,7 +262,7 @@ static struct snd_soc_dai_driver omap_hdmi_dai = {
        .ops = &omap_hdmi_dai_ops,
 };
 
-static __devinit int omap_hdmi_probe(struct platform_device *pdev)
+static int omap_hdmi_probe(struct platform_device *pdev)
 {
        int ret;
        struct resource *hdmi_rsrc;
@@ -324,7 +324,7 @@ static __devinit int omap_hdmi_probe(struct platform_device *pdev)
        return ret;
 }
 
-static int __devexit omap_hdmi_remove(struct platform_device *pdev)
+static int omap_hdmi_remove(struct platform_device *pdev)
 {
        struct hdmi_priv *hdmi_data = dev_get_drvdata(&pdev->dev);
 
@@ -345,7 +345,7 @@ static struct platform_driver hdmi_dai_driver = {
                .owner = THIS_MODULE,
        },
        .probe = omap_hdmi_probe,
-       .remove = __devexit_p(omap_hdmi_remove),
+       .remove = omap_hdmi_remove,
 };
 
 module_platform_driver(hdmi_dai_driver);
index 0916760..8d2defd 100644 (file)
@@ -757,7 +757,7 @@ static const struct of_device_id omap_mcbsp_of_match[] = {
 };
 MODULE_DEVICE_TABLE(of, omap_mcbsp_of_match);
 
-static __devinit int asoc_mcbsp_probe(struct platform_device *pdev)
+static int asoc_mcbsp_probe(struct platform_device *pdev)
 {
        struct omap_mcbsp_platform_data *pdata = dev_get_platdata(&pdev->dev);
        struct omap_mcbsp *mcbsp;
@@ -798,7 +798,7 @@ static __devinit int asoc_mcbsp_probe(struct platform_device *pdev)
        return ret;
 }
 
-static int __devexit asoc_mcbsp_remove(struct platform_device *pdev)
+static int asoc_mcbsp_remove(struct platform_device *pdev)
 {
        struct omap_mcbsp *mcbsp = platform_get_drvdata(pdev);
 
@@ -824,7 +824,7 @@ static struct platform_driver asoc_mcbsp_driver = {
        },
 
        .probe = asoc_mcbsp_probe,
-       .remove = __devexit_p(asoc_mcbsp_remove),
+       .remove = asoc_mcbsp_remove,
 };
 
 module_platform_driver(asoc_mcbsp_driver);
index 56965bb..2fe8be2 100644 (file)
@@ -429,7 +429,7 @@ void omap_mcpdm_configure_dn_offsets(struct snd_soc_pcm_runtime *rtd,
 }
 EXPORT_SYMBOL_GPL(omap_mcpdm_configure_dn_offsets);
 
-static __devinit int asoc_mcpdm_probe(struct platform_device *pdev)
+static int asoc_mcpdm_probe(struct platform_device *pdev)
 {
        struct omap_mcpdm *mcpdm;
        struct resource *res;
@@ -487,7 +487,7 @@ static __devinit int asoc_mcpdm_probe(struct platform_device *pdev)
        return snd_soc_register_dai(&pdev->dev, &omap_mcpdm_dai);
 }
 
-static int __devexit asoc_mcpdm_remove(struct platform_device *pdev)
+static int asoc_mcpdm_remove(struct platform_device *pdev)
 {
        snd_soc_unregister_dai(&pdev->dev);
        return 0;
@@ -507,7 +507,7 @@ static struct platform_driver asoc_mcpdm_driver = {
        },
 
        .probe  = asoc_mcpdm_probe,
-       .remove = __devexit_p(asoc_mcpdm_remove),
+       .remove = asoc_mcpdm_remove,
 };
 
 module_platform_driver(asoc_mcpdm_driver);
index 340874e..5f7e5b9 100644 (file)
@@ -297,13 +297,13 @@ static struct snd_soc_platform_driver omap_soc_platform = {
        .pcm_free       = omap_pcm_free_dma_buffers,
 };
 
-static __devinit int omap_pcm_probe(struct platform_device *pdev)
+static int omap_pcm_probe(struct platform_device *pdev)
 {
        return snd_soc_register_platform(&pdev->dev,
                        &omap_soc_platform);
 }
 
-static int __devexit omap_pcm_remove(struct platform_device *pdev)
+static int omap_pcm_remove(struct platform_device *pdev)
 {
        snd_soc_unregister_platform(&pdev->dev);
        return 0;
@@ -316,7 +316,7 @@ static struct platform_driver omap_pcm_driver = {
        },
 
        .probe = omap_pcm_probe,
-       .remove = __devexit_p(omap_pcm_remove),
+       .remove = omap_pcm_remove,
 };
 
 module_platform_driver(omap_pcm_driver);
index 3b97b87..4541d28 100644 (file)
@@ -107,7 +107,7 @@ static struct snd_soc_card omap_twl4030_card = {
        .num_links = ARRAY_SIZE(omap_twl4030_dai_links),
 };
 
-static __devinit int omap_twl4030_probe(struct platform_device *pdev)
+static int omap_twl4030_probe(struct platform_device *pdev)
 {
        struct omap_tw4030_pdata *pdata = dev_get_platdata(&pdev->dev);
        struct device_node *node = pdev->dev.of_node;
@@ -154,7 +154,7 @@ static __devinit int omap_twl4030_probe(struct platform_device *pdev)
        return 0;
 }
 
-static int __devexit omap_twl4030_remove(struct platform_device *pdev)
+static int omap_twl4030_remove(struct platform_device *pdev)
 {
        struct snd_soc_card *card = platform_get_drvdata(pdev);
 
@@ -177,7 +177,7 @@ static struct platform_driver omap_twl4030_driver = {
                .of_match_table = omap_twl4030_of_match,
        },
        .probe = omap_twl4030_probe,
-       .remove = __devexit_p(omap_twl4030_remove),
+       .remove = omap_twl4030_remove,
 };
 
 module_platform_driver(omap_twl4030_driver);
index 1ff6bb9..771bff2 100644 (file)
@@ -37,8 +37,6 @@
 #include "omap-mcbsp.h"
 #include "omap-pcm.h"
 
-#define ZOOM2_HEADSET_MUX_GPIO         (OMAP_MAX_GPIO_LINES + 15)
-
 static int zoom2_hw_params(struct snd_pcm_substream *substream,
                                struct snd_pcm_hw_params *params)
 {
@@ -187,9 +185,6 @@ static int __init zoom2_soc_init(void)
        if (ret)
                goto err1;
 
-       BUG_ON(gpio_request(ZOOM2_HEADSET_MUX_GPIO, "hs_mux") < 0);
-       gpio_direction_output(ZOOM2_HEADSET_MUX_GPIO, 0);
-
        return 0;
 
 err1:
@@ -202,8 +197,6 @@ module_init(zoom2_soc_init);
 
 static void __exit zoom2_soc_exit(void)
 {
-       gpio_free(ZOOM2_HEADSET_MUX_GPIO);
-
        platform_device_unregister(zoom2_snd_device);
 }
 module_exit(zoom2_soc_exit);
index 5e666e0..4ad7609 100644 (file)
@@ -140,7 +140,7 @@ static struct snd_soc_card brownstone = {
        .num_dapm_routes = ARRAY_SIZE(brownstone_audio_map),
 };
 
-static int __devinit brownstone_probe(struct platform_device *pdev)
+static int brownstone_probe(struct platform_device *pdev)
 {
        int ret;
 
@@ -152,7 +152,7 @@ static int __devinit brownstone_probe(struct platform_device *pdev)
        return ret;
 }
 
-static int __devexit brownstone_remove(struct platform_device *pdev)
+static int brownstone_remove(struct platform_device *pdev)
 {
        snd_soc_unregister_card(&brownstone);
        return 0;
@@ -164,7 +164,7 @@ static struct platform_driver mmp_driver = {
                .owner  = THIS_MODULE,
        },
        .probe          = brownstone_probe,
-       .remove         = __devexit_p(brownstone_remove),
+       .remove         = brownstone_remove,
 };
 
 module_platform_driver(mmp_driver);
index 863367a..f4cce1e 100644 (file)
@@ -303,7 +303,7 @@ static struct snd_soc_card corgi = {
        .num_dapm_routes = ARRAY_SIZE(corgi_audio_map),
 };
 
-static int __devinit corgi_probe(struct platform_device *pdev)
+static int corgi_probe(struct platform_device *pdev)
 {
        struct snd_soc_card *card = &corgi;
        int ret;
@@ -317,7 +317,7 @@ static int __devinit corgi_probe(struct platform_device *pdev)
        return ret;
 }
 
-static int __devexit corgi_remove(struct platform_device *pdev)
+static int corgi_remove(struct platform_device *pdev)
 {
        struct snd_soc_card *card = platform_get_drvdata(pdev);
 
@@ -331,7 +331,7 @@ static struct platform_driver corgi_driver = {
                .owner  = THIS_MODULE,
        },
        .probe          = corgi_probe,
-       .remove         = __devexit_p(corgi_remove),
+       .remove         = corgi_remove,
 };
 
 module_platform_driver(corgi_driver);
index 7b1bc23..70d799b 100644 (file)
@@ -144,7 +144,7 @@ static struct gpio e740_audio_gpios[] = {
        { GPIO_E740_WM9705_nAVDD2, GPIOF_OUT_INIT_HIGH, "Audio power" },
 };
 
-static int __devinit e740_probe(struct platform_device *pdev)
+static int e740_probe(struct platform_device *pdev)
 {
        struct snd_soc_card *card = &e740;
        int ret;
@@ -165,7 +165,7 @@ static int __devinit e740_probe(struct platform_device *pdev)
        return ret;
 }
 
-static int __devexit e740_remove(struct platform_device *pdev)
+static int e740_remove(struct platform_device *pdev)
 {
        struct snd_soc_card *card = platform_get_drvdata(pdev);
 
@@ -180,7 +180,7 @@ static struct platform_driver e740_driver = {
                .owner  = THIS_MODULE,
        },
        .probe          = e740_probe,
-       .remove         = __devexit_p(e740_remove),
+       .remove         = e740_remove,
 };
 
 module_platform_driver(e740_driver);
index 47b89d7..f94d2ab 100644 (file)
@@ -126,7 +126,7 @@ static struct gpio e750_audio_gpios[] = {
        { GPIO_E750_SPK_AMP_OFF, GPIOF_OUT_INIT_HIGH, "Speaker amp" },
 };
 
-static int __devinit e750_probe(struct platform_device *pdev)
+static int e750_probe(struct platform_device *pdev)
 {
        struct snd_soc_card *card = &e750;
        int ret;
@@ -147,7 +147,7 @@ static int __devinit e750_probe(struct platform_device *pdev)
        return ret;
 }
 
-static int __devexit e750_remove(struct platform_device *pdev)
+static int e750_remove(struct platform_device *pdev)
 {
        struct snd_soc_card *card = platform_get_drvdata(pdev);
 
@@ -162,7 +162,7 @@ static struct platform_driver e750_driver = {
                .owner  = THIS_MODULE,
        },
        .probe          = e750_probe,
-       .remove         = __devexit_p(e750_remove),
+       .remove         = e750_remove,
 };
 
 module_platform_driver(e750_driver);
index ea9707e..8768a64 100644 (file)
@@ -116,7 +116,7 @@ static struct gpio e800_audio_gpios[] = {
        { GPIO_E800_HP_AMP_OFF, GPIOF_OUT_INIT_HIGH, "Speaker amp" },
 };
 
-static int __devinit e800_probe(struct platform_device *pdev)
+static int e800_probe(struct platform_device *pdev)
 {
        struct snd_soc_card *card = &e800;
        int ret;
@@ -137,7 +137,7 @@ static int __devinit e800_probe(struct platform_device *pdev)
        return ret;
 }
 
-static int __devexit e800_remove(struct platform_device *pdev)
+static int e800_remove(struct platform_device *pdev)
 {
        struct snd_soc_card *card = platform_get_drvdata(pdev);
 
@@ -152,7 +152,7 @@ static struct platform_driver e800_driver = {
                .owner  = THIS_MODULE,
        },
        .probe          = e800_probe,
-       .remove         = __devexit_p(e800_remove),
+       .remove         = e800_remove,
 };
 
 module_platform_driver(e800_driver);
index 2a342c9..dcc9b04 100644 (file)
@@ -183,7 +183,7 @@ static struct gpio hx4700_audio_gpios[] = {
        { GPIO92_HX4700_HP_DRIVER, GPIOF_OUT_INIT_LOW, "EP_POWER" },
 };
 
-static int __devinit hx4700_audio_probe(struct platform_device *pdev)
+static int hx4700_audio_probe(struct platform_device *pdev)
 {
        int ret;
 
@@ -204,7 +204,7 @@ static int __devinit hx4700_audio_probe(struct platform_device *pdev)
        return ret;
 }
 
-static int __devexit hx4700_audio_remove(struct platform_device *pdev)
+static int hx4700_audio_remove(struct platform_device *pdev)
 {
        snd_soc_jack_free_gpios(&hs_jack, 1, &hs_jack_gpio);
        snd_soc_unregister_card(&snd_soc_card_hx4700);
@@ -223,7 +223,7 @@ static struct platform_driver hx4700_audio_driver = {
                .pm = &snd_soc_pm_ops,
        },
        .probe  = hx4700_audio_probe,
-       .remove = __devexit_p(hx4700_audio_remove),
+       .remove = hx4700_audio_remove,
 };
 
 module_platform_driver(hx4700_audio_driver);
index b93dafd..eef1f7b 100644 (file)
@@ -65,7 +65,7 @@ static struct snd_soc_card imote2 = {
        .num_links = 1,
 };
 
-static int __devinit imote2_probe(struct platform_device *pdev)
+static int imote2_probe(struct platform_device *pdev)
 {
        struct snd_soc_card *card = &imote2;
        int ret;
@@ -79,7 +79,7 @@ static int __devinit imote2_probe(struct platform_device *pdev)
        return ret;
 }
 
-static int __devexit imote2_remove(struct platform_device *pdev)
+static int imote2_remove(struct platform_device *pdev)
 {
        struct snd_soc_card *card = platform_get_drvdata(pdev);
 
@@ -93,7 +93,7 @@ static struct platform_driver imote2_driver = {
                .owner  = THIS_MODULE,
        },
        .probe          = imote2_probe,
-       .remove         = __devexit_p(imote2_remove),
+       .remove         = imote2_remove,
 };
 
 module_platform_driver(imote2_driver);
index 8687c1c..97b711e 100644 (file)
@@ -186,7 +186,7 @@ static struct snd_soc_card mioa701 = {
        .num_links = ARRAY_SIZE(mioa701_dai),
 };
 
-static int __devinit mioa701_wm9713_probe(struct platform_device *pdev)
+static int mioa701_wm9713_probe(struct platform_device *pdev)
 {
        int rc;
 
@@ -202,7 +202,7 @@ static int __devinit mioa701_wm9713_probe(struct platform_device *pdev)
        return rc;
 }
 
-static int __devexit mioa701_wm9713_remove(struct platform_device *pdev)
+static int mioa701_wm9713_remove(struct platform_device *pdev)
 {
        struct snd_soc_card *card = platform_get_drvdata(pdev);
 
@@ -212,7 +212,7 @@ static int __devexit mioa701_wm9713_remove(struct platform_device *pdev)
 
 static struct platform_driver mioa701_wm9713_driver = {
        .probe          = mioa701_wm9713_probe,
-       .remove         = __devexit_p(mioa701_wm9713_remove),
+       .remove         = mioa701_wm9713_remove,
        .driver         = {
                .name           = "mioa701-wm9713",
                .owner          = THIS_MODULE,
index e834faf..190eb0b 100644 (file)
@@ -257,7 +257,7 @@ struct snd_soc_platform_driver mmp_soc_platform = {
        .pcm_free       = mmp_pcm_free_dma_buffers,
 };
 
-static __devinit int mmp_pcm_probe(struct platform_device *pdev)
+static int mmp_pcm_probe(struct platform_device *pdev)
 {
        struct mmp_audio_platdata *pdata = pdev->dev.platform_data;
 
@@ -274,7 +274,7 @@ static __devinit int mmp_pcm_probe(struct platform_device *pdev)
        return snd_soc_register_platform(&pdev->dev, &mmp_soc_platform);
 }
 
-static int __devexit mmp_pcm_remove(struct platform_device *pdev)
+static int mmp_pcm_remove(struct platform_device *pdev)
 {
        snd_soc_unregister_platform(&pdev->dev);
        return 0;
@@ -287,7 +287,7 @@ static struct platform_driver mmp_pcm_driver = {
        },
 
        .probe = mmp_pcm_probe,
-       .remove = __devexit_p(mmp_pcm_remove),
+       .remove = mmp_pcm_remove,
 };
 
 module_platform_driver(mmp_pcm_driver);
index 4d6cb8a..41c3a09 100644 (file)
@@ -405,7 +405,7 @@ struct snd_soc_dai_driver mmp_sspa_dai = {
        .ops = &mmp_sspa_dai_ops,
 };
 
-static __devinit int asoc_mmp_sspa_probe(struct platform_device *pdev)
+static int asoc_mmp_sspa_probe(struct platform_device *pdev)
 {
        struct sspa_priv *priv;
        struct resource *res;
@@ -453,7 +453,7 @@ static __devinit int asoc_mmp_sspa_probe(struct platform_device *pdev)
        return snd_soc_register_dai(&pdev->dev, &mmp_sspa_dai);
 }
 
-static int __devexit asoc_mmp_sspa_remove(struct platform_device *pdev)
+static int asoc_mmp_sspa_remove(struct platform_device *pdev)
 {
        struct sspa_priv *priv = platform_get_drvdata(pdev);
 
@@ -470,7 +470,7 @@ static struct platform_driver asoc_mmp_sspa_driver = {
                .owner = THIS_MODULE,
        },
        .probe = asoc_mmp_sspa_probe,
-       .remove = __devexit_p(asoc_mmp_sspa_remove),
+       .remove = asoc_mmp_sspa_remove,
 };
 
 module_platform_driver(asoc_mmp_sspa_driver);
index aa3da91..2074e2d 100644 (file)
@@ -187,7 +187,7 @@ put_device:
        return ret;
 }
 
-static int __devexit palm27x_asoc_remove(struct platform_device *pdev)
+static int palm27x_asoc_remove(struct platform_device *pdev)
 {
        platform_device_unregister(palm27x_snd_device);
        return 0;
@@ -195,7 +195,7 @@ static int __devexit palm27x_asoc_remove(struct platform_device *pdev)
 
 static struct platform_driver palm27x_wm9712_driver = {
        .probe          = palm27x_asoc_probe,
-       .remove         = __devexit_p(palm27x_asoc_remove),
+       .remove         = palm27x_asoc_remove,
        .driver         = {
                .name           = "palm27x-asoc",
                .owner          = THIS_MODULE,
index d2cc817..fafe463 100644 (file)
@@ -269,7 +269,7 @@ static struct snd_soc_card poodle = {
        .num_dapm_routes = ARRAY_SIZE(poodle_audio_map),
 };
 
-static int __devinit poodle_probe(struct platform_device *pdev)
+static int poodle_probe(struct platform_device *pdev)
 {
        struct snd_soc_card *card = &poodle;
        int ret;
@@ -291,7 +291,7 @@ static int __devinit poodle_probe(struct platform_device *pdev)
        return ret;
 }
 
-static int __devexit poodle_remove(struct platform_device *pdev)
+static int poodle_remove(struct platform_device *pdev)
 {
        struct snd_soc_card *card = platform_get_drvdata(pdev);
 
@@ -305,7 +305,7 @@ static struct platform_driver poodle_driver = {
                .owner  = THIS_MODULE,
        },
        .probe          = poodle_probe,
-       .remove         = __devexit_p(poodle_remove),
+       .remove         = poodle_remove,
 };
 
 module_platform_driver(poodle_driver);
index 4da5fc5..d3eb0c2 100644 (file)
@@ -794,12 +794,12 @@ static struct snd_soc_dai_driver pxa_ssp_dai = {
                .ops = &pxa_ssp_dai_ops,
 };
 
-static __devinit int asoc_ssp_probe(struct platform_device *pdev)
+static int asoc_ssp_probe(struct platform_device *pdev)
 {
        return snd_soc_register_dai(&pdev->dev, &pxa_ssp_dai);
 }
 
-static int __devexit asoc_ssp_remove(struct platform_device *pdev)
+static int asoc_ssp_remove(struct platform_device *pdev)
 {
        snd_soc_unregister_dai(&pdev->dev);
        return 0;
@@ -812,7 +812,7 @@ static struct platform_driver asoc_ssp_driver = {
        },
 
        .probe = asoc_ssp_probe,
-       .remove = __devexit_p(asoc_ssp_remove),
+       .remove = asoc_ssp_remove,
 };
 
 module_platform_driver(asoc_ssp_driver);
index 06ea274..4b0a009 100644 (file)
@@ -104,7 +104,7 @@ static int pxa2xx_ac97_resume(struct snd_soc_dai *dai)
 #define pxa2xx_ac97_resume     NULL
 #endif
 
-static int __devinit pxa2xx_ac97_probe(struct snd_soc_dai *dai)
+static int pxa2xx_ac97_probe(struct snd_soc_dai *dai)
 {
        return pxa2xx_ac97_hw_probe(to_platform_device(dai->dev));
 }
@@ -234,7 +234,7 @@ static struct snd_soc_dai_driver pxa_ac97_dai_driver[] = {
 
 EXPORT_SYMBOL_GPL(soc_ac97_ops);
 
-static __devinit int pxa2xx_ac97_dev_probe(struct platform_device *pdev)
+static int pxa2xx_ac97_dev_probe(struct platform_device *pdev)
 {
        if (pdev->id != -1) {
                dev_err(&pdev->dev, "PXA2xx has only one AC97 port.\n");
@@ -249,7 +249,7 @@ static __devinit int pxa2xx_ac97_dev_probe(struct platform_device *pdev)
                        ARRAY_SIZE(pxa_ac97_dai_driver));
 }
 
-static int __devexit pxa2xx_ac97_dev_remove(struct platform_device *pdev)
+static int pxa2xx_ac97_dev_remove(struct platform_device *pdev)
 {
        snd_soc_unregister_dais(&pdev->dev, ARRAY_SIZE(pxa_ac97_dai_driver));
        return 0;
@@ -257,7 +257,7 @@ static int __devexit pxa2xx_ac97_dev_remove(struct platform_device *pdev)
 
 static struct platform_driver pxa2xx_ac97_driver = {
        .probe          = pxa2xx_ac97_dev_probe,
-       .remove         = __devexit_p(pxa2xx_ac97_dev_remove),
+       .remove         = pxa2xx_ac97_dev_remove,
        .driver         = {
                .name   = "pxa2xx-ac97",
                .owner  = THIS_MODULE,
index 3075a42..6b1a06f 100644 (file)
@@ -365,7 +365,7 @@ static int pxa2xx_i2s_drv_probe(struct platform_device *pdev)
        return snd_soc_register_dai(&pdev->dev, &pxa_i2s_dai);
 }
 
-static int __devexit pxa2xx_i2s_drv_remove(struct platform_device *pdev)
+static int pxa2xx_i2s_drv_remove(struct platform_device *pdev)
 {
        snd_soc_unregister_dai(&pdev->dev);
        return 0;
@@ -373,7 +373,7 @@ static int __devexit pxa2xx_i2s_drv_remove(struct platform_device *pdev)
 
 static struct platform_driver pxa2xx_i2s_driver = {
        .probe = pxa2xx_i2s_drv_probe,
-       .remove = __devexit_p(pxa2xx_i2s_drv_remove),
+       .remove = pxa2xx_i2s_drv_remove,
 
        .driver = {
                .name = "pxa2xx-i2s",
index fdd6bed..ecff116 100644 (file)
@@ -120,12 +120,12 @@ static struct snd_soc_platform_driver pxa2xx_soc_platform = {
        .pcm_free       = pxa2xx_pcm_free_dma_buffers,
 };
 
-static int __devinit pxa2xx_soc_platform_probe(struct platform_device *pdev)
+static int pxa2xx_soc_platform_probe(struct platform_device *pdev)
 {
        return snd_soc_register_platform(&pdev->dev, &pxa2xx_soc_platform);
 }
 
-static int __devexit pxa2xx_soc_platform_remove(struct platform_device *pdev)
+static int pxa2xx_soc_platform_remove(struct platform_device *pdev)
 {
        snd_soc_unregister_platform(&pdev->dev);
        return 0;
@@ -138,7 +138,7 @@ static struct platform_driver pxa_pcm_driver = {
        },
 
        .probe = pxa2xx_soc_platform_probe,
-       .remove = __devexit_p(pxa2xx_soc_platform_remove),
+       .remove = pxa2xx_soc_platform_remove,
 };
 
 module_platform_driver(pxa_pcm_driver);
index 2aec63f..a3fe191 100644 (file)
@@ -241,7 +241,7 @@ static struct snd_soc_card tosa = {
        .num_links = ARRAY_SIZE(tosa_dai),
 };
 
-static int __devinit tosa_probe(struct platform_device *pdev)
+static int tosa_probe(struct platform_device *pdev)
 {
        struct snd_soc_card *card = &tosa;
        int ret;
@@ -262,7 +262,7 @@ static int __devinit tosa_probe(struct platform_device *pdev)
        return ret;
 }
 
-static int __devexit tosa_remove(struct platform_device *pdev)
+static int tosa_remove(struct platform_device *pdev)
 {
        struct snd_soc_card *card = platform_get_drvdata(pdev);
 
@@ -277,7 +277,7 @@ static struct platform_driver tosa_driver = {
                .owner  = THIS_MODULE,
        },
        .probe          = tosa_probe,
-       .remove         = __devexit_p(tosa_remove),
+       .remove         = tosa_remove,
 };
 
 module_platform_driver(tosa_driver);
index 935491a..f4ea4f6 100644 (file)
@@ -131,7 +131,7 @@ static struct snd_soc_card ttc_dkb_card = {
        .num_dapm_routes = ARRAY_SIZE(ttc_audio_map),
 };
 
-static int __devinit ttc_dkb_probe(struct platform_device *pdev)
+static int ttc_dkb_probe(struct platform_device *pdev)
 {
        struct snd_soc_card *card = &ttc_dkb_card;
        int ret;
@@ -146,7 +146,7 @@ static int __devinit ttc_dkb_probe(struct platform_device *pdev)
        return ret;
 }
 
-static int __devexit ttc_dkb_remove(struct platform_device *pdev)
+static int ttc_dkb_remove(struct platform_device *pdev)
 {
        struct snd_soc_card *card = platform_get_drvdata(pdev);
 
@@ -161,7 +161,7 @@ static struct platform_driver ttc_dkb_driver = {
                .owner  = THIS_MODULE,
        },
        .probe          = ttc_dkb_probe,
-       .remove         = __devexit_p(ttc_dkb_remove),
+       .remove         = ttc_dkb_remove,
 };
 
 module_platform_driver(ttc_dkb_driver);
index aaabdba..fee4d47 100644 (file)
@@ -436,7 +436,7 @@ static struct snd_soc_dai_driver s6000_i2s_dai = {
        .ops = &s6000_i2s_dai_ops,
 };
 
-static int __devinit s6000_i2s_probe(struct platform_device *pdev)
+static int s6000_i2s_probe(struct platform_device *pdev)
 {
        struct s6000_i2s_dev *dev;
        struct resource *scbmem, *sifmem, *region, *dma1, *dma2;
@@ -566,7 +566,7 @@ err_release_none:
        return ret;
 }
 
-static void __devexit s6000_i2s_remove(struct platform_device *pdev)
+static void s6000_i2s_remove(struct platform_device *pdev)
 {
        struct s6000_i2s_dev *dev = dev_get_drvdata(&pdev->dev);
        struct resource *region;
@@ -597,7 +597,7 @@ static void __devexit s6000_i2s_remove(struct platform_device *pdev)
 
 static struct platform_driver s6000_i2s_driver = {
        .probe  = s6000_i2s_probe,
-       .remove = __devexit_p(s6000_i2s_remove),
+       .remove = s6000_i2s_remove,
        .driver = {
                .name   = "s6000-i2s",
                .owner  = THIS_MODULE,
index 716da86..1358c7d 100644 (file)
@@ -500,12 +500,12 @@ static struct snd_soc_platform_driver s6000_soc_platform = {
        .pcm_free =     s6000_pcm_free,
 };
 
-static int __devinit s6000_soc_platform_probe(struct platform_device *pdev)
+static int s6000_soc_platform_probe(struct platform_device *pdev)
 {
        return snd_soc_register_platform(&pdev->dev, &s6000_soc_platform);
 }
 
-static int __devexit s6000_soc_platform_remove(struct platform_device *pdev)
+static int s6000_soc_platform_remove(struct platform_device *pdev)
 {
        snd_soc_unregister_platform(&pdev->dev);
        return 0;
@@ -518,7 +518,7 @@ static struct platform_driver s6000_pcm_driver = {
        },
 
        .probe = s6000_soc_platform_probe,
-       .remove = __devexit_p(s6000_soc_platform_remove),
+       .remove = s6000_soc_platform_remove,
 };
 
 module_platform_driver(s6000_pcm_driver);
index 386bab1..0df3c56 100644 (file)
@@ -370,7 +370,7 @@ static struct snd_soc_dai_driver s3c_ac97_dai[] = {
        },
 };
 
-static __devinit int s3c_ac97_probe(struct platform_device *pdev)
+static int s3c_ac97_probe(struct platform_device *pdev)
 {
        struct resource *mem_res, *dmatx_res, *dmarx_res, *dmamic_res, *irq_res;
        struct s3c_audio_pdata *ac97_pdata;
@@ -462,8 +462,15 @@ static __devinit int s3c_ac97_probe(struct platform_device *pdev)
        if (ret)
                goto err5;
 
-       return 0;
+       ret = asoc_dma_platform_register(&pdev->dev);
+       if (ret) {
+               dev_err(&pdev->dev, "failed to get register DMA: %d\n", ret);
+               goto err6;
+       }
 
+       return 0;
+err6:
+       snd_soc_unregister_dais(&pdev->dev, ARRAY_SIZE(s3c_ac97_dai));
 err5:
        free_irq(irq_res->start, NULL);
 err4:
@@ -478,10 +485,11 @@ err1:
        return ret;
 }
 
-static __devexit int s3c_ac97_remove(struct platform_device *pdev)
+static int s3c_ac97_remove(struct platform_device *pdev)
 {
        struct resource *mem_res, *irq_res;
 
+       asoc_dma_platform_unregister(&pdev->dev);
        snd_soc_unregister_dais(&pdev->dev, ARRAY_SIZE(s3c_ac97_dai));
 
        irq_res = platform_get_resource(pdev, IORESOURCE_IRQ, 0);
@@ -502,7 +510,7 @@ static __devexit int s3c_ac97_remove(struct platform_device *pdev)
 
 static struct platform_driver s3c_ac97_driver = {
        .probe  = s3c_ac97_probe,
-       .remove = __devexit_p(s3c_ac97_remove),
+       .remove = s3c_ac97_remove,
        .driver = {
                .name = "samsung-ac97",
                .owner = THIS_MODULE,
index 59ffd6c..ceed466 100644 (file)
@@ -233,7 +233,7 @@ static struct snd_soc_dai_link bells_dai_wm2200[] = {
                .stream_name = "CPU-DSP",
                .cpu_dai_name = "samsung-i2s.0",
                .codec_dai_name = "wm0010-sdi1",
-               .platform_name = "samsung-audio",
+               .platform_name = "samsung-i2s.0",
                .codec_name = "spi0.0",
                .dai_fmt = SND_SOC_DAIFMT_I2S | SND_SOC_DAIFMT_NB_NF
                                | SND_SOC_DAIFMT_CBM_CFM,
@@ -257,7 +257,7 @@ static struct snd_soc_dai_link bells_dai_wm5102[] = {
                .stream_name = "CPU-DSP",
                .cpu_dai_name = "samsung-i2s.0",
                .codec_dai_name = "wm0010-sdi1",
-               .platform_name = "samsung-audio",
+               .platform_name = "samsung-i2s.0",
                .codec_name = "spi0.0",
                .dai_fmt = SND_SOC_DAIFMT_I2S | SND_SOC_DAIFMT_NB_NF
                                | SND_SOC_DAIFMT_CBM_CFM,
@@ -303,7 +303,7 @@ static struct snd_soc_dai_link bells_dai_wm5110[] = {
                .stream_name = "CPU-DSP",
                .cpu_dai_name = "samsung-i2s.0",
                .codec_dai_name = "wm0010-sdi1",
-               .platform_name = "samsung-audio",
+               .platform_name = "samsung-i2s.0",
                .codec_name = "spi0.0",
                .dai_fmt = SND_SOC_DAIFMT_I2S | SND_SOC_DAIFMT_NB_NF
                                | SND_SOC_DAIFMT_CBM_CFM,
@@ -412,7 +412,7 @@ static struct snd_soc_card bells_cards[] = {
 };
 
 
-static __devinit int bells_probe(struct platform_device *pdev)
+static int bells_probe(struct platform_device *pdev)
 {
        int ret;
 
@@ -429,7 +429,7 @@ static __devinit int bells_probe(struct platform_device *pdev)
        return 0;
 }
 
-static int __devexit bells_remove(struct platform_device *pdev)
+static int bells_remove(struct platform_device *pdev)
 {
        snd_soc_unregister_card(&bells_cards[pdev->id]);
 
@@ -443,7 +443,7 @@ static struct platform_driver bells_driver = {
                .pm = &snd_soc_pm_ops,
        },
        .probe = bells_probe,
-       .remove = __devexit_p(bells_remove),
+       .remove = bells_remove,
 };
 
 module_platform_driver(bells_driver);
index b70964e..db87628 100644 (file)
@@ -432,30 +432,18 @@ static struct snd_soc_platform_driver samsung_asoc_platform = {
        .pcm_free       = dma_free_dma_buffers,
 };
 
-static int __devinit samsung_asoc_platform_probe(struct platform_device *pdev)
+int asoc_dma_platform_register(struct device *dev)
 {
-       return snd_soc_register_platform(&pdev->dev, &samsung_asoc_platform);
+       return snd_soc_register_platform(dev, &samsung_asoc_platform);
 }
+EXPORT_SYMBOL_GPL(asoc_dma_platform_register);
 
-static int __devexit samsung_asoc_platform_remove(struct platform_device *pdev)
+void asoc_dma_platform_unregister(struct device *dev)
 {
-       snd_soc_unregister_platform(&pdev->dev);
-       return 0;
+       snd_soc_unregister_platform(dev);
 }
-
-static struct platform_driver asoc_dma_driver = {
-       .driver = {
-               .name = "samsung-audio",
-               .owner = THIS_MODULE,
-       },
-
-       .probe = samsung_asoc_platform_probe,
-       .remove = __devexit_p(samsung_asoc_platform_remove),
-};
-
-module_platform_driver(asoc_dma_driver);
+EXPORT_SYMBOL_GPL(asoc_dma_platform_unregister);
 
 MODULE_AUTHOR("Ben Dooks, <ben@simtec.co.uk>");
 MODULE_DESCRIPTION("Samsung ASoC DMA Driver");
 MODULE_LICENSE("GPL");
-MODULE_ALIAS("platform:samsung-audio");
index 7d1ead7..73d8c7c 100644 (file)
@@ -21,4 +21,7 @@ struct s3c_dma_params {
        struct samsung_dma_ops *ops;
 };
 
+int asoc_dma_platform_register(struct device *dev);
+void asoc_dma_platform_unregister(struct device *dev);
+
 #endif
index c23c2ae..d37ede5 100644 (file)
@@ -228,7 +228,7 @@ static struct snd_soc_dai_link goni_dai[] = {
        .stream_name = "WM8994 HiFi",
        .cpu_dai_name = "samsung-i2s.0",
        .codec_dai_name = "wm8994-aif1",
-       .platform_name = "samsung-audio",
+       .platform_name = "samsung-i2s.0",
        .codec_name = "wm8994-codec.0-001a",
        .init = goni_wm8994_init,
        .ops = &goni_hifi_ops,
index 6e32577..3870e96 100644 (file)
@@ -207,7 +207,7 @@ static struct snd_soc_dai_link h1940_uda1380_dai[] = {
                .cpu_dai_name   = "s3c24xx-iis",
                .codec_dai_name = "uda1380-hifi",
                .init           = h1940_uda1380_init,
-               .platform_name  = "samsung-audio",
+               .platform_name  = "s3c24xx-iis",
                .codec_name     = "uda1380-codec.0-001a",
                .ops            = &h1940_ops,
        },
index aaf57b7..d2d124f 100644 (file)
@@ -952,8 +952,7 @@ static const struct snd_soc_dai_ops samsung_i2s_dai_ops = {
                                        SNDRV_PCM_FMTBIT_S16_LE | \
                                        SNDRV_PCM_FMTBIT_S24_LE)
 
-static __devinit
-struct i2s_dai *i2s_alloc_dai(struct platform_device *pdev, bool sec)
+static struct i2s_dai *i2s_alloc_dai(struct platform_device *pdev, bool sec)
 {
        struct i2s_dai *i2s;
 
@@ -994,7 +993,7 @@ struct i2s_dai *i2s_alloc_dai(struct platform_device *pdev, bool sec)
        return i2s;
 }
 
-static __devinit int samsung_i2s_probe(struct platform_device *pdev)
+static int samsung_i2s_probe(struct platform_device *pdev)
 {
        u32 dma_pl_chan, dma_cp_chan, dma_pl_sec_chan;
        struct i2s_dai *pri_dai, *sec_dai = NULL;
@@ -1009,6 +1008,7 @@ static __devinit int samsung_i2s_probe(struct platform_device *pdev)
                sec_dai = dev_get_drvdata(&pdev->dev);
                snd_soc_register_dai(&sec_dai->pdev->dev,
                        &sec_dai->i2s_dai_drv);
+               asoc_dma_platform_register(&pdev->dev);
                return 0;
        }
 
@@ -1107,6 +1107,8 @@ static __devinit int samsung_i2s_probe(struct platform_device *pdev)
 
        pm_runtime_enable(&pdev->dev);
 
+       asoc_dma_platform_register(&pdev->dev);
+
        return 0;
 err:
        release_mem_region(regs_base, resource_size(res));
@@ -1114,7 +1116,7 @@ err:
        return ret;
 }
 
-static __devexit int samsung_i2s_remove(struct platform_device *pdev)
+static int samsung_i2s_remove(struct platform_device *pdev)
 {
        struct i2s_dai *i2s, *other;
        struct resource *res;
@@ -1135,6 +1137,7 @@ static __devexit int samsung_i2s_remove(struct platform_device *pdev)
        i2s->pri_dai = NULL;
        i2s->sec_dai = NULL;
 
+       asoc_dma_platform_unregister(&pdev->dev);
        snd_soc_unregister_dai(&pdev->dev);
 
        return 0;
@@ -1142,7 +1145,7 @@ static __devexit int samsung_i2s_remove(struct platform_device *pdev)
 
 static struct platform_driver samsung_i2s_driver = {
        .probe  = samsung_i2s_probe,
-       .remove = __devexit_p(samsung_i2s_remove),
+       .remove = samsung_i2s_remove,
        .driver = {
                .name = "samsung-i2s",
                .owner = THIS_MODULE,
index c227c31..a07950b 100644 (file)
@@ -416,12 +416,12 @@ static struct snd_soc_platform_driver asoc_idma_platform = {
        .pcm_free = idma_free,
 };
 
-static int __devinit asoc_idma_platform_probe(struct platform_device *pdev)
+static int asoc_idma_platform_probe(struct platform_device *pdev)
 {
        return snd_soc_register_platform(&pdev->dev, &asoc_idma_platform);
 }
 
-static int __devexit asoc_idma_platform_remove(struct platform_device *pdev)
+static int asoc_idma_platform_remove(struct platform_device *pdev)
 {
        snd_soc_unregister_platform(&pdev->dev);
        return 0;
@@ -434,7 +434,7 @@ static struct platform_driver asoc_idma_driver = {
        },
 
        .probe = asoc_idma_platform_probe,
-       .remove = __devexit_p(asoc_idma_platform_remove),
+       .remove = asoc_idma_platform_remove,
 };
 
 module_platform_driver(asoc_idma_driver);
index 1578663..b5f6abd 100644 (file)
@@ -118,7 +118,7 @@ static struct snd_soc_dai_link jive_dai = {
        .stream_name    = "WM8750",
        .cpu_dai_name   = "s3c2412-i2s",
        .codec_dai_name = "wm8750-hifi",
-       .platform_name  = "samsung-audio",
+       .platform_name  = "s3c2412-i2s",
        .codec_name     = "wm8750.0-001a",
        .init           = jive_wm8750_init,
        .ops            = &jive_ops,
index ee52c8a..bfb91f3 100644 (file)
@@ -145,7 +145,7 @@ static struct snd_soc_dai_link littlemill_dai[] = {
                .stream_name = "CPU",
                .cpu_dai_name = "samsung-i2s.0",
                .codec_dai_name = "wm8994-aif1",
-               .platform_name = "samsung-audio",
+               .platform_name = "samsung-i2s.0",
                .codec_name = "wm8994-codec",
                .dai_fmt = SND_SOC_DAIFMT_I2S | SND_SOC_DAIFMT_NB_NF
                                | SND_SOC_DAIFMT_CBM_CFM,
@@ -270,7 +270,7 @@ static int littlemill_late_probe(struct snd_soc_card *card)
                return ret;
 
        /* This will check device compatibility itself */
-       wm8958_mic_detect(codec, &littlemill_headset, NULL, NULL);
+       wm8958_mic_detect(codec, &littlemill_headset, NULL, NULL, NULL, NULL);
 
        /* As will this */
        wm8994_mic_detect(codec, &littlemill_headset, 1);
@@ -297,7 +297,7 @@ static struct snd_soc_card littlemill = {
        .late_probe = littlemill_late_probe,
 };
 
-static __devinit int littlemill_probe(struct platform_device *pdev)
+static int littlemill_probe(struct platform_device *pdev)
 {
        struct snd_soc_card *card = &littlemill;
        int ret;
@@ -314,7 +314,7 @@ static __devinit int littlemill_probe(struct platform_device *pdev)
        return 0;
 }
 
-static int __devexit littlemill_remove(struct platform_device *pdev)
+static int littlemill_remove(struct platform_device *pdev)
 {
        struct snd_soc_card *card = platform_get_drvdata(pdev);
 
@@ -330,7 +330,7 @@ static struct platform_driver littlemill_driver = {
                .pm = &snd_soc_pm_ops,
        },
        .probe = littlemill_probe,
-       .remove = __devexit_p(littlemill_remove),
+       .remove = littlemill_remove,
 };
 
 module_platform_driver(littlemill_driver);
index 69c4a59..9342fc2 100644 (file)
@@ -28,7 +28,7 @@ static struct snd_soc_dai_link ln2440sbc_dai[] = {
        .cpu_dai_name = "samsung-ac97",
        .codec_dai_name = "ac97-hifi",
        .codec_name = "ac97-codec",
-       .platform_name = "samsung-audio",
+       .platform_name = "samsung-ac97",
 },
 };
 
index 6abf341..570cf52 100644 (file)
@@ -99,7 +99,7 @@ static struct snd_soc_dai_link lowland_dai[] = {
                .stream_name = "CPU",
                .cpu_dai_name = "samsung-i2s.0",
                .codec_dai_name = "wm5100-aif1",
-               .platform_name = "samsung-audio",
+               .platform_name = "samsung-i2s.0",
                .codec_name = "wm5100.1-001a",
                .dai_fmt = SND_SOC_DAIFMT_I2S | SND_SOC_DAIFMT_NB_NF |
                                SND_SOC_DAIFMT_CBM_CFM,
@@ -180,7 +180,7 @@ static struct snd_soc_card lowland = {
        .num_dapm_routes = ARRAY_SIZE(audio_paths),
 };
 
-static __devinit int lowland_probe(struct platform_device *pdev)
+static int lowland_probe(struct platform_device *pdev)
 {
        struct snd_soc_card *card = &lowland;
        int ret;
@@ -197,7 +197,7 @@ static __devinit int lowland_probe(struct platform_device *pdev)
        return 0;
 }
 
-static int __devexit lowland_remove(struct platform_device *pdev)
+static int lowland_remove(struct platform_device *pdev)
 {
        struct snd_soc_card *card = platform_get_drvdata(pdev);
 
@@ -213,7 +213,7 @@ static struct platform_driver lowland_driver = {
                .pm = &snd_soc_pm_ops,
        },
        .probe = lowland_probe,
-       .remove = __devexit_p(lowland_remove),
+       .remove = lowland_remove,
 };
 
 module_platform_driver(lowland_driver);
index 321d511..c7e965f 100644 (file)
@@ -364,7 +364,7 @@ static struct snd_soc_dai_link neo1973_dai[] = {
 { /* Hifi Playback - for similatious use with voice below */
        .name = "WM8753",
        .stream_name = "WM8753 HiFi",
-       .platform_name = "samsung-audio",
+       .platform_name = "s3c24xx-iis",
        .cpu_dai_name = "s3c24xx-iis",
        .codec_dai_name = "wm8753-hifi",
        .codec_name = "wm8753.0-001a",
index 45f4a75..13bab79 100644 (file)
@@ -490,7 +490,7 @@ static struct snd_soc_dai_driver s3c_pcm_dai[] = {
        },
 };
 
-static __devinit int s3c_pcm_dev_probe(struct platform_device *pdev)
+static int s3c_pcm_dev_probe(struct platform_device *pdev)
 {
        struct s3c_pcm_info *pcm;
        struct resource *mem_res, *dmatx_res, *dmarx_res;
@@ -589,8 +589,16 @@ static __devinit int s3c_pcm_dev_probe(struct platform_device *pdev)
                goto err5;
        }
 
+       ret = asoc_dma_platform_register(&pdev->dev);
+       if (ret) {
+               dev_err(&pdev->dev, "failed to get register DMA: %d\n", ret);
+               goto err6;
+       }
+
        return 0;
 
+err6:
+       snd_soc_unregister_dai(&pdev->dev);
 err5:
        clk_disable_unprepare(pcm->pclk);
        clk_put(pcm->pclk);
@@ -605,11 +613,12 @@ err1:
        return ret;
 }
 
-static __devexit int s3c_pcm_dev_remove(struct platform_device *pdev)
+static int s3c_pcm_dev_remove(struct platform_device *pdev)
 {
        struct s3c_pcm_info *pcm = &s3c_pcm[pdev->id];
        struct resource *mem_res;
 
+       asoc_dma_platform_unregister(&pdev->dev);
        snd_soc_unregister_dai(&pdev->dev);
 
        pm_runtime_disable(&pdev->dev);
@@ -629,7 +638,7 @@ static __devexit int s3c_pcm_dev_remove(struct platform_device *pdev)
 
 static struct platform_driver s3c_pcm_driver = {
        .probe  = s3c_pcm_dev_probe,
-       .remove = __devexit_p(s3c_pcm_dev_remove),
+       .remove = s3c_pcm_dev_remove,
        .driver = {
                .name = "samsung-pcm",
                .owner = THIS_MODULE,
index 21e1236..a5826ea 100644 (file)
@@ -85,7 +85,7 @@ static struct snd_soc_dai_link rx1950_uda1380_dai[] = {
                .cpu_dai_name   = "s3c24xx-iis",
                .codec_dai_name = "uda1380-hifi",
                .init           = rx1950_uda1380_init,
-               .platform_name  = "samsung-audio",
+               .platform_name  = "s3c24xx-iis",
                .codec_name     = "uda1380-codec.0-001a",
                .ops            = &rx1950_ops,
        },
index ac7701b..2213377 100644 (file)
@@ -160,20 +160,38 @@ static struct snd_soc_dai_driver s3c2412_i2s_dai = {
        .ops = &s3c2412_i2s_dai_ops,
 };
 
-static __devinit int s3c2412_iis_dev_probe(struct platform_device *pdev)
+static int s3c2412_iis_dev_probe(struct platform_device *pdev)
 {
-       return s3c_i2sv2_register_dai(&pdev->dev, -1, &s3c2412_i2s_dai);
+       int ret = 0;
+
+       ret = s3c_i2sv2_register_dai(&pdev->dev, -1, &s3c2412_i2s_dai);
+       if (ret) {
+               pr_err("failed to register the dai\n");
+               return ret;
+       }
+
+       ret = asoc_dma_platform_register(&pdev->dev);
+       if (ret) {
+               pr_err("failed to register the DMA: %d\n", ret);
+               goto err;
+       }
+
+       return 0;
+err:
+       snd_soc_unregister_dai(&pdev->dev);
+       return ret;
 }
 
-static __devexit int s3c2412_iis_dev_remove(struct platform_device *pdev)
+static int s3c2412_iis_dev_remove(struct platform_device *pdev)
 {
+       asoc_dma_platform_unregister(&pdev->dev);
        snd_soc_unregister_dai(&pdev->dev);
        return 0;
 }
 
 static struct platform_driver s3c2412_iis_driver = {
        .probe  = s3c2412_iis_dev_probe,
-       .remove = __devexit_p(s3c2412_iis_dev_remove),
+       .remove = s3c2412_iis_dev_remove,
        .driver = {
                .name = "s3c2412-iis",
                .owner = THIS_MODULE,
index 0aae3a3..ee10e87 100644 (file)
@@ -465,20 +465,38 @@ static struct snd_soc_dai_driver s3c24xx_i2s_dai = {
        .ops = &s3c24xx_i2s_dai_ops,
 };
 
-static __devinit int s3c24xx_iis_dev_probe(struct platform_device *pdev)
+static int s3c24xx_iis_dev_probe(struct platform_device *pdev)
 {
-       return snd_soc_register_dai(&pdev->dev, &s3c24xx_i2s_dai);
+       int ret = 0;
+
+       ret = s3c_i2sv2_register_dai(&pdev->dev, -1, &s3c2412_i2s_dai);
+       if (ret) {
+               pr_err("failed to register the dai\n");
+               return ret;
+       }
+
+       ret = asoc_dma_platform_register(&pdev->dev);
+       if (ret) {
+               pr_err("failed to register the dma: %d\n", ret);
+               goto err;
+       }
+
+       return 0;
+err:
+       snd_soc_unregister_dai(&pdev->dev);
+       return ret;
 }
 
-static __devexit int s3c24xx_iis_dev_remove(struct platform_device *pdev)
+static int s3c24xx_iis_dev_remove(struct platform_device *pdev)
 {
+       asoc_dma_platform_unregister(&pdev->dev);
        snd_soc_unregister_dai(&pdev->dev);
        return 0;
 }
 
 static struct platform_driver s3c24xx_iis_driver = {
        .probe  = s3c24xx_iis_dev_probe,
-       .remove = __devexit_p(s3c24xx_iis_dev_remove),
+       .remove = s3c24xx_iis_dev_remove,
        .driver = {
                .name = "s3c24xx-iis",
                .owner = THIS_MODULE,
index 335a7d8..2c015f6 100644 (file)
@@ -313,8 +313,8 @@ const struct dev_pm_ops simtec_audio_pmops = {
 EXPORT_SYMBOL_GPL(simtec_audio_pmops);
 #endif
 
-int __devinit simtec_audio_core_probe(struct platform_device *pdev,
-                                     struct snd_soc_card *card)
+int simtec_audio_core_probe(struct platform_device *pdev,
+                           struct snd_soc_card *card)
 {
        struct platform_device *snd_dev;
        int ret;
@@ -371,7 +371,7 @@ err_clk:
 }
 EXPORT_SYMBOL_GPL(simtec_audio_core_probe);
 
-int __devexit simtec_audio_remove(struct platform_device *pdev)
+int simtec_audio_remove(struct platform_device *pdev)
 {
        struct platform_device *snd_dev = platform_get_drvdata(pdev);
 
index 7ace6a8..d8a0543 100644 (file)
@@ -82,7 +82,7 @@ static struct snd_soc_dai_link simtec_dai_aic33 = {
        .codec_name     = "tlv320aic3x-codec.0-001a",
        .cpu_dai_name   = "s3c24xx-iis",
        .codec_dai_name = "tlv320aic3x-hifi",
-       .platform_name  = "samsung-audio",
+       .platform_name  = "s3c24xx-iis",
        .init           = simtec_hermes_init,
 };
 
@@ -99,7 +99,7 @@ static struct snd_soc_card snd_soc_machine_simtec_aic33 = {
        .num_dapm_routes = ARRAY_SIZE(base_map),
 };
 
-static int __devinit simtec_audio_hermes_probe(struct platform_device *pd)
+static int simtec_audio_hermes_probe(struct platform_device *pd)
 {
        dev_info(&pd->dev, "probing....\n");
        return simtec_audio_core_probe(pd, &snd_soc_machine_simtec_aic33);
@@ -112,7 +112,7 @@ static struct platform_driver simtec_audio_hermes_platdrv = {
                .pm     = simtec_audio_pm,
        },
        .probe  = simtec_audio_hermes_probe,
-       .remove = __devexit_p(simtec_audio_remove),
+       .remove = simtec_audio_remove,
 };
 
 module_platform_driver(simtec_audio_hermes_platdrv);
index c42d5f0..1ac0d7a 100644 (file)
@@ -71,7 +71,7 @@ static struct snd_soc_dai_link simtec_dai_aic23 = {
        .codec_name     = "tlv320aic3x-codec.0-001a",
        .cpu_dai_name   = "s3c24xx-iis",
        .codec_dai_name = "tlv320aic3x-hifi",
-       .platform_name  = "samsung-audio",
+       .platform_name  = "s3c24xx-iis",
        .init           = simtec_tlv320aic23_init,
 };
 
@@ -88,7 +88,7 @@ static struct snd_soc_card snd_soc_machine_simtec_aic23 = {
        .num_dapm_routes = ARRAY_SIZE(base_map),
 };
 
-static int __devinit simtec_audio_tlv320aic23_probe(struct platform_device *pd)
+static int simtec_audio_tlv320aic23_probe(struct platform_device *pd)
 {
        return simtec_audio_core_probe(pd, &snd_soc_machine_simtec_aic23);
 }
@@ -100,7 +100,7 @@ static struct platform_driver simtec_audio_tlv320aic23_driver = {
                .pm     = simtec_audio_pm,
        },
        .probe  = simtec_audio_tlv320aic23_probe,
-       .remove = __devexit_p(simtec_audio_remove),
+       .remove = simtec_audio_remove,
 };
 
 module_platform_driver(simtec_audio_tlv320aic23_driver);
index d731042..333e1b7 100644 (file)
@@ -224,7 +224,7 @@ static struct snd_soc_dai_link s3c24xx_uda134x_dai_link = {
        .codec_dai_name = "uda134x-hifi",
        .cpu_dai_name = "s3c24xx-iis",
        .ops = &s3c24xx_uda134x_ops,
-       .platform_name  = "samsung-audio",
+       .platform_name  = "s3c24xx-iis",
 };
 
 static struct snd_soc_card snd_soc_s3c24xx_uda134x = {
index f2dcb42..58ae323 100644 (file)
@@ -189,7 +189,7 @@ static struct snd_soc_dai_link smartq_dai[] = {
                .stream_name    = "SmartQ Hi-Fi",
                .cpu_dai_name   = "samsung-i2s.0",
                .codec_dai_name = "wm8750-hifi",
-               .platform_name  = "samsung-audio",
+               .platform_name  = "samsung-i2s.0",
                .codec_name     = "wm8750.0-0x1a",
                .init           = smartq_wm8987_init,
                .ops            = &smartq_hifi_ops,
index 720ba29..c390aad 100644 (file)
@@ -24,7 +24,7 @@ static struct snd_soc_dai_link smdk2443_dai[] = {
        .cpu_dai_name = "samsung-ac97",
        .codec_dai_name = "ac97-hifi",
        .codec_name = "ac97-codec",
-       .platform_name = "samsung-audio",
+       .platform_name = "samsung-ac97",
 },
 };
 
index beaa9c1..a2f2363 100644 (file)
@@ -151,7 +151,7 @@ static struct snd_soc_ops smdk_spdif_ops = {
 static struct snd_soc_dai_link smdk_dai = {
        .name = "S/PDIF",
        .stream_name = "S/PDIF PCM Playback",
-       .platform_name = "samsung-audio",
+       .platform_name = "samsung-spdif",
        .cpu_dai_name = "samsung-spdif",
        .codec_dai_name = "dit-hifi",
        .codec_name = "spdif-dit",
index ade2809..7e2b710 100644 (file)
@@ -176,7 +176,7 @@ static struct snd_soc_dai_link smdk_dai[] = {
                .stream_name = "Playback",
                .cpu_dai_name = "samsung-i2s.0",
                .codec_dai_name = "wm8580-hifi-playback",
-               .platform_name = "samsung-audio",
+               .platform_name = "samsung-i2s.0",
                .codec_name = "wm8580.0-001b",
                .ops = &smdk_ops,
        },
@@ -185,7 +185,7 @@ static struct snd_soc_dai_link smdk_dai[] = {
                .stream_name = "Capture",
                .cpu_dai_name = "samsung-i2s.0",
                .codec_dai_name = "wm8580-hifi-capture",
-               .platform_name = "samsung-audio",
+               .platform_name = "samsung-i2s.0",
                .codec_name = "wm8580.0-001b",
                .init = smdk_wm8580_init_paiftx,
                .ops = &smdk_ops,
@@ -195,7 +195,7 @@ static struct snd_soc_dai_link smdk_dai[] = {
                .stream_name = "Playback",
                .cpu_dai_name = "samsung-i2s.x",
                .codec_dai_name = "wm8580-hifi-playback",
-               .platform_name = "samsung-audio",
+               .platform_name = "samsung-i2s.x",
                .codec_name = "wm8580.0-001b",
                .ops = &smdk_ops,
        },
index fab5322..e43bd42 100644 (file)
@@ -135,7 +135,7 @@ static struct snd_soc_dai_link smdk_dai[] = {
                .stream_name = "Capture",
                .cpu_dai_name = "samsung-pcm.0",
                .codec_dai_name = "wm8580-hifi-capture",
-               .platform_name = "samsung-audio",
+               .platform_name = "samsung-pcm.0",
                .codec_name = "wm8580.0-001b",
                .ops = &smdk_wm8580_pcm_ops,
        },
@@ -153,7 +153,7 @@ static struct snd_soc_card smdk_pcm = {
  * is absent (or not connected), so we connect EXT_VOICE_CLK(OSC4),
  * 2.0484Mhz, directly with MCLK both Codec and SoC.
  */
-static int __devinit snd_smdk_probe(struct platform_device *pdev)
+static int snd_smdk_probe(struct platform_device *pdev)
 {
        int ret = 0;
 
@@ -173,7 +173,7 @@ static int __devinit snd_smdk_probe(struct platform_device *pdev)
        return 0;
 }
 
-static int __devexit snd_smdk_remove(struct platform_device *pdev)
+static int snd_smdk_remove(struct platform_device *pdev)
 {
        snd_soc_unregister_card(&smdk_pcm);
        platform_set_drvdata(pdev, NULL);
@@ -186,7 +186,7 @@ static struct platform_driver snd_smdk_driver = {
                .name = "samsung-smdk-pcm",
        },
        .probe = snd_smdk_probe,
-       .remove = __devexit_p(snd_smdk_remove),
+       .remove = snd_smdk_remove,
 };
 
 module_platform_driver(snd_smdk_driver);
index 48dd4dd..b0d0ab8 100644 (file)
@@ -127,7 +127,7 @@ static struct snd_soc_dai_link smdk_dai[] = {
                .stream_name = "Pri_Dai",
                .cpu_dai_name = "samsung-i2s.0",
                .codec_dai_name = "wm8994-aif1",
-               .platform_name = "samsung-audio",
+               .platform_name = "samsung-i2s.0",
                .codec_name = "wm8994-codec",
                .init = smdk_wm8994_init_paiftx,
                .ops = &smdk_ops,
@@ -136,7 +136,7 @@ static struct snd_soc_dai_link smdk_dai[] = {
                .stream_name = "Sec_Dai",
                .cpu_dai_name = "samsung-i2s.4",
                .codec_dai_name = "wm8994-aif1",
-               .platform_name = "samsung-audio",
+               .platform_name = "samsung-i2s.4",
                .codec_name = "wm8994-codec",
                .ops = &smdk_ops,
        },
@@ -150,7 +150,7 @@ static struct snd_soc_card smdk = {
 };
 
 
-static int __devinit smdk_audio_probe(struct platform_device *pdev)
+static int smdk_audio_probe(struct platform_device *pdev)
 {
        int ret;
        struct snd_soc_card *card = &smdk;
@@ -164,7 +164,7 @@ static int __devinit smdk_audio_probe(struct platform_device *pdev)
        return ret;
 }
 
-static int __devexit smdk_audio_remove(struct platform_device *pdev)
+static int smdk_audio_remove(struct platform_device *pdev)
 {
        struct snd_soc_card *card = platform_get_drvdata(pdev);
 
@@ -179,7 +179,7 @@ static struct platform_driver smdk_audio_driver = {
                .owner  = THIS_MODULE,
        },
        .probe          = smdk_audio_probe,
-       .remove         = __devexit_p(smdk_audio_remove),
+       .remove         = smdk_audio_remove,
 };
 
 module_platform_driver(smdk_audio_driver);
index 77ecba9..3688a32 100644 (file)
@@ -116,7 +116,7 @@ static struct snd_soc_dai_link smdk_dai[] = {
                .stream_name = "Primary PCM",
                .cpu_dai_name = "samsung-pcm.0",
                .codec_dai_name = "wm8994-aif1",
-               .platform_name = "samsung-audio",
+               .platform_name = "samsung-pcm.0",
                .codec_name = "wm8994-codec",
                .ops = &smdk_wm8994_pcm_ops,
        },
@@ -129,7 +129,7 @@ static struct snd_soc_card smdk_pcm = {
        .num_links = 1,
 };
 
-static int __devinit snd_smdk_probe(struct platform_device *pdev)
+static int snd_smdk_probe(struct platform_device *pdev)
 {
        int ret = 0;
 
@@ -143,7 +143,7 @@ static int __devinit snd_smdk_probe(struct platform_device *pdev)
        return 0;
 }
 
-static int __devexit snd_smdk_remove(struct platform_device *pdev)
+static int snd_smdk_remove(struct platform_device *pdev)
 {
        snd_soc_unregister_card(&smdk_pcm);
        platform_set_drvdata(pdev, NULL);
@@ -156,7 +156,7 @@ static struct platform_driver snd_smdk_driver = {
                .name = "samsung-smdk-pcm",
        },
        .probe = snd_smdk_probe,
-       .remove = __devexit_p(snd_smdk_remove),
+       .remove = snd_smdk_remove,
 };
 
 module_platform_driver(snd_smdk_driver);
index 55b2ca7..0d20e4e 100644 (file)
@@ -42,7 +42,7 @@ static struct snd_soc_card smdk;
 static struct snd_soc_dai_link smdk_dai = {
        .name = "AC97",
        .stream_name = "AC97 PCM",
-       .platform_name = "samsung-audio",
+       .platform_name = "samsung-ac97",
        .cpu_dai_name = "samsung-ac97",
        .codec_dai_name = "wm9713-hifi",
        .codec_name = "wm9713-codec",
index 5f3b06d..5008e5b 100644 (file)
@@ -357,7 +357,7 @@ static struct snd_soc_dai_driver samsung_spdif_dai = {
        .resume = spdif_resume,
 };
 
-static __devinit int spdif_probe(struct platform_device *pdev)
+static int spdif_probe(struct platform_device *pdev)
 {
        struct s3c_audio_pdata *spdif_pdata;
        struct resource *mem_res, *dma_res;
@@ -437,8 +437,15 @@ static __devinit int spdif_probe(struct platform_device *pdev)
 
        spdif->dma_playback = &spdif_stereo_out;
 
-       return 0;
+       ret = asoc_dma_platform_register(&pdev->dev);
+       if (ret) {
+               dev_err(&pdev->dev, "failed to register DMA: %d\n", ret);
+               goto err5;
+       }
 
+       return 0;
+err5:
+       snd_soc_unregister_dai(&pdev->dev);
 err4:
        iounmap(spdif->regs);
 err3:
@@ -453,11 +460,12 @@ err0:
        return ret;
 }
 
-static __devexit int spdif_remove(struct platform_device *pdev)
+static int spdif_remove(struct platform_device *pdev)
 {
        struct samsung_spdif_info *spdif = &spdif_info;
        struct resource *mem_res;
 
+       asoc_dma_platform_unregister(&pdev->dev);
        snd_soc_unregister_dai(&pdev->dev);
 
        iounmap(spdif->regs);
@@ -476,7 +484,7 @@ static __devexit int spdif_remove(struct platform_device *pdev)
 
 static struct platform_driver samsung_spdif_driver = {
        .probe  = spdif_probe,
-       .remove = __devexit_p(spdif_remove),
+       .remove = spdif_remove,
        .driver = {
                .name   = "samsung-spdif",
                .owner  = THIS_MODULE,
index c7e1c28..57df90d 100644 (file)
@@ -198,7 +198,7 @@ static struct snd_soc_dai_link speyside_dai[] = {
                .stream_name = "CPU-DSP",
                .cpu_dai_name = "samsung-i2s.0",
                .codec_dai_name = "wm0010-sdi1",
-               .platform_name = "samsung-audio",
+               .platform_name = "samsung-i2s.0",
                .codec_name = "spi0.0",
                .init = speyside_wm0010_init,
                .dai_fmt = SND_SOC_DAIFMT_I2S | SND_SOC_DAIFMT_NB_NF
@@ -320,7 +320,7 @@ static struct snd_soc_card speyside = {
        .late_probe = speyside_late_probe,
 };
 
-static __devinit int speyside_probe(struct platform_device *pdev)
+static int speyside_probe(struct platform_device *pdev)
 {
        struct snd_soc_card *card = &speyside;
        int ret;
@@ -337,7 +337,7 @@ static __devinit int speyside_probe(struct platform_device *pdev)
        return 0;
 }
 
-static int __devexit speyside_remove(struct platform_device *pdev)
+static int speyside_remove(struct platform_device *pdev)
 {
        struct snd_soc_card *card = platform_get_drvdata(pdev);
 
@@ -353,7 +353,7 @@ static struct platform_driver speyside_driver = {
                .pm = &snd_soc_pm_ops,
        },
        .probe = speyside_probe,
-       .remove = __devexit_p(speyside_remove),
+       .remove = speyside_remove,
 };
 
 module_platform_driver(speyside_driver);
index 9199649..f21ff60 100644 (file)
@@ -110,7 +110,7 @@ static struct snd_soc_dai_link tobermory_dai[] = {
                .stream_name = "CPU",
                .cpu_dai_name = "samsung-i2s.0",
                .codec_dai_name = "wm8962",
-               .platform_name = "samsung-audio",
+               .platform_name = "samsung-i2s.0",
                .codec_name = "wm8962.1-001a",
                .dai_fmt = SND_SOC_DAIFMT_I2S | SND_SOC_DAIFMT_NB_NF
                                | SND_SOC_DAIFMT_CBM_CFM,
@@ -214,7 +214,7 @@ static struct snd_soc_card tobermory = {
        .late_probe = tobermory_late_probe,
 };
 
-static __devinit int tobermory_probe(struct platform_device *pdev)
+static int tobermory_probe(struct platform_device *pdev)
 {
        struct snd_soc_card *card = &tobermory;
        int ret;
@@ -231,7 +231,7 @@ static __devinit int tobermory_probe(struct platform_device *pdev)
        return 0;
 }
 
-static int __devexit tobermory_remove(struct platform_device *pdev)
+static int tobermory_remove(struct platform_device *pdev)
 {
        struct snd_soc_card *card = platform_get_drvdata(pdev);
 
@@ -247,7 +247,7 @@ static struct platform_driver tobermory_driver = {
                .pm = &snd_soc_pm_ops,
        },
        .probe = tobermory_probe,
-       .remove = __devexit_p(tobermory_remove),
+       .remove = tobermory_remove,
 };
 
 module_platform_driver(tobermory_driver);
index 7da2018..19eff8f 100644 (file)
@@ -348,12 +348,12 @@ static struct snd_soc_platform sh7760_soc_platform = {
        .pcm_free       = camelot_pcm_free,
 };
 
-static int __devinit sh7760_soc_platform_probe(struct platform_device *pdev)
+static int sh7760_soc_platform_probe(struct platform_device *pdev)
 {
        return snd_soc_register_platform(&pdev->dev, &sh7760_soc_platform);
 }
 
-static int __devexit sh7760_soc_platform_remove(struct platform_device *pdev)
+static int sh7760_soc_platform_remove(struct platform_device *pdev)
 {
        snd_soc_unregister_platform(&pdev->dev);
        return 0;
@@ -366,7 +366,7 @@ static struct platform_driver sh7760_pcm_driver = {
        },
 
        .probe = sh7760_soc_platform_probe,
-       .remove = __devexit_p(sh7760_soc_platform_remove),
+       .remove = sh7760_soc_platform_remove,
 };
 
 module_platform_driver(sh7760_pcm_driver);
index 3474d7b..4cc2d64 100644 (file)
@@ -310,13 +310,13 @@ static struct snd_soc_dai_driver sh4_hac_dai[] = {
 #endif
 };
 
-static int __devinit hac_soc_platform_probe(struct platform_device *pdev)
+static int hac_soc_platform_probe(struct platform_device *pdev)
 {
        return snd_soc_register_dais(&pdev->dev, sh4_hac_dai,
                        ARRAY_SIZE(sh4_hac_dai));
 }
 
-static int __devexit hac_soc_platform_remove(struct platform_device *pdev)
+static int hac_soc_platform_remove(struct platform_device *pdev)
 {
        snd_soc_unregister_dais(&pdev->dev, ARRAY_SIZE(sh4_hac_dai));
        return 0;
@@ -329,7 +329,7 @@ static struct platform_driver hac_pcm_driver = {
        },
 
        .probe = hac_soc_platform_probe,
-       .remove = __devexit_p(hac_soc_platform_remove),
+       .remove = hac_soc_platform_remove,
 };
 
 module_platform_driver(hac_pcm_driver);
index 52d4c17..34facdc 100644 (file)
@@ -726,7 +726,7 @@ static struct snd_soc_dai_driver siu_i2s_dai = {
        .ops = &siu_dai_ops,
 };
 
-static int __devinit siu_probe(struct platform_device *pdev)
+static int siu_probe(struct platform_device *pdev)
 {
        const struct firmware *fw_entry;
        struct resource *res, *region;
@@ -815,7 +815,7 @@ ereqfw:
        return ret;
 }
 
-static int __devexit siu_remove(struct platform_device *pdev)
+static int siu_remove(struct platform_device *pdev)
 {
        struct siu_info *info = dev_get_drvdata(&pdev->dev);
        struct resource *res;
@@ -843,7 +843,7 @@ static struct platform_driver siu_driver = {
                .name   = "siu-pcm-audio",
        },
        .probe          = siu_probe,
-       .remove         = __devexit_p(siu_remove),
+       .remove         = siu_remove,
 };
 
 module_platform_driver(siu_driver);
index ff82b56..c8e73a7 100644 (file)
@@ -379,13 +379,13 @@ static struct snd_soc_dai_driver sh4_ssi_dai[] = {
 #endif
 };
 
-static int __devinit sh4_soc_dai_probe(struct platform_device *pdev)
+static int sh4_soc_dai_probe(struct platform_device *pdev)
 {
        return snd_soc_register_dais(&pdev->dev, sh4_ssi_dai,
                        ARRAY_SIZE(sh4_ssi_dai));
 }
 
-static int __devexit sh4_soc_dai_remove(struct platform_device *pdev)
+static int sh4_soc_dai_remove(struct platform_device *pdev)
 {
        snd_soc_unregister_dais(&pdev->dev, ARRAY_SIZE(sh4_ssi_dai));
        return 0;
@@ -398,7 +398,7 @@ static struct platform_driver sh4_ssi_driver = {
        },
 
        .probe = sh4_soc_dai_probe,
-       .remove = __devexit_p(sh4_soc_dai_remove),
+       .remove = sh4_soc_dai_remove,
 };
 
 module_platform_driver(sh4_ssi_driver);
index 6005370..fe4541d 100644 (file)
@@ -94,7 +94,7 @@ static struct snd_soc_dai_driver dummy_dai = {
        .name = "snd-soc-dummy-dai",
 };
 
-static __devinit int snd_soc_dummy_probe(struct platform_device *pdev)
+static int snd_soc_dummy_probe(struct platform_device *pdev)
 {
        int ret;
 
@@ -111,7 +111,7 @@ static __devinit int snd_soc_dummy_probe(struct platform_device *pdev)
        return ret;
 }
 
-static __devexit int snd_soc_dummy_remove(struct platform_device *pdev)
+static int snd_soc_dummy_remove(struct platform_device *pdev)
 {
        snd_soc_unregister_platform(&pdev->dev);
        snd_soc_unregister_codec(&pdev->dev);
@@ -125,7 +125,7 @@ static struct platform_driver soc_dummy_driver = {
                .owner = THIS_MODULE,
        },
        .probe = snd_soc_dummy_probe,
-       .remove = __devexit_p(snd_soc_dummy_remove),
+       .remove = snd_soc_dummy_remove,
 };
 
 static struct platform_device *soc_dummy_dev;
index 8c7f237..9b76cc5 100644 (file)
@@ -184,12 +184,12 @@ struct snd_soc_platform_driver spear_soc_platform = {
        .pcm_free       =       spear_pcm_free,
 };
 
-static int __devinit spear_soc_platform_probe(struct platform_device *pdev)
+static int spear_soc_platform_probe(struct platform_device *pdev)
 {
        return snd_soc_register_platform(&pdev->dev, &spear_soc_platform);
 }
 
-static int __devexit spear_soc_platform_remove(struct platform_device *pdev)
+static int spear_soc_platform_remove(struct platform_device *pdev)
 {
        snd_soc_unregister_platform(&pdev->dev);
 
@@ -203,7 +203,7 @@ static struct platform_driver spear_pcm_driver = {
        },
 
        .probe = spear_soc_platform_probe,
-       .remove = __devexit_p(spear_soc_platform_remove),
+       .remove = spear_soc_platform_remove,
 };
 
 module_platform_driver(spear_pcm_driver);
index 4965337..6543184 100644 (file)
@@ -131,7 +131,7 @@ static const struct regmap_config tegra20_das_regmap_config = {
        .cache_type = REGCACHE_RBTREE,
 };
 
-static int __devinit tegra20_das_probe(struct platform_device *pdev)
+static int tegra20_das_probe(struct platform_device *pdev)
 {
        struct resource *res, *region;
        void __iomem *regs;
@@ -200,7 +200,7 @@ err:
        return ret;
 }
 
-static int __devexit tegra20_das_remove(struct platform_device *pdev)
+static int tegra20_das_remove(struct platform_device *pdev)
 {
        if (!das)
                return -ENODEV;
@@ -217,7 +217,7 @@ static const struct of_device_id tegra20_das_of_match[] = {
 
 static struct platform_driver tegra20_das_driver = {
        .probe = tegra20_das_probe,
-       .remove = __devexit_p(tegra20_das_remove),
+       .remove = tegra20_das_remove,
        .driver = {
                .name = DRV_NAME,
                .owner = THIS_MODULE,
index 2ae8af8..caa772d 100644 (file)
@@ -331,7 +331,7 @@ static const struct regmap_config tegra20_i2s_regmap_config = {
        .cache_type = REGCACHE_RBTREE,
 };
 
-static __devinit int tegra20_i2s_platform_probe(struct platform_device *pdev)
+static int tegra20_i2s_platform_probe(struct platform_device *pdev)
 {
        struct tegra20_i2s *i2s;
        struct resource *mem, *memregion, *dmareq;
@@ -447,7 +447,7 @@ err:
        return ret;
 }
 
-static int __devexit tegra20_i2s_platform_remove(struct platform_device *pdev)
+static int tegra20_i2s_platform_remove(struct platform_device *pdev)
 {
        struct tegra20_i2s *i2s = dev_get_drvdata(&pdev->dev);
 
@@ -481,7 +481,7 @@ static struct platform_driver tegra20_i2s_driver = {
                .pm = &tegra20_i2s_pm_ops,
        },
        .probe = tegra20_i2s_platform_probe,
-       .remove = __devexit_p(tegra20_i2s_platform_remove),
+       .remove = tegra20_i2s_platform_remove,
 };
 module_platform_driver(tegra20_i2s_driver);
 
index d9641ef..04771d1 100644 (file)
@@ -257,7 +257,7 @@ static const struct regmap_config tegra20_spdif_regmap_config = {
        .cache_type = REGCACHE_RBTREE,
 };
 
-static __devinit int tegra20_spdif_platform_probe(struct platform_device *pdev)
+static int tegra20_spdif_platform_probe(struct platform_device *pdev)
 {
        struct tegra20_spdif *spdif;
        struct resource *mem, *memregion, *dmareq;
@@ -357,7 +357,7 @@ err:
        return ret;
 }
 
-static int __devexit tegra20_spdif_platform_remove(struct platform_device *pdev)
+static int tegra20_spdif_platform_remove(struct platform_device *pdev)
 {
        struct tegra20_spdif *spdif = dev_get_drvdata(&pdev->dev);
 
@@ -385,7 +385,7 @@ static struct platform_driver tegra20_spdif_driver = {
                .pm = &tegra20_spdif_pm_ops,
        },
        .probe = tegra20_spdif_platform_probe,
-       .remove = __devexit_p(tegra20_spdif_platform_remove),
+       .remove = tegra20_spdif_platform_remove,
 };
 
 module_platform_driver(tegra20_spdif_driver);
index 2269170..fd596d2 100644 (file)
@@ -300,7 +300,7 @@ static const char * const configlink_clocks[] = {
        "spdif_in",
 };
 
-struct of_dev_auxdata ahub_auxdata[] __devinitdata = {
+struct of_dev_auxdata ahub_auxdata[] = {
        OF_DEV_AUXDATA("nvidia,tegra30-i2s", 0x70080300, "tegra30-i2s.0", NULL),
        OF_DEV_AUXDATA("nvidia,tegra30-i2s", 0x70080400, "tegra30-i2s.1", NULL),
        OF_DEV_AUXDATA("nvidia,tegra30-i2s", 0x70080500, "tegra30-i2s.2", NULL),
@@ -434,7 +434,7 @@ static const struct regmap_config tegra30_ahub_ahub_regmap_config = {
        .cache_type = REGCACHE_RBTREE,
 };
 
-static int __devinit tegra30_ahub_probe(struct platform_device *pdev)
+static int tegra30_ahub_probe(struct platform_device *pdev)
 {
        struct clk *clk;
        int i;
@@ -586,7 +586,7 @@ err:
        return ret;
 }
 
-static int __devexit tegra30_ahub_remove(struct platform_device *pdev)
+static int tegra30_ahub_remove(struct platform_device *pdev)
 {
        if (!ahub)
                return -ENODEV;
@@ -615,7 +615,7 @@ static const struct dev_pm_ops tegra30_ahub_pm_ops = {
 
 static struct platform_driver tegra30_ahub_driver = {
        .probe = tegra30_ahub_probe,
-       .remove = __devexit_p(tegra30_ahub_remove),
+       .remove = tegra30_ahub_remove,
        .driver = {
                .name = DRV_NAME,
                .owner = THIS_MODULE,
index bf0e089..27e91dd 100644 (file)
@@ -391,7 +391,7 @@ static const struct regmap_config tegra30_i2s_regmap_config = {
        .cache_type = REGCACHE_RBTREE,
 };
 
-static __devinit int tegra30_i2s_platform_probe(struct platform_device *pdev)
+static int tegra30_i2s_platform_probe(struct platform_device *pdev)
 {
        struct tegra30_i2s *i2s;
        u32 cif_ids[2];
@@ -492,7 +492,7 @@ err:
        return ret;
 }
 
-static int __devexit tegra30_i2s_platform_remove(struct platform_device *pdev)
+static int tegra30_i2s_platform_remove(struct platform_device *pdev)
 {
        struct tegra30_i2s *i2s = dev_get_drvdata(&pdev->dev);
 
@@ -526,7 +526,7 @@ static struct platform_driver tegra30_i2s_driver = {
                .pm = &tegra30_i2s_pm_ops,
        },
        .probe = tegra30_i2s_platform_probe,
-       .remove = __devexit_p(tegra30_i2s_platform_remove),
+       .remove = tegra30_i2s_platform_remove,
 };
 module_platform_driver(tegra30_i2s_driver);
 
index 523795a..c80adb9 100644 (file)
@@ -150,7 +150,7 @@ static struct snd_soc_card snd_soc_tegra_alc5632 = {
        .fully_routed = true,
 };
 
-static __devinit int tegra_alc5632_probe(struct platform_device *pdev)
+static int tegra_alc5632_probe(struct platform_device *pdev)
 {
        struct device_node *np = pdev->dev.of_node;
        struct snd_soc_card *card = &snd_soc_tegra_alc5632;
@@ -227,7 +227,7 @@ err:
        return ret;
 }
 
-static int __devexit tegra_alc5632_remove(struct platform_device *pdev)
+static int tegra_alc5632_remove(struct platform_device *pdev)
 {
        struct snd_soc_card *card = platform_get_drvdata(pdev);
        struct tegra_alc5632 *machine = snd_soc_card_get_drvdata(card);
@@ -255,7 +255,7 @@ static struct platform_driver tegra_alc5632_driver = {
                .of_match_table = tegra_alc5632_of_match,
        },
        .probe = tegra_alc5632_probe,
-       .remove = __devexit_p(tegra_alc5632_remove),
+       .remove = tegra_alc5632_remove,
 };
 module_platform_driver(tegra_alc5632_driver);
 
index e187339..c925ab0 100644 (file)
@@ -253,13 +253,13 @@ static struct snd_soc_platform_driver tegra_pcm_platform = {
        .pcm_free       = tegra_pcm_free,
 };
 
-int __devinit tegra_pcm_platform_register(struct device *dev)
+int tegra_pcm_platform_register(struct device *dev)
 {
        return snd_soc_register_platform(dev, &tegra_pcm_platform);
 }
 EXPORT_SYMBOL_GPL(tegra_pcm_platform_register);
 
-void __devexit tegra_pcm_platform_unregister(struct device *dev)
+void tegra_pcm_platform_unregister(struct device *dev)
 {
        snd_soc_unregister_platform(dev);
 }
index effe5b4..c8ef88a 100644 (file)
@@ -122,7 +122,7 @@ static struct snd_soc_card snd_soc_tegra_wm8753 = {
        .fully_routed = true,
 };
 
-static __devinit int tegra_wm8753_driver_probe(struct platform_device *pdev)
+static int tegra_wm8753_driver_probe(struct platform_device *pdev)
 {
        struct snd_soc_card *card = &snd_soc_tegra_wm8753;
        struct tegra_wm8753 *machine;
@@ -188,7 +188,7 @@ err:
        return ret;
 }
 
-static int __devexit tegra_wm8753_driver_remove(struct platform_device *pdev)
+static int tegra_wm8753_driver_remove(struct platform_device *pdev)
 {
        struct snd_soc_card *card = platform_get_drvdata(pdev);
        struct tegra_wm8753 *machine = snd_soc_card_get_drvdata(card);
@@ -213,7 +213,7 @@ static struct platform_driver tegra_wm8753_driver = {
                .of_match_table = tegra_wm8753_of_match,
        },
        .probe = tegra_wm8753_driver_probe,
-       .remove = __devexit_p(tegra_wm8753_driver_remove),
+       .remove = tegra_wm8753_driver_remove,
 };
 module_platform_driver(tegra_wm8753_driver);
 
index 0f79412..bbd79bf 100644 (file)
@@ -252,7 +252,7 @@ static struct snd_soc_card snd_soc_tegra_wm8903 = {
        .fully_routed = true,
 };
 
-static __devinit int tegra_wm8903_driver_probe(struct platform_device *pdev)
+static int tegra_wm8903_driver_probe(struct platform_device *pdev)
 {
        struct device_node *np = pdev->dev.of_node;
        struct snd_soc_card *card = &snd_soc_tegra_wm8903;
@@ -402,7 +402,7 @@ err:
        return ret;
 }
 
-static int __devexit tegra_wm8903_driver_remove(struct platform_device *pdev)
+static int tegra_wm8903_driver_remove(struct platform_device *pdev)
 {
        struct snd_soc_card *card = platform_get_drvdata(pdev);
        struct tegra_wm8903 *machine = snd_soc_card_get_drvdata(card);
@@ -430,7 +430,7 @@ static struct platform_driver tegra_wm8903_driver = {
                .of_match_table = tegra_wm8903_of_match,
        },
        .probe = tegra_wm8903_driver_probe,
-       .remove = __devexit_p(tegra_wm8903_driver_remove),
+       .remove = tegra_wm8903_driver_remove,
 };
 module_platform_driver(tegra_wm8903_driver);
 
index 4a255a4..7fcf6c2 100644 (file)
@@ -120,7 +120,7 @@ static struct snd_soc_card snd_soc_trimslice = {
        .fully_routed = true,
 };
 
-static __devinit int tegra_snd_trimslice_probe(struct platform_device *pdev)
+static int tegra_snd_trimslice_probe(struct platform_device *pdev)
 {
        struct snd_soc_card *card = &snd_soc_trimslice;
        struct tegra_trimslice *trimslice;
@@ -183,7 +183,7 @@ err:
        return ret;
 }
 
-static int __devexit tegra_snd_trimslice_remove(struct platform_device *pdev)
+static int tegra_snd_trimslice_remove(struct platform_device *pdev)
 {
        struct snd_soc_card *card = platform_get_drvdata(pdev);
        struct tegra_trimslice *trimslice = snd_soc_card_get_drvdata(card);
@@ -208,7 +208,7 @@ static struct platform_driver tegra_snd_trimslice_driver = {
                .of_match_table = trimslice_of_match,
        },
        .probe = tegra_snd_trimslice_probe,
-       .remove = __devexit_p(tegra_snd_trimslice_remove),
+       .remove = tegra_snd_trimslice_remove,
 };
 module_platform_driver(tegra_snd_trimslice_driver);
 
index 28db4ca..16ab696 100644 (file)
@@ -170,7 +170,7 @@ static struct snd_soc_dai_driver txx9aclc_ac97_dai = {
        },
 };
 
-static int __devinit txx9aclc_ac97_dev_probe(struct platform_device *pdev)
+static int txx9aclc_ac97_dev_probe(struct platform_device *pdev)
 {
        struct txx9aclc_plat_drvdata *drvdata;
        struct resource *r;
@@ -208,7 +208,7 @@ static int __devinit txx9aclc_ac97_dev_probe(struct platform_device *pdev)
        return snd_soc_register_dai(&pdev->dev, &txx9aclc_ac97_dai);
 }
 
-static int __devexit txx9aclc_ac97_dev_remove(struct platform_device *pdev)
+static int txx9aclc_ac97_dev_remove(struct platform_device *pdev)
 {
        snd_soc_unregister_dai(&pdev->dev);
        return 0;
@@ -216,7 +216,7 @@ static int __devexit txx9aclc_ac97_dev_remove(struct platform_device *pdev)
 
 static struct platform_driver txx9aclc_ac97_driver = {
        .probe          = txx9aclc_ac97_dev_probe,
-       .remove         = __devexit_p(txx9aclc_ac97_dev_remove),
+       .remove         = txx9aclc_ac97_dev_remove,
        .driver         = {
                .name   = "txx9aclc-ac97",
                .owner  = THIS_MODULE,
index b609d2c..45a6428 100644 (file)
@@ -417,12 +417,12 @@ static struct snd_soc_platform_driver txx9aclc_soc_platform = {
        .pcm_free       = txx9aclc_pcm_free_dma_buffers,
 };
 
-static int __devinit txx9aclc_soc_platform_probe(struct platform_device *pdev)
+static int txx9aclc_soc_platform_probe(struct platform_device *pdev)
 {
        return snd_soc_register_platform(&pdev->dev, &txx9aclc_soc_platform);
 }
 
-static int __devexit txx9aclc_soc_platform_remove(struct platform_device *pdev)
+static int txx9aclc_soc_platform_remove(struct platform_device *pdev)
 {
        snd_soc_unregister_platform(&pdev->dev);
        return 0;
@@ -435,7 +435,7 @@ static struct platform_driver txx9aclc_pcm_driver = {
        },
 
        .probe = txx9aclc_soc_platform_probe,
-       .remove = __devexit_p(txx9aclc_soc_platform_remove),
+       .remove = txx9aclc_soc_platform_remove,
 };
 
 module_platform_driver(txx9aclc_pcm_driver);
index 651a52a..ae69907 100644 (file)
@@ -71,8 +71,8 @@ static void mop500_of_node_put(void)
        }
 }
 
-static int __devinit mop500_of_probe(struct platform_device *pdev,
-                               struct device_node *np)
+static int mop500_of_probe(struct platform_device *pdev,
+                          struct device_node *np)
 {
        struct device_node *codec_np, *msp_np[2];
        int i;
@@ -99,7 +99,7 @@ static int __devinit mop500_of_probe(struct platform_device *pdev,
        return 0;
 }
 
-static int __devinit mop500_probe(struct platform_device *pdev)
+static int mop500_probe(struct platform_device *pdev)
 {
        struct device_node *np = pdev->dev.of_node;
        int ret;
@@ -136,7 +136,7 @@ static int __devinit mop500_probe(struct platform_device *pdev)
        return ret;
 }
 
-static int __devexit mop500_remove(struct platform_device *pdev)
+static int mop500_remove(struct platform_device *pdev)
 {
        struct snd_soc_card *mop500_card = platform_get_drvdata(pdev);
 
@@ -161,7 +161,7 @@ static struct platform_driver snd_soc_mop500_driver = {
                .of_match_table = snd_soc_mop500_match,
        },
        .probe = mop500_probe,
-       .remove = __devexit_p(mop500_remove),
+       .remove = mop500_remove,
 };
 
 module_platform_driver(snd_soc_mop500_driver);
index 478b4b6..94a3e57 100644 (file)
@@ -768,7 +768,7 @@ static struct snd_soc_dai_driver ux500_msp_dai_drv[UX500_NBR_OF_DAI] = {
        },
 };
 
-static int __devinit ux500_msp_drv_probe(struct platform_device *pdev)
+static int ux500_msp_drv_probe(struct platform_device *pdev)
 {
        struct ux500_msp_i2s_drvdata *drvdata;
        int ret = 0;
@@ -855,7 +855,7 @@ err_pclk:
        return ret;
 }
 
-static int __devexit ux500_msp_drv_remove(struct platform_device *pdev)
+static int ux500_msp_drv_remove(struct platform_device *pdev)
 {
        struct ux500_msp_i2s_drvdata *drvdata = dev_get_drvdata(&pdev->dev);
 
index 894c9f4..c6821a5 100644 (file)
@@ -282,7 +282,7 @@ static struct snd_soc_platform_driver ux500_pcm_soc_drv = {
        .pcm_new        = ux500_pcm_new,
 };
 
-int __devinit ux500_pcm_register_platform(struct platform_device *pdev)
+int ux500_pcm_register_platform(struct platform_device *pdev)
 {
        int ret;
 
@@ -298,7 +298,7 @@ int __devinit ux500_pcm_register_platform(struct platform_device *pdev)
 }
 EXPORT_SYMBOL_GPL(ux500_pcm_register_platform);
 
-int __devexit ux500_pcm_unregister_platform(struct platform_device *pdev)
+int ux500_pcm_unregister_platform(struct platform_device *pdev)
 {
        snd_soc_unregister_platform(&pdev->dev);