diff options
Diffstat (limited to 'dts/upstream/src/arm/qcom')
33 files changed, 832 insertions, 109 deletions
| diff --git a/dts/upstream/src/arm/qcom/msm8226-motorola-falcon.dts b/dts/upstream/src/arm/qcom/msm8226-motorola-falcon.dts index 5dbca83f223..e6392f7d14c 100644 --- a/dts/upstream/src/arm/qcom/msm8226-motorola-falcon.dts +++ b/dts/upstream/src/arm/qcom/msm8226-motorola-falcon.dts @@ -31,6 +31,15 @@  			vsp-supply = <®_lcd_pos>;  			vsn-supply = <®_lcd_neg>;  			vddio-supply = <&vddio_disp_vreg>; +			clocks = <&mmcc MDSS_AHB_CLK>, +				 <&mmcc MDSS_AXI_CLK>, +				 <&mmcc MDSS_BYTE0_CLK>, +				 <&mmcc MDSS_ESC0_CLK>, +				 <&mmcc MDSS_MDP_CLK>, +				 <&mmcc MMSS_MISC_AHB_CLK>, +				 <&mmcc MDSS_PCLK0_CLK>, +				 <&mmcc MDSS_VSYNC_CLK>; +			power-domains = <&mmcc MDSS_GDSC>;  		};  	}; @@ -53,9 +62,12 @@  		};  	}; +	/* TI TPS22902 */  	vddio_disp_vreg: regulator-vddio-disp {  		compatible = "regulator-fixed";  		regulator-name = "vddio_disp"; +		regulator-min-microvolt = <1800000>; +		regulator-max-microvolt = <1800000>;  		gpio = <&tlmm 34 GPIO_ACTIVE_HIGH>;  		vin-supply = <&pm8226_l8>;  		startup-delay-us = <300>; @@ -97,6 +109,7 @@  };  &blsp1_i2c2 { +	clock-frequency = <100000>;  	status = "okay";  	magnetometer@c { @@ -126,6 +139,7 @@  };  &blsp1_i2c3 { +	clock-frequency = <400000>;  	status = "okay";  	regulator@3e { @@ -136,8 +150,8 @@  		reg_lcd_pos: outp {  			regulator-name = "outp"; -			regulator-min-microvolt = <4000000>; -			regulator-max-microvolt = <6000000>; +			regulator-min-microvolt = <5400000>; +			regulator-max-microvolt = <5400000>;  			regulator-active-discharge = <1>;  			regulator-boot-on;  			enable-gpios = <&tlmm 31 GPIO_ACTIVE_HIGH>; @@ -145,8 +159,8 @@  		reg_lcd_neg: outn {  			regulator-name = "outn"; -			regulator-min-microvolt = <4000000>; -			regulator-max-microvolt = <6000000>; +			regulator-min-microvolt = <5400000>; +			regulator-max-microvolt = <5400000>;  			regulator-active-discharge = <1>;  			regulator-boot-on;  			enable-gpios = <&tlmm 33 GPIO_ACTIVE_HIGH>; diff --git a/dts/upstream/src/arm/qcom/msm8926.dtsi b/dts/upstream/src/arm/qcom/msm8926.dtsi new file mode 100644 index 00000000000..629654c525b --- /dev/null +++ b/dts/upstream/src/arm/qcom/msm8926.dtsi @@ -0,0 +1,11 @@ +// SPDX-License-Identifier: BSD-3-Clause +/* + * Copyright (c) 2025, Luca Weiss <luca@lucaweiss.eu> + */ + +#include "qcom-msm8226.dtsi" + +&modem { +	compatible = "qcom,msm8926-mss-pil"; +	/delete-property/ qcom,ext-bhs-reg; +}; diff --git a/dts/upstream/src/arm/qcom/qcom-apq8026-samsung-matisse-wifi.dts b/dts/upstream/src/arm/qcom/qcom-apq8026-samsung-matisse-wifi.dts index da3be658e82..4546fa8beba 100644 --- a/dts/upstream/src/arm/qcom/qcom-apq8026-samsung-matisse-wifi.dts +++ b/dts/upstream/src/arm/qcom/qcom-apq8026-samsung-matisse-wifi.dts @@ -5,6 +5,7 @@  /dts-v1/; +#include "qcom-msm8226.dtsi"  #include "qcom-msm8226-samsung-matisse-common.dtsi"  / { diff --git a/dts/upstream/src/arm/qcom/qcom-apq8026-samsung-milletwifi.dts b/dts/upstream/src/arm/qcom/qcom-apq8026-samsung-milletwifi.dts index 7d519156d91..a8543ca7b55 100644 --- a/dts/upstream/src/arm/qcom/qcom-apq8026-samsung-milletwifi.dts +++ b/dts/upstream/src/arm/qcom/qcom-apq8026-samsung-milletwifi.dts @@ -12,6 +12,8 @@  #include "pm8226.dtsi"  /delete-node/ &adsp_region; +/delete-node/ &mba_region; +/delete-node/ &mpss_region;  /delete-node/ &smem_region;  / { diff --git a/dts/upstream/src/arm/qcom/qcom-apq8064-ifc6410.dts b/dts/upstream/src/arm/qcom/qcom-apq8064-ifc6410.dts index b3ff8010b14..717bfd74edb 100644 --- a/dts/upstream/src/arm/qcom/qcom-apq8064-ifc6410.dts +++ b/dts/upstream/src/arm/qcom/qcom-apq8064-ifc6410.dts @@ -138,7 +138,6 @@  &hdmi {  	core-vdda-supply = <&pm8921_hdmi_switch>; -	hpd-gpios = <&tlmm_pinmux 72 GPIO_ACTIVE_HIGH>;  	status = "okay";  }; diff --git a/dts/upstream/src/arm/qcom/qcom-apq8064-lg-nexus4-mako.dts b/dts/upstream/src/arm/qcom/qcom-apq8064-lg-nexus4-mako.dts new file mode 100644 index 00000000000..c187c6875bc --- /dev/null +++ b/dts/upstream/src/arm/qcom/qcom-apq8064-lg-nexus4-mako.dts @@ -0,0 +1,359 @@ +// SPDX-License-Identifier: GPL-2.0-only +#include <dt-bindings/gpio/gpio.h> +#include <dt-bindings/input/input.h> +#include <dt-bindings/mfd/qcom-rpm.h> +#include <dt-bindings/pinctrl/qcom,pmic-gpio.h> + +#include "qcom-apq8064-v2.0.dtsi" +#include "pm8821.dtsi" +#include "pm8921.dtsi" + +/ { +	model = "LG Nexus 4 (mako)"; +	compatible = "lg,nexus4-mako", "qcom,apq8064"; +	chassis-type = "handset"; + +	aliases { +		serial0 = &gsbi7_serial; +		serial1 = &gsbi6_serial; +		serial2 = &gsbi4_serial; +	}; + +	chosen { +		stdout-path = "serial2:115200n8"; +	}; + +	battery_cell: battery-cell { +		compatible = "simple-battery"; +		constant-charge-current-max-microamp = <900000>; +		operating-range-celsius = <0 45>; +	}; + +	reserved-memory { +		#address-cells = <1>; +		#size-cells = <1>; +		ranges; + +		ramoops@88d00000{ +			compatible = "ramoops"; +			reg = <0x88d00000 0x100000>; +			record-size = <0x20000>; +			console-size = <0x20000>; +			ftrace-size = <0x20000>; +		}; +	}; +}; + +&gsbi1 { +	qcom,mode = <GSBI_PROT_I2C>; + +	status = "okay"; +}; + +&gsbi1_i2c { +	clock-frequency = <200000>; + +	status = "okay"; +}; + +&gsbi4 { +	qcom,mode = <GSBI_PROT_I2C_UART>; + +	status = "okay"; +}; + +&gsbi4_serial { +	status = "okay"; +}; + +&pm8821 { +	interrupts-extended = <&tlmm_pinmux 76 IRQ_TYPE_LEVEL_LOW>; +}; + +&pm8921 { +	interrupts-extended = <&tlmm_pinmux 74 IRQ_TYPE_LEVEL_LOW>; +}; + +&pm8921_keypad { +	linux,keymap = < +		MATRIX_KEY(0, 0, KEY_VOLUMEDOWN) +		MATRIX_KEY(0, 1, KEY_VOLUMEUP) +	>; + +	keypad,num-rows = <1>; +	keypad,num-columns = <5>; + +	status = "okay"; +}; + +&riva { +	pinctrl-names = "default"; +	pinctrl-0 = <&riva_wlan_pin_a>, <&riva_bt_pin_a>, <&riva_fm_pin_a>; + +	vddcx-supply = <&pm8921_s3>; +	vddmx-supply = <&pm8921_l24>; +	vddpx-supply = <&pm8921_s4>; + +	status = "okay"; + +	iris { +		vddxo-supply = <&pm8921_l4>; +		vddrfa-supply = <&pm8921_s2>; +		vddpa-supply = <&pm8921_l10>; +		vdddig-supply = <&pm8921_lvs2>; +	}; +}; + +&rpm { +	regulators { +		compatible = "qcom,rpm-pm8921-regulators"; + +		vdd_l1_l2_l12_l18-supply = <&pm8921_s4>; +		vdd_l24-supply = <&pm8921_s1>; +		vdd_l25-supply = <&pm8921_s1>; +		vdd_l26-supply = <&pm8921_s7>; +		vdd_l27-supply = <&pm8921_s7>; +		vdd_l28-supply = <&pm8921_s7>; +		vin_lvs1_3_6-supply = <&pm8921_s4>; +		vin_lvs2-supply = <&pm8921_s1>; +		vin_lvs4_5_7-supply = <&pm8921_s4>; + +		pm8921_l1: l1 { +			regulator-min-microvolt = <1100000>; +			regulator-max-microvolt = <1100000>; +			regulator-always-on; +			bias-pull-down; +		}; + +		/* mipi_dsi.1-dsi1_pll_vdda */ +		pm8921_l2: l2 { +			regulator-min-microvolt = <1200000>; +			regulator-max-microvolt = <1200000>; +			bias-pull-down; +		}; + +		/* msm_otg-HSUSB_3p3 */ +		pm8921_l3: l3 { +			regulator-min-microvolt = <3075000>; +			regulator-max-microvolt = <3500000>; +			bias-pull-down; +		}; + +		/* msm_otg-HSUSB_1p8 */ +		pm8921_l4: l4 { +			regulator-always-on; +			regulator-min-microvolt = <1800000>; +			regulator-max-microvolt = <1800000>; +		}; + +		/* msm_sdcc.1-sdc_vdd */ +		pm8921_l5: l5 { +			regulator-min-microvolt = <2950000>; +			regulator-max-microvolt = <2950000>; +			bias-pull-down; +		}; + +		/* earjack_debug */ +		pm8921_l6: l6 { +			regulator-min-microvolt = <3000000>; +			regulator-max-microvolt = <3000000>; +			bias-pull-down; +		}; + +		/* mipi_dsi.1-dsi_vci */ +		pm8921_l8: l8 { +			regulator-min-microvolt = <2800000>; +			regulator-max-microvolt = <3000000>; +			bias-pull-down; +		}; + +		/* wcnss_wlan.0-iris_vddpa */ +		pm8921_l10: l10 { +			regulator-min-microvolt = <2900000>; +			regulator-max-microvolt = <2900000>; +			bias-pull-down; +		}; + +		/* mipi_dsi.1-dsi1_avdd */ +		pm8921_l11: l11 { +			regulator-min-microvolt = <2850000>; +			regulator-max-microvolt = <2850000>; +			bias-pull-down; +		}; + +		/* touch_vdd */ +		pm8921_l15: l15 { +			regulator-min-microvolt = <1800000>; +			regulator-max-microvolt = <2950000>; +			bias-pull-down; +		}; + +		/* slimport_dvdd */ +		pm8921_l18: l18 { +			regulator-min-microvolt = <1100000>; +			regulator-max-microvolt = <1100000>; +			bias-pull-down; +		}; + +		/* touch_io */ +		pm8921_l22: l22 { +			regulator-min-microvolt = <1800000>; +			regulator-max-microvolt = <1800000>; +			bias-pull-down; +		}; + +		/* +		 * mipi_dsi.1-dsi_vddio +		 * pil_qdsp6v4.1-pll_vdd +		 * pil_qdsp6v4.2-pll_vdd +		 * msm_ehci_host.0-HSUSB_1p8 +		 * msm_ehci_host.1-HSUSB_1p8 +		 */ +		pm8921_l23: l23 { +			regulator-min-microvolt = <1800000>; +			regulator-max-microvolt = <1800000>; +			bias-pull-down; +		}; + +		/* +		 * tabla2x-slim-CDC_VDDA_A_1P2V +		 * tabla2x-slim-VDDD_CDC_D +		 */ +		pm8921_l24: l24 { +			regulator-min-microvolt = <750000>; +			regulator-max-microvolt = <1150000>; +			bias-pull-down; +		}; + +		pm8921_l25: l25 { +			regulator-min-microvolt = <1250000>; +			regulator-max-microvolt = <1250000>; +			regulator-always-on; +			bias-pull-down; +		}; + +		pm8921_l26: l26 { +			regulator-min-microvolt = <375000>; +			regulator-max-microvolt = <1050000>; +			regulator-always-on; +			bias-pull-down; +		}; + +		pm8921_l27: l27 { +			regulator-min-microvolt = <1100000>; +			regulator-max-microvolt = <1100000>; +		}; + +		pm8921_l28: l28 { +			regulator-min-microvolt = <1050000>; +			regulator-max-microvolt = <1050000>; +			bias-pull-down; +		}; + +		/* wcnss_wlan.0-iris_vddio */ +		pm8921_lvs1: lvs1 { +			bias-pull-down; +		}; + +		/* wcnss_wlan.0-iris_vdddig */ +		pm8921_lvs2: lvs2 { +			bias-pull-down; +		}; + +		pm8921_lvs3: lvs3 { +			bias-pull-down; +		}; + +		pm8921_lvs4: lvs4 { +			bias-pull-down; +		}; + +		pm8921_lvs5: lvs5 { +			bias-pull-down; +		}; + +		/* mipi_dsi.1-dsi_iovcc */ +		pm8921_lvs6: lvs6 { +			bias-pull-down; +		}; + +		/* +		 * pil_riva-pll_vdd +		 * lvds.0-lvds_vdda +		 * mipi_dsi.1-dsi1_vddio +		 * hdmi_msm.0-hdmi_vdda +		 */ +		pm8921_lvs7: lvs7 { +			bias-pull-down; +		}; + +		pm8921_ncp: ncp { +			regulator-min-microvolt = <1800000>; +			regulator-max-microvolt = <1800000>; +			qcom,switch-mode-frequency = <1600000>; +		}; + +		/* Buck SMPS */ +		pm8921_s1: s1 { +			regulator-always-on; +			regulator-min-microvolt = <1225000>; +			regulator-max-microvolt = <1225000>; +			qcom,switch-mode-frequency = <3200000>; +			bias-pull-down; +		}; + +		pm8921_s2: s2 { +			regulator-min-microvolt = <1300000>; +			regulator-max-microvolt = <1300000>; +			qcom,switch-mode-frequency = <1600000>; +			bias-pull-down; +		}; + +		/* msm otg HSUSB_VDDCX */ +		pm8921_s3: s3 { +			regulator-min-microvolt = <500000>; +			regulator-max-microvolt = <1150000>; +			qcom,switch-mode-frequency = <4800000>; +			bias-pull-down; +		}; + +		/* +		 * msm_sdcc.1-sdc-vdd_io +		 * tabla2x-slim-CDC_VDDA_RX +		 * tabla2x-slim-CDC_VDDA_TX +		 * tabla2x-slim-CDC_VDD_CP +		 * tabla2x-slim-VDDIO_CDC +		 */ +		pm8921_s4: s4 { +			regulator-always-on; +			regulator-min-microvolt	= <1800000>; +			regulator-max-microvolt	= <1800000>; +			qcom,switch-mode-frequency = <1600000>; +			bias-pull-down; +			qcom,force-mode = <QCOM_RPM_FORCE_MODE_AUTO>; +		}; + +		/* +		 * supply vdd_l26, vdd_l27, vdd_l28 +		 */ +		pm8921_s7: s7 { +			regulator-min-microvolt = <1300000>; +			regulator-max-microvolt = <1300000>; +			qcom,switch-mode-frequency = <3200000>; +		}; + +		pm8921_s8: s8 { +			regulator-min-microvolt = <2200000>; +			regulator-max-microvolt = <2200000>; +			qcom,switch-mode-frequency = <1600000>; +		}; +	}; +}; + +/* eMMC */ +&sdcc1 { +	vmmc-supply = <&pm8921_l5>; +	vqmmc-supply = <&pm8921_s4>; + +	status = "okay"; +}; diff --git a/dts/upstream/src/arm/qcom/qcom-apq8064.dtsi b/dts/upstream/src/arm/qcom/qcom-apq8064.dtsi index 5f1a6b4b764..17e506ca243 100644 --- a/dts/upstream/src/arm/qcom/qcom-apq8064.dtsi +++ b/dts/upstream/src/arm/qcom/qcom-apq8064.dtsi @@ -213,12 +213,6 @@  		};  	}; -	sfpb_mutex: hwmutex { -		compatible = "qcom,sfpb-mutex"; -		syscon = <&sfpb_wrapper_mutex 0x604 0x4>; -		#hwlock-cells = <1>; -	}; -  	smem {  		compatible = "qcom,smem";  		memory-region = <&smem_region>; @@ -284,6 +278,40 @@  		};  	}; +	replicator { +		compatible = "arm,coresight-static-replicator"; + +		clocks = <&rpmcc RPM_QDSS_CLK>; +		clock-names = "apb_pclk"; + +		in-ports { +			port { +				replicator_in: endpoint { +					remote-endpoint = <&funnel_out>; +				}; +			}; +		}; + +		out-ports { +			#address-cells = <1>; +			#size-cells = <0>; + +			port@0 { +				reg = <0>; +				replicator_out0: endpoint { +					remote-endpoint = <&etb_in>; +				}; +			}; + +			port@1 { +				reg = <1>; +				replicator_out1: endpoint { +					remote-endpoint = <&tpiu_in>; +				}; +			}; +		}; +	}; +  	soc: soc {  		#address-cells = <1>;  		#size-cells = <1>; @@ -305,9 +333,10 @@  			pinctrl-0 = <&ps_hold_default_state>;  		}; -		sfpb_wrapper_mutex: syscon@1200000 { -			compatible = "syscon"; -			reg = <0x01200000 0x8000>; +		sfpb_mutex: hwmutex@1200600 { +			compatible = "qcom,sfpb-mutex"; +			reg = <0x01200600 0x100>; +			#hwlock-cells = <1>;  		};  		intc: interrupt-controller@2000000 { @@ -326,6 +355,8 @@  				     <GIC_PPI 3 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_EDGE_RISING)>;  			reg = <0x0200a000 0x100>;  			clock-frequency = <27000000>; +			clocks = <&sleep_clk>; +			clock-names = "sleep";  			cpu-offset = <0x80000>;  		}; @@ -405,8 +436,8 @@  			};  		}; -		sps_sic_non_secure: sps-sic-non-secure@12100000 { -			compatible = "syscon"; +		sps_sic_non_secure: interrupt-controller@12100000 { +			compatible = "qcom,apq8064-sps-sic", "syscon";  			reg = <0x12100000 0x10000>;  		}; @@ -737,7 +768,8 @@  				 <&dsi0_phy 0>,  				 <&dsi1_phy 1>,  				 <&dsi1_phy 0>, -				 <&hdmi_phy>; +				 <&hdmi_phy>, +				 <&mdp>;  			clock-names = "pxo",  				      "pll3",  				      "pll8_vote", @@ -745,7 +777,8 @@  				      "dsi1pllbyte",  				      "dsi2pll",  				      "dsi2pllbyte", -				      "hdmipll"; +				      "hdmipll", +				      "lvdspll";  		};  		l2cc: clock-controller@2011000 { @@ -1089,7 +1122,7 @@  		};  		mmss_sfpb: syscon@5700000 { -			compatible = "syscon"; +			compatible = "qcom,apq8064-mmss-sfpb", "syscon";  			reg = <0x5700000 0x70>;  		}; @@ -1404,13 +1437,19 @@  				 <&mmcc MDP_AXI_CLK>,  				 <&mmcc MDP_LUT_CLK>,  				 <&mmcc HDMI_TV_CLK>, -				 <&mmcc MDP_TV_CLK>; +				 <&mmcc MDP_TV_CLK>, +				 <&mmcc LVDS_CLK>, +				 <&rpmcc RPM_PXO_CLK>;  			clock-names = "core_clk",  				      "iface_clk",  				      "bus_clk",  				      "lut_clk",  				      "hdmi_clk", -				      "tv_clk"; +				      "tv_clk", +				      "lcdc_clk", +				      "pxo"; + +			#clock-cells = <0>;  			iommus = <&mdp_port0 0  				  &mdp_port0 2 @@ -1532,39 +1571,6 @@  			};  		}; -		replicator { -			compatible = "arm,coresight-static-replicator"; - -			clocks = <&rpmcc RPM_QDSS_CLK>; -			clock-names = "apb_pclk"; - -			out-ports { -				#address-cells = <1>; -				#size-cells = <0>; - -				port@0 { -					reg = <0>; -					replicator_out0: endpoint { -						remote-endpoint = <&etb_in>; -					}; -				}; -				port@1 { -					reg = <1>; -					replicator_out1: endpoint { -						remote-endpoint = <&tpiu_in>; -					}; -				}; -			}; - -			in-ports { -				port { -					replicator_in: endpoint { -						remote-endpoint = <&funnel_out>; -					}; -				}; -			}; -		}; -  		funnel@1a04000 {  			compatible = "arm,coresight-dynamic-funnel", "arm,primecell";  			reg = <0x1a04000 0x1000>; diff --git a/dts/upstream/src/arm/qcom/qcom-apq8074-dragonboard.dts b/dts/upstream/src/arm/qcom/qcom-apq8074-dragonboard.dts index 6fce0112361..34b0cf35fda 100644 --- a/dts/upstream/src/arm/qcom/qcom-apq8074-dragonboard.dts +++ b/dts/upstream/src/arm/qcom/qcom-apq8074-dragonboard.dts @@ -149,7 +149,7 @@  };  &pm8941_gpios { -        msm_keys_default: pm8941-gpio-keys-state { +	msm_keys_default: pm8941-gpio-keys-state {  		pins = "gpio5", "gpio23";  		function = "normal";  		input-enable; @@ -157,7 +157,7 @@  		bias-pull-up;  		qcom,drive-strength = <PMIC_GPIO_STRENGTH_NO>;  		power-source = <PM8941_GPIO_S3>; /* 1.8V */ -        }; +	};  };  &pm8941_lpg { diff --git a/dts/upstream/src/arm/qcom/qcom-ipq4018-ap120c-ac.dtsi b/dts/upstream/src/arm/qcom/qcom-ipq4018-ap120c-ac.dtsi index a6d4390efa7..be76bc39ac2 100644 --- a/dts/upstream/src/arm/qcom/qcom-ipq4018-ap120c-ac.dtsi +++ b/dts/upstream/src/arm/qcom/qcom-ipq4018-ap120c-ac.dtsi @@ -251,7 +251,7 @@  	status = "okay";  	nvmem-cell-names = "pre-calibration";  	nvmem-cells = <&precal_art_5000>; -	qcom,ath10k-calibration-variant = "ALFA-Network-AP120C-AC"; +	qcom,calibration-variant = "ALFA-Network-AP120C-AC";  };  &usb3_hs_phy { diff --git a/dts/upstream/src/arm/qcom/qcom-ipq4018-jalapeno.dts b/dts/upstream/src/arm/qcom/qcom-ipq4018-jalapeno.dts index 6640ea7b6ac..15baaf0d152 100644 --- a/dts/upstream/src/arm/qcom/qcom-ipq4018-jalapeno.dts +++ b/dts/upstream/src/arm/qcom/qcom-ipq4018-jalapeno.dts @@ -179,13 +179,13 @@  &wifi0 {  	status = "okay"; -	qcom,ath10k-calibration-variant = "8devices-Jalapeno"; +	qcom,calibration-variant = "8devices-Jalapeno";  };  &wifi1 {  	status = "okay"; -	qcom,ath10k-calibration-variant = "8devices-Jalapeno"; +	qcom,calibration-variant = "8devices-Jalapeno";  };  &usb3_ss_phy { diff --git a/dts/upstream/src/arm/qcom/qcom-ipq4019-ap.dk07.1.dtsi b/dts/upstream/src/arm/qcom/qcom-ipq4019-ap.dk07.1.dtsi index cc88cf5f0d9..5a95a2d03c4 100644 --- a/dts/upstream/src/arm/qcom/qcom-ipq4019-ap.dk07.1.dtsi +++ b/dts/upstream/src/arm/qcom/qcom-ipq4019-ap.dk07.1.dtsi @@ -43,7 +43,7 @@  				       "gpio64", "gpio65", "gpio66",  				       "gpio67", "gpio68", "gpio69";  				function = "qpic"; -                        }; +			};  		};  		serial@78af000 { diff --git a/dts/upstream/src/arm/qcom/qcom-ipq4019.dtsi b/dts/upstream/src/arm/qcom/qcom-ipq4019.dtsi index 06b20c196fa..f77542fb3d4 100644 --- a/dts/upstream/src/arm/qcom/qcom-ipq4019.dtsi +++ b/dts/upstream/src/arm/qcom/qcom-ipq4019.dtsi @@ -53,7 +53,6 @@  			reg = <0x0>;  			clocks = <&gcc GCC_APPS_CLK_SRC>;  			clock-frequency = <0>; -			clock-latency = <256000>;  			operating-points-v2 = <&cpu0_opp_table>;  		}; @@ -67,7 +66,6 @@  			reg = <0x1>;  			clocks = <&gcc GCC_APPS_CLK_SRC>;  			clock-frequency = <0>; -			clock-latency = <256000>;  			operating-points-v2 = <&cpu0_opp_table>;  		}; @@ -81,7 +79,6 @@  			reg = <0x2>;  			clocks = <&gcc GCC_APPS_CLK_SRC>;  			clock-frequency = <0>; -			clock-latency = <256000>;  			operating-points-v2 = <&cpu0_opp_table>;  		}; @@ -95,7 +92,6 @@  			reg = <0x3>;  			clocks = <&gcc GCC_APPS_CLK_SRC>;  			clock-frequency = <0>; -			clock-latency = <256000>;  			operating-points-v2 = <&cpu0_opp_table>;  		}; @@ -126,7 +122,7 @@  		opp-716000000 {  			opp-hz = /bits/ 64 <716000000>;  			clock-latency-ns = <256000>; - 		}; +		};  	};  	memory { diff --git a/dts/upstream/src/arm/qcom/qcom-msm8226-microsoft-common.dtsi b/dts/upstream/src/arm/qcom/qcom-msm8226-microsoft-common.dtsi index ca76bf8af75..d4a32af0ef8 100644 --- a/dts/upstream/src/arm/qcom/qcom-msm8226-microsoft-common.dtsi +++ b/dts/upstream/src/arm/qcom/qcom-msm8226-microsoft-common.dtsi @@ -8,7 +8,11 @@   * Copyright (c) 2023, Rayyan Ansari <rayyan@ansari.sh>   */ -#include "qcom-msm8226.dtsi" +/* + * The .dts should first include qcom-msm8226.dtsi or msm8926.dtsi depending on + * the SoC on the given device. + */ +  #include "pm8226.dtsi"  #include <dt-bindings/input/input.h> diff --git a/dts/upstream/src/arm/qcom/qcom-msm8226-microsoft-dempsey.dts b/dts/upstream/src/arm/qcom/qcom-msm8226-microsoft-dempsey.dts index 2c664b5934e..f448c908841 100644 --- a/dts/upstream/src/arm/qcom/qcom-msm8226-microsoft-dempsey.dts +++ b/dts/upstream/src/arm/qcom/qcom-msm8226-microsoft-dempsey.dts @@ -8,6 +8,7 @@  /dts-v1/; +#include "qcom-msm8226.dtsi"  #include "qcom-msm8226-microsoft-common.dtsi"  / { diff --git a/dts/upstream/src/arm/qcom/qcom-msm8226-microsoft-makepeace.dts b/dts/upstream/src/arm/qcom/qcom-msm8226-microsoft-makepeace.dts index 731c5c37567..94bf3b1ad1b 100644 --- a/dts/upstream/src/arm/qcom/qcom-msm8226-microsoft-makepeace.dts +++ b/dts/upstream/src/arm/qcom/qcom-msm8226-microsoft-makepeace.dts @@ -8,6 +8,7 @@  /dts-v1/; +#include "qcom-msm8226.dtsi"  #include "qcom-msm8226-microsoft-common.dtsi"  / { diff --git a/dts/upstream/src/arm/qcom/qcom-msm8226-microsoft-moneypenny.dts b/dts/upstream/src/arm/qcom/qcom-msm8226-microsoft-moneypenny.dts index a28a83cb534..d8cdb75dfbb 100644 --- a/dts/upstream/src/arm/qcom/qcom-msm8226-microsoft-moneypenny.dts +++ b/dts/upstream/src/arm/qcom/qcom-msm8226-microsoft-moneypenny.dts @@ -8,6 +8,7 @@  /dts-v1/; +#include "qcom-msm8226.dtsi"  #include "qcom-msm8226-microsoft-common.dtsi"  /* This device has no magnetometer */ diff --git a/dts/upstream/src/arm/qcom/qcom-msm8226-samsung-matisse-common.dtsi b/dts/upstream/src/arm/qcom/qcom-msm8226-samsung-matisse-common.dtsi index a15a44fc018..f1544a7e836 100644 --- a/dts/upstream/src/arm/qcom/qcom-msm8226-samsung-matisse-common.dtsi +++ b/dts/upstream/src/arm/qcom/qcom-msm8226-samsung-matisse-common.dtsi @@ -3,11 +3,17 @@   * Copyright (c) 2022, Matti Lehtimäki <matti.lehtimaki@gmail.com>   */ +/* + * The .dts should first include qcom-msm8226.dtsi or msm8926.dtsi depending on + * the SoC on the given device. + */ +  #include <dt-bindings/input/input.h> -#include "qcom-msm8226.dtsi"  #include "pm8226.dtsi"  /delete-node/ &adsp_region; +/delete-node/ &mba_region; +/delete-node/ &mpss_region;  /delete-node/ &smem_region;  / { @@ -145,12 +151,12 @@  			no-map;  		}; -		mpss@8400000 { +		mpss_region: mpss@8400000 {  			reg = <0x08400000 0x1f00000>;  			no-map;  		}; -		mba@a300000 { +		mba_region: mba@a300000 {  			reg = <0x0a300000 0x100000>;  			no-map;  		}; @@ -223,6 +229,13 @@  	status = "okay";  }; +&modem { +	mx-supply = <&pm8226_l3>; +	pll-supply = <&pm8226_l8>; + +	status = "okay"; +}; +  &rpm_requests {  	regulators {  		compatible = "qcom,rpm-pm8226-regulators"; diff --git a/dts/upstream/src/arm/qcom/qcom-msm8226.dtsi b/dts/upstream/src/arm/qcom/qcom-msm8226.dtsi index 64c8ac94f35..51a7a3fb36d 100644 --- a/dts/upstream/src/arm/qcom/qcom-msm8226.dtsi +++ b/dts/upstream/src/arm/qcom/qcom-msm8226.dtsi @@ -6,6 +6,7 @@  /dts-v1/;  #include <dt-bindings/interrupt-controller/arm-gic.h> +#include <dt-bindings/clock/qcom,dsi-phy-28nm.h>  #include <dt-bindings/clock/qcom,gcc-msm8974.h>  #include <dt-bindings/clock/qcom,mmcc-msm8974.h>  #include <dt-bindings/clock/qcom,rpmcc.h> @@ -213,6 +214,18 @@  			no-map;  		}; +		mpss_region: mpss@8000000 { +			reg = <0x08000000 0x5100000>; +			no-map; +			status = "disabled"; +		}; + +		mba_region: mba@d100000 { +			reg = <0x0d100000 0x100000>; +			no-map; +			status = "disabled"; +		}; +  		adsp_region: adsp@dc00000 {  			reg = <0x0dc00000 0x1900000>;  			no-map; @@ -253,6 +266,65 @@  		};  	}; +	smp2p-modem { +		compatible = "qcom,smp2p"; +		qcom,smem = <435>, <428>; + +		interrupt-parent = <&intc>; +		interrupts = <GIC_SPI 27 IRQ_TYPE_EDGE_RISING>; + +		mboxes = <&apcs 14>; + +		qcom,local-pid = <0>; +		qcom,remote-pid = <1>; + +		modem_smp2p_out: master-kernel { +			qcom,entry-name = "master-kernel"; +			#qcom,smem-state-cells = <1>; +		}; + +		modem_smp2p_in: slave-kernel { +			qcom,entry-name = "slave-kernel"; + +			interrupt-controller; +			#interrupt-cells = <2>; +		}; +	}; + +	smsm { +		compatible = "qcom,smsm"; +		#address-cells = <1>; +		#size-cells = <0>; + +		mboxes = <0>, <&apcs 13>, <&apcs 9>, <&apcs 19>; + +		apps_smsm: apps@0 { +			reg = <0>; +			#qcom,smem-state-cells = <1>; +		}; + +		modem_smsm: modem@1 { +			reg = <1>; +			interrupts = <GIC_SPI 26 IRQ_TYPE_EDGE_RISING>; +			interrupt-controller; +			#interrupt-cells = <2>; +		}; + +		adsp_smsm: adsp@2 { +			reg = <2>; +			interrupts = <GIC_SPI 157 IRQ_TYPE_EDGE_RISING>; +			interrupt-controller; +			#interrupt-cells = <2>; +		}; + +		wcnss_smsm: wcnss@7 { +			reg = <7>; +			interrupts = <GIC_SPI 144 IRQ_TYPE_EDGE_RISING>; +			interrupt-controller; +			#interrupt-cells = <2>; +		}; +	}; +  	soc: soc {  		compatible = "simple-bus";  		#address-cells = <1>; @@ -845,12 +917,96 @@  			#interrupt-cells = <4>;  		}; +		bam_dmux_dma: dma-controller@fc834000 { +			compatible = "qcom,bam-v1.4.0"; +			reg = <0xfc834000 0x7000>; +			interrupts = <GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH>; +			#dma-cells = <1>; +			qcom,ee = <0>; + +			num-channels = <6>; +			qcom,num-ees = <1>; +			qcom,powered-remotely; +		}; + +		modem: remoteproc@fc880000 { +			compatible = "qcom,msm8226-mss-pil"; +			reg = <0xfc880000 0x4040>, +			      <0xfc820000 0x10000>; +			reg-names = "qdsp6", +				    "rmb"; + +			interrupts-extended = <&intc GIC_SPI 24 IRQ_TYPE_EDGE_RISING>, +					      <&modem_smp2p_in 0 IRQ_TYPE_EDGE_RISING>, +					      <&modem_smp2p_in 1 IRQ_TYPE_EDGE_RISING>, +					      <&modem_smp2p_in 2 IRQ_TYPE_EDGE_RISING>, +					      <&modem_smp2p_in 3 IRQ_TYPE_EDGE_RISING>; +			interrupt-names = "wdog", +					  "fatal", +					  "ready", +					  "handover", +					  "stop-ack"; + +			clocks = <&gcc GCC_MSS_Q6_BIMC_AXI_CLK>, +				 <&gcc GCC_MSS_CFG_AHB_CLK>, +				 <&gcc GCC_BOOT_ROM_AHB_CLK>, +				 <&rpmcc RPM_SMD_XO_CLK_SRC>; +			clock-names = "iface", +				      "bus", +				      "mem", +				      "xo"; + +			resets = <&gcc GCC_MSS_RESTART>; +			reset-names = "mss_restart"; + +			power-domains = <&rpmpd MSM8226_VDDCX>; +			power-domain-names = "cx"; + +			qcom,ext-bhs-reg = <&tcsr_regs_1 0x194>; +			qcom,halt-regs = <&tcsr_regs_1 0x180 0x200 0x280>; + +			qcom,smem-states = <&modem_smp2p_out 0>; +			qcom,smem-state-names = "stop"; + +			memory-region = <&mba_region>, <&mpss_region>; + +			status = "disabled"; + +			bam_dmux: bam-dmux { +				compatible = "qcom,bam-dmux"; + +				interrupt-parent = <&modem_smsm>; +				interrupts = <1 IRQ_TYPE_EDGE_BOTH>, <11 IRQ_TYPE_EDGE_BOTH>; +				interrupt-names = "pc", "pc-ack"; + +				qcom,smem-states = <&apps_smsm 1>, <&apps_smsm 11>; +				qcom,smem-state-names = "pc", "pc-ack"; + +				dmas = <&bam_dmux_dma 4>, <&bam_dmux_dma 5>; +				dma-names = "tx", "rx"; +			}; + +			smd-edge { +				interrupts = <GIC_SPI 25 IRQ_TYPE_EDGE_RISING>; + +				mboxes = <&apcs 12>; +				qcom,smd-edge = <0>; + +				label = "modem"; +			}; +		}; +  		tcsr_mutex: hwlock@fd484000 {  			compatible = "qcom,msm8226-tcsr-mutex", "qcom,tcsr-mutex";  			reg = <0xfd484000 0x1000>;  			#hwlock-cells = <1>;  		}; +		tcsr_regs_1: syscon@fd485000 { +			compatible = "qcom,tcsr-msm8226", "syscon"; +			reg = <0xfd485000 0x1000>; +		}; +  		tlmm: pinctrl@fd510000 {  			compatible = "qcom,msm8226-pinctrl";  			reg = <0xfd510000 0x4000>; @@ -983,8 +1139,8 @@  				 <&gcc GPLL0_VOTE>,  				 <&gcc GPLL1_VOTE>,  				 <&rpmcc RPM_SMD_GFX3D_CLK_SRC>, -				 <&mdss_dsi0_phy 1>, -				 <&mdss_dsi0_phy 0>; +				 <&mdss_dsi0_phy DSI_PIXEL_PLL_CLK>, +				 <&mdss_dsi0_phy DSI_BYTE_PLL_CLK>;  			clock-names = "xo",  				      "mmss_gpll0_vote",  				      "gpll0_vote", @@ -1060,8 +1216,8 @@  				assigned-clocks = <&mmcc BYTE0_CLK_SRC>,  						  <&mmcc PCLK0_CLK_SRC>; -				assigned-clock-parents = <&mdss_dsi0_phy 0>, -							 <&mdss_dsi0_phy 1>; +				assigned-clock-parents = <&mdss_dsi0_phy DSI_BYTE_PLL_CLK>, +							 <&mdss_dsi0_phy DSI_PIXEL_PLL_CLK>;  				clocks = <&mmcc MDSS_MDP_CLK>,  					 <&mmcc MDSS_AHB_CLK>, diff --git a/dts/upstream/src/arm/qcom/qcom-msm8926-htc-memul.dts b/dts/upstream/src/arm/qcom/qcom-msm8926-htc-memul.dts index 3037344eb24..cb571aa13c1 100644 --- a/dts/upstream/src/arm/qcom/qcom-msm8926-htc-memul.dts +++ b/dts/upstream/src/arm/qcom/qcom-msm8926-htc-memul.dts @@ -5,10 +5,12 @@  /dts-v1/; -#include "qcom-msm8226.dtsi" +#include "msm8926.dtsi"  #include "pm8226.dtsi"  /delete-node/ &adsp_region; +/delete-node/ &mba_region; +/delete-node/ &mpss_region;  /delete-node/ &smem_region;  / { @@ -193,6 +195,16 @@  	/* TPS61310 Flash/Torch @ 33 */  }; +&modem { +	mx-supply = <&pm8226_l3>; +	pll-supply = <&pm8226_l8>; +	mss-supply = <&pm8226_s5>; + +	firmware-name = "qcom/msm8926/memul/mba.b00", "qcom/msm8926/memul/modem.mdt"; + +	status = "okay"; +}; +  &pm8226_vib {  	status = "okay";  }; diff --git a/dts/upstream/src/arm/qcom/qcom-msm8926-microsoft-superman-lte.dts b/dts/upstream/src/arm/qcom/qcom-msm8926-microsoft-superman-lte.dts index 9b48661d69c..eea4fd8cd97 100644 --- a/dts/upstream/src/arm/qcom/qcom-msm8926-microsoft-superman-lte.dts +++ b/dts/upstream/src/arm/qcom/qcom-msm8926-microsoft-superman-lte.dts @@ -8,6 +8,7 @@  /dts-v1/; +#include "msm8926.dtsi"  #include "qcom-msm8226-microsoft-common.dtsi"  /* This device has touchscreen on i2c3 instead */ diff --git a/dts/upstream/src/arm/qcom/qcom-msm8926-microsoft-tesla.dts b/dts/upstream/src/arm/qcom/qcom-msm8926-microsoft-tesla.dts index 55077a5f2e3..f23bbb94cc5 100644 --- a/dts/upstream/src/arm/qcom/qcom-msm8926-microsoft-tesla.dts +++ b/dts/upstream/src/arm/qcom/qcom-msm8926-microsoft-tesla.dts @@ -8,6 +8,7 @@  /dts-v1/; +#include "msm8926.dtsi"  #include "qcom-msm8226-microsoft-common.dtsi"  /* This device has touchscreen on i2c1 instead */ diff --git a/dts/upstream/src/arm/qcom/qcom-msm8926-motorola-peregrine.dts b/dts/upstream/src/arm/qcom/qcom-msm8926-motorola-peregrine.dts index 376a3312594..db3273c755c 100644 --- a/dts/upstream/src/arm/qcom/qcom-msm8926-motorola-peregrine.dts +++ b/dts/upstream/src/arm/qcom/qcom-msm8926-motorola-peregrine.dts @@ -2,7 +2,7 @@  /dts-v1/; -#include "qcom-msm8226.dtsi" +#include "msm8926.dtsi"  #include "pm8226.dtsi"  /delete-node/ &smem_region; diff --git a/dts/upstream/src/arm/qcom/qcom-msm8926-samsung-matisselte.dts b/dts/upstream/src/arm/qcom/qcom-msm8926-samsung-matisselte.dts index d0e1bc39f8e..73e19176eb9 100644 --- a/dts/upstream/src/arm/qcom/qcom-msm8926-samsung-matisselte.dts +++ b/dts/upstream/src/arm/qcom/qcom-msm8926-samsung-matisselte.dts @@ -6,6 +6,7 @@  /dts-v1/; +#include "msm8926.dtsi"  #include "qcom-msm8226-samsung-matisse-common.dtsi"  / { @@ -27,6 +28,10 @@  	};  }; +&modem { +	mss-supply = <&pm8226_s5>; +}; +  &tlmm {  	tsp_en1_default_state: tsp-en1-default-state {  		pins = "gpio32"; diff --git a/dts/upstream/src/arm/qcom/qcom-msm8960.dtsi b/dts/upstream/src/arm/qcom/qcom-msm8960.dtsi index 865fe7cc395..203f0b69b35 100644 --- a/dts/upstream/src/arm/qcom/qcom-msm8960.dtsi +++ b/dts/upstream/src/arm/qcom/qcom-msm8960.dtsi @@ -18,7 +18,7 @@  	cpus {  		#address-cells = <1>;  		#size-cells = <0>; -		interrupts = <GIC_PPI 14 0x304>; +		interrupts = <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_HIGH)>;  		cpu@0 {  			compatible = "qcom,krait"; @@ -52,9 +52,51 @@  		reg = <0x80000000 0>;  	}; +	thermal-zones { +		cpu0-thermal { +			polling-delay-passive = <250>; +			polling-delay = <1000>; +			thermal-sensors = <&tsens 0>; + +			trips { +				cpu_alert0: trip0 { +					temperature = <60000>; +					hysteresis = <10000>; +					type = "passive"; +				}; + +				cpu_crit0: trip1 { +					temperature = <95000>; +					hysteresis = <10000>; +					type = "critical"; +				}; +			}; +		}; + +		cpu1-thermal { +			polling-delay-passive = <250>; +			polling-delay = <1000>; +			thermal-sensors = <&tsens 1>; + +			trips { +				cpu_alert1: trip0 { +					temperature = <60000>; +					hysteresis = <10000>; +					type = "passive"; +				}; + +				cpu_crit1: trip1 { +					temperature = <95000>; +					hysteresis = <10000>; +					type = "critical"; +				}; +			}; +		}; +	}; +  	cpu-pmu {  		compatible = "qcom,krait-pmu"; -		interrupts = <GIC_PPI 10 0x304>; +		interrupts = <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_HIGH)>;  		qcom,no-pc-write;  	}; @@ -107,14 +149,31 @@  		timer@200a000 {  			compatible = "qcom,kpss-wdt-msm8960", "qcom,kpss-timer",  				     "qcom,msm-timer"; -			interrupts = <GIC_PPI 1 0x301>, -				     <GIC_PPI 2 0x301>, -				     <GIC_PPI 3 0x301>; +			interrupts = <GIC_PPI 1 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_EDGE_RISING)>, +				     <GIC_PPI 2 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_EDGE_RISING)>, +				     <GIC_PPI 3 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_EDGE_RISING)>;  			reg = <0x0200a000 0x100>;  			clock-frequency = <27000000>; +			clocks = <&sleep_clk>; +			clock-names = "sleep";  			cpu-offset = <0x80000>;  		}; +		qfprom: efuse@700000 { +			compatible = "qcom,msm8960-qfprom", "qcom,qfprom"; +			reg = <0x00700000 0x1000>; +			#address-cells = <1>; +			#size-cells = <1>; + +			tsens_calib: calib@404 { +				reg = <0x404 0x10>; +			}; + +			tsens_backup: backup-calib@414 { +				reg = <0x414 0x10>; +			}; +		}; +  		msmgpio: pinctrl@800000 {  			compatible = "qcom,msm8960-pinctrl";  			gpio-controller; @@ -127,7 +186,7 @@  		};  		gcc: clock-controller@900000 { -			compatible = "qcom,gcc-msm8960"; +			compatible = "qcom,gcc-msm8960", "syscon";  			#clock-cells = <1>;  			#reset-cells = <1>;  			reg = <0x900000 0x4000>; @@ -135,6 +194,18 @@  				 <&pxo_board>,  				 <&lcc PLL4>;  			clock-names = "cxo", "pxo", "pll4"; + +			tsens: thermal-sensor { +				compatible = "qcom,msm8960-tsens"; + +				nvmem-cells = <&tsens_calib>, <&tsens_backup>; +				nvmem-cell-names = "calib", "calib_backup"; +				interrupts = <GIC_SPI 178 IRQ_TYPE_LEVEL_HIGH>; +				interrupt-names = "uplow"; + +				#qcom,sensors = <5>; +				#thermal-sensor-cells = <1>; +			};  		};  		lcc: clock-controller@28000000 { @@ -279,7 +350,7 @@  			compatible = "arm,pl18x", "arm,primecell";  			arm,primecell-periphid = <0x00051180>;  			status = "disabled"; -			reg = <0x12180000 0x8000>; +			reg = <0x12180000 0x2000>;  			interrupts = <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>;  			clocks = <&gcc SDC3_CLK>, <&gcc SDC3_H_CLK>;  			clock-names = "mclk", "apb_pclk"; @@ -289,13 +360,25 @@  			max-frequency = <192000000>;  			no-1-8-v;  			vmmc-supply = <&vsdcc_fixed>; +			dmas = <&sdcc3bam 2>, <&sdcc3bam 1>; +			dma-names = "tx", "rx"; +		}; + +		sdcc3bam: dma-controller@12182000 { +			compatible = "qcom,bam-v1.3.0"; +			reg = <0x12182000 0x4000>; +			interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>; +			clocks = <&gcc SDC3_H_CLK>; +			clock-names = "bam_clk"; +			#dma-cells = <1>; +			qcom,ee = <0>;  		};  		sdcc1: mmc@12400000 {  			status = "disabled";  			compatible = "arm,pl18x", "arm,primecell";  			arm,primecell-periphid = <0x00051180>; -			reg = <0x12400000 0x8000>; +			reg = <0x12400000 0x2000>;  			interrupts = <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>;  			clocks = <&gcc SDC1_CLK>, <&gcc SDC1_H_CLK>;  			clock-names = "mclk", "apb_pclk"; @@ -305,6 +388,18 @@  			cap-sd-highspeed;  			cap-mmc-highspeed;  			vmmc-supply = <&vsdcc_fixed>; +			dmas = <&sdcc1bam 2>, <&sdcc1bam 1>; +			dma-names = "tx", "rx"; +		}; + +		sdcc1bam: dma-controller@12402000 { +			compatible = "qcom,bam-v1.3.0"; +			reg = <0x12402000 0x4000>; +			interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>; +			clocks = <&gcc SDC1_H_CLK>; +			clock-names = "bam_clk"; +			#dma-cells = <1>; +			qcom,ee = <0>;  		};  		tcsr: syscon@1a400000 { diff --git a/dts/upstream/src/arm/qcom/qcom-msm8974-lge-nexus5-hammerhead.dts b/dts/upstream/src/arm/qcom/qcom-msm8974-lge-nexus5-hammerhead.dts index 261044fdfee..b3127f0383c 100644 --- a/dts/upstream/src/arm/qcom/qcom-msm8974-lge-nexus5-hammerhead.dts +++ b/dts/upstream/src/arm/qcom/qcom-msm8974-lge-nexus5-hammerhead.dts @@ -12,6 +12,7 @@  	chassis-type = "handset";  	aliases { +		mmc0 = &sdhc_1;  		serial0 = &blsp1_uart1;  		serial1 = &blsp2_uart4;  	}; @@ -598,7 +599,7 @@  	pinctrl-0 = <&sdc2_on>;  	pinctrl-1 = <&sdc2_off>; -	bcrmf@1 { +	wifi@1 {  		compatible = "brcm,bcm4339-fmac", "brcm,bcm4329-fmac";  		reg = <1>; diff --git a/dts/upstream/src/arm/qcom/qcom-msm8974-sony-xperia-rhine-amami.dts b/dts/upstream/src/arm/qcom/qcom-msm8974-sony-xperia-rhine-amami.dts index 9f2ab5c122d..472a45408ad 100644 --- a/dts/upstream/src/arm/qcom/qcom-msm8974-sony-xperia-rhine-amami.dts +++ b/dts/upstream/src/arm/qcom/qcom-msm8974-sony-xperia-rhine-amami.dts @@ -5,6 +5,22 @@  	model = "Sony Xperia Z1 Compact";  	compatible = "sony,xperia-amami", "qcom,msm8974";  	chassis-type = "handset"; + +	gpio-keys { +		key-camera-snapshot { +			label = "camera_snapshot"; +			gpios = <&pm8941_gpios 3 GPIO_ACTIVE_LOW>; +			linux,input-type = <1>; +			linux,code = <KEY_CAMERA>; +		}; + +		key-camera-focus { +			label = "camera_focus"; +			gpios = <&pm8941_gpios 4 GPIO_ACTIVE_LOW>; +			linux,input-type = <1>; +			linux,code = <KEY_CAMERA_FOCUS>; +		}; +	};  };  &smbb { diff --git a/dts/upstream/src/arm/qcom/qcom-msm8974-sony-xperia-rhine-honami.dts b/dts/upstream/src/arm/qcom/qcom-msm8974-sony-xperia-rhine-honami.dts index 9028f17e5c4..c3d69641fc1 100644 --- a/dts/upstream/src/arm/qcom/qcom-msm8974-sony-xperia-rhine-honami.dts +++ b/dts/upstream/src/arm/qcom/qcom-msm8974-sony-xperia-rhine-honami.dts @@ -5,4 +5,20 @@  	model = "Sony Xperia Z1";  	compatible = "sony,xperia-honami", "qcom,msm8974";  	chassis-type = "handset"; + +	gpio-keys { +		key-camera-snapshot { +			label = "camera_snapshot"; +			gpios = <&pm8941_gpios 3 GPIO_ACTIVE_LOW>; +			linux,input-type = <1>; +			linux,code = <KEY_CAMERA>; +		}; + +		key-camera-focus { +			label = "camera_focus"; +			gpios = <&pm8941_gpios 4 GPIO_ACTIVE_LOW>; +			linux,input-type = <1>; +			linux,code = <KEY_CAMERA_FOCUS>; +		}; +	};  }; diff --git a/dts/upstream/src/arm/qcom/qcom-msm8974-sony-xperia-rhine-togari.dts b/dts/upstream/src/arm/qcom/qcom-msm8974-sony-xperia-rhine-togari.dts new file mode 100644 index 00000000000..f60f7304d35 --- /dev/null +++ b/dts/upstream/src/arm/qcom/qcom-msm8974-sony-xperia-rhine-togari.dts @@ -0,0 +1,16 @@ +// SPDX-License-Identifier: GPL-2.0 +#include "qcom-msm8974-sony-xperia-rhine.dtsi" + +/* Togari uses a different touchscreen compared to other rhine devices */ +/delete-node/ &touchscreen; + +/ { +	model = "Sony Xperia Z Ultra"; +	compatible = "sony,xperia-togari", "qcom,msm8974"; +	chassis-type = "handset"; +}; + +&pm8941_l23 { +	regulator-min-microvolt = <2600000>; +	regulator-max-microvolt = <2600000>; +}; diff --git a/dts/upstream/src/arm/qcom/qcom-msm8974-sony-xperia-rhine.dtsi b/dts/upstream/src/arm/qcom/qcom-msm8974-sony-xperia-rhine.dtsi index d34659ebac2..d7322fc6a09 100644 --- a/dts/upstream/src/arm/qcom/qcom-msm8974-sony-xperia-rhine.dtsi +++ b/dts/upstream/src/arm/qcom/qcom-msm8974-sony-xperia-rhine.dtsi @@ -8,6 +8,8 @@  / {  	aliases { +		mmc0 = &sdhc_1; +		mmc1 = &sdhc_2;  		serial0 = &blsp1_uart2;  	}; @@ -28,20 +30,6 @@  			linux,code = <KEY_VOLUMEDOWN>;  		}; -		key-camera-snapshot { -			label = "camera_snapshot"; -			gpios = <&pm8941_gpios 3 GPIO_ACTIVE_LOW>; -			linux,input-type = <1>; -			linux,code = <KEY_CAMERA>; -		}; - -		key-camera-focus { -			label = "camera_focus"; -			gpios = <&pm8941_gpios 4 GPIO_ACTIVE_LOW>; -			linux,input-type = <1>; -			linux,code = <KEY_CAMERA_FOCUS>; -		}; -  		key-volume-up {  			label = "volume_up";  			gpios = <&pm8941_gpios 5 GPIO_ACTIVE_LOW>; @@ -98,7 +86,7 @@  	status = "okay";  	clock-frequency = <355000>; -	synaptics@2c { +	touchscreen: synaptics@2c {  		compatible = "syna,rmi4-i2c";  		reg = <0x2c>; @@ -446,6 +434,8 @@  };  &smbb { +	usb-charge-current-limit = <1800000>; +  	qcom,fast-charge-safe-current = <1500000>;  	qcom,fast-charge-current-limit = <1500000>;  	qcom,dc-current-limit = <1800000>; diff --git a/dts/upstream/src/arm/qcom/qcom-msm8974.dtsi b/dts/upstream/src/arm/qcom/qcom-msm8974.dtsi index e3f9c56a778..7e119370f33 100644 --- a/dts/upstream/src/arm/qcom/qcom-msm8974.dtsi +++ b/dts/upstream/src/arm/qcom/qcom-msm8974.dtsi @@ -3,6 +3,7 @@  #include <dt-bindings/interconnect/qcom,msm8974.h>  #include <dt-bindings/interrupt-controller/arm-gic.h> +#include <dt-bindings/clock/qcom,dsi-phy-28nm.h>  #include <dt-bindings/clock/qcom,gcc-msm8974.h>  #include <dt-bindings/clock/qcom,mmcc-msm8974.h>  #include <dt-bindings/clock/qcom,rpmcc.h> @@ -1871,10 +1872,10 @@  				 <&gcc GPLL0_VOTE>,  				 <&gcc GPLL1_VOTE>,  				 <&rpmcc RPM_SMD_GFX3D_CLK_SRC>, -				 <&mdss_dsi0_phy 1>, -				 <&mdss_dsi0_phy 0>, -				 <&mdss_dsi1_phy 1>, -				 <&mdss_dsi1_phy 0>, +				 <&mdss_dsi0_phy DSI_PIXEL_PLL_CLK>, +				 <&mdss_dsi0_phy DSI_BYTE_PLL_CLK>, +				 <&mdss_dsi1_phy DSI_PIXEL_PLL_CLK>, +				 <&mdss_dsi1_phy DSI_BYTE_PLL_CLK>,  				 <0>,  				 <0>,  				 <0>; @@ -1961,8 +1962,10 @@  				interrupt-parent = <&mdss>;  				interrupts = <4>; -				assigned-clocks = <&mmcc BYTE0_CLK_SRC>, <&mmcc PCLK0_CLK_SRC>; -				assigned-clock-parents = <&mdss_dsi0_phy 0>, <&mdss_dsi0_phy 1>; +				assigned-clocks = <&mmcc BYTE0_CLK_SRC>, +						  <&mmcc PCLK0_CLK_SRC>; +				assigned-clock-parents = <&mdss_dsi0_phy DSI_BYTE_PLL_CLK>, +							 <&mdss_dsi0_phy DSI_PIXEL_PLL_CLK>;  				clocks = <&mmcc MDSS_MDP_CLK>,  					 <&mmcc MDSS_AHB_CLK>, @@ -2032,8 +2035,10 @@  				interrupt-parent = <&mdss>;  				interrupts = <4>; -				assigned-clocks = <&mmcc BYTE1_CLK_SRC>, <&mmcc PCLK1_CLK_SRC>; -				assigned-clock-parents = <&mdss_dsi1_phy 0>, <&mdss_dsi1_phy 1>; +				assigned-clocks = <&mmcc BYTE1_CLK_SRC>, +						  <&mmcc PCLK1_CLK_SRC>; +				assigned-clock-parents = <&mdss_dsi1_phy DSI_BYTE_PLL_CLK>, +							 <&mdss_dsi1_phy DSI_PIXEL_PLL_CLK>;  				clocks = <&mmcc MDSS_MDP_CLK>,  					 <&mmcc MDSS_AHB_CLK>, diff --git a/dts/upstream/src/arm/qcom/qcom-msm8974pro-oneplus-bacon.dts b/dts/upstream/src/arm/qcom/qcom-msm8974pro-oneplus-bacon.dts index 4c8edadea0a..88ff6535477 100644 --- a/dts/upstream/src/arm/qcom/qcom-msm8974pro-oneplus-bacon.dts +++ b/dts/upstream/src/arm/qcom/qcom-msm8974pro-oneplus-bacon.dts @@ -13,6 +13,7 @@  	qcom,board-id = <8 0>;  	aliases { +		mmc0 = &sdhc_1;  		serial0 = &blsp1_uart2;  	}; diff --git a/dts/upstream/src/arm/qcom/qcom-sdx55.dtsi b/dts/upstream/src/arm/qcom/qcom-sdx55.dtsi index 39530eb580e..20fdae9825e 100644 --- a/dts/upstream/src/arm/qcom/qcom-sdx55.dtsi +++ b/dts/upstream/src/arm/qcom/qcom-sdx55.dtsi @@ -57,7 +57,7 @@  			enable-method = "psci";  			clocks = <&apcs>;  			power-domains = <&rpmhpd SDX55_CX>; -			power-domain-names = "rpmhpd"; +			power-domain-names = "perf";  			operating-points-v2 = <&cpu_opp_table>;  		};  	}; diff --git a/dts/upstream/src/arm/qcom/qcom-sdx65.dtsi b/dts/upstream/src/arm/qcom/qcom-sdx65.dtsi index 6b23ee676c9..c8e312dcd26 100644 --- a/dts/upstream/src/arm/qcom/qcom-sdx65.dtsi +++ b/dts/upstream/src/arm/qcom/qcom-sdx65.dtsi @@ -58,7 +58,7 @@  			enable-method = "psci";  			clocks = <&apcs>;  			power-domains = <&rpmhpd SDX65_CX_AO>; -			power-domain-names = "rpmhpd"; +			power-domain-names = "perf";  			operating-points-v2 = <&cpu_opp_table>;  		};  	}; | 
