From nobody Fri Apr 3 17:33:21 2026 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (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 69D5C3BD64B; Mon, 23 Mar 2026 16:27:48 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774283268; cv=none; b=Q6h+LPjeTbVnD3pF0Y7bqFp06MhtFzjR9fnmuwhQFYUlbG5t+0Qoa0WOtPT2vDTi4f8TlyrT4RnpfXD3GW82yvm+f0mYbyXT3EOLOuU6VJoaKSL06GFXMOZSefz3OODZZiRyLKWVHoNpowP8alFOeZUTvqGnFWEWleNyIC6s0As= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774283268; c=relaxed/simple; bh=vabLmCmKX/+J3rXdTqzfikoes1bTZz70L0DuNHGncL4=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=hWXQK7yGrtVZkkgqVFtexT2h4GqLwMzoLCjeUy2UPBK7+sWZssF8at58M7vJ2vbnbkDVSOPHeBrGQ2AN9WDfjGKJ2xy2KOkMc6uOA1yvvn5ciZ/DNjK8wQBDMfJJsqtOuyvhsLMvqri22JAzqzxCmZDcyHa3d5aNdSl7WKvVxso= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=WeibyQZw; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="WeibyQZw" Received: by smtp.kernel.org (Postfix) with ESMTPS id F05AAC2BCB4; Mon, 23 Mar 2026 16:27:47 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1774283268; bh=vabLmCmKX/+J3rXdTqzfikoes1bTZz70L0DuNHGncL4=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=WeibyQZwLasTSFoGRAaju2Rv2AK9ThGo8i+CBZsPBLXRQHdnEHSwVsAi7ije7Rxm/ LXUHpnBYTrYO+sn6bxBcoNyMphdHTmY1f0dL2XS3yIWBWNYYNIXltP5X6wjhW7+DPJ 6X4uU52c/jngpORoKAowS5kq6dOnYU2G2cE5SOfb1hm2NoYSuHOk02GCDB4Eehhoqe N/R2nAZgU6AyJ1Yt0IpVdZTQTVjyP0vLNNYHk7r5lYeoEylD0Z05IfKykLi74nGiz7 7FC9e6FPGdiKuUdT0oq4EJ5fSsh+HLfJmySVDgRwlnaEZumXkv69S4y5el5DYgJ0uw jBVpAyNMsTmNQ== Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id DC007F483CE; Mon, 23 Mar 2026 16:27:47 +0000 (UTC) From: Aaron Kling via B4 Relay Date: Mon, 23 Mar 2026 11:27:43 -0500 Subject: [PATCH v4 1/6] dt-bindings: vendor-prefixes: Add AYN Technologies Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260323-ayn-qcs8550-v4-1-33a8ac3d53fa@gmail.com> References: <20260323-ayn-qcs8550-v4-0-33a8ac3d53fa@gmail.com> In-Reply-To: <20260323-ayn-qcs8550-v4-0-33a8ac3d53fa@gmail.com> To: Bjorn Andersson , Konrad Dybcio , Rob Herring , Krzysztof Kozlowski , Conor Dooley Cc: linux-arm-msm@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Aaron Kling , Xilin Wu X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1774283267; l=899; i=webgeek1234@gmail.com; s=20250217; h=from:subject:message-id; bh=51HjCxTlAcVkrzRblUjcKootVCBtxWuWQ8ylYfvfpOM=; b=0X5u49dIQdEXO9jdAppLYKcg+dF9p4YDRSo0qbeev+kBhTAT/Pq9rX6UL3U5TwFpN+Qm/y/9R NPSOZNlMs9WB6WObrnnFpaUs/5MkRh5/B7y7bZ73gwIiVrfnnYNucMD X-Developer-Key: i=webgeek1234@gmail.com; a=ed25519; pk=TQwd6q26txw7bkK7B8qtI/kcAohZc7bHHGSD7domdrU= X-Endpoint-Received: by B4 Relay for webgeek1234@gmail.com/20250217 with auth_id=342 X-Original-From: Aaron Kling Reply-To: webgeek1234@gmail.com From: Xilin Wu Add an entry for AYN Technologies (https://www.ayntec.com/) Signed-off-by: Xilin Wu Signed-off-by: Aaron Kling Acked-by: Krzysztof Kozlowski --- Documentation/devicetree/bindings/vendor-prefixes.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Documentation/devicetree/bindings/vendor-prefixes.yaml b/Docum= entation/devicetree/bindings/vendor-prefixes.yaml index 306343407019fe74bccd931a78ecefc6889e3fee..e20d9dc6a8322b79a5d80e7d3f7= 135c2b4cfa2ff 100644 --- a/Documentation/devicetree/bindings/vendor-prefixes.yaml +++ b/Documentation/devicetree/bindings/vendor-prefixes.yaml @@ -221,6 +221,8 @@ patternProperties: description: Axiado Corporation "^axis,.*": description: Axis Communications AB + "^ayntec,.*": + description: AYN Technologies Co., Ltd. "^azoteq,.*": description: Azoteq (Pty) Ltd "^azw,.*": --=20 2.53.0 From nobody Fri Apr 3 17:33:21 2026 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (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 648A83BA238; Mon, 23 Mar 2026 16:27:48 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774283268; cv=none; b=PeYReC2Gexo0mFdtK3k6mAKcaITpadYGPYImVXVoqzIry6Y91ckQuZW6E/69qk97DdtJEdc2/wdaKUlDqYw4Ip8AXFiw/DcPzQ1137HJHo0lOS0nBEF1R5lazclWlsfOSqhmyXcY2nKcVlVBnTw3h81/wHi2FUzRTdwvXSb0GdA= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774283268; c=relaxed/simple; bh=Dn1UOeS8yesIqzacSRvq4Vx823CrDCSnC9s3p8Ujb0w=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=NJ2Ce7CrgysyP/szMFUE0a7+Pr5SKGunVOqmb2CUYPy+PEVEv0rc4mValnB1EJOSwPcZlwMAb5bP6y90sqHPphH67iKURQJP9K96LWpEItvXO2bVqL1Rsgx2Q7l5brOTiAYq2d02KBM8EiWH6w+d+qUKh/sc2ZM79noJ2nE9zDM= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=BYYVevE5; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="BYYVevE5" Received: by smtp.kernel.org (Postfix) with ESMTPS id 09018C2BCB7; Mon, 23 Mar 2026 16:27:48 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1774283268; bh=Dn1UOeS8yesIqzacSRvq4Vx823CrDCSnC9s3p8Ujb0w=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=BYYVevE5C90M/BjbATQxo7m9qf5KcP5IS+ipVLbEqRjVAJcwwTugQXfP7QD4+V8zM wIsOompJHgtiWuyZuPUMWbyELrChSNZEnnkvKh9RwZIucgrOLsGns6Pe/yCgZTPJ5h KWM06ZYntOgQeB3q1FSJ+fcYecQ5ic92SUGdzX2JCuf1Jis4zoyPYHeyquQJXD3zJM euv1jJUHpnzxlqA7K7Dv2H7UlCbzBdm7WQ9TR8m92+7MJcRMPB4B382SCfXL6TBMJ9 dIcLaaQt5go0DVcezcUafM/3Jx/HEAwt0B7qV1bDnWwjkSWZQCgVLhL+05ruzurZID FD1IukiwzWY/w== Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id F2C8AF483D0; Mon, 23 Mar 2026 16:27:47 +0000 (UTC) From: Aaron Kling via B4 Relay Date: Mon, 23 Mar 2026 11:27:44 -0500 Subject: [PATCH v4 2/6] dt-bindings: arm: qcom: Add AYN QCS8550 Devices Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260323-ayn-qcs8550-v4-2-33a8ac3d53fa@gmail.com> References: <20260323-ayn-qcs8550-v4-0-33a8ac3d53fa@gmail.com> In-Reply-To: <20260323-ayn-qcs8550-v4-0-33a8ac3d53fa@gmail.com> To: Bjorn Andersson , Konrad Dybcio , Rob Herring , Krzysztof Kozlowski , Conor Dooley Cc: linux-arm-msm@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Aaron Kling X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1774283267; l=969; i=webgeek1234@gmail.com; s=20250217; h=from:subject:message-id; bh=ucre7b8YPLKnADDPwPA5ChGeyo0QfbGTENGUYfTNUj0=; b=i0xAfbVQu4xwVmOpdCTbqx12YAcG4ELGwuD04I+clxksLnkIh5ISQwS1+eeAkRUPAK/mWGcn9 4RZQanEEe2QCMk6gN5AS8OO4kjh01/FKt3ltSLsdUfQzziFILEc0twm X-Developer-Key: i=webgeek1234@gmail.com; a=ed25519; pk=TQwd6q26txw7bkK7B8qtI/kcAohZc7bHHGSD7domdrU= X-Endpoint-Received: by B4 Relay for webgeek1234@gmail.com/20250217 with auth_id=342 X-Original-From: Aaron Kling Reply-To: webgeek1234@gmail.com From: Aaron Kling Namely: * Odin 2 * Odin 2 Mini * Odin 2 Portal * Thor Signed-off-by: Aaron Kling Reviewed-by: Krzysztof Kozlowski --- Documentation/devicetree/bindings/arm/qcom.yaml | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/Documentation/devicetree/bindings/arm/qcom.yaml b/Documentatio= n/devicetree/bindings/arm/qcom.yaml index b4c79f89b285491adcbae83017e08a5cd11da77d..179b850bdcb6715c4ffcdc6f887= 71c520670e8b9 100644 --- a/Documentation/devicetree/bindings/arm/qcom.yaml +++ b/Documentation/devicetree/bindings/arm/qcom.yaml @@ -1090,6 +1090,15 @@ properties: - const: qcom,qcs8550 - const: qcom,sm8550 =20 + - items: + - enum: + - ayntec,odin2 + - ayntec,odin2mini + - ayntec,odin2portal + - ayntec,thor + - const: qcom,qcs8550 + - const: qcom,sm8550 + - items: - enum: - qcom,sm8650-hdk --=20 2.53.0 From nobody Fri Apr 3 17:33:21 2026 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (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 93F683BED2C; Mon, 23 Mar 2026 16:27:48 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774283268; cv=none; b=jem4nbwOIaGwoiJzDzt4MkJzILEDus2YemT5s6bebh3QFmvMSUR5kqLxAuwPcdG/lLUta2f8ilxNcs4NBMbF4sgP7LqmqGmKoO3pHE54vlHa2S335BW8quChxrWWmcd5bcZPSEMdpR7tfn4XF0z+0d+C3qfwrDHPuzBZEET1jnY= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774283268; c=relaxed/simple; bh=8djw1bbWo6EG3ZMxUXH2e9tJaa5GCgb1Qr22SU8F5cA=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=oE/SZ/lW6l6sNiIO2PfW5XKPgPoQOQe3sA3pEnxOTueXBfOoAnOlDbNzKWrjAr/kbu6CMi3KGXwx9B6697iobP7xwX2tJMpoF2qQdJa9QJGZPGICx4u8oVMuLYAozLkEqc8u51OTAu3hjvnW0k9Fu8d2IpakxMisxVAiNCnYLPI= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=WGUk91zu; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="WGUk91zu" Received: by smtp.kernel.org (Postfix) with ESMTPS id 2008EC2BCB9; Mon, 23 Mar 2026 16:27:48 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1774283268; bh=8djw1bbWo6EG3ZMxUXH2e9tJaa5GCgb1Qr22SU8F5cA=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=WGUk91zuABISdbPbnQkaDv2O0U7A1fWAfes7xqH+DWz2FKRCsja74sggckfHhdXcV W7tulVprJpSjO4lmsQywd0QBZQ9PrbZSV2IklQRGdzrq2KBmQXCxiD0E5yBoyyY+t/ zLFX7actjhM1wtp3v2iTSoOOBWKg2jw0jaaBlWkpd8zQezBTKSmZHuR5Kw+Kx1kSrq 3bm9alcnyor1iqC6rK0mVhXMbNxl48D5z8sy1RPKpv0ElBK+BnErrjnRgC+AiX+ZXu yMYYtNusZYi2w6LRsLxIz9YPgiYJ284B98yWu40VnNNhhw3QVtRRzmBT7Gm8w/4/+v rw5BQv0bz+K5Q== Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 15BD3F483CE; Mon, 23 Mar 2026 16:27:48 +0000 (UTC) From: Aaron Kling via B4 Relay Date: Mon, 23 Mar 2026 11:27:45 -0500 Subject: [PATCH v4 3/6] arm64: dts: qcom: Add AYN QCS8550 Common Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260323-ayn-qcs8550-v4-3-33a8ac3d53fa@gmail.com> References: <20260323-ayn-qcs8550-v4-0-33a8ac3d53fa@gmail.com> In-Reply-To: <20260323-ayn-qcs8550-v4-0-33a8ac3d53fa@gmail.com> To: Bjorn Andersson , Konrad Dybcio , Rob Herring , Krzysztof Kozlowski , Conor Dooley Cc: linux-arm-msm@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Aaron Kling , Teguh Sobirin X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1774283267; l=40582; i=webgeek1234@gmail.com; s=20250217; h=from:subject:message-id; bh=4NRVT9ulqvTIEg8PYZYk5TBGuh0e4wbksIM5ogieiHA=; b=MjNE1kU2D22IqkcnXgg+rJPg5X/muNBMfotPuihwAgA+K3N9fHA28fTlI/8OyPyKs1k7vQhQO d/h0RTNy1KtCmiXRydQgju9jRzhRQqlDDe6mEPa6QLZCO/8Kq4PGu7k X-Developer-Key: i=webgeek1234@gmail.com; a=ed25519; pk=TQwd6q26txw7bkK7B8qtI/kcAohZc7bHHGSD7domdrU= X-Endpoint-Received: by B4 Relay for webgeek1234@gmail.com/20250217 with auth_id=342 X-Original-From: Aaron Kling Reply-To: webgeek1234@gmail.com From: Teguh Sobirin This contains everything common between the AYN QCS8550 devices. It will be included by device specific dts'. Signed-off-by: Teguh Sobirin Co-developed-by: Aaron Kling Signed-off-by: Aaron Kling --- .../arm64/boot/dts/qcom/qcs8550-ayntec-common.dtsi | 1762 ++++++++++++++++= ++++ 1 file changed, 1762 insertions(+) diff --git a/arch/arm64/boot/dts/qcom/qcs8550-ayntec-common.dtsi b/arch/arm= 64/boot/dts/qcom/qcs8550-ayntec-common.dtsi new file mode 100644 index 0000000000000000000000000000000000000000..f46672cca66b8a37bb8c5146432= 73a2d915049ed --- /dev/null +++ b/arch/arm64/boot/dts/qcom/qcs8550-ayntec-common.dtsi @@ -0,0 +1,1762 @@ +// SPDX-License-Identifier: BSD-3-Clause +/* + * Copyright (c) 2025, Teguh Sobirin. + */ + +#include +#include +#include "qcs8550.dtsi" +#include "pm8550.dtsi" +#include "pm8550b.dtsi" +#define PMK8550VE_SID 5 +#include "pm8550ve.dtsi" +#include "pm8550vs.dtsi" +#include "pmk8550.dtsi" + +/delete-node/ &aop_image_mem; +/delete-node/ &aop_config_mem; +/delete-node/ &camera_mem; +/delete-node/ &ipa_fw_mem; +/delete-node/ &ipa_gsi_mem; +/delete-node/ &mpss_dsm_mem; +/delete-node/ &mpss_mem; +/delete-node/ &q6_mpss_dtb_mem; +/delete-node/ &remoteproc_mpss; + +/ { + chassis-type =3D "handset"; + + aliases { + serial0 =3D &uart7; + serial1 =3D &uart14; + }; + + // The tzlog label is required by ABL to apply a dtbo, but it can be on a= ny node + qcom_tzlog: chosen { + stdout-path =3D "serial0:115200n8"; + }; + + gpio-keys { + compatible =3D "gpio-keys"; + + pinctrl-0 =3D <&volume_up_n>; + pinctrl-names =3D "default"; + + key-volume-up { + label =3D "Volume Up"; + debounce-interval =3D <15>; + gpios =3D <&pm8550_gpios 6 GPIO_ACTIVE_LOW>; + linux,code =3D ; + linux,can-disable; + wakeup-source; + }; + }; + + pmic-glink { + compatible =3D "qcom,sm8550-pmic-glink", "qcom,pmic-glink"; + #address-cells =3D <1>; + #size-cells =3D <0>; + orientation-gpios =3D <&tlmm 11 GPIO_ACTIVE_HIGH>; + + connector@0 { + compatible =3D "usb-c-connector"; + reg =3D <0>; + power-role =3D "dual"; + data-role =3D "dual"; + + ports { + #address-cells =3D <1>; + #size-cells =3D <0>; + + port@0 { + reg =3D <0>; + + pmic_glink_hs_in: endpoint { + remote-endpoint =3D <&usb_1_dwc3_hs>; + }; + }; + + port@1 { + reg =3D <1>; + + pmic_glink_ss_in: endpoint { + remote-endpoint =3D <&usb_dp_qmpphy_out>; + }; + }; + + port@2 { + reg =3D <2>; + + pmic_glink_sbu: endpoint { + remote-endpoint =3D <&usb0_sbu_mux>; + }; + }; + }; + }; + }; + + pwm_fan: pwm-fan { + compatible =3D "pwm-fan"; + + fan-supply =3D <&vdd_fan_5v0>; + pwms =3D <&pm8550_pwm 3 50000>; + + pinctrl-0 =3D <&fan_pwm_active>, <&fan_int>; + pinctrl-names =3D "default"; + + pulses-per-revolution =3D <4>; + interrupts-extended =3D <&tlmm 13 IRQ_TYPE_EDGE_FALLING>; + + cooling-levels =3D <0 40 65 75 90 100 120 150 175>; + #cooling-cells =3D <2>; + }; + + reserved-memory { + hyp_mem: hyp-region@80000000 { + reg =3D <0 0x80000000 0 0xa00000>; + no-map; + }; + + cpusys_vm_mem: cpusys-vm-region@80a00000 { + reg =3D <0 0x80a00000 0 0x400000>; + no-map; + }; + + hyp_tags_mem: hyp-tags-region@80e00000 { + reg =3D <0 0x80e00000 0 0x3d0000>; + no-map; + }; + + xbl_sc_mem: xbl-sc-region@d8100000 { + reg =3D <0 0xd8100000 0 0x40000>; + no-map; + }; + + hyp_tags_reserved_mem: hyp-tags-reserved-region@811d0000 { + reg =3D <0 0x811d0000 0 0x30000>; + no-map; + }; + + xbl_dt_log_merged_mem: xbl-dt-log-merged-region@81a00000 { + reg =3D <0 0x81a00000 0 0x260000>; + no-map; + }; + + aop_config_merged_mem: aop-config-merged-region@81c80000 { + reg =3D <0 0x81c80000 0 0x74000>; + no-map; + }; + + chipinfo_mem: chipinfo-region@81cf4000 { + reg =3D <0 0x81cf4000 0 0x1000>; + no-map; + }; + + global_sync_mem: global-sync-region@82600000 { + reg =3D <0 0x82600000 0 0x100000>; + no-map; + }; + + tz_stat_mem: tz-stat-region@82700000 { + reg =3D <0 0x82700000 0 0x100000>; + no-map; + }; + + cpucp_fw_mem: cpucp-fw-region@d8140000 { + reg =3D <0 0xd8140000 0 0x1c0000>; + no-map; + }; + + qtee_mem: qtee-region@d8300000 { + reg =3D <0 0xd8300000 0 0x500000>; + no-map; + }; + + hwfence_shbuf: hwfence-shbuf-region@e6440000 { + reg =3D <0 0xe6440000 0 0x2dd000>; + no-map; + }; + + hyp_ext_reserved_mem: hyp-ext-reserved-region@ff700000 { + reg =3D <0 0xff700000 0 0x100000>; + no-map; + }; + + llcc_lpi_mem: llcc_lpi_region@ff800000 { + reg =3D <0 0xff800000 0 0x600000>; + no-map; + }; + + hyp_ext_tags_mem: hyp-ext-tags-region@fce00000 { + reg =3D <0 0xfce00000 0 0x2900000>; + no-map; + }; + }; + + sound { + compatible =3D "qcom,sm8550-sndcard", "qcom,sm8450-sndcard"; + pinctrl-0 =3D <&lpi_i2s3_active>; + pinctrl-names =3D "default"; + + model =3D "AYN-Odin2"; + audio-routing =3D "IN1_HPHL", "HPHL_OUT", + "IN2_HPHR", "HPHR_OUT", + "AMIC2", "MIC BIAS2", + "TX SWR_INPUT1", "ADC2_OUTPUT"; + + speaker-i2s-dai-link { + link-name =3D "Primary MI2S Playback"; + + codec { + sound-dai =3D <&spk_amp_l>, <&spk_amp_r>; + }; + + cpu { + sound-dai =3D <&q6apmbedai PRIMARY_MI2S_RX>; + }; + + platform { + sound-dai =3D <&q6apm>; + }; + }; + + wcd-playback-dai-link { + link-name =3D "WCD Playback"; + + codec { + sound-dai =3D <&wcd938x 0>, <&swr1 0>, <&lpass_rxmacro 0>; + }; + + cpu { + sound-dai =3D <&q6apmbedai RX_CODEC_DMA_RX_0>; + }; + + platform { + sound-dai =3D <&q6apm>; + }; + }; + + wcd-capture-dai-link { + link-name =3D "WCD Capture"; + + codec { + sound-dai =3D <&wcd938x 1>, <&swr2 0>, <&lpass_txmacro 0>; + }; + + cpu { + sound-dai =3D <&q6apmbedai TX_CODEC_DMA_TX_3>; + }; + + platform { + sound-dai =3D <&q6apm>; + }; + }; + + dp0-dai-link { + link-name =3D "DP0 Playback"; + + codec { + sound-dai =3D <&mdss_dp0>; + }; + + cpu { + sound-dai =3D <&q6apmbedai DISPLAY_PORT_RX_0>; + }; + + platform { + sound-dai =3D <&q6apm>; + }; + }; + }; + + thermal-zones { + cpu0-thermal { + polling-delay =3D <200>; + + trips { + cpuss0_active0: cpu-active0 { + temperature =3D <50000>; + hysteresis =3D <4000>; + type =3D "active"; + }; + + cpuss0_active1: cpu-active1 { + temperature =3D <55000>; + hysteresis =3D <4000>; + type =3D "active"; + }; + + cpuss0_active2: cpu-active2 { + temperature =3D <60000>; + hysteresis =3D <4000>; + type =3D "active"; + }; + + cpuss0_active3: cpu-active3 { + temperature =3D <65000>; + hysteresis =3D <4000>; + type =3D "active"; + }; + + cpuss0_active4: cpu-active4 { + temperature =3D <70000>; + hysteresis =3D <4000>; + type =3D "active"; + }; + + cpuss0_active5: cpu-active5 { + temperature =3D <75000>; + hysteresis =3D <4000>; + type =3D "active"; + }; + + cpuss0_active6: cpu-active6 { + temperature =3D <80000>; + hysteresis =3D <4000>; + type =3D "active"; + }; + + cpuss0_active7: cpu-active7 { + temperature =3D <85000>; + hysteresis =3D <4000>; + type =3D "active"; + }; + }; + + cooling-maps { + map0 { + cooling-device =3D <&pwm_fan 0 1>; + trip =3D <&cpuss0_active0>; + }; + + map1 { + cooling-device =3D <&pwm_fan 1 2>; + trip =3D <&cpuss0_active1>; + }; + + map2 { + cooling-device =3D <&pwm_fan 2 3>; + trip =3D <&cpuss0_active2>; + }; + + map3 { + cooling-device =3D <&pwm_fan 3 4>; + trip =3D <&cpuss0_active3>; + }; + + map4 { + cooling-device =3D <&pwm_fan 4 5>; + trip =3D <&cpuss0_active4>; + }; + + map5 { + cooling-device =3D <&pwm_fan 5 6>; + trip =3D <&cpuss0_active5>; + }; + + map6 { + cooling-device =3D <&pwm_fan 6 7>; + trip =3D <&cpuss0_active6>; + }; + + map7 { + cooling-device =3D <&pwm_fan 7 8>; + trip =3D <&cpuss0_active7>; + }; + }; + }; + + cpu3-bottom-thermal { + polling-delay =3D <200>; + + trips { + cpuss3_active0: cpu-active0 { + temperature =3D <50000>; + hysteresis =3D <4000>; + type =3D "active"; + }; + + cpuss3_active1: cpu-active1 { + temperature =3D <55000>; + hysteresis =3D <4000>; + type =3D "active"; + }; + + cpuss3_active2: cpu-active2 { + temperature =3D <60000>; + hysteresis =3D <4000>; + type =3D "active"; + }; + + cpuss3_active3: cpu-active3 { + temperature =3D <65000>; + hysteresis =3D <4000>; + type =3D "active"; + }; + + cpuss3_active4: cpu-active4 { + temperature =3D <70000>; + hysteresis =3D <4000>; + type =3D "active"; + }; + + cpuss3_active5: cpu-active5 { + temperature =3D <75000>; + hysteresis =3D <4000>; + type =3D "active"; + }; + + cpuss3_active6: cpu-active6 { + temperature =3D <80000>; + hysteresis =3D <4000>; + type =3D "active"; + }; + + cpuss3_active7: cpu-active7 { + temperature =3D <85000>; + hysteresis =3D <4000>; + type =3D "active"; + }; + }; + + cooling-maps { + map0 { + cooling-device =3D <&pwm_fan 0 1>; + trip =3D <&cpuss3_active0>; + }; + + map1 { + cooling-device =3D <&pwm_fan 1 2>; + trip =3D <&cpuss3_active1>; + }; + + map2 { + cooling-device =3D <&pwm_fan 2 3>; + trip =3D <&cpuss3_active2>; + }; + + map3 { + cooling-device =3D <&pwm_fan 3 4>; + trip =3D <&cpuss3_active3>; + }; + + map4 { + cooling-device =3D <&pwm_fan 4 5>; + trip =3D <&cpuss3_active4>; + }; + + map5 { + cooling-device =3D <&pwm_fan 5 6>; + trip =3D <&cpuss3_active5>; + }; + + map6 { + cooling-device =3D <&pwm_fan 6 7>; + trip =3D <&cpuss3_active6>; + }; + + map7 { + cooling-device =3D <&pwm_fan 7 8>; + trip =3D <&cpuss3_active7>; + }; + }; + }; + + cpu7-bottom-thermal { + polling-delay =3D <200>; + + trips { + cpuss7_active0: cpu-active0 { + temperature =3D <50000>; + hysteresis =3D <4000>; + type =3D "active"; + }; + + cpuss7_active1: cpu-active1 { + temperature =3D <55000>; + hysteresis =3D <4000>; + type =3D "active"; + }; + + cpuss7_active2: cpu-active2 { + temperature =3D <60000>; + hysteresis =3D <4000>; + type =3D "active"; + }; + + cpuss7_active3: cpu-active3 { + temperature =3D <65000>; + hysteresis =3D <4000>; + type =3D "active"; + }; + + cpuss7_active4: cpu-active4 { + temperature =3D <70000>; + hysteresis =3D <4000>; + type =3D "active"; + }; + + cpuss7_active5: cpu-active5 { + temperature =3D <75000>; + hysteresis =3D <4000>; + type =3D "active"; + }; + + cpuss7_active6: cpu-active6 { + temperature =3D <80000>; + hysteresis =3D <4000>; + type =3D "active"; + }; + + cpuss7_active7: cpu-active7 { + temperature =3D <85000>; + hysteresis =3D <4000>; + type =3D "active"; + }; + }; + + cooling-maps { + map0 { + cooling-device =3D <&pwm_fan 0 1>; + trip =3D <&cpuss7_active0>; + }; + + map1 { + cooling-device =3D <&pwm_fan 1 2>; + trip =3D <&cpuss7_active1>; + }; + + map2 { + cooling-device =3D <&pwm_fan 2 3>; + trip =3D <&cpuss7_active2>; + }; + + map3 { + cooling-device =3D <&pwm_fan 3 4>; + trip =3D <&cpuss7_active3>; + }; + + map4 { + cooling-device =3D <&pwm_fan 4 5>; + trip =3D <&cpuss7_active4>; + }; + + map5 { + cooling-device =3D <&pwm_fan 5 6>; + trip =3D <&cpuss7_active5>; + }; + + map6 { + cooling-device =3D <&pwm_fan 6 7>; + trip =3D <&cpuss7_active6>; + }; + + map7 { + cooling-device =3D <&pwm_fan 7 8>; + trip =3D <&cpuss7_active7>; + }; + }; + }; + + gpuss-0-thermal { + polling-delay =3D <200>; + + trips { + gpuss0_active0: gpu-active0 { + temperature =3D <50000>; + hysteresis =3D <4000>; + type =3D "active"; + }; + + gpuss0_active1: gpu-active1 { + temperature =3D <55000>; + hysteresis =3D <4000>; + type =3D "active"; + }; + + gpuss0_active2: gpu-active2 { + temperature =3D <60000>; + hysteresis =3D <4000>; + type =3D "active"; + }; + + gpuss0_active3: gpu-active3 { + temperature =3D <65000>; + hysteresis =3D <4000>; + type =3D "active"; + }; + + gpuss0_active4: gpu-active4 { + temperature =3D <70000>; + hysteresis =3D <4000>; + type =3D "active"; + }; + + gpuss0_active5: gpu-active5 { + temperature =3D <75000>; + hysteresis =3D <4000>; + type =3D "active"; + }; + + gpuss0_active6: gpu-active6 { + temperature =3D <80000>; + hysteresis =3D <4000>; + type =3D "active"; + }; + + gpuss0_active7: gpu-active7 { + temperature =3D <85000>; + hysteresis =3D <4000>; + type =3D "active"; + }; + }; + + cooling-maps { + map0 { + cooling-device =3D <&pwm_fan 0 1>; + trip =3D <&gpuss0_active0>; + }; + + map1 { + cooling-device =3D <&pwm_fan 1 2>; + trip =3D <&gpuss0_active1>; + }; + + map2 { + cooling-device =3D <&pwm_fan 2 3>; + trip =3D <&gpuss0_active2>; + }; + + map3 { + cooling-device =3D <&pwm_fan 3 4>; + trip =3D <&gpuss0_active3>; + }; + + map4 { + cooling-device =3D <&pwm_fan 4 5>; + trip =3D <&gpuss0_active4>; + }; + + map5 { + cooling-device =3D <&pwm_fan 5 6>; + trip =3D <&gpuss0_active5>; + }; + + map6 { + cooling-device =3D <&pwm_fan 6 7>; + trip =3D <&gpuss0_active6>; + }; + + map7 { + cooling-device =3D <&pwm_fan 7 8>; + trip =3D <&gpuss0_active7>; + }; + }; + }; + }; + + usb0-sbu-mux { + compatible =3D "pericom,pi3usb102", "gpio-sbu-mux"; + + enable-gpios =3D <&tlmm 140 GPIO_ACTIVE_LOW>; + select-gpios =3D <&tlmm 141 GPIO_ACTIVE_HIGH>; + + pinctrl-0 =3D <&usb0_sbu_default>; + pinctrl-names =3D "default"; + + mode-switch; + orientation-switch; + + port { + usb0_sbu_mux: endpoint { + remote-endpoint =3D <&pmic_glink_sbu>; + }; + }; + }; + + vdd_fan_5v0: vdd-fan-5v0-regulator { + compatible =3D "regulator-fixed"; + regulator-name =3D "vdd_fan_5v0"; + + regulator-min-microvolt =3D <5000000>; + regulator-max-microvolt =3D <5000000>; + + gpio =3D <&tlmm 109 GPIO_ACTIVE_HIGH>; + enable-active-high; + + pinctrl-0 =3D <&fan_pwr_active>; + pinctrl-names =3D "default"; + + regulator-state-mem { + regulator-off-in-suspend; + }; + }; + + vdd_mcu_3v3: vdd-mcu-3v3-regulator { + compatible =3D "regulator-fixed"; + regulator-name =3D "vdd_mcu_3v3"; + + regulator-min-microvolt =3D <3300000>; + regulator-max-microvolt =3D <3300000>; + + gpio =3D <&tlmm 99 GPIO_ACTIVE_HIGH>; + regulator-always-on; + regulator-boot-on; + enable-active-high; + }; + + vph_pwr: regulator-vph-pwr { + compatible =3D "regulator-fixed"; + regulator-name =3D "vph_pwr"; + regulator-min-microvolt =3D <3700000>; + regulator-max-microvolt =3D <3700000>; + + regulator-always-on; + regulator-boot-on; + }; + + wcd938x: audio-codec { + compatible =3D "qcom,wcd9385-codec"; + + pinctrl-0 =3D <&wcd_default>; + pinctrl-names =3D "default"; + + qcom,micbias1-microvolt =3D <1800000>; + qcom,micbias2-microvolt =3D <1800000>; + qcom,micbias3-microvolt =3D <1800000>; + qcom,micbias4-microvolt =3D <1800000>; + qcom,mbhc-buttons-vthreshold-microvolt =3D <75000 150000 237000 500000 + 500000 500000 500000 500000>; + qcom,mbhc-headset-vthreshold-microvolt =3D <1700000>; + qcom,mbhc-headphone-vthreshold-microvolt =3D <50000>; + qcom,rx-device =3D <&wcd_rx>; + qcom,tx-device =3D <&wcd_tx>; + + reset-gpios =3D <&tlmm 108 GPIO_ACTIVE_LOW>; + + vdd-buck-supply =3D <&vreg_l15b_1p8>; + vdd-rxtx-supply =3D <&vreg_l15b_1p8>; + vdd-io-supply =3D <&vreg_l15b_1p8>; + vdd-mic-bias-supply =3D <&vreg_bob1>; + + #sound-dai-cells =3D <1>; + }; + + wcn7850-pmu { + compatible =3D "qcom,wcn7850-pmu"; + + pinctrl-0 =3D <&wlan_en>, <&bt_default>, <&pmk8550_sleep_clk>; + pinctrl-names =3D "default"; + + wlan-enable-gpios =3D <&tlmm 80 GPIO_ACTIVE_HIGH>; + bt-enable-gpios =3D <&tlmm 81 GPIO_ACTIVE_HIGH>; + + vdd-supply =3D <&vreg_s5g_0p8>; + vddio-supply =3D <&vreg_l15b_1p8>; + vddaon-supply =3D <&vreg_s2g_0p8>; + vdddig-supply =3D <&vreg_s4e_0p95>; + vddrfa1p2-supply =3D <&vreg_s4g_1p3>; + vddrfa1p8-supply =3D <&vreg_s6g_1p8>; + + regulators { + vreg_pmu_rfa_cmn: ldo0 { + regulator-name =3D "vreg_pmu_rfa_cmn"; + }; + + vreg_pmu_aon_0p59: ldo1 { + regulator-name =3D "vreg_pmu_aon_0p59"; + }; + + vreg_pmu_wlcx_0p8: ldo2 { + regulator-name =3D "vreg_pmu_wlcx_0p8"; + }; + + vreg_pmu_wlmx_0p85: ldo3 { + regulator-name =3D "vreg_pmu_wlmx_0p85"; + }; + + vreg_pmu_btcmx_0p85: ldo4 { + regulator-name =3D "vreg_pmu_btcmx_0p85"; + }; + + vreg_pmu_rfa_0p8: ldo5 { + regulator-name =3D "vreg_pmu_rfa_0p8"; + }; + + vreg_pmu_rfa_1p2: ldo6 { + regulator-name =3D "vreg_pmu_rfa_1p2"; + }; + + vreg_pmu_rfa_1p8: ldo7 { + regulator-name =3D "vreg_pmu_rfa_1p8"; + }; + + vreg_pmu_pcie_0p9: ldo8 { + regulator-name =3D "vreg_pmu_pcie_0p9"; + }; + + vreg_pmu_pcie_1p8: ldo9 { + regulator-name =3D "vreg_pmu_pcie_1p8"; + }; + }; + }; + + // The arch_timer label is unused here, but is required by ABL to apply a= dtbo + arch_timer: timer { }; +}; + +&apps_rsc { + regulators-0 { + compatible =3D "qcom,pm8550-rpmh-regulators"; + qcom,pmic-id =3D "b"; + + vdd-bob1-supply =3D <&vph_pwr>; + vdd-bob2-supply =3D <&vph_pwr>; + vdd-l1-l4-l10-supply =3D <&vreg_s6g_1p8>; + vdd-l2-l13-l14-supply =3D <&vreg_bob1>; + vdd-l3-supply =3D <&vreg_s4g_1p3>; + vdd-l5-l16-supply =3D <&vreg_bob1>; + vdd-l6-l7-supply =3D <&vreg_bob1>; + vdd-l8-l9-supply =3D <&vreg_bob1>; + vdd-l11-supply =3D <&vreg_s4g_1p3>; + vdd-l12-supply =3D <&vreg_s6g_1p8>; + vdd-l15-supply =3D <&vreg_s6g_1p8>; + vdd-l17-supply =3D <&vreg_bob2>; + + vreg_bob1: bob1 { + regulator-name =3D "vreg_bob1"; + regulator-min-microvolt =3D <3296000>; + regulator-max-microvolt =3D <3960000>; + regulator-initial-mode =3D ; + }; + + vreg_bob2: bob2 { + regulator-name =3D "vreg_bob2"; + regulator-min-microvolt =3D <2720000>; + regulator-max-microvolt =3D <3960000>; + regulator-initial-mode =3D ; + }; + + vreg_l2b_3p0: ldo2 { + regulator-name =3D "vreg_l2b_3p0"; + regulator-min-microvolt =3D <3008000>; + regulator-max-microvolt =3D <3008000>; + regulator-initial-mode =3D ; + regulator-allow-set-load; + regulator-allowed-modes =3D ; + }; + + vreg_l5b_3p1: ldo5 { + regulator-name =3D "vreg_l5b_3p1"; + regulator-min-microvolt =3D <3104000>; + regulator-max-microvolt =3D <3104000>; + regulator-initial-mode =3D ; + regulator-allow-set-load; + regulator-allowed-modes =3D ; + }; + + vreg_l6b_1p8: ldo6 { + regulator-name =3D "vreg_l6b_1p8"; + regulator-min-microvolt =3D <1800000>; + regulator-max-microvolt =3D <3008000>; + regulator-initial-mode =3D ; + regulator-allow-set-load; + regulator-allowed-modes =3D ; + }; + + vreg_l7b_1p8: ldo7 { + regulator-name =3D "vreg_l7b_1p8"; + regulator-min-microvolt =3D <1800000>; + regulator-max-microvolt =3D <3008000>; + regulator-initial-mode =3D ; + }; + + vreg_l8b_1p8: ldo8 { + regulator-name =3D "vreg_l8b_1p8"; + regulator-min-microvolt =3D <1800000>; + regulator-max-microvolt =3D <3008000>; + regulator-initial-mode =3D ; + regulator-allow-set-load; + regulator-allowed-modes =3D ; + }; + + vreg_l9b_2p9: ldo9 { + regulator-name =3D "vreg_l9b_2p9"; + regulator-min-microvolt =3D <2960000>; + regulator-max-microvolt =3D <3008000>; + regulator-initial-mode =3D ; + regulator-allow-set-load; + regulator-allowed-modes =3D ; + }; + + vreg_l11b_1p2: ldo11 { + regulator-name =3D "vreg_l11b_1p2"; + regulator-min-microvolt =3D <1200000>; + regulator-max-microvolt =3D <1504000>; + regulator-initial-mode =3D ; + regulator-allow-set-load; + regulator-allowed-modes =3D ; + }; + + vreg_l12b_1p8: ldo12 { + regulator-name =3D "vreg_l12b_1p8"; + regulator-min-microvolt =3D <1800000>; + regulator-max-microvolt =3D <1800000>; + regulator-initial-mode =3D ; + regulator-allow-set-load; + regulator-allowed-modes =3D ; + }; + + vreg_l13b_3p0: ldo13 { + regulator-name =3D "vreg_l13b_3p0"; + regulator-min-microvolt =3D <3000000>; + regulator-max-microvolt =3D <3000000>; + regulator-initial-mode =3D ; + regulator-allow-set-load; + regulator-allowed-modes =3D ; + }; + + vreg_l14b_3p2: ldo14 { + regulator-name =3D "vreg_l14b_3p2"; + regulator-min-microvolt =3D <3200000>; + regulator-max-microvolt =3D <3200000>; + regulator-initial-mode =3D ; + regulator-allow-set-load; + regulator-allowed-modes =3D ; + }; + + vreg_l15b_1p8: ldo15 { + regulator-name =3D "vreg_l15b_1p8"; + regulator-min-microvolt =3D <1800000>; + regulator-max-microvolt =3D <1800000>; + regulator-initial-mode =3D ; + regulator-allow-set-load; + regulator-allowed-modes =3D ; + }; + + vreg_l16b_2p8: ldo16 { + regulator-name =3D "vreg_l16b_2p8"; + regulator-min-microvolt =3D <2800000>; + regulator-max-microvolt =3D <2800000>; + regulator-initial-mode =3D ; + regulator-allow-set-load; + regulator-allowed-modes =3D ; + }; + + vreg_l17b_2p5: ldo17 { + regulator-name =3D "vreg_l17b_2p5"; + regulator-min-microvolt =3D <2504000>; + regulator-max-microvolt =3D <2504000>; + regulator-initial-mode =3D ; + regulator-allow-set-load; + regulator-allowed-modes =3D ; + }; + }; + + regulators-1 { + compatible =3D "qcom,pm8550vs-rpmh-regulators"; + qcom,pmic-id =3D "c"; + + vdd-l1-supply =3D <&vreg_s4g_1p3>; + vdd-l2-supply =3D <&vreg_s4e_0p95>; + vdd-l3-supply =3D <&vreg_s4e_0p95>; + + vreg_l3c_0p9: ldo3 { + regulator-name =3D "vreg_l3c_0p9"; + regulator-min-microvolt =3D <880000>; + regulator-max-microvolt =3D <912000>; + regulator-initial-mode =3D ; + regulator-allow-set-load; + regulator-allowed-modes =3D ; + }; + }; + + regulators-2 { + compatible =3D "qcom,pm8550vs-rpmh-regulators"; + qcom,pmic-id =3D "d"; + + vdd-l1-supply =3D <&vreg_s4e_0p95>; + vdd-l2-supply =3D <&vreg_s4e_0p95>; + vdd-l3-supply =3D <&vreg_s4e_0p95>; + + vreg_l1d_0p88: ldo1 { + regulator-name =3D "vreg_l1d_0p88"; + regulator-min-microvolt =3D <880000>; + regulator-max-microvolt =3D <920000>; + regulator-initial-mode =3D ; + regulator-allow-set-load; + regulator-allowed-modes =3D ; + }; + }; + + regulators-3 { + compatible =3D "qcom,pm8550vs-rpmh-regulators"; + qcom,pmic-id =3D "e"; + + vdd-l1-supply =3D <&vreg_s4e_0p95>; + vdd-l2-supply =3D <&vreg_s4e_0p95>; + vdd-l3-supply =3D <&vreg_s4g_1p3>; + vdd-s4-supply =3D <&vph_pwr>; + vdd-s5-supply =3D <&vph_pwr>; + + vreg_s4e_0p95: smps4 { + regulator-name =3D "vreg_s4e_0p95"; + regulator-min-microvolt =3D <904000>; + regulator-max-microvolt =3D <984000>; + regulator-initial-mode =3D ; + }; + + vreg_s5e_1p08: smps5 { + regulator-name =3D "vreg_s5e_1p08"; + regulator-min-microvolt =3D <1010000>; + regulator-max-microvolt =3D <1120000>; + regulator-initial-mode =3D ; + }; + + vreg_l1e_0p88: ldo1 { + regulator-name =3D "vreg_l1e_0p88"; + regulator-min-microvolt =3D <880000>; + regulator-max-microvolt =3D <912000>; + regulator-initial-mode =3D ; + regulator-allow-set-load; + regulator-allowed-modes =3D ; + }; + + vreg_l2e_0p9: ldo2 { + regulator-name =3D "vreg_l2e_0p9"; + regulator-min-microvolt =3D <870000>; + regulator-max-microvolt =3D <970000>; + regulator-initial-mode =3D ; + regulator-allow-set-load; + regulator-allowed-modes =3D ; + }; + + vreg_l3e_1p2: ldo3 { + regulator-name =3D "vreg_l3e_1p2"; + regulator-min-microvolt =3D <1200000>; + regulator-max-microvolt =3D <1200000>; + regulator-initial-mode =3D ; + regulator-allow-set-load; + regulator-allowed-modes =3D ; + }; + }; + + regulators-4 { + compatible =3D "qcom,pm8550ve-rpmh-regulators"; + qcom,pmic-id =3D "f"; + + vdd-l1-supply =3D <&vreg_s4e_0p95>; + vdd-l2-supply =3D <&vreg_s4e_0p95>; + vdd-l3-supply =3D <&vreg_s4e_0p95>; + vdd-s4-supply =3D <&vph_pwr>; + + vreg_s4f_0p5: smps4 { + regulator-name =3D "vreg_s4f_0p5"; + regulator-min-microvolt =3D <300000>; + regulator-max-microvolt =3D <700000>; + regulator-initial-mode =3D ; + }; + + vreg_l1f_0p9: ldo1 { + regulator-name =3D "vreg_l1f_0p9"; + regulator-min-microvolt =3D <880000>; + regulator-max-microvolt =3D <912000>; + regulator-initial-mode =3D ; + regulator-allow-set-load; + regulator-allowed-modes =3D ; + }; + + vreg_l2f_0p88: ldo2 { + regulator-name =3D "vreg_l2f_0p88"; + regulator-min-microvolt =3D <880000>; + regulator-max-microvolt =3D <912000>; + regulator-initial-mode =3D ; + regulator-allow-set-load; + regulator-allowed-modes =3D ; + }; + + vreg_l3f_0p88: ldo3 { + regulator-name =3D "vreg_l3f_0p88"; + regulator-min-microvolt =3D <880000>; + regulator-max-microvolt =3D <912000>; + regulator-initial-mode =3D ; + regulator-allow-set-load; + regulator-allowed-modes =3D ; + }; + }; + + regulators-5 { + compatible =3D "qcom,pm8550vs-rpmh-regulators"; + qcom,pmic-id =3D "g"; + + vdd-l1-supply =3D <&vreg_s4g_1p3>; + vdd-l2-supply =3D <&vreg_s4g_1p3>; + vdd-l3-supply =3D <&vreg_s4g_1p3>; + vdd-s1-supply =3D <&vph_pwr>; + vdd-s2-supply =3D <&vph_pwr>; + vdd-s3-supply =3D <&vph_pwr>; + vdd-s4-supply =3D <&vph_pwr>; + vdd-s5-supply =3D <&vph_pwr>; + vdd-s6-supply =3D <&vph_pwr>; + + vreg_s1g_1p2: smps1 { + regulator-name =3D "vreg_s1g_1p2"; + regulator-min-microvolt =3D <1200000>; + regulator-max-microvolt =3D <1300000>; + regulator-initial-mode =3D ; + }; + + vreg_s2g_0p8: smps2 { + regulator-name =3D "vreg_s2g_0p8"; + regulator-min-microvolt =3D <800000>; + regulator-max-microvolt =3D <1000000>; + regulator-initial-mode =3D ; + }; + + vreg_s3g_0p7: smps3 { + regulator-name =3D "vreg_s3g_0p7"; + regulator-min-microvolt =3D <300000>; + regulator-max-microvolt =3D <1004000>; + regulator-initial-mode =3D ; + }; + + vreg_s4g_1p3: smps4 { + regulator-name =3D "vreg_s4g_1p3"; + regulator-min-microvolt =3D <1200000>; + regulator-max-microvolt =3D <1352000>; + regulator-initial-mode =3D ; + }; + + vreg_s5g_0p8: smps5 { + regulator-name =3D "vreg_s5g_0p8"; + regulator-min-microvolt =3D <500000>; + regulator-max-microvolt =3D <1004000>; + regulator-initial-mode =3D ; + }; + + vreg_s6g_1p8: smps6 { + regulator-name =3D "vreg_s6g_1p8"; + regulator-min-microvolt =3D <1800000>; + regulator-max-microvolt =3D <2000000>; + regulator-initial-mode =3D ; + }; + + vreg_l1g_1p2: ldo1 { + regulator-name =3D "vreg_l1g_1p2"; + regulator-min-microvolt =3D <1200000>; + regulator-max-microvolt =3D <1200000>; + regulator-initial-mode =3D ; + regulator-allow-set-load; + regulator-allowed-modes =3D ; + }; + + vreg_l3g_1p2: ldo3 { + regulator-name =3D "vreg_l3g_1p2"; + regulator-min-microvolt =3D <1200000>; + regulator-max-microvolt =3D <1200000>; + regulator-initial-mode =3D ; + regulator-allow-set-load; + regulator-allowed-modes =3D ; + }; + }; +}; + +&gpi_dma1 { + status =3D "okay"; +}; + +&gpi_dma2 { + status =3D "okay"; +}; + +&gpu { + status =3D "okay"; +}; + +&gpu_zap_shader { + firmware-name =3D "qcom/sm8550/a740_zap.mbn"; +}; + +&i2c_master_hub_0 { + status =3D "okay"; +}; + +&i2c_hub_2 { + clock-frequency =3D <400000>; + + status =3D "okay"; + + spk_amp_l: amplifier@34 { + compatible =3D "awinic,aw88166"; + reg =3D <0x34>; + #sound-dai-cells =3D <0>; + reset-gpios =3D <&tlmm 103 GPIO_ACTIVE_LOW>; + awinic,audio-channel =3D <0>; + awinic,sync-flag; + sound-name-prefix =3D "SPK_L"; + }; + + spk_amp_r: amplifier@35 { + compatible =3D "awinic,aw88166"; + reg =3D <0x35>; + #sound-dai-cells =3D <0>; + reset-gpios =3D <&tlmm 100 GPIO_ACTIVE_LOW>; + awinic,audio-channel =3D <1>; + awinic,sync-flag; + sound-name-prefix =3D "SPK_R"; + }; +}; + +&iris { + status =3D "okay"; +}; + +&lpass_tlmm { + lpi_i2s3_active: lpi_i2s3-active-state { + sck-pins { + pins =3D "gpio12"; + function =3D "i2s3_clk"; + drive-strength =3D <8>; + bias-disable; + output-high; + }; + + ws-pins { + pins =3D "gpio13"; + function =3D "i2s3_ws"; + drive-strength =3D <8>; + bias-disable; + output-high; + }; + + data0-pins { + pins =3D "gpio17"; + function =3D "i2s3_data"; + drive-strength =3D <8>; + bias-disable; + output-high; + }; + + data1-pins { + pins =3D "gpio18"; + function =3D "i2s3_data"; + drive-strength =3D <8>; + bias-disable; + output-high; + }; + }; +}; + +&lpass_vamacro { + qcom,dmic-sample-rate =3D <4800000>; +}; + +&lpass_wsamacro { + status =3D "disabled"; +}; + +&mdss { + status =3D "okay"; +}; + +&mdss_dp0 { + status =3D "okay"; +}; + +&mdss_dsi1 { + vdda-supply =3D <&vreg_l3e_1p2>; + + status =3D "okay"; + + display_panel: panel@0 { + reg =3D <0>; + + port { + panel1_in: endpoint { + remote-endpoint =3D <&mdss_dsi1_out>; + }; + }; + }; +}; + +&mdss_dsi1_out { + remote-endpoint =3D <&panel1_in>; + data-lanes =3D <0 1 2 3>; +}; + +&mdss_dsi1_phy { + vdds-supply =3D <&vreg_l1e_0p88>; + + status =3D "okay"; +}; + +&pcie0 { + perst-gpios =3D <&tlmm 94 GPIO_ACTIVE_LOW>; + wake-gpios =3D <&tlmm 96 GPIO_ACTIVE_HIGH>; + + pinctrl-0 =3D <&pcie0_default_state>; + pinctrl-names =3D "default"; + + status =3D "okay"; +}; + +&pcieport0 { + wifi@0 { + compatible =3D "pci17cb,1107"; + reg =3D <0x10000 0x0 0x0 0x0 0x0>; + + vddrfacmn-supply =3D <&vreg_pmu_rfa_cmn>; + vddaon-supply =3D <&vreg_pmu_aon_0p59>; + vddwlcx-supply =3D <&vreg_pmu_wlcx_0p8>; + vddwlmx-supply =3D <&vreg_pmu_wlmx_0p85>; + vddrfa0p8-supply =3D <&vreg_pmu_rfa_0p8>; + vddrfa1p2-supply =3D <&vreg_pmu_rfa_1p2>; + vddrfa1p8-supply =3D <&vreg_pmu_rfa_1p8>; + vddpcie0p9-supply =3D <&vreg_pmu_pcie_0p9>; + vddpcie1p8-supply =3D <&vreg_pmu_pcie_1p8>; + }; +}; + +&pcie0_phy { + vdda-phy-supply =3D <&vreg_l1e_0p88>; + vdda-pll-supply =3D <&vreg_l3e_1p2>; + + status =3D "okay"; +}; + +&pm8550_gpios { + fan_pwm_active: fan-pwm-active-state { + pins =3D "gpio8"; + function =3D "func1"; + input-disable; + output-enable; + output-low; + bias-disable; + power-source =3D <1>; + }; + + sdc2_card_det_n: sdc2-card-det-n-state { + pins =3D "gpio12"; + function =3D "normal"; + input-enable; + output-disable; + bias-pull-up; + power-source =3D <1>; + }; + + volume_up_n: volume-up-n-state { + pins =3D "gpio6"; + function =3D "normal"; + power-source =3D <1>; + bias-pull-up; + input-enable; + }; +}; + +&pm8550_pwm { + status =3D "okay"; + + multi-led { + color =3D ; + function =3D LED_FUNCTION_STATUS; + + #address-cells =3D <1>; + #size-cells =3D <0>; + + led@1 { + reg =3D <1>; + color =3D ; + }; + + led@2 { + reg =3D <2>; + color =3D ; + }; + + led@3 { + reg =3D <3>; + color =3D ; + }; + }; +}; + +&pm8550b_eusb2_repeater { + qcom,tune-usb2-disc-thres =3D /bits/ 8 <0x6>; + qcom,tune-usb2-amplitude =3D /bits/ 8 <0xb>; + qcom,tune-usb2-preem =3D /bits/ 8 <0x3>; + vdd18-supply =3D <&vreg_l15b_1p8>; + vdd3-supply =3D <&vreg_l5b_3p1>; +}; + +&pmk8550_gpios { + pmk8550_sleep_clk: sleep-clk-state { + pins =3D "gpio3"; + function =3D "func1"; + input-disable; + output-enable; + bias-disable; + power-source =3D <0>; + }; + + pwm_backlight_default: pwm-backlight-default-state { + pins =3D "gpio5"; + function =3D "func3"; + input-disable; + output-low; + output-enable; + bias-disable; + power-source =3D <0>; + qcom,drive-strength =3D <2>; + }; +}; + +&pmk8550_rtc { + nvmem-cells =3D <&rtc_offset>; + nvmem-cell-names =3D "offset"; +}; + +&pmk8550_sdam_2 { + rtc_offset: rtc-offset@bc { + reg =3D <0xbc 0x4>; + }; +}; + +&pon_pwrkey { + status =3D "okay"; +}; + +&pon_resin { + linux,code =3D ; + + status =3D "okay"; +}; + +&qupv3_id_0 { + status =3D "okay"; +}; + +&qupv3_id_1 { + status =3D "okay"; +}; + +&remoteproc_cdsp { + firmware-name =3D "qcom/sm8550/ayntec/cdsp.mbn", + "qcom/sm8550/ayntec/cdsp_dtb.mbn"; + + status =3D "okay"; +}; + +&sdhc_2 { + cd-gpios =3D <&pm8550_gpios 12 GPIO_ACTIVE_LOW>; + pinctrl-0 =3D <&sdc2_default &sdc2_card_det_n>; + pinctrl-1 =3D <&sdc2_sleep &sdc2_card_det_n>; + pinctrl-names =3D "default", "sleep"; + vmmc-supply =3D <&vreg_l9b_2p9>; + vqmmc-supply =3D <&vreg_l8b_1p8>; + no-sdio; + no-mmc; + + status =3D "okay"; +}; + +&sleep_clk { + clock-frequency =3D <32764>; +}; + +&swr1 { + status =3D "okay"; + + wcd_rx: codec@0,4 { + compatible =3D "sdw20217010d00"; + reg =3D <0 4>; + qcom,rx-port-mapping =3D <1 2 3 4 5>; + }; +}; + +&swr2 { + status =3D "okay"; + + wcd_tx: codec@0,3 { + compatible =3D "sdw20217010d00"; + reg =3D <0 3>; + qcom,tx-port-mapping =3D <2 2 3 4>; + }; +}; + +&tlmm { + gpio-reserved-ranges =3D <32 8>; + + mcu_en_active: mcu-en-active-state { + pins =3D "gpio12"; + function =3D "gpio"; + bias-pull-down; + }; + + fan_int: fan-int-state { + pins =3D "gpio13"; + function =3D "gpio"; + drive-strength =3D <2>; + bias-disable; + }; + + ts_s_rst_default: ts-s-rst-default-state { + pins =3D "gpio14"; + function =3D "gpio"; + bias-pull-up; + drive-strength =3D <8>; + }; + + ts_s_rst_sleep: ts-s-rst-sleep-state { + pins =3D "gpio14"; + function =3D "gpio"; + bias-pull-down; + drive-strength =3D <2>; + }; + + ts_s_int_default: ts-s-int-default-state { + pins =3D "gpio15"; + function =3D "gpio"; + bias-pull-up; + drive-strength =3D <8>; + }; + + ts_s_int_sleep: ts-s-int-sleep-state { + pins =3D "gpio15"; + function =3D "gpio"; + bias-pull-down; + drive-strength =3D <2>; + }; + + ts_p_rst_default: ts-p-rst-default-state { + pins =3D "gpio24"; + function =3D "gpio"; + bias-pull-up; + drive-strength =3D <8>; + }; + + ts_p_rst_sleep: ts-p-rst-sleep-state { + pins =3D "gpio24"; + function =3D "gpio"; + bias-pull-down; + drive-strength =3D <2>; + }; + + ts_p_int_default: ts-p-int-default-state { + pins =3D "gpio25"; + function =3D "gpio"; + bias-pull-up; + drive-strength =3D <8>; + }; + + ts_p_int_sleep: ts-p-int-sleep-state { + pins =3D "gpio25"; + function =3D "gpio"; + bias-pull-down; + drive-strength =3D <2>; + }; + + wlan_en: wlan-en-state { + pins =3D "gpio80"; + function =3D "gpio"; + drive-strength =3D <8>; + bias-pull-down; + }; + + bt_default: bt-default-state { + bt-en-pins { + pins =3D "gpio81"; + function =3D "gpio"; + drive-strength =3D <16>; + bias-disable; + }; + + sw-ctrl-pins { + pins =3D "gpio82"; + function =3D "gpio"; + bias-pull-down; + }; + }; + + dsi_p_te_active: dsi-p-te-active-state { + pins =3D "gpio86"; + function =3D "mdp_vsync"; + drive-strength =3D <2>; + bias-pull-down; + }; + + dsi_p_te_suspend: dsi-s-te-suspend-state { + pins =3D "gpio86"; + function =3D "mdp_vsync"; + drive-strength =3D <2>; + bias-pull-down; + }; + + dsi_s_te_active: dsi-s-te-active-state { + pins =3D "gpio87"; + function =3D "mdp_vsync"; + drive-strength =3D <2>; + bias-pull-down; + }; + + dsi_s_te_suspend: dsi-s-te-suspend-state { + pins =3D "gpio87"; + function =3D "mdp_vsync"; + drive-strength =3D <2>; + bias-pull-down; + }; + + wcd_default: wcd-reset-n-active-state { + pins =3D "gpio108"; + function =3D "gpio"; + drive-strength =3D <16>; + bias-disable; + output-low; + }; + + fan_pwr_active: fan-pwr-active-state { + pins =3D "gpio109"; + function =3D "gpio"; + drive-strength =3D <2>; + bias-disable; + output-low; + }; + + dsi_p_rst_active: dsi-p-rst-active-state { + pins =3D "gpio133"; + function =3D "gpio"; + drive-strength =3D <8>; + bias-disable; + }; + + dsi_p_rst_suspend: dsi-p-rst-suspend-state { + pins =3D "gpio133"; + function =3D "gpio"; + drive-strength =3D <2>; + bias-pull-down; + }; + + dsi_s_rst_active: dsi-s-rst-active-state { + pins =3D "gpio137"; + function =3D "gpio"; + drive-strength =3D <8>; + bias-disable; + }; + + dsi_s_rst_suspend: dsi-s-rst-suspend-state { + pins =3D "gpio137"; + function =3D "gpio"; + drive-strength =3D <2>; + bias-pull-down; + }; + + usb0_sbu_default: usb0-sbu-state { + oe-n-pins { + pins =3D "gpio140"; + function =3D "gpio"; + bias-disable; + drive-strength =3D <16>; + output-high; + }; + + sel-pins { + pins =3D "gpio141"; + function =3D "gpio"; + bias-disable; + drive-strength =3D <16>; + }; + }; +}; + +&uart7 { + status =3D "okay"; +}; + +&uart14 { + status =3D "okay"; + + bluetooth { + compatible =3D "qcom,wcn7850-bt"; + + vddrfacmn-supply =3D <&vreg_pmu_rfa_cmn>; + vddaon-supply =3D <&vreg_pmu_aon_0p59>; + vddwlcx-supply =3D <&vreg_pmu_wlcx_0p8>; + vddwlmx-supply =3D <&vreg_pmu_wlmx_0p85>; + vddrfa0p8-supply =3D <&vreg_pmu_rfa_0p8>; + vddrfa1p2-supply =3D <&vreg_pmu_rfa_1p2>; + vddrfa1p8-supply =3D <&vreg_pmu_rfa_1p8>; + + max-speed =3D <3200000>; + }; +}; + +&ufs_mem_hc { + reset-gpios =3D <&tlmm 210 GPIO_ACTIVE_LOW>; + vcc-supply =3D <&vreg_l17b_2p5>; + vcc-max-microamp =3D <1300000>; + vccq-supply =3D <&vreg_l1g_1p2>; + vccq-max-microamp =3D <1200000>; + vdd-hba-supply =3D <&vreg_l3g_1p2>; + + status =3D "okay"; +}; + +&ufs_mem_phy { + vdda-phy-supply =3D <&vreg_l1d_0p88>; + vdda-pll-supply =3D <&vreg_l3e_1p2>; + + status =3D "okay"; +}; + +&usb_1 { + status =3D "okay"; +}; + +&usb_1_dwc3_hs { + remote-endpoint =3D <&pmic_glink_hs_in>; +}; + +&usb_1_hsphy { + phys =3D <&pm8550b_eusb2_repeater>; + + vdd-supply =3D <&vreg_l1e_0p88>; + vdda12-supply =3D <&vreg_l3e_1p2>; + + status =3D "okay"; +}; + +&usb_dp_qmpphy { + vdda-phy-supply =3D <&vreg_l3e_1p2>; + vdda-pll-supply =3D <&vreg_l3f_0p88>; + + status =3D "okay"; +}; + +&usb_dp_qmpphy_out { + remote-endpoint =3D <&pmic_glink_ss_in>; +}; + +&xo_board { + clock-frequency =3D <76800000>; +}; --=20 2.53.0 From nobody Fri Apr 3 17:33:21 2026 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (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 A21763BF662; Mon, 23 Mar 2026 16:27:48 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774283268; cv=none; b=I1/eGLVHqEZWoycjo/PO6gl5CNjmb4oQwyoNddCRP4ttkkSIf9StLxWcISOwD8y5aFH1+CPaI2y1QQArFL08s1C4Fk+JlHH8H9X5HcnJRPmSDEcVxQz0IJszY2o3OT2pKIEZ9xe2od5T/uS/UbuhbWk0qP1CEPhXBPlOD+ILYNI= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774283268; c=relaxed/simple; bh=q7i3GI3KVj7zUmUcqSgWeQz+kU9PI/xAiXg7REx9iSc=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=lOt6tBHyD9Oo4qxOzj7Skg3O0tUQB030wmGblD6SatsLUrkD+hq8UxzGRbfa+H0pquKGPbID/NBqdiYq9cOBkbs1v3y168ibPeAI9OMvmhms/+b/tMbqkEvVLIBCEok0nuGTrdU6iT+48EgTbbvrEZTqZbMy76QUaonA+x4O8uE= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=MsDRyRHM; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="MsDRyRHM" Received: by smtp.kernel.org (Postfix) with ESMTPS id 3A087C2BCC7; Mon, 23 Mar 2026 16:27:48 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1774283268; bh=q7i3GI3KVj7zUmUcqSgWeQz+kU9PI/xAiXg7REx9iSc=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=MsDRyRHM0ZT6sOaWnF5XqIlCurkW9DIekaB+30Lg1hzXsQ8eTz4Upz8sBZOuVUbVn bU3AVjwwVZtqtIFq+iHLRgidQC8e/e4HyQT9OAuzKPebX6fdZ+utnkniVu1J1qLyUn 4KAKPtZ/y8Sc5P54hc/Cz0PYL+6Z+RFh6hstOyVrTehvR0sOO/yTrnJCvj6JKtT9KJ qjLWNm1g+y8Y8i5f63iSegNEoDzCYg7BAimAe7VdiLW9MGODW4en6/FmPXhpJrrEPr Ucx354kq9YdkpkqphWjvg6iB7aerKF/nopZVtcYL5waU/6IqPkUHYIG2i31Wa7s/eA 14hapsqcCYvpQ== Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 3140AF483D2; Mon, 23 Mar 2026 16:27:48 +0000 (UTC) From: Aaron Kling via B4 Relay Date: Mon, 23 Mar 2026 11:27:46 -0500 Subject: [PATCH v4 4/6] arm64: dts: qcom: Add AYN Odin 2 Mini Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260323-ayn-qcs8550-v4-4-33a8ac3d53fa@gmail.com> References: <20260323-ayn-qcs8550-v4-0-33a8ac3d53fa@gmail.com> In-Reply-To: <20260323-ayn-qcs8550-v4-0-33a8ac3d53fa@gmail.com> To: Bjorn Andersson , Konrad Dybcio , Rob Herring , Krzysztof Kozlowski , Conor Dooley Cc: linux-arm-msm@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Aaron Kling , Teguh Sobirin X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1774283267; l=4407; i=webgeek1234@gmail.com; s=20250217; h=from:subject:message-id; bh=XsC5Q+8R9eEopRPQ2Kq+lZQ5XLef+PCaKxUhJNrsdSs=; b=MbpLHH/1fpjCjPRG3vDsAE3nF9wevwpf7MxtYcKyGjCQUcb7dJredGAP8Zvyjt13RggGVzA0F zPQApDjaFBBB/qlivXYrK9CCeR6Ft7//Rlx25r4xm0QPE7xyhy8vnxs X-Developer-Key: i=webgeek1234@gmail.com; a=ed25519; pk=TQwd6q26txw7bkK7B8qtI/kcAohZc7bHHGSD7domdrU= X-Endpoint-Received: by B4 Relay for webgeek1234@gmail.com/20250217 with auth_id=342 X-Original-From: Aaron Kling Reply-To: webgeek1234@gmail.com From: Teguh Sobirin The AYN Odin 2 Mini is a high-performance Android-based handheld gaming console powered by the Qualcomm Snapdragon 8 Gen 2 processor featuring a 5-inch mini-led touchscreen. Signed-off-by: Teguh Sobirin Co-developed-by: Aaron Kling Signed-off-by: Aaron Kling Reviewed-by: Konrad Dybcio --- arch/arm64/boot/dts/qcom/Makefile | 1 + .../boot/dts/qcom/qcs8550-ayntec-odin2mini.dts | 140 +++++++++++++++++= ++++ 2 files changed, 141 insertions(+) diff --git a/arch/arm64/boot/dts/qcom/Makefile b/arch/arm64/boot/dts/qcom/M= akefile index 2349cd200a61cebee9e8739422a226cd75ded3be..da534d839084ba60bc794b8f420= baf06bcbfc6d8 100644 --- a/arch/arm64/boot/dts/qcom/Makefile +++ b/arch/arm64/boot/dts/qcom/Makefile @@ -171,6 +171,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 qcs8550-ayntec-odin2mini.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/qcs8550-ayntec-odin2mini.dts b/arch/a= rm64/boot/dts/qcom/qcs8550-ayntec-odin2mini.dts new file mode 100644 index 0000000000000000000000000000000000000000..c2a1b85b66e314e277181f0036a= 0988060368243 --- /dev/null +++ b/arch/arm64/boot/dts/qcom/qcs8550-ayntec-odin2mini.dts @@ -0,0 +1,140 @@ +// SPDX-License-Identifier: BSD-3-Clause +/* + * Copyright (c) 2025, Teguh Sobirin. + */ + +/dts-v1/; + +#include +#include +#include "qcs8550-ayntec-common.dtsi" + +&{/} { + model =3D "AYN Odin 2 Mini"; + compatible =3D "ayntec,odin2mini", "qcom,qcs8550", "qcom,sm8550"; + + hdmi-out { + compatible =3D "hdmi-connector"; + type =3D "d"; + hpd-gpios =3D <&tlmm 9 GPIO_ACTIVE_HIGH>; + hdmi-pwr-supply =3D <&vdd_hdmi_1v8>; + + port { + hdmi_con: endpoint { + remote-endpoint =3D <<8912_out>; + }; + }; + }; + + vcc_hdmi_1v8: vcc-hdmi-1v8-regulator { + compatible =3D "regulator-fixed"; + regulator-name =3D "vcc_hdmi_1v8"; + + regulator-min-microvolt =3D <1800000>; + regulator-max-microvolt =3D <1800000>; + + gpio =3D <&tlmm 10 GPIO_ACTIVE_HIGH>; + enable-active-high; + }; + + vdd_disp_2v8: vdd-disp-2v8-regulator { + compatible =3D "regulator-fixed"; + regulator-name =3D "vdd_disp_2v8"; + + regulator-min-microvolt =3D <2800000>; + regulator-max-microvolt =3D <2800000>; + + gpio =3D <&tlmm 142 GPIO_ACTIVE_HIGH>; + enable-active-high; + }; + + vdd_hdmi_1v8: vdd-hdmi-1v8-regulator { + compatible =3D "regulator-fixed"; + regulator-name =3D "vdd_hdmi_1v8"; + + regulator-min-microvolt =3D <1800000>; + regulator-max-microvolt =3D <1800000>; + + gpio =3D <&tlmm 6 GPIO_ACTIVE_HIGH>; + enable-active-high; + }; +}; + +&i2c_hub_0 { + clock-frequency =3D <100000>; + + status =3D "okay"; + + #address-cells =3D <1>; + #size-cells =3D <0>; + + lt8912_codec: hdmi-bridge@48 { + compatible =3D "lontium,lt8912b"; + reg =3D <0x48> ; + + reset-gpios =3D <&tlmm 7 GPIO_ACTIVE_LOW>; + + vdd-supply =3D <&vdd_hdmi_1v8>; + vccmipirx-supply =3D <&vcc_hdmi_1v8>; + vccsysclk-supply =3D <&vcc_hdmi_1v8>; + vcclvdstx-supply =3D <&vcc_hdmi_1v8>; + vcchdmitx-supply =3D <&vcc_hdmi_1v8>; + vcclvdspll-supply =3D <&vcc_hdmi_1v8>; + vcchdmipll-supply =3D <&vcc_hdmi_1v8>; + + ports { + #address-cells =3D <1>; + #size-cells =3D <0>; + + port@0 { + reg =3D <0>; + + hdmi_out_in: endpoint { + data-lanes =3D <1 2 3 4>; + remote-endpoint =3D <&mdss_dsi0_out>; + }; + }; + + port@1 { + reg =3D <1>; + + lt8912_out: endpoint { + remote-endpoint =3D <&hdmi_con>; + }; + }; + }; + }; +}; + +&mdss_dsi0 { + vdda-supply =3D <&vreg_l3e_1p2>; + + status =3D "okay"; +}; + +&mdss_dsi0_out { + remote-endpoint =3D <&hdmi_out_in>; + data-lanes =3D <0 1 2 3>; +}; + +&mdss_dsi0_phy { + vdds-supply =3D <&vreg_l1e_0p88>; + + status =3D "okay"; +}; + +&remoteproc_adsp { + firmware-name =3D "qcom/sm8550/ayntec/odin2mini/adsp.mbn", + "qcom/sm8550/ayntec/odin2mini/adsp_dtb.mbn"; + + status =3D "okay"; +}; + +&spk_amp_l { + firmware-name =3D "qcom/sm8550/ayntec/odin2mini/aw883xx_acf.bin"; +}; + +&spk_amp_r { + firmware-name =3D "qcom/sm8550/ayntec/odin2mini/aw883xx_acf.bin"; +}; + --=20 2.53.0 From nobody Fri Apr 3 17:33:21 2026 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (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 E24DA3BF677; Mon, 23 Mar 2026 16:27:48 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774283269; cv=none; b=XtbRb1P69qFQzuA8YoUh+Qu1/5jnI5N5900LAfhHbhg4rROI9WPWNzuBxo9eU2ipBhcZQJihwlbpWksn0cDyoiXfvmbtordwUC34GXfjbPEz94Ph0Tt9kI5QINv5+B0KAcv9cZDYZrGDxZ89ual+bjRKN1SIU6RO201kEaZol/Q= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774283269; c=relaxed/simple; bh=aYoLJh09cL4RvjP6b/lmgRvFFyBy6BfjrUniTniFO1k=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=qcbjrazWDoSq2jdRB+NqIS455XRMMntXJf46Dz/HK9q1CV+0gwJi59aw6N9KzIXCWUcLU8AWMw6wbJcNdDwOaKxSGW1CcsYr63t82uyoL2FIG+GkFOWwrlbkDodtQ/d4BqgTA3FeU4yiH6Us0CmYnzOnpqWBYYK7AJFKldmNgkI= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=QZAjT6O0; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="QZAjT6O0" Received: by smtp.kernel.org (Postfix) with ESMTPS id 55768C4AF15; Mon, 23 Mar 2026 16:27:48 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1774283268; bh=aYoLJh09cL4RvjP6b/lmgRvFFyBy6BfjrUniTniFO1k=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=QZAjT6O0R6t5ig33cvF1V6dOyjODQz+aH8hI7aPNZvUhsejxxqAta4k+NIKIUBwx0 kM6loSaE/V1Fi+O62bsud3AgSi2UAAo1uGizyau9m+OVQRAxtvfFpNGRPKIIKW0/o5 K0GajAPsvOpOkFSIOgbYGX1kV/aTJ/5fsL4hRo2X7JxRS8LzeBcxLFHAH3p5XkgMkd o91ehBuObeVe508PZZpaIz+T3kpoGo4OVLHsvT7KG8S8rNZ2KYJh8WDRSxKWGaj9i+ 1yUGJOZf0bgnZvLenEBF/zv123cHVF4xxHwObc3MiC+yIXu2h1JtPSnzyagOEsTDq/ gU4JIclMVaA1A== Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 4B9CDF483D0; Mon, 23 Mar 2026 16:27:48 +0000 (UTC) From: Aaron Kling via B4 Relay Date: Mon, 23 Mar 2026 11:27:47 -0500 Subject: [PATCH v4 5/6] arm64: dts: qcom: Add AYN Odin 2 Portal Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260323-ayn-qcs8550-v4-5-33a8ac3d53fa@gmail.com> References: <20260323-ayn-qcs8550-v4-0-33a8ac3d53fa@gmail.com> In-Reply-To: <20260323-ayn-qcs8550-v4-0-33a8ac3d53fa@gmail.com> To: Bjorn Andersson , Konrad Dybcio , Rob Herring , Krzysztof Kozlowski , Conor Dooley Cc: linux-arm-msm@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Aaron Kling , Teguh Sobirin X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1774283267; l=3470; i=webgeek1234@gmail.com; s=20250217; h=from:subject:message-id; bh=ZfKW7/YbZ5ckdEGFxOTvbAnJnJuzjIknocRzI5hh6Ag=; b=kqQbllFW9SlGBPqcd1PpGgPcUansk0XJhyDdJt9+Rhm/PA8OECxzHURoHR1vWWkE2GQSJcsJB 6xL0sWCuNLUA9hZMZomyJhQYdJgOxG3OD0xee+xaBA1AiG6/39gxb5T X-Developer-Key: i=webgeek1234@gmail.com; a=ed25519; pk=TQwd6q26txw7bkK7B8qtI/kcAohZc7bHHGSD7domdrU= X-Endpoint-Received: by B4 Relay for webgeek1234@gmail.com/20250217 with auth_id=342 X-Original-From: Aaron Kling Reply-To: webgeek1234@gmail.com From: Teguh Sobirin The AYN Odin 2 Portal is a high-performance Android-based handheld gaming console powered by the Qualcomm Snapdragon 8 Gen 2 processor featuring a 7-inch OLED touchscreen. Signed-off-by: Teguh Sobirin Co-developed-by: Aaron Kling Signed-off-by: Aaron Kling Reviewed-by: Konrad Dybcio --- arch/arm64/boot/dts/qcom/Makefile | 1 + .../boot/dts/qcom/qcs8550-ayntec-odin2portal.dts | 84 ++++++++++++++++++= ++++ 2 files changed, 85 insertions(+) diff --git a/arch/arm64/boot/dts/qcom/Makefile b/arch/arm64/boot/dts/qcom/M= akefile index da534d839084ba60bc794b8f420baf06bcbfc6d8..5ed85a8843c5ac5cf943f9d0c40= ad6da7cba219c 100644 --- a/arch/arm64/boot/dts/qcom/Makefile +++ b/arch/arm64/boot/dts/qcom/Makefile @@ -172,6 +172,7 @@ qcs8300-ride-el2-dtbs :=3D qcs8300-ride.dtb monaco-el2.= dtbo dtb-$(CONFIG_ARCH_QCOM) +=3D qcs8300-ride-el2.dtb dtb-$(CONFIG_ARCH_QCOM) +=3D qcs8550-aim300-aiot.dtb dtb-$(CONFIG_ARCH_QCOM) +=3D qcs8550-ayntec-odin2mini.dtb +dtb-$(CONFIG_ARCH_QCOM) +=3D qcs8550-ayntec-odin2portal.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/qcs8550-ayntec-odin2portal.dts b/arch= /arm64/boot/dts/qcom/qcs8550-ayntec-odin2portal.dts new file mode 100644 index 0000000000000000000000000000000000000000..bd6ba0ab941d3325f76f53e7ed6= 5478c67b9d028 --- /dev/null +++ b/arch/arm64/boot/dts/qcom/qcs8550-ayntec-odin2portal.dts @@ -0,0 +1,84 @@ +// SPDX-License-Identifier: BSD-3-Clause +/* + * Copyright (c) 2025, Teguh Sobirin. + */ + +/dts-v1/; + +#include +#include +#include "qcs8550-ayntec-common.dtsi" + +&{/} { + model =3D "AYN Odin 2 Portal"; + compatible =3D "ayntec,odin2portal", "qcom,qcs8550", "qcom,sm8550"; + + vdd_bl_5v0: vdd-bl-5v0-regulator { + compatible =3D "regulator-fixed"; + regulator-name =3D "vdd_bl_5v0"; + + regulator-min-microvolt =3D <5000000>; + regulator-max-microvolt =3D <5000000>; + + gpio =3D <&tlmm 52 GPIO_ACTIVE_HIGH>; + enable-active-high; + }; + + vdd_disp_2v8: vdd-disp-2v8-regulator { + compatible =3D "regulator-fixed"; + regulator-name =3D "vdd_disp_2v8"; + + regulator-min-microvolt =3D <2800000>; + regulator-max-microvolt =3D <2800000>; + + gpio =3D <&tlmm 142 GPIO_ACTIVE_HIGH>; + enable-active-high; + }; +}; + +&i2c4 { + clock-frequency =3D <400000>; + + status =3D "okay"; + + #address-cells =3D <1>; + #size-cells =3D <0>; + + touchscreen@38 { + compatible =3D "focaltech,ft5426"; + reg =3D <0x38>; + + interrupt-parent =3D <&tlmm>; + interrupts =3D <25 IRQ_TYPE_EDGE_FALLING>; + + reset-gpios =3D <&tlmm 24 GPIO_ACTIVE_LOW>; + + vcc-supply =3D <&vreg_l14b_3p2>; + iovcc-supply =3D <&vreg_l12b_1p8>; + + pinctrl-0 =3D <&ts_p_rst_default &ts_p_int_default>; + pinctrl-1 =3D <&ts_p_rst_sleep &ts_p_int_sleep>; + pinctrl-names =3D "default", "sleep"; + + touchscreen-size-x =3D <1080>; + touchscreen-size-y =3D <1920>; + touchscreen-swapped-x-y; + touchscreen-inverted-y; + }; +}; + +&remoteproc_adsp { + firmware-name =3D "qcom/sm8550/ayntec/odin2portal/adsp.mbn", + "qcom/sm8550/ayntec/odin2portal/adsp_dtb.mbn"; + + status =3D "okay"; +}; + +&spk_amp_l { + firmware-name =3D "qcom/sm8550/ayntec/odin2portal/aw883xx_acf.bin"; +}; + +&spk_amp_r { + firmware-name =3D "qcom/sm8550/ayntec/odin2portal/aw883xx_acf.bin"; +}; + --=20 2.53.0 From nobody Fri Apr 3 17:33:21 2026 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (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 E237F3BF676; Mon, 23 Mar 2026 16:27:48 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774283269; cv=none; b=PtqABDgeCewSsDGVyjI1yyswiYRb34K3cYNRPLaNI0AhRtPChzRlsv1WlcuurqgyI9zJKHbtYB5QuP+SFHcFt60+0jAzjJzO5P2VkfEea3K7F5GIbrB9pNB/YLeDimPw7OyoDvx3eUMOzc/fb2Z8vYjmRktZg/G0Wgq0pBPuoOs= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774283269; c=relaxed/simple; bh=g3MPYHVlkZCQvA9Zy+YSuQyqvzPyY8uwuh4XNrwuaJA=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=Q8OhlyJozMJMIefEE6YOuRXs48N+eUCc0qG9W7MLanxeSKkZe0mVmyv7D5AJintwtc6lsbfPmY2yGUyoPHZzjfv7sbaZDAWuKUXSyIzVasrrnsbLvDdow0zOkmM9OuaotEIlY/jnlppddh33Hdn/Yj0N2xZAv2IUOBkcE7CysNc= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=hB8Swm9v; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="hB8Swm9v" Received: by smtp.kernel.org (Postfix) with ESMTPS id 7458AC2BCF7; Mon, 23 Mar 2026 16:27:48 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1774283268; bh=g3MPYHVlkZCQvA9Zy+YSuQyqvzPyY8uwuh4XNrwuaJA=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=hB8Swm9vCd6XJ9u4gtSSRuNAh2MbGN6T6ufD46Q9KVGBbN1gQyQeqhZL3fgs9PqVf YCkc0ikvr+UjB/uktjzaXSsHx7ro8nDfzTRECOhhf3WD4x3YKv/XNprJZ5brbTLgGf 1uydfPzPtzZ+Llv8zOzK6FofxVXQlY0646xrT8tm+w8tDTA/N/IJsxyPYSdzir4ywt 6YX0j1BdbIkFLTN25ZtTqTGJy2svHdcbKz1tgOYMoSL1KjTFS1w46yp8yaaM0Oo6Xm ADNCzkQa6E5DDKPRhJkbiyBZg7OCU/A5X8k7Yn5Cfua7nb9sdVicirvz/CSdqChbq/ UmPJRGoObNeSw== Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 6A335F483D3; Mon, 23 Mar 2026 16:27:48 +0000 (UTC) From: Aaron Kling via B4 Relay Date: Mon, 23 Mar 2026 11:27:48 -0500 Subject: [PATCH v4 6/6] arm64: dts: qcom: Add AYN Thor Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260323-ayn-qcs8550-v4-6-33a8ac3d53fa@gmail.com> References: <20260323-ayn-qcs8550-v4-0-33a8ac3d53fa@gmail.com> In-Reply-To: <20260323-ayn-qcs8550-v4-0-33a8ac3d53fa@gmail.com> To: Bjorn Andersson , Konrad Dybcio , Rob Herring , Krzysztof Kozlowski , Conor Dooley Cc: linux-arm-msm@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Aaron Kling , Teguh Sobirin X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1774283267; l=6394; i=webgeek1234@gmail.com; s=20250217; h=from:subject:message-id; bh=BmPmblPxKaeXayk3gSNq8WjjO11aBPKzpiiIwmerg1Y=; b=Nxjgm1EtXE3dkujkuOMHNgT/gwSRThAQE+YyJ69kXrDA2mndgHdF8uD1Feud8wCfCcezuRdPp 2Gj4kg+QSdqDqOrAsVyg7gSMXbe4vikLtu61il6MC7yfdpApg0b2/td X-Developer-Key: i=webgeek1234@gmail.com; a=ed25519; pk=TQwd6q26txw7bkK7B8qtI/kcAohZc7bHHGSD7domdrU= X-Endpoint-Received: by B4 Relay for webgeek1234@gmail.com/20250217 with auth_id=342 X-Original-From: Aaron Kling Reply-To: webgeek1234@gmail.com From: Teguh Sobirin The AYN Thor is a high-performance Android-based handheld gaming console powered by the Qualcomm Snapdragon 8 Gen 2 processor featuring dual AMOLED touchscreens. Signed-off-by: Teguh Sobirin Co-developed-by: Aaron Kling Signed-off-by: Aaron Kling --- arch/arm64/boot/dts/qcom/Makefile | 1 + arch/arm64/boot/dts/qcom/qcs8550-ayntec-thor.dts | 230 +++++++++++++++++++= ++++ 2 files changed, 231 insertions(+) diff --git a/arch/arm64/boot/dts/qcom/Makefile b/arch/arm64/boot/dts/qcom/M= akefile index 5ed85a8843c5ac5cf943f9d0c40ad6da7cba219c..5a35c99ac44a69117cba45f06b8= 5097d53e175b9 100644 --- a/arch/arm64/boot/dts/qcom/Makefile +++ b/arch/arm64/boot/dts/qcom/Makefile @@ -173,6 +173,7 @@ dtb-$(CONFIG_ARCH_QCOM) +=3D qcs8300-ride-el2.dtb dtb-$(CONFIG_ARCH_QCOM) +=3D qcs8550-aim300-aiot.dtb dtb-$(CONFIG_ARCH_QCOM) +=3D qcs8550-ayntec-odin2mini.dtb dtb-$(CONFIG_ARCH_QCOM) +=3D qcs8550-ayntec-odin2portal.dtb +dtb-$(CONFIG_ARCH_QCOM) +=3D qcs8550-ayntec-thor.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/qcs8550-ayntec-thor.dts b/arch/arm64/= boot/dts/qcom/qcs8550-ayntec-thor.dts new file mode 100644 index 0000000000000000000000000000000000000000..00f4032628df2e8d8729a1e93f5= cf6dda9420a6d --- /dev/null +++ b/arch/arm64/boot/dts/qcom/qcs8550-ayntec-thor.dts @@ -0,0 +1,230 @@ +// SPDX-License-Identifier: BSD-3-Clause +/* + * Copyright (c) 2025, Teguh Sobirin. + */ + +/dts-v1/; + +#include +#include +#include +#include "qcs8550-ayntec-common.dtsi" + +&{/} { + model =3D "AYN Thor"; + compatible =3D "ayntec,thor", "qcom,qcs8550", "qcom,sm8550"; + + gpio-keys { + compatible =3D "gpio-keys"; + + pinctrl-0 =3D <&volume_up_n &key_ayn_n>; + + key-ayn { + label =3D "AYN Key"; + debounce-interval =3D <15>; + gpios =3D <&tlmm 41 GPIO_ACTIVE_LOW>; + linux,code =3D ; + linux,can-disable; + }; + + switch-lid { + label =3D "Hall Lid Sensor"; + gpios =3D <&tlmm 17 GPIO_ACTIVE_LOW>; + linux,input-type =3D ; + linux,code =3D ; + linux,can-disable; + wakeup-source; + }; + }; + + vdd_bl_5v0: vdd-bl-5v0-regulator { + compatible =3D "regulator-fixed"; + regulator-name =3D "vdd_bl_5v0"; + + regulator-min-microvolt =3D <5000000>; + regulator-max-microvolt =3D <5000000>; + + gpio =3D <&tlmm 52 GPIO_ACTIVE_HIGH>; + enable-active-high; + }; + + vdd_disp_1v8: vdd-disp-1v8-regulator { + compatible =3D "regulator-fixed"; + regulator-name =3D "vdd_disp_1v8"; + + regulator-min-microvolt =3D <1800000>; + regulator-max-microvolt =3D <1800000>; + + gpio =3D <&tlmm 70 GPIO_ACTIVE_HIGH>; + enable-active-high; + }; + + vdd_disp1_2v8: vdd-disp1-2v8-regulator { + compatible =3D "regulator-fixed"; + regulator-name =3D "vdd_disp1_2v8"; + + regulator-min-microvolt =3D <2800000>; + regulator-max-microvolt =3D <2800000>; + + gpio =3D <&tlmm 142 GPIO_ACTIVE_HIGH>; + enable-active-high; + }; + + vdd_disp2_2v8: vdd-disp2-2v8-regulator { + compatible =3D "regulator-fixed"; + regulator-name =3D "vdd_disp2_2v8"; + + regulator-min-microvolt =3D <2800000>; + regulator-max-microvolt =3D <2800000>; + + gpio =3D <&tlmm 143 GPIO_ACTIVE_HIGH>; + enable-active-high; + }; + + vdd_ts_3v0: vdd-ts-3v0-regulator { + compatible =3D "regulator-fixed"; + regulator-name =3D "vdd_ts_3v0"; + + regulator-min-microvolt =3D <3000000>; + regulator-max-microvolt =3D <3000000>; + + gpio =3D <&tlmm 144 GPIO_ACTIVE_HIGH>; + enable-active-high; + }; + + vdd_ts_1v8: vdd-ts-1v8-regulator { + compatible =3D "regulator-fixed"; + regulator-name =3D "vdd_ts_1v8"; + + regulator-min-microvolt =3D <1800000>; + regulator-max-microvolt =3D <1800000>; + + gpio =3D <&tlmm 102 GPIO_ACTIVE_HIGH>; + enable-active-high; + }; +}; + +&i2c4 { + clock-frequency =3D <400000>; + + status =3D "okay"; + + #address-cells =3D <1>; + #size-cells =3D <0>; + + touchscreen@38 { + compatible =3D "focaltech,ft5426"; + reg =3D <0x38>; + + interrupt-parent =3D <&tlmm>; + interrupts =3D <25 IRQ_TYPE_EDGE_FALLING>; + + reset-gpios =3D <&tlmm 24 GPIO_ACTIVE_LOW>; + + vcc-supply =3D <&vreg_l14b_3p2>; + iovcc-supply =3D <&vreg_l12b_1p8>; + + pinctrl-0 =3D <&ts_p_rst_default &ts_p_int_default>; + pinctrl-1 =3D <&ts_p_rst_sleep &ts_p_int_sleep>; + pinctrl-names =3D "default", "sleep"; + + touchscreen-size-x =3D <1080>; + touchscreen-size-y =3D <1920>; + touchscreen-swapped-x-y; + touchscreen-inverted-x; + }; +}; + +&i2c_hub_3 { + clock-frequency =3D <100000>; + + status =3D "okay"; + + #address-cells =3D <1>; + #size-cells =3D <0>; + + touchscreen@38 { + compatible =3D "focaltech,ft5452"; + reg =3D <0x38>; + + interrupt-parent =3D <&tlmm>; + interrupts =3D <15 IRQ_TYPE_EDGE_FALLING>; + + reset-gpios =3D <&tlmm 14 GPIO_ACTIVE_LOW>; + + vcc-supply =3D <&vdd_ts_3v0>; + iovcc-supply =3D <&vdd_ts_1v8>; + + pinctrl-0 =3D <&ts_s_rst_default &ts_s_int_default>; + pinctrl-1 =3D <&ts_s_rst_sleep &ts_s_int_sleep>; + pinctrl-names =3D "default", "sleep"; + + touchscreen-size-x =3D <1080>; + touchscreen-size-y =3D <1240>; + touchscreen-swapped-x-y; + touchscreen-inverted-x; + }; +}; + +&mdss_dsi0 { + vdda-supply =3D <&vreg_l3e_1p2>; + + status =3D "okay"; + + #address-cells =3D <1>; + #size-cells =3D <0>; + + panel@0 { + reg =3D <0>; + + port { + panel0_in: endpoint { + remote-endpoint =3D <&mdss_dsi0_out>; + }; + }; + }; +}; + +&mdss_dsi0_out { + remote-endpoint =3D <&panel0_in>; + data-lanes =3D <0 1 2 3>; +}; + +&mdss_dsi0_phy { + vdds-supply =3D <&vreg_l1e_0p88>; + status =3D "okay"; +}; + +&mdss_dsi1_out { + qcom,te-source =3D "mdp_vsync_s"; +}; + +&pm8550_pwm { + multi-led { + status =3D "disabled"; + }; +}; + +&remoteproc_adsp { + firmware-name =3D "qcom/sm8550/ayntec/thor/adsp.mbn", + "qcom/sm8550/ayntec/thor/adsp_dtb.mbn"; + + status =3D "okay"; +}; + +&spk_amp_l { + firmware-name =3D "qcom/sm8550/ayntec/thor/aw883xx_acf.bin"; +}; + +&spk_amp_r { + firmware-name =3D "qcom/sm8550/ayntec/thor/aw883xx_acf.bin"; +}; + +&tlmm { + key_ayn_n: key-ayn-n-state { + pins =3D "gpio41"; + function =3D "gpio"; + bias-pull-up; + output-disable; + }; +}; --=20 2.53.0