Lines Matching refs:extif

268 	return !!ssb_extif_gpio_in(&bus->extif, 1 << gpio);  in ssb_gpio_extif_get_value()
276 ssb_extif_gpio_out(&bus->extif, 1 << gpio, value ? 1 << gpio : 0); in ssb_gpio_extif_set_value()
284 ssb_extif_gpio_outen(&bus->extif, 1 << gpio, 0); in ssb_gpio_extif_direction_input()
293 ssb_extif_gpio_outen(&bus->extif, 1 << gpio, 1 << gpio); in ssb_gpio_extif_direction_output()
294 ssb_extif_gpio_out(&bus->extif, 1 << gpio, value ? 1 << gpio : 0); in ssb_gpio_extif_direction_output()
304 ssb_extif_gpio_intmask(&bus->extif, BIT(gpio), 0); in ssb_gpio_irq_extif_mask()
311 u32 val = ssb_extif_gpio_in(&bus->extif, BIT(gpio)); in ssb_gpio_irq_extif_unmask()
313 ssb_extif_gpio_polarity(&bus->extif, BIT(gpio), val); in ssb_gpio_irq_extif_unmask()
314 ssb_extif_gpio_intmask(&bus->extif, BIT(gpio), BIT(gpio)); in ssb_gpio_irq_extif_unmask()
326 struct ssb_extif *extif = &bus->extif; in ssb_gpio_irq_extif_handler() local
327 u32 val = ssb_read32(extif->dev, SSB_EXTIF_GPIO_IN); in ssb_gpio_irq_extif_handler()
328 u32 mask = ssb_read32(extif->dev, SSB_EXTIF_GPIO_INTMASK); in ssb_gpio_irq_extif_handler()
329 u32 pol = ssb_read32(extif->dev, SSB_EXTIF_GPIO_INTPOL); in ssb_gpio_irq_extif_handler()
338 ssb_extif_gpio_polarity(extif, irqs, val & irqs); in ssb_gpio_irq_extif_handler()
345 struct ssb_extif *extif = &bus->extif; in ssb_gpio_irq_extif_domain_init() local
353 &irq_domain_simple_ops, extif); in ssb_gpio_irq_extif_domain_init()
366 hwirq = ssb_mips_irq(bus->extif.dev) + 2; in ssb_gpio_irq_extif_domain_init()
372 ssb_extif_gpio_intmask(&bus->extif, ~0, 0); in ssb_gpio_irq_extif_domain_init()
389 struct ssb_extif *extif = &bus->extif; in ssb_gpio_irq_extif_domain_exit() local
396 free_irq(ssb_mips_irq(bus->extif.dev) + 2, extif); in ssb_gpio_irq_extif_domain_exit()
466 else if (ssb_extif_available(&bus->extif)) in ssb_gpio_init()
477 ssb_extif_available(&bus->extif)) { in ssb_gpio_unregister()