402 lines
6.9 KiB
Plaintext
402 lines
6.9 KiB
Plaintext
// SPDX-License-Identifier: GPL-2.0
|
|
/*
|
|
* Copyright (c) 2015, The Linux Foundation. All rights reserved.
|
|
* Copyright (c) 2020-2023, Linaro Ltd.
|
|
*
|
|
*/
|
|
|
|
/dts-v1/;
|
|
|
|
#include "msm8939.dtsi"
|
|
#include "msm8939-pm8916.dtsi"
|
|
#include <dt-bindings/arm/qcom,ids.h>
|
|
#include <dt-bindings/gpio/gpio.h>
|
|
#include <dt-bindings/pinctrl/qcom,pmic-gpio.h>
|
|
#include <dt-bindings/sound/apq8016-lpass.h>
|
|
|
|
/ {
|
|
model = "Square, Inc. T2 Devkit";
|
|
compatible = "square,apq8039-t2", "qcom,msm8939";
|
|
|
|
qcom,board-id = <0x53 0x54>;
|
|
qcom,msm-id = <QCOM_ID_APQ8039 0x30000>;
|
|
|
|
aliases {
|
|
mmc0 = &sdhc_1;
|
|
mmc1 = &sdhc_2;
|
|
serial0 = &blsp_uart1;
|
|
serial1 = &blsp_uart2;
|
|
};
|
|
|
|
bl: backlight {
|
|
compatible = "gpio-backlight";
|
|
pinctrl-0 = <&pinctrl_backlight>;
|
|
pinctrl-names = "default";
|
|
gpios = <&tlmm 98 GPIO_ACTIVE_HIGH>;
|
|
};
|
|
|
|
chosen {
|
|
stdout-path = "serial1:115200n8";
|
|
};
|
|
|
|
vreg_lcd_avdd_reg: lcd-avdd-regulator {
|
|
compatible = "regulator-fixed";
|
|
regulator-name = "lcd_avdd";
|
|
regulator-min-microvolt = <5600000>;
|
|
regulator-max-microvolt = <5600000>;
|
|
pinctrl-0 = <&pinctrl_lcd_avdd_reg>;
|
|
pinctrl-names = "default";
|
|
gpio = <&tlmm 86 GPIO_ACTIVE_HIGH>;
|
|
startup-delay-us = <300>;
|
|
enable-active-high;
|
|
};
|
|
|
|
vreg_lcd_avee_reg: lcd-avee-regulator {
|
|
compatible = "regulator-fixed";
|
|
regulator-name = "lcd_avee";
|
|
regulator-min-microvolt = <5600000>;
|
|
regulator-max-microvolt = <5600000>;
|
|
pinctrl-0 = <&pinctrl_lcd_avee_reg>;
|
|
pinctrl-names = "default";
|
|
gpio = <&tlmm 87 GPIO_ACTIVE_HIGH>;
|
|
startup-delay-us = <300>;
|
|
enable-active-high;
|
|
};
|
|
|
|
vreg_lcd_iovcc_reg: lcd-iovcc-regulator {
|
|
compatible = "regulator-fixed";
|
|
regulator-name = "lcd_iovcc";
|
|
regulator-min-microvolt = <1800000>;
|
|
regulator-max-microvolt = <1800000>;
|
|
pinctrl-0 = <&pinctrl_lcd_iovcc_reg>;
|
|
pinctrl-names = "default";
|
|
gpio = <&tlmm 9 GPIO_ACTIVE_HIGH>;
|
|
startup-delay-us = <300>;
|
|
enable-active-high;
|
|
};
|
|
};
|
|
|
|
&blsp_i2c1 {
|
|
status = "okay";
|
|
};
|
|
|
|
&blsp_i2c2 {
|
|
status = "okay";
|
|
};
|
|
|
|
&blsp_i2c3 {
|
|
status = "okay";
|
|
|
|
typec_pd: usb-pd@38 {
|
|
compatible = "ti,tps6598x";
|
|
reg = <0x38>;
|
|
|
|
interrupt-parent = <&tlmm>;
|
|
interrupts = <107 IRQ_TYPE_LEVEL_LOW>;
|
|
interrupt-names = "irq";
|
|
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&typec_irq>;
|
|
|
|
typec_con: connector {
|
|
compatible = "usb-c-connector";
|
|
label = "USB-C";
|
|
|
|
port {
|
|
typec_ep: endpoint {
|
|
remote-endpoint = <&otg_ep>;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
&blsp_i2c5 {
|
|
status = "okay";
|
|
};
|
|
|
|
&blsp_uart1 {
|
|
status = "okay";
|
|
};
|
|
|
|
&blsp_uart1_default {
|
|
pins = "gpio0", "gpio1";
|
|
};
|
|
|
|
&blsp_uart1_sleep {
|
|
pins = "gpio0", "gpio1";
|
|
};
|
|
|
|
&blsp_uart2 {
|
|
status = "okay";
|
|
};
|
|
|
|
&gpu {
|
|
status = "okay";
|
|
};
|
|
|
|
&lpass {
|
|
status = "okay";
|
|
};
|
|
|
|
&lpass_codec {
|
|
status = "okay";
|
|
};
|
|
|
|
&mdss {
|
|
status = "okay";
|
|
};
|
|
|
|
&pm8916_codec {
|
|
qcom,hphl-jack-type-normally-open;
|
|
qcom,mbhc-vthreshold-low = <75 150 237 450 500>;
|
|
qcom,mbhc-vthreshold-high = <75 150 237 450 500>;
|
|
status = "okay";
|
|
};
|
|
|
|
&pm8916_gpios {
|
|
gpio-line-names =
|
|
"PM_GPIO1", /* WIFI_GPIO1_PRE */
|
|
"PM_GPIO2", /* WIFI_GPIO2_PRE */
|
|
"PM_GPIO3",
|
|
"PM_GPIO4";
|
|
};
|
|
|
|
&sdhc_1 {
|
|
status = "okay";
|
|
};
|
|
|
|
&sound {
|
|
model = "apq8039-square-sndcard";
|
|
audio-routing = "AMIC2", "MIC BIAS Internal2";
|
|
pinctrl-names = "default", "sleep";
|
|
pinctrl-0 = <&cdc_pdm_default>;
|
|
pinctrl-1 = <&cdc_pdm_sleep>;
|
|
|
|
internal-codec-playback-dai-link {
|
|
link-name = "WCD";
|
|
cpu {
|
|
sound-dai = <&lpass MI2S_PRIMARY>;
|
|
};
|
|
codec {
|
|
sound-dai = <&lpass_codec 0>, <&pm8916_codec 0>;
|
|
};
|
|
};
|
|
|
|
internal-codec-capture-dai-link {
|
|
link-name = "WCD-Capture";
|
|
cpu {
|
|
sound-dai = <&lpass MI2S_TERTIARY>;
|
|
};
|
|
codec {
|
|
sound-dai = <&lpass_codec 1>, <&pm8916_codec 1>;
|
|
};
|
|
};
|
|
};
|
|
|
|
/*
|
|
* Line names are taken from the schematic of T2, Ver X03.
|
|
* July 14, 2018. Page 4 in particular.
|
|
*/
|
|
&tlmm {
|
|
gpio-line-names =
|
|
"APQ_UART1_TX", /* GPIO_0 */
|
|
"APQ_UART1_RX",
|
|
"APQ_I2C1_SDA",
|
|
"APQ_I2C1_SCL",
|
|
"APQ_UART2_TX_1V8",
|
|
"APQ_UART2_RX_1V8",
|
|
"APQ_I2C2_SDA",
|
|
"APQ_I2C2_SCL",
|
|
"NC",
|
|
"APQ_LCD_IOVCC_EN",
|
|
"APQ_I2C3_SDA", /* GPIO_10 */
|
|
"APQ_I2C3_SCL",
|
|
"TOUCH_RST_1V8_L",
|
|
"NC",
|
|
"APQ_I2C4_SDA",
|
|
"APQ_I2C4_SCL",
|
|
"APQ_ID5",
|
|
"USB_DISCONNECT",
|
|
"APQ_I2C5_SDA",
|
|
"APQ_I2C5_SCL",
|
|
"APQ_USBC_SPI_MOSI", /* GPIO_20 */
|
|
"APQ_USBC_SPI_MISO",
|
|
"APQ_USBC_SPI_SS_L",
|
|
"APQ_USBC_SPI_CLK",
|
|
"APQ_LCD_TE0",
|
|
"APQ_LCD_RST_L",
|
|
"NC",
|
|
"NC",
|
|
"ACCELEROMETER_INT1",
|
|
"APQ_CAM_I2C0_SDA",
|
|
"APQ_CAM_I2C0_SCL", /* GPIO_30 */
|
|
"ACCELEROMETER_INT2",
|
|
"NC",
|
|
"NC",
|
|
"NC",
|
|
"APQ_K21_RST_1V8_L",
|
|
"NC",
|
|
"APQ_EDL_1V8",
|
|
"TP145",
|
|
"BT_SSBI",
|
|
"NC", /* GPIO_40 */
|
|
"NC",
|
|
"NC",
|
|
"NC",
|
|
"NC",
|
|
"NC",
|
|
"NC",
|
|
"BT_CTRL",
|
|
"BT_DAT",
|
|
"PWR_GPIO_IN",
|
|
"PWR_GPIO_OUT", /* GPIO_50 */
|
|
"CARD_DET_MLB_L",
|
|
"HALL_SENSOR",
|
|
"TP63",
|
|
"TP64",
|
|
"TP65",
|
|
"NC",
|
|
"NC",
|
|
"NC",
|
|
"NC",
|
|
"NC", /* GPIO_60 */
|
|
"NC",
|
|
"APQ_K21_GPIO0_1V8",
|
|
"CDC_PDM_CLK",
|
|
"CDC_PDM_SYNC",
|
|
"CDC_PDM_TX",
|
|
"CDC_PDM_RX0",
|
|
"CDC_PDM_RX1",
|
|
"CDC_PDM_RX2",
|
|
"APQ_K21_GPIO1_1V8",
|
|
"NC", /* GPIO_70 */
|
|
"APQ_HUB_SEL_1V8",
|
|
"APQ_K21_GPIO2_1V8",
|
|
"APQ_K21_GPIO3_1V8",
|
|
"APQ_ID0",
|
|
"APQ_ID1",
|
|
"APQ_ID2",
|
|
"APQ_ID3",
|
|
"APQ_ID4",
|
|
"APQ_HUB_SUSP_IND",
|
|
"BOOT_CONFIG_0", /* GPIO_80 */
|
|
"BOOT_CONFIG_1",
|
|
"BOOT_CONFIG_2",
|
|
"BOOT_CONFIG_3",
|
|
"NC",
|
|
"NC",
|
|
"APQ_LCD_AVDD_EN",
|
|
"APQ_LCD_AVEE_EN",
|
|
"TP70",
|
|
"NC",
|
|
"APQ_DEBUG0", /* GPIO_90 */
|
|
"APQ_DEBUG1",
|
|
"APQ_DEBUG2",
|
|
"APQ_DEBUG3",
|
|
"TP165",
|
|
"NC",
|
|
"APQ_LNA_PWR_EN",
|
|
"NC",
|
|
"APQ_LCD_BL_EN",
|
|
"NC",
|
|
"APQ_LCD_ID0", /* GPIO_100 */
|
|
"APQ_LCD_ID1",
|
|
"USBC_GPIO5_1V8",
|
|
"NC",
|
|
"NC",
|
|
"NC",
|
|
"APQ_HUB_RST_1V8_L",
|
|
"USBC_I2C_IRQ_1V8_L",
|
|
"SPE_PWR_EN",
|
|
"NC",
|
|
"APQ_USB_ID", /* GPIO_110 */
|
|
"APQ_EXT_BUCK_VSEL",
|
|
"APQ_USB_ID_OUT",
|
|
"NC",
|
|
"PRNT_RST_L",
|
|
"APQ_CRQ_I2C_RDY_1V8",
|
|
"TYPEC_RST_1V8_H",
|
|
"CHG_BACKPWR_EN",
|
|
"CHG_PROCHOT_L",
|
|
"NC",
|
|
"USBC_GPIO7_1V8", /* GPIO_120 */
|
|
"NC";
|
|
|
|
pinctrl_backlight: backlight-state {
|
|
pins = "gpio98";
|
|
function = "gpio";
|
|
};
|
|
|
|
pinctrl_lcd_avdd_reg: lcd-avdd-reg-state {
|
|
pins = "gpio86";
|
|
function = "gpio";
|
|
};
|
|
|
|
pinctrl_lcd_avee_reg: lcd-avee-reg-state {
|
|
pins = "gpio87";
|
|
function = "gpio";
|
|
};
|
|
|
|
pinctrl_lcd_iovcc_reg: lcd-iovcc-reg-state {
|
|
pins = "gpio9";
|
|
function = "gpio";
|
|
};
|
|
|
|
pinctrl_lcd_rst: lcd-rst-state {
|
|
pins = "gpio25";
|
|
function = "gpio";
|
|
};
|
|
|
|
pinctrl_otg_default: otg-default-state {
|
|
function = "gpio";
|
|
pins = "gpio17";
|
|
output-high;
|
|
};
|
|
|
|
pinctrl_otg_device: otg-device-state {
|
|
function = "gpio";
|
|
pins = "gpio17";
|
|
output-low;
|
|
};
|
|
|
|
pinctrl_otg_host: otg-host-state {
|
|
function = "gpio";
|
|
pins = "gpio17";
|
|
output-low;
|
|
};
|
|
|
|
typec_irq: typec-irq-state {
|
|
function = "gpio";
|
|
pins = "gpio107";
|
|
bias-pull-up;
|
|
};
|
|
};
|
|
|
|
&usb {
|
|
pinctrl-names = "default", "host", "device";
|
|
pinctrl-0 = <&pinctrl_otg_default>;
|
|
pinctrl-1 = <&pinctrl_otg_host>;
|
|
pinctrl-2 = <&pinctrl_otg_device>;
|
|
usb-role-switch;
|
|
status = "okay";
|
|
|
|
port {
|
|
otg_ep: endpoint {
|
|
remote-endpoint = <&typec_ep>;
|
|
};
|
|
};
|
|
};
|
|
|
|
&wcnss {
|
|
status = "okay";
|
|
};
|
|
|
|
&wcnss_iris {
|
|
compatible = "qcom,wcn3680";
|
|
};
|
|
|
|
&wcnss_mem {
|
|
status = "okay";
|
|
};
|