linux-fbdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Tomi Valkeinen <tomi.valkeinen@ti.com>
To: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Cc: Tony Lindgren <tony@atomide.com>,
	linux-omap@vger.kernel.org, linux-fbdev@vger.kernel.org,
	devicetree@vger.kernel.org, Archit Taneja <archit@ti.com>,
	Darren Etheridge <detheridge@ti.com>
Subject: Re: [PATCH 13/26] ARM: omap3.dtsi: add omapdss information
Date: Mon, 16 Dec 2013 10:49:03 +0000	[thread overview]
Message-ID: <52AEDA9F.2020609@ti.com> (raw)
In-Reply-To: <14299863.f0rzOyPfdL@avalon>

[-- Attachment #1: Type: text/plain, Size: 2606 bytes --]

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?

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?

 Tomi



[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 901 bytes --]

  parent reply	other threads:[~2013-12-16 10:49 UTC|newest]

Thread overview: 92+ 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 ` [PATCH 01/26] OMAPDSS: rename display-sysfs 'name' entry Tomi Valkeinen
2013-12-04 12:28 ` [PATCH 02/26] OMAPDSS: DSI: fix fifosize Tomi Valkeinen
2013-12-04 12:28 ` [PATCH 03/26] ARM: OMAP: remove DSS DT hack Tomi Valkeinen
2013-12-04 12:28 ` [PATCH 04/26] OMAPDSS: remove DT hacks for regulators Tomi Valkeinen
2013-12-04 12:28 ` [PATCH 05/26] ARM: OMAP2+: add omapdss_init_of() Tomi Valkeinen
2013-12-11 23:10   ` Laurent Pinchart
2013-12-12  7:30     ` Tomi Valkeinen
2013-12-13  8:44       ` Archit Taneja
2013-12-13  8:40         ` Tomi Valkeinen
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-11 23:13   ` Laurent Pinchart
2013-12-11 23:56     ` Laurent Pinchart
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 13:22             ` Laurent Pinchart
2013-12-12 14:13             ` Tomi Valkeinen
2013-12-12 14:15               ` Laurent Pinchart
2013-12-12 14:19                 ` Tomi Valkeinen
2013-12-12 17:31                   ` Sebastian Reichel
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 ` [PATCH 08/26] OMAPFB: clean up default display search 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 ` [PATCH 10/26] OMAPDSS: add of helpers Tomi Valkeinen
2013-12-11 23:19   ` Laurent Pinchart
2013-12-12  7:48     ` Tomi Valkeinen
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 ` [PATCH 12/26] OMAPDSS: Add DT support to DSI Tomi Valkeinen
2013-12-04 12:28 ` [PATCH 13/26] ARM: omap3.dtsi: add omapdss information Tomi Valkeinen
2013-12-05 17:05   ` Tony Lindgren
2013-12-09 12:45     ` Tomi Valkeinen
2013-12-09 18:04       ` Tony Lindgren
2013-12-11 23:44       ` Laurent Pinchart
2013-12-12  8:38         ` Tomi Valkeinen
2013-12-12 21:59           ` Tony Lindgren
2013-12-13  3:27             ` Laurent Pinchart
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  3:24           ` Laurent Pinchart
2013-12-13  9:29             ` Tomi Valkeinen
2013-12-16 10:49             ` Tomi Valkeinen [this message]
     [not found]               ` <52AEDA9F.2020609-l0cyMroinI0@public.gmane.org>
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 ` [PATCH 15/26] ARM: omap4-panda.dts: add display information Tomi Valkeinen
2013-12-06  8:57   ` Javier Martinez Canillas
2013-12-09 12:56     ` Tomi Valkeinen
2013-12-09 15:09       ` Javier Martinez Canillas
2013-12-09 15:30         ` Tomi Valkeinen
2013-12-09 16:53           ` Javier Martinez Canillas
2013-12-10 10:56             ` Enric Balletbo Serra
2013-12-10 12:10               ` Tomi Valkeinen
2013-12-04 12:28 ` [PATCH 16/26] ARM: omap4-sdp.dts: " Tomi Valkeinen
2013-12-13  9:39   ` Archit Taneja
2013-12-13  9:39     ` Tomi Valkeinen
2013-12-13  9:58       ` Archit Taneja
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-06 10:18   ` Florian Vaussard
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-06  8:41   ` Javier Martinez Canillas
2013-12-09 12:06     ` Tomi Valkeinen
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 ` [PATCH 20/26] OMAPDSS: panel-dsi-cm: Add DT support Tomi Valkeinen
2013-12-04 12:28 ` [PATCH 21/26] OMAPDSS: encoder-tfp410: " Tomi Valkeinen
2013-12-04 12:28 ` [PATCH 22/26] OMAPDSS: connector-dvi: " Tomi Valkeinen
2013-12-04 12:28 ` [PATCH 23/26] OMAPDSS: encoder-tpd12s015: " Tomi Valkeinen
2013-12-04 12:28 ` [PATCH 24/26] OMAPDSS: hdmi-connector: " Tomi Valkeinen
2013-12-04 12:28 ` [PATCH 25/26] OMAPDSS: panel-dpi: " Tomi Valkeinen
2013-12-04 12:28 ` [PATCH 26/26] OMAPDSS: connector-analog-tv: " 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-05  9:41     ` Tomi Valkeinen
2013-12-07  3:48 ` Javier Martinez Canillas
2013-12-07  4:28   ` Javier Martinez Canillas
2013-12-09 12:01     ` Tomi Valkeinen
2013-12-09 12:23       ` Javier Martinez Canillas
2013-12-12  0:39 ` Laurent Pinchart
2013-12-12  8:54   ` Tomi Valkeinen
2013-12-13  3:45     ` Laurent Pinchart
2013-12-13  8:16       ` Geert Uytterhoeven
2013-12-13 10:05       ` Tomi Valkeinen
2013-12-13 14:37         ` Laurent Pinchart
2013-12-13 15:47           ` Tomi Valkeinen
2013-12-13 17:22             ` Tony Lindgren
2013-12-14  7:34               ` Tomi Valkeinen
2013-12-14 14:09                 ` Tony Lindgren
2013-12-16  7:24                   ` Tomi Valkeinen
2013-12-18  0:30                     ` Tony Lindgren

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=52AEDA9F.2020609@ti.com \
    --to=tomi.valkeinen@ti.com \
    --cc=archit@ti.com \
    --cc=detheridge@ti.com \
    --cc=devicetree@vger.kernel.org \
    --cc=laurent.pinchart@ideasonboard.com \
    --cc=linux-fbdev@vger.kernel.org \
    --cc=linux-omap@vger.kernel.org \
    --cc=tony@atomide.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;
as well as URLs for NNTP newsgroup(s).