On Fri, 21 Feb 2003, Jeff Baitis wrote: > -#define outw_p(val,port) \ > -do { \ > - *(volatile u16 *)(mips_io_port_base + __swizzle_addr_w(port)) = \ > - __ioswab16(val); \ > - SLOW_DOWN_IO; \ > -} while(0) > +/* baitisj */ > +static inline u16 outw_p(u16 val, unsigned long port) > +{ > + register u16 retval; > + do { > + retval = *(volatile u16 *)(mips_io_port_base + __swizzle_addr_w(port)) = > + __ioswab16(val); > + SLOW_DOWN_IO; > + } while(0); > + return retval; > +} You don't need the `do { ... } while (0)' construct in an inline function. Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds