Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit cb1be3c7 authored by Dong Aisheng's avatar Dong Aisheng Committed by Shawn Guo
Browse files

ARM: mxs: do not add dma device by default



This will cause conflict when dt is enabled.
So let each platform add dma devices respectively.

Cc: Sascha Hauer <s.hauer@pengutronix.de>
Cc: Huang Shijie <b32955@freescale.com>
Signed-off-by: default avatarDong Aisheng <dong.aisheng@linaro.org>
Signed-off-by: default avatarShawn Guo <shawn.guo@linaro.org>
Acked-by: default avatarMarek Vasut <marex@denx.de>
Acked-by: default avatarVinod Koul <vinod.koul@intel.com>
parent 90c9abc5
Loading
Loading
Loading
Loading
+1 −22
Original line number Diff line number Diff line
@@ -14,7 +14,7 @@
#include <mach/mx28.h>
#include <mach/devices-common.h>

static struct platform_device *__init mxs_add_dma(const char *devid,
struct platform_device *__init mxs_add_dma(const char *devid,
						resource_size_t base)
{
	struct resource res[] = {
@@ -29,24 +29,3 @@ static struct platform_device *__init mxs_add_dma(const char *devid,
				res, ARRAY_SIZE(res), NULL, 0,
				DMA_BIT_MASK(32));
}

static int __init mxs_add_mxs_dma(void)
{
	char *mx23_apbh = "imx23-dma-apbh";
	char *mx23_apbx = "imx23-dma-apbx";
	char *mx28_apbh = "imx28-dma-apbh";
	char *mx28_apbx = "imx28-dma-apbx";

	if (cpu_is_mx23()) {
		mxs_add_dma(mx23_apbh, MX23_APBH_DMA_BASE_ADDR);
		mxs_add_dma(mx23_apbx, MX23_APBX_DMA_BASE_ADDR);
	}

	if (cpu_is_mx28()) {
		mxs_add_dma(mx28_apbh, MX28_APBH_DMA_BASE_ADDR);
		mxs_add_dma(mx28_apbx, MX28_APBX_DMA_BASE_ADDR);
	}

	return 0;
}
arch_initcall(mxs_add_mxs_dma);
+3 −0
Original line number Diff line number Diff line
@@ -31,4 +31,7 @@ extern void mx28_init_irq(void);

extern void icoll_init_irq(void);

extern struct platform_device *mxs_add_dma(const char *devid,
						resource_size_t base);

#endif /* __MACH_MXS_COMMON_H__ */
+6 −0
Original line number Diff line number Diff line
@@ -66,9 +66,15 @@ void __init mx28_init_irq(void)
void __init mx23_soc_init(void)
{
	pinctrl_provide_dummies();

	mxs_add_dma("imx23-dma-apbh", MX23_APBH_DMA_BASE_ADDR);
	mxs_add_dma("imx23-dma-apbx", MX23_APBX_DMA_BASE_ADDR);
}

void __init mx28_soc_init(void)
{
	pinctrl_provide_dummies();

	mxs_add_dma("imx28-dma-apbh", MX23_APBH_DMA_BASE_ADDR);
	mxs_add_dma("imx28-dma-apbx", MX23_APBX_DMA_BASE_ADDR);
}