diff options
author | Peter Ujfalusi <peter.ujfalusi@ti.com> | 2012-03-07 04:15:37 -0500 |
---|---|---|
committer | Liam Girdwood <lrg@ti.com> | 2012-03-12 09:34:23 -0400 |
commit | 73c9522e76d7147d99ff859699405a9af81fec72 (patch) | |
tree | d02c53fc4946ce5ce5d4176ccf5b61902d534ed4 /sound | |
parent | e386615c01d37145aa27fd06d1f8de26f1acbb7f (diff) |
ASoC: omap McBSP: Clear rx_irq at probe time for OMAP4
On OMAP4 we have one interrupt line per McBSP port.
At probe time tx, and rx irq value will be -ENXIO,
and only the tx irq will get corrected.
In omap_mcbsp_request if the rx_irq is not 0 we proceed,
and try to request the interrupt, which will fail on
OMAP4 (rx_irq == -6).
To avoid this error, clear the rx_irq at probe time
on OMAP4.
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Jarkko Nikula <jarkko.nikula@bitmer.com>
Signed-off-by: Liam Girdwood <lrg@ti.com>
Diffstat (limited to 'sound')
-rw-r--r-- | sound/soc/omap/mcbsp.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/sound/soc/omap/mcbsp.c b/sound/soc/omap/mcbsp.c index 21dbb0532bca..c3e31deafa07 100644 --- a/sound/soc/omap/mcbsp.c +++ b/sound/soc/omap/mcbsp.c | |||
@@ -958,8 +958,10 @@ int __devinit omap_mcbsp_init(struct platform_device *pdev) | |||
958 | mcbsp->rx_irq = platform_get_irq_byname(pdev, "rx"); | 958 | mcbsp->rx_irq = platform_get_irq_byname(pdev, "rx"); |
959 | 959 | ||
960 | /* From OMAP4 there will be a single irq line */ | 960 | /* From OMAP4 there will be a single irq line */ |
961 | if (mcbsp->tx_irq == -ENXIO) | 961 | if (mcbsp->tx_irq == -ENXIO) { |
962 | mcbsp->tx_irq = platform_get_irq(pdev, 0); | 962 | mcbsp->tx_irq = platform_get_irq(pdev, 0); |
963 | mcbsp->rx_irq = 0; | ||
964 | } | ||
963 | 965 | ||
964 | res = platform_get_resource_byname(pdev, IORESOURCE_DMA, "rx"); | 966 | res = platform_get_resource_byname(pdev, IORESOURCE_DMA, "rx"); |
965 | if (!res) { | 967 | if (!res) { |