linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 0/2] dw_dmac: repair driver for use with AVR32 (AP7000)
@ 2012-08-30 17:14 Hein Tibosch
  2012-08-31  4:26 ` Viresh Kumar
  0 siblings, 1 reply; 4+ messages in thread
From: Hein Tibosch @ 2012-08-30 17:14 UTC (permalink / raw)
  To: viresh kumar
  Cc: spear-devel, Linux Kernel Mailing List, ludovic.desroches,
	Havard Skinnemoen, Nicolas Ferre, egtvedt, Andrew Morton,
	Arnd Bergmann

After some recent changes to dw_dmac, the driver got broken
for the AVR32 platform for two reasons:

The accessors to i/o memory had become little-endian.
The maximum transfer width on the memory side was increased
from 32 to 64 bits. This led to undefined behavior on the
avr32 platform.

These patches repair the driver by:
1. making the endianness configurable through Kconfig,
for AVR32 it will become big-endian
2. making the maximum memory transfer width configurable
It can be set in the code within arch

For non-avr32 (ARM) platforms, nothing has to be changed.

Thanks to all for reviewing

Hein Tibosch (2):

 drivers/dma/Kconfig        |   11 +++++++++++
 drivers/dma/dw_dmac.c      |   10 +++++++---
 drivers/dma/dw_dmac_regs.h |   14 ++++++++++++++
 include/linux/dw_dmac.h    |    3 +++
 4 files changed, 35 insertions(+), 3 deletions(-)

-- 


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH v2 0/2] dw_dmac: repair driver for use with AVR32 (AP7000)
  2012-08-30 17:14 [PATCH v2 0/2] dw_dmac: repair driver for use with AVR32 (AP7000) Hein Tibosch
@ 2012-08-31  4:26 ` Viresh Kumar
  2012-08-31  5:15   ` Hein Tibosch
  0 siblings, 1 reply; 4+ messages in thread
From: Viresh Kumar @ 2012-08-31  4:26 UTC (permalink / raw)
  To: Hein Tibosch
  Cc: spear-devel, Linux Kernel Mailing List, ludovic.desroches,
	Havard Skinnemoen, Nicolas Ferre, egtvedt, Andrew Morton,
	Arnd Bergmann

On 30 August 2012 22:44, Hein Tibosch <hein_tibosch@yahoo.es> wrote:
> After some recent changes to dw_dmac, the driver got broken
> for the AVR32 platform for two reasons:
>
> The accessors to i/o memory had become little-endian.
> The maximum transfer width on the memory side was increased
> from 32 to 64 bits. This led to undefined behavior on the
> avr32 platform.
>
> These patches repair the driver by:
> 1. making the endianness configurable through Kconfig,
> for AVR32 it will become big-endian
> 2. making the maximum memory transfer width configurable
> It can be set in the code within arch

Acked-by: Viresh Kumar <viresh.kumar@linaro.org>

BTW, Ideally speaking the fix for AVR32 which will enable 32bit mem
support and enable BIG endian support should have been part of this
patchset. That code can go through DMA tree as these patches are
very closely related. Otherwise now you have to wait till these patches
are included in linux-next, then only you can send AVR32 patches for
inclusion.

So, maybe you can just add Acked-by from me and Arnd and include
AVR patches (Only changes related to these two patches) in the same series.
That will make life easier for you.

viresh

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH v2 0/2] dw_dmac: repair driver for use with AVR32 (AP7000)
  2012-08-31  4:26 ` Viresh Kumar
@ 2012-08-31  5:15   ` Hein Tibosch
  2012-08-31  5:44     ` Viresh Kumar
  0 siblings, 1 reply; 4+ messages in thread
From: Hein Tibosch @ 2012-08-31  5:15 UTC (permalink / raw)
  To: Viresh Kumar, ludovic.desroches, egtvedt
  Cc: spear-devel, Linux Kernel Mailing List, Havard Skinnemoen,
	Nicolas Ferre, Andrew Morton, Arnd Bergmann

