From: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
To: Tomi Valkeinen <tomi.valkeinen@ti.com>
Cc: dri-devel@lists.freedesktop.org
Subject: Re: [PATCH v2 13/28] drm: omapdrm: dss: Initialize DSS internal features at probe time
Date: Wed, 10 May 2017 00:49:41 +0300 [thread overview]
Message-ID: <12352807.1BbhCterIB@avalon> (raw)
In-Reply-To: <b7ce94fa-e8b0-cbd9-0455-003191424b55@ti.com>
Hi Tomi,
On Tuesday 09 May 2017 12:48:57 Tomi Valkeinen wrote:
> On 08/05/17 14:32, Laurent Pinchart wrote:
> > The DSS internal features are derived from the platform device
> > compatible string which is available at probe time. Don't delay
> > initialization until bind time. This prepares for the merge of the two
> > DSS features structures that will be needed before the DSS is bound.
> >
> > Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
> > ---
> >
> > drivers/gpu/drm/omapdrm/dss/dss.c | 26 +++++++++++++-------------
> > 1 file changed, 13 insertions(+), 13 deletions(-)
> >
> > diff --git a/drivers/gpu/drm/omapdrm/dss/dss.c
> > b/drivers/gpu/drm/omapdrm/dss/dss.c index 7546ba8ab955..4fdb77dd90b8
> > 100644
> > --- a/drivers/gpu/drm/omapdrm/dss/dss.c
> > +++ b/drivers/gpu/drm/omapdrm/dss/dss.c
> > @@ -1183,23 +1183,10 @@ static const struct soc_device_attribute
> > dss_soc_devices[] = {>
> > static int dss_bind(struct device *dev)
> > {
> >
> > struct platform_device *pdev = to_platform_device(dev);
> >
> > - const struct soc_device_attribute *soc;
> >
> > struct resource *dss_mem;
> > u32 rev;
> > int r;
> >
> > - dss.pdev = pdev;
> > -
> > - /*
> > - * The various OMAP3-based SoCs can be told apart from the compatible
> > - * string, use SoC device matching.
> > - */
> > - soc = soc_device_match(dss_soc_devices);
> > - if (soc)
> > - dss.feat = soc->data;
> > - else
> > - dss.feat = of_match_device(dss_of_match, &pdev->dev)->data;
> > -
> >
> > dss_mem = platform_get_resource(dss.pdev, IORESOURCE_MEM, 0);
> > dss.base = devm_ioremap_resource(&pdev->dev, dss_mem);
> > if (!dss.base)
> >
> > @@ -1331,9 +1318,22 @@ static int dss_add_child_component(struct device
> > *dev, void *data)>
> > static int dss_probe(struct platform_device *pdev)
> > {
> >
> > + const struct soc_device_attribute *soc;
> >
> > struct component_match *match = NULL;
> > int r;
> >
> > + dss.pdev = pdev;
> > +
> > + /*
> > + * The various OMAP3-based SoCs can be told apart from the compatible
> > + * string, use SoC device matching.
> > + */
> > + soc = soc_device_match(dss_soc_devices);
> > + if (soc)
> > + dss.feat = soc->data;
> > + else
> > + dss.feat = of_match_device(dss_of_match, &pdev->dev)->data;
> > +
>
> This has the problem that we should remove the static 'dss' variable,
> and allocate memory for each device. We can have more than one DSS in
> the future.
Sure, and that's on my to-do list, but I didn't want to make the patch series
bigger than it is already.
> Also, I haven't looked at the following patches yet, but dss_features
> was a failed attempt to manage the dss features. Since then, we've
> slowly been moving the bits and pieces from dss_features to each
> individual driver.
>
> So if this is needed for dss_features, we should instead move everything
> from dss_features and remove that altogether.
I agree with you, but again, I've tried to keep the existing architecture
here, we can certainly rework it as a next step.
--
Regards,
Laurent Pinchart
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel
next prev parent reply other threads:[~2017-05-09 21:49 UTC|newest]
Thread overview: 89+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-05-08 11:32 [PATCH v2 00/29] Remove the omapdrm and omapdss devices from platform code Laurent Pinchart
2017-05-08 11:32 ` [PATCH v2 01/28] drm: omapdrm: Remove duplicate error messages when mapping memory Laurent Pinchart
2017-05-08 12:52 ` Tomi Valkeinen
2017-05-08 13:55 ` Laurent Pinchart
2017-05-09 8:37 ` Tomi Valkeinen
2017-05-08 11:32 ` [PATCH v2 02/28] drm: omapdrm: Drop support for non-DT devices Laurent Pinchart
2017-05-09 8:40 ` Tomi Valkeinen
2017-05-09 8:46 ` Laurent Pinchart
2017-05-08 11:32 ` [PATCH v2 03/28] drm: omapdrm: Remove unused dss_get_core_pdev() function Laurent Pinchart
2017-05-09 8:57 ` Tomi Valkeinen
2017-05-08 11:32 ` [PATCH v2 04/28] drm: omapdrm: Remove unused default display name support Laurent Pinchart
2017-05-08 12:30 ` Bartlomiej Zolnierkiewicz
2017-05-09 8:58 ` Tomi Valkeinen
2017-05-08 11:32 ` [PATCH v2 05/28] drm: omapdrm: Infer the OMAP version from the SoC family Laurent Pinchart
2017-05-09 9:02 ` Tomi Valkeinen
2017-05-08 11:32 ` [PATCH v2 06/28] drm: omapdrm: dispc: Select features based on compatible string Laurent Pinchart
2017-05-09 9:04 ` Tomi Valkeinen
2017-05-08 11:32 ` [PATCH v2 07/28] drm: omapdrm: dpi: Remove platform driver Laurent Pinchart
2017-05-09 9:06 ` Tomi Valkeinen
2017-05-09 21:38 ` Laurent Pinchart
2017-05-08 11:32 ` [PATCH v2 08/28] drm: omapdrm: dpi: Replace OMAP SoC model checks with DSS device type Laurent Pinchart
2017-05-09 9:23 ` Tomi Valkeinen
2017-05-09 22:24 ` Laurent Pinchart
2017-05-09 22:26 ` Laurent Pinchart
2017-05-08 11:32 ` [PATCH v2 09/28] drm: omapdrm: dsi: Store DSI type and PLL hardware data in OF data Laurent Pinchart
2017-05-09 9:31 ` Tomi Valkeinen
2017-05-08 11:32 ` [PATCH v2 10/28] drm: omapdrm: dsi: Handle pin muxing internally Laurent Pinchart
2017-05-09 9:37 ` Tomi Valkeinen
2017-05-09 21:45 ` Laurent Pinchart
2017-05-08 11:32 ` [PATCH v2 11/28] drm: omapdrm: dss: Select features based on compatible string Laurent Pinchart
2017-05-09 9:41 ` Tomi Valkeinen
2017-05-09 21:47 ` Laurent Pinchart
2017-05-10 6:52 ` Tomi Valkeinen
2017-05-08 11:32 ` [PATCH v2 12/28] drm: omapdrm: dss: Split operations out of dss_features structure Laurent Pinchart
2017-05-08 11:32 ` [PATCH v2 13/28] drm: omapdrm: dss: Initialize DSS internal features at probe time Laurent Pinchart
2017-05-09 9:48 ` Tomi Valkeinen
2017-05-09 21:49 ` Laurent Pinchart [this message]
2017-05-08 11:32 ` [PATCH v2 14/28] drm: omapdrm: hdmi: Store PHY features in PHY data structure Laurent Pinchart
2017-05-09 11:14 ` Tomi Valkeinen
2017-05-08 11:32 ` [PATCH v2 15/28] drm: omapdrm: hdmi: Store PHY features in HDMI transmitter drivers Laurent Pinchart
2017-05-09 11:27 ` Tomi Valkeinen
2017-05-08 11:32 ` [PATCH v2 16/28] drm: omapdrm: hdmi: Store PLL hardware data " Laurent Pinchart
2017-05-08 11:32 ` [PATCH v2 17/28] drm: omapdrm: hdmi: Replace OMAP SoC model check with HDMI xmit version Laurent Pinchart
2017-05-08 11:32 ` [PATCH v2 18/28] drm: omapdrm: hdmi: Pass HDMI core version as integer to HDMI audio Laurent Pinchart
2017-05-14 9:28 ` Mark Brown
2017-05-08 11:32 ` [PATCH v2 19/28] drm: omapdrm: sdi: Remove platform driver Laurent Pinchart
2017-05-09 11:29 ` Tomi Valkeinen
2017-05-08 11:32 ` [PATCH v2 20/28] drm: omapdrm: Don't forward set_min_bus_tput() to no-op platform code Laurent Pinchart
2017-05-09 11:30 ` Tomi Valkeinen
2017-05-08 11:32 ` [PATCH v2 21/28] drm: omapdrm: Move all debugfs code from core to dss Laurent Pinchart
2017-05-09 11:35 ` Tomi Valkeinen
2017-05-08 11:32 ` [PATCH v2 22/28] drm: omapdrm: Move shutdown() handler " Laurent Pinchart
2017-05-09 11:38 ` Tomi Valkeinen
2017-05-09 21:42 ` Laurent Pinchart
2017-05-08 11:32 ` [PATCH v2 23/28] drm: omapdrm: Merge the dss_features and omap_dss_features structures Laurent Pinchart
2017-05-09 12:02 ` Tomi Valkeinen
2017-05-09 22:09 ` Laurent Pinchart
2017-05-10 7:43 ` Tomi Valkeinen
2017-05-13 11:12 ` Laurent Pinchart
2017-05-15 6:32 ` Tomi Valkeinen
2017-08-04 14:03 ` Laurent Pinchart
2017-05-08 11:32 ` [PATCH v2 24/28] drm: omapdrm: Register omapdrm platform device in omapdss driver Laurent Pinchart
2017-05-09 11:48 ` Tomi Valkeinen
2017-05-08 11:33 ` [PATCH v2 25/28] drm: omapdrm: Remove the " Laurent Pinchart
2017-05-09 11:49 ` Tomi Valkeinen
2017-05-08 11:33 ` [PATCH v2 26/28] ARM: OMAP2+: Remove unused omapdrm platform device Laurent Pinchart
2017-05-08 17:09 ` Tony Lindgren
2017-05-09 8:49 ` Laurent Pinchart
2017-05-09 11:49 ` Tomi Valkeinen
2017-05-08 11:33 ` [PATCH v2 27/28] ARM: OMAP2+: Don't register omapdss device for omapdrm Laurent Pinchart
2017-05-08 17:09 ` Tony Lindgren
2017-05-09 11:51 ` Tomi Valkeinen
2017-05-08 11:33 ` [PATCH v2 28/28] drm: omapdrm: Remove omapdrm platform data Laurent Pinchart
2017-05-09 11:51 ` Tomi Valkeinen
2017-05-08 17:07 ` [PATCH v2 00/29] Remove the omapdrm and omapdss devices from platform code Tony Lindgren
2017-05-09 11:53 ` Tomi Valkeinen
2017-05-09 13:54 ` Tony Lindgren
2017-05-09 12:10 ` Tomi Valkeinen
2017-05-09 15:05 ` Sebastian Reichel
2017-05-10 7:23 ` Tomi Valkeinen
2017-05-10 16:46 ` Tony Lindgren
2017-05-10 17:40 ` Tomi Valkeinen
2017-05-10 18:29 ` Tony Lindgren
2017-05-11 8:34 ` Tomi Valkeinen
2017-05-11 14:16 ` Tony Lindgren
2017-05-12 7:29 ` Tomi Valkeinen
2017-05-12 15:03 ` Tony Lindgren
2017-05-09 22:18 ` Laurent Pinchart
2017-05-10 6:48 ` Tomi Valkeinen
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=12352807.1BbhCterIB@avalon \
--to=laurent.pinchart@ideasonboard.com \
--cc=dri-devel@lists.freedesktop.org \
--cc=tomi.valkeinen@ti.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: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox