-
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-msm-next-2021-06-23b' of https://gitlab.freedesktop.or…
…g/drm/msm into drm-next * devcoredump support for display errors * dpu: irq cleanup/refactor * dpu: dt bindings conversion to yaml * dsi: dt bindings conversion to yaml * mdp5: alpha/blend_mode/zpos support * a6xx: cached coherent buffer support * a660 support * gpu iova fault improvements: - info about which block triggered the fault, etc - generation of gpu devcoredump on fault * assortment of other cleanups and fixes Signed-off-by: Dave Airlie <airlied@redhat.com> From: Rob Clark <robdclark@gmail.com> Link: https://patchwork.freedesktop.org/patch/msgid/CAF6AEGs4=qsGBBbyn-4JWqW4-YUSTKh67X3DsPQ=T2D9aXKqNA@mail.gmail.com
- Loading branch information
Showing
133 changed files
with
7,203 additions
and
6,274 deletions.
There are no files selected for viewing
146 changes: 146 additions & 0 deletions
146
Documentation/devicetree/bindings/display/msm/dp-controller.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,146 @@ | ||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) | ||
%YAML 1.2 | ||
--- | ||
$id: http://devicetree.org/schemas/display/msm/dp-controller.yaml# | ||
$schema: http://devicetree.org/meta-schemas/core.yaml# | ||
|
||
title: MSM Display Port Controller | ||
|
||
maintainers: | ||
- Kuogee Hsieh <khsieh@codeaurora.org> | ||
|
||
description: | | ||
Device tree bindings for DisplayPort host controller for MSM targets | ||
that are compatible with VESA DisplayPort interface specification. | ||
properties: | ||
compatible: | ||
enum: | ||
- qcom,sc7180-dp | ||
|
||
reg: | ||
maxItems: 1 | ||
|
||
interrupts: | ||
maxItems: 1 | ||
|
||
clocks: | ||
items: | ||
- description: AHB clock to enable register access | ||
- description: Display Port AUX clock | ||
- description: Display Port Link clock | ||
- description: Link interface clock between DP and PHY | ||
- description: Display Port Pixel clock | ||
|
||
clock-names: | ||
items: | ||
- const: core_iface | ||
- const: core_aux | ||
- const: ctrl_link | ||
- const: ctrl_link_iface | ||
- const: stream_pixel | ||
|
||
assigned-clocks: | ||
items: | ||
- description: link clock source | ||
- description: pixel clock source | ||
|
||
assigned-clock-parents: | ||
items: | ||
- description: phy 0 parent | ||
- description: phy 1 parent | ||
|
||
phys: | ||
maxItems: 1 | ||
|
||
phy-names: | ||
items: | ||
- const: dp | ||
|
||
operating-points-v2: | ||
maxItems: 1 | ||
|
||
power-domains: | ||
maxItems: 1 | ||
|
||
"#sound-dai-cells": | ||
const: 0 | ||
|
||
ports: | ||
$ref: /schemas/graph.yaml#/properties/ports | ||
properties: | ||
port@0: | ||
$ref: /schemas/graph.yaml#/properties/port | ||
description: Input endpoint of the controller | ||
|
||
port@1: | ||
$ref: /schemas/graph.yaml#/properties/port | ||
description: Output endpoint of the controller | ||
|
||
required: | ||
- compatible | ||
- reg | ||
- interrupts | ||
- clocks | ||
- clock-names | ||
- phys | ||
- phy-names | ||
- "#sound-dai-cells" | ||
- power-domains | ||
- ports | ||
|
||
additionalProperties: false | ||
|
||
examples: | ||
- | | ||
#include <dt-bindings/interrupt-controller/arm-gic.h> | ||
#include <dt-bindings/clock/qcom,dispcc-sc7180.h> | ||
#include <dt-bindings/power/qcom-aoss-qmp.h> | ||
#include <dt-bindings/power/qcom-rpmpd.h> | ||
displayport-controller@ae90000 { | ||
compatible = "qcom,sc7180-dp"; | ||
reg = <0xae90000 0x1400>; | ||
interrupt-parent = <&mdss>; | ||
interrupts = <12>; | ||
clocks = <&dispcc DISP_CC_MDSS_AHB_CLK>, | ||
<&dispcc DISP_CC_MDSS_DP_AUX_CLK>, | ||
<&dispcc DISP_CC_MDSS_DP_LINK_CLK>, | ||
<&dispcc DISP_CC_MDSS_DP_LINK_INTF_CLK>, | ||
<&dispcc DISP_CC_MDSS_DP_PIXEL_CLK>; | ||
clock-names = "core_iface", "core_aux", | ||
"ctrl_link", | ||
"ctrl_link_iface", "stream_pixel"; | ||
assigned-clocks = <&dispcc DISP_CC_MDSS_DP_LINK_CLK_SRC>, | ||
<&dispcc DISP_CC_MDSS_DP_PIXEL_CLK_SRC>; | ||
assigned-clock-parents = <&dp_phy 0>, <&dp_phy 1>; | ||
phys = <&dp_phy>; | ||
phy-names = "dp"; | ||
#sound-dai-cells = <0>; | ||
power-domains = <&rpmhpd SC7180_CX>; | ||
ports { | ||
#address-cells = <1>; | ||
#size-cells = <0>; | ||
port@0 { | ||
reg = <0>; | ||
endpoint { | ||
remote-endpoint = <&dpu_intf0_out>; | ||
}; | ||
}; | ||
port@1 { | ||
reg = <1>; | ||
endpoint { | ||
remote-endpoint = <&typec>; | ||
}; | ||
}; | ||
}; | ||
}; | ||
... |
228 changes: 228 additions & 0 deletions
228
Documentation/devicetree/bindings/display/msm/dpu-sc7180.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,228 @@ | ||
# SPDX-License-Identifier: GPL-2.0-only or BSD-2-Clause | ||
%YAML 1.2 | ||
--- | ||
$id: http://devicetree.org/schemas/display/msm/dpu-sc7180.yaml# | ||
$schema: http://devicetree.org/meta-schemas/core.yaml# | ||
|
||
title: Qualcomm Display DPU dt properties for SC7180 target | ||
|
||
maintainers: | ||
- Krishna Manikandan <mkrishn@codeaurora.org> | ||
|
||
description: | | ||
Device tree bindings for MSM Mobile Display Subsystem(MDSS) that encapsulates | ||
sub-blocks like DPU display controller, DSI and DP interfaces etc. Device tree | ||
bindings of MDSS and DPU are mentioned for SC7180 target. | ||
properties: | ||
compatible: | ||
items: | ||
- const: qcom,sc7180-mdss | ||
|
||
reg: | ||
maxItems: 1 | ||
|
||
reg-names: | ||
const: mdss | ||
|
||
power-domains: | ||
maxItems: 1 | ||
|
||
clocks: | ||
items: | ||
- description: Display AHB clock from gcc | ||
- description: Display AHB clock from dispcc | ||
- description: Display core clock | ||
|
||
clock-names: | ||
items: | ||
- const: iface | ||
- const: ahb | ||
- const: core | ||
|
||
interrupts: | ||
maxItems: 1 | ||
|
||
interrupt-controller: true | ||
|
||
"#address-cells": true | ||
|
||
"#size-cells": true | ||
|
||
"#interrupt-cells": | ||
const: 1 | ||
|
||
iommus: | ||
items: | ||
- description: Phandle to apps_smmu node with SID mask for Hard-Fail port0 | ||
|
||
ranges: true | ||
|
||
interconnects: | ||
items: | ||
- description: Interconnect path specifying the port ids for data bus | ||
|
||
interconnect-names: | ||
const: mdp0-mem | ||
|
||
patternProperties: | ||
"^display-controller@[0-9a-f]+$": | ||
type: object | ||
description: Node containing the properties of DPU. | ||
|
||
properties: | ||
compatible: | ||
items: | ||
- const: qcom,sc7180-dpu | ||
|
||
reg: | ||
items: | ||
- description: Address offset and size for mdp register set | ||
- description: Address offset and size for vbif register set | ||
|
||
reg-names: | ||
items: | ||
- const: mdp | ||
- const: vbif | ||
|
||
clocks: | ||
items: | ||
- description: Display hf axi clock | ||
- description: Display ahb clock | ||
- description: Display rotator clock | ||
- description: Display lut clock | ||
- description: Display core clock | ||
- description: Display vsync clock | ||
|
||
clock-names: | ||
items: | ||
- const: bus | ||
- const: iface | ||
- const: rot | ||
- const: lut | ||
- const: core | ||
- const: vsync | ||
|
||
interrupts: | ||
maxItems: 1 | ||
|
||
power-domains: | ||
maxItems: 1 | ||
|
||
operating-points-v2: true | ||
|
||
ports: | ||
$ref: /schemas/graph.yaml#/properties/ports | ||
description: | | ||
Contains the list of output ports from DPU device. These ports | ||
connect to interfaces that are external to the DPU hardware, | ||
such as DSI, DP etc. Each output port contains an endpoint that | ||
describes how it is connected to an external interface. | ||
properties: | ||
port@0: | ||
$ref: /schemas/graph.yaml#/properties/port | ||
description: DPU_INTF1 (DSI1) | ||
|
||
port@2: | ||
$ref: /schemas/graph.yaml#/properties/port | ||
description: DPU_INTF0 (DP) | ||
|
||
required: | ||
- port@0 | ||
|
||
required: | ||
- compatible | ||
- reg | ||
- reg-names | ||
- clocks | ||
- interrupts | ||
- power-domains | ||
- operating-points-v2 | ||
- ports | ||
|
||
required: | ||
- compatible | ||
- reg | ||
- reg-names | ||
- power-domains | ||
- clocks | ||
- interrupts | ||
- interrupt-controller | ||
- iommus | ||
- ranges | ||
|
||
additionalProperties: false | ||
|
||
examples: | ||
- | | ||
#include <dt-bindings/clock/qcom,dispcc-sc7180.h> | ||
#include <dt-bindings/clock/qcom,gcc-sc7180.h> | ||
#include <dt-bindings/interrupt-controller/arm-gic.h> | ||
#include <dt-bindings/interconnect/qcom,sdm845.h> | ||
#include <dt-bindings/power/qcom-rpmpd.h> | ||
display-subsystem@ae00000 { | ||
#address-cells = <1>; | ||
#size-cells = <1>; | ||
compatible = "qcom,sc7180-mdss"; | ||
reg = <0xae00000 0x1000>; | ||
reg-names = "mdss"; | ||
power-domains = <&dispcc MDSS_GDSC>; | ||
clocks = <&gcc GCC_DISP_AHB_CLK>, | ||
<&dispcc DISP_CC_MDSS_AHB_CLK>, | ||
<&dispcc DISP_CC_MDSS_MDP_CLK>; | ||
clock-names = "iface", "ahb", "core"; | ||
interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>; | ||
interrupt-controller; | ||
#interrupt-cells = <1>; | ||
interconnects = <&mmss_noc MASTER_MDP0 &mc_virt SLAVE_EBI1>; | ||
interconnect-names = "mdp0-mem"; | ||
iommus = <&apps_smmu 0x800 0x2>; | ||
ranges; | ||
display-controller@ae01000 { | ||
compatible = "qcom,sc7180-dpu"; | ||
reg = <0x0ae01000 0x8f000>, | ||
<0x0aeb0000 0x2008>; | ||
reg-names = "mdp", "vbif"; | ||
clocks = <&gcc GCC_DISP_HF_AXI_CLK>, | ||
<&dispcc DISP_CC_MDSS_AHB_CLK>, | ||
<&dispcc DISP_CC_MDSS_ROT_CLK>, | ||
<&dispcc DISP_CC_MDSS_MDP_LUT_CLK>, | ||
<&dispcc DISP_CC_MDSS_MDP_CLK>, | ||
<&dispcc DISP_CC_MDSS_VSYNC_CLK>; | ||
clock-names = "bus", "iface", "rot", "lut", "core", | ||
"vsync"; | ||
interrupt-parent = <&mdss>; | ||
interrupts = <0>; | ||
power-domains = <&rpmhpd SC7180_CX>; | ||
operating-points-v2 = <&mdp_opp_table>; | ||
ports { | ||
#address-cells = <1>; | ||
#size-cells = <0>; | ||
port@0 { | ||
reg = <0>; | ||
dpu_intf1_out: endpoint { | ||
remote-endpoint = <&dsi0_in>; | ||
}; | ||
}; | ||
port@2 { | ||
reg = <2>; | ||
dpu_intf0_out: endpoint { | ||
remote-endpoint = <&dp_in>; | ||
}; | ||
}; | ||
}; | ||
}; | ||
}; | ||
... |
Oops, something went wrong.