-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge tag 'drm-misc-next-2020-03-09' of git://anongit.freedesktop.org…
…/drm/drm-misc into drm-next drm-misc-next for 5.7: UAPI Changes: Cross-subsystem Changes: Core Changes: Driver Changes: - fb-helper: Remove drm_fb_helper_{add,add_all,remove}_one_connector - fbdev: some cleanups and dead-code removal - Conversions to simple-encoder - zero-length array removal - Panel: panel-dpi support in panel-simple, Novatek NT35510, Elida KD35T133, Signed-off-by: Dave Airlie <airlied@redhat.com> From: Maxime Ripard <maxime@cerno.tech> Link: https://patchwork.freedesktop.org/patch/msgid/20200309135439.dicfnbo4ikj4tkz7@gilmour
- Loading branch information
Showing
94 changed files
with
3,018 additions
and
924 deletions.
There are no files selected for viewing
124 changes: 1 addition & 123 deletions
124
Documentation/devicetree/bindings/display/panel/display-timing.txt
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,123 +1 @@ | ||
display-timing bindings | ||
======================= | ||
|
||
display-timings node | ||
-------------------- | ||
|
||
required properties: | ||
- none | ||
|
||
optional properties: | ||
- native-mode: The native mode for the display, in case multiple modes are | ||
provided. When omitted, assume the first node is the native. | ||
|
||
timing subnode | ||
-------------- | ||
|
||
required properties: | ||
- hactive, vactive: display resolution | ||
- hfront-porch, hback-porch, hsync-len: horizontal display timing parameters | ||
in pixels | ||
vfront-porch, vback-porch, vsync-len: vertical display timing parameters in | ||
lines | ||
- clock-frequency: display clock in Hz | ||
|
||
optional properties: | ||
- hsync-active: hsync pulse is active low/high/ignored | ||
- vsync-active: vsync pulse is active low/high/ignored | ||
- de-active: data-enable pulse is active low/high/ignored | ||
- pixelclk-active: with | ||
- active high = drive pixel data on rising edge/ | ||
sample data on falling edge | ||
- active low = drive pixel data on falling edge/ | ||
sample data on rising edge | ||
- ignored = ignored | ||
- syncclk-active: with | ||
- active high = drive sync on rising edge/ | ||
sample sync on falling edge of pixel | ||
clock | ||
- active low = drive sync on falling edge/ | ||
sample sync on rising edge of pixel | ||
clock | ||
- omitted = same configuration as pixelclk-active | ||
- interlaced (bool): boolean to enable interlaced mode | ||
- doublescan (bool): boolean to enable doublescan mode | ||
- doubleclk (bool): boolean to enable doubleclock mode | ||
|
||
All the optional properties that are not bool follow the following logic: | ||
<1>: high active | ||
<0>: low active | ||
omitted: not used on hardware | ||
|
||
There are different ways of describing the capabilities of a display. The | ||
devicetree representation corresponds to the one commonly found in datasheets | ||
for displays. If a display supports multiple signal timings, the native-mode | ||
can be specified. | ||
|
||
The parameters are defined as: | ||
|
||
+----------+-------------------------------------+----------+-------+ | ||
| | ^ | | | | ||
| | |vback_porch | | | | ||
| | v | | | | ||
+----------#######################################----------+-------+ | ||
| # ^ # | | | ||
| # | # | | | ||
| hback # | # hfront | hsync | | ||
| porch # | hactive # porch | len | | ||
|<-------->#<-------+--------------------------->#<-------->|<----->| | ||
| # | # | | | ||
| # |vactive # | | | ||
| # | # | | | ||
| # v # | | | ||
+----------#######################################----------+-------+ | ||
| | ^ | | | | ||
| | |vfront_porch | | | | ||
| | v | | | | ||
+----------+-------------------------------------+----------+-------+ | ||
| | ^ | | | | ||
| | |vsync_len | | | | ||
| | v | | | | ||
+----------+-------------------------------------+----------+-------+ | ||
|
||
Note: In addition to being used as subnode(s) of display-timings, the timing | ||
subnode may also be used on its own. This is appropriate if only one mode | ||
need be conveyed. In this case, the node should be named 'panel-timing'. | ||
|
||
|
||
Example: | ||
|
||
display-timings { | ||
native-mode = <&timing0>; | ||
timing0: 1080p24 { | ||
/* 1920x1080p24 */ | ||
clock-frequency = <52000000>; | ||
hactive = <1920>; | ||
vactive = <1080>; | ||
hfront-porch = <25>; | ||
hback-porch = <25>; | ||
hsync-len = <25>; | ||
vback-porch = <2>; | ||
vfront-porch = <2>; | ||
vsync-len = <2>; | ||
hsync-active = <1>; | ||
}; | ||
}; | ||
|
||
Every required property also supports the use of ranges, so the commonly used | ||
datasheet description with minimum, typical and maximum values can be used. | ||
|
||
Example: | ||
|
||
timing1: timing { | ||
/* 1920x1080p24 */ | ||
clock-frequency = <148500000>; | ||
hactive = <1920>; | ||
vactive = <1080>; | ||
hsync-len = <0 44 60>; | ||
hfront-porch = <80 88 95>; | ||
hback-porch = <100 148 160>; | ||
vfront-porch = <0 4 6>; | ||
vback-porch = <0 36 50>; | ||
vsync-len = <0 5 6>; | ||
}; | ||
See display-timings.yaml in this directory. |
77 changes: 77 additions & 0 deletions
77
Documentation/devicetree/bindings/display/panel/display-timings.yaml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,77 @@ | ||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) | ||
%YAML 1.2 | ||
--- | ||
$id: http://devicetree.org/schemas/display/panel/display-timings.yaml# | ||
$schema: http://devicetree.org/meta-schemas/core.yaml# | ||
|
||
title: display timing bindings | ||
|
||
maintainers: | ||
- Thierry Reding <thierry.reding@gmail.com> | ||
- Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> | ||
- Sam Ravnborg <sam@ravnborg.org> | ||
|
||
description: | | ||
A display panel may be able to handle several display timings, | ||
with different resolutions. | ||
The display-timings node makes it possible to specify the timing | ||
and to specify the timing that is native for the display. | ||
properties: | ||
$nodename: | ||
const: display-timings | ||
|
||
native-mode: | ||
$ref: /schemas/types.yaml#/definitions/phandle | ||
description: | | ||
The default display timing is the one specified as native-mode. | ||
If no native-mode is specified then the first node is assumed the | ||
native mode. | ||
patternProperties: | ||
"^timing": | ||
type: object | ||
allOf: | ||
- $ref: panel-timing.yaml# | ||
|
||
additionalProperties: false | ||
|
||
examples: | ||
- |+ | ||
/* | ||
* Example that specifies panel timing using minimum, typical, | ||
* maximum values as commonly used in datasheet description. | ||
* timing1 is the native-mode. | ||
*/ | ||
display-timings { | ||
native-mode = <&timing1>; | ||
timing0 { | ||
/* 1920x1080p24 */ | ||
clock-frequency = <148500000>; | ||
hactive = <1920>; | ||
vactive = <1080>; | ||
hsync-len = <0 44 60>; | ||
hfront-porch = <80 88 95>; | ||
hback-porch = <100 148 160>; | ||
vfront-porch = <0 4 6>; | ||
vback-porch = <0 36 50>; | ||
vsync-len = <0 5 6>; | ||
}; | ||
timing1 { | ||
/* 1920x1080p24 */ | ||
clock-frequency = <52000000>; | ||
hactive = <1920>; | ||
vactive = <1080>; | ||
hfront-porch = <25>; | ||
hback-porch = <25>; | ||
hsync-len = <0 25 25>; | ||
vback-porch = <2>; | ||
vfront-porch = <2>; | ||
vsync-len = <2>; | ||
hsync-active = <1>; | ||
pixelclk-active = <1>; | ||
}; | ||
}; | ||
... |
49 changes: 49 additions & 0 deletions
49
Documentation/devicetree/bindings/display/panel/elida,kd35t133.yaml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,49 @@ | ||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) | ||
%YAML 1.2 | ||
--- | ||
$id: http://devicetree.org/schemas/display/panel/elida,kd35t133.yaml# | ||
$schema: http://devicetree.org/meta-schemas/core.yaml# | ||
|
||
title: Elida KD35T133 3.5in 320x480 DSI panel | ||
|
||
maintainers: | ||
- Heiko Stuebner <heiko.stuebner@theobroma-systems.com> | ||
|
||
allOf: | ||
- $ref: panel-common.yaml# | ||
|
||
properties: | ||
compatible: | ||
const: elida,kd35t133 | ||
reg: true | ||
backlight: true | ||
reset-gpios: true | ||
iovcc-supply: | ||
description: regulator that supplies the iovcc voltage | ||
vdd-supply: | ||
description: regulator that supplies the vdd voltage | ||
|
||
required: | ||
- compatible | ||
- reg | ||
- backlight | ||
- iovcc-supply | ||
- vdd-supply | ||
|
||
additionalProperties: false | ||
|
||
examples: | ||
- | | ||
dsi@ff450000 { | ||
#address-cells = <1>; | ||
#size-cells = <0>; | ||
panel@0 { | ||
compatible = "elida,kd35t133"; | ||
reg = <0>; | ||
backlight = <&backlight>; | ||
iovcc-supply = <&vcc_1v8>; | ||
vdd-supply = <&vcc3v3_lcd>; | ||
}; | ||
}; | ||
... |
56 changes: 56 additions & 0 deletions
56
Documentation/devicetree/bindings/display/panel/novatek,nt35510.yaml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,56 @@ | ||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) | ||
%YAML 1.2 | ||
--- | ||
$id: http://devicetree.org/schemas/display/panel/novatek,nt35510.yaml# | ||
$schema: http://devicetree.org/meta-schemas/core.yaml# | ||
|
||
title: Novatek NT35510-based display panels | ||
|
||
maintainers: | ||
- Linus Walleij <linus.walleij@linaro.org> | ||
|
||
allOf: | ||
- $ref: panel-common.yaml# | ||
|
||
properties: | ||
compatible: | ||
items: | ||
- const: hydis,hva40wv1 | ||
- const: novatek,nt35510 | ||
description: This indicates the panel manufacturer of the panel | ||
that is in turn using the NT35510 panel driver. The compatible | ||
string determines how the NT35510 panel driver shall be configured | ||
to work with the indicated panel. The novatek,nt35510 compatible shall | ||
always be provided as a fallback. | ||
reg: true | ||
reset-gpios: true | ||
vdd-supply: | ||
description: regulator that supplies the vdd voltage | ||
vddi-supply: | ||
description: regulator that supplies the vddi voltage | ||
backlight: true | ||
|
||
required: | ||
- compatible | ||
- reg | ||
|
||
additionalProperties: false | ||
|
||
examples: | ||
- | | ||
#include <dt-bindings/gpio/gpio.h> | ||
dsi@a0351000 { | ||
#address-cells = <1>; | ||
#size-cells = <0>; | ||
panel { | ||
compatible = "hydis,hva40wv1", "novatek,nt35510"; | ||
reg = <0>; | ||
vdd-supply = <&ab8500_ldo_aux4_reg>; | ||
vddi-supply = <&ab8500_ldo_aux6_reg>; | ||
reset-gpios = <&gpio4 11 GPIO_ACTIVE_LOW>; | ||
backlight = <&gpio_bl>; | ||
}; | ||
}; | ||
... |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
50 changes: 0 additions & 50 deletions
50
Documentation/devicetree/bindings/display/panel/panel-dpi.txt
This file was deleted.
Oops, something went wrong.
Oops, something went wrong.