ASoC: pxa2xx-i2s: remove I2S pin setup
authorPhilipp Zabel <philipp.zabel@gmail.com>
Thu, 5 Feb 2009 16:48:21 +0000 (17:48 +0100)
committerMark Brown <broonie@opensource.wolfsonmicro.com>
Sun, 8 Feb 2009 20:40:26 +0000 (20:40 +0000)
This removes the calls to pxa_gpio_mode from the pxa2xx-i2s driver.
Pin setup should be done during board init via pxa2xx_mfp_config
instead.

Signed-off-by: Philipp Zabel <philipp.zabel@gmail.com>
Acked-by: Eric Miao <eric.miao@marvell.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
sound/soc/pxa/pxa2xx-i2s.c

index 517991fb10993f16cdbdc758479885da69a840d4..83b59d7fe96e1de46826c23d26952d682bc804ce 100644 (file)
 
 #include <mach/hardware.h>
 #include <mach/pxa-regs.h>
-#include <mach/pxa2xx-gpio.h>
 #include <mach/audio.h>
 
 #include "pxa2xx-pcm.h"
 #include "pxa2xx-i2s.h"
 
-struct pxa2xx_gpio {
-       u32 sys;
-       u32     rx;
-       u32 tx;
-       u32 clk;
-       u32 frm;
-};
-
 /*
  * I2S Controller Register and Bit Definitions
  */
@@ -106,21 +97,6 @@ static struct pxa2xx_pcm_dma_params pxa2xx_i2s_pcm_stereo_in = {
                                  DCMD_BURST32 | DCMD_WIDTH4,
 };
 
-static struct pxa2xx_gpio gpio_bus[] = {
-       { /* I2S SoC Slave */
-               .rx = GPIO29_SDATA_IN_I2S_MD,
-               .tx = GPIO30_SDATA_OUT_I2S_MD,
-               .clk = GPIO28_BITCLK_IN_I2S_MD,
-               .frm = GPIO31_SYNC_I2S_MD,
-       },
-       { /* I2S SoC Master */
-               .rx = GPIO29_SDATA_IN_I2S_MD,
-               .tx = GPIO30_SDATA_OUT_I2S_MD,
-               .clk = GPIO28_BITCLK_OUT_I2S_MD,
-               .frm = GPIO31_SYNC_I2S_MD,
-       },
-};
-
 static int pxa2xx_i2s_startup(struct snd_pcm_substream *substream,
                              struct snd_soc_dai *dai)
 {
@@ -181,9 +157,6 @@ static int pxa2xx_i2s_set_dai_sysclk(struct snd_soc_dai *cpu_dai,
        if (clk_id != PXA2XX_I2S_SYSCLK)
                return -ENODEV;
 
-       if (pxa_i2s.master && dir == SND_SOC_CLOCK_OUT)
-               pxa_gpio_mode(gpio_bus[pxa_i2s.master].sys);
-
        return 0;
 }
 
@@ -194,10 +167,6 @@ static int pxa2xx_i2s_hw_params(struct snd_pcm_substream *substream,
        struct snd_soc_pcm_runtime *rtd = substream->private_data;
        struct snd_soc_dai *cpu_dai = rtd->dai->cpu_dai;
 
-       pxa_gpio_mode(gpio_bus[pxa_i2s.master].rx);
-       pxa_gpio_mode(gpio_bus[pxa_i2s.master].tx);
-       pxa_gpio_mode(gpio_bus[pxa_i2s.master].frm);
-       pxa_gpio_mode(gpio_bus[pxa_i2s.master].clk);
        BUG_ON(IS_ERR(clk_i2s));
        clk_enable(clk_i2s);
        pxa_i2s_wait();
@@ -398,11 +367,6 @@ static struct platform_driver pxa2xx_i2s_driver = {
 
 static int __init pxa2xx_i2s_init(void)
 {
-       if (cpu_is_pxa27x())
-               gpio_bus[1].sys = GPIO113_I2S_SYSCLK_MD;
-       else
-               gpio_bus[1].sys = GPIO32_SYSCLK_I2S_MD;
-
        clk_i2s = ERR_PTR(-ENOENT);
        return platform_driver_register(&pxa2xx_i2s_driver);
 }