-
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-2018-04-26' of git://anongit.freedesktop.org…
…/drm/drm-misc into drm-next drm-misc-next for v4.18: UAPI Changes: - Add support for a generic plane alpha property to sun4i, rcar-du and atmel-hclcdc. (Maxime) Core Changes: - Stop looking at legacy plane->fb and crtc members in atomic drivers. (Ville) - mode_valid return type fixes. (Luc) - Handle zpos normalization in the core. (Peter) Driver Changes: - Implement CTM, plane alpha and generic async cursor support in vc4. (Stefan) - Various fixes for HPD and aux chan in drm_bridge/analogix_dp. (Lin, Zain, Douglas) - Add support for MIPI DSI to sun4i. (Maxime) Signed-off-by: Dave Airlie <airlied@redhat.com> # gpg: Signature made Thu 26 Apr 2018 08:21:01 PM AEST # gpg: using RSA key FE558C72A67013C3 # gpg: Can't check signature: public key not found Link: https://patchwork.freedesktop.org/patch/msgid/b33da7eb-efc9-ae6f-6f69-b7acd6df6797@mblankhorst.nl
- Loading branch information
Showing
165 changed files
with
8,499 additions
and
1,096 deletions.
There are no files selected for viewing
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
133 changes: 133 additions & 0 deletions
133
Documentation/devicetree/bindings/display/bridge/cdns,dsi.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 |
---|---|---|
@@ -0,0 +1,133 @@ | ||
Cadence DSI bridge | ||
================== | ||
|
||
The Cadence DSI bridge is a DPI to DSI bridge supporting up to 4 DSI lanes. | ||
|
||
Required properties: | ||
- compatible: should be set to "cdns,dsi". | ||
- reg: physical base address and length of the controller's registers. | ||
- interrupts: interrupt line connected to the DSI bridge. | ||
- clocks: DSI bridge clocks. | ||
- clock-names: must contain "dsi_p_clk" and "dsi_sys_clk". | ||
- phys: phandle link to the MIPI D-PHY controller. | ||
- phy-names: must contain "dphy". | ||
- #address-cells: must be set to 1. | ||
- #size-cells: must be set to 0. | ||
|
||
Optional properties: | ||
- resets: DSI reset lines. | ||
- reset-names: can contain "dsi_p_rst". | ||
|
||
Required subnodes: | ||
- ports: Ports as described in Documentation/devicetree/bindings/graph.txt. | ||
2 ports are available: | ||
* port 0: this port is only needed if some of your DSI devices are | ||
controlled through an external bus like I2C or SPI. Can have at | ||
most 4 endpoints. The endpoint number is directly encoding the | ||
DSI virtual channel used by this device. | ||
* port 1: represents the DPI input. | ||
Other ports will be added later to support the new kind of inputs. | ||
|
||
- one subnode per DSI device connected on the DSI bus. Each DSI device should | ||
contain a reg property encoding its virtual channel. | ||
|
||
Cadence DPHY | ||
============ | ||
|
||
Cadence DPHY block. | ||
|
||
Required properties: | ||
- compatible: should be set to "cdns,dphy". | ||
- reg: physical base address and length of the DPHY registers. | ||
- clocks: DPHY reference clocks. | ||
- clock-names: must contain "psm" and "pll_ref". | ||
- #phy-cells: must be set to 0. | ||
|
||
|
||
Example: | ||
dphy0: dphy@fd0e0000{ | ||
compatible = "cdns,dphy"; | ||
reg = <0x0 0xfd0e0000 0x0 0x1000>; | ||
clocks = <&psm_clk>, <&pll_ref_clk>; | ||
clock-names = "psm", "pll_ref"; | ||
#phy-cells = <0>; | ||
}; | ||
|
||
dsi0: dsi@fd0c0000 { | ||
compatible = "cdns,dsi"; | ||
reg = <0x0 0xfd0c0000 0x0 0x1000>; | ||
clocks = <&pclk>, <&sysclk>; | ||
clock-names = "dsi_p_clk", "dsi_sys_clk"; | ||
interrupts = <1>; | ||
phys = <&dphy0>; | ||
phy-names = "dphy"; | ||
#address-cells = <1>; | ||
#size-cells = <0>; | ||
|
||
ports { | ||
#address-cells = <1>; | ||
#size-cells = <0>; | ||
|
||
port@1 { | ||
reg = <1>; | ||
dsi0_dpi_input: endpoint { | ||
remote-endpoint = <&xxx_dpi_output>; | ||
}; | ||
}; | ||
}; | ||
|
||
panel: dsi-dev@0 { | ||
compatible = "<vendor,panel>"; | ||
reg = <0>; | ||
}; | ||
}; | ||
|
||
or | ||
|
||
dsi0: dsi@fd0c0000 { | ||
compatible = "cdns,dsi"; | ||
reg = <0x0 0xfd0c0000 0x0 0x1000>; | ||
clocks = <&pclk>, <&sysclk>; | ||
clock-names = "dsi_p_clk", "dsi_sys_clk"; | ||
interrupts = <1>; | ||
phys = <&dphy1>; | ||
phy-names = "dphy"; | ||
#address-cells = <1>; | ||
#size-cells = <0>; | ||
|
||
ports { | ||
#address-cells = <1>; | ||
#size-cells = <0>; | ||
|
||
port@0 { | ||
reg = <0>; | ||
#address-cells = <1>; | ||
#size-cells = <0>; | ||
|
||
dsi0_output: endpoint@0 { | ||
reg = <0>; | ||
remote-endpoint = <&dsi_panel_input>; | ||
}; | ||
}; | ||
|
||
port@1 { | ||
reg = <1>; | ||
dsi0_dpi_input: endpoint { | ||
remote-endpoint = <&xxx_dpi_output>; | ||
}; | ||
}; | ||
}; | ||
}; | ||
|
||
i2c@xxx { | ||
panel: panel@59 { | ||
compatible = "<vendor,panel>"; | ||
reg = <0x59>; | ||
|
||
port { | ||
dsi_panel_input: endpoint { | ||
remote-endpoint = <&dsi0_output>; | ||
}; | ||
}; | ||
}; | ||
}; |
60 changes: 60 additions & 0 deletions
60
Documentation/devicetree/bindings/display/bridge/thine,thc63lvd1024.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 |
---|---|---|
@@ -0,0 +1,60 @@ | ||
Thine Electronics THC63LVD1024 LVDS decoder | ||
------------------------------------------- | ||
|
||
The THC63LVD1024 is a dual link LVDS receiver designed to convert LVDS streams | ||
to parallel data outputs. The chip supports single/dual input/output modes, | ||
handling up to two LVDS input streams and up to two digital CMOS/TTL outputs. | ||
|
||
Single or dual operation mode, output data mapping and DDR output modes are | ||
configured through input signals and the chip does not expose any control bus. | ||
|
||
Required properties: | ||
- compatible: Shall be "thine,thc63lvd1024" | ||
- vcc-supply: Power supply for TTL output, TTL CLOCKOUT signal, LVDS input, | ||
PPL and digital circuitry | ||
|
||
Optional properties: | ||
- powerdown-gpios: Power down GPIO signal, pin name "/PDWN". Active low | ||
- oe-gpios: Output enable GPIO signal, pin name "OE". Active high | ||
|
||
The THC63LVD1024 video port connections are modeled according | ||
to OF graph bindings specified by Documentation/devicetree/bindings/graph.txt | ||
|
||
Required video port nodes: | ||
- port@0: First LVDS input port | ||
- port@2: First digital CMOS/TTL parallel output | ||
|
||
Optional video port nodes: | ||
- port@1: Second LVDS input port | ||
- port@3: Second digital CMOS/TTL parallel output | ||
|
||
Example: | ||
-------- | ||
|
||
thc63lvd1024: lvds-decoder { | ||
compatible = "thine,thc63lvd1024"; | ||
|
||
vcc-supply = <®_lvds_vcc>; | ||
powerdown-gpios = <&gpio4 15 GPIO_ACTIVE_LOW>; | ||
|
||
ports { | ||
#address-cells = <1>; | ||
#size-cells = <0>; | ||
|
||
port@0 { | ||
reg = <0>; | ||
|
||
lvds_dec_in_0: endpoint { | ||
remote-endpoint = <&lvds_out>; | ||
}; | ||
}; | ||
|
||
port@2{ | ||
reg = <2>; | ||
|
||
lvds_dec_out_2: endpoint { | ||
remote-endpoint = <&adv7511_in>; | ||
}; | ||
}; | ||
}; | ||
}; |
93 changes: 93 additions & 0 deletions
93
Documentation/devicetree/bindings/display/sunxi/sun6i-dsi.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 |
---|---|---|
@@ -0,0 +1,93 @@ | ||
Allwinner A31 DSI Encoder | ||
========================= | ||
|
||
The DSI pipeline consists of two separate blocks: the DSI controller | ||
itself, and its associated D-PHY. | ||
|
||
DSI Encoder | ||
----------- | ||
|
||
The DSI Encoder generates the DSI signal from the TCON's. | ||
|
||
Required properties: | ||
- compatible: value must be one of: | ||
* allwinner,sun6i-a31-mipi-dsi | ||
- reg: base address and size of memory-mapped region | ||
- interrupts: interrupt associated to this IP | ||
- clocks: phandles to the clocks feeding the DSI encoder | ||
* bus: the DSI interface clock | ||
* mod: the DSI module clock | ||
- clock-names: the clock names mentioned above | ||
- phys: phandle to the D-PHY | ||
- phy-names: must be "dphy" | ||
- resets: phandle to the reset controller driving the encoder | ||
|
||
- ports: A ports node with endpoint definitions as defined in | ||
Documentation/devicetree/bindings/media/video-interfaces.txt. The | ||
first port should be the input endpoint, usually coming from the | ||
associated TCON. | ||
|
||
Any MIPI-DSI device attached to this should be described according to | ||
the bindings defined in ../mipi-dsi-bus.txt | ||
|
||
D-PHY | ||
----- | ||
|
||
Required properties: | ||
- compatible: value must be one of: | ||
* allwinner,sun6i-a31-mipi-dphy | ||
- reg: base address and size of memory-mapped region | ||
- clocks: phandles to the clocks feeding the DSI encoder | ||
* bus: the DSI interface clock | ||
* mod: the DSI module clock | ||
- clock-names: the clock names mentioned above | ||
- resets: phandle to the reset controller driving the encoder | ||
|
||
Example: | ||
|
||
dsi0: dsi@1ca0000 { | ||
compatible = "allwinner,sun6i-a31-mipi-dsi"; | ||
reg = <0x01ca0000 0x1000>; | ||
interrupts = <GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>; | ||
clocks = <&ccu CLK_BUS_MIPI_DSI>, | ||
<&ccu CLK_DSI_SCLK>; | ||
clock-names = "bus", "mod"; | ||
resets = <&ccu RST_BUS_MIPI_DSI>; | ||
phys = <&dphy0>; | ||
phy-names = "dphy"; | ||
#address-cells = <1>; | ||
#size-cells = <0>; | ||
|
||
panel@0 { | ||
compatible = "bananapi,lhr050h41", "ilitek,ili9881c"; | ||
reg = <0>; | ||
power-gpios = <&pio 1 7 GPIO_ACTIVE_HIGH>; /* PB07 */ | ||
reset-gpios = <&r_pio 0 5 GPIO_ACTIVE_LOW>; /* PL05 */ | ||
backlight = <&pwm_bl>; | ||
}; | ||
|
||
ports { | ||
#address-cells = <1>; | ||
#size-cells = <0>; | ||
|
||
port@0 { | ||
#address-cells = <1>; | ||
#size-cells = <0>; | ||
reg = <0>; | ||
|
||
dsi0_in_tcon0: endpoint { | ||
remote-endpoint = <&tcon0_out_dsi0>; | ||
}; | ||
}; | ||
}; | ||
}; | ||
|
||
dphy0: d-phy@1ca1000 { | ||
compatible = "allwinner,sun6i-a31-mipi-dphy"; | ||
reg = <0x01ca1000 0x1000>; | ||
clocks = <&ccu CLK_BUS_MIPI_DSI>, | ||
<&ccu CLK_DSI_DPHY>; | ||
clock-names = "bus", "mod"; | ||
resets = <&ccu RST_BUS_MIPI_DSI>; | ||
#phy-cells = <0>; | ||
}; |
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 |
---|---|---|
|
@@ -12,6 +12,7 @@ GPU Driver Documentation | |
tve200 | ||
vc4 | ||
bridge/dw-hdmi | ||
xen-front | ||
|
||
.. only:: subproject and html | ||
|
||
|
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
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
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,31 @@ | ||
==================================================== | ||
drm/xen-front Xen para-virtualized frontend driver | ||
==================================================== | ||
|
||
This frontend driver implements Xen para-virtualized display | ||
according to the display protocol described at | ||
include/xen/interface/io/displif.h | ||
|
||
Driver modes of operation in terms of display buffers used | ||
========================================================== | ||
|
||
.. kernel-doc:: drivers/gpu/drm/xen/xen_drm_front.h | ||
:doc: Driver modes of operation in terms of display buffers used | ||
|
||
Buffers allocated by the frontend driver | ||
---------------------------------------- | ||
|
||
.. kernel-doc:: drivers/gpu/drm/xen/xen_drm_front.h | ||
:doc: Buffers allocated by the frontend driver | ||
|
||
Buffers allocated by the backend | ||
-------------------------------- | ||
|
||
.. kernel-doc:: drivers/gpu/drm/xen/xen_drm_front.h | ||
:doc: Buffers allocated by the backend | ||
|
||
Driver limitations | ||
================== | ||
|
||
.. kernel-doc:: drivers/gpu/drm/xen/xen_drm_front.h | ||
:doc: Driver limitations |
Oops, something went wrong.