2010-06-07 11:16:32

by Guennadi Liakhovetski

[permalink] [raw]
Subject: [PATCH] initialise DMA engine before MMC

To use DMA engine based DMA with MMC in a non-modular build, the DMA
engine has to initialise before MMC.

Signed-off-by: Guennadi Liakhovetski <[email protected]>
---
diff --git a/drivers/Makefile b/drivers/Makefile
index 91874e0..b713e75 100644
--- a/drivers/Makefile
+++ b/drivers/Makefile
@@ -92,6 +92,7 @@ obj-$(CONFIG_EISA) += eisa/
obj-y += lguest/
obj-$(CONFIG_CPU_FREQ) += cpufreq/
obj-$(CONFIG_CPU_IDLE) += cpuidle/
+obj-$(CONFIG_DMA_ENGINE) += dma/
obj-$(CONFIG_MMC) += mmc/
obj-$(CONFIG_MEMSTICK) += memstick/
obj-$(CONFIG_NEW_LEDS) += leds/
@@ -102,7 +103,6 @@ obj-$(CONFIG_CRYPTO) += crypto/
obj-$(CONFIG_SUPERH) += sh/
obj-$(CONFIG_ARCH_SHMOBILE) += sh/
obj-$(CONFIG_GENERIC_TIME) += clocksource/
-obj-$(CONFIG_DMA_ENGINE) += dma/
obj-$(CONFIG_DCA) += dca/
obj-$(CONFIG_HID) += hid/
obj-$(CONFIG_PPC_PS3) += ps3/


2010-06-21 04:40:52

by Paul Mundt

[permalink] [raw]
Subject: Re: [PATCH] initialise DMA engine before MMC

On Mon, Jun 07, 2010 at 01:16:36PM +0200, Guennadi Liakhovetski wrote:
> To use DMA engine based DMA with MMC in a non-modular build, the DMA
> engine has to initialise before MMC.
>
> Signed-off-by: Guennadi Liakhovetski <[email protected]>

Dan, any objections to this?

2010-06-22 23:34:46

by Dan Williams

[permalink] [raw]
Subject: Re: [PATCH] initialise DMA engine before MMC

On Sun, Jun 20, 2010 at 9:40 PM, Paul Mundt <[email protected]> wrote:
> On Mon, Jun 07, 2010 at 01:16:36PM +0200, Guennadi Liakhovetski wrote:
>> To use DMA engine based DMA with MMC in a non-modular build, the DMA
>> engine has to initialise before MMC.
>>
>> Signed-off-by: Guennadi Liakhovetski <[email protected]>
>
> Dan, any objections to this?

No, objections, you can add my acked-by.

2010-06-23 06:47:47

by Linus Walleij

[permalink] [raw]
Subject: Re: [PATCH] initialise DMA engine before MMC

2010/6/7 Guennadi Liakhovetski <[email protected]>:

> To use DMA engine based DMA with MMC in a non-modular build, the DMA
> engine has to initialise before MMC.
>
> Signed-off-by: Guennadi Liakhovetski <[email protected]>
> ---
> diff --git a/drivers/Makefile b/drivers/Makefile
> index 91874e0..b713e75 100644
> --- a/drivers/Makefile
> +++ b/drivers/Makefile
> @@ -92,6 +92,7 @@ obj-$(CONFIG_EISA) ? ? ? ? ? ?+= eisa/
> ?obj-y ? ? ? ? ? ? ? ? ? ? ? ? ?+= lguest/
> ?obj-$(CONFIG_CPU_FREQ) ? ? ? ? += cpufreq/
> ?obj-$(CONFIG_CPU_IDLE) ? ? ? ? += cpuidle/
> +obj-$(CONFIG_DMA_ENGINE) ? ? ? += dma/
> ?obj-$(CONFIG_MMC) ? ? ? ? ? ? ?+= mmc/
> ?obj-$(CONFIG_MEMSTICK) ? ? ? ? += memstick/
> ?obj-$(CONFIG_NEW_LEDS) ? ? ? ? += leds/
> @@ -102,7 +103,6 @@ obj-$(CONFIG_CRYPTO) ? ? ? ? ? ? ? ?+= crypto/
> ?obj-$(CONFIG_SUPERH) ? ? ? ? ? += sh/
> ?obj-$(CONFIG_ARCH_SHMOBILE) ? ?+= sh/
> ?obj-$(CONFIG_GENERIC_TIME) ? ? += clocksource/
> -obj-$(CONFIG_DMA_ENGINE) ? ? ? += dma/
> ?obj-$(CONFIG_DCA) ? ? ? ? ? ? ?+= dca/
> ?obj-$(CONFIG_HID) ? ? ? ? ? ? ?+= hid/
> ?obj-$(CONFIG_PPC_PS3) ? ? ? ? ?+= ps3/

