lkml.org 
[lkml]   [2008]   [Apr]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH RFC] x86: Fix 64-bit DMA masks on VIA
Michael Buesch wrote:
> On Thursday 24 April 2008 15:43:50 Andi Kleen wrote:
>> Michael Buesch <mb@bu3sch.de> writes:
>>
>>> This untested patch is supposed to fix DMAing on some VIA boards.
>>> Currently the DMA subsystem returns an error, if the driver does
>>> tell that it supports a 64bit DMA mask. So the driver probing
>>> would fail in that case.
>> The driver is broken then. It is supposed to retry with a small
>> mask on an error. Please fix the driver.

I must admit my comment was slightly wrong. In some cases
it can make sense to start with a small mask and retry bigger.

>
> I already added a workaround to the driver.
> Why do we need to workaround this in _every_ driver?

The API was designed this way because many devices support different
hardware interfaces for different address sizes. So for example with a
32bit mask you might be able to transfer less data than with a 64bit
mask. And with the retry steps you should be able to figure out the
most efficient format for the current system.

See the discussion in Documentation/DMA-mapping.txt

cc: DaveM; I think the concept was from him originally.

-Andi


\
 
 \ /
  Last update: 2008-04-24 16:15    [W:0.064 / U:0.280 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site