]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - arch/arm/plat-omap/mcbsp.c
ARM: OMAP: Misc compile fixes after syncing with mainline
[linux-2.6-omap-h63xx.git] / arch / arm / plat-omap / mcbsp.c
index f7b9ccdaacbcff0c0a446488f1436fa10ff236c3..9cf83c4da9fa116155d8d17b6fb54bd40f99294e 100644 (file)
@@ -98,9 +98,10 @@ static void omap_mcbsp_dump_reg(u8 id)
 
 static irqreturn_t omap_mcbsp_tx_irq_handler(int irq, void *dev_id)
 {
-       struct omap_mcbsp * mcbsp_tx = (struct omap_mcbsp *)(dev_id);
+       struct omap_mcbsp *mcbsp_tx = dev_id;
 
-       DBG("TX IRQ callback : 0x%x\n", OMAP_MCBSP_READ(mcbsp_tx->io_base, SPCR2));
+       DBG("TX IRQ callback : 0x%x\n",
+           OMAP_MCBSP_READ(mcbsp_tx->io_base, SPCR2));
 
        complete(&mcbsp_tx->tx_irq_completion);
        return IRQ_HANDLED;
@@ -108,9 +109,10 @@ static irqreturn_t omap_mcbsp_tx_irq_handler(int irq, void *dev_id)
 
 static irqreturn_t omap_mcbsp_rx_irq_handler(int irq, void *dev_id)
 {
-       struct omap_mcbsp * mcbsp_rx = (struct omap_mcbsp *)(dev_id);
+       struct omap_mcbsp *mcbsp_rx = dev_id;
 
-       DBG("RX IRQ callback : 0x%x\n", OMAP_MCBSP_READ(mcbsp_rx->io_base, SPCR2));
+       DBG("RX IRQ callback : 0x%x\n",
+           OMAP_MCBSP_READ(mcbsp_rx->io_base, SPCR2));
 
        complete(&mcbsp_rx->rx_irq_completion);
        return IRQ_HANDLED;
@@ -118,9 +120,10 @@ static irqreturn_t omap_mcbsp_rx_irq_handler(int irq, void *dev_id)
 
 static void omap_mcbsp_tx_dma_callback(int lch, u16 ch_status, void *data)
 {
-       struct omap_mcbsp * mcbsp_dma_tx = (struct omap_mcbsp *)(data);
+       struct omap_mcbsp *mcbsp_dma_tx = data;
 
-       DBG("TX DMA callback : 0x%x\n", OMAP_MCBSP_READ(mcbsp_dma_tx->io_base, SPCR2));
+       DBG("TX DMA callback : 0x%x\n",
+           OMAP_MCBSP_READ(mcbsp_dma_tx->io_base, SPCR2));
 
        /* We can free the channels */
        omap_free_dma(mcbsp_dma_tx->dma_tx_lch);
@@ -131,9 +134,10 @@ static void omap_mcbsp_tx_dma_callback(int lch, u16 ch_status, void *data)
 
 static void omap_mcbsp_rx_dma_callback(int lch, u16 ch_status, void *data)
 {
-       struct omap_mcbsp * mcbsp_dma_rx = (struct omap_mcbsp *)(data);
+       struct omap_mcbsp *mcbsp_dma_rx = data;
 
-       DBG("RX DMA callback : 0x%x\n", OMAP_MCBSP_READ(mcbsp_dma_rx->io_base, SPCR2));
+       DBG("RX DMA callback : 0x%x\n",
+           OMAP_MCBSP_READ(mcbsp_dma_rx->io_base, SPCR2));
 
        /* We can free the channels */
        omap_free_dma(mcbsp_dma_rx->dma_rx_lch);
@@ -197,6 +201,14 @@ static int omap_mcbsp_check(unsigned int id)
 static void omap_mcbsp_dsp_request(void)
 {
        if (cpu_is_omap15xx() || cpu_is_omap16xx()) {
+               int ret;
+
+               ret = omap_dsp_request_mem();
+               if (ret < 0) {
+                       printk(KERN_ERR "Could not get dsp memory: %i\n", ret);
+                       return;
+               }
+
                clk_enable(mcbsp_dsp_ck);
                clk_enable(mcbsp_api_ck);
 
@@ -215,6 +227,7 @@ static void omap_mcbsp_dsp_request(void)
 static void omap_mcbsp_dsp_free(void)
 {
        if (cpu_is_omap15xx() || cpu_is_omap16xx()) {
+               omap_dsp_release_mem();
                clk_disable(mcbsp_dspxor_ck);
                clk_disable(mcbsp_dsp_ck);
                clk_disable(mcbsp_api_ck);
@@ -1020,6 +1033,8 @@ EXPORT_SYMBOL(omap_mcbsp_set_io_type);
 EXPORT_SYMBOL(omap_mcbsp_free);
 EXPORT_SYMBOL(omap_mcbsp_start);
 EXPORT_SYMBOL(omap_mcbsp_stop);
+EXPORT_SYMBOL(omap_mcbsp_pollread);
+EXPORT_SYMBOL(omap_mcbsp_pollwrite);
 EXPORT_SYMBOL(omap_mcbsp_xmit_word);
 EXPORT_SYMBOL(omap_mcbsp_recv_word);
 EXPORT_SYMBOL(omap_mcbsp_xmit_buffer);