378 lines
		
	
	
		
			6.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			378 lines
		
	
	
		
			6.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
 | |
| /*
 | |
|  * sc7280 CRD 3+ board device tree source
 | |
|  *
 | |
|  * Copyright 2022 Google LLC.
 | |
|  */
 | |
| 
 | |
| /dts-v1/;
 | |
| 
 | |
| #include "sc7280-herobrine.dtsi"
 | |
| #include "sc7280-herobrine-audio-wcd9385.dtsi"
 | |
| #include "sc7280-herobrine-lte-sku.dtsi"
 | |
| 
 | |
| / {
 | |
| 	model = "Qualcomm Technologies, Inc. sc7280 CRD platform (rev5+)";
 | |
| 	compatible = "google,zoglin", "google,hoglin", "qcom,sc7280";
 | |
| 
 | |
| 	/* FIXED REGULATORS */
 | |
| 
 | |
| 	/*
 | |
| 	 * On most herobrine boards PPVAR_SYS directly provides VREG_EDP_BL.
 | |
| 	 * However, on CRD there's an extra regulator in the way. Since this
 | |
| 	 * is expected to be uncommon, we'll leave the "vreg_edp_bl" label
 | |
| 	 * in the baseboard herobrine.dtsi point at "ppvar_sys" and then
 | |
| 	 * make a "_crd" specific version here.
 | |
| 	 */
 | |
| 	vreg_edp_bl_crd: vreg-edp-bl-crd-regulator {
 | |
| 		compatible = "regulator-fixed";
 | |
| 		regulator-name = "vreg_edp_bl_crd";
 | |
| 
 | |
| 		gpio = <&pm8350c_gpios 6 GPIO_ACTIVE_HIGH>;
 | |
| 		enable-active-high;
 | |
| 		pinctrl-names = "default";
 | |
| 		pinctrl-0 = <&edp_bl_reg_en>;
 | |
| 
 | |
| 		vin-supply = <&ppvar_sys>;
 | |
| 	};
 | |
| };
 | |
| 
 | |
| /* ADDITIONS TO NODES DEFINED IN PARENT DEVICE TREE FILES */
 | |
| 
 | |
| &apps_rsc {
 | |
| 	regulators-2 {
 | |
| 		compatible = "qcom,pmg1110-rpmh-regulators";
 | |
| 		qcom,pmic-id = "k";
 | |
| 
 | |
| 		vreg_s1k_1p0: smps1 {
 | |
| 			regulator-min-microvolt = <1010000>;
 | |
| 			regulator-max-microvolt = <1170000>;
 | |
| 		};
 | |
| 	};
 | |
| };
 | |
| 
 | |
| ap_tp_i2c: &i2c0 {
 | |
| 	status = "okay";
 | |
| 	clock-frequency = <400000>;
 | |
| 
 | |
| 	trackpad: trackpad@15 {
 | |
| 		compatible = "hid-over-i2c";
 | |
| 		reg = <0x15>;
 | |
| 		pinctrl-names = "default";
 | |
| 		pinctrl-0 = <&tp_int_odl>;
 | |
| 
 | |
| 		interrupt-parent = <&tlmm>;
 | |
| 		interrupts = <7 IRQ_TYPE_EDGE_FALLING>;
 | |
| 
 | |
| 		post-power-on-delay-ms = <20>;
 | |
| 		hid-descr-addr = <0x0001>;
 | |
| 		vdd-supply = <&pp3300_z1>;
 | |
| 
 | |
| 		wakeup-source;
 | |
| 	};
 | |
| };
 | |
| 
 | |
| &ap_sar_sensor_i2c {
 | |
| 	status = "okay";
 | |
| };
 | |
| 
 | |
| &ap_sar_sensor0 {
 | |
| 	status = "okay";
 | |
| };
 | |
| 
 | |
| &ap_sar_sensor1 {
 | |
| 	status = "okay";
 | |
| };
 | |
| 
 | |
