Commit 1ccad21a authored by Bjorn Andersson's avatar Bjorn Andersson
Browse files

Merge tag 'qcom-arm64-fixes-for-6.2' into arm64-for-6.3

Qualcomm ARM64 DTS fixes for 6.2

The cluster idle issue was resolved on SM8250, so the change disabling
the cluster state is being reverted.

Issues where identified with the QMP PHY binding, that would prevent
enablement of Displayport and it was decided not to support the old
binding for the recently introduced SC8280XP, which broke USB. This
adjusts the USB PHY nodes to the new binding. The reset signal for the
first QMP PHY is corrected as well.

The reserved memory map is updated on Xiaomi Mi 4C and Huawei Nexus 6P,
to avoid instabilities caused by use of protected memory regions.
The compatible for the MSM8992 TCSR mutex is corrected as well.

Lastly SDHCI interconnects on SM8350 are corrected to match the
providers #interconnect-cells.
parents 4f287e31 69876bc6
Loading
Loading
Loading
Loading
+6 −0
Original line number Diff line number Diff line
@@ -3,6 +3,7 @@
 * Copyright (c) 2015, LGE Inc. All rights reserved.
 * Copyright (c) 2016, The Linux Foundation. All rights reserved.
 * Copyright (c) 2021, Petr Vorel <petr.vorel@gmail.com>
 * Copyright (c) 2022, Dominik Kobinski <dominikkobinski314@gmail.com>
 */

/dts-v1/;
@@ -51,6 +52,11 @@
			reg = <0 0x03400000 0 0x1200000>;
			no-map;
		};

		removed_region: reserved@5000000 {
			reg = <0 0x05000000 0 0x2200000>;
			no-map;
		};
	};
};

+60 −17
Original line number Diff line number Diff line
@@ -11,6 +11,12 @@
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/input/gpio-keys.h>

/delete-node/ &adsp_mem;
/delete-node/ &audio_mem;
/delete-node/ &mpss_mem;
/delete-node/ &peripheral_region;
/delete-node/ &rmtfs_mem;