What I did was to move my DMA engines to subsystem_initcall(), with this
approach I would have had to rearrange a lot of subsystems I think.

But if it's easier for you this way by all means do it.

Yours,
Linus Walleij

2010-08-27 19:49:51

by Chris Ball

[permalink] [raw]
Subject: [PATCH RESEND] initialise DMA engine before MMC

Hi,

Andrew, mind taking this one?

From: Guennadi Liakhovetski <[email protected]>
Date: Mon, 7 Jun 2010 13:16:36 +0200 (CEST)

To use DMA engine based DMA with MMC in a non-modular build, the DMA
engine has to initialise before MMC.

Signed-off-by: Guennadi Liakhovetski <[email protected]>
Acked-by: Dan Williams <[email protected]>
---
diff --git a/drivers/Makefile b/drivers/Makefile
index 91874e0..b713e75 100644
--- a/drivers/Makefile
+++ b/drivers/Makefile
@@ -92,6 +92,7 @@ obj-$(CONFIG_EISA) += eisa/
obj-y += lguest/
obj-$(CONFIG_CPU_FREQ) += cpufreq/
obj-$(CONFIG_CPU_IDLE) += cpuidle/
+obj-$(CONFIG_DMA_ENGINE) += dma/
obj-$(CONFIG_MMC) += mmc/
obj-$(CONFIG_MEMSTICK) += memstick/
obj-$(CONFIG_NEW_LEDS) += leds/
@@ -102,7 +103,6 @@ obj-$(CONFIG_CRYPTO) += crypto/
obj-$(CONFIG_SUPERH) += sh/
obj-$(CONFIG_ARCH_SHMOBILE) += sh/
obj-$(CONFIG_GENERIC_TIME) += clocksource/
-obj-$(CONFIG_DMA_ENGINE) += dma/
obj-$(CONFIG_DCA) += dca/
obj-$(CONFIG_HID) += hid/
obj-$(CONFIG_PPC_PS3) += ps3/
--
Chris Ball <[email protected]> <http://printf.net/>
One Laptop Per Child

2010-08-27 20:02:45

by Andrew Morton

[permalink] [raw]
Subject: Re: [PATCH RESEND] initialise DMA engine before MMC

On Fri, 27 Aug 2010 20:49:39 +0100
Chris Ball <[email protected]> wrote:

> Hi,
>
> Andrew, mind taking this one?
>
> From: Guennadi Liakhovetski <[email protected]>
> Date: Mon, 7 Jun 2010 13:16:36 +0200 (CEST)
>
> To use DMA engine based DMA with MMC in a non-modular build, the DMA
> engine has to initialise before MMC.
>
> Signed-off-by: Guennadi Liakhovetski <[email protected]>
> Acked-by: Dan Williams <[email protected]>
> ---
> diff --git a/drivers/Makefile b/drivers/Makefile
> index 91874e0..b713e75 100644
> --- a/drivers/Makefile
> +++ b/drivers/Makefile
> @@ -92,6 +92,7 @@ obj-$(CONFIG_EISA) += eisa/
> obj-y += lguest/
> obj-$(CONFIG_CPU_FREQ) += cpufreq/
> obj-$(CONFIG_CPU_IDLE) += cpuidle/
> +obj-$(CONFIG_DMA_ENGINE) += dma/
> obj-$(CONFIG_MMC) += mmc/
> obj-$(CONFIG_MEMSTICK) += memstick/
> obj-$(CONFIG_NEW_LEDS) += leds/
> @@ -102,7 +103,6 @@ obj-$(CONFIG_CRYPTO) += crypto/
> obj-$(CONFIG_SUPERH) += sh/
> obj-$(CONFIG_ARCH_SHMOBILE) += sh/
> obj-$(CONFIG_GENERIC_TIME) += clocksource/
> -obj-$(CONFIG_DMA_ENGINE) += dma/
> obj-$(CONFIG_DCA) += dca/
> obj-$(CONFIG_HID) += hid/
> obj-$(CONFIG_PPC_PS3) += ps3/

erk, doing this via link ordering isn't nice.

It would be better to express this dependency via initcall levels -
core_initcall() or something.