Lines Matching defs:pin
63 static inline u32 zevio_gpio_port_get(struct zevio_gpio *c, unsigned pin,
66 unsigned section_offset = ((pin >> 3) & 3)*ZEVIO_GPIO_SECTION_SIZE;
70 static inline void zevio_gpio_port_set(struct zevio_gpio *c, unsigned pin,
73 unsigned section_offset = ((pin >> 3) & 3)*ZEVIO_GPIO_SECTION_SIZE;
78 static int zevio_gpio_get(struct gpio_chip *chip, unsigned pin)
84 dir = zevio_gpio_port_get(controller, pin, ZEVIO_GPIO_DIRECTION);
85 if (dir & BIT(ZEVIO_GPIO_BIT(pin)))
86 val = zevio_gpio_port_get(controller, pin, ZEVIO_GPIO_INPUT);
88 val = zevio_gpio_port_get(controller, pin, ZEVIO_GPIO_OUTPUT);
91 return (val >> ZEVIO_GPIO_BIT(pin)) & 0x1;
94 static int zevio_gpio_set(struct gpio_chip *chip, unsigned int pin, int value)
100 val = zevio_gpio_port_get(controller, pin, ZEVIO_GPIO_OUTPUT);
102 val |= BIT(ZEVIO_GPIO_BIT(pin));
104 val &= ~BIT(ZEVIO_GPIO_BIT(pin));
106 zevio_gpio_port_set(controller, pin, ZEVIO_GPIO_OUTPUT, val);
112 static int zevio_gpio_direction_input(struct gpio_chip *chip, unsigned pin)
119 val = zevio_gpio_port_get(controller, pin, ZEVIO_GPIO_DIRECTION);
120 val |= BIT(ZEVIO_GPIO_BIT(pin));
121 zevio_gpio_port_set(controller, pin, ZEVIO_GPIO_DIRECTION, val);
129 unsigned pin, int value)
135 val = zevio_gpio_port_get(controller, pin, ZEVIO_GPIO_OUTPUT);
137 val |= BIT(ZEVIO_GPIO_BIT(pin));
139 val &= ~BIT(ZEVIO_GPIO_BIT(pin));
141 zevio_gpio_port_set(controller, pin, ZEVIO_GPIO_OUTPUT, val);
142 val = zevio_gpio_port_get(controller, pin, ZEVIO_GPIO_DIRECTION);
143 val &= ~BIT(ZEVIO_GPIO_BIT(pin));
144 zevio_gpio_port_set(controller, pin, ZEVIO_GPIO_DIRECTION, val);
151 static int zevio_gpio_to_irq(struct gpio_chip *chip, unsigned pin)