Lines Matching refs:gpio

123 				  unsigned gpio, bool set)  in cygnus_set_bit()  argument
125 unsigned int offset = CYGNUS_GPIO_REG(gpio, reg); in cygnus_set_bit()
126 unsigned int shift = CYGNUS_GPIO_SHIFT(gpio); in cygnus_set_bit()
138 unsigned gpio) in cygnus_get_bit() argument
140 unsigned int offset = CYGNUS_GPIO_REG(gpio, reg); in cygnus_get_bit()
141 unsigned int shift = CYGNUS_GPIO_SHIFT(gpio); in cygnus_get_bit()
183 unsigned gpio = d->hwirq; in cygnus_gpio_irq_ack() local
184 unsigned int offset = CYGNUS_GPIO_REG(gpio, in cygnus_gpio_irq_ack()
186 unsigned int shift = CYGNUS_GPIO_SHIFT(gpio); in cygnus_gpio_irq_ack()
202 unsigned gpio = d->hwirq; in cygnus_gpio_irq_set_mask() local
204 cygnus_set_bit(chip, CYGNUS_GPIO_INT_MSK_OFFSET, gpio, unmask); in cygnus_gpio_irq_set_mask()
233 unsigned gpio = d->hwirq; in cygnus_gpio_irq_set_type() local
267 cygnus_set_bit(chip, CYGNUS_GPIO_IN_TYPE_OFFSET, gpio, in cygnus_gpio_irq_set_type()
269 cygnus_set_bit(chip, CYGNUS_GPIO_INT_DE_OFFSET, gpio, dual_edge); in cygnus_gpio_irq_set_type()
270 cygnus_set_bit(chip, CYGNUS_GPIO_INT_EDGE_OFFSET, gpio, in cygnus_gpio_irq_set_type()
276 gpio, level_triggered, dual_edge, rising_or_high); in cygnus_gpio_irq_set_type()
295 unsigned gpio = gc->base + offset; in cygnus_gpio_request() local
301 return pinctrl_request_gpio(gpio); in cygnus_gpio_request()
307 unsigned gpio = gc->base + offset; in cygnus_gpio_free() local
312 pinctrl_free_gpio(gpio); in cygnus_gpio_free()
315 static int cygnus_gpio_direction_input(struct gpio_chip *gc, unsigned gpio) in cygnus_gpio_direction_input() argument
321 cygnus_set_bit(chip, CYGNUS_GPIO_OUT_EN_OFFSET, gpio, false); in cygnus_gpio_direction_input()
324 dev_dbg(chip->dev, "gpio:%u set input\n", gpio); in cygnus_gpio_direction_input()
329 static int cygnus_gpio_direction_output(struct gpio_chip *gc, unsigned gpio, in cygnus_gpio_direction_output() argument
336 cygnus_set_bit(chip, CYGNUS_GPIO_OUT_EN_OFFSET, gpio, true); in cygnus_gpio_direction_output()
337 cygnus_set_bit(chip, CYGNUS_GPIO_DATA_OUT_OFFSET, gpio, !!(val)); in cygnus_gpio_direction_output()
340 dev_dbg(chip->dev, "gpio:%u set output, value:%d\n", gpio, val); in cygnus_gpio_direction_output()
345 static void cygnus_gpio_set(struct gpio_chip *gc, unsigned gpio, int val) in cygnus_gpio_set() argument
351 cygnus_set_bit(chip, CYGNUS_GPIO_DATA_OUT_OFFSET, gpio, !!(val)); in cygnus_gpio_set()
354 dev_dbg(chip->dev, "gpio:%u set, value:%d\n", gpio, val); in cygnus_gpio_set()
357 static int cygnus_gpio_get(struct gpio_chip *gc, unsigned gpio) in cygnus_gpio_get() argument
360 unsigned int offset = CYGNUS_GPIO_REG(gpio, in cygnus_gpio_get()
362 unsigned int shift = CYGNUS_GPIO_SHIFT(gpio); in cygnus_gpio_get()
389 static int cygnus_gpio_set_pull(struct cygnus_gpio *chip, unsigned gpio, in cygnus_gpio_set_pull() argument
397 cygnus_set_bit(chip, CYGNUS_GPIO_RES_EN_OFFSET, gpio, false); in cygnus_gpio_set_pull()
399 cygnus_set_bit(chip, CYGNUS_GPIO_PAD_RES_OFFSET, gpio, in cygnus_gpio_set_pull()
401 cygnus_set_bit(chip, CYGNUS_GPIO_RES_EN_OFFSET, gpio, true); in cygnus_gpio_set_pull()
406 dev_dbg(chip->dev, "gpio:%u set pullup:%d\n", gpio, pull_up); in cygnus_gpio_set_pull()
411 static void cygnus_gpio_get_pull(struct cygnus_gpio *chip, unsigned gpio, in cygnus_gpio_get_pull() argument
417 *disable = !cygnus_get_bit(chip, CYGNUS_GPIO_RES_EN_OFFSET, gpio); in cygnus_gpio_get_pull()
418 *pull_up = cygnus_get_bit(chip, CYGNUS_GPIO_PAD_RES_OFFSET, gpio); in cygnus_gpio_get_pull()
422 static int cygnus_gpio_set_strength(struct cygnus_gpio *chip, unsigned gpio, in cygnus_gpio_set_strength() argument
439 offset = CYGNUS_GPIO_REG(gpio, in cygnus_gpio_set_strength()
443 shift = CYGNUS_GPIO_SHIFT(gpio); in cygnus_gpio_set_strength()
445 dev_dbg(chip->dev, "gpio:%u set drive strength:%d mA\n", gpio, in cygnus_gpio_set_strength()
462 static int cygnus_gpio_get_strength(struct cygnus_gpio *chip, unsigned gpio, in cygnus_gpio_get_strength() argument
475 offset = CYGNUS_GPIO_REG(gpio, in cygnus_gpio_get_strength()
479 shift = CYGNUS_GPIO_SHIFT(gpio); in cygnus_gpio_get_strength()
502 unsigned gpio = cygnus_pin_to_gpio(pin); in cygnus_pin_config_get() local
509 cygnus_gpio_get_pull(chip, gpio, &disable, &pull_up); in cygnus_pin_config_get()
516 cygnus_gpio_get_pull(chip, gpio, &disable, &pull_up); in cygnus_pin_config_get()
523 cygnus_gpio_get_pull(chip, gpio, &disable, &pull_up); in cygnus_pin_config_get()
530 ret = cygnus_gpio_get_strength(chip, gpio, &arg); in cygnus_pin_config_get()
551 unsigned i, gpio = cygnus_pin_to_gpio(pin); in cygnus_pin_config_set() local
560 ret = cygnus_gpio_set_pull(chip, gpio, true, false); in cygnus_pin_config_set()
566 ret = cygnus_gpio_set_pull(chip, gpio, false, true); in cygnus_pin_config_set()
572 ret = cygnus_gpio_set_pull(chip, gpio, false, false); in cygnus_pin_config_set()
578 ret = cygnus_gpio_set_strength(chip, gpio, arg); in cygnus_pin_config_set()