[U-Boot-Users] [PATCH 08/13] SPARC: added SMC91111 driver in and out macros for LEON processors.
Ben Warren
biggerbadderben at gmail.com
Mon Mar 31 16:53:12 CEST 2008
Daniel Hellstrom wrote:
> Ben Warren wrote:
>
>> Daniel Hellstrom wrote:
>>
>>> Ben Warren wrote:
>>>
>>>
>>>> I haven't looked at how all the funky macros in this patch are
>>>> called, but it's generally considered good form to wrap multi-line
>>>> macros with do {...} while(0) in order to avoid compiler issues.
>>>> I'll NAK the patch for now based on this.
>>>>
>>>
>>>
>>> The Macros are used to read/write 8-,16-,32-bit words from the I/O
>>> bus where the SMC MAC is. LEON2/3 is bigendian, so the macros swaps
>>> the read and written data as well. The I/O bus is
>>> non-cacheable so no force cache miss is needed here.
>>>
>>> I have made the do{}while(0) you asked for and updated patch 8 and
>>> my repository:
>>>
>>>
>>>
>>
>> Per the e-mail by A. Rubini, I guess this isn't necessary. Sorry for
>> causing extra work for you. I'll pull this into the net tree today.
>>
>> regards,
>> Ben
>
> I agree with you both. However, some of the macros should not be
> "expression statements" as they return nothing this is also indicated
> by the inline function declared in drivers/net/smc91111.c:
> static inline word SMC_inw(dword offset);
> static inline void SMC_outw(word value, dword offset);
> static inline byte SMC_inb(dword offset);
> static inline void SMC_outb(byte value, dword offset);
> static inline void SMC_insw(dword offset, volatile uchar* buf, dword
> len);
> static inline void SMC_outsw(dword offset, uchar* buf, dword len);
>
> I my last patch I let the only the "true" "expressions statements"
> have the gcc slang Alessandro speak of.
>
> I would prefer the last patch I sent, currently in the repository.
>
Very good. Thanks for being so thorough! Much more interesting than
quibbling about whitespace...
regards,
Ben
More information about the U-Boot
mailing list