Lines Matching full:lookup
688 struct acpi_gpio_lookup *lookup = data; in acpi_populate_gpio_lookup() local
689 struct acpi_gpio_params *params = &lookup->params; in acpi_populate_gpio_lookup()
690 struct acpi_gpio_info *info = lookup->info; in acpi_populate_gpio_lookup()
695 if (!lookup->desc) { in acpi_populate_gpio_lookup()
704 if (lookup->n++ != params->crs_entry_index) in acpi_populate_gpio_lookup()
716 lookup->desc = desc; in acpi_populate_gpio_lookup()
742 static int acpi_gpio_resource_lookup(struct acpi_gpio_lookup *lookup) in acpi_gpio_resource_lookup() argument
744 struct acpi_gpio_info *info = lookup->info; in acpi_gpio_resource_lookup()
753 lookup); in acpi_gpio_resource_lookup()
759 if (!lookup->desc) in acpi_gpio_resource_lookup()
766 struct acpi_gpio_lookup *lookup) in acpi_gpio_property_lookup() argument
769 struct acpi_gpio_params *params = &lookup->params; in acpi_gpio_property_lookup()
770 struct acpi_gpio_info *info = lookup->info; in acpi_gpio_property_lookup()
786 * The property was found and resolved, so need to lookup the GPIO based in acpi_gpio_property_lookup()
808 * @lookup: pointer to struct acpi_gpio_lookup to fill in
810 * Function goes through ACPI resources for @adev and based on @lookup.index looks
812 * and returns it. @lookup.index matches GpioIo/GpioInt resources only so if there
822 * The @lookup is filled with GPIO descriptor to use with Linux generic GPIO API.
829 struct acpi_gpio_lookup *lookup) in acpi_get_gpiod_by_index() argument
831 struct acpi_gpio_params *params = &lookup->params; in acpi_get_gpiod_by_index()
832 struct acpi_gpio_info *info = lookup->info; in acpi_get_gpiod_by_index()
838 ret = acpi_gpio_property_lookup(acpi_fwnode_handle(adev), propname, lookup); in acpi_get_gpiod_by_index()
850 return acpi_gpio_resource_lookup(lookup); in acpi_get_gpiod_by_index()
857 * @lookup: pointer to struct acpi_gpio_lookup to fill in
859 * This function uses the property-based GPIO lookup to get to the GPIO
866 * The @lookup is filled with GPIO descriptor to use with Linux generic GPIO API.
870 struct acpi_gpio_lookup *lookup) in acpi_get_gpiod_from_data() argument
880 ret = acpi_gpio_property_lookup(fwnode, propname, lookup); in acpi_get_gpiod_from_data()
884 return acpi_gpio_resource_lookup(lookup); in acpi_get_gpiod_from_data()
906 struct acpi_gpio_lookup lookup; in __acpi_find_gpio() local
911 memset(&lookup, 0, sizeof(lookup)); in __acpi_find_gpio()
912 lookup.params.crs_entry_index = idx; in __acpi_find_gpio()
913 lookup.info = info; in __acpi_find_gpio()
918 ret = acpi_get_gpiod_by_index(adev, propname, &lookup); in __acpi_find_gpio()
920 ret = acpi_get_gpiod_from_data(fwnode, propname, &lookup); in __acpi_find_gpio()
924 desc = lookup.desc; in __acpi_find_gpio()
934 ret = acpi_get_gpiod_by_index(adev, NULL, &lookup); in __acpi_find_gpio()
938 return lookup.desc; in __acpi_find_gpio()
961 dev_dbg(&adev->dev, "refusing GpioInt() entry when doing GPIOD_OUT_* lookup\n"); in acpi_find_gpio()