
On Wednesday 01 December 2010 09:48:45 Stefano Babic wrote:
On 12/01/2010 06:34 AM, Wolfgang Denk wrote:
Dear Marek Vasut,
In message 201012010346.21897.marek.vasut@gmail.com you wrote:
On efikamx, I'll soon submit it mainline (when I clean it up enough). Here's the relevant part of configuration file (the #define __io is actually the important
thing):
Is there a way to do without this?
#define __io
I mean, these empty defines look pretty bogus to me.
I have found several boards with the same behavior:
include/configs/mv-common.h:#define __io include/configs/r2dplus.h:#define __io include/configs/edminiv2.h:#define __io include/configs/nhk8815.h:#define __io(a)((void __iomem *)(PCI_IO_VADDR
- (a)))
include/configs/r7780mp.h:#define __io
__io is defined if CMD_IDE is set for most of them, meaning CMD_IDE requires this define, even if it has no particular meaning for the processor we are using. It seems to me that defining __io is only required for enabling the switch inside arch/arm/include/asm/io.h: #ifdef __io #define outsb(p,d,l) __raw_writesb(__io(p),d,l) ...
Indeed
Really __io should accept a parameter to make some casting, as I can see in the blackfin architecture. Except the nhk8815 board, no parameter is accepted and the define enables only the #ifdef switch.
Yes
Probably there is a better way to do this ;-). Could be maybe better to define __io inside io.h if it is not already defined by a board ?
This should go through a separate patch though. Did anything like that emerged while I was away or shall someone work on this ? Besides, what about this patch?
Thanks, cheers!
Best regards, Stefano Babic