On Fri, 2017-03-10 at 13:33 +0200, Andy Shevchenko wrote: > On Thu, 2017-03-09 at 19:48 +0100, Hans de Goede wrote: > > Hi, > > > > On 09-03-17 15:45, Hans de Goede wrote: > > > Hi, > > > > > > On 09-03-17 15:03, Andy Shevchenko wrote: > > > > On Thu, 2017-03-09 at 14:57 +0100, Hans de Goede wrote: > > Ok, so there is one problem with the extcon-intel-int3496.c > > together with your gpio patches: > > > > [ 2382.484415] gpio gpiochip1: (INT33FF:01): gpiochip_lock_as_irq: > > tried to flag a GPIO set as output for IRQ > > [ 2382.484425] gpio gpiochip1: (INT33FF:01): unable to lock HW IRQ 3 > > for IRQ > > [ 2382.484429] genirq: Failed to request resources for INT3496:00 > > (irq > > 174) on irqchip chv-gpio > > [ 2382.484518] intel-int3496 INT3496:00: can't request IRQ for USB > > ID > > GPIO: -22 > > [ 2382.500359] intel-int3496: probe of INT3496:00 failed with error > > -22 > > By the way did not you see a warning from gpiolib-acpi.c that flags > are > overridden by firmware? Yeah, it's dev_dbg(). Perhaps needs to be changed to dev_warn()? > > --- a/drivers/extcon/extcon-intel-int3496.c > > +++ b/drivers/extcon/extcon-intel-int3496.c Just a reminder that we need --- a/drivers/extcon/extcon-intel-int3496.c +++ b/drivers/extcon/extcon-intel-int3496.c @@ -107,9 +107,7 @@ static int int3496_probe(struct platform_device *pdev) data->dev = dev; INIT_DELAYED_WORK(&data->work, int3496_do_usb_id); - data->gpio_usb_id = devm_gpiod_get_index(dev, "id", - INT3496_GPIO_USB_ID, - GPIOD_IN); + data->gpio_usb_id = devm_gpiod_get(dev, "id", GPIOD_IN); if (IS_ERR(data->gpio_usb_id)) { ret = PTR_ERR(data->gpio_usb_id); dev_err(dev, "can't request USB ID GPIO: %d\n", ret); @@ -122,15 +120,11 @@ static int int3496_probe(struct platform_device *pdev) return data->usb_id_irq; } - data->gpio_vbus_en = devm_gpiod_get_index(dev, "vbus", - INT3496_GPIO_VBUS_EN, - GPIOD_ASIS); + data->gpio_vbus_en = devm_gpiod_get(dev, "vbus", GPIOD_ASIS); if (IS_ERR(data->gpio_vbus_en)) dev_info(dev, "can't request VBUS EN GPIO\n"); - data->gpio_usb_mux = devm_gpiod_get_index(dev, "mux", - INT3496_GPIO_USB_MUX, - GPIOD_ASIS); + data->gpio_usb_mux = devm_gpiod_get(dev, "mux", GPIOD_ASIS); if (IS_ERR(data->gpio_usb_mux)) dev_info(dev, "can't request USB MUX GPIO\n"); -- Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx> Intel Finland Oy -- To unsubscribe from this list: send the line "unsubscribe linux-input" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html