On Fri, Jan 24, 2014 at 06:29:12PM +0100, Sebastian Hesselbarth wrote: > On 01/22/14 23:27, Russell King - ARM Linux wrote: >> On Sun, Jan 19, 2014 at 07:58:43PM +0100, Jean-Francois Moine wrote: >>> This patch adds the optional treatment of the tda998x IRQ. >>> >>> The interrupt function is used to know the display connection status >>> without polling and to speedup reading the EDID. >>> >>> The interrupt number may be defined either in the DT or at encoder set >>> config time for non-DT boards. >>> >>> Signed-off-by: Jean-Francois Moine <moinejf@xxxxxxx> >>> --- > [...] >>> @@ -720,6 +787,10 @@ tda998x_encoder_set_config(struct drm_encoder *encoder, void *params) >>> priv->audio_port = p->audio_cfg; >>> priv->audio_format = p->audio_format; >>> } >>> + >>> + priv->irq = p->irq; >>> + if (p->irq) >>> + tda_irq_init(priv); >> >> If we're going to do it this way, this should probably release the IRQ if >> there was one before re-claiming it, just in case this function gets called >> more than once by some driver using it. >> >> The alternative is, as I said before, to use the infrastructure which is >> already there, namely setting the interrupt via struct i2c_client's >> irq member. Yes, that doesn't satisfy Sebastian's comment about using >> a GPIO, but there's no sign of GPIO usage in here at the moment anyway. >> So we might as well use what's already provided. > > Russell, > > I am fine with using an irq instead of gpio here. I remember you telling > me on a similar patch, that from the gpio you can derive the irq but > not the other way round. Anyway, I also remember reading discussions > about DT gpios vs interrupts, and IIRC the outcome was that passing > interrupts is fine, too. Sebastian, You can derive the irq from a gpio (using gpio_to_irq()), but you can't derive a gpio from an irq. It's annoying that i2c_client and the i2c board data do not allow a GPIO to be specified, but only an IRQ, but that's a separate problem which when solved will also get solved here. So, I'm not too worried about the "should this be an IRQ or should it be a GPIO" question here. For us on ARM, it's less of a problem because we can just deal with GPIOs or IRQs at the DT level, and so we don't care what's in i2c_client. -- FTTC broadband for 0.8mile line: 5.8Mbps down 500kbps up. Estimation in database were 13.1 to 19Mbit for a good line, about 7.5+ for a bad. Estimate before purchase was "up to 13.2Mbit". _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/dri-devel