Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 5cac9d65 authored by Darius Augulis's avatar Darius Augulis Committed by Sascha Hauer
Browse files

[ARM] MXC: Fix mxc_gpio_get(), which must read PSR register instead DR.



The Data register holds the value we have written to a gpio. To
get the input value we must read the Pad Status Register MX3 (or Sample
Status register in MX1/2 terms)

Signed-off-by: default avatarDarius Augulis <augulis.darius@gmail.com>
Signed-off-by: default avatarSascha Hauer <s.hauer@pengutronix.de>
parent eadefeff
Loading
Loading
Loading
Loading
+1 −1
Original line number Original line Diff line number Diff line
@@ -188,7 +188,7 @@ static int mxc_gpio_get(struct gpio_chip *chip, unsigned offset)
	struct mxc_gpio_port *port =
	struct mxc_gpio_port *port =
		container_of(chip, struct mxc_gpio_port, chip);
		container_of(chip, struct mxc_gpio_port, chip);


	return (__raw_readl(port->base + GPIO_DR) >> offset) & 1;
	return (__raw_readl(port->base + GPIO_PSR) >> offset) & 1;
}
}


static int mxc_gpio_direction_input(struct gpio_chip *chip, unsigned offset)
static int mxc_gpio_direction_input(struct gpio_chip *chip, unsigned offset)