Adding support for visionox rm69299 panel driver and adding bindings for the same panel.
Harigovindan P (2): dt-bindings: display: add visionox rm69299 panel variant drm/panel: add support for rm69299 visionox panel driver
.../display/panel/visionox,rm69299.yaml | 82 +++++ drivers/gpu/drm/panel/Kconfig | 8 + drivers/gpu/drm/panel/Makefile | 1 + .../gpu/drm/panel/panel-visionox-rm69299.c | 295 ++++++++++++++++++ 4 files changed, 386 insertions(+) create mode 100755 Documentation/devicetree/bindings/display/panel/visionox,rm69299.yaml create mode 100644 drivers/gpu/drm/panel/panel-visionox-rm69299.c
Add bindings for visionox rm69299 panel.
Signed-off-by: Harigovindan P harigovi@codeaurora.org ---
Changes in v2: - Removed unwanted properties from description. - Creating source files without execute permissions(Rob Herring). Changes in v3: - Changing txt file into yaml Changes in v4: - Updating license identifier. - Moving yaml file inside panel directory. - Removing pinctrl entries. - Adding documentation for reset-gpios. Changes in v5: - No changes. Updated 2/2 Patch. Changes in v6: - Removing patternProperties. - Added " |" after description. - Setting port and reset-gpios to true. - Removing @ae94000 for dsi node. Changes in v7: - Added reg property. Changes in v8: - Rearranged additionalProperties. - Dropping improper reg property. Changes in v9: - Adding additionalProperties at the same level as 'properties' - Adding properties for "ports" which includes: -> #address-cells -> #size-cells -> port@0
.../display/panel/visionox,rm69299.yaml | 82 +++++++++++++++++++ 1 file changed, 82 insertions(+) create mode 100755 Documentation/devicetree/bindings/display/panel/visionox,rm69299.yaml
diff --git a/Documentation/devicetree/bindings/display/panel/visionox,rm69299.yaml b/Documentation/devicetree/bindings/display/panel/visionox,rm69299.yaml new file mode 100755 index 000000000000..2dd4d9471fa8 --- /dev/null +++ b/Documentation/devicetree/bindings/display/panel/visionox,rm69299.yaml @@ -0,0 +1,82 @@ +# SPDX-License-Identifier: GPL-2.0-only or BSD-2-Clause +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/display/panel/visionox,rm69299.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Visionox model RM69299 Panels Device Tree Bindings. + +maintainers: + - Harigovindan P harigovi@codeaurora.org + +description: | + This binding is for display panels using a Visionox RM692999 panel. + +allOf: + - $ref: panel-common.yaml# + +properties: + compatible: + const: visionox,rm69299-1080p-display + + reg: + maxItems: 1 + + vdda-supply: + description: | + Phandle of the regulator that provides the vdda supply voltage. + + vdd3p3-supply: + description: | + Phandle of the regulator that provides the vdd3p3 supply voltage. + + ports: + type: object + description: | + A ports node with endpoint definitions as defined in + Documentation/devicetree/bindings/media/video-interfaces.txt. + + properties: + "#address-cells": + const: 1 + + "#size-cells": + const: 0 + + port@0: + type: object + description: | + Input endpoints of the controller. + + reset-gpios: true + + additionalProperties: false + +required: + - compatible + - vdda-supply + - vdd3p3-supply + - reset-gpios + +examples: + - | + panel { + compatible = "visionox,rm69299-1080p-display"; + + vdda-supply = <&src_pp1800_l8c>; + vdd3p3-supply = <&src_pp2800_l18a>; + + reset-gpios = <&pm6150l_gpio 3 0>; + ports { + #address-cells = <1>; + #size-cells = <0>; + port@0 { + reg = <0>; + panel0_in: endpoint { + remote-endpoint = <&dsi0_out>; + }; + }; + }; + }; +... +
On Mon, Mar 23, 2020 at 10:33:15AM +0530, Harigovindan P wrote:
Add bindings for visionox rm69299 panel.
Signed-off-by: Harigovindan P harigovi@codeaurora.org
Changes in v2: - Removed unwanted properties from description. - Creating source files without execute permissions(Rob Herring). Changes in v3: - Changing txt file into yaml Changes in v4: - Updating license identifier. - Moving yaml file inside panel directory. - Removing pinctrl entries. - Adding documentation for reset-gpios. Changes in v5: - No changes. Updated 2/2 Patch. Changes in v6: - Removing patternProperties. - Added " |" after description. - Setting port and reset-gpios to true. - Removing @ae94000 for dsi node. Changes in v7: - Added reg property. Changes in v8: - Rearranged additionalProperties. - Dropping improper reg property. Changes in v9: - Adding additionalProperties at the same level as 'properties' - Adding properties for "ports" which includes: -> #address-cells -> #size-cells -> port@0
.../display/panel/visionox,rm69299.yaml | 82 +++++++++++++++++++ 1 file changed, 82 insertions(+) create mode 100755 Documentation/devicetree/bindings/display/panel/visionox,rm69299.yaml
Wrong file mode.
diff --git a/Documentation/devicetree/bindings/display/panel/visionox,rm69299.yaml b/Documentation/devicetree/bindings/display/panel/visionox,rm69299.yaml new file mode 100755 index 000000000000..2dd4d9471fa8 --- /dev/null +++ b/Documentation/devicetree/bindings/display/panel/visionox,rm69299.yaml @@ -0,0 +1,82 @@ +# SPDX-License-Identifier: GPL-2.0-only or BSD-2-Clause +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/display/panel/visionox,rm69299.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml#
+title: Visionox model RM69299 Panels Device Tree Bindings.
+maintainers:
- Harigovindan P harigovi@codeaurora.org
+description: |
- This binding is for display panels using a Visionox RM692999 panel.
+allOf:
- $ref: panel-common.yaml#
+properties:
- compatible:
- const: visionox,rm69299-1080p-display
- reg:
- maxItems: 1
- vdda-supply:
- description: |
Phandle of the regulator that provides the vdda supply voltage.
- vdd3p3-supply:
- description: |
Phandle of the regulator that provides the vdd3p3 supply voltage.
- ports:
- type: object
- description: |
A ports node with endpoint definitions as defined in
Documentation/devicetree/bindings/media/video-interfaces.txt.
- properties:
"#address-cells":
const: 1
"#size-cells":
const: 0
port@0:
As I said before, fix the example. You don't need 'ports' nor a unit address as there is only 1 port.
All you need instead of 'ports' is 'port: true' because panel-common.yaml defines it.
And 'port' should be required.
type: object
description: |
Input endpoints of the controller.
- reset-gpios: true
- additionalProperties: false
You are defining a property called 'additionalProperties'. Remove the indentation.
+required:
- compatible
- vdda-supply
- vdd3p3-supply
- reset-gpios
+examples:
- |
- panel {
compatible = "visionox,rm69299-1080p-display";
vdda-supply = <&src_pp1800_l8c>;
vdd3p3-supply = <&src_pp2800_l18a>;
reset-gpios = <&pm6150l_gpio 3 0>;
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
panel0_in: endpoint {
remote-endpoint = <&dsi0_out>;
};
};
};
- };
+...
-- 2.25.1
dri-devel@lists.freedesktop.org