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. Best Regards, Daniel Hellstrom ------------------------------------------------------------------------- Check out the new SourceForge.net Marketplace. It's the best place to buy or sell services for just about anything Open Source. http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace _______________________________________________ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users