On 8/31/2012 12:26 PM, Viresh Kumar wrote:
> BTW, Ideally speaking the fix for AVR32 which will enable 32bit mem
> support and enable BIG endian support should have been part of this
> patchset. That code can go through DMA tree as these patches are
> very closely related. Otherwise now you have to wait till these patches
> are included in linux-next, then only you can send AVR32 patches for
> inclusion.
>
> So, maybe you can just add Acked-by from me and Arnd and include
> AVR patches (Only changes related to these two patches) in the same series.
> That will make life easier for you.

Good idea, I already wondered how these 5 patches can be kept together:

1 [PATCH v2 1/2] dw_dmac: make driver endianness configurable
2 [PATCH v2 2/2] dw_dmac: max_mem_width limits value for SRC/DST_TR_WID register
3 [PATCH v2] avr32: at32ap700x: set DMA slave properties for MCI dw_dmac
4 [PATCH v2 1/2] mmc: atmel-mci: DMA can be used with other controller
5 [PATCH v2 2/2] mmc: atmel-mci: AP700x PDC is not connected to MCI

Patch 3 will only compile after patch 2 has been applied.

Patch 4 and 5 will compile but they will only result in a working mci+dma
after patches 1, 2 and 3 have been applied.

I'm a mere  developer, not a MAINTAINER. But sure it would be good to keep
these together as much as possible. It would also be easier for fellow
avr32/mci users who want to upgrade to 3.5.2 without problems.

So I assume that you want patches 1 to 3, packed as [PATCH v3 3/3] ?

The atmel-mci patches will be handled by Ludovic Desroches.


Thanks, Hein

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH v2 0/2] dw_dmac: repair driver for use with AVR32 (AP7000)
  2012-08-31  5:15   ` Hein Tibosch
@ 2012-08-31  5:44     ` Viresh Kumar
  0 siblings, 0 replies; 4+ messages in thread
From: Viresh Kumar @ 2012-08-31  5:44 UTC (permalink / raw)
  To: Hein Tibosch
  Cc: ludovic.desroches, egtvedt, spear-devel,
	Linux Kernel Mailing List, Havard Skinnemoen, Nicolas Ferre,
	Andrew Morton, Arnd Bergmann

On 31 August 2012 10:45, Hein Tibosch <hein_tibosch@yahoo.es> wrote:
> On 8/31/2012 12:26 PM, Viresh Kumar wrote:
>> BTW, Ideally speaking the fix for AVR32 which will enable 32bit mem
>> support and enable BIG endian support should have been part of this
>> patchset. That code can go through DMA tree as these patches are
>> very closely related. Otherwise now you have to wait till these patches
>> are included in linux-next, then only you can send AVR32 patches for
>> inclusion.
>>
>> So, maybe you can just add Acked-by from me and Arnd and include
>> AVR patches (Only changes related to these two patches) in the same series.
>> That will make life easier for you.
>
> Good idea, I already wondered how these 5 patches can be kept together:
>
> 1 [PATCH v2 1/2] dw_dmac: make driver endianness configurable
> 2 [PATCH v2 2/2] dw_dmac: max_mem_width limits value for SRC/DST_TR_WID register
> 3 [PATCH v2] avr32: at32ap700x: set DMA slave properties for MCI dw_dmac
> 4 [PATCH v2 1/2] mmc: atmel-mci: DMA can be used with other controller
> 5 [PATCH v2 2/2] mmc: atmel-mci: AP700x PDC is not connected to MCI
>
> Patch 3 will only compile after patch 2 has been applied.
>
> Patch 4 and 5 will compile but they will only result in a working mci+dma
> after patches 1, 2 and 3 have been applied.
>
> I'm a mere  developer, not a MAINTAINER. But sure it would be good to keep
> these together as much as possible. It would also be easier for fellow
> avr32/mci users who want to upgrade to 3.5.2 without problems.
>
> So I assume that you want patches 1 to 3, packed as [PATCH v3 3/3] ?
>
> The atmel-mci patches will be handled by Ludovic Desroches.

Perfect !!

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2012-08-31  6:24 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-08-30 17:14 [PATCH v2 0/2] dw_dmac: repair driver for use with AVR32 (AP7000) Hein Tibosch
2012-08-31  4:26 ` Viresh Kumar
2012-08-31  5:15   ` Hein Tibosch
2012-08-31  5:44     ` Viresh Kumar

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).