On Thu, Jul 21, 2016 at 08:29:50AM +0200, Maxime Ripard wrote: > On Wed, Jul 20, 2016 at 10:29:10AM +0200, Quentin Schulz wrote: > > + irq = regmap_irq_get_virq(sunxi_gpadc_mfd_dev->regmap_irqc, irq); > > + ret = devm_request_any_context_irq(&pdev->dev, irq, > > + sunxi_gpadc_tp_up_irq_handler, 0, > > + "tp_up", info); > > + if (ret < 0) { > > + dev_err(&pdev->dev, > > + "could not request TP_UP_PENDING interrupt: %d\n", ret); > > + goto err; > > + } > > You enable the interrupts... > > > + info->tp_up_irq = irq; > > + disable_irq(irq); > > + > > + ret = input_register_device(input); > > + if (ret) { > > + dev_err(&pdev->dev, "failed to register input device\n"); > > + goto err; > > + } > > ... but your driver isn't registered yet. How does input_report and > input_sync behave in such a case? This is explicitly allowed: " ... * NOTE: input_event() may be safely used right after input device was * allocated with input_allocate_device(), even before it is registered * with input_register_device(), but the event will not reach any of the * input handlers. Such early invocation of input_event() may be used * to 'seed' initial state of a switch or initial position of absolute * axis, etc. */ " Thanks. -- Dmitry -- 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