Merge branch 'next' of git://git.infradead.org/users/vkoul/slave-dma
Linus Torvalds [Wed, 18 Jan 2012 02:40:24 +0000 (18:40 -0800)]
* 'next' of git://git.infradead.org/users/vkoul/slave-dma: (53 commits)
  ARM: mach-shmobile: specify CHCLR registers on SH7372
  dma: shdma: fix runtime PM: clear channel buffers on reset
  dma/imx-sdma: save irq flags when use spin_lock in sdma_tx_submit
  dmaengine/ste_dma40: clear LNK on channel startup
  dmaengine: intel_mid_dma: remove legacy pm interface
  ASoC: mxs: correct 'direction' of device_prep_dma_cyclic
  dmaengine: intel_mid_dma: error path fix
  dmaengine: intel_mid_dma: locking and freeing fixes
  mtd: gpmi-nand: move to dma_transfer_direction
  mtd: fix compile error for gpmi-nand
  mmc: mxs-mmc: fix the dma_transfer_direction migration
  dmaengine: add DMA_TRANS_NONE to dma_transfer_direction
  dma: mxs-dma: Don't use CLKGATE bits in CTRL0 to disable DMA channels
  dma: mxs-dma: make mxs_dma_prep_slave_sg() multi user safe
  dma: mxs-dma: Always leave mxs_dma_init() with the clock disabled.
  dma: mxs-dma: fix a typo in comment
  DMA: PL330: Remove pm_runtime_xxx calls from pl330 probe/remove
  video i.MX IPU: Fix display connections
  i.MX IPU DMA: Fix wrong burstsize settings
  dmaengine/ste_dma40: allow fixed physical channel
  ...

Fix up conflicts in drivers/dma/{Kconfig,mxs-dma.c,pl330.c}

The conflicts looked pretty trivial, but I'll ask people to verify them.

29 files changed:
1  2 
MAINTAINERS
arch/arm/mach-shmobile/setup-sh7372.c
arch/arm/plat-samsung/dma-ops.c
arch/arm/plat-samsung/include/plat/dma-ops.h
drivers/dma/amba-pl08x.c
drivers/dma/mxs-dma.c
drivers/dma/pl330.c
drivers/media/video/mx3_camera.c
drivers/media/video/timblogiw.c
drivers/misc/carma/carma-fpga-program.c
drivers/mmc/host/mmci.c
drivers/mmc/host/mxcmmc.c
drivers/mmc/host/mxs-mmc.c
drivers/mmc/host/sh_mmcif.c
drivers/mtd/nand/gpmi-nand/gpmi-lib.c
drivers/net/ethernet/micrel/ks8842.c
drivers/spi/spi-pl022.c
drivers/spi/spi-topcliff-pch.c
drivers/tty/serial/amba-pl011.c
drivers/tty/serial/pch_uart.c
drivers/tty/serial/sh-sci.c
drivers/usb/musb/ux500_dma.c
drivers/usb/renesas_usbhs/fifo.c
sound/atmel/ac97c.c
sound/soc/ep93xx/ep93xx-pcm.c
sound/soc/imx/imx-pcm-dma-mx2.c
sound/soc/mxs/mxs-pcm.c
sound/soc/samsung/dma.c
sound/soc/txx9/txx9aclc.c

diff --cc MAINTAINERS
Simple merge
Simple merge
@@@ -29,15 -34,9 +29,15 @@@ static unsigned samsung_dmadev_request(
        dma_cap_zero(mask);
        dma_cap_set(info->cap, mask);
  
 -      chan = dma_request_channel(mask, pl330_filter, (void *)dma_ch);
 +      /*
 +       * If a dma channel property of a device node from device tree is
 +       * specified, use that as the fliter parameter.
 +       */
 +      filter_param = (dma_ch == DMACH_DT_PROP) ? (void *)info->dt_dmach_prop :
 +                              (void *)dma_ch;
 +      chan = dma_request_channel(mask, pl330_filter, filter_param);
  
-       if (info->direction == DMA_FROM_DEVICE) {
+       if (info->direction == DMA_DEV_TO_MEM) {
                memset(&slave_config, 0, sizeof(struct dma_slave_config));
                slave_config.direction = info->direction;
                slave_config.src_addr = info->fifo;
Simple merge
@@@ -578,9 -554,9 +554,9 @@@ static int __init mxs_dma_init(struct m
  {
        int ret;
  
 -      ret = clk_enable(mxs_dma->clk);
 +      ret = clk_prepare_enable(mxs_dma->clk);
        if (ret)
-               goto err_out;
+               return ret;
  
        ret = mxs_reset_block(mxs_dma->base);
        if (ret)
        writel(MXS_DMA_CHANNELS_MASK << MXS_DMA_CHANNELS,
                mxs_dma->base + HW_APBHX_CTRL1 + MXS_SET_ADDR);
  
-       clk_disable_unprepare(mxs_dma->clk);
-       return 0;
  err_out:
 -      clk_disable(mxs_dma->clk);
++      clk_disable_unprepare(mxs_dma->clk);
        return ret;
  }
  
@@@ -636,17 -612,15 +636,17 @@@ static struct dma_async_tx_descriptor *
        }
  
        switch (direction) {
-       case DMA_TO_DEVICE:
+       case DMA_MEM_TO_DEV:
                desc->rqcfg.src_inc = 1;
                desc->rqcfg.dst_inc = 0;
 +              desc->req.rqtype = MEMTODEV;
                src = dma_addr;
                dst = pch->fifo_addr;
                break;
-       case DMA_FROM_DEVICE:
+       case DMA_DEV_TO_MEM:
                desc->rqcfg.src_inc = 0;
                desc->rqcfg.dst_inc = 1;
 +              desc->req.rqtype = DEVTOMEM;
                src = pch->fifo_addr;
                dst = dma_addr;
                break;
@@@ -759,10 -747,9 +759,10 @@@ pl330_prep_slave_sg(struct dma_chan *ch
                else
                        list_add_tail(&desc->node, &first->node);
  
-               if (direction == DMA_TO_DEVICE) {
+               if (direction == DMA_MEM_TO_DEV) {
                        desc->rqcfg.src_inc = 1;
                        desc->rqcfg.dst_inc = 0;
 +                      desc->req.rqtype = MEMTODEV;
                        fill_px(&desc->px,
                                addr, sg_dma_address(sg), sg_dma_len(sg));
                } else {
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge