* [PATCH v4 5/6] dt-bindings: display: Split common Solomon properties in their own schema
2023-10-14 7:15 [PATCH v4 0/6] drm/solomon: Add support for the SSD132x controller family Javier Martinez Canillas
@ 2023-10-14 7:15 ` Javier Martinez Canillas
2023-10-14 7:15 ` [PATCH v4 6/6] dt-bindings: display: Add SSD132x OLED controllers Javier Martinez Canillas
2023-10-18 12:35 ` [PATCH v4 0/6] drm/solomon: Add support for the SSD132x controller family Javier Martinez Canillas
2 siblings, 0 replies; 6+ messages in thread
From: Javier Martinez Canillas @ 2023-10-14 7:15 UTC (permalink / raw)
To: linux-kernel
Cc: Rob Herring, Peter Robinson, Thomas Zimmermann, Maxime Ripard,
Conor Dooley, Geert Uytterhoeven, Javier Martinez Canillas,
Conor Dooley, Daniel Vetter, David Airlie, Krzysztof Kozlowski,
Maarten Lankhorst, Rob Herring, devicetree, dri-devel
There are DT properties that can be shared across different Solomon OLED
Display Controller families. Split them into a separate common schema to
avoid these properties to be duplicated in different DT bindings schemas.
Suggested-by: Rob Herring <robh@kernel.org>
Signed-off-by: Javier Martinez Canillas <javierm@redhat.com>
Reviewed-by: Rob Herring <robh@kernel.org>
Acked-by: Thomas Zimmermann <tzimmermann@suse.de>
---
(no changes since v3)
Changes in v3:
- Fix "No newline at end of file" in solomon,ssd-common.yaml (Rob Herring).
- Add Rob Herring's Reviewed-by tag to patch #5.
.../bindings/display/solomon,ssd-common.yaml | 42 +++++++++++++++++++
.../bindings/display/solomon,ssd1307fb.yaml | 28 +------------
MAINTAINERS | 1 +
3 files changed, 44 insertions(+), 27 deletions(-)
create mode 100644 Documentation/devicetree/bindings/display/solomon,ssd-common.yaml
diff --git a/Documentation/devicetree/bindings/display/solomon,ssd-common.yaml b/Documentation/devicetree/bindings/display/solomon,ssd-common.yaml
new file mode 100644
index 000000000000..3e6998481a75
--- /dev/null
+++ b/Documentation/devicetree/bindings/display/solomon,ssd-common.yaml
@@ -0,0 +1,42 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/display/solomon,ssd-common.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Common properties for Solomon OLED Display Controllers
+
+maintainers:
+ - Javier Martinez Canillas <javierm@redhat.com>
+
+properties:
+ reg:
+ maxItems: 1
+
+ reset-gpios:
+ maxItems: 1
+
+ # Only required for SPI
+ dc-gpios:
+ description:
+ GPIO connected to the controller's D/C# (Data/Command) pin,
+ that is needed for 4-wire SPI to tell the controller if the
+ data sent is for a command register or the display data RAM
+ maxItems: 1
+
+ solomon,height:
+ $ref: /schemas/types.yaml#/definitions/uint32
+ description:
+ Height in pixel of the screen driven by the controller.
+ The default value is controller-dependent.
+
+ solomon,width:
+ $ref: /schemas/types.yaml#/definitions/uint32
+ description:
+ Width in pixel of the screen driven by the controller.
+ The default value is controller-dependent.
+
+allOf:
+ - $ref: /schemas/spi/spi-peripheral-props.yaml#
+
+additionalProperties: true
diff --git a/Documentation/devicetree/bindings/display/solomon,ssd1307fb.yaml b/Documentation/devicetree/bindings/display/solomon,ssd1307fb.yaml
index 20e2bd15d4d2..3afbb52d1b7f 100644
--- a/Documentation/devicetree/bindings/display/solomon,ssd1307fb.yaml
+++ b/Documentation/devicetree/bindings/display/solomon,ssd1307fb.yaml
@@ -27,38 +27,12 @@ properties:
- solomon,ssd1307
- solomon,ssd1309
- reg:
- maxItems: 1
-
pwms:
maxItems: 1
- reset-gpios:
- maxItems: 1
-
- # Only required for SPI
- dc-gpios:
- description:
- GPIO connected to the controller's D/C# (Data/Command) pin,
- that is needed for 4-wire SPI to tell the controller if the
- data sent is for a command register or the display data RAM
- maxItems: 1
-
vbat-supply:
description: The supply for VBAT
- solomon,height:
- $ref: /schemas/types.yaml#/definitions/uint32
- description:
- Height in pixel of the screen driven by the controller.
- The default value is controller-dependent.
-
- solomon,width:
- $ref: /schemas/types.yaml#/definitions/uint32
- description:
- Width in pixel of the screen driven by the controller.
- The default value is controller-dependent.
-
solomon,page-offset:
$ref: /schemas/types.yaml#/definitions/uint32
default: 1
@@ -148,7 +122,7 @@ required:
- reg
allOf:
- - $ref: /schemas/spi/spi-peripheral-props.yaml#
+ - $ref: solomon,ssd-common.yaml#
- if:
properties:
diff --git a/MAINTAINERS b/MAINTAINERS
index 987152e3be02..c63649e9ba58 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -6765,6 +6765,7 @@ DRM DRIVER FOR SOLOMON SSD130X OLED DISPLAYS
M: Javier Martinez Canillas <javierm@redhat.com>
S: Maintained
T: git git://anongit.freedesktop.org/drm/drm-misc
+F: Documentation/devicetree/bindings/display/solomon,ssd-common.yaml
F: Documentation/devicetree/bindings/display/solomon,ssd1307fb.yaml
F: drivers/gpu/drm/solomon/ssd130x*
--
2.41.0
^ permalink raw reply related [flat|nested] 6+ messages in thread* [PATCH v4 6/6] dt-bindings: display: Add SSD132x OLED controllers
2023-10-14 7:15 [PATCH v4 0/6] drm/solomon: Add support for the SSD132x controller family Javier Martinez Canillas
2023-10-14 7:15 ` [PATCH v4 5/6] dt-bindings: display: Split common Solomon properties in their own schema Javier Martinez Canillas
@ 2023-10-14 7:15 ` Javier Martinez Canillas
2023-10-20 15:34 ` Rob Herring
2023-10-18 12:35 ` [PATCH v4 0/6] drm/solomon: Add support for the SSD132x controller family Javier Martinez Canillas
2 siblings, 1 reply; 6+ messages in thread
From: Javier Martinez Canillas @ 2023-10-14 7:15 UTC (permalink / raw)
To: linux-kernel
Cc: Rob Herring, Peter Robinson, Thomas Zimmermann, Maxime Ripard,
Conor Dooley, Geert Uytterhoeven, Javier Martinez Canillas,
Conor Dooley, Daniel Vetter, David Airlie, Krzysztof Kozlowski,
Maarten Lankhorst, Rob Herring, devicetree, dri-devel
Add a Device Tree binding schema for the OLED panels based on the Solomon
SSD132x family of controllers.
Signed-off-by: Javier Martinez Canillas <javierm@redhat.com>
Reviewed-by: Rob Herring <robh@kernel.org>
Acked-by: Thomas Zimmermann <tzimmermann@suse.de>
---
(no changes since v3)
Changes in v3:
- Add Rob Herring's Reviewed-by tag to patch #6.
Changes in v2:
- Remove unnecessary 'oneOf' in the SSD132x DT binding schema (Conor Dooley).
- Remove unused DT nodes labels in the binding schema examples (Conor Dooley).
- Split out common Solomon properties into a separate schema (Rob Herring).
.../bindings/display/solomon,ssd132x.yaml | 89 +++++++++++++++++++
MAINTAINERS | 2 +-
2 files changed, 90 insertions(+), 1 deletion(-)
create mode 100644 Documentation/devicetree/bindings/display/solomon,ssd132x.yaml
diff --git a/Documentation/devicetree/bindings/display/solomon,ssd132x.yaml b/Documentation/devicetree/bindings/display/solomon,ssd132x.yaml
new file mode 100644
index 000000000000..0aa41bd9ddca
--- /dev/null
+++ b/Documentation/devicetree/bindings/display/solomon,ssd132x.yaml
@@ -0,0 +1,89 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/display/solomon,ssd132x.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Solomon SSD132x OLED Display Controllers
+
+maintainers:
+ - Javier Martinez Canillas <javierm@redhat.com>
+
+properties:
+ compatible:
+ - enum:
+ - solomon,ssd1322
+ - solomon,ssd1325
+ - solomon,ssd1327
+
+required:
+ - compatible
+ - reg
+
+allOf:
+ - $ref: solomon,ssd-common.yaml#
+
+ - if:
+ properties:
+ compatible:
+ contains:
+ const: solomon,ssd1322
+ then:
+ properties:
+ width:
+ default: 480
+ height:
+ default: 128
+
+ - if:
+ properties:
+ compatible:
+ contains:
+ const: solomon,ssd1325
+ then:
+ properties:
+ width:
+ default: 128
+ height:
+ default: 80
+
+ - if:
+ properties:
+ compatible:
+ contains:
+ const: solomon,ssd1327
+ then:
+ properties:
+ width:
+ default: 128
+ height:
+ default: 128
+
+unevaluatedProperties: false
+
+examples:
+ - |
+ i2c {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ oled@3c {
+ compatible = "solomon,ssd1327";
+ reg = <0x3c>;
+ reset-gpios = <&gpio2 7>;
+ };
+
+ };
+ - |
+ spi {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ oled@0 {
+ compatible = "solomon,ssd1327";
+ reg = <0x0>;
+ reset-gpios = <&gpio2 7>;
+ dc-gpios = <&gpio2 8>;
+ spi-max-frequency = <10000000>;
+ };
+ };
diff --git a/MAINTAINERS b/MAINTAINERS
index c63649e9ba58..4b518429458b 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -6766,7 +6766,7 @@ M: Javier Martinez Canillas <javierm@redhat.com>
S: Maintained
T: git git://anongit.freedesktop.org/drm/drm-misc
F: Documentation/devicetree/bindings/display/solomon,ssd-common.yaml
-F: Documentation/devicetree/bindings/display/solomon,ssd1307fb.yaml
+F: Documentation/devicetree/bindings/display/solomon,ssd13*.yaml
F: drivers/gpu/drm/solomon/ssd130x*
DRM DRIVER FOR ST-ERICSSON MCDE
--
2.41.0
^ permalink raw reply related [flat|nested] 6+ messages in thread* Re: [PATCH v4 6/6] dt-bindings: display: Add SSD132x OLED controllers
2023-10-14 7:15 ` [PATCH v4 6/6] dt-bindings: display: Add SSD132x OLED controllers Javier Martinez Canillas
@ 2023-10-20 15:34 ` Rob Herring
2023-10-20 22:28 ` Javier Martinez Canillas
0 siblings, 1 reply; 6+ messages in thread
From: Rob Herring @ 2023-10-20 15:34 UTC (permalink / raw)
To: Javier Martinez Canillas
Cc: linux-kernel, Peter Robinson, Thomas Zimmermann, Maxime Ripard,
Conor Dooley, Geert Uytterhoeven, Conor Dooley, Daniel Vetter,
David Airlie, Krzysztof Kozlowski, Maarten Lankhorst, devicetree,
dri-devel
On Sat, Oct 14, 2023 at 2:15 AM Javier Martinez Canillas
<javierm@redhat.com> wrote:
>
> Add a Device Tree binding schema for the OLED panels based on the Solomon
> SSD132x family of controllers.
>
> Signed-off-by: Javier Martinez Canillas <javierm@redhat.com>
> Reviewed-by: Rob Herring <robh@kernel.org>
> Acked-by: Thomas Zimmermann <tzimmermann@suse.de>
> ---
>
> (no changes since v3)
>
> Changes in v3:
> - Add Rob Herring's Reviewed-by tag to patch #6.
>
> Changes in v2:
> - Remove unnecessary 'oneOf' in the SSD132x DT binding schema (Conor Dooley).
> - Remove unused DT nodes labels in the binding schema examples (Conor Dooley).
> - Split out common Solomon properties into a separate schema (Rob Herring).
>
> .../bindings/display/solomon,ssd132x.yaml | 89 +++++++++++++++++++
> MAINTAINERS | 2 +-
> 2 files changed, 90 insertions(+), 1 deletion(-)
> create mode 100644 Documentation/devicetree/bindings/display/solomon,ssd132x.yaml
>
> diff --git a/Documentation/devicetree/bindings/display/solomon,ssd132x.yaml b/Documentation/devicetree/bindings/display/solomon,ssd132x.yaml
> new file mode 100644
> index 000000000000..0aa41bd9ddca
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/display/solomon,ssd132x.yaml
> @@ -0,0 +1,89 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/display/solomon,ssd132x.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Solomon SSD132x OLED Display Controllers
> +
> +maintainers:
> + - Javier Martinez Canillas <javierm@redhat.com>
> +
> +properties:
> + compatible:
> + - enum:
Now this is a warning in linux-next. The '-' should not be there.
Please send a fix.
Not sure why there wasn't a report, but most likely it didn't apply to v6.6-rc1.
Rob
> + - solomon,ssd1322
> + - solomon,ssd1325
> + - solomon,ssd1327
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH v4 6/6] dt-bindings: display: Add SSD132x OLED controllers
2023-10-20 15:34 ` Rob Herring
@ 2023-10-20 22:28 ` Javier Martinez Canillas
0 siblings, 0 replies; 6+ messages in thread
From: Javier Martinez Canillas @ 2023-10-20 22:28 UTC (permalink / raw)
To: Rob Herring
Cc: linux-kernel, Peter Robinson, Thomas Zimmermann, Maxime Ripard,
Conor Dooley, Geert Uytterhoeven, Conor Dooley, Daniel Vetter,
David Airlie, Krzysztof Kozlowski, Maarten Lankhorst, devicetree,
dri-devel
Rob Herring <robh@kernel.org> writes:
Hello Rob,
> On Sat, Oct 14, 2023 at 2:15 AM Javier Martinez Canillas
> <javierm@redhat.com> wrote:
[...]
>> +maintainers:
>> + - Javier Martinez Canillas <javierm@redhat.com>
>> +
>> +properties:
>> + compatible:
>> + - enum:
>
> Now this is a warning in linux-next. The '-' should not be there.
> Please send a fix.
>
Sure, I'll post a fix. Thanks for reporting the issue.
This is a leftover from when the compatible string enum was a 'oneOf'
child and the 'oneOf' got removed during the binding schema review.
> Not sure why there wasn't a report, but most likely it didn't apply to v6.6-rc1.
>
Yes, I'm not sure either. I didn't notice it when testing with:
make dt_binding_check DT_SCHEMA_FILES=Documentation/devicetree/bindings/display/solomon,ssd132x.yaml
> Rob
>
--
Best regards,
Javier Martinez Canillas
Core Platforms
Red Hat
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH v4 0/6] drm/solomon: Add support for the SSD132x controller family
2023-10-14 7:15 [PATCH v4 0/6] drm/solomon: Add support for the SSD132x controller family Javier Martinez Canillas
2023-10-14 7:15 ` [PATCH v4 5/6] dt-bindings: display: Split common Solomon properties in their own schema Javier Martinez Canillas
2023-10-14 7:15 ` [PATCH v4 6/6] dt-bindings: display: Add SSD132x OLED controllers Javier Martinez Canillas
@ 2023-10-18 12:35 ` Javier Martinez Canillas
2 siblings, 0 replies; 6+ messages in thread
From: Javier Martinez Canillas @ 2023-10-18 12:35 UTC (permalink / raw)
To: linux-kernel
Cc: Rob Herring, Peter Robinson, Thomas Zimmermann, Maxime Ripard,
Conor Dooley, Geert Uytterhoeven, Conor Dooley, Daniel Vetter,
David Airlie, Krzysztof Kozlowski, Maarten Lankhorst, Rob Herring,
devicetree, dri-devel
Javier Martinez Canillas <javierm@redhat.com> writes:
> Hello,
>
> This patch-set adds support for the family of SSD132x Solomon controllers,
> such as the SSD1322, SSD1325 and SSD1327 chips. These are used for 16 Gray
> Scale Dot Matrix OLED panels.
>
> This is a v4 that just rebases on top of commit a48e2cc92835 ("drm/ssd130x:
> Fix atomic_check for disabled planes"), that landed in drm-misc tree and
> conflicts with this series.
>
Pushed to drm-misc (drm-misc-next). Thanks!
--
Best regards,
Javier Martinez Canillas
Core Platforms
Red Hat
^ permalink raw reply [flat|nested] 6+ messages in thread