From: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com> To: Russell King - ARM Linux <linux@arm.linux.org.uk>, Jean-Francois Moine <moinejf@free.fr> Cc: dri-devel@lists.freedesktop.org, Dave Airlie <airlied@gmail.com>, Rob Clark <robdclark@gmail.com>, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH v3 15/24] drm/i2c: tda998x: use irq for connection status and EDID read Date: Fri, 24 Jan 2014 18:29:12 +0100 [thread overview] Message-ID: <52E2A2E8.50806@gmail.com> (raw) In-Reply-To: <20140122222705.GL15937@n2100.arm.linux.org.uk> 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@free.fr> >> --- [...] >> @@ -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. We usually have both interrupt-controller; and gpio-controller; set on DT gpio controllers, so let's stick with irq. And: Thanks for reviewing this again, I am still too busy to keep up with it. Sebastian
WARNING: multiple messages have this Message-ID (diff)
From: sebastian.hesselbarth@gmail.com (Sebastian Hesselbarth) To: linux-arm-kernel@lists.infradead.org Subject: [PATCH v3 15/24] drm/i2c: tda998x: use irq for connection status and EDID read Date: Fri, 24 Jan 2014 18:29:12 +0100 [thread overview] Message-ID: <52E2A2E8.50806@gmail.com> (raw) In-Reply-To: <20140122222705.GL15937@n2100.arm.linux.org.uk> 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@free.fr> >> --- [...] >> @@ -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. We usually have both interrupt-controller; and gpio-controller; set on DT gpio controllers, so let's stick with irq. And: Thanks for reviewing this again, I am still too busy to keep up with it. Sebastian
next prev parent reply other threads:[~2014-01-24 17:29 UTC|newest] Thread overview: 120+ messages / expand[flat|nested] mbox.gz Atom feed top [not found] <cover.1390153344.git.moinejf@free.fr> 2014-01-19 18:58 ` [PATCH v3 01/24] drm/i2c: tda998x: simplify the i2c read/write functions Jean-Francois Moine 2014-01-19 18:58 ` Jean-Francois Moine 2014-01-19 18:58 ` [PATCH v3 02/24] drm/i2c: tda998x: check more I/O errors Jean-Francois Moine 2014-01-19 18:58 ` Jean-Francois Moine 2014-01-19 18:58 ` Jean-Francois Moine 2014-01-22 21:21 ` Russell King - ARM Linux 2014-01-22 21:21 ` Russell King - ARM Linux 2014-01-19 18:58 ` [PATCH v3 04/24] drm/i2c: tda998x: change probe message origin Jean-Francois Moine 2014-01-19 18:58 ` Jean-Francois Moine 2014-01-19 18:58 ` [PATCH v3 03/24] drm/i2c: tda998x: code cleanup Jean-Francois Moine 2014-01-19 18:58 ` Jean-Francois Moine 2014-01-19 18:58 ` Jean-Francois Moine 2014-01-22 21:22 ` Russell King - ARM Linux 2014-01-22 21:22 ` Russell King - ARM Linux 2014-01-19 18:58 ` [PATCH v3 05/24] drm/i2c: tda998x: don't freeze the system at audio startup time Jean-Francois Moine 2014-01-19 18:58 ` Jean-Francois Moine 2014-01-19 18:58 ` Jean-Francois Moine 2014-01-19 18:58 ` [PATCH v3 06/24] drm/i2c: tda998x: force the page register at " Jean-Francois Moine 2014-01-19 18:58 ` Jean-Francois Moine 2014-01-19 18:58 ` Jean-Francois Moine 2014-01-19 18:58 ` [PATCH v3 07/24] drm/i2c: tda998x: set the video mode from the adjusted value Jean-Francois Moine 2014-01-19 18:58 ` Jean-Francois Moine 2014-01-19 18:58 ` Jean-Francois Moine 2014-01-22 21:28 ` Russell King - ARM Linux 2014-01-22 21:28 ` Russell King - ARM Linux 2014-01-23 23:29 ` Darren Etheridge 2014-01-23 23:29 ` Darren Etheridge 2014-01-23 23:29 ` Darren Etheridge 2014-01-28 17:12 ` Jean-Francois Moine 2014-01-28 17:12 ` Jean-Francois Moine 2014-01-28 17:12 ` Jean-Francois Moine 2014-01-28 19:24 ` Darren Etheridge 2014-01-28 19:24 ` Darren Etheridge 2014-01-28 19:24 ` Darren Etheridge 2014-01-19 18:58 ` [PATCH v3 08/24] drm/i2c: tda998x: fix bad value in the AIF Jean-Francois Moine 2014-01-19 18:58 ` Jean-Francois Moine 2014-01-19 18:58 ` Jean-Francois Moine 2014-01-19 18:58 ` [PATCH v3 12/24] drm/i2c: tda998x: check the CEC device creation Jean-Francois Moine 2014-01-19 18:58 ` Jean-Francois Moine 2014-01-19 18:58 ` [PATCH v3 11/24] drm/i2c: tda998x: free the CEC device on encoder_destroy Jean-Francois Moine 2014-01-19 18:58 ` Jean-Francois Moine 2014-01-19 18:58 ` Jean-Francois Moine 2014-01-19 18:58 ` [PATCH v3 09/24] drm/i2c: tda998x: use HDMI constants Jean-Francois Moine 2014-01-19 18:58 ` Jean-Francois Moine 2014-01-19 18:58 ` Jean-Francois Moine 2014-01-19 18:58 ` [PATCH v3 10/24] drm/i2c: tda998x: don't read write-only registers Jean-Francois Moine 2014-01-19 18:58 ` Jean-Francois Moine 2014-01-19 18:58 ` Jean-Francois Moine 2014-01-22 21:35 ` Russell King - ARM Linux 2014-01-22 21:35 ` Russell King - ARM Linux 2014-01-19 18:58 ` [PATCH v3 13/24] drm/i2c: tda998x: fix a NULL pointer dereference Jean-Francois Moine 2014-01-19 18:58 ` Jean-Francois Moine 2014-01-19 18:58 ` Jean-Francois Moine 2014-01-22 21:41 ` Russell King - ARM Linux 2014-01-22 21:41 ` Russell King - ARM Linux 2014-01-19 18:58 ` [PATCH v3 15/24] drm/i2c: tda998x: use irq for connection status and EDID read Jean-Francois Moine 2014-01-19 18:58 ` Jean-Francois Moine 2014-01-19 18:58 ` Jean-Francois Moine 2014-01-22 22:27 ` Russell King - ARM Linux 2014-01-22 22:27 ` Russell King - ARM Linux 2014-01-24 17:29 ` Sebastian Hesselbarth [this message] 2014-01-24 17:29 ` Sebastian Hesselbarth 2014-01-24 17:47 ` Russell King - ARM Linux 2014-01-24 17:47 ` Russell King - ARM Linux 2014-01-19 18:58 ` [PATCH v3 14/24] drm/i2c: tda998x: add DT support Jean-Francois Moine 2014-01-19 18:58 ` Jean-Francois Moine 2014-01-19 18:58 ` Jean-Francois Moine 2014-01-22 21:37 ` Russell King - ARM Linux 2014-01-22 21:37 ` Russell King - ARM Linux 2014-01-19 18:58 ` [PATCH v3 17/24] drm/i2c: tda998x: get a better status of the connection Jean-Francois Moine 2014-01-19 18:58 ` Jean-Francois Moine 2014-01-19 18:58 ` Jean-Francois Moine 2014-01-22 22:51 ` Russell King - ARM Linux 2014-01-22 22:51 ` Russell King - ARM Linux 2014-01-19 18:58 ` [PATCH v3 16/24] drm/i2c: tda998x: add DT documentation Jean-Francois Moine 2014-01-19 18:58 ` Jean-Francois Moine 2014-01-19 18:58 ` Jean-Francois Moine 2014-01-20 4:06 ` Olof Johansson 2014-01-20 4:06 ` Olof Johansson 2014-01-20 4:06 ` Olof Johansson 2014-01-20 9:54 ` Jean-Francois Moine 2014-01-20 9:54 ` Jean-Francois Moine 2014-01-20 9:54 ` Jean-Francois Moine 2014-01-20 9:54 ` Jean-Francois Moine 2014-01-21 18:17 ` Olof Johansson 2014-01-21 18:17 ` Olof Johansson 2014-01-21 18:17 ` Olof Johansson 2014-01-22 22:40 ` Russell King - ARM Linux 2014-01-22 22:40 ` Russell King - ARM Linux 2014-01-22 22:40 ` Russell King - ARM Linux 2014-01-19 18:58 ` [PATCH v3 19/24] drm/i2c: tda998x: use global constants Jean-Francois Moine 2014-01-19 18:58 ` Jean-Francois Moine 2014-01-19 18:58 ` Jean-Francois Moine 2014-01-22 23:29 ` Russell King - ARM Linux 2014-01-22 23:29 ` Russell King - ARM Linux 2014-01-19 18:58 ` [PATCH v3 18/24] drm/i2c: tda998x: fix the ENABLE_SPACE register Jean-Francois Moine 2014-01-19 18:58 ` Jean-Francois Moine 2014-01-19 18:58 ` Jean-Francois Moine 2014-01-22 23:27 ` Russell King - ARM Linux 2014-01-22 23:27 ` Russell King - ARM Linux 2014-01-19 18:58 ` [PATCH v3 21/24] drm/i2c: tda998x: add the active aspect in HDMI AVI frame Jean-Francois Moine 2014-01-19 18:58 ` Jean-Francois Moine 2014-01-19 18:58 ` Jean-Francois Moine 2014-01-22 23:37 ` Russell King - ARM Linux 2014-01-22 23:37 ` Russell King - ARM Linux 2014-01-19 18:58 ` [PATCH v3 20/24] drm/i2c: tda998x: remove the unused variable ca_i2s Jean-Francois Moine 2014-01-19 18:58 ` Jean-Francois Moine 2014-01-22 23:30 ` Russell King - ARM Linux 2014-01-22 23:30 ` Russell King - ARM Linux 2014-01-19 18:58 ` [PATCH v3 23/24] drm/i2c: tda998x: code optimization Jean-Francois Moine 2014-01-19 18:58 ` Jean-Francois Moine 2014-01-19 18:58 ` Jean-Francois Moine 2014-01-19 18:58 ` [PATCH v3 22/24] drm/i2c: tda998x: change the frequence in the audio channel Jean-Francois Moine 2014-01-19 18:58 ` Jean-Francois Moine 2014-01-19 18:58 ` Jean-Francois Moine 2014-01-22 23:52 ` Russell King - ARM Linux 2014-01-22 23:52 ` Russell King - ARM Linux 2014-01-19 18:58 ` [PATCH v3 24/24] drm/i2c: tda998x: adjust the audio clock divider for S/PDIF Jean-Francois Moine 2014-01-19 18:58 ` Jean-Francois Moine 2014-01-19 18:58 ` Jean-Francois Moine
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=52E2A2E8.50806@gmail.com \ --to=sebastian.hesselbarth@gmail.com \ --cc=airlied@gmail.com \ --cc=dri-devel@lists.freedesktop.org \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux@arm.linux.org.uk \ --cc=moinejf@free.fr \ --cc=robdclark@gmail.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.