From: Sam Ravnborg <sam@ravnborg.org>
To: Maxime Ripard <maxime@cerno.tech>
Cc: devicetree@vger.kernel.org,
Alexandre Belloni <alexandre.belloni@bootlin.com>,
Boris Brezillon <bbrezillon@kernel.org>,
Nicolas Ferre <nicolas.ferre@microchip.com>,
dri-devel@lists.freedesktop.org,
Hans Verkuil <hverkuil@xs4all.nl>,
Mauro Carvalho Chehab <mchehab@kernel.org>,
linux-media@vger.kernel.org
Subject: Re: [PATCH v1 2/4] dt-bindings: display: convert atmel lcdc to DT Schema
Date: Wed, 15 Apr 2020 18:44:27 +0200 [thread overview]
Message-ID: <20200415164427.GC7965@ravnborg.org> (raw)
In-Reply-To: <20200414083010.qztgtj6v6b53qgjh@gilmour.lan>
Hi Maxime.
On Tue, Apr 14, 2020 at 10:30:10AM +0200, Maxime Ripard wrote:
> On Sun, Apr 12, 2020 at 08:20:10PM +0200, Sam Ravnborg wrote:
> > Add a new binding file to describe the bindings
> > for the Atmel LCDC IP.
> > This replaces the old txt based binding.
> >
> > The binding file describes the current binding,
> > including properties to specify register values etc.
> > The binding will be updated in a follow-up patch,
> > the current binding describes the actual situation.
> >
> > This new binding file replaces the old .txt based
> > binding which is deleted.
> >
> > Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
> > ---
> > .../bindings/display/atmel,lcdc.txt | 88 -----------
> > .../bindings/display/atmel/lcdc.yaml | 137 ++++++++++++++++++
> > 2 files changed, 137 insertions(+), 88 deletions(-)
> > delete mode 100644 Documentation/devicetree/bindings/display/atmel,lcdc.txt
> > create mode 100644 Documentation/devicetree/bindings/display/atmel/lcdc.yaml
> >
> > diff --git a/Documentation/devicetree/bindings/display/atmel,lcdc.txt b/Documentation/devicetree/bindings/display/atmel,lcdc.txt
> > deleted file mode 100644
> > index acb5a0132127..000000000000
> > --- a/Documentation/devicetree/bindings/display/atmel,lcdc.txt
> > +++ /dev/null
> > @@ -1,88 +0,0 @@
> > -Atmel LCDC Framebuffer
> > ------------------------------------------------------
> > -
> > -Required properties:
> > -- compatible :
> > - "atmel,at91sam9261-lcdc" ,
> > - "atmel,at91sam9263-lcdc" ,
> > - "atmel,at91sam9g10-lcdc" ,
> > - "atmel,at91sam9g45-lcdc" ,
> > - "atmel,at91sam9g45es-lcdc" ,
> > - "atmel,at91sam9rl-lcdc" ,
> > - "atmel,at32ap-lcdc"
> > -- reg : Should contain 1 register ranges(address and length).
> > - Can contain an additional register range(address and length)
> > - for fixed framebuffer memory. Useful for dedicated memories.
> > -- interrupts : framebuffer controller interrupt
> > -- display: a phandle pointing to the display node
> > -
> > -Required nodes:
> > -- display: a display node is required to initialize the lcd panel
> > - This should be in the board dts.
> > -- default-mode: a videomode within the display with timing parameters
> > - as specified below.
> > -
> > -Optional properties:
> > -- lcd-supply: Regulator for LCD supply voltage.
> > -
> > -Example:
> > -
> > - fb0: fb@00500000 {
> > - compatible = "atmel,at91sam9g45-lcdc";
> > - reg = <0x00500000 0x1000>;
> > - interrupts = <23 3 0>;
> > - pinctrl-names = "default";
> > - pinctrl-0 = <&pinctrl_fb>;
> > - display = <&display0>;
> > - #address-cells = <1>;
> > - #size-cells = <1>;
> > -
> > - };
> > -
> > -Example for fixed framebuffer memory:
> > -
> > - fb0: fb@00500000 {
> > - compatible = "atmel,at91sam9263-lcdc";
> > - reg = <0x00700000 0x1000 0x70000000 0x200000>;
> > - [...]
> > - };
> > -
> > -Atmel LCDC Display
> > ------------------------------------------------------
> > -Required properties (as per of_videomode_helper):
> > -
> > - - atmel,dmacon: dma controller configuration
> > - - atmel,lcdcon2: lcd controller configuration
> > - - atmel,guard-time: lcd guard time (Delay in frame periods)
> > - - bits-per-pixel: lcd panel bit-depth.
> > -
> > -Optional properties (as per of_videomode_helper):
> > - - atmel,lcdcon-backlight: enable backlight
> > - - atmel,lcdcon-backlight-inverted: invert backlight PWM polarity
> > - - atmel,lcd-wiring-mode: lcd wiring mode "RGB" or "BRG"
> > - - atmel,power-control-gpio: gpio to power on or off the LCD (as many as needed)
> > -
> > -Example:
> > - display0: display {
> > - bits-per-pixel = <32>;
> > - atmel,lcdcon-backlight;
> > - atmel,dmacon = <0x1>;
> > - atmel,lcdcon2 = <0x80008002>;
> > - atmel,guard-time = <9>;
> > - atmel,lcd-wiring-mode = <1>;
> > -
> > - display-timings {
> > - native-mode = <&timing0>;
> > - timing0: timing0 {
> > - clock-frequency = <9000000>;
> > - hactive = <480>;
> > - vactive = <272>;
> > - hback-porch = <1>;
> > - hfront-porch = <1>;
> > - vback-porch = <40>;
> > - vfront-porch = <1>;
> > - hsync-len = <45>;
> > - vsync-len = <1>;
> > - };
> > - };
> > - };
> > diff --git a/Documentation/devicetree/bindings/display/atmel/lcdc.yaml b/Documentation/devicetree/bindings/display/atmel/lcdc.yaml
> > new file mode 100644
> > index 000000000000..7dcb9a4d5902
> > --- /dev/null
> > +++ b/Documentation/devicetree/bindings/display/atmel/lcdc.yaml
> > @@ -0,0 +1,137 @@
> > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> > +%YAML 1.2
> > +---
> > +$id: http://devicetree.org/schemas/display/atmel/lcdc.yaml#
> > +$schema: http://devicetree.org/meta-schemas/core.yaml#
> > +
> > +title: Atmel LCDC (LCD Controller) display controller with PWM
> > +
> > +maintainers:
> > + - Sam Ravnborg <sam@ravnborg.org>
> > +
> > +description: |
> > + The Atmel LCDC Display Controller is display controller that
> > + includes a PWM for backlight/contrast.
> > +
> > +properties:
> > + compatible:
> > + enum:
> > + - atmel,at91sam9261-lcdc
> > + - atmel,at91sam9263-lcdc
> > + - atmel,at91sam9g10-lcdc
> > + - atmel,at91sam9g45-lcdc
> > + - atmel,at91sam9g45es-lcdc
> > + - atmel,at91sam9g46-lcdc
> > + - atmel,at91sam9m10-lcdc
> > + - atmel,at91sam9m11-lcdc
> > + - atmel,at91sam9rl-lcdc
> > +
> > + "#address-cells":
> > + const: 1
> > + "#size-cells":
> > + const: 0
> > +
> > + reg:
> > + description: |
> > + Contains 1 register range (address and length).
> > + Can contain an additional register range (address and length)
> > + for fixed framebuffer memory
>
> So, minItems: 1 , maxItems: 2?
The syntax is either:
reg = <0x00700000 0x1000>;
or
reg = <0x00700000 0x1000 0x70000000 0x200000>;
So always minItems: 1
>
> > + interrupts:
> > + maxItems: 1
> > +
> > + lcd-supply:
> > + description: Regulator for LCD supply voltage.
> > +
> > + display:
> > + $ref: /schemas/types.yaml#/definitions/phandle
> > + description: phandle to display node
> > +
> > +patternProperties:
> > + "^display[0-9]$":
> > + type: object
> > + description: |
> > + Display node is required to initialize the lcd panel.
> > + This should be in the board dts
> > +
> > + properties:
> > +
> > + atmel,dmacon:
> > + $ref: /schemas/types.yaml#/definitions/uint32
> > + description: DMA controller configuration
> > +
> > + atmel,lcdcon2:
> > + $ref: /schemas/types.yaml#/definitions/uint32
> > + description: LCD controller configuration
> > +
> > + atmel,guard-time:
> > + $ref: /schemas/types.yaml#/definitions/uint32
> > + description: LCD guard time (Delay in frame periods)
> > +
> > + bits-per-pixel:
> > + $ref: /schemas/types.yaml#/definitions/uint32
> > + description: LCD panel bit-depth.
>
> Those properties aren't documented anywhere?
Not more than this and then by their use in the driver(s).
In the current patchset the node is deprecated in next patch.
I plan to do in two patches:
- delete properites which is not used in kernel, barebox, u-boot)
- Mark all the old properties deprecated
And for the soon-to-be deprecated properties we need no detailed
description.
Sam
WARNING: multiple messages have this Message-ID (diff)
From: Sam Ravnborg <sam@ravnborg.org>
To: Maxime Ripard <maxime@cerno.tech>
Cc: devicetree@vger.kernel.org,
Alexandre Belloni <alexandre.belloni@bootlin.com>,
Boris Brezillon <bbrezillon@kernel.org>,
Nicolas Ferre <nicolas.ferre@microchip.com>,
dri-devel@lists.freedesktop.org,
Hans Verkuil <hverkuil@xs4all.nl>,
Mauro Carvalho Chehab <mchehab@kernel.org>,
linux-media@vger.kernel.org
Subject: Re: [PATCH v1 2/4] dt-bindings: display: convert atmel lcdc to DT Schema
Date: Wed, 15 Apr 2020 18:44:27 +0200 [thread overview]
Message-ID: <20200415164427.GC7965@ravnborg.org> (raw)
In-Reply-To: <20200414083010.qztgtj6v6b53qgjh@gilmour.lan>
Hi Maxime.
On Tue, Apr 14, 2020 at 10:30:10AM +0200, Maxime Ripard wrote:
> On Sun, Apr 12, 2020 at 08:20:10PM +0200, Sam Ravnborg wrote:
> > Add a new binding file to describe the bindings
> > for the Atmel LCDC IP.
> > This replaces the old txt based binding.
> >
> > The binding file describes the current binding,
> > including properties to specify register values etc.
> > The binding will be updated in a follow-up patch,
> > the current binding describes the actual situation.
> >
> > This new binding file replaces the old .txt based
> > binding which is deleted.
> >
> > Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
> > ---
> > .../bindings/display/atmel,lcdc.txt | 88 -----------
> > .../bindings/display/atmel/lcdc.yaml | 137 ++++++++++++++++++
> > 2 files changed, 137 insertions(+), 88 deletions(-)
> > delete mode 100644 Documentation/devicetree/bindings/display/atmel,lcdc.txt
> > create mode 100644 Documentation/devicetree/bindings/display/atmel/lcdc.yaml
> >
> > diff --git a/Documentation/devicetree/bindings/display/atmel,lcdc.txt b/Documentation/devicetree/bindings/display/atmel,lcdc.txt
> > deleted file mode 100644
> > index acb5a0132127..000000000000
> > --- a/Documentation/devicetree/bindings/display/atmel,lcdc.txt
> > +++ /dev/null
> > @@ -1,88 +0,0 @@
> > -Atmel LCDC Framebuffer
> > ------------------------------------------------------
> > -
> > -Required properties:
> > -- compatible :
> > - "atmel,at91sam9261-lcdc" ,
> > - "atmel,at91sam9263-lcdc" ,
> > - "atmel,at91sam9g10-lcdc" ,
> > - "atmel,at91sam9g45-lcdc" ,
> > - "atmel,at91sam9g45es-lcdc" ,
> > - "atmel,at91sam9rl-lcdc" ,
> > - "atmel,at32ap-lcdc"
> > -- reg : Should contain 1 register ranges(address and length).
> > - Can contain an additional register range(address and length)
> > - for fixed framebuffer memory. Useful for dedicated memories.
> > -- interrupts : framebuffer controller interrupt
> > -- display: a phandle pointing to the display node
> > -
> > -Required nodes:
> > -- display: a display node is required to initialize the lcd panel
> > - This should be in the board dts.
> > -- default-mode: a videomode within the display with timing parameters
> > - as specified below.
> > -
> > -Optional properties:
> > -- lcd-supply: Regulator for LCD supply voltage.
> > -
> > -Example:
> > -
> > - fb0: fb@00500000 {
> > - compatible = "atmel,at91sam9g45-lcdc";
> > - reg = <0x00500000 0x1000>;
> > - interrupts = <23 3 0>;
> > - pinctrl-names = "default";
> > - pinctrl-0 = <&pinctrl_fb>;
> > - display = <&display0>;
> > - #address-cells = <1>;
> > - #size-cells = <1>;
> > -
> > - };
> > -
> > -Example for fixed framebuffer memory:
> > -
> > - fb0: fb@00500000 {
> > - compatible = "atmel,at91sam9263-lcdc";
> > - reg = <0x00700000 0x1000 0x70000000 0x200000>;
> > - [...]
> > - };
> > -
> > -Atmel LCDC Display
> > ------------------------------------------------------
> > -Required properties (as per of_videomode_helper):
> > -
> > - - atmel,dmacon: dma controller configuration
> > - - atmel,lcdcon2: lcd controller configuration
> > - - atmel,guard-time: lcd guard time (Delay in frame periods)
> > - - bits-per-pixel: lcd panel bit-depth.
> > -
> > -Optional properties (as per of_videomode_helper):
> > - - atmel,lcdcon-backlight: enable backlight
> > - - atmel,lcdcon-backlight-inverted: invert backlight PWM polarity
> > - - atmel,lcd-wiring-mode: lcd wiring mode "RGB" or "BRG"
> > - - atmel,power-control-gpio: gpio to power on or off the LCD (as many as needed)
> > -
> > -Example:
> > - display0: display {
> > - bits-per-pixel = <32>;
> > - atmel,lcdcon-backlight;
> > - atmel,dmacon = <0x1>;
> > - atmel,lcdcon2 = <0x80008002>;
> > - atmel,guard-time = <9>;
> > - atmel,lcd-wiring-mode = <1>;
> > -
> > - display-timings {
> > - native-mode = <&timing0>;
> > - timing0: timing0 {
> > - clock-frequency = <9000000>;
> > - hactive = <480>;
> > - vactive = <272>;
> > - hback-porch = <1>;
> > - hfront-porch = <1>;
> > - vback-porch = <40>;
> > - vfront-porch = <1>;
> > - hsync-len = <45>;
> > - vsync-len = <1>;
> > - };
> > - };
> > - };
> > diff --git a/Documentation/devicetree/bindings/display/atmel/lcdc.yaml b/Documentation/devicetree/bindings/display/atmel/lcdc.yaml
> > new file mode 100644
> > index 000000000000..7dcb9a4d5902
> > --- /dev/null
> > +++ b/Documentation/devicetree/bindings/display/atmel/lcdc.yaml
> > @@ -0,0 +1,137 @@
> > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> > +%YAML 1.2
> > +---
> > +$id: http://devicetree.org/schemas/display/atmel/lcdc.yaml#
> > +$schema: http://devicetree.org/meta-schemas/core.yaml#
> > +
> > +title: Atmel LCDC (LCD Controller) display controller with PWM
> > +
> > +maintainers:
> > + - Sam Ravnborg <sam@ravnborg.org>
> > +
> > +description: |
> > + The Atmel LCDC Display Controller is display controller that
> > + includes a PWM for backlight/contrast.
> > +
> > +properties:
> > + compatible:
> > + enum:
> > + - atmel,at91sam9261-lcdc
> > + - atmel,at91sam9263-lcdc
> > + - atmel,at91sam9g10-lcdc
> > + - atmel,at91sam9g45-lcdc
> > + - atmel,at91sam9g45es-lcdc
> > + - atmel,at91sam9g46-lcdc
> > + - atmel,at91sam9m10-lcdc
> > + - atmel,at91sam9m11-lcdc
> > + - atmel,at91sam9rl-lcdc
> > +
> > + "#address-cells":
> > + const: 1
> > + "#size-cells":
> > + const: 0
> > +
> > + reg:
> > + description: |
> > + Contains 1 register range (address and length).
> > + Can contain an additional register range (address and length)
> > + for fixed framebuffer memory
>
> So, minItems: 1 , maxItems: 2?
The syntax is either:
reg = <0x00700000 0x1000>;
or
reg = <0x00700000 0x1000 0x70000000 0x200000>;
So always minItems: 1
>
> > + interrupts:
> > + maxItems: 1
> > +
> > + lcd-supply:
> > + description: Regulator for LCD supply voltage.
> > +
> > + display:
> > + $ref: /schemas/types.yaml#/definitions/phandle
> > + description: phandle to display node
> > +
> > +patternProperties:
> > + "^display[0-9]$":
> > + type: object
> > + description: |
> > + Display node is required to initialize the lcd panel.
> > + This should be in the board dts
> > +
> > + properties:
> > +
> > + atmel,dmacon:
> > + $ref: /schemas/types.yaml#/definitions/uint32
> > + description: DMA controller configuration
> > +
> > + atmel,lcdcon2:
> > + $ref: /schemas/types.yaml#/definitions/uint32
> > + description: LCD controller configuration
> > +
> > + atmel,guard-time:
> > + $ref: /schemas/types.yaml#/definitions/uint32
> > + description: LCD guard time (Delay in frame periods)
> > +
> > + bits-per-pixel:
> > + $ref: /schemas/types.yaml#/definitions/uint32
> > + description: LCD panel bit-depth.
>
> Those properties aren't documented anywhere?
Not more than this and then by their use in the driver(s).
In the current patchset the node is deprecated in next patch.
I plan to do in two patches:
- delete properites which is not used in kernel, barebox, u-boot)
- Mark all the old properties deprecated
And for the soon-to-be deprecated properties we need no detailed
description.
Sam
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel
next prev parent reply other threads:[~2020-04-15 16:44 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-04-12 18:20 [PATCH v1 0/4] dt-bindings: DT Schema variants of atmel lcdc, hlcdc Sam Ravnborg
2020-04-12 18:20 ` Sam Ravnborg
2020-04-12 18:20 ` [PATCH v1 1/4] dt-bindings: display: convert atmel-hlcdc to DT Schema Sam Ravnborg
2020-04-12 18:20 ` Sam Ravnborg
2020-04-14 8:28 ` Maxime Ripard
2020-04-14 8:28 ` Maxime Ripard
2020-04-15 16:39 ` Sam Ravnborg
2020-04-15 16:39 ` Sam Ravnborg
2020-04-16 7:28 ` Maxime Ripard
2020-04-16 7:28 ` Maxime Ripard
2020-04-12 18:20 ` [PATCH v1 2/4] dt-bindings: display: convert atmel lcdc " Sam Ravnborg
2020-04-12 18:20 ` Sam Ravnborg
2020-04-14 8:30 ` Maxime Ripard
2020-04-14 8:30 ` Maxime Ripard
2020-04-15 16:44 ` Sam Ravnborg [this message]
2020-04-15 16:44 ` Sam Ravnborg
2020-04-16 7:31 ` Maxime Ripard
2020-04-16 7:31 ` Maxime Ripard
2020-04-12 18:20 ` [PATCH v1 3/4] dt-bindings: media: add wiring property to video-interfaces Sam Ravnborg
2020-04-12 18:20 ` Sam Ravnborg
2020-04-14 19:40 ` Rob Herring
2020-04-14 19:40 ` Rob Herring
2020-04-15 16:45 ` Sam Ravnborg
2020-04-15 16:45 ` Sam Ravnborg
2020-04-12 18:20 ` [PATCH v1 4/4] dt-bindings: display: add port support to atmel lcdc Sam Ravnborg
2020-04-12 18:20 ` Sam Ravnborg
2020-04-14 19:10 ` Rob Herring
2020-04-14 19:10 ` Rob Herring
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=20200415164427.GC7965@ravnborg.org \
--to=sam@ravnborg.org \
--cc=alexandre.belloni@bootlin.com \
--cc=bbrezillon@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=dri-devel@lists.freedesktop.org \
--cc=hverkuil@xs4all.nl \
--cc=linux-media@vger.kernel.org \
--cc=maxime@cerno.tech \
--cc=mchehab@kernel.org \
--cc=nicolas.ferre@microchip.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 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.