Files
linux/arch/arm64/boot/dts/qcom/apq8039-t2.dts
Stephan Gerhold 0ece6438a8 arm64: dts: qcom: msm8916/39: Disable unneeded firmware reservations
Now that we no longer have fixed addresses for the firmware memory
regions, disable them by default and only enable them together with
the actual user in the board DT.

This frees up unnecessary reserved memory for boards that do not use
some of the remoteprocs and allows moving selected device-specific
properties (such as firmware size) to the board-specific DT part in
the next step.

Signed-off-by: Stephan Gerhold <stephan@gerhold.net>
Link: https://lore.kernel.org/r/20230911-msm8916-rmem-v1-7-b7089ec3e3a1@gerhold.net
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2023-09-20 09:27:53 -07:00

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";
};