Re: [patch 2.6.20-rc1 4/6] PXA GPIO wrappers

David Brownell
2006-12-21T06:44:09Z

On Wednesday 20 December 2006 10:12 pm, Andrew Morton wrote:
> On Wed, 20 Dec 2006 13:12:35 -0800
> David Brownell <david-b@pacbell.net> wrote:
>
> > +/* REVISIT these macros are correct, but suffer code explosion
> > + * for non-constant parameters. Provide out-line versions too.
> > + */
> > +#define gpio_get_value(gpio) \
> > + (GPLR(gpio) & GPIO_bit(gpio))
> > +
> > +#define gpio_set_value(gpio,value) \
> > + ((value) ? (GPSR(gpio) = GPIO_bit(gpio)):(GPCR(gpio) = GPIO_bit(gpio)))
>
> Why not implement them as inline functions?

I just collected and forwarded the code from Philip...
the better not to lose such stuff! :)

> Or non-inline functions, come to that.

In this case I think that'd be preferable; see what those macros
expand to on pxa27x CPUs.

> Either way, programming in C is preferable to this ;)

Hey, at least we've started using these new fangled "function prototypes"!

I remember when we had to walk five miles through LINT every morning.
Uphill. Then it was another five miles uphill on the way back, through
a maze of twisty octal contants like "8" and "9". We didn't even have
void pointers. UIDs were eight bits. This ANSI stuff you new kids are
using ... you've got it easy!!