tb10x_gpio         48 drivers/gpio/gpio-tb10x.c static inline u32 tb10x_reg_read(struct tb10x_gpio *gpio, unsigned int offs)
tb10x_gpio         53 drivers/gpio/gpio-tb10x.c static inline void tb10x_reg_write(struct tb10x_gpio *gpio, unsigned int offs,
tb10x_gpio         59 drivers/gpio/gpio-tb10x.c static inline void tb10x_set_bits(struct tb10x_gpio *gpio, unsigned int offs,
tb10x_gpio         77 drivers/gpio/gpio-tb10x.c 	struct tb10x_gpio *tb10x_gpio = gpiochip_get_data(chip);
tb10x_gpio         79 drivers/gpio/gpio-tb10x.c 	return irq_create_mapping(tb10x_gpio->domain, offset);
tb10x_gpio         96 drivers/gpio/gpio-tb10x.c 	struct tb10x_gpio *tb10x_gpio = data;
tb10x_gpio         97 drivers/gpio/gpio-tb10x.c 	u32 r = tb10x_reg_read(tb10x_gpio, OFFSET_TO_REG_CHANGE);
tb10x_gpio         98 drivers/gpio/gpio-tb10x.c 	u32 m = tb10x_reg_read(tb10x_gpio, OFFSET_TO_REG_INT_EN);
tb10x_gpio        103 drivers/gpio/gpio-tb10x.c 		generic_handle_irq(irq_find_mapping(tb10x_gpio->domain, i));
tb10x_gpio        110 drivers/gpio/gpio-tb10x.c 	struct tb10x_gpio *tb10x_gpio;
tb10x_gpio        122 drivers/gpio/gpio-tb10x.c 	tb10x_gpio = devm_kzalloc(dev, sizeof(*tb10x_gpio), GFP_KERNEL);
tb10x_gpio        123 drivers/gpio/gpio-tb10x.c 	if (tb10x_gpio == NULL)
tb10x_gpio        126 drivers/gpio/gpio-tb10x.c 	tb10x_gpio->base = devm_platform_ioremap_resource(pdev, 0);
tb10x_gpio        127 drivers/gpio/gpio-tb10x.c 	if (IS_ERR(tb10x_gpio->base))
tb10x_gpio        128 drivers/gpio/gpio-tb10x.c 		return PTR_ERR(tb10x_gpio->base);
tb10x_gpio        130 drivers/gpio/gpio-tb10x.c 	tb10x_gpio->gc.label =
tb10x_gpio        132 drivers/gpio/gpio-tb10x.c 	if (!tb10x_gpio->gc.label)
tb10x_gpio        140 drivers/gpio/gpio-tb10x.c 	ret = bgpio_init(&tb10x_gpio->gc, dev, 4,
tb10x_gpio        141 drivers/gpio/gpio-tb10x.c 			 tb10x_gpio->base + OFFSET_TO_REG_DATA,
tb10x_gpio        144 drivers/gpio/gpio-tb10x.c 			 tb10x_gpio->base + OFFSET_TO_REG_DDR,
tb10x_gpio        151 drivers/gpio/gpio-tb10x.c 	tb10x_gpio->gc.base = -1;
tb10x_gpio        152 drivers/gpio/gpio-tb10x.c 	tb10x_gpio->gc.parent = dev;
tb10x_gpio        153 drivers/gpio/gpio-tb10x.c 	tb10x_gpio->gc.owner = THIS_MODULE;
tb10x_gpio        158 drivers/gpio/gpio-tb10x.c 	tb10x_gpio->gc.ngpio = ngpio;
tb10x_gpio        159 drivers/gpio/gpio-tb10x.c 	tb10x_gpio->gc.request = gpiochip_generic_request;
tb10x_gpio        160 drivers/gpio/gpio-tb10x.c 	tb10x_gpio->gc.free = gpiochip_generic_free;
tb10x_gpio        162 drivers/gpio/gpio-tb10x.c 	ret = devm_gpiochip_add_data(dev, &tb10x_gpio->gc, tb10x_gpio);
tb10x_gpio        168 drivers/gpio/gpio-tb10x.c 	platform_set_drvdata(pdev, tb10x_gpio);
tb10x_gpio        177 drivers/gpio/gpio-tb10x.c 		tb10x_gpio->gc.to_irq	= tb10x_gpio_to_irq;
tb10x_gpio        178 drivers/gpio/gpio-tb10x.c 		tb10x_gpio->irq		= ret;
tb10x_gpio        182 drivers/gpio/gpio-tb10x.c 				dev_name(dev), tb10x_gpio);
tb10x_gpio        186 drivers/gpio/gpio-tb10x.c 		tb10x_gpio->domain = irq_domain_add_linear(np,
tb10x_gpio        187 drivers/gpio/gpio-tb10x.c 						tb10x_gpio->gc.ngpio,
tb10x_gpio        189 drivers/gpio/gpio-tb10x.c 		if (!tb10x_gpio->domain) {
tb10x_gpio        193 drivers/gpio/gpio-tb10x.c 		ret = irq_alloc_domain_generic_chips(tb10x_gpio->domain,
tb10x_gpio        194 drivers/gpio/gpio-tb10x.c 				tb10x_gpio->gc.ngpio, 1, tb10x_gpio->gc.label,
tb10x_gpio        200 drivers/gpio/gpio-tb10x.c 		gc = tb10x_gpio->domain->gc->gc[0];
tb10x_gpio        201 drivers/gpio/gpio-tb10x.c 		gc->reg_base                         = tb10x_gpio->base;
tb10x_gpio        216 drivers/gpio/gpio-tb10x.c 	struct tb10x_gpio *tb10x_gpio = platform_get_drvdata(pdev);
tb10x_gpio        218 drivers/gpio/gpio-tb10x.c 	if (tb10x_gpio->gc.to_irq) {
tb10x_gpio        219 drivers/gpio/gpio-tb10x.c 		irq_remove_generic_chip(tb10x_gpio->domain->gc->gc[0],
tb10x_gpio        220 drivers/gpio/gpio-tb10x.c 					BIT(tb10x_gpio->gc.ngpio) - 1, 0, 0);
tb10x_gpio        221 drivers/gpio/gpio-tb10x.c 		kfree(tb10x_gpio->domain->gc);
tb10x_gpio        222 drivers/gpio/gpio-tb10x.c 		irq_domain_remove(tb10x_gpio->domain);