Commit 0f56e657 authored by Linus Torvalds's avatar Linus Torvalds

Merge tag 'arm-fixes-6.4-3' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc

Pull ARM SoC fixes from Arnd Bergmann:
 "The final bug fixes for Qualcomm and Rockchips came in, all of them
  for devicetree files:

   - Devices on Qualcomm SC7180/SC7280 that are cache coherent are now
     marked so correctly to fix a regression after a change in kernel
     behavior

   - Rockchips has a few minor changes for correctness of regulator and
     cache properties, as well as fixes for incorrect behavior of the
     RK3568 PCI controller and reset pins on two boards"

* tag 'arm-fixes-6.4-3' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc:
  arm64: dts: qcom: sc7280: Mark SCM as dma-coherent for chrome devices
  arm64: dts: qcom: sc7180: Mark SCM as dma-coherent for trogdor
  arm64: dts: qcom: sc7180: Mark SCM as dma-coherent for IDP
  dt-bindings: firmware: qcom,scm: Document that SCM can be dma-coherent
  arm64: dts: rockchip: Fix rk356x PCIe register and range mappings
  arm64: dts: rockchip: fix button reset pin for nanopi r5c
  arm64: dts: rockchip: fix nEXTRST on SOQuartz
  arm64: dts: rockchip: add missing cache properties
  arm64: dts: rockchip: fix USB regulator on ROCK64
