Re: [PATCH 1/2] dw_dmac: make driver endianness configurable

From: Viresh Kumar
Date: Mon Aug 27 2012 - 23:23:02 EST


On 27 August 2012 20:28, Hein Tibosch <hein_tibosch@xxxxxxxx> wrote:
>>> +config DW_DMAC_MEM_64_BIT
>>> + bool "Allow 64-bit memory transfers"
>>> + default y if !AVR32
>>> + depends on DW_DMAC
>>> + help
>>> + Say yes if the DMA controller may do 64-bit memory transfers
>>> + For AVR32, say no because only up to 32-bit transfers are
>>> + defined
>> Is this sane to add? Could some non-AVR32 platforms use 64-bit and 32-bit
>> depending on runtime configuration? E.g. if you build a kernel with support
>> for multiple boards/processors, and there is a mix of 32-bit and 64-bit wide
>> DMA support.
>>
>> I think it is better to select 32/64-bit at runtime.
>
> I did that in the first patch, adding a new property to the dw_dma_slave
> structure. It had the small disadvantage that some arch code had to be
> adapted (at32ap700x.c).
>
> Viresh, what do you think? Add a property called "mem_64_bit_access" or so?
>
> Or should it be passed as a member of 'dw_dma_platform_data', because it
> is a property of the (entire) DMA controller?

I think second option is better. But can there be some supportive scenarios of
first option?

We have a system, with two different memory controllers, one supporting 32 bit
and other 64 bit?

Or what we can do now is: go with option 2, i.e. update dw_dma_platform_data
and if some platform like what i mentioned above comes, then we can move it
to slave data.

viresh
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/