From nobody Mon Apr 6 20:30:40 2026 Received: from relay.yourmailgateway.de (relay.yourmailgateway.de [188.68.63.166]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 8D748377022; Wed, 18 Mar 2026 08:37:42 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=188.68.63.166 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773823066; cv=none; b=Q/sexF/RGSxvMudg/IuCvIXrt5UapwNWPNPT80x46aosdIH9n+YtYIWKzAXgUnHrzuMmxMJ9VsJnJfSeRHPHvD3e8JaAF1fsjQ2soN4x8dePeacYbbCBBlz5/UQWsNDR1F5uBos4ByKm6tHjCs8WMJKxlf3h2IyMf3FHiEfXHOA= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773823066; c=relaxed/simple; bh=ucCoLr8Dr7E38V8fFVilgB+yf7aDdbKpzphOemV6MZA=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=Ngtr6zAvpFQFfH97UH9okaAlRu1A5Nm86uZThPDLAsWgNLOE4vbtnlOEIToIMFlTPCrTFzlQSpnJi/NOHnr8maSJHwfOTaqn4Xzm0Mik/f33vHYq3/gxflGcBx4enpdBESkdWs7O71N0Hu9dg+FA83xyYHLjCvGWjyuvD4Ck9Vs= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=mecomediagroup.de; spf=pass smtp.mailfrom=mecomediagroup.de; dkim=pass (2048-bit key) header.d=mecomediagroup.de header.i=@mecomediagroup.de header.b=GAvjUyuv; arc=none smtp.client-ip=188.68.63.166 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=mecomediagroup.de Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=mecomediagroup.de Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=mecomediagroup.de header.i=@mecomediagroup.de header.b="GAvjUyuv" Received: from mors-relay-8202.netcup.net (localhost [127.0.0.1]) by mors-relay-8202.netcup.net (Postfix) with ESMTPS id 4fbMdb56tNz3xth; Wed, 18 Mar 2026 09:37:23 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=mecomediagroup.de; s=key2; t=1773823043; bh=ucCoLr8Dr7E38V8fFVilgB+yf7aDdbKpzphOemV6MZA=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=GAvjUyuvRmhQKwkB8ffnp2nbfxYN0K7GVaCvVZGZk3zJqPN9VwPAPPit0y0mu1Q0j z44mMAQgqaTDbT9sKLjub+/2BwjD9zoxAbxjB49TG1LJcVpwoZn29rVi6+7BpXgNay 496GbQ2xwpC1x10Lm4pxP7/l/sKmVsxdqHoHTmRS1fyGgGjRW+t1+i8SE3ztXHCxF5 /CQQWFvr7LDs6DCZdxfM2KCm0I1nho6Dj+miWobaVS39qFOVn6WQYkS37QdAUYDc7s OaKoMY8tGgfu2V8lRQjlWIbegDdB8nNh7NltKoF8MAU/iKEzGdKQfUu9fr0dE5+LLl xHeS8bX5aQllA== Received: from policy02-mors.netcup.net (unknown [46.38.225.35]) by mors-relay-8202.netcup.net (Postfix) with ESMTPS id 4fbMdL2RgYz3ym7; Wed, 18 Mar 2026 09:37:10 +0100 (CET) Received: from mxe95c.netcup.net (unknown [10.243.12.53]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by policy02-mors.netcup.net (Postfix) with ESMTPS id 4fbMdK5H4yz8svH; Wed, 18 Mar 2026 09:37:09 +0100 (CET) Received: from debian.fritz.box (ip-178-203-082-069.um48.pools.vodafone-ip.de [178.203.82.69]) by mxe95c.netcup.net (Postfix) with ESMTPSA id 5C5C0801CA; Wed, 18 Mar 2026 09:37:08 +0100 (CET) Authentication-Results: mxe95c; spf=pass (sender IP is 178.203.82.69) smtp.mailfrom=mecid@mecomediagroup.de smtp.helo=debian.fritz.box Received-SPF: pass (mxe95c: connection is authenticated) From: Mecid Urganci To: andersson@kernel.org, konradybcio@kernel.org Cc: robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org, richardcochran@gmail.com, linux-arm-msm@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, netdev@vger.kernel.org, Mecid Urganci Subject: [PATCH 2/2] arm64: dts: qcom: Add qcs9075-radxa-airbox-q900 Date: Wed, 18 Mar 2026 09:36:21 +0100 Message-ID: <20260318083621.470826-3-mecid@mecomediagroup.de> X-Mailer: git-send-email 2.47.3 In-Reply-To: <20260318083621.470826-1-mecid@mecomediagroup.de> References: <20260318083621.470826-1-mecid@mecomediagroup.de> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-PPP-Message-ID: <177382302909.1405014.15579517616222260863@mxe95c.netcup.net> X-Rspamd-Server: rspamd-worker-8404 X-Rspamd-Queue-Id: 5C5C0801CA X-NC-CID: WnKX97FCq05kkANfj3RxodBWWhhoZ4ANoE1l9909etZvr5kzoyuy Content-Type: text/plain; charset="utf-8" Add device tree support for the Radxa AirBox Q900 board based on the Qualcomm QCS9075 SoC (Lemans Family). This board features HDMI 2.0 via dp0, 2x USB 3.1 Gen 2 ports, 2x 2.5GbE Ethernet ports and onboard UFS storage. Further information: https://radxa.com/products/fogwise/airbox-q900/ Functionality has been tested and confirmed working via an Armbian Debian Trixie build. Signed-off-by: Mecid Urganci Made-with: Cursor --- arch/arm64/boot/dts/qcom/Makefile | 1 + .../dts/qcom/qcs9075-radxa-airbox-q900.dts | 1012 +++++++++++++++++ 2 files changed, 1013 insertions(+) create mode 100644 arch/arm64/boot/dts/qcom/qcs9075-radxa-airbox-q900.dts diff --git a/arch/arm64/boot/dts/qcom/Makefile b/arch/arm64/boot/dts/qcom/M= akefile index a4dc9e8b2d25..c8b7dd67806d 100644 --- a/arch/arm64/boot/dts/qcom/Makefile +++ b/arch/arm64/boot/dts/qcom/Makefile @@ -180,6 +180,7 @@ qcs8300-ride-el2-dtbs :=3D qcs8300-ride.dtb monaco-el2.= dtbo =20 dtb-$(CONFIG_ARCH_QCOM) +=3D qcs8300-ride-el2.dtb dtb-$(CONFIG_ARCH_QCOM) +=3D qcs8550-aim300-aiot.dtb +dtb-$(CONFIG_ARCH_QCOM) +=3D qcs9075-radxa-airbox-q900.dtb dtb-$(CONFIG_ARCH_QCOM) +=3D qcs9100-ride.dtb dtb-$(CONFIG_ARCH_QCOM) +=3D qcs9100-ride-r3.dtb =20 diff --git a/arch/arm64/boot/dts/qcom/qcs9075-radxa-airbox-q900.dts b/arch/= arm64/boot/dts/qcom/qcs9075-radxa-airbox-q900.dts new file mode 100644 index 000000000000..8b5202b527cb --- /dev/null +++ b/arch/arm64/boot/dts/qcom/qcs9075-radxa-airbox-q900.dts @@ -0,0 +1,1012 @@ +// SPDX-License-Identifier: BSD-3-Clause +/* + * Copyright (c) 2026 Mecid Urganci + */ + +/dts-v1/; + +#include +#include +#include + +#include "lemans.dtsi" +#include "lemans-pmics.dtsi" + +/ { + model =3D "Radxa AIRbox Q900"; + compatible =3D "radxa,airbox-q900", "qcom,qcs9075", "qcom,sa8775p"; + + aliases { + ethernet0 =3D ðernet0; + ethernet1 =3D ðernet1; + i2c15 =3D &i2c15; + i2c18 =3D &i2c18; + serial0 =3D &uart10; + ufshc1 =3D &ufs_mem_hc; + }; + + chosen { + stdout-path =3D "serial0:115200n8"; + }; + + vcc_5v0_regulator: vcc-5v0-regulator { + compatible =3D "regulator-fixed"; + regulator-name =3D "vcc_5v0"; + gpio =3D <&pmm8654au_3_gpios 6 GPIO_ACTIVE_HIGH>; + pinctrl-names =3D "default"; + pinctrl-0 =3D <&vcc_5v0_en_state>; + regulator-min-microvolt =3D <5000000>; + regulator-max-microvolt =3D <5000000>; + regulator-boot-on; + enable-active-high; + regulator-always-on; + }; + + vcc5v0_usb30_otg_regulator: vcc5v0-usb30-otg-regulator { + compatible =3D "regulator-fixed"; + regulator-name =3D "vcc5v0_usb30_otg"; + gpio =3D <&pmm8654au_2_gpios 3 GPIO_ACTIVE_HIGH>; + pinctrl-names =3D "default"; + pinctrl-0 =3D <&vcc3v3_usb30_otg_en_state>; + regulator-min-microvolt =3D <5000000>; + regulator-max-microvolt =3D <5000000>; + regulator-boot-on; + enable-active-high; + regulator-always-on; + }; + + vcc5v0_usb30_regulator: vcc5v0-usb30-regulator { + compatible =3D "regulator-fixed"; + regulator-name =3D "vcc5v0_usb30"; + gpio =3D <&pmm8654au_2_gpios 4 GPIO_ACTIVE_HIGH>; + pinctrl-names =3D "default"; + pinctrl-0 =3D <&vcc3v3_usb30_en_state>; + regulator-min-microvolt =3D <5000000>; + regulator-max-microvolt =3D <5000000>; + regulator-boot-on; + enable-active-high; + regulator-always-on; + }; + + vcc_3v3_ssd_regulator: vcc-3p3-ssd-regulator { + compatible =3D "regulator-fixed"; + regulator-name =3D "vcc_3v3_ssd"; + gpio =3D <&pmm8654au_1_gpios 9 GPIO_ACTIVE_HIGH>; + pinctrl-names =3D "default"; + pinctrl-0 =3D <&vcc_3v3_ssd_en_state>; + regulator-min-microvolt =3D <3300000>; + regulator-max-microvolt =3D <3300000>; + regulator-boot-on; + enable-active-high; + regulator-always-on; + }; + + vcc3v3_minipcie_regulator: vcc3v3-minipcie-regulator { + compatible =3D "regulator-fixed"; + regulator-name =3D "vcc3v3_minipcie"; + gpio =3D <&pmm8654au_2_gpios 10 GPIO_ACTIVE_HIGH>; + pinctrl-names =3D "default"; + pinctrl-0 =3D <&vcc3v3_minipcie_en_state>; + regulator-min-microvolt =3D <3300000>; + regulator-max-microvolt =3D <3300000>; + regulator-boot-on; + enable-active-high; + regulator-always-on; + }; + + gpio_leds: gpio-leds { + compatible =3D "gpio-leds"; + pinctrl-names =3D "default"; + pinctrl-0 =3D <&status_led_state>, <&power_led_state>; + + status-led { + gpios =3D <&pmm8654au_1_gpios 11 GPIO_ACTIVE_HIGH>; + linux,default-trigger =3D "heartbeat"; + function =3D LED_FUNCTION_STATUS; + color =3D ; + }; + + power-led { + gpios =3D <&tlmm 98 GPIO_ACTIVE_HIGH>; + linux,default-trigger =3D "default-on"; + function =3D LED_FUNCTION_POWER; + color =3D ; + }; + }; + + gpio_keys: gpio-keys { + compatible =3D "gpio-keys"; + + pinctrl-0 =3D <&gpio_keys_default>; + pinctrl-names =3D "default"; + + power-key { + label =3D "Power Off"; + gpios =3D <&tlmm 97 GPIO_ACTIVE_LOW>; + linux,code =3D ; + wakeup-source; + debounce-interval =3D <30>; + }; + }; + + fan0: gpio-fan { + compatible =3D "gpio-fan"; + gpios =3D <&pmm8654au_1_gpios 12 GPIO_ACTIVE_HIGH>; + gpio-fan,speed-map =3D <0 0>, <5000 1>; + pinctrl-names =3D "default"; + pinctrl-0 =3D <&fan_en_state>; + #cooling-cells =3D <2>; + }; + + dp0-connector { + compatible =3D "dp-connector"; + label =3D "eDP0"; + type =3D "full-size"; + + port { + dp0_connector_in: endpoint { + remote-endpoint =3D <&mdss0_dp0_out>; + }; + }; + }; +}; + +&apps_rsc { + regulators-0 { + compatible =3D "qcom,pmm8654au-rpmh-regulators"; + qcom,pmic-id =3D "a"; + + vreg_s4a: smps4 { + regulator-name =3D "vreg_s4a"; + regulator-min-microvolt =3D <1800000>; + regulator-max-microvolt =3D <1816000>; + regulator-initial-mode =3D ; + }; + + vreg_s5a: smps5 { + regulator-name =3D "vreg_s5a"; + regulator-min-microvolt =3D <1850000>; + regulator-max-microvolt =3D <1996000>; + regulator-initial-mode =3D ; + }; + + vreg_s9a: smps9 { + regulator-name =3D "vreg_s9a"; + regulator-min-microvolt =3D <535000>; + regulator-max-microvolt =3D <1120000>; + regulator-initial-mode =3D ; + }; + + vreg_l4a: ldo4 { + regulator-name =3D "vreg_l4a"; + regulator-min-microvolt =3D <788000>; + regulator-max-microvolt =3D <1050000>; + regulator-initial-mode =3D ; + regulator-allow-set-load; + regulator-allowed-modes =3D ; + }; + + vreg_l5a: ldo5 { + regulator-name =3D "vreg_l5a"; + regulator-min-microvolt =3D <870000>; + regulator-max-microvolt =3D <950000>; + regulator-initial-mode =3D ; + regulator-allow-set-load; + regulator-allowed-modes =3D ; + }; + + vreg_l6a: ldo6 { + regulator-name =3D "vreg_l6a"; + regulator-min-microvolt =3D <870000>; + regulator-max-microvolt =3D <970000>; + regulator-initial-mode =3D ; + regulator-allow-set-load; + regulator-allowed-modes =3D ; + }; + + vreg_l7a: ldo7 { + regulator-name =3D "vreg_l7a"; + regulator-min-microvolt =3D <720000>; + regulator-max-microvolt =3D <950000>; + regulator-initial-mode =3D ; + regulator-allow-set-load; + regulator-allowed-modes =3D ; + }; + + vreg_l8a: ldo8 { + regulator-name =3D "vreg_l8a"; + regulator-min-microvolt =3D <2504000>; + regulator-max-microvolt =3D <3300000>; + regulator-initial-mode =3D ; + regulator-allow-set-load; + regulator-allowed-modes =3D ; + }; + + vreg_l9a: ldo9 { + regulator-name =3D "vreg_l9a"; + regulator-min-microvolt =3D <2970000>; + regulator-max-microvolt =3D <3544000>; + regulator-initial-mode =3D ; + regulator-allow-set-load; + regulator-allowed-modes =3D ; + }; + }; + + regulators-1 { + compatible =3D "qcom,pmm8654au-rpmh-regulators"; + qcom,pmic-id =3D "c"; + + vreg_l1c: ldo1 { + regulator-name =3D "vreg_l1c"; + regulator-min-microvolt =3D <1140000>; + regulator-max-microvolt =3D <1260000>; + regulator-initial-mode =3D ; + regulator-allow-set-load; + regulator-allowed-modes =3D ; + }; + + vreg_l2c: ldo2 { + regulator-name =3D "vreg_l2c"; + regulator-min-microvolt =3D <900000>; + regulator-max-microvolt =3D <1100000>; + regulator-initial-mode =3D ; + regulator-allow-set-load; + regulator-allowed-modes =3D ; + }; + + vreg_l3c: ldo3 { + regulator-name =3D "vreg_l3c"; + regulator-min-microvolt =3D <1100000>; + regulator-max-microvolt =3D <1300000>; + regulator-initial-mode =3D ; + regulator-allow-set-load; + regulator-allowed-modes =3D ; + }; + + vreg_l4c: ldo4 { + regulator-name =3D "vreg_l4c"; + regulator-min-microvolt =3D <1200000>; + regulator-max-microvolt =3D <1200000>; + regulator-initial-mode =3D ; + /* + * FIXME: This should have regulator-allow-set-load but + * we're getting an over-current fault from the PMIC + * when switching to LPM. + */ + }; + + vreg_l5c: ldo5 { + regulator-name =3D "vreg_l5c"; + regulator-min-microvolt =3D <1100000>; + regulator-max-microvolt =3D <1300000>; + regulator-initial-mode =3D ; + regulator-allow-set-load; + regulator-allowed-modes =3D ; + }; + + vreg_l6c: ldo6 { + regulator-name =3D "vreg_l6c"; + regulator-min-microvolt =3D <1620000>; + regulator-max-microvolt =3D <1980000>; + regulator-initial-mode =3D ; + regulator-allow-set-load; + regulator-allowed-modes =3D ; + }; + + vreg_l7c: ldo7 { + regulator-name =3D "vreg_l7c"; + regulator-min-microvolt =3D <1620000>; + regulator-max-microvolt =3D <2000000>; + regulator-initial-mode =3D ; + regulator-allow-set-load; + regulator-allowed-modes =3D ; + }; + + vreg_l8c: ldo8 { + regulator-name =3D "vreg_l8c"; + regulator-min-microvolt =3D <2400000>; + regulator-max-microvolt =3D <3300000>; + regulator-initial-mode =3D ; + regulator-allow-set-load; + regulator-allowed-modes =3D ; + }; + + vreg_l9c: ldo9 { + regulator-name =3D "vreg_l9c"; + regulator-min-microvolt =3D <1650000>; + regulator-max-microvolt =3D <2700000>; + regulator-initial-mode =3D ; + regulator-allow-set-load; + regulator-allowed-modes =3D ; + }; + }; + + regulators-2 { + compatible =3D "qcom,pmm8654au-rpmh-regulators"; + qcom,pmic-id =3D "e"; + + vreg_s4e: smps4 { + regulator-name =3D "vreg_s4e"; + regulator-min-microvolt =3D <970000>; + regulator-max-microvolt =3D <1520000>; + regulator-initial-mode =3D ; + }; + + vreg_s7e: smps7 { + regulator-name =3D "vreg_s7e"; + regulator-min-microvolt =3D <1010000>; + regulator-max-microvolt =3D <1170000>; + regulator-initial-mode =3D ; + }; + + vreg_s9e: smps9 { + regulator-name =3D "vreg_s9e"; + regulator-min-microvolt =3D <300000>; + regulator-max-microvolt =3D <570000>; + regulator-initial-mode =3D ; + }; + + vreg_l6e: ldo6 { + regulator-name =3D "vreg_l6e"; + regulator-min-microvolt =3D <1280000>; + regulator-max-microvolt =3D <1450000>; + regulator-initial-mode =3D ; + regulator-allow-set-load; + regulator-allowed-modes =3D ; + }; + + vreg_l8e: ldo8 { + regulator-name =3D "vreg_l8e"; + regulator-min-microvolt =3D <1800000>; + regulator-max-microvolt =3D <1950000>; + regulator-initial-mode =3D ; + regulator-allow-set-load; + regulator-allowed-modes =3D ; + }; + }; +}; + +ðernet0 { + phy-handle =3D <&sgmii_phy0>; + phy-mode =3D "2500base-x"; + + pinctrl-0 =3D <ðernet0_default>; + pinctrl-names =3D "default"; + + snps,mtl-rx-config =3D <&mtl_rx_setup>; + snps,mtl-tx-config =3D <&mtl_tx_setup>; + snps,ps-speed =3D <2500>; + + status =3D "okay"; + + mdio { + compatible =3D "snps,dwmac-mdio"; + #address-cells =3D <1>; + #size-cells =3D <0>; + + sgmii_phy0: ethernet-phy@1c { + compatible =3D "ethernet-phy-id004d.d101"; + reg =3D <0x1c>; + reset-gpios =3D <&pmm8654au_2_gpios 8 GPIO_ACTIVE_LOW>; + reset-assert-us =3D <11000>; + reset-deassert-us =3D <70000>; + + leds { + #address-cells =3D <1>; + #size-cells =3D <0>; + + led@0 { + reg =3D <0>; + active-low; + color =3D ; + }; + + led@1 { + reg =3D <1>; + active-low; + color =3D ; + }; + }; + }; + }; + + mtl_rx_setup: rx-queues-config { + snps,rx-queues-to-use =3D <4>; + snps,rx-sched-sp; + + queue0 { + snps,dcb-algorithm; + snps,map-to-dma-channel =3D <0x0>; + snps,route-up; + snps,priority =3D <0x1>; + }; + + queue1 { + snps,dcb-algorithm; + snps,map-to-dma-channel =3D <0x1>; + snps,route-ptp; + }; + + queue2 { + snps,avb-algorithm; + snps,map-to-dma-channel =3D <0x2>; + snps,route-avcp; + }; + + queue3 { + snps,avb-algorithm; + snps,map-to-dma-channel =3D <0x3>; + snps,priority =3D <0xc>; + }; + }; + + mtl_tx_setup: tx-queues-config { + snps,tx-queues-to-use =3D <4>; + + queue0 { + snps,dcb-algorithm; + }; + + queue1 { + snps,dcb-algorithm; + }; + + queue2 { + snps,avb-algorithm; + snps,send_slope =3D <0x1000>; + snps,idle_slope =3D <0x1000>; + snps,high_credit =3D <0x3e800>; + snps,low_credit =3D <0xffc18000>; + }; + + queue3 { + snps,avb-algorithm; + snps,send_slope =3D <0x1000>; + snps,idle_slope =3D <0x1000>; + snps,high_credit =3D <0x3e800>; + snps,low_credit =3D <0xffc18000>; + }; + }; +}; + +ðernet1 { + phy-handle =3D <&sgmii_phy1>; + phy-mode =3D "2500base-x"; + + pinctrl-0 =3D <ðernet1_default>; + pinctrl-names =3D "default"; + + snps,mtl-rx-config =3D <&mtl_rx_setup1>; + snps,mtl-tx-config =3D <&mtl_tx_setup1>; + snps,ps-speed =3D <2500>; + + status =3D "okay"; + + mdio { + compatible =3D "snps,dwmac-mdio"; + #address-cells =3D <1>; + #size-cells =3D <0>; + + sgmii_phy1: ethernet-phy@1c { + compatible =3D "ethernet-phy-id004d.d101"; + reg =3D <0x1c>; + reset-gpios =3D <&pmm8654au_2_gpios 9 GPIO_ACTIVE_LOW>; + reset-assert-us =3D <11000>; + reset-deassert-us =3D <70000>; + + leds { + #address-cells =3D <1>; + #size-cells =3D <0>; + + led@0 { + reg =3D <0>; + active-low; + color =3D ; + }; + + led@1 { + reg =3D <1>; + active-low; + color =3D ; + }; + }; + }; + }; + + mtl_rx_setup1: rx-queues-config { + snps,rx-queues-to-use =3D <4>; + snps,rx-sched-sp; + + queue0 { + snps,dcb-algorithm; + snps,map-to-dma-channel =3D <0x0>; + snps,route-up; + snps,priority =3D <0x1>; + }; + + queue1 { + snps,dcb-algorithm; + snps,map-to-dma-channel =3D <0x1>; + snps,route-ptp; + }; + + queue2 { + snps,avb-algorithm; + snps,map-to-dma-channel =3D <0x2>; + snps,route-avcp; + }; + + queue3 { + snps,avb-algorithm; + snps,map-to-dma-channel =3D <0x3>; + snps,priority =3D <0xc>; + }; + }; + + mtl_tx_setup1: tx-queues-config { + snps,tx-queues-to-use =3D <4>; + + queue0 { + snps,dcb-algorithm; + }; + + queue1 { + snps,dcb-algorithm; + }; + + queue2 { + snps,avb-algorithm; + snps,send_slope =3D <0x1000>; + snps,idle_slope =3D <0x1000>; + snps,high_credit =3D <0x3e800>; + snps,low_credit =3D <0xffc18000>; + }; + + queue3 { + snps,avb-algorithm; + snps,send_slope =3D <0x1000>; + snps,idle_slope =3D <0x1000>; + snps,high_credit =3D <0x3e800>; + snps,low_credit =3D <0xffc18000>; + }; + }; +}; + +&i2c15 { + clock-frequency =3D <400000>; + status =3D "okay"; + + eeprom: eeprom@50 { + compatible =3D "atmel,24c16"; + reg =3D <0x50>; + pagesize =3D <16>; + }; +}; + +&i2c18 { + clock-frequency =3D <400000>; + pinctrl-0 =3D <&qup_i2c18_default>; + pinctrl-names =3D "default"; + status =3D "okay"; + + /* RTC RS4C411ZAE */ + rtc_m41t11: rtc@68 { + compatible =3D "st,m41t11"; + reg =3D <0x68>; + }; +}; + +&gpu { + status =3D "okay"; +}; + +&gpu_zap_shader { + firmware-name =3D "qcom/sa8775p/a663_zap.mbn"; +}; + +&iris { + firmware-name =3D "qcom/vpu/vpu30_p4_s6.mbn"; + status =3D "okay"; +}; + +&mdss0 { + status =3D "okay"; +}; + +&mdss0_dp0 { + pinctrl-0 =3D <&dp_hot_plug_det>; + pinctrl-names =3D "default"; + + status =3D "okay"; +}; + +&mdss0_dp0_out { + data-lanes =3D <0 1 2 3>; + link-frequencies =3D /bits/ 64 <1620000000 2700000000 5400000000 81000000= 00>; + remote-endpoint =3D <&dp0_connector_in>; +}; + +&mdss0_dp0_phy { + vdda-phy-supply =3D <&vreg_l1c>; + vdda-pll-supply =3D <&vreg_l4a>; + + status =3D "okay"; +}; + +&pcie0 { + perst-gpios =3D <&tlmm 2 GPIO_ACTIVE_LOW>; + wake-gpios =3D <&tlmm 0 GPIO_ACTIVE_HIGH>; + + pinctrl-names =3D "default"; + pinctrl-0 =3D <&pcie0_default_state>; + + status =3D "okay"; +}; + +&pcie1 { + perst-gpios =3D <&tlmm 4 GPIO_ACTIVE_LOW>; + wake-gpios =3D <&tlmm 5 GPIO_ACTIVE_HIGH>; + + pinctrl-names =3D "default"; + pinctrl-0 =3D <&pcie1_default_state>; + + status =3D "okay"; +}; + +&pcie0_phy { + vdda-phy-supply =3D <&vreg_l5a>; + vdda-pll-supply =3D <&vreg_l1c>; + + status =3D "okay"; +}; + +&pcie1_phy { + vdda-phy-supply =3D <&vreg_l5a>; + vdda-pll-supply =3D <&vreg_l1c>; + + status =3D "okay"; +}; + +&pmm8654au_0_pon_resin { + linux,code =3D ; + status =3D "okay"; +}; + +&qupv3_id_0 { + status =3D "okay"; +}; + +&qupv3_id_1 { + status =3D "okay"; +}; + +&qupv3_id_2 { + status =3D "okay"; +}; + +&remoteproc_adsp { + firmware-name =3D "qcom/sa8775p/adsp.mbn"; + status =3D "okay"; +}; + +&remoteproc_cdsp0 { + firmware-name =3D "qcom/sa8775p/cdsp0.mbn"; + status =3D "okay"; +}; + +&remoteproc_cdsp1 { + firmware-name =3D "qcom/sa8775p/cdsp1.mbn"; + status =3D "okay"; +}; + +&remoteproc_gpdsp0 { + firmware-name =3D "qcom/sa8775p/gpdsp0.mbn"; + status =3D "okay"; +}; + +&remoteproc_gpdsp1 { + firmware-name =3D "qcom/sa8775p/gpdsp1.mbn"; + status =3D "okay"; +}; + +&serdes0 { + phy-supply =3D <&vreg_l5a>; + vdda-0p9-supply =3D <&vreg_l4a>; + + status =3D "okay"; +}; + +&serdes1 { + phy-supply =3D <&vreg_l5a>; + vdda-0p9-supply =3D <&vreg_l4a>; + + status =3D "okay"; +}; + +&sleep_clk { + clock-frequency =3D <32768>; +}; + +&uart10 { + compatible =3D "qcom,geni-debug-uart"; + status =3D "okay"; +}; + +&ufs_mem_hc { + reset-gpios =3D <&tlmm 149 GPIO_ACTIVE_LOW>; + vcc-supply =3D <&vreg_l8a>; + vcc-max-microamp =3D <1100000>; + vccq-supply =3D <&vreg_l4c>; + vccq-max-microamp =3D <1200000>; + + status =3D "okay"; +}; + +&ufs_mem_phy { + vdda-phy-supply =3D <&vreg_l4a>; + vdda-pll-supply =3D <&vreg_l1c>; + + status =3D "okay"; +}; + +&usb_0 { + dr_mode =3D "host"; + + status =3D "okay"; +}; + +&usb_0_hsphy { + vdda-pll-supply =3D <&vreg_l7a>; + vdda18-supply =3D <&vreg_l6c>; + vdda33-supply =3D <&vreg_l9a>; + + status =3D "okay"; +}; + +&usb_0_qmpphy { + vdda-phy-supply =3D <&vreg_l1c>; + vdda-pll-supply =3D <&vreg_l7a>; + + status =3D "okay"; +}; + +&usb_1 { + dr_mode =3D "host"; + + status =3D "okay"; +}; + +&usb_1_hsphy { + vdda-pll-supply =3D <&vreg_l7a>; + vdda18-supply =3D <&vreg_l6c>; + vdda33-supply =3D <&vreg_l9a>; + + status =3D "okay"; +}; + +&usb_1_qmpphy { + vdda-phy-supply =3D <&vreg_l1c>; + vdda-pll-supply =3D <&vreg_l7a>; + + status =3D "okay"; +}; + +&usb_2 { + dr_mode =3D "host"; + + status =3D "okay"; +}; + +&usb_2_hsphy { + vdda-pll-supply =3D <&vreg_l7a>; + vdda18-supply =3D <&vreg_l6c>; + vdda33-supply =3D <&vreg_l9a>; + + status =3D "okay"; +}; + +&xo_board_clk { + clock-frequency =3D <38400000>; +}; + +&pmm8654au_1_gpios { + vcc_3v3_ssd_en_state: vcc-3v3-ssd-en-state { + pins =3D "gpio9"; + function =3D "normal"; + output-high; + bias-pull-up; + }; + + status_led_state: status-led-state { + pins =3D "gpio11"; + function =3D "normal"; + output-high; + bias-pull-up; + }; + + fan_en_state: fan-en-state { + pins =3D "gpio12"; + function =3D "normal"; + output-low; + bias-pull-down; + }; +}; + +&pmm8654au_2_gpios { + vcc3v3_usb30_otg_en_state: vcc3v3-usb30-otg-en-state { + pins =3D "gpio3"; + function =3D "normal"; + output-high; + bias-pull-up; + }; + + vcc3v3_usb30_en_state: vcc3v3-usb30-en-state { + pins =3D "gpio4"; + function =3D "normal"; + output-high; + bias-pull-up; + }; + + vcc3v3_minipcie_en_state: vcc3v3-minipcie-en-state { + pins =3D "gpio10"; + function =3D "normal"; + output-high; + bias-pull-up; + }; +}; + +&pmm8654au_3_gpios { + vcc_5v0_en_state: vcc-5v0-en-state { + pins =3D "gpio6"; + function =3D "normal"; + output-high; + bias-pull-up; + }; +}; + +&tlmm { + dp_hot_plug_det: dp-hot-plug-det-state { + pins =3D "gpio101"; + function =3D "edp0_hot"; + bias-disable; + }; + + ethernet0_default: ethernet0-default-state { + ethernet0_mdc: ethernet0-mdc-pins { + pins =3D "gpio8"; + function =3D "emac0_mdc"; + drive-strength =3D <16>; + bias-pull-up; + }; + + ethernet0_mdio: ethernet0-mdio-pins { + pins =3D "gpio9"; + function =3D "emac0_mdio"; + drive-strength =3D <16>; + bias-pull-up; + }; + }; + + ethernet1_default: ethernet1-default-state { + ethernet1_mdc: ethernet1-mdc-pins { + pins =3D "gpio20"; + function =3D "emac1_mdc"; + drive-strength =3D <16>; + bias-pull-up; + }; + + ethernet1_mdio: ethernet1-mdio-pins { + pins =3D "gpio21"; + function =3D "emac1_mdio"; + drive-strength =3D <16>; + bias-pull-up; + }; + }; + + pcie0_default_state: pcie0-default-state { + perst-pins { + pins =3D "gpio2"; + function =3D "gpio"; + drive-strength =3D <2>; + bias-pull-down; + }; + + clkreq-pins { + pins =3D "gpio1"; + function =3D "pcie0_clkreq"; + drive-strength =3D <2>; + bias-pull-up; + }; + + wake-pins { + pins =3D "gpio0"; + function =3D "gpio"; + drive-strength =3D <2>; + bias-pull-up; + }; + }; + + pcie1_default_state: pcie1-default-state { + perst-pins { + pins =3D "gpio4"; + function =3D "gpio"; + drive-strength =3D <2>; + bias-pull-down; + }; + + clkreq-pins { + pins =3D "gpio3"; + function =3D "pcie1_clkreq"; + drive-strength =3D <2>; + bias-pull-up; + }; + + wake-pins { + pins =3D "gpio5"; + function =3D "gpio"; + drive-strength =3D <2>; + bias-pull-up; + }; + }; + + qup_i2c18_default: qup-i2c18-state { + pins =3D "gpio95", "gpio96"; + function =3D "qup2_se4"; + drive-strength =3D <2>; + bias-pull-up; + }; + + gpio_keys_default: gpio-keys-default-state { + pins =3D "gpio97"; + function =3D "gpio"; + drive-strength =3D <2>; + bias-pull-up; + }; + + power_led_state: power-led-state { + pins =3D "gpio98"; + function =3D "gpio"; + output-high; + bias-pull-up; + }; +}; + +/ { + thermal-zones { + cpu-0-0-0-thermal { + polling-delay-passive =3D <1000>; + polling-delay =3D <5000>; + + trips { + fan_on: fan-on { + temperature =3D <40000>; + hysteresis =3D <5000>; + type =3D "active"; + }; + }; + + cooling-maps { + map-fan { + trip =3D <&fan_on>; + cooling-device =3D <&fan0 1 1>; + }; + }; + }; + }; +}; --=20 2.47.3