Lines Matching refs:gpio

3  * MPC52xx gpio driver
11 #include <linux/gpio/legacy-of-mm-gpiochip.h>
44 static int mpc52xx_wkup_gpio_get(struct gpio_chip *gc, unsigned int gpio)
50 ret = (in_8(&regs->wkup_ival) >> (7 - gpio)) & 1;
52 pr_debug("%s: gpio: %d ret: %d\n", __func__, gpio, ret);
58 __mpc52xx_wkup_gpio_set(struct gpio_chip *gc, unsigned int gpio, int val)
65 chip->shadow_dvo |= 1 << (7 - gpio);
67 chip->shadow_dvo &= ~(1 << (7 - gpio));
73 mpc52xx_wkup_gpio_set(struct gpio_chip *gc, unsigned int gpio, int val)
79 __mpc52xx_wkup_gpio_set(gc, gpio, val);
83 pr_debug("%s: gpio: %d val: %d\n", __func__, gpio, val);
86 static int mpc52xx_wkup_gpio_dir_in(struct gpio_chip *gc, unsigned int gpio)
96 chip->shadow_ddr &= ~(1 << (7 - gpio));
100 chip->shadow_gpioe |= 1 << (7 - gpio);
109 mpc52xx_wkup_gpio_dir_out(struct gpio_chip *gc, unsigned int gpio, int val)
118 __mpc52xx_wkup_gpio_set(gc, gpio, val);
121 chip->shadow_ddr |= 1 << (7 - gpio);
125 chip->shadow_gpioe |= 1 << (7 - gpio);
130 pr_debug("%s: gpio: %d val: %d\n", __func__, gpio, val);
176 { .compatible = "fsl,mpc5200-gpio-wkup", },
182 .name = "mpc5200-gpio-wkup",
206 static int mpc52xx_simple_gpio_get(struct gpio_chip *gc, unsigned int gpio)
212 ret = (in_be32(&regs->simple_ival) >> (31 - gpio)) & 1;
218 __mpc52xx_simple_gpio_set(struct gpio_chip *gc, unsigned int gpio, int val)
225 chip->shadow_dvo |= 1 << (31 - gpio);
227 chip->shadow_dvo &= ~(1 << (31 - gpio));
232 mpc52xx_simple_gpio_set(struct gpio_chip *gc, unsigned int gpio, int val)
238 __mpc52xx_simple_gpio_set(gc, gpio, val);
242 pr_debug("%s: gpio: %d val: %d\n", __func__, gpio, val);
245 static int mpc52xx_simple_gpio_dir_in(struct gpio_chip *gc, unsigned int gpio)
255 chip->shadow_ddr &= ~(1 << (31 - gpio));
259 chip->shadow_gpioe |= 1 << (31 - gpio);
268 mpc52xx_simple_gpio_dir_out(struct gpio_chip *gc, unsigned int gpio, int val)
278 __mpc52xx_simple_gpio_set(gc, gpio, val);
281 chip->shadow_ddr |= 1 << (31 - gpio);
285 chip->shadow_gpioe |= 1 << (31 - gpio);
290 pr_debug("%s: gpio: %d val: %d\n", __func__, gpio, val);
329 { .compatible = "fsl,mpc5200-gpio", },
335 .name = "mpc5200-gpio",
361 MODULE_DESCRIPTION("Freescale MPC52xx gpio driver");