mirror of
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-08-05 16:54:27 +00:00

It turns out that only a few people have the fingerprint sensor hooked up on their board. Leaving this enabled is slowing down boot for everyone else because the driver slowly fails to probe while trying to communicate with a sensor that isn't there. Remove the node to speed up boot, developers with the board can manually enable it themselves. Reported-by: Douglas Anderson <dianders@chromium.org> Signed-off-by: Stephen Boyd <swboyd@chromium.org> Reviewed-by: Douglas Anderson <dianders@chromium.org> Signed-off-by: Bjorn Andersson <andersson@kernel.org> Link: https://lore.kernel.org/r/20221025180703.1806234-1-swboyd@chromium.org
359 lines
6.7 KiB
Text
359 lines
6.7 KiB
Text
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
|
/*
|
|
* Google Herobrine board device tree source
|
|
*
|
|
* Copyright 2022 Google LLC.
|
|
*/
|
|
|
|
/dts-v1/;
|
|
|
|
#include "sc7280-herobrine.dtsi"
|
|
#include "sc7280-herobrine-audio-rt5682.dtsi"
|
|
#include "sc7280-herobrine-lte-sku.dtsi"
|
|
|
|
/ {
|
|
model = "Google Herobrine (rev1+)";
|
|
compatible = "google,herobrine", "qcom,sc7280";
|
|
};
|
|
|
|
/*
|
|
* ADDITIONS TO FIXED REGULATORS DEFINED IN PARENT DEVICE TREE FILES
|
|
*
|
|
* Sort order matches the order in the parent files (parents before children).
|
|
*/
|
|
|
|
&pp3300_codec {
|
|
status = "okay";
|
|
};
|
|
|
|
&pp3300_fp_mcu {
|
|
status = "okay";
|
|
};
|
|
|
|
&pp2850_vcm_wf_cam {
|
|
status = "okay";
|
|
};
|
|
|
|
&pp2850_wf_cam {
|
|
status = "okay";
|
|
};
|
|
|
|
&pp1800_wf_cam {
|
|
status = "okay";
|
|
};
|
|
|
|
&pp1200_wf_cam {
|
|
status = "okay";
|
|
};
|
|
|
|
/* ADDITIONS TO NODES DEFINED IN PARENT DEVICE TREE FILES */
|
|
|
|
/*
|
|
* Although the trackpad is really part of the herobrine baseboard, we'll
|
|
* put the actual definition in the board device tree since different boards
|
|
* might hook up different trackpads (or no i2c trackpad at all in the case
|
|
* of tablets / detachables).
|
|
*/
|
|
ap_tp_i2c: &i2c0 {
|
|
status = "okay";
|
|
clock-frequency = <400000>;
|
|
|
|
trackpad: trackpad@15 {
|
|
compatible = "elan,ekth3000";
|
|
reg = <0x15>;
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&tp_int_odl>;
|
|
|
|
interrupt-parent = <&tlmm>;
|
|
interrupts = <7 IRQ_TYPE_EDGE_FALLING>;
|
|
|
|
vcc-supply = <&pp3300_z1>;
|
|
|
|
wakeup-source;
|
|
};
|
|
};
|
|
|
|
/*
|
|
* The touchscreen connector might come off the Qcard, at least in the case of
|
|
* eDP. Like the trackpad, we'll put it in the board device tree file since
|
|
* different boards have different touchscreens.
|
|
*/
|
|
ts_i2c: &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 = <&ts_avdd>;
|
|
};
|
|
};
|
|
|
|
&mdss_edp {
|
|
status = "okay";
|
|
};
|
|
|
|
&mdss_edp_phy {
|
|
status = "okay";
|
|
};
|
|
|
|
/* For nvme */
|
|
&pcie1 {
|
|
status = "okay";
|
|
};
|
|
|
|
/* For nvme */
|
|
&pcie1_phy {
|
|
status = "okay";
|
|
};
|
|
|
|
/* 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 herobrine board and is named it gets that name.
|
|
* - If a pin goes to herobrine 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",
|
|
"",
|
|
"",
|
|
"",
|
|
"PMIC_EDP_BL_EN",
|
|
"PMIC_EDP_BL_PWM",
|
|
"";
|
|
};
|
|
|
|
&tlmm {
|
|
gpio-line-names = "AP_TP_I2C_SDA", /* 0 */
|
|
"AP_TP_I2C_SCL",
|
|
"SSD_RST_L",
|
|
"PE_WAKE_ODL",
|
|
"AP_SAR_SDA",
|
|
"AP_SAR_SCL",
|
|
"PRB_SC_GPIO_6",
|
|
"TP_INT_ODL",
|
|
"HP_I2C_SDA",
|
|
"HP_I2C_SCL",
|
|
|
|
"GNSS_L1_EN", /* 10 */
|
|
"GNSS_L5_EN",
|
|
"SPI_AP_MOSI",
|
|
"SPI_AP_MISO",
|
|
"SPI_AP_CLK",
|
|
"SPI_AP_CS0_L",
|
|
/*
|
|
* AP_FLASH_WP is crossystem ABI. Schematics
|
|
* call it BIOS_FLASH_WP_OD.
|
|
*/
|
|
"AP_FLASH_WP",
|
|
"",
|
|
"AP_EC_INT_L",
|
|
"",
|
|
|
|
"UF_CAM_RST_L", /* 20 */
|
|
"WF_CAM_RST_L",
|
|
"UART_AP_TX_DBG_RX",
|
|
"UART_DBG_TX_AP_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",
|
|
"PRB_SC_GPIO_32",
|
|
"HUB_RST_L",
|
|
"",
|
|
"",
|
|
"AP_SPI_FP_MISO",
|
|
"AP_SPI_FP_MOSI",
|
|
"AP_SPI_FP_CLK",
|
|
"AP_SPI_FP_CS_L",
|
|
|
|
"AP_EC_SPI_MISO", /* 40 */
|
|
"AP_EC_SPI_MOSI",
|
|
"AP_EC_SPI_CLK",
|
|
"AP_EC_SPI_CS_L",
|
|
"LCM_RST_L",
|
|
"EARLY_EUD_N",
|
|
"",
|
|
"DP_HOT_PLUG_DET",
|
|
"IO_BRD_MLB_ID0",
|
|
"IO_BRD_MLB_ID1",
|
|
|
|
"IO_BRD_MLB_ID2", /* 50 */
|
|
"SSD_EN",
|
|
"TS_I2C_SDA_CONN",
|
|
"TS_I2C_CLK_CONN",
|
|
"TS_RST_CONN",
|
|
"TS_INT_CONN",
|
|
"AP_I2C_TPM_SDA",
|
|
"AP_I2C_TPM_SCL",
|
|
"PRB_SC_GPIO_58",
|
|
"PRB_SC_GPIO_59",
|
|
|
|
"EDP_HOT_PLUG_DET_N", /* 60 */
|
|
"FP_TO_AP_IRQ_L",
|
|
"",
|
|
"AMP_EN",
|
|
"CAM0_MCLK_GPIO_64",
|
|
"CAM1_MCLK_GPIO_65",
|
|
"WF_CAM_MCLK",
|
|
"PRB_SC_GPIO_67",
|
|
"FPMCU_BOOT0",
|
|
"UF_CAM_SDA",
|
|
|
|
"UF_CAM_SCL", /* 70 */
|
|
"",
|
|
"",
|
|
"WF_CAM_SDA",
|
|
"WF_CAM_SCL",
|
|
"",
|
|
"",
|
|
"EN_FP_RAILS",
|
|
"FP_RST_L",
|
|
"PCIE1_CLKREQ_ODL",
|
|
|
|
"EN_PP3300_DX_EDP", /* 80 */
|
|
"SC_GPIO_81",
|
|
"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_CD_ODL",
|
|
"",
|
|
"",
|
|
"MOS_BT_WLAN_SLIMBUS_CLK",
|
|
"MOS_BT_WLAN_SLIMBUS_DAT0",
|
|
"HP_MCLK",
|
|
"HP_BCLK",
|
|
"HP_DOUT",
|
|
"HP_DIN",
|
|
|
|
"HP_LRCLK", /* 100 */
|
|
"HP_IRQ",
|
|
"",
|
|
"",
|
|
"GSC_AP_INT_ODL",
|
|
"EN_PP3300_CODEC",
|
|
"AMP_BCLK",
|
|
"AMP_DIN",
|
|
"AMP_LRCLK",
|
|
"UIM1_DATA_GPIO_109",
|
|
|
|
"UIM1_CLK_GPIO_110", /* 110 */
|
|
"UIM1_RESET_GPIO_111",
|
|
"PRB_SC_GPIO_112",
|
|
"UIM0_DATA",
|
|
"UIM0_CLK",
|
|
"UIM0_RST",
|
|
"UIM0_PRESENT_ODL",
|
|
"SDM_RFFE0_CLK",
|
|
"SDM_RFFE0_DATA",
|
|
"WF_CAM_EN",
|
|
|
|
"FASTBOOT_SEL_0", /* 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",
|
|
"PRB_SC_GPIO_129",
|
|
|
|
"LCM_ID0", /* 130 */
|
|
"LCM_ID1",
|
|
"",
|
|
"SDR_QLINK_REQ",
|
|
"SDR_QLINK_EN",
|
|
"QLINK0_WMSS_RESET_N",
|
|
"SMR526_QLINK1_REQ",
|
|
"SMR526_QLINK1_EN",
|
|
"SMR526_QLINK1_WMSS_RESET_N",
|
|
"PRB_SC_GPIO_139",
|
|
|
|
"SAR1_IRQ_ODL", /* 140 */
|
|
"SAR0_IRQ_ODL",
|
|
"PRB_SC_GPIO_142",
|
|
"",
|
|
"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_ODL",
|
|
"HUB_EN",
|
|
"WCD_SWR_TX_DATA2",
|
|
"",
|
|
|
|
"", /* 160 */
|
|
"",
|
|
"",
|
|
"",
|
|
"",
|
|
"",
|
|
"",
|
|
"",
|
|
"",
|
|
"",
|
|
|
|
"", /* 170 */
|
|
"MOS_BLE_UART_TX",
|
|
"MOS_BLE_UART_RX",
|
|
"",
|
|
"";
|
|
};
|