Lines Matching refs:acpi_gpio
171 static void acpi_gpiochip_request_irq(struct acpi_gpio_chip *acpi_gpio, in acpi_gpiochip_request_irq() argument
179 dev_err(acpi_gpio->chip->parent, in acpi_gpiochip_request_irq()
200 static void acpi_gpiochip_request_irqs(struct acpi_gpio_chip *acpi_gpio) in acpi_gpiochip_request_irqs() argument
204 list_for_each_entry(event, &acpi_gpio->events, node) in acpi_gpiochip_request_irqs()
205 acpi_gpiochip_request_irq(acpi_gpio, event); in acpi_gpiochip_request_irqs()
263 struct acpi_gpio_chip *acpi_gpio = context; in acpi_gpiochip_alloc_event() local
264 struct gpio_chip *chip = acpi_gpio->chip; in acpi_gpiochip_alloc_event()
350 list_add_tail(&event->node, &acpi_gpio->events); in acpi_gpiochip_alloc_event()
374 struct acpi_gpio_chip *acpi_gpio; in acpi_gpiochip_request_interrupts() local
386 status = acpi_get_data(handle, acpi_gpio_chip_dh, (void **)&acpi_gpio); in acpi_gpiochip_request_interrupts()
391 acpi_gpiochip_alloc_event, acpi_gpio); in acpi_gpiochip_request_interrupts()
396 list_add(&acpi_gpio->deferred_req_irqs_list_entry, in acpi_gpiochip_request_interrupts()
403 acpi_gpiochip_request_irqs(acpi_gpio); in acpi_gpiochip_request_interrupts()
416 struct acpi_gpio_chip *acpi_gpio; in acpi_gpiochip_free_interrupts() local
428 status = acpi_get_data(handle, acpi_gpio_chip_dh, (void **)&acpi_gpio); in acpi_gpiochip_free_interrupts()
433 if (!list_empty(&acpi_gpio->deferred_req_irqs_list_entry)) in acpi_gpiochip_free_interrupts()
434 list_del_init(&acpi_gpio->deferred_req_irqs_list_entry); in acpi_gpiochip_free_interrupts()
437 list_for_each_entry_safe_reverse(event, ep, &acpi_gpio->events, node) { in acpi_gpiochip_free_interrupts()
1195 struct acpi_gpio_chip *acpi_gpio; in acpi_gpiochip_add() local
1206 acpi_gpio = kzalloc(sizeof(*acpi_gpio), GFP_KERNEL); in acpi_gpiochip_add()
1207 if (!acpi_gpio) { in acpi_gpiochip_add()
1213 acpi_gpio->chip = chip; in acpi_gpiochip_add()
1214 INIT_LIST_HEAD(&acpi_gpio->events); in acpi_gpiochip_add()
1215 INIT_LIST_HEAD(&acpi_gpio->deferred_req_irqs_list_entry); in acpi_gpiochip_add()
1217 status = acpi_attach_data(handle, acpi_gpio_chip_dh, acpi_gpio); in acpi_gpiochip_add()
1220 kfree(acpi_gpio); in acpi_gpiochip_add()
1224 acpi_gpiochip_request_regions(acpi_gpio); in acpi_gpiochip_add()
1225 acpi_gpiochip_scan_gpios(acpi_gpio); in acpi_gpiochip_add()
1231 struct acpi_gpio_chip *acpi_gpio; in acpi_gpiochip_remove() local
1242 status = acpi_get_data(handle, acpi_gpio_chip_dh, (void **)&acpi_gpio); in acpi_gpiochip_remove()
1248 acpi_gpiochip_free_regions(acpi_gpio); in acpi_gpiochip_remove()
1251 kfree(acpi_gpio); in acpi_gpiochip_remove()
1355 struct acpi_gpio_chip *acpi_gpio, *tmp; in acpi_gpio_handle_deferred_request_irqs() local
1358 list_for_each_entry_safe(acpi_gpio, tmp, in acpi_gpio_handle_deferred_request_irqs()
1361 acpi_gpiochip_request_irqs(acpi_gpio); in acpi_gpio_handle_deferred_request_irqs()