From: Vinod Koul Date: Mon, 2 Sep 2013 12:12:35 +0000 (+0530) Subject: Merge branch 'topic/sh' into for-linus X-Git-Tag: v3.12-rc1~68^2~7 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=265d9c673d47fcd5812d69dc07104b706285de56;p=thirdparty%2Fkernel%2Flinux.git Merge branch 'topic/sh' into for-linus Conflicts: drivers/dma/sh/Kconfig drivers/dma/sh/shdmac.c Signed-off-by: Vinod Koul --- 265d9c673d47fcd5812d69dc07104b706285de56 diff --cc drivers/dma/sh/Kconfig index e2b94d16f41f2,d0924b6948e0e..dadd9e010c0b0 --- a/drivers/dma/sh/Kconfig +++ b/drivers/dma/sh/Kconfig @@@ -23,8 -23,6 +23,12 @@@ config SUDMA help Enable support for the Renesas SUDMAC controllers. +config RCAR_HPB_DMAE + tristate "Renesas R-Car HPB DMAC support" + depends on SH_DMAE_BASE + help + Enable support for the Renesas R-Car series DMA controllers. ++ + config SHDMA_R8A73A4 + def_bool y + depends on ARCH_R8A73A4 && SH_DMAE != n diff --cc drivers/dma/sh/Makefile index ccf17cb5af10c,05a31d447bd4e..e856af23b7895 --- a/drivers/dma/sh/Makefile +++ b/drivers/dma/sh/Makefile @@@ -1,4 -1,8 +1,9 @@@ obj-$(CONFIG_SH_DMAE_BASE) += shdma-base.o shdma-of.o obj-$(CONFIG_SH_DMAE) += shdma.o + shdma-y := shdmac.o + ifeq ($(CONFIG_OF),y) + shdma-$(CONFIG_SHDMA_R8A73A4) += shdma-r8a73a4.o + endif + shdma-objs := $(shdma-y) obj-$(CONFIG_SUDMAC) += sudmac.o +obj-$(CONFIG_RCAR_HPB_DMAE) += rcar-hpbdma.o diff --cc drivers/dma/sh/shdma-of.c index 966aaab0b4d33,2acf7b62d6b64..06473a05fe4eb --- a/drivers/dma/sh/shdma-of.c +++ b/drivers/dma/sh/shdma-of.c @@@ -42,12 -42,9 +42,9 @@@ static struct dma_chan *shdma_of_xlate( static int shdma_of_probe(struct platform_device *pdev) { - const struct of_dev_auxdata *lookup = pdev->dev.platform_data; + const struct of_dev_auxdata *lookup = dev_get_platdata(&pdev->dev); int ret; - if (!lookup) - return -EINVAL; - ret = of_dma_controller_register(pdev->dev.of_node, shdma_of_xlate, pdev); if (ret < 0) diff --cc drivers/dma/sh/shdmac.c index b388b12f078e7,33ce47eef0bff..3d0472b78f5fa --- a/drivers/dma/sh/shdmac.c +++ b/drivers/dma/sh/shdmac.c @@@ -669,6 -693,11 +693,11 @@@ static int sh_dmae_probe(struct platfor struct dma_device *dma_dev; struct resource *chan, *dmars, *errirq_res, *chanirq_res; + if (pdev->dev.of_node) + pdata = of_match_device(sh_dmae_of_match, &pdev->dev)->data; + else - pdata = pdev->dev.platform_data; ++ pdata = dev_get_platdata(&pdev->dev); + /* get platform data */ if (!pdata || !pdata->channel_num) return -ENODEV;