/* 0..1 > reserved 2..3 > IRDA 4..7 > ETHR 8..11 > reserved 12..15 > USB 16..17 > reserved 18..23 > PSC3 24..27 > PSC2 28..31 > PSC1  */
static int mpc52xx_simple_gpio_get(struct gpio_chip *gc, unsigned int gpio)
/* 0..1 > reserved 2..3 > IRDA 4..7 > ETHR 8..11 > reserved 12..15 > USB 16..17 > reserved 18..23 > PSC3 24..27 > PSC2 28..31 > PSC1  */
static int mpc52xx_simple_gpio_get(struct gpio_chip *gc, unsigned int gpio)
{
	struct of_mm_gpio_chip *mm_gc = to_of_mm_gpio_chip(gc);
	struct mpc52xx_gpio __iomem *regs = mm_gc->regs;
	unsigned int ret;
	ret = (in_be32(&regs->simple_ival) >> (31 - gpio)) & 1;
	return ret;
}