| ap_ts_pen_1v8: &i2c13 {
 | |
| 	status = "okay";
 | |
| 	clock-frequency = <400000>;
 | |
| 
 | |
| 	ap_ts: touchscreen@5c {
 | |
| 		compatible = "hid-over-i2c";
 | |
| 		reg = <0x5c>;
 | |
| 		pinctrl-names = "default";
 | |
| 		pinctrl-0 = <&ts_int_conn>, <&ts_rst_conn>;
 | |
| 
 | |
| 		interrupt-parent = <&tlmm>;
 | |
| 		interrupts = <55 IRQ_TYPE_LEVEL_LOW>;
 | |
| 
 | |
| 		post-power-on-delay-ms = <500>;
 | |
| 		hid-descr-addr = <0x0000>;
 | |
| 
 | |
| 		vdd-supply = <&pp3300_left_in_mlb>;
 | |
| 	};
 | |
| };
 | |
| 
 | |
| &mdss_edp {
 | |
| 	status = "okay";
 | |
| };
 | |
| 
 | |
| &mdss_edp_phy {
 | |
| 	status = "okay";
 | |
| };
 | |
| 
 | |
| /* For nvme */
 | |
| &pcie1 {
 | |
| 	status = "okay";
 | |
| };
 | |
| 
 | |
| /* For nvme */
 | |
| &pcie1_phy {
 | |
| 	status = "okay";
 | |
| };
 | |
| 
 | |
| &pm8350c_pwm_backlight {
 | |
| 	power-supply = <&vreg_edp_bl_crd>;
 | |
| };
 | |
| 
 | |
| /* For eMMC */
 | |
| &sdhc_1 {
 | |
| 	status = "okay";
 | |
| };
 | |
| 
 | |
| /* For SD Card */
 | |
| &sdhc_2 {
 | |
| 	status = "okay";
 | |
| };
 | |
| 
 | |
| /* PINCTRL - ADDITIONS TO NODES IN PARENT DEVICE TREE FILES */
 | |
| 
 | |
| /*
 | |
|  * This pin goes to the display panel but then doesn't actually do anything
 | |
|  * on the panel itself (it doesn't connect to the touchscreen controller).
 | |
|  * We'll set a pullup here just to park the line.
 | |
|  */
 | |
| &ts_rst_conn {
 | |
| 	bias-pull-up;
 | |
| };
 | |
| 
 | |
| /* PINCTRL - BOARD-SPECIFIC */
 | |
| 
 | |
| /*
 | |
|  * Methodology for gpio-line-names:
 | |
|  * - If a pin goes to CRD board and is named it gets that name.
 | |
|  * - If a pin goes to CRD board and is not named, it gets no name.
 | |
|  * - If a pin is totally internal to Qcard then it gets Qcard name.
 | |
|  * - If a pin is not hooked up on Qcard, it gets no name.
 | |
|  */
 | |
| 
 | |
| &pm8350c_gpios {
 | |
| 	gpio-line-names = "FLASH_STROBE_1",		/* 1 */
 | |
| 			  "AP_SUSPEND",
 | |
| 			  "PM8008_1_RST_N",
 | |
| 			  "",
 | |
| 			  "",
 | |
| 			  "EDP_BL_REG_EN",
 | |
| 			  "PMIC_EDP_BL_EN",
 | |
| 			  "PMIC_EDP_BL_PWM",
 | |
| 			  "";
 | |
| 
 | |
| 	edp_bl_reg_en: edp-bl-reg-en-state {
 | |
| 		pins = "gpio6";
 | |
| 		function = "normal";
 | |
| 		bias-disable;
 | |
| 		qcom,drive-strength = <PMIC_GPIO_STRENGTH_LOW>;
 | |
| 	};
 | |
| };
 | |
| 
 | |
