Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 0cf09031 authored by Dave Airlie's avatar Dave Airlie
Browse files

Merge branch 'drm_bridge_for_4.8' of https://github.com/boddob/linux into drm-next

This is an update to the previous drm bridge pull request. The ADV7511
driver's conversion from slave encoder to bridge meant that its users
(the rcar-du kms driver) should use the bridge interface too. This pull
request now also contains a commit that updates the rcar-du's hdmi encoder
interface from slave encoder to bridge.

The other updates are as before:

- Converts the ADV7511 i2c slave encoder driver to a bridge driver.
  Adds support for the ADV7533 bridge chip.
- Add bridge driver for TC358767 (DSI/DPI to eDP) encoder chips.

* 'drm_bridge_for_4.8' of https://github.com/boddob/linux:
  drm: rcar-du: Remove i2c slave encoder interface for hdmi encoder
  drm/bridge: tc358767: Add DPI to eDP bridge driver
  dt-bindings: tc358767: add DT documentation
  dt-bindings: drm/bridge: Update bindings for ADV7533
  drm/bridge: adv7533: Change number of DSI lanes dynamically
  drm/bridge: adv7533: Use internal timing generator
  drm/bridge: adv7533: Create a MIPI DSI device
  drm/bridge: adv7533: Initial support for ADV7533
  drm/bridge: adv7511: Fix mutex deadlock when interrupts are disabled
  drm/i2c: adv7511: Move to bridge folder
  drm/i2c: adv7511: Convert to drm_bridge
parents d315495d 1d926114
Loading
Loading
Loading
Loading
+21 −5
Original line number Diff line number Diff line
Analog Device ADV7511(W)/13 HDMI Encoders
Analog Device ADV7511(W)/13/33 HDMI Encoders
-----------------------------------------

The ADV7511, ADV7511W and ADV7513 are HDMI audio and video transmitters
The ADV7511, ADV7511W, ADV7513 and ADV7533 are HDMI audio and video transmitters
compatible with HDMI 1.4 and DVI 1.0. They support color space conversion,
S/PDIF, CEC and HDCP.
S/PDIF, CEC and HDCP. ADV7533 supports the DSI interface for input pixels, while
the others support RGB interface.

Required properties:

- compatible: Should be one of "adi,adv7511", "adi,adv7511w" or "adi,adv7513"
- compatible: Should be one of:
		"adi,adv7511"
		"adi,adv7511w"
		"adi,adv7513"
		"adi,adv7533"

- reg: I2C slave address

The ADV7511 supports a large number of input data formats that differ by their
@@ -32,6 +38,11 @@ The following input format properties are required except in "rgb 1x" and
- adi,input-justification: The input bit justification ("left", "evenly",
  "right").

The following properties are required for ADV7533:

- adi,dsi-lanes: Number of DSI data lanes connected to the DSI host. It should
  be one of 1, 2, 3 or 4.

Optional properties:

- interrupts: Specifier for the ADV7511 interrupt
@@ -42,13 +53,18 @@ Optional properties:
- adi,embedded-sync: The input uses synchronization signals embedded in the
  data stream (similar to BT.656). Defaults to separate H/V synchronization
  signals.
- adi,disable-timing-generator: Only for ADV7533. Disables the internal timing
  generator. The chip will rely on the sync signals in the DSI data lanes,
  rather than generate its own timings for HDMI output.

Required nodes:

The ADV7511 has two video ports. Their connections are modelled using the OF
graph bindings specified in Documentation/devicetree/bindings/graph.txt.

- Video port 0 for the RGB or YUV input
- Video port 0 for the RGB, YUV or DSI input. In the case of ADV7533, the
  remote endpoint phandle should be a reference to a valid mipi_dsi_host device
  node.
- Video port 1 for the HDMI output


+53 −0
Original line number Diff line number Diff line
Toshiba TC358767 eDP bridge bindings

Required properties:
 - compatible: "toshiba,tc358767"
 - reg: i2c address of the bridge, 0x68 or 0x0f, depending on bootstrap pins
 - clock-names: should be "ref"
 - clocks: OF device-tree clock specification for refclk input. The reference
   clock rate must be 13 MHz, 19.2 MHz, 26 MHz, or 38.4 MHz.

Optional properties:
 - shutdown-gpios: OF device-tree gpio specification for SD pin
                   (active high shutdown input)
 - reset-gpios: OF device-tree gpio specification for RSTX pin
                (active low system reset)
 - ports: the ports node can contain video interface port nodes to connect
   to a DPI/DSI source and to an eDP/DP sink according to [1][2]:
    - port@0: DSI input port
    - port@1: DPI input port
    - port@2: eDP/DP output port

[1]: Documentation/devicetree/bindings/graph.txt
[2]: Documentation/devicetree/bindings/media/video-interfaces.txt

Example:
	edp-bridge@68 {
		compatible = "toshiba,tc358767";
		reg = <0x68>;
		shutdown-gpios = <&gpio3 23 GPIO_ACTIVE_HIGH>;
		reset-gpios = <&gpio3 24 GPIO_ACTIVE_LOW>;
		clock-names = "ref";
		clocks = <&edp_refclk>;

		ports {
			#address-cells = <1>;
			#size-cells = <0>;

			port@1 {
				reg = <1>;

				bridge_in: endpoint {
					remote-endpoint = <&dpi_out>;
				};
			};

			port@2 {
				reg = <2>;

				bridge_out: endpoint {
					remote-endpoint = <&panel_in>;
				};
			};
		};
	};
+11 −0
Original line number Diff line number Diff line
@@ -58,6 +58,17 @@ config DRM_SII902X
	---help---
	  Silicon Image sii902x bridge chip driver.

config DRM_TOSHIBA_TC358767
	tristate "Toshiba TC358767 eDP bridge"
	depends on OF
	select DRM_KMS_HELPER
	select REGMAP_I2C
	select DRM_PANEL
	---help---
	  Toshiba TC358767 eDP bridge chip driver.

source "drivers/gpu/drm/bridge/analogix/Kconfig"

source "drivers/gpu/drm/bridge/adv7511/Kconfig"

endmenu
+2 −0
Original line number Diff line number Diff line
@@ -6,4 +6,6 @@ obj-$(CONFIG_DRM_DW_HDMI_AHB_AUDIO) += dw-hdmi-ahb-audio.o
obj-$(CONFIG_DRM_NXP_PTN3460) += nxp-ptn3460.o
obj-$(CONFIG_DRM_PARADE_PS8622) += parade-ps8622.o
obj-$(CONFIG_DRM_SII902X) += sii902x.o
obj-$(CONFIG_DRM_TOSHIBA_TC358767) += tc358767.o
obj-$(CONFIG_DRM_ANALOGIX_DP) += analogix/
obj-$(CONFIG_DRM_I2C_ADV7511) += adv7511/
+15 −0
Original line number Diff line number Diff line
config DRM_I2C_ADV7511
	tristate "AV7511 encoder"
	depends on OF
	select DRM_KMS_HELPER
	select REGMAP_I2C
	help
	  Support for the Analog Device ADV7511(W) and ADV7513 HDMI encoders.

config DRM_I2C_ADV7533
	bool "ADV7533 encoder"
	depends on DRM_I2C_ADV7511
	select DRM_MIPI_DSI
	default y
	help
	  Support for the Analog Devices ADV7533 DSI to HDMI encoder.
Loading