Lines Matching refs:gpio
20 static int bcma_gpio_get_value(struct gpio_chip *chip, unsigned gpio) in bcma_gpio_get_value() argument
24 return !!bcma_chipco_gpio_in(cc, 1 << gpio); in bcma_gpio_get_value()
27 static void bcma_gpio_set_value(struct gpio_chip *chip, unsigned gpio, in bcma_gpio_set_value() argument
32 bcma_chipco_gpio_out(cc, 1 << gpio, value ? 1 << gpio : 0); in bcma_gpio_set_value()
35 static int bcma_gpio_direction_input(struct gpio_chip *chip, unsigned gpio) in bcma_gpio_direction_input() argument
39 bcma_chipco_gpio_outen(cc, 1 << gpio, 0); in bcma_gpio_direction_input()
43 static int bcma_gpio_direction_output(struct gpio_chip *chip, unsigned gpio, in bcma_gpio_direction_output() argument
48 bcma_chipco_gpio_outen(cc, 1 << gpio, 1 << gpio); in bcma_gpio_direction_output()
49 bcma_chipco_gpio_out(cc, 1 << gpio, value ? 1 << gpio : 0); in bcma_gpio_direction_output()
53 static int bcma_gpio_request(struct gpio_chip *chip, unsigned gpio) in bcma_gpio_request() argument
57 bcma_chipco_gpio_control(cc, 1 << gpio, 0); in bcma_gpio_request()
59 bcma_chipco_gpio_pulldown(cc, 1 << gpio, 0); in bcma_gpio_request()
61 bcma_chipco_gpio_pullup(cc, 1 << gpio, 1 << gpio); in bcma_gpio_request()
66 static void bcma_gpio_free(struct gpio_chip *chip, unsigned gpio) in bcma_gpio_free() argument
71 bcma_chipco_gpio_pullup(cc, 1 << gpio, 0); in bcma_gpio_free()
80 int gpio = irqd_to_hwirq(d); in bcma_gpio_irq_unmask() local
81 u32 val = bcma_chipco_gpio_in(cc, BIT(gpio)); in bcma_gpio_irq_unmask()
83 bcma_chipco_gpio_polarity(cc, BIT(gpio), val); in bcma_gpio_irq_unmask()
84 bcma_chipco_gpio_intmask(cc, BIT(gpio), BIT(gpio)); in bcma_gpio_irq_unmask()
91 int gpio = irqd_to_hwirq(d); in bcma_gpio_irq_mask() local
93 bcma_chipco_gpio_intmask(cc, BIT(gpio), 0); in bcma_gpio_irq_mask()
105 struct gpio_chip *gc = &cc->gpio; in bcma_gpio_irq_handler()
110 int gpio; in bcma_gpio_irq_handler() local
115 for_each_set_bit(gpio, &irqs, gc->ngpio) in bcma_gpio_irq_handler()
116 generic_handle_irq(irq_find_mapping(gc->irqdomain, gpio)); in bcma_gpio_irq_handler()
124 struct gpio_chip *chip = &cc->gpio; in bcma_gpio_irq_init()
174 struct gpio_chip *chip = &cc->gpio; in bcma_gpio_init()
231 gpiochip_remove(&cc->gpio); in bcma_gpio_unregister()