diff options
Diffstat (limited to 'arch')
| -rw-r--r-- | arch/arm/mach-omap2/mcbsp.c | 12 | ||||
| -rw-r--r-- | arch/arm/plat-omap/mcbsp.c | 20 | 
2 files changed, 16 insertions, 16 deletions
diff --git a/arch/arm/mach-omap2/mcbsp.c b/arch/arm/mach-omap2/mcbsp.c index be8fce395a5..016fe60c71a 100644 --- a/arch/arm/mach-omap2/mcbsp.c +++ b/arch/arm/mach-omap2/mcbsp.c @@ -186,32 +186,28 @@ static struct omap_mcbsp_platform_data omap44xx_mcbsp_pdata[] = {  		.phys_base      = OMAP44XX_MCBSP1_BASE,  		.dma_rx_sync    = OMAP44XX_DMA_MCBSP1_RX,  		.dma_tx_sync    = OMAP44XX_DMA_MCBSP1_TX, -		.rx_irq         = INT_24XX_MCBSP1_IRQ_RX, -		.tx_irq         = INT_24XX_MCBSP1_IRQ_TX, +		.tx_irq         = OMAP44XX_IRQ_MCBSP1,  		.ops            = &omap2_mcbsp_ops,  	},  	{  		.phys_base      = OMAP44XX_MCBSP2_BASE,  		.dma_rx_sync    = OMAP44XX_DMA_MCBSP2_RX,  		.dma_tx_sync    = OMAP44XX_DMA_MCBSP2_TX, -		.rx_irq         = INT_24XX_MCBSP2_IRQ_RX, -		.tx_irq         = INT_24XX_MCBSP2_IRQ_TX, +		.tx_irq         = OMAP44XX_IRQ_MCBSP2,  		.ops            = &omap2_mcbsp_ops,  	},  	{  		.phys_base      = OMAP44XX_MCBSP3_BASE,  		.dma_rx_sync    = OMAP44XX_DMA_MCBSP3_RX,  		.dma_tx_sync    = OMAP44XX_DMA_MCBSP3_TX, -		.rx_irq         = INT_24XX_MCBSP3_IRQ_RX, -		.tx_irq         = INT_24XX_MCBSP3_IRQ_TX, +		.tx_irq         = OMAP44XX_IRQ_MCBSP3,  		.ops            = &omap2_mcbsp_ops,  	},  	{  		.phys_base      = OMAP44XX_MCBSP4_BASE,  		.dma_rx_sync    = OMAP44XX_DMA_MCBSP4_RX,  		.dma_tx_sync    = OMAP44XX_DMA_MCBSP4_TX, -		.rx_irq         = INT_24XX_MCBSP4_IRQ_RX, -		.tx_irq         = INT_24XX_MCBSP4_IRQ_TX, +		.tx_irq         = OMAP44XX_IRQ_MCBSP4,  		.ops            = &omap2_mcbsp_ops,  	},  }; diff --git a/arch/arm/plat-omap/mcbsp.c b/arch/arm/plat-omap/mcbsp.c index 4ff7a11b183..8bbbb93e212 100644 --- a/arch/arm/plat-omap/mcbsp.c +++ b/arch/arm/plat-omap/mcbsp.c @@ -778,14 +778,17 @@ int omap_mcbsp_request(unsigned int id)  			goto err_clk_disable;  		} -		init_completion(&mcbsp->rx_irq_completion); -		err = request_irq(mcbsp->rx_irq, omap_mcbsp_rx_irq_handler, +		if (mcbsp->rx_irq) { +			init_completion(&mcbsp->rx_irq_completion); +			err = request_irq(mcbsp->rx_irq, +					omap_mcbsp_rx_irq_handler,  					0, "McBSP", (void *)mcbsp); -		if (err != 0) { -			dev_err(mcbsp->dev, "Unable to request RX IRQ %d " -					"for McBSP%d\n", mcbsp->rx_irq, -					mcbsp->id); -			goto err_free_irq; +			if (err != 0) { +				dev_err(mcbsp->dev, "Unable to request RX IRQ %d " +						"for McBSP%d\n", mcbsp->rx_irq, +						mcbsp->id); +				goto err_free_irq; +			}  		}  	} @@ -835,7 +838,8 @@ void omap_mcbsp_free(unsigned int id)  	if (mcbsp->io_type == OMAP_MCBSP_IRQ_IO) {  		/* Free IRQs */ -		free_irq(mcbsp->rx_irq, (void *)mcbsp); +		if (mcbsp->rx_irq) +			free_irq(mcbsp->rx_irq, (void *)mcbsp);  		free_irq(mcbsp->tx_irq, (void *)mcbsp);  	}  |