On Tue, Jun 11, 2013 at 11:25 PM, Grant Likely <grant.likely@xxxxxxxxxxxx> wrote: > On Fri, 26 Apr 2013 16:31:24 -0500, Jon Hunter <jon-hunter@xxxxxx> wrote: >> >> On 04/26/2013 02:31 AM, Linus Walleij wrote: >> > On Wed, Apr 17, 2013 at 2:41 AM, Javier Martinez Canillas >> > <martinez.javier@xxxxxxxxx> wrote: >> > >> > So: >> > >> >> +static int omap_gpio_irq_domain_xlate(struct irq_domain *d, >> >> + struct device_node *ctrlr, >> >> + const u32 *intspec, unsigned int intsize, >> >> + irq_hw_number_t *out_hwirq, >> >> + unsigned int *out_type) >> >> +{ >> >> + int ret; >> >> + struct gpio_bank *bank = d->host_data; >> >> + int gpio = bank->chip.base + intspec[0]; >> >> + >> >> + if (WARN_ON(intsize < 2)) >> >> + return -EINVAL; >> >> + >> >> + ret = gpio_request_one(gpio, GPIOF_IN, ctrlr->full_name); >> >> + if (ret) >> >> + return ret; >> > >> > So how to figure out if a device is already requesting this GPIO >> > on some orthogonal axis? >> >> I really don't think that is necessary. Hopefully, my other email [1] >> elaborates on why. Let me know if this makes sense. > > I would agree here. If the irq specified happens to be a GPIO; then the > onus is on the GPIO/IRQ controller driver to make sure that GPIO is > actually set up to work as an IRQ. Hm, re-reading this I guess the gpio_request_one() will block others from using the pin for anything else. Isn't that the answer to my actual question...? It seems more like I was asking a pretty stupid question actually. Yours, Linus Walleij -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html