Files
linux/arch/arm64/boot/dts/hisilicon/kirin970-drm.dtsi
T
zwx305167 cae64574fd dts: arm64: add drm for hikey970.
Add dts and defconfig support HDMI&LCD display function for hikey970.

Signed-off-by: zwx305167 <zwx305167@notesmail.huawei.com>
2018-03-02 15:24:26 +08:00

136 lines
3.1 KiB
Devicetree
Executable File

/{
dpe: dpe@E8600000 {
compatible = "hisilicon,kirin970-dpe";
status = "ok"
dss_version_tag = <0x40>;
// DSS, PERI_CRG, SCTRL, PCTRL, NOC_DSS_Service_Target, PMCTRL, MEDIA_CRG
reg = <0 0xE8600000 0 0xC0000>,
<0 0xFFF35000 0 0x1000>,
<0 0xFFF0A000 0 0x1000>,
<0 0xE8A09000 0 0x1000>,
<0 0xE86C0000 0 0x10000>,
<0 0xFFF31000 0 0x1000>,
<0 0xE87FF000 0 0x1000>;
// dss-pdp
interrupts = <0 245 4>;
/*regulator_dsssubsys-supply = <&dsssubsys>;
regulator_mmbuf-supply = <&mmbuf>;*/
clocks = <&media1_crg KIRIN970_ACLK_GATE_DSS>,
<&media1_crg KIRIN970_PCLK_GATE_DSS>,
<&media1_crg KIRIN970_CLK_GATE_EDC0>,
<&media1_crg KIRIN970_CLK_GATE_LDI0>,
<&media1_crg KIRIN970_CLK_GATE_DSS_AXI_MM>,
<&media1_crg KIRIN970_PCLK_GATE_MMBUF>,
<&crg_ctrl KIRIN970_PCLK_GATE_PCTRL>;
clock-names = "aclk_dss",
"pclk_dss",
"clk_edc0",
"clk_ldi0",
"clk_dss_axi_mm",
"pclk_mmbuf",
"pclk_pctrl";
dma-coherent;
port {
dpe_out: endpoint {
remote-endpoint = <&dsi_in>;
};
};
iommu_info {
start-addr = <0x8000>;
size = <0xbfff8000>;
};
};
dsi: dsi@E8601000 {
compatible = "hisilicon,kirin970-dsi";
status = "ok"
reg = <0 0xE8601000 0 0x7F000>,
<0 0xFFF35000 0 0x1000>,
<0 0xE8A09000 0 0x1000>;
clocks = <&crg_ctrl KIRIN970_CLK_GATE_TXDPHY0_REF>,
<&crg_ctrl KIRIN970_CLK_GATE_TXDPHY1_REF>,
<&crg_ctrl KIRIN970_CLK_GATE_TXDPHY0_CFG>,
<&crg_ctrl KIRIN970_CLK_GATE_TXDPHY1_CFG>,
<&crg_ctrl KIRIN970_PCLK_GATE_DSI0>,
<&crg_ctrl KIRIN970_PCLK_GATE_DSI1>;
clock-names = "clk_txdphy0_ref",
"clk_txdphy1_ref",
"clk_txdphy0_cfg",
"clk_txdphy1_cfg",
"pclk_dsi0",
"pclk_dsi1";
#address-cells = <1>;
#size-cells = <0>;
mux-gpio = <&gpio25 7 0>;//HDMI_SEL(GPIO_207)
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
dsi_in: endpoint {
remote-endpoint = <&dpe_out>;
};
};
port@1 {
#address-cells = <1>;
#size-cells = <0>;
reg = <1>;
dsi_out0: endpoint@0 {
reg = <0>;
remote-endpoint = <&adv7533_in>;
};
dsi_out1: endpoint@1 {
reg = <1>;
remote-endpoint = <&panel0_in>;
};
};
};
panel@1 {
compatible = "hisilicon,mipi-hikey";
#address-cells = <2>;
#size-cells = <2>;
status = "ok"
reg = <1>;
panel-width-mm = <94>;
panel-height-mm = <151>;
vdd-supply = <&ldo3>;
pwr-en-gpio = <&gpio21 3 0>;//GPIO_171
bl-en-gpio = <&gpio6 4 0>;//GPIO_052
pwm-gpio = <&gpio23 1 0>;//GPIO_185
port {
panel0_in: endpoint {
remote-endpoint = <&dsi_out1>;
};
};
};
};
panel_pwm {
#address-cells = <2>;
#size-cells = <2>;
compatible = "hisilicon,hisipwm";
reg = <0 0xE8A04000 0 0x1000>,
<0 0xFFF35000 0 0x1000>;
clocks = <&crg_ctrl KIRIN970_CLK_GATE_PWM>;
clock-names = "clk_pwm";
pinctrl-names = "default","idle";
pinctrl-0 = <&gpio185_pmx_func &gpio185_cfg_func>;
pinctrl-1 = <&gpio185_pmx_idle &gpio185_cfg_idle>;
status = "ok"
};
};