Lines Matching refs:pin

66 static inline u32 zevio_gpio_port_get(struct zevio_gpio *c, unsigned pin,  in zevio_gpio_port_get()  argument
69 unsigned section_offset = ((pin >> 3) & 3)*ZEVIO_GPIO_SECTION_SIZE; in zevio_gpio_port_get()
73 static inline void zevio_gpio_port_set(struct zevio_gpio *c, unsigned pin, in zevio_gpio_port_set() argument
76 unsigned section_offset = ((pin >> 3) & 3)*ZEVIO_GPIO_SECTION_SIZE; in zevio_gpio_port_set()
81 static int zevio_gpio_get(struct gpio_chip *chip, unsigned pin) in zevio_gpio_get() argument
87 dir = zevio_gpio_port_get(controller, pin, ZEVIO_GPIO_DIRECTION); in zevio_gpio_get()
88 if (dir & BIT(ZEVIO_GPIO_BIT(pin))) in zevio_gpio_get()
89 val = zevio_gpio_port_get(controller, pin, ZEVIO_GPIO_INPUT); in zevio_gpio_get()
91 val = zevio_gpio_port_get(controller, pin, ZEVIO_GPIO_OUTPUT); in zevio_gpio_get()
94 return (val >> ZEVIO_GPIO_BIT(pin)) & 0x1; in zevio_gpio_get()
97 static void zevio_gpio_set(struct gpio_chip *chip, unsigned pin, int value) in zevio_gpio_set() argument
103 val = zevio_gpio_port_get(controller, pin, ZEVIO_GPIO_OUTPUT); in zevio_gpio_set()
105 val |= BIT(ZEVIO_GPIO_BIT(pin)); in zevio_gpio_set()
107 val &= ~BIT(ZEVIO_GPIO_BIT(pin)); in zevio_gpio_set()
109 zevio_gpio_port_set(controller, pin, ZEVIO_GPIO_OUTPUT, val); in zevio_gpio_set()
113 static int zevio_gpio_direction_input(struct gpio_chip *chip, unsigned pin) in zevio_gpio_direction_input() argument
120 val = zevio_gpio_port_get(controller, pin, ZEVIO_GPIO_DIRECTION); in zevio_gpio_direction_input()
121 val |= BIT(ZEVIO_GPIO_BIT(pin)); in zevio_gpio_direction_input()
122 zevio_gpio_port_set(controller, pin, ZEVIO_GPIO_DIRECTION, val); in zevio_gpio_direction_input()
130 unsigned pin, int value) in zevio_gpio_direction_output() argument
136 val = zevio_gpio_port_get(controller, pin, ZEVIO_GPIO_OUTPUT); in zevio_gpio_direction_output()
138 val |= BIT(ZEVIO_GPIO_BIT(pin)); in zevio_gpio_direction_output()
140 val &= ~BIT(ZEVIO_GPIO_BIT(pin)); in zevio_gpio_direction_output()
142 zevio_gpio_port_set(controller, pin, ZEVIO_GPIO_OUTPUT, val); in zevio_gpio_direction_output()
143 val = zevio_gpio_port_get(controller, pin, ZEVIO_GPIO_DIRECTION); in zevio_gpio_direction_output()
144 val &= ~BIT(ZEVIO_GPIO_BIT(pin)); in zevio_gpio_direction_output()
145 zevio_gpio_port_set(controller, pin, ZEVIO_GPIO_DIRECTION, val); in zevio_gpio_direction_output()
152 static int zevio_gpio_to_irq(struct gpio_chip *chip, unsigned pin) in zevio_gpio_to_irq() argument