| &tlmm {
 | |
| 	gpio-line-names = "AP_TP_I2C_SDA",		/* 0 */
 | |
| 			  "AP_TP_I2C_SCL",
 | |
| 			  "PCIE1_RESET_N",
 | |
| 			  "PCIE1_WAKE_N",
 | |
| 			  "APPS_I2C_SDA",
 | |
| 			  "APPS_I2C_SCL",
 | |
| 			  "",
 | |
| 			  "TPAD_INT_N",
 | |
| 			  "",
 | |
| 			  "",
 | |
| 
 | |
| 			  "GNSS_L1_EN",			/* 10 */
 | |
| 			  "GNSS_L5_EN",
 | |
| 			  "QSPI_DATA_0",
 | |
| 			  "QSPI_DATA_1",
 | |
| 			  "QSPI_CLK",
 | |
| 			  "QSPI_CS_N_1",
 | |
| 			  /*
 | |
| 			   * AP_FLASH_WP is crossystem ABI. Schematics call it
 | |
| 			   * BIOS_FLASH_WP_L (the '_L' suffix is misleading, the
 | |
| 			   * signal is active high).
 | |
| 			   */
 | |
| 			  "AP_FLASH_WP",
 | |
| 			  "",
 | |
| 			  "AP_EC_INT_N",
 | |
| 			  "",
 | |
| 
 | |
| 			  "CAM0_RST_N",			/* 20 */
 | |
| 			  "CAM1_RST_N",
 | |
| 			  "SM_DBG_UART_TX",
 | |
| 			  "SM_DBG_UART_RX",
 | |
| 			  "",
 | |
| 			  "PM8008_IRQ_1",
 | |
| 			  "HOST2WLAN_SOL",
 | |
| 			  "WLAN2HOST_SOL",
 | |
| 			  "MOS_BT_UART_CTS",
 | |
| 			  "MOS_BT_UART_RFR",
 | |
| 
 | |
| 			  "MOS_BT_UART_TX",		/* 30 */
 | |
| 			  "MOS_BT_UART_RX",
 | |
| 			  "",
 | |
| 			  "HUB_RST",
 | |
| 			  "",
 | |
| 			  "",
 | |
| 			  "",
 | |
| 			  "",
 | |
| 			  "",
 | |
| 			  "",
 | |
| 
 | |
| 			  "EC_SPI_MISO_GPIO40",		/* 40 */
 | |
| 			  "EC_SPI_MOSI_GPIO41",
 | |
| 			  "EC_SPI_CLK_GPIO42",
 | |
| 			  "EC_SPI_CS_GPIO43",
 | |
| 			  "",
 | |
| 			  "EARLY_EUD_EN",
 | |
| 			  "",
 | |
| 			  "DP_HOT_PLUG_DETECT",
 | |
| 			  "AP_BRD_ID_0",
 | |
| 			  "AP_BRD_ID_1",
 | |
| 
 | |
| 			  "AP_BRD_ID_2",		/* 50 */
 | |
| 			  "NVME_PWR_REG_EN",
 | |
| 			  "TS_I2C_SDA_CONN",
 | |
| 			  "TS_I2C_CLK_CONN",
 | |
| 			  "TS_RST_CONN",
 | |
| 			  "TS_INT_CONN",
 | |
| 			  "AP_I2C_TPM_SDA",
 | |
| 			  "AP_I2C_TPM_SCL",
 | |
| 			  "",
 | |
| 			  "",
 | |
| 
 | |
| 			  "EDP_HOT_PLUG_DET_N",		/* 60 */
 | |
| 			  "",
 | |
| 			  "",
 | |
| 			  "AMP_EN",
 | |
| 			  "CAM0_MCLK_GPIO_64",
 | |
| 			  "CAM1_MCLK_GPIO_65",
 | |
| 			  "",
 | |
| 			  "",
 | |
| 			  "",
 | |
| 			  "CCI_I2C_SDA0",
 | |
| 
 | |
| 			  "CCI_I2C_SCL0",		/* 70 */
 | |
| 			  "",
 | |
| 			  "",
 | |
| 			  "",
 | |
| 			  "",
 | |
| 			  "",
 | |
| 			  "",
 | |
| 			  "",
 | |
| 			  "",
 | |
| 			  "PCIE1_CLK_REQ_N",
 | |
| 
 | |
| 			  "EN_PP3300_DX_EDP",		/* 80 */
 | |
| 			  "US_EURO_HS_SEL",
 | |
| 			  "FORCED_USB_BOOT",
 | |
| 			  "WCD_RESET_N",
 | |
| 			  "MOS_WLAN_EN",
 | |
| 			  "MOS_BT_EN",
 | |
| 			  "MOS_SW_CTRL",
 | |
| 			  "MOS_PCIE0_RST",
 | |
| 			  "MOS_PCIE0_CLKREQ_N",
 | |
| 			  "MOS_PCIE0_WAKE_N",
 | |
| 
 | |
| 			  "MOS_LAA_AS_EN",		/* 90 */
 | |
| 			  "SD_CARD_DET_CONN",
 | |
| 			  "",
 | |
| 			  "",
 | |
| 			  "MOS_BT_WLAN_SLIMBUS_CLK",
 | |
| 			  "MOS_BT_WLAN_SLIMBUS_DAT0",
 | |
| 			  "",
 | |
| 			  "",
 | |
| 			  "",
 | |
| 			  "",
 | |
| 
 | |
| 			  "",				/* 100 */
 | |
| 			  "",
 | |
| 			  "",
 | |
| 			  "",
 | |
| 			  "H1_AP_INT_N",
 | |
| 			  "",
 | |
| 			  "AMP_BCLK",
 | |
| 			  "AMP_DIN",
 | |
| 			  "AMP_LRCLK",
 | |
| 			  "UIM1_DATA_GPIO_109",
 | |
| 
 | |
| 			  "UIM1_CLK_GPIO_110",		/* 110 */
 | |
| 			  "UIM1_RESET_GPIO_111",
 | |
| 			  "",
 | |
| 			  "UIM1_DATA",
 | |
| 			  "UIM1_CLK",
 | |
| 			  "UIM1_RESET",
 | |
| 			  "UIM1_PRESENT",
 | |
| 			  "SDM_RFFE0_CLK",
 | |
| 			  "SDM_RFFE0_DATA",
 | |
| 			  "",
 | |
| 
 | |
| 			  "SDM_RFFE1_DATA",		/* 120 */
 | |
| 			  "SC_GPIO_121",
 | |
| 			  "FASTBOOT_SEL_1",
 | |
| 			  "SC_GPIO_123",
 | |
| 			  "FASTBOOT_SEL_2",
 | |
| 			  "SM_RFFE4_CLK_GRFC_8",
 | |
| 			  "SM_RFFE4_DATA_GRFC_9",
 | |
| 			  "WLAN_COEX_UART1_RX",
 | |
| 			  "WLAN_COEX_UART1_TX",
 | |
| 			  "",
 | |
| 
 | |
| 			  "",				/* 130 */
 | |
| 			  "",
 | |
| 			  "",
 | |
| 			  "SDR_QLINK_REQ",
 | |
| 			  "SDR_QLINK_EN",
 | |
| 			  "QLINK0_WMSS_RESET_N",
 | |
| 			  "SMR526_QLINK1_REQ",
 | |
| 			  "SMR526_QLINK1_EN",
 | |
| 			  "SMR526_QLINK1_WMSS_RESET_N",
 | |
| 			  "",
 | |
| 
 | |
| 			  "SAR1_INT_N",			/* 140 */
 | |
| 			  "SAR0_INT_N",
 | |
| 			  "",
 | |
| 			  "",
 | |
| 			  "WCD_SWR_TX_CLK",
 | |
| 			  "WCD_SWR_TX_DATA0",
 | |
| 			  "WCD_SWR_TX_DATA1",
 | |
| 			  "WCD_SWR_RX_CLK",
 | |
| 			  "WCD_SWR_RX_DATA0",
 | |
| 			  "WCD_SWR_RX_DATA1",
 | |
| 
 | |
| 			  "DMIC01_CLK",			/* 150 */
 | |
| 			  "DMIC01_DATA",
 | |
| 			  "DMIC23_CLK",
 | |
| 			  "DMIC23_DATA",
 | |
| 			  "",
 | |
| 			  "",
 | |
| 			  "EC_IN_RW_N",
 | |
| 			  "EN_PP3300_HUB",
 | |
| 			  "WCD_SWR_TX_DATA2",
 | |
| 			  "",
 | |
| 
 | |
| 			  "",				/* 160 */
 | |
| 			  "",
 | |
| 			  "",
 | |
| 			  "",
 | |
| 			  "",
 | |
| 			  "",
 | |
| 			  "",
 | |
| 			  "",
 | |
| 			  "",
 | |
| 			  "",
 | |
| 
 | |
| 			  "",				/* 170 */
 | |
| 			  "MOS_BLE_UART_TX",
 | |
| 			  "MOS_BLE_UART_RX",
 | |
| 			  "",
 | |
| 			  "";
 | |
| };
 |