parents 569fa939 ed8ff046
...@@ -71,6 +71,8 @@ properties: ...@@ -71,6 +71,8 @@ properties:
minItems: 1 minItems: 1
maxItems: 3 maxItems: 3
dma-coherent: true
interconnects: interconnects:
maxItems: 1 maxItems: 1
......
...@@ -393,6 +393,11 @@ &remoteproc_mpss { ...@@ -393,6 +393,11 @@ &remoteproc_mpss {
qcom,spare-regs = <&tcsr_regs_2 0xb3e4>; qcom,spare-regs = <&tcsr_regs_2 0xb3e4>;
}; };
&scm {
/* TF-A firmware maps memory cached so mark dma-coherent to match. */
dma-coherent;
};
&sdhc_1 { &sdhc_1 {
status = "okay"; status = "okay";
......
...@@ -892,6 +892,11 @@ &remoteproc_mpss { ...@@ -892,6 +892,11 @@ &remoteproc_mpss {
qcom,spare-regs = <&tcsr_regs_2 0xb3e4>; qcom,spare-regs = <&tcsr_regs_2 0xb3e4>;
}; };
&scm {
/* TF-A firmware maps memory cached so mark dma-coherent to match. */
dma-coherent;
};
&sdhc_1 { &sdhc_1 {
status = "okay"; status = "okay";
......
...@@ -369,7 +369,7 @@ CLUSTER_SLEEP_0: cluster-sleep-0 { ...@@ -369,7 +369,7 @@ CLUSTER_SLEEP_0: cluster-sleep-0 {
}; };
firmware { firmware {
scm { scm: scm {
compatible = "qcom,scm-sc7180", "qcom,scm"; compatible = "qcom,scm-sc7180", "qcom,scm";
}; };
}; };
......
...@@ -79,6 +79,11 @@ &remoteproc_wpss { ...@@ -79,6 +79,11 @@ &remoteproc_wpss {
firmware-name = "ath11k/WCN6750/hw1.0/wpss.mdt"; firmware-name = "ath11k/WCN6750/hw1.0/wpss.mdt";
}; };
&scm {
/* TF-A firmware maps memory cached so mark dma-coherent to match. */
dma-coherent;
};
&wifi { &wifi {
status = "okay"; status = "okay";
......
...@@ -656,7 +656,7 @@ memory@80000000 { ...@@ -656,7 +656,7 @@ memory@80000000 {
}; };
firmware { firmware {
scm { scm: scm {
compatible = "qcom,scm-sc7280", "qcom,scm"; compatible = "qcom,scm-sc7280", "qcom,scm";
}; };
}; };
......
...@@ -97,6 +97,7 @@ CPU_SLEEP: cpu-sleep { ...@@ -97,6 +97,7 @@ CPU_SLEEP: cpu-sleep {
l2: l2-cache { l2: l2-cache {
compatible = "cache"; compatible = "cache";
cache-level = <2>; cache-level = <2>;
cache-unified;
}; };
}; };
......
...@@ -37,7 +37,8 @@ vcc_sd: sdmmc-regulator { ...@@ -37,7 +37,8 @@ vcc_sd: sdmmc-regulator {
vin-supply = <&vcc_io>; vin-supply = <&vcc_io>;
}; };
vcc_host_5v: vcc-host-5v-regulator { /* Common enable line for all of the rails mentioned in the labels */
vcc_host_5v: vcc_host1_5v: vcc_otg_5v: vcc-host-5v-regulator {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
gpio = <&gpio0 RK_PA2 GPIO_ACTIVE_LOW>; gpio = <&gpio0 RK_PA2 GPIO_ACTIVE_LOW>;
pinctrl-names = "default"; pinctrl-names = "default";
...@@ -48,17 +49,6 @@ vcc_host_5v: vcc-host-5v-regulator { ...@@ -48,17 +49,6 @@ vcc_host_5v: vcc-host-5v-regulator {
vin-supply = <&vcc_sys>; vin-supply = <&vcc_sys>;
}; };
vcc_host1_5v: vcc_otg_5v: vcc-host1-5v-regulator {
compatible = "regulator-fixed";
gpio = <&gpio0 RK_PA2 GPIO_ACTIVE_LOW>;
pinctrl-names = "default";
pinctrl-0 = <&usb20_host_drv>;
regulator-name = "vcc_host1_5v";
regulator-always-on;
regulator-boot-on;
vin-supply = <&vcc_sys>;
};
vcc_sys: vcc-sys { vcc_sys: vcc-sys {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
regulator-name = "vcc_sys"; regulator-name = "vcc_sys";
......
...@@ -103,6 +103,7 @@ CPU_SLEEP: cpu-sleep { ...@@ -103,6 +103,7 @@ CPU_SLEEP: cpu-sleep {
l2: l2-cache0 { l2: l2-cache0 {
compatible = "cache"; compatible = "cache";
cache-level = <2>; cache-level = <2>;
cache-unified;
}; };
}; };
......
...@@ -28,6 +28,16 @@ vcc_5v: vcc-5v-regulator { ...@@ -28,6 +28,16 @@ vcc_5v: vcc-5v-regulator {
regulator-max-microvolt = <5000000>; regulator-max-microvolt = <5000000>;
vin-supply = <&vcc12v_dcin>; vin-supply = <&vcc12v_dcin>;
}; };
vcc_sd_pwr: vcc-sd-pwr-regulator {
compatible = "regulator-fixed";
regulator-name = "vcc_sd_pwr";
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
vin-supply = <&vcc3v3_sys>;
};
}; };
/* phy for pcie */ /* phy for pcie */
...@@ -130,13 +140,7 @@ &saradc { ...@@ -130,13 +140,7 @@ &saradc {
}; };
&sdmmc0 { &sdmmc0 {
vmmc-supply = <&sdmmc_pwr>; vmmc-supply = <&vcc_sd_pwr>;
status = "okay";
};
&sdmmc_pwr {
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
status = "okay"; status = "okay";
}; };
......
...@@ -104,16 +104,6 @@ vcc3v3_sys: vcc3v3-sys-regulator { ...@@ -104,16 +104,6 @@ vcc3v3_sys: vcc3v3-sys-regulator {
regulator-max-microvolt = <3300000>; regulator-max-microvolt = <3300000>;
vin-supply = <&vcc5v0_sys>; vin-supply = <&vcc5v0_sys>;
}; };
sdmmc_pwr: sdmmc-pwr-regulator {
compatible = "regulator-fixed";
enable-active-high;
gpio = <&gpio0 RK_PA5 GPIO_ACTIVE_HIGH>;
pinctrl-names = "default";
pinctrl-0 = <&sdmmc_pwr_h>;
regulator-name = "sdmmc_pwr";
status = "disabled";
};
}; };
&cpu0 { &cpu0 {
...@@ -155,6 +145,19 @@ &gmac1m0_clkinout ...@@ -155,6 +145,19 @@ &gmac1m0_clkinout
status = "disabled"; status = "disabled";
}; };
&gpio0 {
nextrst-hog {
gpio-hog;
/*
* GPIO_ACTIVE_LOW + output-low here means that the pin is set
* to high, because output-low decides the value pre-inversion.
*/
gpios = <RK_PA5 GPIO_ACTIVE_LOW>;
line-name = "nEXTRST";
output-low;
};
};
&gpu { &gpu {
mali-supply = <&vdd_gpu>; mali-supply = <&vdd_gpu>;
status = "okay"; status = "okay";
...@@ -538,12 +541,6 @@ wifi_enable_h: wifi-enable-h { ...@@ -538,12 +541,6 @@ wifi_enable_h: wifi-enable-h {
rockchip,pins = <2 RK_PC2 RK_FUNC_GPIO &pcfg_pull_none>; rockchip,pins = <2 RK_PC2 RK_FUNC_GPIO &pcfg_pull_none>;
}; };
}; };
sdmmc-pwr {
sdmmc_pwr_h: sdmmc-pwr-h {
rockchip,pins = <0 RK_PA5 RK_FUNC_GPIO &pcfg_pull_none>;
};
};
}; };
&pmu_io_domains { &pmu_io_domains {
......
...@@ -106,7 +106,7 @@ pcie20_reset_pin: pcie20-reset-pin { ...@@ -106,7 +106,7 @@ pcie20_reset_pin: pcie20-reset-pin {
rockchip-key { rockchip-key {
reset_button_pin: reset-button-pin { reset_button_pin: reset-button-pin {
rockchip,pins = <4 RK_PA0 RK_FUNC_GPIO &pcfg_pull_up>; rockchip,pins = <0 RK_PB7 RK_FUNC_GPIO &pcfg_pull_up>;
}; };
}; };
}; };
...@@ -134,4 +134,3 @@ wan_led_pin: wan-led-pin { ...@@ -134,4 +134,3 @@ wan_led_pin: wan-led-pin {
}; };
}; };
}; };
...@@ -94,9 +94,10 @@ pcie3x1: pcie@fe270000 { ...@@ -94,9 +94,10 @@ pcie3x1: pcie@fe270000 {
power-domains = <&power RK3568_PD_PIPE>; power-domains = <&power RK3568_PD_PIPE>;
reg = <0x3 0xc0400000 0x0 0x00400000>, reg = <0x3 0xc0400000 0x0 0x00400000>,
<0x0 0xfe270000 0x0 0x00010000>, <0x0 0xfe270000 0x0 0x00010000>,
<0x3 0x7f000000 0x0 0x01000000>; <0x0 0xf2000000 0x0 0x00100000>;
ranges = <0x01000000 0x0 0x3ef00000 0x3 0x7ef00000 0x0 0x00100000>, ranges = <0x01000000 0x0 0xf2100000 0x0 0xf2100000 0x0 0x00100000>,
<0x02000000 0x0 0x00000000 0x3 0x40000000 0x0 0x3ef00000>; <0x02000000 0x0 0xf2200000 0x0 0xf2200000 0x0 0x01e00000>,
<0x03000000 0x0 0x40000000 0x3 0x40000000 0x0 0x40000000>;
reg-names = "dbi", "apb", "config"; reg-names = "dbi", "apb", "config";
resets = <&cru SRST_PCIE30X1_POWERUP>; resets = <&cru SRST_PCIE30X1_POWERUP>;
reset-names = "pipe"; reset-names = "pipe";
...@@ -146,9 +147,10 @@ pcie3x2: pcie@fe280000 { ...@@ -146,9 +147,10 @@ pcie3x2: pcie@fe280000 {
power-domains = <&power RK3568_PD_PIPE>; power-domains = <&power RK3568_PD_PIPE>;
reg = <0x3 0xc0800000 0x0 0x00400000>, reg = <0x3 0xc0800000 0x0 0x00400000>,
<0x0 0xfe280000 0x0 0x00010000>, <0x0 0xfe280000 0x0 0x00010000>,
<0x3 0xbf000000 0x0 0x01000000>; <0x0 0xf0000000 0x0 0x00100000>;
ranges = <0x01000000 0x0 0x3ef00000 0x3 0xbef00000 0x0 0x00100000>, ranges = <0x01000000 0x0 0xf0100000 0x0 0xf0100000 0x0 0x00100000>,
<0x02000000 0x0 0x00000000 0x3 0x80000000 0x0 0x3ef00000>; <0x02000000 0x0 0xf0200000 0x0 0xf0200000 0x0 0x01e00000>,
<0x03000000 0x0 0x40000000 0x3 0x80000000 0x0 0x40000000>;
reg-names = "dbi", "apb", "config"; reg-names = "dbi", "apb", "config";
resets = <&cru SRST_PCIE30X2_POWERUP>; resets = <&cru SRST_PCIE30X2_POWERUP>;
reset-names = "pipe"; reset-names = "pipe";
......
...@@ -952,7 +952,7 @@ pcie2x1: pcie@fe260000 { ...@@ -952,7 +952,7 @@ pcie2x1: pcie@fe260000 {
compatible = "rockchip,rk3568-pcie"; compatible = "rockchip,rk3568-pcie";
reg = <0x3 0xc0000000 0x0 0x00400000>, reg = <0x3 0xc0000000 0x0 0x00400000>,
<0x0 0xfe260000 0x0 0x00010000>, <0x0 0xfe260000 0x0 0x00010000>,
<0x3 0x3f000000 0x0 0x01000000>; <0x0 0xf4000000 0x0 0x00100000>;
reg-names = "dbi", "apb", "config"; reg-names = "dbi", "apb", "config";
interrupts = <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>, interrupts = <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>,
...@@ -982,8 +982,9 @@ pcie2x1: pcie@fe260000 { ...@@ -982,8 +982,9 @@ pcie2x1: pcie@fe260000 {
phys = <&combphy2 PHY_TYPE_PCIE>; phys = <&combphy2 PHY_TYPE_PCIE>;
phy-names = "pcie-phy"; phy-names = "pcie-phy";
power-domains = <&power RK3568_PD_PIPE>; power-domains = <&power RK3568_PD_PIPE>;
ranges = <0x01000000 0x0 0x3ef00000 0x3 0x3ef00000 0x0 0x00100000 ranges = <0x01000000 0x0 0xf4100000 0x0 0xf4100000 0x0 0x00100000>,
0x02000000 0x0 0x00000000 0x3 0x00000000 0x0 0x3ef00000>; <0x02000000 0x0 0xf4200000 0x0 0xf4200000 0x0 0x01e00000>,
<0x03000000 0x0 0x40000000 0x3 0x00000000 0x0 0x40000000>;
resets = <&cru SRST_PCIE20_POWERUP>; resets = <&cru SRST_PCIE20_POWERUP>;
reset-names = "pipe"; reset-names = "pipe";
#address-cells = <3>; #address-cells = <3>;
......
...@@ -229,6 +229,7 @@ l2_cache_l0: l2-cache-l0 { ...@@ -229,6 +229,7 @@ l2_cache_l0: l2-cache-l0 {
cache-line-size = <64>; cache-line-size = <64>;
cache-sets = <512>; cache-sets = <512>;
cache-level = <2>; cache-level = <2>;
cache-unified;
next-level-cache = <&l3_cache>; next-level-cache = <&l3_cache>;
}; };
...@@ -238,6 +239,7 @@ l2_cache_l1: l2-cache-l1 { ...@@ -238,6 +239,7 @@ l2_cache_l1: l2-cache-l1 {
cache-line-size = <64>; cache-line-size = <64>;
cache-sets = <512>; cache-sets = <512>;
cache-level = <2>; cache-level = <2>;
cache-unified;
next-level-cache = <&l3_cache>; next-level-cache = <&l3_cache>;
}; };
...@@ -247,6 +249,7 @@ l2_cache_l2: l2-cache-l2 { ...@@ -247,6 +249,7 @@ l2_cache_l2: l2-cache-l2 {
cache-line-size = <64>; cache-line-size = <64>;
cache-sets = <512>; cache-sets = <512>;
cache-level = <2>; cache-level = <2>;
cache-unified;
next-level-cache = <&l3_cache>; next-level-cache = <&l3_cache>;
}; };
...@@ -256,6 +259,7 @@ l2_cache_l3: l2-cache-l3 { ...@@ -256,6 +259,7 @@ l2_cache_l3: l2-cache-l3 {
cache-line-size = <64>; cache-line-size = <64>;
cache-sets = <512>; cache-sets = <512>;
cache-level = <2>; cache-level = <2>;
cache-unified;
next-level-cache = <&l3_cache>; next-level-cache = <&l3_cache>;
}; };
...@@ -265,6 +269,7 @@ l2_cache_b0: l2-cache-b0 { ...@@ -265,6 +269,7 @@ l2_cache_b0: l2-cache-b0 {
cache-line-size = <64>; cache-line-size = <64>;
cache-sets = <1024>; cache-sets = <1024>;
cache-level = <2>; cache-level = <2>;
cache-unified;
next-level-cache = <&l3_cache>; next-level-cache = <&l3_cache>;
}; };
...@@ -274,6 +279,7 @@ l2_cache_b1: l2-cache-b1 { ...@@ -274,6 +279,7 @@ l2_cache_b1: l2-cache-b1 {
cache-line-size = <64>; cache-line-size = <64>;
cache-sets = <1024>; cache-sets = <1024>;
cache-level = <2>; cache-level = <2>;
cache-unified;
next-level-cache = <&l3_cache>; next-level-cache = <&l3_cache>;
}; };
...@@ -283,6 +289,7 @@ l2_cache_b2: l2-cache-b2 { ...@@ -283,6 +289,7 @@ l2_cache_b2: l2-cache-b2 {
cache-line-size = <64>; cache-line-size = <64>;
cache-sets = <1024>; cache-sets = <1024>;
cache-level = <2>; cache-level = <2>;
cache-unified;
next-level-cache = <&l3_cache>; next-level-cache = <&l3_cache>;
}; };
...@@ -292,6 +299,7 @@ l2_cache_b3: l2-cache-b3 { ...@@ -292,6 +299,7 @@ l2_cache_b3: l2-cache-b3 {
cache-line-size = <64>; cache-line-size = <64>;
cache-sets = <1024>; cache-sets = <1024>;
cache-level = <2>; cache-level = <2>;
cache-unified;
next-level-cache = <&l3_cache>; next-level-cache = <&l3_cache>;
}; };
...@@ -301,6 +309,7 @@ l3_cache: l3-cache { ...@@ -301,6 +309,7 @@ l3_cache: l3-cache {
cache-line-size = <64>; cache-line-size = <64>;
cache-sets = <4096>; cache-sets = <4096>;
cache-level = <3>; cache-level = <3>;
cache-unified;
}; };
}; };
......
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