Commit 3c37b6d9 authored by Arnd Bergmann's avatar Arnd Bergmann

Merge tag 'v4.16-rockchip-dts64-1' of...

Merge tag 'v4.16-rockchip-dts64-1' of ssh://gitolite.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip into next/dt

Pull "Rockchip dts64 changes for 4.16" from Heiko Stübner:

General RK3399 gets Mipi nodes, fixes for usb3 support and better support
for the type-c phys. The Kevin Chromebooks based on rk3399 now can use their
internal edp displays. RK3328 gets its efuse node and Mali450 gpu node,
which actually produces already some nice results with the WIP Lima driver.

* tag 'v4.16-rockchip-dts64-1' of ssh://gitolite.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip:
  arm64: dts: rockchip: Add efuse device node for RK3328 SoC
  arm64: dts: rockchip: add rk3328 mali gpu node
  dt-bindings: gpu: mali-utgard: add rockchip,rk3328-mali compatible
  arm64: dts: rockchip: add extcon nodes and enable tcphy rk3399-gru
  arm64: dts: rockchip: add usb3-phy otg-port support for rk3399
  arm64: dts: rockchip: add reset property for dwc3 controllers on rk3399
  arm64: dts: rockchip: add the aclk_usb3 clocks for USB3 on rk3399
  arm64: dts: rockchip: add pd_usb3 power-domain node for rk3399
  arm64: dts: rockchip: Enable edp disaplay on kevin
  arm64: dts: rockchip: update mipi cells for RK3399
  arm64: dts: rockchip: add mipi_dsi1 support for rk3399
  arm64: dts: rockchip: add rk3399 DSI0 reset