/ {
	model = "Xiaomi Mi 4C";
	compatible = "xiaomi,libra", "qcom,msm8992";
@@ -70,24 +76,66 @@
		#size-cells = <2>;
		ranges;

		/* This is for getting crash logs using Android downstream kernels */
		ramoops@dfc00000 {
			compatible = "ramoops";
			reg = <0x0 0xdfc00000 0x0 0x40000>;
			console-size = <0x10000>;
			record-size = <0x10000>;
			ftrace-size = <0x10000>;
			pmsg-size = <0x20000>;
		memory_hole: hole@6400000 {
			reg = <0 0x06400000 0 0x600000>;
			no-map;
		};

		memory_hole2: hole2@6c00000 {
			reg = <0 0x06c00000 0 0x2400000>;
			no-map;
		};

		mpss_mem: mpss@9000000 {
			reg = <0 0x09000000 0 0x5a00000>;
			no-map;
		};

		tzapp: tzapp@ea00000 {
			reg = <0 0x0ea00000 0 0x1900000>;
			no-map;
		};

		modem_region: modem_region@9000000 {
			reg = <0x0 0x9000000 0x0 0x5a00000>;
		mdm_rfsa_mem: mdm-rfsa@ca0b0000 {
			reg = <0 0xca0b0000 0 0x10000>;
			no-map;
		};

		tzapp: modem_region@ea00000 {
			reg = <0x0 0xea00000 0x0 0x1900000>;
		rmtfs_mem: rmtfs@ca100000 {
			compatible = "qcom,rmtfs-mem";
			reg = <0 0xca100000 0 0x180000>;
			no-map;

			qcom,client-id = <1>;
		};

		audio_mem: audio@cb400000 {
			reg = <0 0xcb000000 0 0x400000>;
			no-mem;
		};

		qseecom_mem: qseecom@cb400000 {
			reg = <0 0xcb400000 0 0x1c00000>;
			no-mem;
		};

		adsp_rfsa_mem: adsp-rfsa@cd000000 {
			reg = <0 0xcd000000 0 0x10000>;
			no-map;
		};

		sensor_rfsa_mem: sensor-rfsa@cd010000 {
			reg = <0 0xcd010000 0 0x10000>;
			no-map;
		};

		ramoops@dfc00000 {
			compatible = "ramoops";
			reg = <0 0xdfc00000 0 0x40000>;
			console-size = <0x10000>;
			record-size = <0x10000>;
			ftrace-size = <0x10000>;
			pmsg-size = <0x20000>;
		};
	};
};
@@ -130,11 +178,6 @@
	status = "okay";
};

&peripheral_region {
	reg = <0x0 0x7400000 0x0 0x1c00000>;
	no-map;
};

&pm8994_spmi_regulators {
	VDD_APC0: s8 {
		regulator-min-microvolt = <680000>;
+0 −4
Original line number Diff line number Diff line
@@ -37,10 +37,6 @@
	compatible = "qcom,rpmcc-msm8992", "qcom,rpmcc";
};

&tcsr_mutex {
	compatible = "qcom,sfpb-mutex";
};

&timer {
	interrupts = <GIC_PPI 2 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
			     <GIC_PPI 3 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
+16 −3
Original line number Diff line number Diff line
@@ -9,9 +9,6 @@

#include "msm8994.dtsi"

/* Angler's firmware does not report where the memory is allocated */
/delete-node/ &cont_splash_mem;

/ {
	model = "Huawei Nexus 6P";
	compatible = "huawei,angler", "qcom,msm8994";
@@ -28,6 +25,22 @@
	chosen {
		stdout-path = "serial0:115200n8";
	};

	reserved-memory {
		#address-cells = <2>;
		#size-cells = <2>;
		ranges;

		tzapp_mem: tzapp@4800000 {
			reg = <0 0x04800000 0 0x1900000>;
			no-map;
		};

		removed_region: reserved@6300000 {
			reg = <0 0x06300000 0 0xD00000>;
			no-map;
		};
	};
};

&blsp1_uart2 {
+24 −55
Original line number Diff line number Diff line
@@ -11,6 +11,7 @@
#include <dt-bindings/interconnect/qcom,sc8280xp.h>
#include <dt-bindings/interrupt-controller/arm-gic.h>
#include <dt-bindings/mailbox/qcom-ipcc.h>
#include <dt-bindings/phy/phy-qcom-qmp.h>
#include <dt-bindings/power/qcom-rpmpd.h>
#include <dt-bindings/soc/qcom,gpr.h>
#include <dt-bindings/soc/qcom,rpmh-rsc.h>
@@ -774,7 +775,7 @@
				 <0>,
				 <0>,
				 <0>,
				 <&usb_0_ssphy>,
				 <&usb_0_qmpphy QMP_USB43DP_USB3_PIPE_CLK>,
				 <0>,
				 <0>,
				 <0>,
@@ -782,7 +783,7 @@
				 <0>,
				 <0>,
				 <0>,
				 <&usb_1_ssphy>,
				 <&usb_1_qmpphy QMP_USB43DP_USB3_PIPE_CLK>,
				 <0>,
				 <0>,
				 <0>,
@@ -2052,42 +2053,26 @@
			};
		};

		usb_0_qmpphy: phy-wrapper@88ec000 {
		usb_0_qmpphy: phy@88eb000 {
			compatible = "qcom,sc8280xp-qmp-usb43dp-phy";
			reg = <0 0x088ec000 0 0x1e4>,
			      <0 0x088eb000 0 0x40>,
			      <0 0x088ed000 0 0x1c8>;
			#address-cells = <2>;
			#size-cells = <2>;
			ranges;
			reg = <0 0x088eb000 0 0x4000>;

			clocks = <&gcc GCC_USB3_PRIM_PHY_AUX_CLK>,
				 <&rpmhcc RPMH_CXO_CLK>,
				 <&gcc GCC_USB4_EUD_CLKREF_CLK>,
				 <&gcc GCC_USB3_PRIM_PHY_COM_AUX_CLK>;
			clock-names = "aux", "ref_clk_src", "ref", "com_aux";
				 <&gcc GCC_USB3_PRIM_PHY_COM_AUX_CLK>,
				 <&gcc GCC_USB3_PRIM_PHY_PIPE_CLK>;
			clock-names = "aux", "ref", "com_aux", "usb3_pipe";

			power-domains = <&gcc USB30_PRIM_GDSC>;

			resets = <&gcc GCC_USB3_PHY_PRIM_BCR>,
				 <&gcc GCC_USB3_DP_PHY_PRIM_BCR>;
				 <&gcc GCC_USB4_DP_PHY_PRIM_BCR>;
			reset-names = "phy", "common";

			power-domains = <&gcc USB30_PRIM_GDSC>;
			#clock-cells = <1>;
			#phy-cells = <1>;

			status = "disabled";

			usb_0_ssphy: usb3-phy@88eb400 {
				reg = <0 0x088eb400 0 0x100>,
				      <0 0x088eb600 0 0x3ec>,
				      <0 0x088ec400 0 0x364>,
				      <0 0x088eba00 0 0x100>,
				      <0 0x088ebc00 0 0x3ec>,
				      <0 0x088ec200 0 0x18>;
				#phy-cells = <0>;
				#clock-cells = <0>;
				clocks = <&gcc GCC_USB3_PRIM_PHY_PIPE_CLK>;
				clock-names = "pipe0";
				clock-output-names = "usb0_phy_pipe_clk_src";
			};
		};

		usb_1_hsphy: phy@8902000 {
@@ -2104,42 +2089,26 @@
			status = "disabled";
		};

		usb_1_qmpphy: phy-wrapper@8904000 {
		usb_1_qmpphy: phy@8903000 {
			compatible = "qcom,sc8280xp-qmp-usb43dp-phy";
			reg = <0 0x08904000 0 0x1e4>,
			      <0 0x08903000 0 0x40>,
			      <0 0x08905000 0 0x1c8>;
			#address-cells = <2>;
			#size-cells = <2>;
			ranges;
			reg = <0 0x08903000 0 0x4000>;

			clocks = <&gcc GCC_USB3_SEC_PHY_AUX_CLK>,
				 <&rpmhcc RPMH_CXO_CLK>,
				 <&gcc GCC_USB4_CLKREF_CLK>,
				 <&gcc GCC_USB3_SEC_PHY_COM_AUX_CLK>;
			clock-names = "aux", "ref_clk_src", "ref", "com_aux";
				 <&gcc GCC_USB3_SEC_PHY_COM_AUX_CLK>,
				 <&gcc GCC_USB3_SEC_PHY_PIPE_CLK>;
			clock-names = "aux", "ref", "com_aux", "usb3_pipe";

			power-domains = <&gcc USB30_SEC_GDSC>;

			resets = <&gcc GCC_USB3_PHY_SEC_BCR>,
				 <&gcc GCC_USB4_1_DP_PHY_PRIM_BCR>;
			reset-names = "phy", "common";

			power-domains = <&gcc USB30_SEC_GDSC>;
			#clock-cells = <1>;
			#phy-cells = <1>;

			status = "disabled";

			usb_1_ssphy: usb3-phy@8903400 {
				reg = <0 0x08903400 0 0x100>,
				      <0 0x08903600 0 0x3ec>,
				      <0 0x08904400 0 0x364>,
				      <0 0x08903a00 0 0x100>,
				      <0 0x08903c00 0 0x3ec>,
				      <0 0x08904200 0 0x18>;
				#phy-cells = <0>;
				#clock-cells = <0>;
				clocks = <&gcc GCC_USB3_SEC_PHY_PIPE_CLK>;
				clock-names = "pipe0";
				clock-output-names = "usb1_phy_pipe_clk_src";
			};
		};

		mdss1_dp0_phy: phy@8909a00 {
@@ -2326,7 +2295,7 @@
				reg = <0 0x0a600000 0 0xcd00>;
				interrupts = <GIC_SPI 803 IRQ_TYPE_LEVEL_HIGH>;
				iommus = <&apps_smmu 0x820 0x0>;
				phys = <&usb_0_hsphy>, <&usb_0_ssphy>;
				phys = <&usb_0_hsphy>, <&usb_0_qmpphy QMP_USB43DP_USB3_PHY>;
				phy-names = "usb2-phy", "usb3-phy";
			};
		};
@@ -2381,7 +2350,7 @@
				reg = <0 0x0a800000 0 0xcd00>;
				interrupts = <GIC_SPI 810 IRQ_TYPE_LEVEL_HIGH>;
				iommus = <&apps_smmu 0x860 0x0>;
				phys = <&usb_1_hsphy>, <&usb_1_ssphy>;
				phys = <&usb_1_hsphy>, <&usb_1_qmpphy QMP_USB43DP_USB3_PHY>;
				phy-names = "usb2-phy", "usb3-phy";
			};
		};
Loading