From: Russell King - ARM Linux <linux@armlinux.org.uk>
To: Daniel Vetter <daniel@ffwll.ch>
Cc: Brian Starkey <brian.starkey@arm.com>,
dri-devel <dri-devel@lists.freedesktop.org>,
Linux Kernel Mailing List <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH] drm: tda998x: mali-dp: hdlcd: refactor connector registration
Date: Mon, 31 Oct 2016 09:00:08 +0000 [thread overview]
Message-ID: <20161031090008.GV1041@n2100.armlinux.org.uk> (raw)
In-Reply-To: <20161025101919.35c53zoyf435urp3@phenom.ffwll.local>
On Tue, Oct 25, 2016 at 12:19:19PM +0200, Daniel Vetter wrote:
> On Tue, Oct 25, 2016 at 10:52:33AM +0100, Brian Starkey wrote:
> > Hi Daniel,
> >
> > On Mon, Oct 24, 2016 at 10:24:42PM +0200, Daniel Vetter wrote:
> > > On Mon, Oct 24, 2016 at 4:52 PM, Brian Starkey <brian.starkey@arm.com> wrote:
> > > > >
> > > > > > diff --git a/drivers/gpu/drm/i2c/tda998x_drv.c
> > > > > > b/drivers/gpu/drm/i2c/tda998x_drv.c
> > > > > > index f4315bc..6e6fca2 100644
> > > > > > --- a/drivers/gpu/drm/i2c/tda998x_drv.c
> > > > > > +++ b/drivers/gpu/drm/i2c/tda998x_drv.c
> > > > > > @@ -1369,7 +1369,6 @@ const struct drm_connector_helper_funcs
> > > > > > tda998x_connector_helper_funcs = {
> > > > > >
> > > > > > static void tda998x_connector_destroy(struct drm_connector *connector)
> > > > > > {
> > > > > > - drm_connector_unregister(connector);
> > > > > > drm_connector_cleanup(connector);
> > > > > > }
> > > > > >
> > > > > > @@ -1441,16 +1440,10 @@ static int tda998x_bind(struct device *dev,
> > > > > > struct device *master, void *data)
> > > > > > if (ret)
> > > > > > goto err_connector;
> > > > > >
> > > > > > - ret = drm_connector_register(&priv->connector);
> > > > > > - if (ret)
> > > > > > - goto err_sysfs;
> > > > > > -
> > > > >
> > > > >
> > > > > Instead of smashing all these patches into one, what about checking here
> > > > > for midlayer driver set with:
> > > > >
> > > > > /* register here for drivers still using midlayer load/unload */
> > > > > if (dev->driver->load)
> > > > > drm_connector_register(connector),
> > > > >
> > > > > Similar in other places. That way we wouldn't need to switch the world in
> > > > > one patch.
> > > >
> > > >
> > > > I don't think that helps. If we do that in isolation (first), then
> > > > mali-dp and hdlcd won't get their connectors registered because their
> > > > bind order is:
> > > >
> > > > drm_dev_register();
> > > > component_bind_all();
> > > >
> > > > If we change the mali-dp/hdlcd bind order first, then tda998x will
> > > > explode on drm_connector_register() until it's patched to remove that.
> > > >
> > > > As I mentioned in my mail to Russell, the only way I can see to avoid
> > > > patching all three drivers in one go is:
> > > > 1) Add (probably open-coded) drm_connector_register_all() to the end
> > > > of bind in hdlcd and mali-dp
> > > > 2) Patch tda998x to remove drm_connector_register()
> > > > 3) Reorder hdlcd/mali-dp bind and remove the connector registration
> > > > added in 1)
> > > >
> > > > We can do that, but it's extra churn for the same result, and none of
> > > > the 5 patches will really make sense in isolation anyway.
> > >
> > > I thought there's also armada to take care of, which this patch would
> > > break? Maybe even another driver, so the hack would still be useful
> > > for those other drivers.
> >
> > OK it seems like this situation has got very confused. In short, this
> > patch does not break armada. Russell previously tested the tda998x
> > patch against armada and reported no issues.
> > Drivers with a ->load() callback don't need to register the connector
> > anymore, because drm_dev_register() does it for them.
> >
> > As far as I know, this patch touching these three drivers is
> > sufficient to allow all current users of tda998x to continue using it,
> > whilst also allowing armada and tilcdc to be de-midlayered.
>
> Ah, makes sense. Should I apply this to drm-misc so it's in a shared tree?
I need the patch against v4.8. I'm happy to pick it up and add it
to my drm-tda998x-devel branch, which you can then merge into
drm-misc if you wish.
--
RMK's Patch system: http://www.armlinux.org.uk/developer/patches/
FTTC broadband for 0.8mile line: currently at 9.6Mbps down 400kbps up
according to speedtest.net.
next prev parent reply other threads:[~2016-10-31 9:00 UTC|newest]
Thread overview: 55+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-10-18 21:33 [PATCH 0/4] drm/tilcdc: Cleanup tilcdc (&tda998x) init sequence Jyri Sarha
2016-10-18 21:33 ` [PATCH 1/4] drm/tilcdc: Remove obsolete drm_connector_register() calls Jyri Sarha
2016-10-19 7:54 ` Laurent Pinchart
2016-10-18 21:33 ` [PATCH 2/4] drm/i2c: tda998x: Remove obsolete drm_connector_register() call Jyri Sarha
2016-10-19 7:54 ` Laurent Pinchart
2016-10-19 8:16 ` Russell King - ARM Linux
2016-10-19 8:52 ` Laurent Pinchart
2016-10-19 9:11 ` Russell King - ARM Linux
2016-10-19 9:19 ` Laurent Pinchart
2016-10-19 9:35 ` Russell King - ARM Linux
2016-10-20 8:20 ` Laurent Pinchart
2016-10-20 9:08 ` Archit Taneja
2016-10-20 9:15 ` Russell King - ARM Linux
2016-10-20 11:26 ` Archit Taneja
2016-10-21 17:28 ` Jean-Francois Moine
2016-10-22 10:36 ` Laurent Pinchart
2016-10-21 18:09 ` Russell King - ARM Linux
2016-10-24 5:09 ` Archit Taneja
2016-10-30 22:46 ` Russell King - ARM Linux
2016-10-21 18:43 ` Russell King - ARM Linux
2016-10-24 5:08 ` Archit Taneja
2016-10-21 19:04 ` Jean-Francois Moine
2016-10-22 9:55 ` Russell King - ARM Linux
2016-10-24 6:28 ` Archit Taneja
2016-10-24 6:53 ` Daniel Vetter
2016-10-31 0:09 ` Russell King - ARM Linux
2016-11-08 9:21 ` Daniel Vetter
2016-10-20 9:11 ` Russell King - ARM Linux
2016-10-19 9:46 ` Brian Starkey
2016-10-22 13:40 ` Russell King - ARM Linux
2016-10-24 14:23 ` Brian Starkey
2016-10-24 14:27 ` [PATCH] drm: tda998x: mali-dp: hdlcd: refactor connector registration Brian Starkey
2016-10-24 14:27 ` Brian Starkey
2016-10-24 14:36 ` Daniel Vetter
2016-10-24 14:52 ` Brian Starkey
2016-10-24 20:24 ` Daniel Vetter
2016-10-24 20:24 ` Daniel Vetter
2016-10-25 9:52 ` Brian Starkey
2016-10-25 10:19 ` Daniel Vetter
2016-10-25 10:19 ` Daniel Vetter
2016-10-25 10:40 ` Brian Starkey
2016-10-25 10:40 ` Brian Starkey
2016-10-31 9:00 ` Russell King - ARM Linux [this message]
2016-10-31 10:16 ` Russell King - ARM Linux
2016-10-31 8:58 ` Russell King - ARM Linux
2016-11-08 9:25 ` Daniel Vetter
2016-11-08 10:59 ` Russell King - ARM Linux
2016-11-08 11:27 ` Daniel Vetter
2016-11-08 11:27 ` Daniel Vetter
2016-11-15 9:46 ` [GIT PULL] " Russell King - ARM Linux
2016-11-16 21:31 ` Russell King - ARM Linux
2016-10-18 21:33 ` [PATCH 3/4] drm/tilcdc: Stop using struct drm_driver load() callback Jyri Sarha
2016-10-19 7:28 ` Daniel Vetter
2016-10-18 21:33 ` [PATCH 4/4] drm/tilcdc: Use unload to handle initialization failures Jyri Sarha
2016-10-19 7:50 ` Laurent Pinchart
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=20161031090008.GV1041@n2100.armlinux.org.uk \
--to=linux@armlinux.org.uk \
--cc=brian.starkey@arm.com \
--cc=daniel@ffwll.ch \
--cc=dri-devel@lists.freedesktop.org \
--cc=linux-kernel@vger.kernel.org \
/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: link
Be 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.