From: Laurent Pinchart <laurent.pinchart-ryLnwIuWjnjg/C1BVhZhaw@public.gmane.org> To: Tomi Valkeinen <tomi.valkeinen-l0cyMroinI0@public.gmane.org> Cc: Tony Lindgren <tony-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>, linux-omap-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, linux-fbdev-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, Archit Taneja <archit-l0cyMroinI0@public.gmane.org>, Darren Etheridge <detheridge-l0cyMroinI0@public.gmane.org> Subject: Re: [PATCH 13/26] ARM: omap3.dtsi: add omapdss information Date: Mon, 16 Dec 2013 14:55:25 +0100 [thread overview] Message-ID: <1771228.vtXv3vOBGI@avalon> (raw) In-Reply-To: <52AEDA9F.2020609-l0cyMroinI0@public.gmane.org> [-- Attachment #1: Type: text/plain, Size: 3465 bytes --] Hi Tomi, On Monday 16 December 2013 12:49:03 Tomi Valkeinen wrote: > On 2013-12-13 05:24, Laurent Pinchart wrote: > >> Then DPI, which I think is mostly just level shifters. It's really just > >> a port, as you say. > >> > >> SDI is a bit unclear to me. The registers for it are in the dss_core. > >> There's only a few registers, but it does have a PHY and a PLL. But I > >> guess it's also more of a port than a separate module. > > > > After a quick look at the documentation I would say so. I would be tempted > > to consider RFBI as part of the DSS core, but that's less clear. > > I had a look at this, mainly the DPI side so far. There's one extra > complication, which actually affects all other outputs also (and CDF): > pinctrl. > > In the current series, I just have pinctrl for each device, with > "default" name, which ends up being used by default without any code on > my part. > > However, if DPI is no longer a device, it can't have pinctrl entry. But > this is a wider issue, as the pinctrl should really be per endpoint, not > per device. When an endpoint is selected to be used, a particular > pinmuxing should be taken into use. > > I'm not sure what would be the cleanest solution to this. I currently > have this working: > > &dss { > pinctrl-names = "default-0-0"; > pinctrl-0 = <&dss_dpi_pins>; > > port@0 { > dpi_out: endpoint { > remote-endpoint = <&tfp410_in>; > data-lines = <24>; > }; > }; > }; > > So here I have 'port@0' for DSS, which is the DPI output, and it has a > single endpoint. For DSS device, I have pinctrl data. > > When the DPI endpoint is initialized, the code looks for pinctrl with > name "default-<portnum>-<endpointnum>". As the DPI is port 0, and just > one endpoint, the code looks for "default-0-0". > > For omap3 board with both DPI and SDI as options (they can't be used at > the same time, though), I imagine it'd be like: > > &dss { > vdds_dsi-supply = <&vpll2>; > vdds_sdi-supply = <&vpll2>; > > pinctrl-names = "default-0-0", "default-1-0"; > pinctrl-0 = <&dss_dpi_pins>; > pinctrl-1 = <&dss_sdi_pins>; > > ports { > #address-cells = <1>; > #size-cells = <0>; > > port@0 { > reg = <0>; > dpi_out: endpoint { > }; > }; > > port@1 { > reg = <1>; > sdi_out: endpoint { > }; > }; > }; > }; > > Any thoughts? Would it be feasible to put the pinctrl properties in the port or endpoint nodes ? That could require changes to the pinctrl core, most probably just exporting a few internal functions (possibly requiring a bit of refactoring), but it might make the result simpler. > Every time I work with ports/endpoints, I feel that this is needlessly > complex. But I have never come up with any cleaner or simpler way to > handle this. > > I also think this multiple-peripherals-per-single-port is not really > display related, although, for some reason, it seems like display is the > most abused hardware. Maybe ports/endpoints or similar should be in the > common driver framework? Ports and endpoints is the way we have come up with to describe a graph in DT. I wouldn't call it needlessly complex, as I believe it's both generic and simple, but I agree it's a bit on the verbose side. Omitting the ports and port nodes as a shortcut might be a good way to reduce the verbosity. Regarding moving this to the device core, I'm not opposed to it, but I'd like to see interest from other users first. -- Regards, Laurent Pinchart [-- Attachment #2: This is a digitally signed message part. --] [-- Type: application/pgp-signature, Size: 490 bytes --]
WARNING: multiple messages have this Message-ID (diff)
From: Laurent Pinchart <laurent.pinchart@ideasonboard.com> To: Tomi Valkeinen <tomi.valkeinen-l0cyMroinI0@public.gmane.org> Cc: Tony Lindgren <tony-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>, linux-omap-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, linux-fbdev-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, Archit Taneja <archit-l0cyMroinI0@public.gmane.org>, Darren Etheridge <detheridge-l0cyMroinI0@public.gmane.org> Subject: Re: [PATCH 13/26] ARM: omap3.dtsi: add omapdss information Date: Mon, 16 Dec 2013 13:55:25 +0000 [thread overview] Message-ID: <1771228.vtXv3vOBGI@avalon> (raw) In-Reply-To: <52AEDA9F.2020609-l0cyMroinI0@public.gmane.org> [-- Attachment #1: Type: text/plain, Size: 3465 bytes --] Hi Tomi, On Monday 16 December 2013 12:49:03 Tomi Valkeinen wrote: > On 2013-12-13 05:24, Laurent Pinchart wrote: > >> Then DPI, which I think is mostly just level shifters. It's really just > >> a port, as you say. > >> > >> SDI is a bit unclear to me. The registers for it are in the dss_core. > >> There's only a few registers, but it does have a PHY and a PLL. But I > >> guess it's also more of a port than a separate module. > > > > After a quick look at the documentation I would say so. I would be tempted > > to consider RFBI as part of the DSS core, but that's less clear. > > I had a look at this, mainly the DPI side so far. There's one extra > complication, which actually affects all other outputs also (and CDF): > pinctrl. > > In the current series, I just have pinctrl for each device, with > "default" name, which ends up being used by default without any code on > my part. > > However, if DPI is no longer a device, it can't have pinctrl entry. But > this is a wider issue, as the pinctrl should really be per endpoint, not > per device. When an endpoint is selected to be used, a particular > pinmuxing should be taken into use. > > I'm not sure what would be the cleanest solution to this. I currently > have this working: > > &dss { > pinctrl-names = "default-0-0"; > pinctrl-0 = <&dss_dpi_pins>; > > port@0 { > dpi_out: endpoint { > remote-endpoint = <&tfp410_in>; > data-lines = <24>; > }; > }; > }; > > So here I have 'port@0' for DSS, which is the DPI output, and it has a > single endpoint. For DSS device, I have pinctrl data. > > When the DPI endpoint is initialized, the code looks for pinctrl with > name "default-<portnum>-<endpointnum>". As the DPI is port 0, and just > one endpoint, the code looks for "default-0-0". > > For omap3 board with both DPI and SDI as options (they can't be used at > the same time, though), I imagine it'd be like: > > &dss { > vdds_dsi-supply = <&vpll2>; > vdds_sdi-supply = <&vpll2>; > > pinctrl-names = "default-0-0", "default-1-0"; > pinctrl-0 = <&dss_dpi_pins>; > pinctrl-1 = <&dss_sdi_pins>; > > ports { > #address-cells = <1>; > #size-cells = <0>; > > port@0 { > reg = <0>; > dpi_out: endpoint { > }; > }; > > port@1 { > reg = <1>; > sdi_out: endpoint { > }; > }; > }; > }; > > Any thoughts? Would it be feasible to put the pinctrl properties in the port or endpoint nodes ? That could require changes to the pinctrl core, most probably just exporting a few internal functions (possibly requiring a bit of refactoring), but it might make the result simpler. > Every time I work with ports/endpoints, I feel that this is needlessly > complex. But I have never come up with any cleaner or simpler way to > handle this. > > I also think this multiple-peripherals-per-single-port is not really > display related, although, for some reason, it seems like display is the > most abused hardware. Maybe ports/endpoints or similar should be in the > common driver framework? Ports and endpoints is the way we have come up with to describe a graph in DT. I wouldn't call it needlessly complex, as I believe it's both generic and simple, but I agree it's a bit on the verbose side. Omitting the ports and port nodes as a shortcut might be a good way to reduce the verbosity. Regarding moving this to the device core, I'm not opposed to it, but I'd like to see interest from other users first. -- Regards, Laurent Pinchart [-- Attachment #2: This is a digitally signed message part. --] [-- Type: application/pgp-signature, Size: 490 bytes --]
next prev parent reply other threads:[~2013-12-16 13:55 UTC|newest] Thread overview: 183+ messages / expand[flat|nested] mbox.gz Atom feed top 2013-12-04 12:28 [PATCH 00/26] OMAPDSS: DT support (Christmas edition) Tomi Valkeinen 2013-12-04 12:28 ` Tomi Valkeinen 2013-12-04 12:28 ` [PATCH 01/26] OMAPDSS: rename display-sysfs 'name' entry Tomi Valkeinen 2013-12-04 12:28 ` Tomi Valkeinen 2013-12-04 12:28 ` [PATCH 02/26] OMAPDSS: DSI: fix fifosize Tomi Valkeinen 2013-12-04 12:28 ` Tomi Valkeinen 2013-12-04 12:28 ` [PATCH 03/26] ARM: OMAP: remove DSS DT hack Tomi Valkeinen 2013-12-04 12:28 ` Tomi Valkeinen 2013-12-04 12:28 ` [PATCH 04/26] OMAPDSS: remove DT hacks for regulators Tomi Valkeinen 2013-12-04 12:28 ` Tomi Valkeinen 2013-12-04 12:28 ` [PATCH 05/26] ARM: OMAP2+: add omapdss_init_of() Tomi Valkeinen 2013-12-04 12:28 ` Tomi Valkeinen 2013-12-11 23:10 ` Laurent Pinchart 2013-12-11 23:10 ` Laurent Pinchart 2013-12-12 7:30 ` Tomi Valkeinen 2013-12-12 7:30 ` Tomi Valkeinen 2013-12-13 8:32 ` Archit Taneja 2013-12-13 8:44 ` Archit Taneja 2013-12-13 8:40 ` Tomi Valkeinen 2013-12-13 8:40 ` Tomi Valkeinen 2013-12-13 17:07 ` Tony Lindgren 2013-12-13 17:07 ` Tony Lindgren 2013-12-04 12:28 ` [PATCH 06/26] OMAPDSS: if dssdev->name==NULL, use alias Tomi Valkeinen 2013-12-04 12:28 ` Tomi Valkeinen 2013-12-11 23:13 ` Laurent Pinchart 2013-12-11 23:13 ` Laurent Pinchart 2013-12-11 23:56 ` Laurent Pinchart 2013-12-11 23:56 ` Laurent Pinchart 2013-12-12 7:41 ` Tomi Valkeinen 2013-12-12 7:41 ` Tomi Valkeinen [not found] ` <52A968BD.20304-l0cyMroinI0@public.gmane.org> 2013-12-12 10:05 ` Sebastian Reichel 2013-12-12 10:05 ` Sebastian Reichel 2013-12-12 13:22 ` Laurent Pinchart 2013-12-12 13:22 ` Laurent Pinchart 2013-12-12 14:13 ` Tomi Valkeinen 2013-12-12 14:13 ` Tomi Valkeinen 2013-12-12 14:15 ` Laurent Pinchart 2013-12-12 14:15 ` Laurent Pinchart 2013-12-12 14:19 ` Tomi Valkeinen 2013-12-12 14:19 ` Tomi Valkeinen 2013-12-12 17:31 ` Sebastian Reichel 2013-12-12 17:31 ` Sebastian Reichel 2013-12-13 12:01 ` Tomi Valkeinen 2013-12-13 12:01 ` Tomi Valkeinen 2013-12-04 12:28 ` [PATCH 07/26] OMAPDSS: get dssdev->alias from DT alias Tomi Valkeinen 2013-12-04 12:28 ` Tomi Valkeinen 2013-12-04 12:28 ` [PATCH 08/26] OMAPFB: clean up default display search Tomi Valkeinen 2013-12-04 12:28 ` Tomi Valkeinen 2013-12-04 12:28 ` [PATCH 09/26] OMAPFB: search for default display with DT alias Tomi Valkeinen 2013-12-04 12:28 ` Tomi Valkeinen 2013-12-04 12:28 ` [PATCH 10/26] OMAPDSS: add of helpers Tomi Valkeinen 2013-12-04 12:28 ` Tomi Valkeinen 2013-12-11 23:19 ` Laurent Pinchart 2013-12-11 23:19 ` Laurent Pinchart 2013-12-12 7:48 ` Tomi Valkeinen 2013-12-12 7:48 ` Tomi Valkeinen 2013-12-13 2:37 ` Laurent Pinchart 2013-12-13 2:37 ` Laurent Pinchart 2013-12-04 12:28 ` [PATCH 11/26] OMAPDSS: Add DT support to DSS, DISPC, DPI, HDMI, VENC Tomi Valkeinen 2013-12-04 12:28 ` Tomi Valkeinen 2013-12-04 12:28 ` [PATCH 12/26] OMAPDSS: Add DT support to DSI Tomi Valkeinen 2013-12-04 12:28 ` Tomi Valkeinen 2013-12-04 12:28 ` [PATCH 13/26] ARM: omap3.dtsi: add omapdss information Tomi Valkeinen 2013-12-04 12:28 ` Tomi Valkeinen 2013-12-05 17:05 ` Tony Lindgren 2013-12-05 17:05 ` Tony Lindgren 2013-12-09 12:45 ` Tomi Valkeinen 2013-12-09 12:45 ` Tomi Valkeinen 2013-12-09 18:04 ` Tony Lindgren 2013-12-09 18:04 ` Tony Lindgren 2013-12-11 23:44 ` Laurent Pinchart 2013-12-11 23:44 ` Laurent Pinchart 2013-12-12 8:38 ` Tomi Valkeinen 2013-12-12 8:38 ` Tomi Valkeinen 2013-12-12 21:59 ` Tony Lindgren 2013-12-13 3:27 ` Laurent Pinchart 2013-12-13 3:27 ` Laurent Pinchart 2013-12-13 10:18 ` Tomi Valkeinen 2013-12-13 10:18 ` Tomi Valkeinen [not found] ` <52AADEF3.9040808-l0cyMroinI0@public.gmane.org> 2013-12-13 17:10 ` Tony Lindgren 2013-12-13 17:10 ` Tony Lindgren 2013-12-13 3:24 ` Laurent Pinchart 2013-12-13 3:24 ` Laurent Pinchart 2013-12-13 9:29 ` Tomi Valkeinen 2013-12-13 9:29 ` Tomi Valkeinen 2013-12-16 10:49 ` Tomi Valkeinen 2013-12-16 10:49 ` Tomi Valkeinen [not found] ` <52AEDA9F.2020609-l0cyMroinI0@public.gmane.org> 2013-12-16 13:55 ` Laurent Pinchart [this message] 2013-12-16 13:55 ` Laurent Pinchart 2013-12-04 12:28 ` [PATCH 14/26] ARM: omap4.dtsi: " Tomi Valkeinen 2013-12-04 12:28 ` Tomi Valkeinen 2013-12-04 12:28 ` [PATCH 15/26] ARM: omap4-panda.dts: add display information Tomi Valkeinen 2013-12-04 12:28 ` Tomi Valkeinen 2013-12-06 8:57 ` Javier Martinez Canillas 2013-12-06 8:57 ` Javier Martinez Canillas 2013-12-09 12:56 ` Tomi Valkeinen 2013-12-09 12:56 ` Tomi Valkeinen 2013-12-09 15:09 ` Javier Martinez Canillas 2013-12-09 15:09 ` Javier Martinez Canillas 2013-12-09 15:30 ` Tomi Valkeinen 2013-12-09 15:30 ` Tomi Valkeinen 2013-12-09 16:53 ` Javier Martinez Canillas 2013-12-09 16:53 ` Javier Martinez Canillas 2013-12-10 10:56 ` Enric Balletbo Serra 2013-12-10 10:56 ` Enric Balletbo Serra 2013-12-10 12:10 ` Tomi Valkeinen 2013-12-10 12:10 ` Tomi Valkeinen 2013-12-04 12:28 ` [PATCH 16/26] ARM: omap4-sdp.dts: " Tomi Valkeinen 2013-12-04 12:28 ` Tomi Valkeinen 2013-12-13 9:27 ` Archit Taneja 2013-12-13 9:39 ` Archit Taneja 2013-12-13 9:39 ` Tomi Valkeinen 2013-12-13 9:39 ` Tomi Valkeinen 2013-12-13 9:58 ` Archit Taneja 2013-12-13 9:58 ` Archit Taneja 2013-12-13 10:15 ` Tomi Valkeinen 2013-12-13 10:15 ` Tomi Valkeinen 2013-12-04 12:28 ` [PATCH 17/26] ARM: omap3-tobi.dts: add lcd (TEST) Tomi Valkeinen 2013-12-04 12:28 ` Tomi Valkeinen 2013-12-06 10:18 ` Florian Vaussard 2013-12-06 10:18 ` Florian Vaussard 2013-12-10 12:18 ` Tomi Valkeinen 2013-12-10 12:18 ` Tomi Valkeinen 2013-12-04 12:28 ` [PATCH 18/26] ARM: omap3-beagle.dts: add display information Tomi Valkeinen 2013-12-04 12:28 ` Tomi Valkeinen 2013-12-06 8:41 ` Javier Martinez Canillas 2013-12-06 8:41 ` Javier Martinez Canillas 2013-12-09 12:06 ` Tomi Valkeinen 2013-12-09 12:06 ` Tomi Valkeinen 2013-12-09 12:16 ` Javier Martinez Canillas 2013-12-09 12:16 ` Javier Martinez Canillas 2013-12-04 12:28 ` [PATCH 19/26] ARM: omap3-beagle-xm.dts: " Tomi Valkeinen 2013-12-04 12:28 ` Tomi Valkeinen 2013-12-04 12:28 ` [PATCH 20/26] OMAPDSS: panel-dsi-cm: Add DT support Tomi Valkeinen 2013-12-04 12:28 ` Tomi Valkeinen 2013-12-04 12:28 ` [PATCH 21/26] OMAPDSS: encoder-tfp410: " Tomi Valkeinen 2013-12-04 12:28 ` Tomi Valkeinen 2013-12-04 12:28 ` [PATCH 22/26] OMAPDSS: connector-dvi: " Tomi Valkeinen 2013-12-04 12:28 ` Tomi Valkeinen 2013-12-04 12:28 ` [PATCH 23/26] OMAPDSS: encoder-tpd12s015: " Tomi Valkeinen 2013-12-04 12:28 ` Tomi Valkeinen 2013-12-04 12:28 ` [PATCH 24/26] OMAPDSS: hdmi-connector: " Tomi Valkeinen 2013-12-04 12:28 ` Tomi Valkeinen 2013-12-04 12:28 ` [PATCH 25/26] OMAPDSS: panel-dpi: " Tomi Valkeinen 2013-12-04 12:28 ` Tomi Valkeinen 2013-12-04 12:28 ` [PATCH 26/26] OMAPDSS: connector-analog-tv: " Tomi Valkeinen 2013-12-04 12:28 ` Tomi Valkeinen [not found] ` <1386160133-24026-1-git-send-email-tomi.valkeinen-l0cyMroinI0@public.gmane.org> 2013-12-04 16:01 ` [PATCH 00/26] OMAPDSS: DT support (Christmas edition) Sebastian Reichel 2013-12-04 16:01 ` Sebastian Reichel 2013-12-05 9:41 ` Tomi Valkeinen 2013-12-05 9:41 ` Tomi Valkeinen 2013-12-12 0:39 ` Laurent Pinchart 2013-12-12 0:39 ` Laurent Pinchart 2013-12-12 8:54 ` Tomi Valkeinen 2013-12-12 8:54 ` Tomi Valkeinen 2013-12-13 3:45 ` Laurent Pinchart 2013-12-13 3:45 ` Laurent Pinchart 2013-12-13 8:16 ` Geert Uytterhoeven 2013-12-13 8:16 ` Geert Uytterhoeven 2013-12-13 10:05 ` Tomi Valkeinen 2013-12-13 10:05 ` Tomi Valkeinen 2013-12-13 14:37 ` Laurent Pinchart 2013-12-13 14:37 ` Laurent Pinchart 2013-12-13 15:47 ` Tomi Valkeinen 2013-12-13 15:47 ` Tomi Valkeinen 2013-12-13 17:22 ` Tony Lindgren 2013-12-13 17:22 ` Tony Lindgren 2013-12-14 7:34 ` Tomi Valkeinen 2013-12-14 7:34 ` Tomi Valkeinen 2013-12-14 14:09 ` Tony Lindgren 2013-12-14 14:09 ` Tony Lindgren 2013-12-16 7:24 ` Tomi Valkeinen 2013-12-16 7:24 ` Tomi Valkeinen 2013-12-18 0:30 ` Tony Lindgren 2013-12-18 0:30 ` Tony Lindgren 2013-12-07 3:48 Javier Martinez Canillas 2013-12-07 3:48 ` Javier Martinez Canillas 2013-12-07 4:28 ` Javier Martinez Canillas 2013-12-07 4:28 ` Javier Martinez Canillas 2013-12-09 12:01 ` Tomi Valkeinen 2013-12-09 12:01 ` Tomi Valkeinen 2013-12-09 12:23 ` Javier Martinez Canillas 2013-12-09 12:23 ` Javier Martinez Canillas
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=1771228.vtXv3vOBGI@avalon \ --to=laurent.pinchart-rylnwiuwjnjg/c1bvhzhaw@public.gmane.org \ --cc=archit-l0cyMroinI0@public.gmane.org \ --cc=detheridge-l0cyMroinI0@public.gmane.org \ --cc=devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \ --cc=linux-fbdev-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \ --cc=linux-omap-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \ --cc=tomi.valkeinen-l0cyMroinI0@public.gmane.org \ --cc=tony-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.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: 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.