@@ -28,6 +28,7 @@ properties:
"#address-cells":
const: 1
+
"#size-cells":
const: 0
@@ -43,13 +44,84 @@ properties:
lcd-supply:
description: Regulator for LCD supply voltage.
+ "#pwm-cells":
+ description:
+ This PWM chip use the default 3 cells bindings
+ defined in ../../pwm/pwm.yaml.
+ const: 3
+
+ clocks:
+ maxItems: 2
+
+ clock-names:
+ maxItems: 2
+ items:
+ - const: lcdc_clk
+ - const: hclk
+
+ port@0:
+ type: object
+ description: Endpoints of the display controller
+
+ properties:
+
+ reg:
+ const: 0
+
+ "#address-cells":
+ const: 1
+
+ "#size-cells":
+ const: 0
+
+ endpoint@0:
+ type: object
+ description: endpoint node that include phandle to panel
+
+ properties:
+
+ reg:
+ const: 0
+
+ wiring:
+ enum:
+ - straight
+ - red-blue-reversed
+ description: |
+ The LCDC is based on a blue-green-red configuration but to adapt
+ to SW only supporting red-green-blue the data lines for red and blue
+ may be reversed.
+ See details in: http://ww1.microchip.com/downloads/en/AppNotes/doc6300.pdf
+ "straight" - default value. Data lines are not reversed, uses BGR
+ "red-blue-reversed" - red and green are reversed, uses RGB
+
+ remote-endpoint:
+ $ref: /schemas/types.yaml#/definitions/phandle
+ description:
+ phandle to the panel node
+
+ required:
+ - reg
+ - remote-endpoint
+
+ additionalProperties: false
+
+ required:
+ - "#address-cells"
+ - "#size-cells"
+ - reg
+
+ additionalProperties: false
+
display:
$ref: /schemas/types.yaml#/definitions/phandle
+ deprecated: true
description: phandle to display node
patternProperties:
"^display[0-9]$":
type: object
+ deprecated: true
description: |
Display node is required to initialize the lcd panel.
This should be in the board dts
@@ -107,12 +179,32 @@ required:
examples:
- |
+ #include <dt-bindings/clock/at91.h>
+ #include <dt-bindings/interrupt-controller/irq.h>
+
fb {
compatible = "atmel,at91sam9263-lcdc";
reg = <0x00700000 0x1000>;
- interrupts = <23 3 0>;
+ interrupts = <26 IRQ_TYPE_LEVEL_HIGH 3>;
+ clocks = <&pmc PMC_TYPE_PERIPHERAL 26>, <&pmc PMC_TYPE_PERIPHERAL 26>;
+ clock-names = "lcdc_clk", "hclk";
+
+ /* pwm for backlight */
+ #pwm-cells = <3>;
+
#address-cells = <1>;
#size-cells = <0>;
+
+ port@0 {
+ reg = <0>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ endpoint@0 {
+ reg = <0>;
+ wiring = "red-blue-reversed";
+ remote-endpoint = <&panel_input>;
+ };
+ };
};
- |
Update the Atmel LCDC binding to include: - pwm. Used for backlight - endpoints using port node Used for handle to panel - Added wiring property that is used to describe the wiring between the LCDC and the panel Existing properties that should not be used in new bindings are deprecated. Updated example to include the updated way to specify panel etc. Signed-off-by: Sam Ravnborg <sam@ravnborg.org> --- .../bindings/display/atmel/lcdc.yaml | 94 ++++++++++++++++++- 1 file changed, 93 insertions(+), 1 deletion(-)