Lines Matching full:lookup

732 	struct acpi_gpio_lookup *lookup = data;  in acpi_populate_gpio_lookup()  local
737 if (!lookup->desc) { in acpi_populate_gpio_lookup()
743 if (lookup->info.quirks & ACPI_GPIO_QUIRK_ONLY_GPIOIO && gpioint) in acpi_populate_gpio_lookup()
744 lookup->index++; in acpi_populate_gpio_lookup()
746 if (lookup->n++ != lookup->index) in acpi_populate_gpio_lookup()
749 pin_index = lookup->pin_index; in acpi_populate_gpio_lookup()
753 if (lookup->info.quirks & ACPI_GPIO_QUIRK_ABSOLUTE_NUMBER) in acpi_populate_gpio_lookup()
758 lookup->desc = desc; in acpi_populate_gpio_lookup()
759 lookup->info.pin_config = agpio->pin_config; in acpi_populate_gpio_lookup()
760 lookup->info.debounce = agpio->debounce_timeout; in acpi_populate_gpio_lookup()
761 lookup->info.gpioint = gpioint; in acpi_populate_gpio_lookup()
762 lookup->info.wake_capable = acpi_gpio_irq_is_wake(&lookup->info.adev->dev, agpio); in acpi_populate_gpio_lookup()
771 if (lookup->info.gpioint) { in acpi_populate_gpio_lookup()
772 lookup->info.polarity = agpio->polarity; in acpi_populate_gpio_lookup()
773 lookup->info.triggering = agpio->triggering; in acpi_populate_gpio_lookup()
775 lookup->info.polarity = lookup->active_low; in acpi_populate_gpio_lookup()
778 lookup->info.flags = acpi_gpio_to_gpiod_flags(agpio, lookup->info.polarity); in acpi_populate_gpio_lookup()
784 static int acpi_gpio_resource_lookup(struct acpi_gpio_lookup *lookup, in acpi_gpio_resource_lookup() argument
787 struct acpi_device *adev = lookup->info.adev; in acpi_gpio_resource_lookup()
795 lookup); in acpi_gpio_resource_lookup()
801 if (!lookup->desc) in acpi_gpio_resource_lookup()
805 *info = lookup->info; in acpi_gpio_resource_lookup()
811 struct acpi_gpio_lookup *lookup) in acpi_gpio_property_lookup() argument
828 * The property was found and resolved, so need to lookup the GPIO based in acpi_gpio_property_lookup()
836 lookup->index = args.args[0]; in acpi_gpio_property_lookup()
837 lookup->pin_index = args.args[1]; in acpi_gpio_property_lookup()
838 lookup->active_low = !!args.args[2]; in acpi_gpio_property_lookup()
840 lookup->info.adev = to_acpi_device_node(args.fwnode); in acpi_gpio_property_lookup()
841 lookup->info.quirks = quirks; in acpi_gpio_property_lookup()
873 struct acpi_gpio_lookup lookup; in acpi_get_gpiod_by_index() local
879 memset(&lookup, 0, sizeof(lookup)); in acpi_get_gpiod_by_index()
880 lookup.index = index; in acpi_get_gpiod_by_index()
886 propname, index, &lookup); in acpi_get_gpiod_by_index()
891 dev_name(&lookup.info.adev->dev), lookup.index, in acpi_get_gpiod_by_index()
892 lookup.pin_index, lookup.active_low); in acpi_get_gpiod_by_index()
895 lookup.info.adev = adev; in acpi_get_gpiod_by_index()
898 ret = acpi_gpio_resource_lookup(&lookup, info); in acpi_get_gpiod_by_index()
899 return ret ? ERR_PTR(ret) : lookup.desc; in acpi_get_gpiod_by_index()
909 * This function uses the property-based GPIO lookup to get to the GPIO
921 struct acpi_gpio_lookup lookup; in acpi_get_gpiod_from_data() local
930 memset(&lookup, 0, sizeof(lookup)); in acpi_get_gpiod_from_data()
931 lookup.index = index; in acpi_get_gpiod_from_data()
933 ret = acpi_gpio_property_lookup(fwnode, propname, index, &lookup); in acpi_get_gpiod_from_data()
937 ret = acpi_gpio_resource_lookup(&lookup, info); in acpi_get_gpiod_from_data()
938 return ret ? ERR_PTR(ret) : lookup.desc; in acpi_get_gpiod_from_data()
997 dev_dbg(&adev->dev, "refusing GpioInt() entry when doing GPIOD_OUT_* lookup\n"); in acpi_find_gpio()