From: Laurent Pinchart <laurent.pinchart-ryLnwIuWjnjg/C1BVhZhaw@public.gmane.org>
To: Rob Herring <robh-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>
Cc: Eric Anholt <eric-WhKQ6XTQaPysTnJN9+BGXg@public.gmane.org>,
dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org,
Thierry Reding
<thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>,
Mark Rutland <mark.rutland-5wv7dgnIgG8@public.gmane.org>,
Archit Taneja <architt-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>,
Andrzej Hajda <a.hajda-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org>,
devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Subject: Re: [PATCH 2/4] dt-bindings: Document the Raspberry Pi Touchscreen nodes.
Date: Tue, 16 May 2017 00:56:10 +0300 [thread overview]
Message-ID: <3258113.psJ57kzgCh@avalon> (raw)
In-Reply-To: <20170515204457.yxucspgm6yrk24pm@rob-hp-laptop>
Hi Rob,
On Monday 15 May 2017 15:44:57 Rob Herring wrote:
> On Thu, May 11, 2017 at 04:56:23PM -0700, Eric Anholt wrote:
> > The Raspberry Pi 7" Touchscreen is a DPI touchscreen panel with
> > DSI->DPI bridge and touchscreen controller integrated, that connects
> > to the Raspberry Pi through its 15-pin "DSI" connector (some lines are
> > DSI, some lines are I2C).
> >
> > This device is represented in the DT as three nodes (DSI device, I2C
> > device, panel). Input will be left to a separate binding later, as it
> > will be a basic I2C client device.
> >
> > Signed-off-by: Eric Anholt <eric-WhKQ6XTQaPysTnJN9+BGXg@public.gmane.org>
> > ---
> >
> > .../raspberrypi,7inch-touchscreen-bridge.txt | 68
> > ++++++++++++++++++++++ .../panel/raspberrypi,7inch-touchscreen-panel.txt
> > | 7 +++
> > 2 files changed, 75 insertions(+)
> > create mode 100644
> > Documentation/devicetree/bindings/display/bridge/raspberrypi,7inch-touch
> > screen-bridge.txt create mode 100644
> > Documentation/devicetree/bindings/display/panel/raspberrypi,7inch-touchs
> > creen-panel.txt>
> > diff --git
> > a/Documentation/devicetree/bindings/display/bridge/raspberrypi,7inch-touc
> > hscreen-bridge.txt
> > b/Documentation/devicetree/bindings/display/bridge/raspberrypi,7inch-touc
> > hscreen-bridge.txt new file mode 100644
> > index 000000000000..a5669beaf68f
> > --- /dev/null
> > +++
> > b/Documentation/devicetree/bindings/display/bridge/raspberrypi,7inch-touc
> > hscreen-bridge.txt @@ -0,0 +1,68 @@
> > +Official 7" (800x480) Raspberry Pi touchscreen panel's bridge.
> > +
> > +This DSI panel contains:
> > +
> > +- TC358762 DSI->DPI bridge
> > +- Atmel microcontroller on I2C for power sequencing the DSI bridge and
> > + controlling backlight
> > +- Touchscreen controller on I2C for touch input
>
> This is 1 uC or 2?
>
> > +
> > +and this covers the TC358762 bridge and Atmel microcontroller, while
> > +../panel/raspberrypi,7inch-touchscreen-panel.txt covers the panel.
> > +
> > +Required properties:
> > +- compatible: Must be "raspberrypi,7inch-touchscreen-bridge"
> > +- raspberrypi,touchscreen-bridge:
> > + Handle to the I2C device for Atmel microcontroller
> > +
> > +Example:
> > +
> > +dsi1: dsi@7e700000 {
> > + #address-cells = <1>;
> > + #size-cells = <0>;
> > + <...>
> > +
> > + lcd-bridge@0 {
> > + compatible = "raspberrypi,7inch-touchscreen-bridge";
> > + reg = <0>;
> > +
> > + raspberrypi,touchscreen-bridge = <&pitouchscreen_bridge>;
>
> I think this should be a port with a graph connection from the DSI
> node to the i2c bridge device (and then to the panel).
No, this should actually not exist :-) The property references the I2C device
DT node corresponding to the microcontroller that controls the backlight (and,
if I understand correctly, handles power sequencing). The DSI driver (in patch
3/4) then grabs the I2C device and talks to it. I don't think this is right,
as commented separately on this patch, the bindings should be split, with a
standalone binding for the TC358762 (and a separate standalone driver too).
> It's also how other DSI bridges like the tc358767 are done.
>
> > + ports {
> > + #address-cells = <1>;
> > + #size-cells = <0>;
> > + port@0 {
> > + reg = <0>;
>
> BTW, you don't need this when there is only 1.
>
> > + pitouchscreen_bridge_port: endpoint {
> > + remote-endpoint =
<&pitouchscreen_panel_port>;
> > + };
> > + };
> > + };
> > + };
> > +};
> > +
> > +i2c_dsi: i2c {
> > + compatible = "i2c-gpio";
> > + #address-cells = <1>;
> > + #size-cells = <0>;
> > + gpios = <&gpio 28 0
> > + &gpio 29 0>;
> > +
> > + pitouchscreen_bridge: bridge@45 {
> > + compatible = "raspberrypi,touchscreen-bridge-i2c";
> > + reg = <0x45>;
> > + };
> > +};
> > +
> > +lcd {
> > + compatible = "raspberrypi,7inch-touchscreen-panel";
> > + ports {
> > + #address-cells = <1>;
> > + #size-cells = <0>;
> > + port@0 {
> > + reg = <0>;
> > + pitouchscreen_panel_port: endpoint {
> > + remote-endpoint =
<&pitouchscreen_bridge_port>;
> > + };
> > + };
> > + };
> > +};
> > diff --git
> > a/Documentation/devicetree/bindings/display/panel/raspberrypi,7inch-touch
> > screen-panel.txt
> > b/Documentation/devicetree/bindings/display/panel/raspberrypi,7inch-touch
> > screen-panel.txt new file mode 100644
> > index 000000000000..1e84f97b3b20
> > --- /dev/null
> > +++
> > b/Documentation/devicetree/bindings/display/panel/raspberrypi,7inch-touch
> > screen-panel.txt @@ -0,0 +1,7 @@
> > +Official 7" (800x480) Raspberry Pi touchscreen panel's panel.
> > +
> > +This binding is compatible with the simple-panel binding, which is
> > specified +in simple-panel.txt in this directory.
> > +
> > +Required properties:
> > +- compatible: Must be "raspberrypi,7inch-touchscreen-panel"
--
Regards,
Laurent Pinchart
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
WARNING: multiple messages have this Message-ID (diff)
From: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
To: Rob Herring <robh@kernel.org>
Cc: Eric Anholt <eric@anholt.net>,
dri-devel@lists.freedesktop.org,
Thierry Reding <thierry.reding@gmail.com>,
Mark Rutland <mark.rutland@arm.com>,
Archit Taneja <architt@codeaurora.org>,
Andrzej Hajda <a.hajda@samsung.com>,
devicetree@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH 2/4] dt-bindings: Document the Raspberry Pi Touchscreen nodes.
Date: Tue, 16 May 2017 00:56:10 +0300 [thread overview]
Message-ID: <3258113.psJ57kzgCh@avalon> (raw)
In-Reply-To: <20170515204457.yxucspgm6yrk24pm@rob-hp-laptop>
Hi Rob,
On Monday 15 May 2017 15:44:57 Rob Herring wrote:
> On Thu, May 11, 2017 at 04:56:23PM -0700, Eric Anholt wrote:
> > The Raspberry Pi 7" Touchscreen is a DPI touchscreen panel with
> > DSI->DPI bridge and touchscreen controller integrated, that connects
> > to the Raspberry Pi through its 15-pin "DSI" connector (some lines are
> > DSI, some lines are I2C).
> >
> > This device is represented in the DT as three nodes (DSI device, I2C
> > device, panel). Input will be left to a separate binding later, as it
> > will be a basic I2C client device.
> >
> > Signed-off-by: Eric Anholt <eric@anholt.net>
> > ---
> >
> > .../raspberrypi,7inch-touchscreen-bridge.txt | 68
> > ++++++++++++++++++++++ .../panel/raspberrypi,7inch-touchscreen-panel.txt
> > | 7 +++
> > 2 files changed, 75 insertions(+)
> > create mode 100644
> > Documentation/devicetree/bindings/display/bridge/raspberrypi,7inch-touch
> > screen-bridge.txt create mode 100644
> > Documentation/devicetree/bindings/display/panel/raspberrypi,7inch-touchs
> > creen-panel.txt>
> > diff --git
> > a/Documentation/devicetree/bindings/display/bridge/raspberrypi,7inch-touc
> > hscreen-bridge.txt
> > b/Documentation/devicetree/bindings/display/bridge/raspberrypi,7inch-touc
> > hscreen-bridge.txt new file mode 100644
> > index 000000000000..a5669beaf68f
> > --- /dev/null
> > +++
> > b/Documentation/devicetree/bindings/display/bridge/raspberrypi,7inch-touc
> > hscreen-bridge.txt @@ -0,0 +1,68 @@
> > +Official 7" (800x480) Raspberry Pi touchscreen panel's bridge.
> > +
> > +This DSI panel contains:
> > +
> > +- TC358762 DSI->DPI bridge
> > +- Atmel microcontroller on I2C for power sequencing the DSI bridge and
> > + controlling backlight
> > +- Touchscreen controller on I2C for touch input
>
> This is 1 uC or 2?
>
> > +
> > +and this covers the TC358762 bridge and Atmel microcontroller, while
> > +../panel/raspberrypi,7inch-touchscreen-panel.txt covers the panel.
> > +
> > +Required properties:
> > +- compatible: Must be "raspberrypi,7inch-touchscreen-bridge"
> > +- raspberrypi,touchscreen-bridge:
> > + Handle to the I2C device for Atmel microcontroller
> > +
> > +Example:
> > +
> > +dsi1: dsi@7e700000 {
> > + #address-cells = <1>;
> > + #size-cells = <0>;
> > + <...>
> > +
> > + lcd-bridge@0 {
> > + compatible = "raspberrypi,7inch-touchscreen-bridge";
> > + reg = <0>;
> > +
> > + raspberrypi,touchscreen-bridge = <&pitouchscreen_bridge>;
>
> I think this should be a port with a graph connection from the DSI
> node to the i2c bridge device (and then to the panel).
No, this should actually not exist :-) The property references the I2C device
DT node corresponding to the microcontroller that controls the backlight (and,
if I understand correctly, handles power sequencing). The DSI driver (in patch
3/4) then grabs the I2C device and talks to it. I don't think this is right,
as commented separately on this patch, the bindings should be split, with a
standalone binding for the TC358762 (and a separate standalone driver too).
> It's also how other DSI bridges like the tc358767 are done.
>
> > + ports {
> > + #address-cells = <1>;
> > + #size-cells = <0>;
> > + port@0 {
> > + reg = <0>;
>
> BTW, you don't need this when there is only 1.
>
> > + pitouchscreen_bridge_port: endpoint {
> > + remote-endpoint =
<&pitouchscreen_panel_port>;
> > + };
> > + };
> > + };
> > + };
> > +};
> > +
> > +i2c_dsi: i2c {
> > + compatible = "i2c-gpio";
> > + #address-cells = <1>;
> > + #size-cells = <0>;
> > + gpios = <&gpio 28 0
> > + &gpio 29 0>;
> > +
> > + pitouchscreen_bridge: bridge@45 {
> > + compatible = "raspberrypi,touchscreen-bridge-i2c";
> > + reg = <0x45>;
> > + };
> > +};
> > +
> > +lcd {
> > + compatible = "raspberrypi,7inch-touchscreen-panel";
> > + ports {
> > + #address-cells = <1>;
> > + #size-cells = <0>;
> > + port@0 {
> > + reg = <0>;
> > + pitouchscreen_panel_port: endpoint {
> > + remote-endpoint =
<&pitouchscreen_bridge_port>;
> > + };
> > + };
> > + };
> > +};
> > diff --git
> > a/Documentation/devicetree/bindings/display/panel/raspberrypi,7inch-touch
> > screen-panel.txt
> > b/Documentation/devicetree/bindings/display/panel/raspberrypi,7inch-touch
> > screen-panel.txt new file mode 100644
> > index 000000000000..1e84f97b3b20
> > --- /dev/null
> > +++
> > b/Documentation/devicetree/bindings/display/panel/raspberrypi,7inch-touch
> > screen-panel.txt @@ -0,0 +1,7 @@
> > +Official 7" (800x480) Raspberry Pi touchscreen panel's panel.
> > +
> > +This binding is compatible with the simple-panel binding, which is
> > specified +in simple-panel.txt in this directory.
> > +
> > +Required properties:
> > +- compatible: Must be "raspberrypi,7inch-touchscreen-panel"
--
Regards,
Laurent Pinchart
next prev parent reply other threads:[~2017-05-15 21:56 UTC|newest]
Thread overview: 45+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-05-11 23:56 [PATCH 0/4] Raspberry Pi Touchscreen bridge/panel drivers Eric Anholt
2017-05-11 23:56 ` Eric Anholt
2017-05-11 23:56 ` [PATCH 1/4] drm/vc4: Adjust modes in DSI to work around the integer PLL divider Eric Anholt
2017-05-11 23:56 ` Eric Anholt
2017-05-12 7:55 ` Daniel Vetter
2017-05-12 7:55 ` Daniel Vetter
2017-05-12 11:01 ` Noralf Trønnes
2017-05-12 11:01 ` Noralf Trønnes
2017-05-11 23:56 ` [PATCH 2/4] dt-bindings: Document the Raspberry Pi Touchscreen nodes Eric Anholt
2017-05-11 23:56 ` Eric Anholt
2017-05-15 20:44 ` Rob Herring
2017-05-15 20:44 ` Rob Herring
2017-05-15 21:56 ` Laurent Pinchart [this message]
2017-05-15 21:56 ` Laurent Pinchart
2017-05-15 21:53 ` Laurent Pinchart
2017-05-15 21:53 ` Laurent Pinchart
2017-05-16 0:03 ` Eric Anholt
2017-05-16 0:03 ` Eric Anholt
2017-05-16 0:11 ` Rob Herring
[not found] ` <CAL_Jsq+Pt5necK9cUPwFqmCbK5d-0NVNv-_LRVqyNgr5ajR8LQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2017-05-16 16:47 ` Eric Anholt
2017-05-16 16:47 ` Eric Anholt
2017-05-16 16:54 ` Laurent Pinchart
2017-05-16 16:54 ` Laurent Pinchart
2017-05-16 18:46 ` Eric Anholt
2017-05-16 18:46 ` Eric Anholt
2017-05-18 8:26 ` Archit Taneja
2017-05-18 8:26 ` Archit Taneja
2017-05-18 14:55 ` Laurent Pinchart
2017-05-18 14:55 ` Laurent Pinchart
2017-05-19 8:54 ` Archit Taneja
2017-05-19 8:54 ` Archit Taneja
2017-05-19 9:32 ` Laurent Pinchart
2017-05-19 9:32 ` Laurent Pinchart
2017-05-22 20:51 ` Eric Anholt
2017-05-22 20:51 ` Eric Anholt
2017-05-18 14:45 ` Laurent Pinchart
2017-05-18 14:45 ` Laurent Pinchart
2017-05-22 20:50 ` Eric Anholt
2017-05-22 20:50 ` Eric Anholt
[not found] ` <87shk53bxq.fsf-omZaPlIz5HhaEpDpdNBo/KxOck334EZe@public.gmane.org>
2017-05-16 7:20 ` Laurent Pinchart
2017-05-16 7:20 ` Laurent Pinchart
2017-05-11 23:56 ` [PATCH 3/4] drm/bridge: Add support for the Raspberry Pi 7" Touchscreen Eric Anholt
2017-05-11 23:56 ` Eric Anholt
2017-05-11 23:56 ` [PATCH 4/4] drm/panel: Add the Raspberry Pi 7" touchscreen's panel Eric Anholt
2017-05-11 23:56 ` Eric Anholt
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=3258113.psJ57kzgCh@avalon \
--to=laurent.pinchart-rylnwiuwjnjg/c1bvhzhaw@public.gmane.org \
--cc=a.hajda-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org \
--cc=architt-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org \
--cc=devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org \
--cc=eric-WhKQ6XTQaPysTnJN9+BGXg@public.gmane.org \
--cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=mark.rutland-5wv7dgnIgG8@public.gmane.org \
--cc=robh-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org \
--cc=thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@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: 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.