parents 2c012e4b 13bc2c0a
...@@ -17,6 +17,7 @@ Required properties: ...@@ -17,6 +17,7 @@ Required properties:
+ rockchip,rk3066-mali + rockchip,rk3066-mali
+ rockchip,rk3188-mali + rockchip,rk3188-mali
+ rockchip,rk3228-mali + rockchip,rk3228-mali
+ rockchip,rk3328-mali
+ stericsson,db8500-mali + stericsson,db8500-mali
- reg: Physical base address and length of the GPU registers - reg: Physical base address and length of the GPU registers
......
...@@ -531,6 +531,31 @@ tsadc: tsadc@ff250000 { ...@@ -531,6 +531,31 @@ tsadc: tsadc@ff250000 {
status = "disabled"; status = "disabled";
}; };
efuse: efuse@ff260000 {
compatible = "rockchip,rk3328-efuse";
reg = <0x0 0xff260000 0x0 0x50>;
#address-cells = <1>;
#size-cells = <1>;
clocks = <&cru SCLK_EFUSE>;
clock-names = "pclk_efuse";
rockchip,efuse-size = <0x20>;
/* Data cells */
efuse_id: id@7 {
reg = <0x07 0x10>;
};
cpu_leakage: cpu-leakage@17 {
reg = <0x17 0x1>;
};
logic_leakage: logic-leakage@19 {
reg = <0x19 0x1>;
};
efuse_cpu_version: cpu-version@1a {
reg = <0x1a 0x1>;
bits = <3 3>;
};
};
saradc: adc@ff280000 { saradc: adc@ff280000 {
compatible = "rockchip,rk3328-saradc", "rockchip,rk3399-saradc"; compatible = "rockchip,rk3328-saradc", "rockchip,rk3399-saradc";
reg = <0x0 0xff280000 0x0 0x100>; reg = <0x0 0xff280000 0x0 0x100>;
...@@ -543,6 +568,28 @@ saradc: adc@ff280000 { ...@@ -543,6 +568,28 @@ saradc: adc@ff280000 {
status = "disabled"; status = "disabled";
}; };
gpu: gpu@ff300000 {
compatible = "rockchip,rk3328-mali", "arm,mali-450";
reg = <0x0 0xff300000 0x0 0x40000>;
interrupts = <GIC_SPI 90 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 87 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 93 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 88 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 91 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 92 IRQ_TYPE_LEVEL_HIGH>;
interrupt-names = "gp",
"gpmmu",
"pp",
"pp0",
"ppmmu0",
"pp1",
"ppmmu1";
clocks = <&cru ACLK_GPU>, <&cru ACLK_GPU>;
clock-names = "bus", "core";
resets = <&cru SRST_GPU_A>;
};
h265e_mmu: iommu@ff330200 { h265e_mmu: iommu@ff330200 {
compatible = "rockchip,iommu"; compatible = "rockchip,iommu";
reg = <0x0 0xff330200 0 0x100>; reg = <0x0 0xff330200 0 0x100>;
......
...@@ -93,6 +93,18 @@ backlight: backlight { ...@@ -93,6 +93,18 @@ backlight: backlight {
pwm-delay-us = <10000>; pwm-delay-us = <10000>;
}; };
edp_panel: edp-panel {
compatible = "sharp,lq123p1jx31", "simple-panel";
backlight = <&backlight>;
power-supply = <&pp3300_disp>;
ports {
panel_in_edp: endpoint {
remote-endpoint = <&edp_out_panel>;
};
};
};
thermistor_ppvar_bigcpu: thermistor-ppvar-bigcpu { thermistor_ppvar_bigcpu: thermistor-ppvar-bigcpu {
compatible = "murata,ncp15wb473"; compatible = "murata,ncp15wb473";
pullup-uv = <1800000>; pullup-uv = <1800000>;
...@@ -268,6 +280,23 @@ touchscreen@4b { ...@@ -268,6 +280,23 @@ touchscreen@4b {
}; };
}; };
&edp {
status = "okay";
ports {
edp_out: port@1 {
reg = <1>;
#address-cells = <1>;
#size-cells = <0>;
edp_out_panel: endpoint@0 {
reg = <0>;
remote-endpoint = <&panel_in_edp>;
};
};
};
};
&ppvar_bigcpu_pwm { &ppvar_bigcpu_pwm {
regulator-min-microvolt = <798674>; regulator-min-microvolt = <798674>;
regulator-max-microvolt = <1302172>; regulator-max-microvolt = <1302172>;
......
...@@ -855,6 +855,20 @@ cros_ec_pwm: ec-pwm { ...@@ -855,6 +855,20 @@ cros_ec_pwm: ec-pwm {
compatible = "google,cros-ec-pwm"; compatible = "google,cros-ec-pwm";
#pwm-cells = <1>; #pwm-cells = <1>;
}; };
usbc_extcon0: extcon@0 {
compatible = "google,extcon-usbc-cros-ec";
google,usb-port-id = <0>;
#extcon-cells = <0>;
};
usbc_extcon1: extcon@1 {
compatible = "google,extcon-usbc-cros-ec";
google,usb-port-id = <1>;
#extcon-cells = <0>;
};
}; };
}; };
...@@ -865,6 +879,16 @@ &tsadc { ...@@ -865,6 +879,16 @@ &tsadc {
rockchip,hw-tshut-polarity = <1>; /* tshut polarity 0:LOW 1:HIGH */ rockchip,hw-tshut-polarity = <1>; /* tshut polarity 0:LOW 1:HIGH */
}; };
&tcphy0 {
status = "okay";
extcon = <&usbc_extcon0>;
};
&tcphy1 {
status = "okay";
extcon = <&usbc_extcon1>;
};
&u2phy0 { &u2phy0 {
status = "okay"; status = "okay";
}; };
...@@ -911,6 +935,7 @@ &usb_host1_ohci { ...@@ -911,6 +935,7 @@ &usb_host1_ohci {
&usbdrd3_0 { &usbdrd3_0 {
status = "okay"; status = "okay";
extcon = <&usbc_extcon0>;
}; };
&usbdrd_dwc3_0 { &usbdrd_dwc3_0 {
...@@ -920,6 +945,7 @@ &usbdrd_dwc3_0 { ...@@ -920,6 +945,7 @@ &usbdrd_dwc3_0 {
&usbdrd3_1 { &usbdrd3_1 {
status = "okay"; status = "okay";
extcon = <&usbc_extcon1>;
}; };
&usbdrd_dwc3_1 { &usbdrd_dwc3_1 {
...@@ -927,6 +953,22 @@ &usbdrd_dwc3_1 { ...@@ -927,6 +953,22 @@ &usbdrd_dwc3_1 {
dr_mode = "host"; dr_mode = "host";
}; };
&vopb {
status = "okay";
};
&vopb_mmu {
status = "okay";
};
&vopl {
status = "okay";
};
&vopl_mmu {
status = "okay";
};
#include <arm/cros-ec-keyboard.dtsi> #include <arm/cros-ec-keyboard.dtsi>
#include <arm/cros-ec-sbs.dtsi> #include <arm/cros-ec-sbs.dtsi>
......
...@@ -397,9 +397,13 @@ usbdrd3_0: usb@fe800000 { ...@@ -397,9 +397,13 @@ usbdrd3_0: usb@fe800000 {
#size-cells = <2>; #size-cells = <2>;
ranges; ranges;
clocks = <&cru SCLK_USB3OTG0_REF>, <&cru SCLK_USB3OTG0_SUSPEND>, clocks = <&cru SCLK_USB3OTG0_REF>, <&cru SCLK_USB3OTG0_SUSPEND>,
<&cru ACLK_USB3OTG0>, <&cru ACLK_USB3_GRF>; <&cru ACLK_USB3OTG0>, <&cru ACLK_USB3_RKSOC_AXI_PERF>,
<&cru ACLK_USB3>, <&cru ACLK_USB3_GRF>;
clock-names = "ref_clk", "suspend_clk", clock-names = "ref_clk", "suspend_clk",
"bus_clk", "grf_clk"; "bus_clk", "aclk_usb3_rksoc_axi_perf",
"aclk_usb3", "grf_clk";
resets = <&cru SRST_A_USB3_OTG0>;
reset-names = "usb3-otg";
status = "disabled"; status = "disabled";
usbdrd_dwc3_0: dwc3 { usbdrd_dwc3_0: dwc3 {
...@@ -407,14 +411,15 @@ usbdrd_dwc3_0: dwc3 { ...@@ -407,14 +411,15 @@ usbdrd_dwc3_0: dwc3 {
reg = <0x0 0xfe800000 0x0 0x100000>; reg = <0x0 0xfe800000 0x0 0x100000>;
interrupts = <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH 0>; interrupts = <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH 0>;
dr_mode = "otg"; dr_mode = "otg";
phys = <&u2phy0_otg>; phys = <&u2phy0_otg>, <&tcphy0_usb3>;
phy-names = "usb2-phy"; phy-names = "usb2-phy", "usb3-phy";
phy_type = "utmi_wide"; phy_type = "utmi_wide";
snps,dis_enblslpm_quirk; snps,dis_enblslpm_quirk;
snps,dis-u2-freeclk-exists-quirk; snps,dis-u2-freeclk-exists-quirk;
snps,dis_u2_susphy_quirk; snps,dis_u2_susphy_quirk;
snps,dis-del-phy-power-chg-quirk; snps,dis-del-phy-power-chg-quirk;
snps,dis-tx-ipgap-linecheck-quirk; snps,dis-tx-ipgap-linecheck-quirk;
power-domains = <&power RK3399_PD_USB3>;
status = "disabled"; status = "disabled";
}; };
}; };
...@@ -425,9 +430,13 @@ usbdrd3_1: usb@fe900000 { ...@@ -425,9 +430,13 @@ usbdrd3_1: usb@fe900000 {
#size-cells = <2>; #size-cells = <2>;
ranges; ranges;
clocks = <&cru SCLK_USB3OTG1_REF>, <&cru SCLK_USB3OTG1_SUSPEND>, clocks = <&cru SCLK_USB3OTG1_REF>, <&cru SCLK_USB3OTG1_SUSPEND>,
<&cru ACLK_USB3OTG1>, <&cru ACLK_USB3_GRF>; <&cru ACLK_USB3OTG1>, <&cru ACLK_USB3_RKSOC_AXI_PERF>,
<&cru ACLK_USB3>, <&cru ACLK_USB3_GRF>;
clock-names = "ref_clk", "suspend_clk", clock-names = "ref_clk", "suspend_clk",
"bus_clk", "grf_clk"; "bus_clk", "aclk_usb3_rksoc_axi_perf",
"aclk_usb3", "grf_clk";
resets = <&cru SRST_A_USB3_OTG1>;
reset-names = "usb3-otg";
status = "disabled"; status = "disabled";
usbdrd_dwc3_1: dwc3 { usbdrd_dwc3_1: dwc3 {
...@@ -435,14 +444,15 @@ usbdrd_dwc3_1: dwc3 { ...@@ -435,14 +444,15 @@ usbdrd_dwc3_1: dwc3 {
reg = <0x0 0xfe900000 0x0 0x100000>; reg = <0x0 0xfe900000 0x0 0x100000>;
interrupts = <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH 0>; interrupts = <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH 0>;
dr_mode = "otg"; dr_mode = "otg";
phys = <&u2phy1_otg>; phys = <&u2phy1_otg>, <&tcphy1_usb3>;
phy-names = "usb2-phy"; phy-names = "usb2-phy", "usb3-phy";
phy_type = "utmi_wide"; phy_type = "utmi_wide";
snps,dis_enblslpm_quirk; snps,dis_enblslpm_quirk;
snps,dis-u2-freeclk-exists-quirk; snps,dis-u2-freeclk-exists-quirk;
snps,dis_u2_susphy_quirk; snps,dis_u2_susphy_quirk;
snps,dis-del-phy-power-chg-quirk; snps,dis-del-phy-power-chg-quirk;
snps,dis-tx-ipgap-linecheck-quirk; snps,dis-tx-ipgap-linecheck-quirk;
power-domains = <&power RK3399_PD_USB3>;
status = "disabled"; status = "disabled";
}; };
}; };
...@@ -991,6 +1001,12 @@ pd_sdioaudio@RK3399_PD_SDIOAUDIO { ...@@ -991,6 +1001,12 @@ pd_sdioaudio@RK3399_PD_SDIOAUDIO {
clocks = <&cru HCLK_SDIO>; clocks = <&cru HCLK_SDIO>;
pm_qos = <&qos_sdioaudio>; pm_qos = <&qos_sdioaudio>;
}; };
pd_usb3@RK3399_PD_USB3 {
reg = <RK3399_PD_USB3>;
clocks = <&cru ACLK_USB3>;
pm_qos = <&qos_usb_otg0>,
<&qos_usb_otg1>;
};
pd_vio@RK3399_PD_VIO { pd_vio@RK3399_PD_VIO {
reg = <RK3399_PD_VIO>; reg = <RK3399_PD_VIO>;
#address-cells = <1>; #address-cells = <1>;
...@@ -1526,6 +1542,11 @@ vopl_out_hdmi: endpoint@2 { ...@@ -1526,6 +1542,11 @@ vopl_out_hdmi: endpoint@2 {
reg = <2>; reg = <2>;
remote-endpoint = <&hdmi_in_vopl>; remote-endpoint = <&hdmi_in_vopl>;
}; };
vopl_out_mipi1: endpoint@3 {
reg = <3>;
remote-endpoint = <&mipi1_in_vopl>;
};
}; };
}; };
...@@ -1573,6 +1594,11 @@ vopb_out_hdmi: endpoint@2 { ...@@ -1573,6 +1594,11 @@ vopb_out_hdmi: endpoint@2 {
reg = <2>; reg = <2>;
remote-endpoint = <&hdmi_in_vopb>; remote-endpoint = <&hdmi_in_vopb>;
}; };
vopb_out_mipi1: endpoint@3 {
reg = <3>;
remote-endpoint = <&mipi1_in_vopb>;
};
}; };
}; };
...@@ -1648,11 +1674,17 @@ mipi_dsi: mipi@ff960000 { ...@@ -1648,11 +1674,17 @@ mipi_dsi: mipi@ff960000 {
<&cru SCLK_DPHY_TX0_CFG>, <&cru PCLK_VIO_GRF>; <&cru SCLK_DPHY_TX0_CFG>, <&cru PCLK_VIO_GRF>;
clock-names = "ref", "pclk", "phy_cfg", "grf"; clock-names = "ref", "pclk", "phy_cfg", "grf";
power-domains = <&power RK3399_PD_VIO>; power-domains = <&power RK3399_PD_VIO>;
resets = <&cru SRST_P_MIPI_DSI0>;
reset-names = "apb";
rockchip,grf = <&grf>; rockchip,grf = <&grf>;
status = "disabled"; status = "disabled";
ports { ports {
mipi_in: port { #address-cells = <1>;
#size-cells = <0>;
mipi_in: port@0 {
reg = <0>;
#address-cells = <1>; #address-cells = <1>;
#size-cells = <0>; #size-cells = <0>;
...@@ -1668,6 +1700,41 @@ mipi_in_vopl: endpoint@1 { ...@@ -1668,6 +1700,41 @@ mipi_in_vopl: endpoint@1 {
}; };
}; };
mipi_dsi1: mipi@ff968000 {
compatible = "rockchip,rk3399-mipi-dsi", "snps,dw-mipi-dsi";
reg = <0x0 0xff968000 0x0 0x8000>;
interrupts = <GIC_SPI 46 IRQ_TYPE_LEVEL_HIGH 0>;
clocks = <&cru SCLK_DPHY_PLL>, <&cru PCLK_MIPI_DSI1>,
<&cru SCLK_DPHY_TX1RX1_CFG>, <&cru PCLK_VIO_GRF>;
clock-names = "ref", "pclk", "phy_cfg", "grf";
power-domains = <&power RK3399_PD_VIO>;
resets = <&cru SRST_P_MIPI_DSI1>;
reset-names = "apb";
rockchip,grf = <&grf>;
status = "disabled";
ports {
#address-cells = <1>;
#size-cells = <0>;
mipi1_in: port@0 {
reg = <0>;
#address-cells = <1>;
#size-cells = <0>;
mipi1_in_vopb: endpoint@0 {
reg = <0>;
remote-endpoint = <&vopb_out_mipi1>;
};
mipi1_in_vopl: endpoint@1 {
reg = <1>;
remote-endpoint = <&vopl_out_mipi1>;
};
};
};
};
edp: edp@ff970000 { edp: edp@ff970000 {
compatible = "rockchip,rk3399-edp"; compatible = "rockchip,rk3399-edp";
reg = <0x0 0xff970000 0x0 0x8000>; reg = <0x0 0xff970000 0x0 0x8000>;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment