diff options
author | Xinyu Chen <xinyu.chen@freescale.com> | 2010-03-02 15:14:53 -0600 |
---|---|---|
committer | Alejandro Gonzalez <alex.gonzalez@digi.com> | 2010-05-25 11:01:41 +0200 |
commit | e2f62ce6bd2419459dfa1923e6dc51b58f2a6c26 (patch) | |
tree | 4bbbdaeab0c70fb987b218e727e9fdd1de37dbfe /sound | |
parent | 45a01d35e998583185b5652313dc754e3f1dcd7a (diff) |
ENGR00121454 SSI: correct the imx_ssi_irq handler's devid parameter
correct the imx_ssi_irq handler's devid parameter
Signed-off-by: Alan Tull <r80115@freescale.com>
Signed-off-by: Alejandro Gonzalez <alex.gonzalez@digi.com>
Diffstat (limited to 'sound')
-rw-r--r-- | sound/soc/imx/imx-3stack-sgtl5000.c | 3 | ||||
-rw-r--r-- | sound/soc/imx/imx-ssi.c | 10 |
2 files changed, 7 insertions, 6 deletions
diff --git a/sound/soc/imx/imx-3stack-sgtl5000.c b/sound/soc/imx/imx-3stack-sgtl5000.c index b01b9f85ec89..fd117f98210a 100644 --- a/sound/soc/imx/imx-3stack-sgtl5000.c +++ b/sound/soc/imx/imx-3stack-sgtl5000.c @@ -572,7 +572,6 @@ static int __devinit imx_3stack_sgtl5000_probe(struct platform_device *pdev) struct snd_soc_dai *sgtl5000_cpu_dai; int ret = 0; - priv->sysclk = plat->sysclk; priv->pdev = pdev; gpio_activate_audio_ports(); @@ -595,6 +594,8 @@ static int __devinit imx_3stack_sgtl5000_probe(struct platform_device *pdev) if (plat->init && plat->init()) goto err_plat_init; + priv->sysclk = plat->sysclk; + /* The SGTL5000 has an internal reset that is deasserted 8 SYS_MCLK cycles after all power rails have been brought up. After this time communication can start */ diff --git a/sound/soc/imx/imx-ssi.c b/sound/soc/imx/imx-ssi.c index a89fd65e32a1..027e32df938b 100644 --- a/sound/soc/imx/imx-ssi.c +++ b/sound/soc/imx/imx-ssi.c @@ -586,12 +586,12 @@ static int fifo_err_counter; static irqreturn_t imx_ssi_irq(int irq, void *dev_id) { - struct platform_device *pdev = dev_id; - struct imx_ssi *pdata = platform_get_drvdata(pdev); - void __iomem *ioaddr = pdata->ioaddr; + struct imx_ssi *priv = (struct imx_ssi *)dev_id; + void __iomem *ioaddr = priv->ioaddr; if (fifo_err_counter++ % 1000 == 0) printk(KERN_ERR "%s %s SISR %x SIER %x fifo_errs=%d\n", - __func__, pdev->name, __raw_readl(ioaddr + SSI_SISR), + __func__, priv->pdev->name, + __raw_readl(ioaddr + SSI_SISR), __raw_readl(ioaddr + SSI_SIER), fifo_err_counter); __raw_writel((SSI_SIER_TUE0_EN | SSI_SIER_ROE0_EN), ioaddr + SSI_SISR); return IRQ_HANDLED; @@ -603,7 +603,7 @@ static int imx_ssi_probe(struct platform_device *pdev, struct snd_soc_dai *dai) if (priv->irq >= 0) { if (request_irq(priv->irq, imx_ssi_irq, IRQF_SHARED, - pdev->name, dai)) { + pdev->name, priv)) { printk(KERN_ERR "%s: failure requesting irq for %s\n", __func__, pdev->name); return -EBUSY; |