Re: Compile error in ARM architecture

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]


On Mon, Dec 14, 2009 at 02:37:46PM +0530, Bala Shanmugam wrote:
> Russell King - ARM Linux wrote:
>> We don't support the non-coherent DMA API on ARM yet - there seems to
>> only be one user of it, and I don't think anyone actually uses this
>> driver on ARM.
>>
>>   
> Bala: Thanks for the info.  So can we add a dummy 
> function[dma_cache_sync] in arch/arm directory to avoid compilation 
> issue?

What's the point if no one's using the singular driver on ARM?  It
just adds additional maintainence overhead, and in the case of
dma_cache_sync, gives people another interface to abuse.

>> Because of the limited nature of the calculation (which is basically
>> a fast divide by multiplying and shifting the result) for udelay() we
>> have a smaller upper limit.  As stated in the ARM udelay:
>>
>>  * With currently imposed limits, this means that we support a max delay
>>  * of 2000us. Further limits: HZ<=1000 and bogomips<=3355
>>
>> We certainly can't shave off a factor of 10 since that would mean we'd
>> have to refuse to run on any platform with a calculated bogomips in
>> excess of 335 - and we already have platforms in excess of these.
>>
>> At the end of the day, large delays should not be done using udelay().
>> That's what mdelay() is for - m meaning millisecond.  Therefore, the
>> drivers wanting these millisecond delays should be using the proper
>> interface for long delays - that being mdelay().
>> .
>>
>>   
> Bala: Thats well explained, Thanks. But these should not give a compilation error I believe.
> If these delay values are architecture specific, these values should come 
> under arch/[arm or x86]/include directory to avoid compilation issues.  
> Please let me know if I miss something.

As I stated, the drivers should be using mdelay() not udelay() for large
millisecond delays.

The fix is to change the drivers to use the right function.

-------------------------------------------------------------------
List admin: http://lists.arm.linux.org.uk/mailman/listinfo/linux-arm
FAQ:        http://www.arm.linux.org.uk/mailinglists/faq.php
Etiquette:  http://www.arm.linux.org.uk/mailinglists/etiquette.php

[Linux ARM]     [Linux ARM MSM]     [Linux ARM Kernel]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]

Add to Google Follow linuxarm on Twitter