ACPI provides generic helpers to get GPIO interrupt and IO resources. Use it instead of open coded variant. Signed-off-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx> --- drivers/bluetooth/hci_bcm.c | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/drivers/bluetooth/hci_bcm.c b/drivers/bluetooth/hci_bcm.c index 16f854ac19b6..ed99fcde2523 100644 --- a/drivers/bluetooth/hci_bcm.c +++ b/drivers/bluetooth/hci_bcm.c @@ -911,15 +911,6 @@ static int bcm_resource(struct acpi_resource *ares, void *data) dev->irq_active_low = true; break; - case ACPI_RESOURCE_TYPE_GPIO: - gpio = &ares->data.gpio; - if (gpio->connection_type == ACPI_RESOURCE_GPIO_TYPE_INT) { - dev->gpio_int_idx = dev->gpio_count; - dev->irq_active_low = gpio->polarity == ACPI_ACTIVE_LOW; - } - dev->gpio_count++; - break; - default: break; } @@ -927,6 +918,12 @@ static int bcm_resource(struct acpi_resource *ares, void *data) if (serdev_acpi_get_uart_resource(ares, &uart)) { dev->init_speed = uart->default_baud_rate; dev->oper_speed = 4000000; + } else if (acpi_gpio_get_irq_resource(ares, &gpio)) { + dev->gpio_int_idx = dev->gpio_count; + dev->irq_active_low = gpio->polarity == ACPI_ACTIVE_LOW; + dev->gpio_count++; + } else if (acpi_gpio_get_io_resource(ares, &gpio)) { + dev->gpio_count++; } return 0; -- 2.30.2