Lines Matching refs:extif
264 return !!ssb_extif_gpio_in(&bus->extif, 1 << gpio); in ssb_gpio_extif_get_value()
272 ssb_extif_gpio_out(&bus->extif, 1 << gpio, value ? 1 << gpio : 0); in ssb_gpio_extif_set_value()
280 ssb_extif_gpio_outen(&bus->extif, 1 << gpio, 0); in ssb_gpio_extif_direction_input()
289 ssb_extif_gpio_outen(&bus->extif, 1 << gpio, 1 << gpio); in ssb_gpio_extif_direction_output()
290 ssb_extif_gpio_out(&bus->extif, 1 << gpio, value ? 1 << gpio : 0); in ssb_gpio_extif_direction_output()
300 ssb_extif_gpio_intmask(&bus->extif, BIT(gpio), 0); in ssb_gpio_irq_extif_mask()
307 u32 val = ssb_extif_gpio_in(&bus->extif, BIT(gpio)); in ssb_gpio_irq_extif_unmask()
309 ssb_extif_gpio_polarity(&bus->extif, BIT(gpio), val); in ssb_gpio_irq_extif_unmask()
310 ssb_extif_gpio_intmask(&bus->extif, BIT(gpio), BIT(gpio)); in ssb_gpio_irq_extif_unmask()
322 struct ssb_extif *extif = &bus->extif; in ssb_gpio_irq_extif_handler() local
323 u32 val = ssb_read32(extif->dev, SSB_EXTIF_GPIO_IN); in ssb_gpio_irq_extif_handler()
324 u32 mask = ssb_read32(extif->dev, SSB_EXTIF_GPIO_INTMASK); in ssb_gpio_irq_extif_handler()
325 u32 pol = ssb_read32(extif->dev, SSB_EXTIF_GPIO_INTPOL); in ssb_gpio_irq_extif_handler()
334 ssb_extif_gpio_polarity(extif, irqs, val & irqs); in ssb_gpio_irq_extif_handler()
341 struct ssb_extif *extif = &bus->extif; in ssb_gpio_irq_extif_domain_init() local
349 &irq_domain_simple_ops, extif); in ssb_gpio_irq_extif_domain_init()
362 hwirq = ssb_mips_irq(bus->extif.dev) + 2; in ssb_gpio_irq_extif_domain_init()
368 ssb_extif_gpio_intmask(&bus->extif, ~0, 0); in ssb_gpio_irq_extif_domain_init()
385 struct ssb_extif *extif = &bus->extif; in ssb_gpio_irq_extif_domain_exit() local
392 free_irq(ssb_mips_irq(bus->extif.dev) + 2, extif); in ssb_gpio_irq_extif_domain_exit()
463 else if (ssb_extif_available(&bus->extif)) in ssb_gpio_init()
471 ssb_extif_available(&bus->extif)) { in ssb_gpio_unregister()