Lines Matching refs:extif
265 return !!ssb_extif_gpio_in(&bus->extif, 1 << gpio); in ssb_gpio_extif_get_value()
273 ssb_extif_gpio_out(&bus->extif, 1 << gpio, value ? 1 << gpio : 0); in ssb_gpio_extif_set_value()
281 ssb_extif_gpio_outen(&bus->extif, 1 << gpio, 0); in ssb_gpio_extif_direction_input()
290 ssb_extif_gpio_outen(&bus->extif, 1 << gpio, 1 << gpio); in ssb_gpio_extif_direction_output()
291 ssb_extif_gpio_out(&bus->extif, 1 << gpio, value ? 1 << gpio : 0); in ssb_gpio_extif_direction_output()
301 ssb_extif_gpio_intmask(&bus->extif, BIT(gpio), 0); in ssb_gpio_irq_extif_mask()
308 u32 val = ssb_extif_gpio_in(&bus->extif, BIT(gpio)); in ssb_gpio_irq_extif_unmask()
310 ssb_extif_gpio_polarity(&bus->extif, BIT(gpio), val); in ssb_gpio_irq_extif_unmask()
311 ssb_extif_gpio_intmask(&bus->extif, BIT(gpio), BIT(gpio)); in ssb_gpio_irq_extif_unmask()
323 struct ssb_extif *extif = &bus->extif; in ssb_gpio_irq_extif_handler() local
324 u32 val = ssb_read32(extif->dev, SSB_EXTIF_GPIO_IN); in ssb_gpio_irq_extif_handler()
325 u32 mask = ssb_read32(extif->dev, SSB_EXTIF_GPIO_INTMASK); in ssb_gpio_irq_extif_handler()
326 u32 pol = ssb_read32(extif->dev, SSB_EXTIF_GPIO_INTPOL); in ssb_gpio_irq_extif_handler()
336 ssb_extif_gpio_polarity(extif, irqs, val & irqs); in ssb_gpio_irq_extif_handler()
343 struct ssb_extif *extif = &bus->extif; in ssb_gpio_irq_extif_domain_init() local
351 &irq_domain_simple_ops, extif); in ssb_gpio_irq_extif_domain_init()
364 hwirq = ssb_mips_irq(bus->extif.dev) + 2; in ssb_gpio_irq_extif_domain_init()
370 ssb_extif_gpio_intmask(&bus->extif, ~0, 0); in ssb_gpio_irq_extif_domain_init()
387 struct ssb_extif *extif = &bus->extif; in ssb_gpio_irq_extif_domain_exit() local
394 free_irq(ssb_mips_irq(bus->extif.dev) + 2, extif); in ssb_gpio_irq_extif_domain_exit()
465 else if (ssb_extif_available(&bus->extif)) in ssb_gpio_init()
473 ssb_extif_available(&bus->extif)) { in ssb_gpio_unregister()