Hi, On 8/3/21 9:29 PM, Andy Shevchenko wrote: > 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> As explained in my reply to 3/5 this makes the code a lot harder to read with little to no gain, so NACK from me for this one. Regards, Hans > --- > 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; >