A simple refactoring of the GPIO ACPI library parts to get an impressive ~8% code shrink on x86_64 and ~2% on x86_32. Also reduces a C code a bit. add/remove: 0/2 grow/shrink: 0/5 up/down: 0/-1221 (-1221) Function old new delta acpi_gpio_property_lookup 425 414 -11 acpi_find_gpio.__UNIQUE_ID_ddebug478 56 - -56 acpi_dev_gpio_irq_wake_get_by.__UNIQUE_ID_ddebug480 56 - -56 acpi_find_gpio 354 216 -138 acpi_get_gpiod_by_index 462 307 -155 __acpi_find_gpio 877 638 -239 acpi_dev_gpio_irq_wake_get_by 695 129 -566 Total: Before=15375, After=14154, chg -7.94% In v2: - renamed par to params (Mika, Bart) Andy Shevchenko (6): gpiolib: acpi: Improve struct acpi_gpio_info memory footprint gpiolib: acpi: Remove index parameter from acpi_gpio_property_lookup() gpiolib: acpi: Reduce memory footprint for struct acpi_gpio_params gpiolib: acpi: Rename par to params for better readability gpiolib: acpi: Reuse struct acpi_gpio_params in struct acpi_gpio_lookup gpiolib: acpi: Deduplicate some code in __acpi_find_gpio() drivers/gpio/gpiolib-acpi.c | 146 +++++++++++++++++----------------- include/linux/gpio/consumer.h | 2 +- 2 files changed, 72 insertions(+), 76 deletions(-) -- 2.47.2