[PATCH v2 4/6] [POWERPC] QE: implement support for the GPIO LIB API
Anton Vorontsov
cbouatmailru at gmail.com
Thu May 1 08:47:26 EST 2008
On Wed, Apr 30, 2008 at 02:42:03PM -0500, Timur Tabi wrote:
> Anton Vorontsov wrote:
>
> > + Example:
> > + qe_pio_a: gpio-controller at 1400 {
> > + #gpio-cells = <2>;
> > + compatible = "fsl,mpc8360-qe-pario-bank",
> > + "fsl,mpc8323-qe-pario-bank";
>
> I know this is an example, but would we ever include both compatible strings in
> one DTS? Isn't the norm something like:
>
> "fsl,mpc8360-qe-pario-bank", "fsl,qe-pario-bank";
>
> I.e. specific version, then generic version?
Per Grant Likely's comments, "fsl,qe-pario-bank" considered as a made up
stuff. MPC8323 is the first QE chip, so every next QE chips should be
compatible.
Though, for fsl,gtm we can't use this, since we really want generic
name.
> Otherwise, every time we introduce a new QE part, we'll have to update *every*
> QE-enabled device tree *and* the QE gpio driver.
Nope. If the the QE is compatible with the previous, just write
"fsl,newchip-qe-pario-bank", "fsl,mpc8323-qe-pario-bank".
Btw, the same we do for the 8349 compatible PCI.
> > +static int qe_gpio_get(struct gpio_chip *gc, unsigned int gpio)
> > +{
> > + struct of_mm_gpio_chip *mm_gc = to_of_mm_gpio_chip(gc);
> > + struct qe_pio_regs __iomem *regs = mm_gc->regs;
> > + u32 pin_mask = 1 << (QE_PIO_PINS - 1 - gpio);
> > +
> > + return in_be32(®s->cpdata) & pin_mask;
> > +}
>
> Return value should be "u32", not "int".
gpio.h disagree
$ cat include/asm-generic/gpio.h | grep \*get
int (*get)(struct gpio_chip *chip,
--
Anton Vorontsov
email: cbouatmailru at gmail.com
irc://irc.freenode.net/bd2
More information about the Linuxppc-dev
mailing list