From patchwork Wed Sep 2 19:42:15 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: David Lechner X-Patchwork-Id: 2296990 X-Patchwork-Delegate: dlechner@baylibre.com Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=lists.u-boot-project.org header.i=@lists.u-boot-project.org header.a=rsa-sha256 header.s=default header.b=QVNaJHD6; dkim=pass (2048-bit key; secure) header.d=baylibre.com header.i=@baylibre.com header.a=rsa-sha256 header.s=google header.b=KtOShDj9; dkim-atps=neutral Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=lists.u-boot-project.org (client-ip=140.211.166.136; helo=smtp3.osuosl.org; envelope-from=u-boot-bounces@lists.u-boot-project.org; receiver=patchwork.ozlabs.org) Received: from smtp3.osuosl.org (smtp3.osuosl.org [140.211.166.136]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange x25519 server-signature ECDSA (secp384r1) server-digest SHA384) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4hZtSD07fhz1xwg for ; Thu, 03 Sep 2026 05:43:08 +1000 (AEST) Received: from localhost (localhost [127.0.0.1]) by smtp3.osuosl.org (Postfix) with ESMTP id 3BB5B60642; Wed, 2 Sep 2026 19:43:06 +0000 (UTC) X-Virus-Scanned: amavis at osuosl.org Received: from smtp3.osuosl.org ([127.0.0.1]) by localhost (smtp3.osuosl.org [127.0.0.1]) (amavis, port 10024) with ESMTP id azxbS4do0U3a; Wed, 2 Sep 2026 19:43:03 +0000 (UTC) ARC-Filter: OpenARC Filter v1.3.0 smtp3.osuosl.org 813A4607FF Authentication-Results: smtp3.osuosl.org; arc=pass header.oldest-pass=0 smtp.remote-ip=140.211.166.142 ARC-Seal: i=2; d=osuosl.org; s=arc; a=rsa-sha256; cv=pass; t=1788378183; b=S+sSmgk9q2gxm1s5A5g8qolubduDLRXYfnGdERuCAeo11nmyejzbb0VhPFUw9MGVhcpK JOaDDyGigSJn2D4CujCJYh5U6HcY4oMQfyPlxOK0/k6Q1i2JBIZi4ACMKSljL+jyPIzGp HrygMcmjPBqu65vhWiojAlixopYBP0qDLT5pZxSUCS5h4SEG3tpQLh9w59aK+nBEsavuy d2MJ20Vbc27OvcF2Gb14rTOEUl2MWmrw7nzfEsBwd5VMev+uksUZa+dqGEanrVZcP00Fs bDY5+K+GiypxckUrFNCVT1vEJZIPESk+WLMEXlAZ1yYw3SOvjvaikMQRf80EhYk5Sqg== ARC-Message-Signature: i=2; d=osuosl.org; s=arc; a=rsa-sha256; c=relaxed/relaxed; t=1788378183; h=X-Comment:DKIM-Signature:X-Original-To:Delivered-To:Received: Received:X-Virus-Scanned:X-Spam-Flag:X-Spam-Score:X-Spam-Level: X-Spam-Status:Received:ARC-Filter:Received-SPF:Received:Received: DKIM-Signature:X-Google-DKIM-Signature:X-Gm-Message-State:X-Gm-Gg: X-Received:Received:From:Date:Subject:MIME-Version:Content-Type: Content-Transfer-Encoding:Message-Id:References:In-Reply-To:To:Cc: X-Mailer:X-Developer-Signature:X-Developer-Key:X-BeenThere: X-Mailman-Version:Precedence:List-Id:List-Unsubscribe:List-Archive: List-Post:List-Help:List-Subscribe:Errors-To; bh=CQi48d7XhYGz429aGLbEFU5Dq+oyKp6Nrs6cI0u61v0=; b=SWru27JHJEnST0QJs2uYslfw3rSHE41w4iFZmQio/CMrTSW84Ar1zxyxweyTgY9axW0e LdSCoosVWkn5OYZXRKdBqCtpDJnJFdJRqZ6Aqys2x0P5DDnyMsPHSTx5CekzAZSeXinqJ EQ7ERZWTDqIk+GS1/89eOP6r99b6FhO77+wPFRcCjM67QW7+2s72kKeF9+zTLfCtHevVo Z2gb+YaalBLBP/lqDtl00iQ4mL3ybJAHvpl0vdac4hh9iVVjj/6lGMV6UM69M8TVcB0/g 7r0CIOVgAGherc4pH8+07kT48b8oX9QdJzJbizr4aCX6cIiOReR+A+yU7ATpolopnGA== ARC-Authentication-Results: i=2; smtp3.osuosl.org; arc=pass header.oldest-pass=0 smtp.remote-ip=140.211.166.142 X-Comment: SPF check N/A for local connections - client-ip=140.211.166.142; helo=lists1.osuosl.org; envelope-from=u-boot-bounces@lists.u-boot-project.org; receiver= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=lists.u-boot-project.org; s=default; t=1788378183; bh=CQi48d7XhYGz429aGLbEFU5Dq+oyKp6Nrs6cI0u61v0=; h=From:Date:Subject:References:In-Reply-To:To:Cc:List-Id: List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe: From; b=QVNaJHD6SIC7jCLkEgC8MnNzZLO6R8o3G+ejWjoSu6z2p3grl4T1t9wYdYlupetJl 03UFXRILs9RbelX58rjUgdiF/rRHON1RxOLbu54pL5LOEdRh4MrwZwqIYalj3p+UFD ygWJTyOcSedXLP9nirQffpYKYLudyaDtZ8jstl2fpwzhLAxhrPP0pGhtiEKZJpebpa 7OBCvbrV6lh2+BhrphPnrt3MqoP4ZIE+Nhy5XsfD9VHue0Q0ShHNAPhb+Oy88N7V4Y 1KSobigoPkvraEK7/5i0it/ldV1arICam/5FqeyMOCe4i2zuJuloYjLmz1+5m1ZkXl MJdULRJiU8IIw== Received: from lists1.osuosl.org (lists1.osuosl.org [140.211.166.142]) by smtp3.osuosl.org (Postfix) with ESMTP id 813A4607FF; Wed, 2 Sep 2026 19:43:03 +0000 (UTC) X-Original-To: u-boot@lists.u-boot-project.org Delivered-To: u-boot@lists.u-boot-project.org Received: from smtp2.osuosl.org (smtp2.osuosl.org [140.211.166.133]) by lists1.osuosl.org (Postfix) with ESMTP id E6F042B2 for ; Wed, 2 Sep 2026 19:43:01 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by smtp2.osuosl.org (Postfix) with ESMTP id CD93840158 for ; Wed, 2 Sep 2026 19:43:01 +0000 (UTC) X-Virus-Scanned: amavis at osuosl.org Received: from smtp2.osuosl.org ([127.0.0.1]) by localhost (smtp2.osuosl.org [127.0.0.1]) (amavis, port 10024) with ESMTP id qJC8WCJf4zRI for ; Wed, 2 Sep 2026 19:42:59 +0000 (UTC) ARC-Filter: OpenARC Filter v1.3.0 smtp2.osuosl.org 45E6C40099 Authentication-Results: smtp2.osuosl.org; arc=none smtp.remote-ip="2001:4860:4864:20::2c" ARC-Seal: i=1; d=osuosl.org; s=arc; a=rsa-sha256; cv=none; t=1788378179; b=azNh1RUtrTPScD3ba1UXIKMpOpELBtmh7blxJEkjFsGCt4YB6oMqMdCuIlSZPm7BSAhC Lm9bcO+Olu24f+ivQAJPp7pJT64a81HHmsTGT4qBL1YqP4A8KeDNOlgdc5cI41X6JQ238 Hi6ctdQXdfgO4axfWfVDiB4BTmT1WdoMvczFkxlibc3hwh6THcwSArfPVcdba4sZ5P6vI YKXagxngzkc9xC8Ydoi5+pwhXYOhIlEvwzdKMbmofi2A2oglPSQqEhZ9sk5u8tnwuD2Q+ 5Um1YIHQ22zPWnm9bAKDIcFHiEA+UFbI86fvObZctQ5mq8O2oV/Xy6FJDw/FxgGDKZw== ARC-Message-Signature: i=1; d=osuosl.org; s=arc; a=rsa-sha256; c=relaxed/relaxed; t=1788378179; h=Received-SPF:Received:DKIM-Signature:X-Google-DKIM-Signature: X-Gm-Message-State:X-Gm-Gg:X-Received:Received:From:Date:Subject: MIME-Version:Content-Type:Content-Transfer-Encoding:Message-Id: References:In-Reply-To:To:Cc:X-Mailer:X-Developer-Signature: X-Developer-Key; bh=CQi48d7XhYGz429aGLbEFU5Dq+oyKp6Nrs6cI0u61v0=; b=l/zFmdk2bDjF5w9h7LaOZ0Jg2Azu5uj803uPaP1+KS8CC3VljPZXTKF885Du5mP3xglH NdYzfw2ajU1CQmCFJTwt9lsiCVK8YPzCPW3JZBqALWrlZ6tzbB9/D50NpL5sVTgkn4hDe j+42t9KQ5UdfSONDZ2R7ZjZXyRI3FGXO1nuMI9pSbpiCApbEHIJB9XnIBPyxIjM96op3m Tsw5u2UCjdlC5lPYqAA+NkxkIU3bzof7MhKkd3pfOXZJOh+aJ+SDhGQNt1usOdKa1Jf6g ghaPhrSNUP1vGiBfFbH5fQTX0RuMNDICgw6mMgFLinsKnen0SOkhBVbfIZKI/ZUcNuw== ARC-Authentication-Results: i=1; smtp2.osuosl.org; dmarc=none header.from=baylibre.com; dkim=pass header.d=baylibre.com header.i=@baylibre.com header.a=rsa-sha256 header.s=google header.b=KtOShDj9; arc=none smtp.remote-ip="2001:4860:4864:20::2c" Received-SPF: Pass (mailfrom) identity=mailfrom; client-ip=2001:4860:4864:20::2c; helo=mail-oa1-x2c.google.com; envelope-from=dlechner@baylibre.com; receiver= Authentication-Results: smtp2.osuosl.org; dmarc=none (p=none dis=none) header.from=baylibre.com Authentication-Results: smtp2.osuosl.org; dkim=pass (2048-bit key) header.d=baylibre.com header.i=@baylibre.com header.a=rsa-sha256 header.s=google header.b=KtOShDj9 Received: from mail-oa1-x2c.google.com (mail-oa1-x2c.google.com [IPv6:2001:4860:4864:20::2c]) by smtp2.osuosl.org (Postfix) with ESMTPS id 45E6C40099 for ; Wed, 2 Sep 2026 19:42:58 +0000 (UTC) Received: by mail-oa1-x2c.google.com with SMTP id 586e51a60fabf-465cfc7e33dso985670fac.1 for ; Wed, 02 Sep 2026 12:42:58 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=baylibre.com; s=google; t=1788378177; x=1788982977; darn=lists.u-boot-project.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :content-type:mime-version:subject:date:from:from:to:cc:subject:date :message-id:reply-to:content-type; bh=CQi48d7XhYGz429aGLbEFU5Dq+oyKp6Nrs6cI0u61v0=; b=KtOShDj9XJyu2RREfIp6oVx8TBDvBlcq2vqaoJaBgF4oo+yK7DwMZiBd0VA3svpGLx ao94GPf0jtjKIlk0vrydK+tax/J+gT7+l/fbpF34h1c7XrtLdvNOtQTrXOpaX/snp6zZ mAX0YhS70H+iuT9Mu690Gp3bxjXdIBrwxyWdrnwzYn8PuEfldUc/K52Ris5iKjpJI6aS 6+z25nc2Yv+PlIcf6/HMJTEh+hVty3RGkkP6OPRMmosHyqlom3A51JVeEeUvqOsKlfK/ 4gs/QKzZG+iTOKAB/0QN8qY8zVzOdLQzBr9bWezcOnCxqMMeYmdQgvtuaiy/s+SVLJpE qfww== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1788378177; x=1788982977; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :content-type:mime-version:subject:date:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=CQi48d7XhYGz429aGLbEFU5Dq+oyKp6Nrs6cI0u61v0=; b=IKaybKUOJny4Jq7J0TN4phPPlD6hcfkK1r8JxkdAvPIrvTALClE40znme3aJ56HnrR IZN2mW54TdKHRK7jilCzLMm0l0xx1+1l4CH+9l+JXDjoWL13fIYFZfBLlycOqw0JPHmK MrWD534HL8Aass5UzwEE7rV6oo2oWspfBJBgTAilp44BwXBb1muJdHgrMyrIq+canmvz iIjVSUpt/jorOB39SwN9sbCcUwICYTcdvntmGYlmzzXqhNuMJqpvk14TP4M9vtgGaBlx OjAsGhFZihxuwBRugqyI4GbvtJywy3Cq82EeXeZWcFyv+9r5CU44J6OHIU6lcFR3mgxb 9nWg== X-Gm-Message-State: AFuF++lY5SLKk5vz/fTAWFu6Xc+d8+O/iZ9IRXjpXwk3hsvaA+ukvqs2 2d+DyBi9It06b7VGaNpxZNFvguwCN834zvYMRADELO6fXEdeKUyRp8r/lobWBBfPUc4= X-Gm-Gg: AR+sD13CRPfZom+78OZMk3L5tGsiDnygLYdly+lXHkz5QqyblzCJlsdpRopaIqqp0FE Pg4+n5+ppJQc2dWjA7RX9SrjTIvwHLKCTtlaCi7Qj8/DvjgbOriy4/bE3whU+DQfCmcuKyGvj7e JJ90J0F0n+TvmOM9FRPvDgHHQCMFNUIskjkRMLKwmOTewhjz5RC5PylcXJIH9lrcz3KT5l9v00v OvLWmDT34eHiEdaxKdhjd0K4MXUk0OD2pAMDMLQmhhGjMV1mTzI4RcVaebY8DeiGl3d1bavEryw FEkk/ZcoR5Kujne8oUwGR8jFGwdCwfoOGA+70v6EmE7jYbvLxZZTWKP2mfufsx73QEAaEjkrRaf lw5ptKe8/46rrHZRDY13kXkG39y2NYNOi+N1PrcHDeMMft/rZWo1fsn+xOU0nn9QZGnSYb9YhWz R/NLvI7hT927G9r0S2hVHF/ieiEaH+TbKeEHFpg7o9wjWfID1qQ14kXeHiXNKdeUpFvw== X-Received: by 2002:a05:6870:912b:b0:451:fec6:83a6 with SMTP id 586e51a60fabf-46f85dfdfd1mr6537490fac.3.1788378177217; Wed, 02 Sep 2026 12:42:57 -0700 (PDT) Received: from [127.0.1.1] ([2600:8803:e7e4:500:518a:9db8:615b:293f]) by smtp.gmail.com with ESMTPSA id 586e51a60fabf-46f336c72fdsm4241804fac.17.2026.09.02.12.42.55 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 02 Sep 2026 12:42:56 -0700 (PDT) From: David Lechner Date: Wed, 02 Sep 2026 14:42:15 -0500 Subject: [PATCH v4 1/4] arm: dts: add MT8366 application processor MIME-Version: 1.0 Message-Id: <20260902-mtk-genio-360-bringup-v4-1-2d38f522c72b@baylibre.com> References: <20260902-mtk-genio-360-bringup-v4-0-2d38f522c72b@baylibre.com> In-Reply-To: <20260902-mtk-genio-360-bringup-v4-0-2d38f522c72b@baylibre.com> To: Tom Rini , Ryder Lee , Weijie Gao , Chunfeng Yun , Igor Belwon , Julien Stephan , GSS_MTK_Uboot_upstream , Macpaul Lin , Ilias Apalodimas Cc: u-boot@lists.u-boot-project.org, David Lechner X-Mailer: b4 0.17-dev X-Developer-Signature: v=1; a=openpgp-sha256; l=76996; i=dlechner@baylibre.com; h=from:subject:message-id; bh=mF5JkKggwGs9+r8Pxf1h8UlpI7C9VScoLMQbOhLmjO4=; b=owEBhAF7/pANAwAKAcLMIAH/AY/AAcsmYgBqmHwfQQZLC0M22BjJbIEl4IqCSeNxVMWLDVq/b si4DUqjrCmJAUoEAAEKADQWIQTsGNmeYg6D1pzYaJjCzCAB/wGPwAUCaph8HxYcZGxlY2huZXJA YmF5bGlicmUuY29tAAoJEMLMIAH/AY/AVVsH/1X9CJeAl8rHCV4om/Xk7yMGgM0XTV7LdekSZ43 EkIUirYSisE7axrlI4jia/GNw/2KXzwq1IG/IE8NPQjJYNkBJBCsIilkuE+gVfWMG1maBPLxQiI 4qT7wv8lB9XjiRaUlerlbBiWje46ViOXCuWkRlKCk2WC/8yRZyopM8v5XQog+LaMXFmGWFdHqvQ wLbwzXwUvwOEjcbydzQUH2kOsBIY/eiEuV3DW2Lk8CCr9r+0jUPixCvwzVk2KerIpKKP434Hw5+ bqFa8x07IGW72KMy0R/d0crKoNdIcyzAvsL03EqWQnnNk0LZxloN5IYUvpswodb85oZpQgeIORz vG8w= X-Developer-Key: i=dlechner@baylibre.com; a=openpgp; fpr=8A73D82A6A1F509907F373881F8AF88C82F77C03 X-BeenThere: u-boot@lists.u-boot-project.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: u-boot-bounces@lists.u-boot-project.org From: Macpaul Lin Add MT8366 application processor .dtsi file for systems based on this chip. Upstreaming of MT8366 has not even started yet, so we will have to carry a downstream version of this for some time. As a consequence, a number of the compatible strings used here (mediatek,mt8366-dsi, -disp-ovl, -disp-mutex, -smi-larb, -smi-common, -iommu-mm, -gce, -gmac, -pinctrl) do not have a binding yet. They follow the naming pattern of the existing MediaTek bindings so that the eventual upstream bindings should match. Signed-off-by: Macpaul Lin Signed-off-by: David Lechner --- arch/arm/dts/mt8366.dtsi | 787 +++++++++++++++++++ include/dt-bindings/gce/mt8366-gce.h | 858 +++++++++++++++++++++ .../memory/mediatek,mt8366-memory-port.h | 263 +++++++ 3 files changed, 1908 insertions(+) diff --git a/arch/arm/dts/mt8366.dtsi b/arch/arm/dts/mt8366.dtsi new file mode 100644 index 00000000000..c1b3fe6a335 --- /dev/null +++ b/arch/arm/dts/mt8366.dtsi @@ -0,0 +1,787 @@ +// SPDX-License-Identifier: (GPL-2.0-only OR MIT) +/* + * Copyright (C) 2026 MediaTek Inc. + * Author: Macpaul Lin + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include + +/ { + compatible = "mediatek,mt8366"; + interrupt-parent = <&gic>; + #address-cells = <2>; + #size-cells = <2>; + + aliases { + serial0 = &uart0; + dsi0 = &dsi0; + mutex0 = &mutex0; + ovl0 = &disp_ovl0_4l; + ovl1 = &disp_ovl1_4l; + rdma0 = &disp_rdma0; + rdma1 = &disp_rdma1; + larb0 = &smi_larb0; + larb1 = &smi_larb1; + }; + + clk26m: oscillator { + compatible = "fixed-clock"; + #clock-cells = <0>; + clock-frequency = <26000000>; + clock-output-names = "clk26m"; + }; + + stmmac_axi_setup: stmmac-axi-config { + snps,wr-osr-lmt = <0x7>; + snps,rd-osr-lmt = <0x7>; + snps,blen = <0 0 0 0 16 8 4>; + }; + + mtl_rx_setup: rx-queues-config { + snps,rx-queues-to-use = <4>; + snps,rx-sched-sp; + + queue0 { + snps,dcb-algorithm; + snps,map-to-dma-channel = <0x0>; + }; + + queue1 { + snps,dcb-algorithm; + snps,map-to-dma-channel = <0x0>; + }; + + queue2 { + snps,dcb-algorithm; + snps,map-to-dma-channel = <0x0>; + }; + + queue3 { + snps,dcb-algorithm; + snps,map-to-dma-channel = <0x0>; + }; + }; + + mtl_tx_setup: tx-queues-config { + snps,tx-queues-to-use = <4>; + snps,tx-sched-wrr; + + queue0 { + snps,weight = <0x10>; + snps,dcb-algorithm; + snps,priority = <0x0>; + }; + + queue1 { + snps,weight = <0x11>; + snps,dcb-algorithm; + snps,priority = <0x1>; + }; + + queue2 { + snps,weight = <0x12>; + snps,dcb-algorithm; + snps,priority = <0x2>; + }; + + queue3 { + snps,weight = <0x13>; + snps,dcb-algorithm; + snps,priority = <0x3>; + }; + }; + + soc { + #address-cells = <2>; + #size-cells = <2>; + compatible = "simple-bus"; + ranges; + + gic: interrupt-controller@c000000 { + compatible = "arm,gic-v3"; + #interrupt-cells = <4>; + interrupt-parent = <&gic>; + interrupt-controller; + reg = <0 0x0c000000 0 0x40000>, /* GICD */ + <0 0x0c100000 0 0x200000>, /* GICR */ + <0 0x0c400000 0 0x2000>, /* GICC */ + <0 0x0c410000 0 0x1000>, /* GICH */ + <0 0x0c420000 0 0x2000>; /* GICV */ + + interrupts = ; + }; + + topckgen_clk: clock-controller@10000000 { + compatible = "mediatek,mt8366-topckgen", "syscon"; + reg = <0 0x10000000 0 0x1000>; + #clock-cells = <1>; + }; + + infracfg_ao_clk: clock-controller@10001000 { + compatible = "mediatek,mt8366-infracfg-ao", "syscon"; + reg = <0 0x10001000 0 0x1000>; + #clock-cells = <1>; + }; + + pio: pinctrl@10005000 { + compatible = "mediatek,mt8366-pinctrl"; + reg = <0 0x10005000 0 0x1000>, + <0 0x11c30000 0 0x1000>, + <0 0x11d40000 0 0x1000>, + <0 0x11e20000 0 0x1000>, + <0 0x11ea0000 0 0x1000>, + <0 0x11f10000 0 0x1000>, + <0 0x11f20000 0 0x1000>, + <0 0x1000b000 0 0x1000>; + reg-names = "gpio", "iocfg_rm", "iocfg_bm", + "iocfg_lb", "iocfg_tr", "iocfg_lt", + "iocfg_tl", "eint"; + + gpio-controller; + #gpio-cells = <2>; + gpio-ranges = <&pio 0 0 172>; + interrupt-controller; + interrupts = ; + #interrupt-cells = <2>; + }; + + scpsys: syscon@10006000 { + compatible = "mediatek,mt8366-scpsys", "syscon", "simple-mfd"; + reg = <0 0x10006000 0 0x1000>; + + /* System Power Manager */ + spm: power-controller { + compatible = "mediatek,mt8366-power-controller"; + #address-cells = <1>; + #size-cells = <0>; + #power-domain-cells = <1>; + + power-domain@MT8366_POWER_DOMAIN_PCIE { + reg = ; + #power-domain-cells = <0>; + }; + + power-domain@MT8366_POWER_DOMAIN_CSI_RX { + reg = ; + #power-domain-cells = <0>; + }; + + power-domain@MT8366_POWER_DOMAIN_CONN { + reg = ; + mediatek,infracfg = <&infracfg_ao_clk>; + #power-domain-cells = <0>; + }; + + mfg0: power-domain@MT8366_POWER_DOMAIN_MFG0 { + reg = ; + clocks = <&apmixedsys_clk CLK_APMIXED_MFGPLL>; + clock-names = "mfg_top"; + #address-cells = <1>; + #size-cells = <0>; + #power-domain-cells = <1>; + + mfg1: power-domain@MT8366_POWER_DOMAIN_MFG1 { + reg = ; + clocks = <&topckgen_clk CLK_TOP_MFG_REF_SEL>; + clock-names = "mfg"; + mediatek,infracfg = <&infracfg_ao_clk>; + #address-cells = <1>; + #size-cells = <0>; + #power-domain-cells = <1>; + + power-domain@MT8366_POWER_DOMAIN_MFG2 { + reg = ; + #power-domain-cells = <0>; + }; + + power-domain@MT8366_POWER_DOMAIN_MFG3 { + reg = ; + #power-domain-cells = <0>; + }; + }; + }; + + power-domain@MT8366_POWER_DOMAIN_DISP { + reg = ; + clocks = <&topckgen_clk CLK_TOP_DISP_SEL>, + <&dispsys_config CLK_MM_SMI>; + clock-names = "disp", "ss-disp"; + #address-cells = <1>; + #size-cells = <0>; + #power-domain-cells = <1>; + + power-domain@MT8366_POWER_DOMAIN_DP_TX { + reg = ; + #power-domain-cells = <0>; + }; + + power-domain@MT8366_POWER_DOMAIN_EPD { + reg = ; + clocks = <&topckgen_clk CLK_TOP_EPD_SEL>; + clock-names = "epd"; + #power-domain-cells = <0>; + }; + + power-domain@MT8366_POWER_DOMAIN_MMLSYS_SHUTDOWN { + reg = ; + clocks = <&topckgen_clk CLK_TOP_MDP_SEL>; + clock-names = "mdp"; + #power-domain-cells = <0>; + }; + + power-domain@MT8366_POWER_DOMAIN_VDEC { + reg = ; + clocks = <&topckgen_clk CLK_TOP_VDEC_SEL>, + <&vdec_gcon_base_clk CLK_VDE2_LARB1_CKEN>; + clock-names = "vdec", "ss-vdec"; + mediatek,infracfg = <&infracfg_ao_clk>; + #power-domain-cells = <0>; + }; + + power-domain@MT8366_POWER_DOMAIN_VENC { + reg = ; + clocks = <&topckgen_clk CLK_TOP_VENC_SEL>; + clock-names = "venc"; + mediatek,infracfg = <&infracfg_ao_clk>; + #power-domain-cells = <0>; + }; + + power-domain@MT8366_POWER_DOMAIN_ISP_IPE { + reg = ; + clocks = <&topckgen_clk CLK_TOP_IPE_SEL>, + <&ipesys_clk CLK_IPE_GALS>; + clock-names = "ipe", "ss-ipe"; + #power-domain-cells = <0>; + }; + + power-domain@MT8366_POWER_DOMAIN_CAM { + reg = ; + clocks = <&topckgen_clk CLK_TOP_CAM_SEL>, + <&camsys_main_clk CLK_CAM_M_CAM2MM_GALS>; + clock-names = "cam", "ss-cam"; + mediatek,infracfg = <&infracfg_ao_clk>; + #address-cells = <1>; + #size-cells = <0>; + #power-domain-cells = <1>; + + power-domain@MT8366_POWER_DOMAIN_CAM_RAWA { + reg = ; + #power-domain-cells = <0>; + }; + }; + + power-domain@MT8366_POWER_DOMAIN_ISP_IMG1 { + reg = ; + clocks = <&topckgen_clk CLK_TOP_IMG1_SEL>; + clock-names = "img1"; + #address-cells = <1>; + #size-cells = <0>; + #power-domain-cells = <1>; + + power-domain@MT8366_POWER_DOMAIN_ISP_IMG2 { + reg = ; + #power-domain-cells = <0>; + }; + }; + }; + + power-domain@MT8366_POWER_DOMAIN_VADSP_AO { + reg = ; + clocks = <&topckgen_clk CLK_TOP_VADSP_SEL>, + <&topckgen_clk CLK_TOP_VADSP_26M_SEL>; + clock-names = "vadsp", "vadsp_26m"; + #address-cells = <1>; + #size-cells = <0>; + #power-domain-cells = <1>; + + power-domain@MT8366_POWER_DOMAIN_VADSP_INFRA { + reg = ; + #address-cells = <1>; + #size-cells = <0>; + #power-domain-cells = <1>; + + power-domain@MT8366_POWER_DOMAIN_AUDIO { + reg = ; + clocks = <&topckgen_clk + CLK_TOP_AUD_INTBUS_SEL>; + clock-names = "audio"; + mediatek,infracfg = <&infracfg_ao_clk>; + #power-domain-cells = <0>; + }; + }; + }; + }; + }; + + watchdog: watchdog@10007000 { + compatible = "mediatek,mt6589-wdt"; + reg = <0 0x10007000 0 0x100>; + status = "disabled"; + }; + + apmixedsys_clk: clock-controller@1000c000 { + compatible = "mediatek,mt8366-apmixedsys", "syscon"; + reg = <0 0x1000c000 0 0x1000>; + #clock-cells = <1>; + }; + + pwrap: pwrap@10026000 { + compatible = "mediatek,mt8366-pwrap", "mediatek,mt8195-pwrap", "syscon"; + reg = <0 0x10026000 0 0x1000>; + reg-names = "pwrap"; + interrupts = ; + clocks = <&infracfg_ao_clk CLK_INFRACFG_AO_REG_PMIC_AP>, + <&infracfg_ao_clk CLK_INFRACFG_AO_REG_PMIC_TMR>, + <&topckgen_clk CLK_TOP_PWRAP_ULPOSC_SEL>, + <&topckgen_clk CLK_TOP_OSC_D10>; + clock-names = "spi", "wrap", "sys", "tmr"; + }; + + gce0: mailbox@10228000 { + compatible = "mediatek,mt8366-gce"; + reg = <0 0x10228000 0 0x4000>; + clocks = <&infracfg_ao_clk CLK_INFRACFG_AO_REG_GCE>, + <&infracfg_ao_clk CLK_INFRACFG_AO_REG_GCE_26M>; + clock-names = "gce", "gce-timer"; + interrupts = ; + #mbox-cells = <2>; + }; + + uart0: serial@11002000 { + compatible = "mediatek,mt8366-uart", "mediatek,mt6577-uart"; + reg = <0 0x11002000 0 0x1000>; + interrupts = ; + clocks = <&clk26m>, <&infracfg_ao_clk CLK_INFRACFG_AO_REGP_UART0>; + clock-names = "baud", "bus"; + status = "disabled"; + }; + + disp_pwm0: pwm@1100e000 { + compatible = "mediatek,mt8366-disp-pwm", "mediatek,mt8183-disp-pwm"; + reg = <0 0x1100e000 0 0x1000>; + interrupts = ; + #pwm-cells = <2>; + clocks = <&infracfg_ao_clk CLK_INFRACFG_AO_REGP_DISP_PWM0>, + <&topckgen_clk CLK_TOP_DISP_PWM_SEL>; + clock-names = "main", "mm"; + status = "disabled"; + }; + + disp_pwm1: pwm@1100f000 { + compatible = "mediatek,mt8366-disp-pwm", "mediatek,mt8183-disp-pwm"; + reg = <0 0x1100f000 0 0x1000>; + interrupts = ; + #pwm-cells = <2>; + clocks = <&infracfg_ao_clk CLK_INFRACFG_AO_REGP_DISP_PWM1>, + <&topckgen_clk CLK_TOP_DISP_PWM_SEL>; + clock-names = "main", "mm"; + status = "disabled"; + }; + + snor: spi@11018000 { + compatible = "mediatek,mt8366-nor", "mediatek,mt8186-nor"; + reg = <0 0x11018000 0 0x1000>; + clocks = <&topckgen_clk CLK_TOP_SFLASH_SEL>, + <&infracfg_ao_clk CLK_INFRACFG_AO_REGP_SFLASH>, + <&infracfg_ao_clk CLK_INFRACFG_AO_REGP_SFLASH_F>, + <&infracfg_ao_clk CLK_INFRACFG_AO_REGP_SFLASH_H>, + <&infracfg_ao_clk CLK_INFRACFG_AO_REGP_SFLASH_P>; + clock-names = "spi", "sf", "axi_f", "axi_h", "axi_p"; + assigned-clocks = <&topckgen_clk CLK_TOP_SFLASH_SEL>; + assigned-clock-parents = <&topckgen_clk CLK_TOP_UNIVPLL_D6_D8>; + #address-cells = <1>; + #size-cells = <0>; + status = "disabled"; + }; + + eth: ethernet@11019000 { + compatible = "mediatek,mt8366-gmac", "snps,dwmac-5.10a"; + reg = <0 0x11019000 0 0x4000>; + interrupts = ; + interrupt-names = "macirq"; + clock-names = "mac_main", + "ptp_ref", + "rmii_internal"; + clocks = <&topckgen_clk CLK_TOP_SNPS_ETH_250M_SEL>, + <&topckgen_clk CLK_TOP_SNPS_ETH_62P4M_PTP_SEL>, + <&topckgen_clk CLK_TOP_SNPS_ETH_50M_RMII_SEL>; + assigned-clocks = <&topckgen_clk CLK_TOP_SNPS_ETH_250M_SEL>, + <&topckgen_clk CLK_TOP_SNPS_ETH_62P4M_PTP_SEL>, + <&topckgen_clk CLK_TOP_SNPS_ETH_50M_RMII_SEL>; + assigned-clock-parents = <&topckgen_clk CLK_TOP_ETHPLL_D2>, + <&topckgen_clk CLK_TOP_ETHPLL_D8>, + <&topckgen_clk CLK_TOP_ETHPLL_D10>; + power-domains = <&spm MT8366_POWER_DOMAIN_PCIE>; + mediatek,pericfg = <&infracfg_ao_clk>; + snps,axi-config = <&stmmac_axi_setup>; + snps,mtl-rx-config = <&mtl_rx_setup>; + snps,mtl-tx-config = <&mtl_tx_setup>; + snps,txpbl = <16>; + snps,rxpbl = <16>; + clk-csr = <2>; + status = "disabled"; + }; + + ssusb: usb@11201000 { + compatible = "mediatek,mt8366-mtu3", "mediatek,mtu3"; + reg = <0 0x11201000 0 0x2e00>, + <0 0x11203e00 0 0x0100>; + reg-names = "mac", "ippc"; + interrupts = ; + phys = <&u2port0 PHY_TYPE_USB2>, + <&u3port0 PHY_TYPE_USB3>; + assigned-clocks = <&topckgen_clk CLK_TOP_USB_TOP_P0_SEL>; + assigned-clock-parents = <&topckgen_clk CLK_TOP_UNIVPLL_D5_D4>; + clocks = <&infracfg_ao_clk CLK_INFRACFG_AO_REGP_SSUSB0_SYS>, + <&infracfg_ao_clk CLK_INFRACFG_AO_REGP_SSUSB0_REF>, + <&infracfg_ao_clk CLK_INFRACFG_AO_REGP_SSUSB0_H>, + <&infracfg_ao_clk CLK_INFRACFG_AO_REGP_SSUSB0_F>, + <&infracfg_ao_clk CLK_INFRACFG_AO_REGP_SSUSB0_XCHI>, + <&infracfg_ao_clk CLK_INFRACFG_AO_REGP_SSUSB0_FRMCNT>; + clock-names = "sys_ck", + "ref_ck", + "mcu_ck", + "dma_ck", + "xhci_ck", + "frmcnt_ck"; + mediatek,syscon-wakeup = <&infracfg_ao_clk 0x3d4 103>; + dr_mode = "otg"; + usb-role-switch; + #address-cells = <2>; + #size-cells = <2>; + ranges; + + usb_host0: usb@11200000 { + compatible = "mediatek,mt8366-xhci", "mediatek,mtk-xhci"; + reg = <0 0x11200000 0 0x1000>; + reg-names = "mac"; + interrupts = ; + assigned-clocks = <&topckgen_clk CLK_TOP_USB_XHCI_P0_SEL>; + assigned-clock-parents = <&topckgen_clk CLK_TOP_UNIVPLL_D5_D4>; + clocks = <&infracfg_ao_clk CLK_INFRACFG_AO_REGP_SSUSB0_SYS>, + <&infracfg_ao_clk CLK_INFRACFG_AO_REGP_SSUSB0_REF>, + <&infracfg_ao_clk CLK_INFRACFG_AO_REGP_SSUSB0_H>, + <&infracfg_ao_clk CLK_INFRACFG_AO_REGP_SSUSB0_F>, + <&infracfg_ao_clk CLK_INFRACFG_AO_REGP_SSUSB0_XCHI>; + clock-names = "sys_ck", + "ref_ck", + "mcu_ck", + "dma_ck", + "xhci_ck"; + }; + }; + + usb_host1: usb@11210000 { + compatible = "mediatek,mt8366-xhci", "mediatek,mtk-xhci"; + reg = <0 0x11210000 0 0x1000>, + <0 0x11213e00 0 0x0100>; + reg-names = "mac", "ippc"; + interrupts = ; + phys = <&u2port1 PHY_TYPE_USB2>; + assigned-clocks = <&topckgen_clk CLK_TOP_USB_TOP_P1_SEL>, + <&topckgen_clk CLK_TOP_USB_XHCI_P1_SEL>; + assigned-clock-parents = <&topckgen_clk CLK_TOP_UNIVPLL_D5_D4>, + <&topckgen_clk CLK_TOP_UNIVPLL_D5_D4>; + clocks = <&infracfg_ao_clk CLK_INFRACFG_AO_REGP_SSUSB1_SYS>, + <&infracfg_ao_clk CLK_INFRACFG_AO_REGP_SSUSB1_REF>, + <&infracfg_ao_clk CLK_INFRACFG_AO_REGP_SSUSB1_H>, + <&infracfg_ao_clk CLK_INFRACFG_AO_REGP_SSUSB1_F>, + <&infracfg_ao_clk CLK_INFRACFG_AO_REGP_SSUSB1_XCHI>, + <&infracfg_ao_clk CLK_INFRACFG_AO_REGP_SSUSB1_FRMCNT>; + clock-names = "sys_ck", + "ref_ck", + "mcu_ck", + "dma_ck", + "xhci_ck", + "frmcnt_ck"; + mediatek,syscon-wakeup = <&infracfg_ao_clk 0x3dc 107>; + power-domains = <&spm MT8366_POWER_DOMAIN_PCIE>; + status = "disabled"; + }; + + usb_host2: usb@11220000 { + compatible = "mediatek,mt8366-xhci", "mediatek,mtk-xhci"; + reg = <0 0x11220000 0 0x1000>, + <0 0x11223e00 0 0x0100>; + reg-names = "mac", "ippc"; + interrupts = ; + phys = <&u2port2 PHY_TYPE_USB2>; + assigned-clocks = <&topckgen_clk CLK_TOP_USB_TOP_P2_SEL>, + <&topckgen_clk CLK_TOP_USB_XHCI_P2_SEL>; + assigned-clock-parents = <&topckgen_clk CLK_TOP_UNIVPLL_D5_D4>, + <&topckgen_clk CLK_TOP_UNIVPLL_D5_D4>; + clocks = <&infracfg_ao_clk CLK_INFRACFG_AO_REGP_SSUSB2_SYS>, + <&infracfg_ao_clk CLK_INFRACFG_AO_REGP_SSUSB2_REF>, + <&infracfg_ao_clk CLK_INFRACFG_AO_REGP_SSUSB2_H>, + <&infracfg_ao_clk CLK_INFRACFG_AO_REGP_SSUSB2_F>, + <&infracfg_ao_clk CLK_INFRACFG_AO_REGP_SSUSB2_XCHI>, + <&infracfg_ao_clk CLK_INFRACFG_AO_REGP_SSUSB2_FRMCNT>; + clock-names = "sys_ck", + "ref_ck", + "mcu_ck", + "dma_ck", + "xhci_ck", + "frmcnt_ck"; + mediatek,syscon-wakeup = <&infracfg_ao_clk 0x3e4 107>; + status = "disabled"; + }; + + mmc0: mmc@11230000 { + compatible = "mediatek,mt8366-mmc", "mediatek,mt8183-mmc"; + reg = <0 0x11230000 0 0x1000>, + <0 0x11ed0000 0 0x1000>; + interrupts = ; + clocks = <&topckgen_clk CLK_TOP_MSDC50_0_SEL>, + <&infracfg_ao_clk CLK_INFRACFG_AO_REGP_MSDC0_H>, + <&infracfg_ao_clk CLK_INFRACFG_AO_REGP_MSDC0>, + <&infracfg_ao_clk CLK_INFRACFG_AO_REGP_MSDC0_MST_F>, + <&infracfg_ao_clk CLK_INFRACFG_AO_REGP_MSDC0_SLV_H>; + clock-names = "source", "hclk", "source_cg", "bus_clk", "macro"; + status = "disabled"; + }; + + mmc1: mmc@11240000 { + compatible = "mediatek,mt8366-mmc", "mediatek,mt8183-mmc"; + reg = <0 0x11240000 0 0x1000>, + <0 0x11e90000 0 0x1000>; + interrupts = ; + clocks = <&topckgen_clk CLK_TOP_MSDC30_1_SEL>, + <&infracfg_ao_clk CLK_INFRACFG_AO_REGP_MSDC1_H>, + <&infracfg_ao_clk CLK_INFRACFG_AO_REGP_MSDC1>, + <&infracfg_ao_clk CLK_INFRACFG_AO_REGP_MSDC1_MST_F>, + <&infracfg_ao_clk CLK_INFRACFG_AO_REGP_MSDC1_SLV_H>; + clock-names = "source", "hclk", "source_cg", "bus_clk", "macro"; + status = "disabled"; + }; + + u2phy2: t-phy@11e40000 { + compatible = "mediatek,mt8366-tphy", "mediatek,generic-tphy-v3"; + reg = <0 0x11e40000 0 0x400>; + #address-cells = <2>; + #size-cells = <2>; + ranges; + status = "disabled"; + + u2port2: usb-phy@11e40000 { + reg = <0 0x11e40000 0 0x700>; + clocks = <&topckgen_clk CLK_TOP_USB2_PHY_REFCK_P2_EN>; + clock-names = "ref"; + #phy-cells = <1>; + }; + }; + + mipi_tx_config0: dsi-phy@11e50000 { + compatible = "mediatek,mt8366-mipi-tx", "mediatek,mt8183-mipi-tx"; + reg = <0 0x11e50000 0 0x1000>; + clocks = <&clk26m>; + #clock-cells = <0>; + #phy-cells = <0>; + clock-output-names = "mipi_tx0_pll"; + status = "disabled"; + }; + + u3phy0: t-phy@11e80000 { + compatible = "mediatek,mt8366-tphy", "mediatek,generic-tphy-v3"; + reg = <0 0x11e80000 0 0x400>; + #address-cells = <2>; + #size-cells = <2>; + ranges; + status = "disabled"; + + u2port0: usb-phy@11e80000 { + reg = <0 0x11e80000 0 0x700>; + clocks = <&topckgen_clk CLK_TOP_USB2_PHY_REFCK_P0_EN>; + clock-names = "ref"; + #phy-cells = <1>; + }; + + u3port0: usb-phy@11e80700 { + reg = <0 0x11e80700 0 0x700>; + clocks = <&topckgen_clk CLK_TOP_USB2_PHY_REFCK_P0_EN>; + clock-names = "ref"; + #phy-cells = <1>; + }; + }; + + dptx_phyd_sifslv_dig_glb_clk: clock-controller@11ec1400 { + compatible = "mediatek,mt8366-dptx", "syscon"; + reg = <0 0x11ec1400 0 0x1000>; + #clock-cells = <1>; + status = "disabled"; + }; + + u2phy1: t-phy@11ef0000 { + compatible = "mediatek,mt8366-tphy", "mediatek,generic-tphy-v3"; + reg = <0 0x11ef0000 0 0x400>; + #address-cells = <2>; + #size-cells = <2>; + ranges; + status = "disabled"; + + u2port1: usb-phy@11ef0000 { + reg = <0 0x11ef0000 0 0x700>; + clocks = <&topckgen_clk CLK_TOP_USB2_PHY_REFCK_P1_EN>; + clock-names = "ref"; + #phy-cells = <1>; + }; + }; + + dispsys_config: syscon@14000000 { + compatible = "mediatek,mt8366-mmsys", "syscon"; + reg = <0 0x14000000 0 0x1000>; + #clock-cells = <1>; + power-domains = <&spm MT8366_POWER_DOMAIN_DISP>; + mboxes = <&gce0 0 CMDQ_THR_PRIO_HIGHEST>, + <&gce0 1 CMDQ_THR_PRIO_HIGHEST>; + + mediatek,gce-client-reg = <&gce0 SUBSYS_1400XXXX 0 0x1000>; + }; + + mutex0: mutex@14001000 { + compatible = "mediatek,mt8366-disp-mutex"; + reg = <0 0x14001000 0 0x1000>; + interrupts = ; + power-domains = <&spm MT8366_POWER_DOMAIN_DISP>; + clocks = <&dispsys_config CLK_MM_DISP_MUTEX0>; + mediatek,gce-client-reg = <&gce0 SUBSYS_1400XXXX 0x1000 0x1000>; + mediatek,gce-events = ; + status = "disabled"; + }; + + disp_ovl0_4l: ovl@14002000 { + compatible = "mediatek,mt8366-disp-ovl"; + reg = <0 0x14002000 0 0x1000>; + interrupts = ; + power-domains = <&spm MT8366_POWER_DOMAIN_DISP>; + iommus = <&mm_iommu M4U_L0_P0_DISP_OVL0_4L_RDMA0>; + clocks = <&dispsys_config CLK_MM_DISP_OVL0_4L>; + mediatek,gce-client-reg = <&gce0 SUBSYS_1400XXXX 0x2000 0x1000>; + status = "disabled"; + }; + + disp_ovl1_4l: ovl@14003000 { + compatible = "mediatek,mt8366-disp-ovl"; + reg = <0 0x14003000 0 0x1000>; + interrupts = ; + power-domains = <&spm MT8366_POWER_DOMAIN_DISP>; + iommus = <&mm_iommu M4U_L1_P0_DISP_OVL1_4L_RDMA0>; + clocks = <&dispsys_config CLK_MM_DISP_OVL1_4L>; + mediatek,gce-client-reg = <&gce0 SUBSYS_1400XXXX 0x3000 0x1000>; + status = "disabled"; + }; + + disp_rdma0: rdma@14006000 { + compatible = "mediatek,mt8366-disp-rdma", "mediatek,mt8195-disp-rdma"; + reg = <0 0x14006000 0 0x1000>; + interrupts = ; + power-domains = <&spm MT8366_POWER_DOMAIN_DISP>; + clocks = <&dispsys_config CLK_MM_DISP_RDMA0>; + iommus = <&mm_iommu M4U_L0_P1_DISP_RDMA0>; + mediatek,gce-client-reg = <&gce0 SUBSYS_1400XXXX 0x6000 0x1000>; + status = "disabled"; + }; + + disp_rdma1: rdma@14007000 { + compatible = "mediatek,mt8366-disp-rdma", "mediatek,mt8195-disp-rdma"; + reg = <0 0x14007000 0 0x1000>; + interrupts = ; + power-domains = <&spm MT8366_POWER_DOMAIN_DISP>; + clocks = <&dispsys_config CLK_MM_DISP_RDMA1>; + iommus = <&mm_iommu M4U_L1_P1_DISP_RDMA1>; + mediatek,gce-client-reg = <&gce0 SUBSYS_1400XXXX 0x7000 0x1000>; + status = "disabled"; + }; + + dsi0: dsi@14016000 { + compatible = "mediatek,mt8366-dsi"; + reg = <0 0x14016000 0 0x1000>; + interrupts = ; + power-domains = <&spm MT8366_POWER_DOMAIN_DISP>; + phys = <&mipi_tx_config0>; + phy-names = "dphy"; + clocks = <&dispsys_config CLK_MM_DISP_DSI0_MM>, + <&dispsys_config CLK_MM_DISP_DSI0>, + <&mipi_tx_config0>; + clock-names = "engine", "digital", "hs"; + status = "disabled"; + }; + + smi_larb0: larb@1401c000 { + compatible = "mediatek,mt8366-smi-larb"; + reg = <0 0x1401c000 0 0x1000>; + clocks = <&dispsys_config CLK_MM_SMI>, + <&dispsys_config CLK_MM_MM_CK_GLOBAL>; + clock-names = "apb", "smi"; + power-domains = <&spm MT8366_POWER_DOMAIN_DISP>; + mediatek,larb-id = <0>; + mediatek,smi = <&smi_disp_common>; + status = "disabled"; + }; + + smi_larb1: larb@1401d000 { + compatible = "mediatek,mt8366-smi-larb"; + reg = <0 0x1401d000 0 0x1000>; + clocks = <&dispsys_config CLK_MM_SMI>, + <&dispsys_config CLK_MM_MM_CK_GLOBAL>; + clock-names = "apb", "smi"; + power-domains = <&spm MT8366_POWER_DOMAIN_DISP>; + mediatek,larb-id = <1>; + mediatek,smi = <&smi_disp_common>; + status = "disabled"; + }; + + smi_disp_common: smi@1401f000 { + compatible = "mediatek,mt8366-smi-common"; + reg = <0 0x1401f000 0 0x1000>; + clocks = <&dispsys_config CLK_MM_SMI>, + <&dispsys_config CLK_MM_MM_CK_GLOBAL>; + clock-names = "apb", "smi"; + power-domains = <&spm MT8366_POWER_DOMAIN_DISP>; + status = "disabled"; + }; + + mm_iommu: iommu@14020000 { + compatible = "mediatek,mt8366-iommu-mm"; + reg = <0 0x14020000 0 0x5000>; + clocks = <&dispsys_config CLK_MM_SMI>; + clock-names = "bclk"; + #iommu-cells = <1>; + interrupts = ; + power-domains = <&spm MT8366_POWER_DOMAIN_DISP>; + mediatek,larbs = <&smi_larb0>, <&smi_larb1>; + status = "disabled"; + }; + + vdec_gcon_base_clk: clock-controller@1602f000 { + compatible = "mediatek,mt8366-vdec-gcon", "syscon"; + reg = <0 0x1602f000 0 0x1000>; + #clock-cells = <1>; + }; + + camsys_main_clk: clock-controller@1a000000 { + compatible = "mediatek,mt8366-camsys-main", "syscon"; + reg = <0 0x1a000000 0 0x1000>; + #clock-cells = <1>; + }; + + ipesys_clk: clock-controller@1b000000 { + compatible = "mediatek,mt8366-ipesys", "syscon"; + reg = <0 0x1b000000 0 0x1000>; + #clock-cells = <1>; + }; + + epdsys_clk: clock-controller@1c000000 { + compatible = "mediatek,mt8366-epdsys", "syscon"; + reg = <0 0x1c000000 0 0x1000>; + #clock-cells = <1>; + }; + }; +}; diff --git a/include/dt-bindings/gce/mt8366-gce.h b/include/dt-bindings/gce/mt8366-gce.h new file mode 100644 index 00000000000..46e5089638a --- /dev/null +++ b/include/dt-bindings/gce/mt8366-gce.h @@ -0,0 +1,858 @@ +/* SPDX-License-Identifier: GPL-2.0-only OR MIT */ +/* + * Copyright (c) 2026 MediaTek Inc. + */ + +#ifndef _DT_BINDINGS_GCE_MT8366_GCE_H +#define _DT_BINDINGS_GCE_MT8366_GCE_H + +/* assign timeout 0 also means default */ +#define CMDQ_NO_TIMEOUT 0xffffffff +#define CMDQ_TIMEOUT_DEFAULT 1000 + +/* GCE thread priority */ +#define CMDQ_THR_PRIO_LOWEST 0 +#define CMDQ_THR_PRIO_1 1 +#define CMDQ_THR_PRIO_2 2 +#define CMDQ_THR_PRIO_3 3 +#define CMDQ_THR_PRIO_4 4 +#define CMDQ_THR_PRIO_5 5 +#define CMDQ_THR_PRIO_6 6 +#define CMDQ_THR_PRIO_HIGHEST 7 + +/* CPR count in 32bit register */ +#define GCE_CPR_COUNT 1312 + +/* GCE General Purpose Register (GPR) support + * Leave note for scenario usage here + */ +/* GCE: write mask */ +#define GCE_GPR_R00 0x00 +#define GCE_GPR_R01 0x01 +/* MDP: P1: JPEG dest */ +#define GCE_GPR_R02 0x02 +#define GCE_GPR_R03 0x03 +/* MDP: PQ color */ +#define GCE_GPR_R04 0x04 +/* MDP: 2D sharpness */ +#define GCE_GPR_R05 0x05 +/* DISP: poll esd */ +#define GCE_GPR_R06 0x06 +#define GCE_GPR_R07 0x07 +/* MDP: P4: 2D sharpness dst */ +#define GCE_GPR_R08 0x08 +#define GCE_GPR_R09 0x09 +/* VCU: poll with timeout for GPR timer */ +#define GCE_GPR_R10 0x0A +#define GCE_GPR_R11 0x0B +/* CMDQ: debug */ +#define GCE_GPR_R12 0x0C +#define GCE_GPR_R13 0x0D +/* CMDQ: P7: debug */ +#define GCE_GPR_R14 0x0E +#define GCE_GPR_R15 0x0F + +/* GCE subsys table */ +#define SUBSYS_1400XXXX 0 /* MMSYS */ +#define SUBSYS_1401XXXX 1 /* MMSYS */ +#define SUBSYS_1402XXXX 2 /* MMSYS */ +#define SUBSYS_1f00XXXX 3 /* MMSYS */ +#define SUBSYS_1f01XXXX 4 /* MDP */ +#define SUBSYS_1600XXXX 5 /* MDP */ +#define SUBSYS_1601XXXX 6 /* VDEC */ +#define SUBSYS_1602XXXX 7 /* VDEC */ +#define SUBSYS_1c00XXXX 8 /* EPD */ +#define SUBSYS_1c01XXXX 9 /* EPD */ +#define SUBSYS_1022XXXX 10 /* GCE */ +#define SUBSYS_1b00XXXX 11 /* IPE */ +#define SUBSYS_1501XXXX 12 /* IMG */ +#define SUBSYS_1502XXXX 13 /* IMG */ +#define SUBSYS_1581XXXX 14 /* IMG */ +#define SUBSYS_1582XXXX 15 /* IMG */ +#define SUBSYS_1700XXXX 16 /* VENC */ +#define SUBSYS_1701XXXX 17 /* VENC */ +#define SUBSYS_1702XXXX 18 /* VENC */ +#define SUBSYS_1703XXXX 19 /* VENC */ +#define SUBSYS_1704XXXX 20 /* VENC */ +#define SUBSYS_1706XXXX 21 /* VENC */ +#define SUBSYS_1a00XXXX 22 /* CAM */ +#define SUBSYS_1a01XXXX 23 /* CAM */ +#define SUBSYS_1a03XXXX 24 /* CAM */ +#define SUBSYS_1a04XXXX 25 /* CAM */ +#define SUBSYS_1a05XXXX 26 /* CAM */ +#define SUBSYS_1a06XXXX 27 /* CAM */ +#define SUBSYS_1a09XXXX 28 /* CAM */ +#define SUBSYS_1a0aXXXX 29 /* CAM */ +#define SUBSYS_NO_SUPPORT 99 +/* HWTCON event */ + +#define CMDQ_EVENT_VENC_EVENT_0 0 +#define CMDQ_EVENT_VENC_CMDQ_FRAME_DONE 1 +#define CMDQ_EVENT_VENC_CMDQ_PAUSE_DONE 2 +#define CMDQ_EVENT_JPGENC_CMDQ_DONE 3 +#define CMDQ_EVENT_VENC_CMDQ_MB_DONE 4 +#define CMDQ_EVENT_VENC_CMDQ_128BYTE_CNT_DONE 5 +#define CMDQ_EVENT_JPGDEC_CMDQ_DONE 6 +#define CMDQ_EVENT_JPGDEC_INSUFF_CMDQ_DONE 7 +#define CMDQ_EVENT_VENC_CMDQ_PPS_DONE 8 +#define CMDQ_EVENT_VENC_CMDQ_SPS_DONE 9 +#define CMDQ_EVENT_VENC_CMDQ_VPS_DONE 10 +#define CMDQ_EVENT_VENC_EVENT_11 11 +#define CMDQ_EVENT_VENC_EVENT_12 12 +#define CMDQ_EVENT_VENC_EVENT_13 13 +#define CMDQ_EVENT_VENC_EVENT_14 14 +#define CMDQ_EVENT_VENC_EVENT_15 15 +#define CMDQ_EVENT_IMG2_DIP_FRAME_DONE_P2_0 33 +#define CMDQ_EVENT_IMG2_DIP_FRAME_DONE_P2_1 34 +#define CMDQ_EVENT_IMG2_DIP_FRAME_DONE_P2_2 35 +#define CMDQ_EVENT_IMG2_DIP_FRAME_DONE_P2_3 36 +#define CMDQ_EVENT_IMG2_DIP_FRAME_DONE_P2_4 37 +#define CMDQ_EVENT_IMG2_DIP_FRAME_DONE_P2_5 38 +#define CMDQ_EVENT_IMG2_DIP_FRAME_DONE_P2_6 39 +#define CMDQ_EVENT_IMG2_DIP_FRAME_DONE_P2_7 40 +#define CMDQ_EVENT_IMG2_DIP_FRAME_DONE_P2_8 41 +#define CMDQ_EVENT_IMG2_DIP_FRAME_DONE_P2_9 42 +#define CMDQ_EVENT_IMG2_DIP_FRAME_DONE_P2_10 43 +#define CMDQ_EVENT_IMG2_DIP_FRAME_DONE_P2_11 44 +#define CMDQ_EVENT_IMG2_DIP_FRAME_DONE_P2_12 45 +#define CMDQ_EVENT_IMG2_DIP_FRAME_DONE_P2_13 46 +#define CMDQ_EVENT_IMG2_DIP_FRAME_DONE_P2_14 47 +#define CMDQ_EVENT_IMG2_DIP_FRAME_DONE_P2_15 48 +#define CMDQ_EVENT_IMG2_DIP_FRAME_DONE_P2_16 49 +#define CMDQ_EVENT_IMG2_DIP_FRAME_DONE_P2_17 50 +#define CMDQ_EVENT_IMG2_DIP_FRAME_DONE_P2_18 51 +#define CMDQ_EVENT_IMG2_DIP_DMA_ERR_EVENT 52 +#define CMDQ_EVENT_IMG2_AMD_FRAME_DONE 53 +#define CMDQ_EVENT_IMG2_MFB_DONE 54 +#define CMDQ_EVENT_IMG2_WPE_DONE 55 +#define CMDQ_EVENT_IMG2_MSS_DONE 56 +#define CMDQ_EVENT_IMG1_DIP_FRAME_DONE_P2_0 65 +#define CMDQ_EVENT_IMG1_DIP_FRAME_DONE_P2_1 66 +#define CMDQ_EVENT_IMG1_DIP_FRAME_DONE_P2_2 67 +#define CMDQ_EVENT_IMG1_DIP_FRAME_DONE_P2_3 68 +#define CMDQ_EVENT_IMG1_DIP_FRAME_DONE_P2_4 69 +#define CMDQ_EVENT_IMG1_DIP_FRAME_DONE_P2_5 70 +#define CMDQ_EVENT_IMG1_DIP_FRAME_DONE_P2_6 71 +#define CMDQ_EVENT_IMG1_DIP_FRAME_DONE_P2_7 72 +#define CMDQ_EVENT_IMG1_DIP_FRAME_DONE_P2_8 73 +#define CMDQ_EVENT_IMG1_DIP_FRAME_DONE_P2_9 74 +#define CMDQ_EVENT_IMG1_DIP_FRAME_DONE_P2_10 75 +#define CMDQ_EVENT_IMG1_DIP_FRAME_DONE_P2_11 76 +#define CMDQ_EVENT_IMG1_DIP_FRAME_DONE_P2_12 77 +#define CMDQ_EVENT_IMG1_DIP_FRAME_DONE_P2_13 78 +#define CMDQ_EVENT_IMG1_DIP_FRAME_DONE_P2_14 79 +#define CMDQ_EVENT_IMG1_DIP_FRAME_DONE_P2_15 80 +#define CMDQ_EVENT_IMG1_DIP_FRAME_DONE_P2_16 81 +#define CMDQ_EVENT_IMG1_DIP_FRAME_DONE_P2_17 82 +#define CMDQ_EVENT_IMG1_DIP_FRAME_DONE_P2_18 83 +#define CMDQ_EVENT_IMG1_DIP_DMA_ERR_EVENT 84 +#define CMDQ_EVENT_IMG1_AMD_FRAME_DONE 85 +#define CMDQ_EVENT_IMG1_MFB_DONE 86 +#define CMDQ_EVENT_IMG1_WPE_DONE 87 +#define CMDQ_EVENT_IMG1_MSS_DONE 88 +#define CMDQ_EVENT_IPE_FDVT_DONE 113 +#define CMDQ_EVENT_IPE_FE_DONE 114 +#define CMDQ_EVENT_IPE_RSC_DONE 115 +#define CMDQ_EVENT_IPE_DVS_DONE 116 +#define CMDQ_EVENT_IPE_DVP_DONE 117 +#define CMDQ_EVENT_DISP_OVL0_4L_SOF 128 +#define CMDQ_EVENT_DISP_OVL1_4L_SOF 129 +#define CMDQ_EVENT_DISP_RSZ0_SOF 130 +#define CMDQ_EVENT_DISP_RSZ1_SOF 131 +#define CMDQ_EVENT_DISP_RDMA0_SOF 132 +#define CMDQ_EVENT_DISP_RDMA1_SOF 133 +#define CMDQ_EVENT_DISP_COLOR1_SOF 134 +#define CMDQ_EVENT_DISP_CCORR1_SOF 135 +#define CMDQ_EVENT_DISP_CCORR3_SOF 136 +#define CMDQ_EVENT_DISP_AAL1_SOF 137 +#define CMDQ_EVENT_DISP_GAMMA1_SOF 138 +#define CMDQ_EVENT_DISP_DITHER1_SOF 139 +#define CMDQ_EVENT_VPP_MERGE0_SOF 140 +#define CMDQ_EVENT_DISP_DSI0_SOF 141 +#define CMDQ_EVENT_DP_INTF0_SOF 142 +#define CMDQ_EVENT_DPI0_SOF 143 +#define CMDQ_EVENT_DISP_WDMA0_SOF 144 +#define CMDQ_EVENT_DISP_DSI1_SOF 145 +#define CMDQ_EVENT_DISP_PWM0_SOF 146 +#define CMDQ_EVENT_DISP_PWM1_SOF 147 +#define CMDQ_EVENT_EPD_DLI_RELAY_SOF 148 +#define CMDQ_EVENT_DISP_OVL0_4L_FRAME_DONE 154 +#define CMDQ_EVENT_DISP_OVL1_4L_FRAME_DONE 155 +#define CMDQ_EVENT_DISP_RSZ0_FRAME_DONE 156 +#define CMDQ_EVENT_DISP_RSZ1_FRAME_DONE 157 +#define CMDQ_EVENT_DISP_RDMA0_FRAME_DONE 158 +#define CMDQ_EVENT_DISP_RDMA1_FRAME_DONE 159 +#define CMDQ_EVENT_DISP_COLOR1_FRAME_DONE 160 +#define CMDQ_EVENT_DISP_CCORR1_FRAME_DONE 161 +#define CMDQ_EVENT_DISP_CCORR3_FRAME_DONE 162 +#define CMDQ_EVENT_DISP_AAL1_FRAME_DONE 163 +#define CMDQ_EVENT_DISP_GAMMA1_FRAME_DONE 164 +#define CMDQ_EVENT_DISP_DITHER1_FRAME_DONE 165 +#define CMDQ_EVENT_VPP_MERGE0_FRAME_DONE 166 +#define CMDQ_EVENT_DISP_DSI0_FRAME_DONE 167 +#define CMDQ_EVENT_DP_INTF0_FRAME_DONE 168 +#define CMDQ_EVENT_DPI0_FRAME_DONE 169 +#define CMDQ_EVENT_DISP_WDMA0_FRAME_DONE 170 +#define CMDQ_EVENT_DISP_DSI1_FRAME_DONE 171 +#define CMDQ_EVENT_DISP_MUTEX0_BUF_UNDERRUN_EVENT0 179 +#define CMDQ_EVENT_DISP_MUTEX0_BUF_UNDERRUN_EVENT1 180 +#define CMDQ_EVENT_DISP_MUTEX0_BUF_UNDERRUN_EVENT2 181 +#define CMDQ_EVENT_DISP_MUTEX0_BUF_UNDERRUN_EVENT3 182 +#define CMDQ_EVENT_DISP_MUTEX0_BUF_UNDERRUN_EVENT4 183 +#define CMDQ_EVENT_DISP_MUTEX0_BUF_UNDERRUN_EVENT5 184 +#define CMDQ_EVENT_DISP_MUTEX0_BUF_UNDERRUN_EVENT6 185 +#define CMDQ_EVENT_DISP_MUTEX0_BUF_UNDERRUN_EVENT7 186 +#define CMDQ_EVENT_VPP_MERGE0_ENG_EVENT 187 +#define CMDQ_EVENT_DISP_DSI0_TE_EVENT 188 +#define CMDQ_EVENT_DISP_DSI0_FRAME_DONE_EVENT 189 +#define CMDQ_EVENT_DISP_DSI0_TARGET_LINE_EVENT 190 +#define CMDQ_EVENT_DISP_INTF0_SEL_ENG_EVENT4 191 +#define CMDQ_EVENT_DISP_INTF0_SEL_ENG_EVENT3 192 +#define CMDQ_EVENT_DISP_INTF0_SEL_ENG_EVENT2 193 +#define CMDQ_EVENT_DISP_INTF0_SEL_ENG_EVENT1 194 +#define CMDQ_EVENT_DISP_INTF0_SEL_ENG_EVENT0 195 +#define CMDQ_EVENT_DISP_INTF0_EXTERNAL_TARGET_VDE_END_EVENT 196 +#define CMDQ_EVENT_DISP_INTF0_EXTERNAL_TARGET_VSYNC_START_EVENT 197 +#define CMDQ_EVENT_DISP_INTF0_INTERNAL_TARGET_LINE0_EVENT 198 +#define CMDQ_EVENT_DISP_WDMA0_SW_RESET_EVENT 200 +#define CMDQ_EVENT_DISP_DSI1_TE_EVENT 201 +#define CMDQ_EVENT_DISP_DSI1_FRAME_DONE_EVENT 202 +#define CMDQ_EVENT_DISP_DSI1_TARGET_LINE_EVENT 203 +#define CMDQ_EVENT_DISP_OVL0_4L_RST_DONE_EVENT 204 +#define CMDQ_EVENT_DISP_OVL1_4L_RST_DONE_EVENT 205 +#define CMDQ_EVENT_DISP_MUTEX0_STREAM_DONE_0_ENG_EVENT 208 +#define CMDQ_EVENT_DISP_MUTEX0_STREAM_DONE_1_ENG_EVENT 209 +#define CMDQ_EVENT_DISP_MUTEX0_STREAM_DONE_2_ENG_EVENT 210 +#define CMDQ_EVENT_DISP_MUTEX0_STREAM_DONE_3_ENG_EVENT 211 +#define CMDQ_EVENT_DISP_MUTEX0_STREAM_DONE_4_ENG_EVENT 212 +#define CMDQ_EVENT_DISP_MUTEX0_STREAM_DONE_5_ENG_EVENT 213 +#define CMDQ_EVENT_DISP_MUTEX0_STREAM_DONE_6_ENG_EVENT 214 +#define CMDQ_EVENT_DISP_MUTEX0_STREAM_DONE_7_ENG_EVENT 215 +#define CMDQ_EVENT_DISP_MUTEX0_STREAM_DONE_8_ENG_EVENT 216 +#define CMDQ_EVENT_DISP_MUTEX0_STREAM_DONE_9_ENG_EVENT 217 +#define CMDQ_EVENT_DISP_MUTEX0_STREAM_DONE_10_ENG_EVENT 218 +#define CMDQ_EVENT_DISP_MUTEX0_STREAM_DONE_11_ENG_EVENT 219 +#define CMDQ_EVENT_DISP_MUTEX0_STREAM_DONE_12_ENG_EVENT 220 +#define CMDQ_EVENT_DISP_MUTEX0_STREAM_DONE_13_ENG_EVENT 221 +#define CMDQ_EVENT_DISP_MUTEX0_STREAM_DONE_14_ENG_EVENT 222 +#define CMDQ_EVENT_DISP_MUTEX0_STREAM_DONE_15_ENG_EVENT 223 +#define CMDQ_EVENT_MDP_RDMA0_SOF 256 +#define CMDQ_EVENT_MDP_RDMA1_SOF 257 +#define CMDQ_EVENT_MDP_RDMA2_SOF 258 +#define CMDQ_EVENT_MDP_BIRSZ0_SOF 259 +#define CMDQ_EVENT_MDP_HDR0_SOF 260 +#define CMDQ_EVENT_MDP_AAL0_SOF 261 +#define CMDQ_EVENT_MDP_RSZ0_SOF 262 +#define CMDQ_EVENT_MDP_RSZ1_SOF 263 +#define CMDQ_EVENT_MDP_RSZ2_SOF 264 +#define CMDQ_EVENT_MDP_RSZ3_SOF 265 +#define CMDQ_EVENT_MDP_TDSHP0_SOF 266 +#define CMDQ_EVENT_MDP_COLOR0_SOF 267 +#define CMDQ_EVENT_MDP_WROT0_SOF 268 +#define CMDQ_EVENT_MDP_WROT1_SOF 269 +#define CMDQ_EVENT_MDP_WROT2_SOF 270 +#define CMDQ_EVENT_MDP_WDMA0_SOF 271 +#define CMDQ_EVENT_MDP_GAMMA0_SOF 272 +#define CMDQ_EVENT_MDP_DTH0_SOF 273 +#define CMDQ_EVENT_MDP_WROT2_FRAME_DONE 274 +#define CMDQ_EVENT_MDP_WROT1_FRAME_DONE 275 +#define CMDQ_EVENT_MDP_WROT0_FRAME_DONE 276 +#define CMDQ_EVENT_MDP_WDMA0_FRAME_DONE 277 +#define CMDQ_EVENT_MDP_TDSHP0_FRAME_DONE 278 +#define CMDQ_EVENT_MDP_RSZ3_FRAME_DONE 279 +#define CMDQ_EVENT_MDP_RSZ2_FRAME_DONE 280 +#define CMDQ_EVENT_MDP_RSZ1_FRAME_DONE 281 +#define CMDQ_EVENT_MDP_RSZ0_FRAME_DONE 282 +#define CMDQ_EVENT_MDP_RDMA2_FRAME_DONE 283 +#define CMDQ_EVENT_MDP_RDMA1_FRAME_DONE 284 +#define CMDQ_EVENT_MDP_RDMA0_FRAME_DONE 285 +#define CMDQ_EVENT_MDP_HDR0_FRAME_DONE 286 +#define CMDQ_EVENT_MDP_GAMMA0_FRAME_DONE 287 +#define CMDQ_EVENT_MDP_DTH0_FRAME_DONE 288 +#define CMDQ_EVENT_MDP_COLOR0_FRAME_DONE 289 +#define CMDQ_EVENT_MDP_BIRSZ0_FRAME_DONE 290 +#define CMDQ_EVENT_MDP_AAL0_FRAME_DONE 291 +#define CMDQ_EVENT_STREAM_DONE_ENG_EVENT_0 292 +#define CMDQ_EVENT_STREAM_DONE_ENG_EVENT_1 293 +#define CMDQ_EVENT_STREAM_DONE_ENG_EVENT_2 294 +#define CMDQ_EVENT_STREAM_DONE_ENG_EVENT_3 295 +#define CMDQ_EVENT_STREAM_DONE_ENG_EVENT_4 296 +#define CMDQ_EVENT_STREAM_DONE_ENG_EVENT_5 297 +#define CMDQ_EVENT_STREAM_DONE_ENG_EVENT_6 298 +#define CMDQ_EVENT_STREAM_DONE_ENG_EVENT_7 299 +#define CMDQ_EVENT_STREAM_DONE_ENG_EVENT_8 300 +#define CMDQ_EVENT_STREAM_DONE_ENG_EVENT_9 301 +#define CMDQ_EVENT_STREAM_DONE_ENG_EVENT_10 302 +#define CMDQ_EVENT_STREAM_DONE_ENG_EVENT_11 303 +#define CMDQ_EVENT_STREAM_DONE_ENG_EVENT_12 304 +#define CMDQ_EVENT_STREAM_DONE_ENG_EVENT_13 305 +#define CMDQ_EVENT_STREAM_DONE_ENG_EVENT_14 306 +#define CMDQ_EVENT_STREAM_DONE_ENG_EVENT_15 307 +#define CMDQ_EVENT_MDP_WROT2_SW_RST_DONE_ENG_EVENT 308 +#define CMDQ_EVENT_MDP_WROT1_SW_RST_DONE_ENG_EVENT 309 +#define CMDQ_EVENT_MDP_WROT0_SW_RST_DONE_ENG_EVENT 310 +#define CMDQ_EVENT_MDP_WDMA0_SW_RST_DONE_ENG_EVENT 311 +#define CMDQ_EVENT_MDP_RDMA2_SW_RST_DONE_ENG_EVENT 312 +#define CMDQ_EVENT_MDP_RDMA1_SW_RST_DONE_ENG_EVENT 313 +#define CMDQ_EVENT_MDP_RDMA0_SW_RST_DONE_ENG_EVENT 314 +#define CMDQ_EVENT_EPD_COLOR_DET0_ENG_EVENT 315 +#define CMDQ_EVENT_EPD_COLOR_DET1_ENG_EVENT 316 +#define CMDQ_EVENT_EINK_COLOR0_ENG_EVENT 317 +#define CMDQ_EVENT_EPDC_DPI0_SOF 320 +#define CMDQ_EVENT_MAIN_SOF 321 +#define CMDQ_EVENT_PIPELINE_SOF 322 +#define CMDQ_EVENT_WB_WDMA_SOF 323 +#define CMDQ_EVENT_WF_LUT_SOF 324 +#define CMDQ_EVENT_LUT_MERGE_SOF 325 +#define CMDQ_EVENT_WF_LUT_DISP_RDMA_SOF 326 +#define CMDQ_EVENT_RESERVED0_SOF 327 +#define CMDQ_EVENT_EPDC_DPI0_FRAME_DONE 328 +#define CMDQ_EVENT_LUT_ASSIGN_DONE 329 +#define CMDQ_EVENT_PIPELINE_DONE 330 +#define CMDQ_EVENT_WB_WDMA_DONE 331 +#define CMDQ_EVENT_WF_LUT_FRAME_DONE 332 +#define CMDQ_EVENT_LUT_FRAME_DONE 333 +#define CMDQ_EVENT_EPDC_DISP_RDMA0_FRAME_DONE 334 +#define CMDQ_EVENT_LUT_COL_EVENT 335 +#define CMDQ_EVENT_DPI_UPDATE_DONE 336 +#define CMDQ_EVENT_LUT_RELEASE_DONE 337 +#define CMDQ_EVENT_TCON_END_EVENT 338 +#define CMDQ_EVENT_TC_CMD_FINISH 339 +#define CMDQ_EVENT_TCON_TARGET_POINT_EVENT_0 340 +#define CMDQ_EVENT_TCON_TARGET_POINT_EVENT_1 341 +#define CMDQ_EVENT_TCON_TARGET_POINT_EVENT_2 342 +#define CMDQ_EVENT_TCON_TARGET_POINT_EVENT_3 343 +#define CMDQ_EVENT_TCON_TARGET_POINT_EVENT_4 344 +#define CMDQ_EVENT_TCON_TARGET_POINT_EVENT_5 345 +#define CMDQ_EVENT_TCON_TARGET_POINT_EVENT_6 346 +#define CMDQ_EVENT_TCON_TARGET_POINT_EVENT_7 347 +#define CMDQ_EVENT_TCON_TARGET_POINT_EVENT_8 348 +#define CMDQ_EVENT_TCON_TARGET_POINT_EVENT_9 349 +#define CMDQ_EVENT_TCON_TARGET_POINT_EVENT_10 350 +#define CMDQ_EVENT_TCON_TARGET_POINT_EVENT_11 351 +#define CMDQ_EVENT_TCON_TARGET_POINT_EVENT_12 352 +#define CMDQ_EVENT_TCON_TARGET_POINT_EVENT_13 353 +#define CMDQ_EVENT_TCON_TARGET_POINT_EVENT_14 354 +#define CMDQ_EVENT_TCON_TARGET_POINT_EVENT_15 355 +#define CMDQ_EVENT_TCON_TARGET_POINT_EVENT_16 356 +#define CMDQ_EVENT_TCON_TARGET_POINT_EVENT_17 357 +#define CMDQ_EVENT_TCON_TARGET_POINT_EVENT_18 358 +#define CMDQ_EVENT_TCON_TARGET_POINT_EVENT_19 359 +#define CMDQ_EVENT_TCON_TARGET_POINT_EVENT_20 360 +#define CMDQ_EVENT_TCON_TARGET_POINT_EVENT_21 361 +#define CMDQ_EVENT_TCON_TARGET_POINT_EVENT_22 362 +#define CMDQ_EVENT_TCON_TARGET_POINT_EVENT_23 363 +#define CMDQ_EVENT_ACVCOM_END_EVENT 364 +#define CMDQ_EVENT_ACVCOM_READ_DATA_END_EVENT 365 +#define CMDQ_EVENT_VPP_BUFFER_0_ENG_EVENT 368 +#define CMDQ_EVENT_VPP_BUFFER_1_ENG_EVENT 369 +#define CMDQ_EVENT_VPP_BUFFER_0_FRAME_DONE 370 +#define CMDQ_EVENT_VPP_BUFFER_1_FRAME_DONE 371 +#define CMDQ_EVENT_WF_BLEND_FRAME_DONE 372 +#define CMDQ_EVENT_WF_BLEND_TARGER_LINE_EVENT 373 +#define CMDQ_EVENT_LUT_RELEASE_EN 376 +#define CMDQ_EVENT_LINE_COUNT_THRESHOLD_INTERRUPT 384 +#define CMDQ_EVENT_VDEC_INT 385 +#define CMDQ_EVENT_VDEC_PAUSE 386 +#define CMDQ_EVENT_VDEC_DEC_ERROR 387 +#define CMDQ_EVENT_MC_BUSY_OVERFLOW_OR_MDEC_TIMEOUT 388 +#define CMDQ_EVENT_VDEC_DRAM_IDLE 389 +#define CMDQ_EVENT_INI_FETCH_RDY 390 +#define CMDQ_EVENT_PROCESS_FLAG 391 +#define CMDQ_EVENT_VLD_EVENT_0 392 +#define CMDQ_EVENT_VLD_EVENT_1 393 +#define CMDQ_EVENT_VLD_EVENT_2 394 +#define CMDQ_EVENT_VLD_EVENT_3 395 +#define CMDQ_EVENT_GCE_CNT 399 +#define CMDQ_EVENT_CAM_SOF_EVENT_0 448 +#define CMDQ_EVENT_CAM_RAWA_DONE_EVENT_1 449 +#define CMDQ_EVENT_CAM_RAWB_DONE_EVENT_2 450 +#define CMDQ_EVENT_CAM_RAWC_DONE_EVENT_3 451 +#define CMDQ_EVENT_CAM_CAMSV01_DONE_EVENT_4 452 +#define CMDQ_EVENT_CAM_CAMSV02_DONE_EVENT_5 453 +#define CMDQ_EVENT_CAM_CAMSV1_DONE_EVENT_6 454 +#define CMDQ_EVENT_CAM_CAMSV2_DONE_EVENT_7 455 +#define CMDQ_EVENT_CAM_CAMSV3_DONE_EVENT_8 456 +#define CMDQ_EVENT_CAM_CAMSV41_DONE_EVENT_9 457 +#define CMDQ_EVENT_CAM_CAMSV42_DONE_EVENT_10 458 +#define CMDQ_EVENT_CAM_MRAW0_DONE_EVENT_11 459 +#define CMDQ_EVENT_CAM_MRAW1_DONE_EVENT_12 460 +#define CMDQ_EVENT_CAM_SENINF0_EVENT_13 461 +#define CMDQ_EVENT_CAM_SENINF1_EVENT_14 462 +#define CMDQ_EVENT_CAM_SENINF2_EVENT_15 463 +#define CMDQ_EVENT_CAM_SENINF3_EVENT_16 464 +#define CMDQ_EVENT_CAM_SENINF4_EVENT_17 465 +#define CMDQ_EVENT_CAM_SENINF5_EVENT_18 466 +#define CMDQ_EVENT_CAM_SENINF6_EVENT_19 467 +#define CMDQ_EVENT_CAM_SENINF7_EVENT_20 468 +#define CMDQ_EVENT_CAM_SENINF8_EVENT_21 469 +#define CMDQ_EVENT_CAM_SENINF9_EVENT_22 470 +#define CMDQ_EVENT_CAM_SENINF10_EVENT_23 471 +#define CMDQ_EVENT_CAM_SENINF11_EVENT_24 472 +#define CMDQ_EVENT_CAM_SENINF12_EVENT_25 473 +#define CMDQ_EVENT_CAM_RAWA_TG0_EVENT_26 474 +#define CMDQ_EVENT_CAM_RAWA_DMA_EVENT_27 475 +#define CMDQ_EVENT_CAM_RAWB_TG0_EVENT_28 476 +#define CMDQ_EVENT_CAM_RAWB_DMA_EVENT_29 477 +#define CMDQ_EVENT_CAM_RAWC_TG0_EVENT_30 478 +#define CMDQ_EVENT_CAM_RAWC_DMA_EVENT_31 479 +#define CMDQ_EVENT_CAM_MRAW_TG01_EVENT_32 480 +#define CMDQ_EVENT_CAM_MRAW_DMA01_EVENT_33 481 +#define CMDQ_EVENT_CAM_MRAW_TG0_EVENT_34 482 +#define CMDQ_EVENT_CAM_MRAW_TG1_EVENT_35 483 +#define CMDQ_EVENT_CAM_RAWA_TG1_EVENT_36 484 +#define CMDQ_EVENT_CAM_RAWA_CQ_EVENT_37 485 +#define CMDQ_EVENT_CAM_RAWB_TG1_EVENT_38 486 +#define CMDQ_EVENT_CAM_RAWB_CQ_EVENT_39 487 +#define CMDQ_EVENT_CAM_RAWC_TG1_EVENT_40 488 +#define CMDQ_EVENT_CAM_RAWC_CQ_EVENT_41 489 +#define CMDQ_EVENT_CAM_PAD_EVENT_42 490 +#define CMDQ_EVENT_CAM_SENINF13_EVENT_43 491 +#define CMDQ_EVENT_CAM_SENINF14_EVENT_44 492 + +/* event id is 9 bit */ +#define CMDQ_SYNC_TOKEN_MAX 0x3FF +#define CMDQ_SYNC_TOKEN_INVALID -1 + +/* end of hw event and begin of sw token */ +#define CMDQ_MAX_HW_EVENT 512 + +/* CMDQ sw tokens + * Following definitions are gce sw token which may use by clients + * event operation API. + * Note that token 512 to 639 may set secure + */ + +/* begin of GCE-D sw token */ +/* MML sw tokens */ +#define CMDQ_SYNC_TOKEN_MML_BUFA 661 +#define CMDQ_SYNC_TOKEN_MML_BUFB 662 +#define CMDQ_SYNC_TOKEN_MML_BUF_NEXT 663 +#define CMDQ_SYNC_TOKEN_MML_IR_MML_READY 664 +#define CMDQ_SYNC_TOKEN_MML_IR_DISP_READY 665 +#define CMDQ_SYNC_TOKEN_MML_MML_STOP 666 +#define CMDQ_SYNC_TOKEN_MML_PIPE0 667 +#define CMDQ_SYNC_TOKEN_MML_PIPE1 668 +#define CMDQ_SYNC_TOKEN_MML_PIPE1_NEXT 669 +#define CMDQ_SYNC_TOKEN_MML_APU_START 670 + +/* Config thread notify trigger thread */ +#define CMDQ_SYNC_TOKEN_CONFIG_DIRTY 640 +/* Trigger thread notify config thread */ +#define CMDQ_SYNC_TOKEN_STREAM_EOF 641 +/* Block Trigger thread until the ESD check finishes. */ +#define CMDQ_SYNC_TOKEN_ESD_EOF 642 +#define CMDQ_SYNC_TOKEN_STREAM_BLOCK 643 +/* check CABC setup finish */ +#define CMDQ_SYNC_TOKEN_CABC_EOF 644 + +/*VFP period token for Msync*/ +#define CMDQ_SYNC_TOKEN_VFP_PERIOD 645 +/* SW sync token for dual display */ +#define CMDQ_SYNC_TOKEN_CONFIG_DIRTY_1 694 +#define CMDQ_SYNC_TOKEN_STREAM_EOF_1 695 +#define CMDQ_SYNC_TOKEN_ESD_EOF_1 696 +#define CMDQ_SYNC_TOKEN_STREAM_BLOCK_1 697 +#define CMDQ_SYNC_TOKEN_CABC_EOF_1 698 + +/* GPR access tokens (for HW register backup) + * There are 15 32-bit GPR, 3 GPR form a set + * (64-bit for address, 32-bit for value) + * MUST NOT CHANGE, these tokens sync with MDP + */ +#define CMDQ_SYNC_TOKEN_GPR_SET_0 700 +#define CMDQ_SYNC_TOKEN_GPR_SET_1 701 +#define CMDQ_SYNC_TOKEN_GPR_SET_2 702 +#define CMDQ_SYNC_TOKEN_GPR_SET_3 703 +#define CMDQ_SYNC_TOKEN_GPR_SET_4 704 + +#define CMDQ_SYNC_TOKEN_TE_0 705 +#define CMDQ_SYNC_TOKEN_PREFETCH_TE_0 706 +#define CMDQ_SYNC_TOKEN_VIDLE_POWER_ON 707 +#define CMDQ_SYNC_TOKEN_CHECK_TRIGGER_MERGE 708 + +/* Resource lock event to control resource in GCE thread */ +#define CMDQ_SYNC_RESOURCE_WROT0 710 +#define CMDQ_SYNC_RESOURCE_WROT1 711 + +/* HW TRACE sw token */ +#define CMDQ_SYNC_TOKEN_HW_TRACE_WAIT 712 +#define CMDQ_SYNC_TOKEN_HW_TRACE_LOCK 713 + +/* SW sync token for dual display */ +#define CMDQ_SYNC_TOKEN_CONFIG_DIRTY_3 714 +#define CMDQ_SYNC_TOKEN_STREAM_EOF_3 715 +#define CMDQ_SYNC_TOKEN_ESD_EOF_3 716 +#define CMDQ_SYNC_TOKEN_STREAM_BLOCK_3 717 +#define CMDQ_SYNC_TOKEN_CABC_EOF_3 718 +/* end of GCE-D sw token */ + +/* begin of GCE-M sw token */ +/* IMGSYS_POOL */ +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_1 514 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_2 515 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_3 516 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_4 517 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_5 518 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_6 519 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_7 520 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_8 521 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_9 522 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_10 523 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_11 524 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_12 525 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_13 526 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_14 527 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_15 528 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_16 529 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_17 530 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_18 531 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_19 532 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_20 533 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_21 534 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_22 535 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_23 536 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_24 537 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_25 538 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_26 539 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_27 540 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_28 541 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_29 542 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_30 543 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_31 544 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_32 545 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_33 546 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_34 547 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_35 548 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_36 549 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_37 550 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_38 551 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_39 552 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_40 553 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_41 554 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_42 555 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_43 556 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_44 557 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_45 558 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_46 559 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_47 560 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_48 561 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_49 562 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_50 563 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_51 564 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_52 565 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_53 566 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_54 567 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_55 568 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_56 569 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_57 570 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_58 571 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_59 572 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_60 573 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_61 574 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_62 575 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_63 576 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_64 577 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_65 578 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_66 579 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_67 580 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_68 581 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_69 582 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_70 583 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_71 584 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_72 585 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_73 586 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_74 587 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_75 588 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_76 589 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_77 590 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_78 591 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_79 592 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_80 593 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_81 594 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_82 595 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_83 596 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_84 597 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_85 598 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_86 599 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_87 600 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_88 601 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_89 602 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_90 603 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_91 604 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_92 605 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_93 606 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_94 607 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_95 608 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_96 609 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_97 610 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_98 611 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_99 612 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_100 613 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_101 614 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_102 615 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_103 616 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_104 617 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_105 618 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_106 619 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_107 620 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_108 621 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_109 622 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_110 623 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_111 624 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_112 625 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_113 626 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_114 627 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_115 628 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_116 629 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_117 630 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_118 631 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_119 632 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_120 633 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_121 634 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_122 635 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_123 636 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_124 637 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_125 638 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_126 639 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_127 640 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_128 641 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_129 642 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_130 643 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_131 644 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_132 645 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_133 646 + +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_134 694 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_135 695 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_136 696 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_137 697 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_138 698 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_139 699 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_140 700 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_141 701 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_142 702 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_143 703 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_144 704 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_145 705 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_146 706 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_147 707 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_148 708 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_149 709 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_150 710 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_151 711 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_152 714 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_153 715 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_154 716 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_155 717 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_156 718 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_157 719 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_158 720 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_159 721 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_160 722 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_161 723 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_162 724 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_163 725 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_164 726 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_165 727 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_166 728 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_167 729 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_168 730 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_169 731 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_170 732 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_171 733 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_172 734 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_173 735 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_174 736 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_175 737 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_176 738 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_177 739 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_178 740 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_179 741 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_180 742 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_181 743 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_182 744 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_183 745 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_184 746 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_185 747 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_186 748 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_187 749 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_188 750 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_189 751 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_190 752 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_191 753 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_192 754 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_193 755 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_194 756 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_195 757 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_196 758 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_197 759 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_198 760 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_199 761 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_200 762 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_201 763 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_202 764 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_203 765 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_204 766 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_205 767 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_206 784 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_207 785 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_208 786 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_209 787 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_210 788 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_211 789 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_212 790 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_213 791 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_214 792 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_215 793 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_216 794 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_217 795 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_218 796 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_219 797 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_220 798 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_221 799 + +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_222 833 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_223 834 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_224 835 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_225 836 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_226 837 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_227 838 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_228 839 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_229 840 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_230 841 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_231 842 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_232 843 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_233 844 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_234 845 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_235 846 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_236 847 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_237 848 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_238 849 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_239 850 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_240 851 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_241 852 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_242 853 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_243 854 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_244 855 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_245 856 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_246 857 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_247 858 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_248 859 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_249 860 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_250 861 + +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_251 901 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_252 902 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_253 903 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_254 904 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_255 905 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_256 906 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_257 907 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_258 908 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_259 909 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_260 910 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_261 911 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_262 912 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_263 913 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_264 914 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_265 915 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_266 916 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_267 917 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_268 918 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_269 919 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_270 920 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_271 921 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_272 922 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_273 923 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_274 924 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_275 925 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_276 926 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_277 927 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_278 928 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_279 929 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_280 930 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_281 931 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_282 932 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_283 933 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_284 934 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_285 935 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_286 936 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_287 937 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_288 938 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_289 939 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_290 940 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_291 941 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_292 942 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_293 943 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_294 944 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_295 945 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_296 946 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_297 947 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_298 948 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_299 949 +#define CMDQ_SYNC_TOKEN_IMGSYS_POOL_300 950 + +/* ISP sw token */ +#define CMDQ_SYNC_TOKEN_MSS 951 +#define CMDQ_SYNC_TOKEN_MSF 952 +/* end of GCE-M sw token */ + +/* begin of common sw token */ + +/* VENC sw token */ +#define CMDQ_SYNC_TOKEN_HISTOGRAM_VENC_WAIT 689 +#define CMDQ_SYNC_TOKEN_HISTOGRAM_VENC_SET 690 + +/* Notify normal CMDQ there are some secure task done + * MUST NOT CHANGE, this token sync with secure world + */ +#define CMDQ_SYNC_SECURE_THR_EOF 647 + +/* CMDQ use sw token */ +#define CMDQ_SYNC_TOKEN_USER_0 649 +#define CMDQ_SYNC_TOKEN_USER_1 650 +#define CMDQ_SYNC_TOKEN_POLL_MONITOR 651 +#define CMDQ_SYNC_TOKEN_TPR_LOCK 652 + +/* TZMP sw token */ +#define CMDQ_SYNC_TOKEN_TZMP_DISP_WAIT 653 +#define CMDQ_SYNC_TOKEN_TZMP_DISP_SET 654 +#define CMDQ_SYNC_TOKEN_TZMP_ISP_WAIT 655 +#define CMDQ_SYNC_TOKEN_TZMP_ISP_SET 656 +#define CMDQ_SYNC_TOKEN_TZMP_AIE_WAIT 657 +#define CMDQ_SYNC_TOKEN_TZMP_AIE_SET 658 +#define CMDQ_SYNC_TOKEN_TZMP_ADL_WAIT 659 +#define CMDQ_SYNC_TOKEN_TZMP_ADL_SET 660 + +/* PREBUILT sw token */ +#define CMDQ_SYNC_TOKEN_PREBUILT_MDP_LOCK 682 +#define CMDQ_SYNC_TOKEN_PREBUILT_MML_LOCK 685 +#define CMDQ_SYNC_TOKEN_PREBUILT_VFMT_LOCK 688 +#define CMDQ_SYNC_TOKEN_PREBUILT_DISP_LOCK 691 +#define CMDQ_SYNC_TOKEN_DISP_VA_START 692 +#define CMDQ_SYNC_TOKEN_DISP_VA_END 693 + +/* event for gpr timer, used in sleep and poll with timeout */ +#define CMDQ_TOKEN_GPR_TIMER_R0 994 +#define CMDQ_TOKEN_GPR_TIMER_R1 995 +#define CMDQ_TOKEN_GPR_TIMER_R2 996 +#define CMDQ_TOKEN_GPR_TIMER_R3 997 +#define CMDQ_TOKEN_GPR_TIMER_R4 998 +#define CMDQ_TOKEN_GPR_TIMER_R5 999 +#define CMDQ_TOKEN_GPR_TIMER_R6 1000 +#define CMDQ_TOKEN_GPR_TIMER_R7 1001 +#define CMDQ_TOKEN_GPR_TIMER_R8 1002 +#define CMDQ_TOKEN_GPR_TIMER_R9 1003 +#define CMDQ_TOKEN_GPR_TIMER_R10 1004 +#define CMDQ_TOKEN_GPR_TIMER_R11 1005 +#define CMDQ_TOKEN_GPR_TIMER_R12 1006 +#define CMDQ_TOKEN_GPR_TIMER_R13 1007 +#define CMDQ_TOKEN_GPR_TIMER_R14 1008 +#define CMDQ_TOKEN_GPR_TIMER_R15 1009 + +#define CMDQ_EVENT_MAX 0x3FF +/* end of common sw token */ +/* CMDQ sw tokens END */ + +#endif diff --git a/include/dt-bindings/memory/mediatek,mt8366-memory-port.h b/include/dt-bindings/memory/mediatek,mt8366-memory-port.h new file mode 100644 index 00000000000..f8d437902e3 --- /dev/null +++ b/include/dt-bindings/memory/mediatek,mt8366-memory-port.h @@ -0,0 +1,263 @@ +/* SPDX-License-Identifier: GPL-2.0-only OR MIT */ +/* + * Copyright (c) 2026 MediaTek Inc. + * Author: Friday Yang + */ + +#ifndef _DT_BINDINGS_MEMORY_MEDIATEK_MT8366_MEMORY_PORT_H_ +#define _DT_BINDINGS_MEMORY_MEDIATEK_MT8366_MEMORY_PORT_H_ + +#include + +#define SMI_L0_ID 0 +#define SMI_L1_ID 1 +#define SMI_L2_ID 2 +#define SMI_L3_ID 3 +#define SMI_L4_ID 4 +#define SMI_L7_ID 7 +#define SMI_L8_ID 8 +#define SMI_L9_ID 9 +#define SMI_L11_ID 11 +#define SMI_L13_ID 13 +#define SMI_L14_ID 14 +#define SMI_L16_ID 16 +#define SMI_L20_ID 20 +#define SMI_L22_ID 22 + +/* Fake LARB ID for APU */ +#define APU_L0_ID 0 + +/* + * MM IOMMU: + * domain 0: DISP: larb0, larb1, MDP: larb2, + * domain 1: VDEC: larb4 VENC: larb7 + * EPD: larb3, larb8 + * domain 2: IMG: larb9, larb11 + * IPE: larb20 + * CAM: larb13, larb14, larb16(larb16a) + */ + +/* Larb0 -- disp*/ +#define M4U_L0_P0_DISP_OVL0_4L_RDMA0 MTK_M4U_ID(SMI_L0_ID, 0) +#define M4U_L0_P1_DISP_RDMA0 MTK_M4U_ID(SMI_L0_ID, 1) +#define M4U_L0_P2_DISP_WDMA0 MTK_M4U_ID(SMI_L0_ID, 2) +#define M4U_L0_P3_DISP_FAKE_ENG0 MTK_M4U_ID(SMI_L0_ID, 3) + +/* Larb1 -- disp*/ +#define M4U_L1_P0_DISP_OVL1_4L_RDMA0 MTK_M4U_ID(SMI_L1_ID, 0) +#define M4U_L1_P1_DISP_RDMA1 MTK_M4U_ID(SMI_L1_ID, 1) +#define M4U_L1_P2_DISP_FAKE_ENG1 MTK_M4U_ID(SMI_L1_ID, 2) + +/* Larb2 -- mmlsys(mdp)*/ +#define M4U_L2_P0_MDP_COLOR_IP_RDMA MTK_M4U_ID(SMI_L2_ID, 0) +#define M4U_L2_P1_MDP_RDMA0 MTK_M4U_ID(SMI_L2_ID, 1) +#define M4U_L2_P2_MDP_RDMA1 MTK_M4U_ID(SMI_L2_ID, 2) +#define M4U_L2_P3_MDP_WROT0 MTK_M4U_ID(SMI_L2_ID, 3) +#define M4U_L2_P4_MDP_WROT1 MTK_M4U_ID(SMI_L2_ID, 4) +#define M4U_L2_P5_MDP_RDMA2 MTK_M4U_ID(SMI_L2_ID, 5) +#define M4U_L2_P6_MDP_WROT2 MTK_M4U_ID(SMI_L2_ID, 6) +#define M4U_L2_P7_MDP_WROT3 MTK_M4U_ID(SMI_L2_ID, 7) +#define M4U_L2_P8_DISP_FAKE0 MTK_M4U_ID(SMI_L2_ID, 8) + +/* Larb3 --EPD*/ +#define M4U_L3_P0_EPD_WF_GREQ0 MTK_M4U_ID(SMI_L3_ID, 0) +#define M4U_L3_P1_EPD_WF_GREQ2 MTK_M4U_ID(SMI_L3_ID, 1) +#define M4U_L3_P2_EPD_WF_GREQ4 MTK_M4U_ID(SMI_L3_ID, 2) +#define M4U_L3_P3_EPD_WF_GREQ6 MTK_M4U_ID(SMI_L3_ID, 3) +#define M4U_L3_P4_EPD_WF_GREQ8 MTK_M4U_ID(SMI_L3_ID, 4) +#define M4U_L3_P5_EPD_WF_GREQ10 MTK_M4U_ID(SMI_L3_ID, 5) +#define M4U_L3_P6_EPD_WF_GREQ12 MTK_M4U_ID(SMI_L3_ID, 6) +#define M4U_L3_P7_EPD_WF_GREQ14 MTK_M4U_ID(SMI_L3_ID, 7) +#define M4U_L3_P8_EPD_WF_LUT_RDMA0_GREQ MTK_M4U_ID(SMI_L3_ID, 8) +#define M4U_L3_P9_EPD_WF_LUT_RDMA1_GREQ MTK_M4U_ID(SMI_L3_ID, 9) +#define M4U_L3_P10_EPD_IMG_BUF_RDMA_GREQ MTK_M4U_ID(SMI_L3_ID, 10) +#define M4U_L3_P11_EPD_DISP_FAKE_ENG_GREQ MTK_M4U_ID(SMI_L3_ID, 11) + +/* Larb4 -- vdec*/ +#define M4U_L4_P0_HW_VDEC_MC_EXT MTK_M4U_ID(SMI_L4_ID, 0) +#define M4U_L4_P1_HW_VDEC_PP_EXT MTK_M4U_ID(SMI_L4_ID, 1) +#define M4U_L4_P2_HW_VDEC_PRED_RD_EXT MTK_M4U_ID(SMI_L4_ID, 2) +#define M4U_L4_P3_HW_VDEC_PRED_WR_EXT MTK_M4U_ID(SMI_L4_ID, 3) +#define M4U_L4_P4_HW_VDEC_PPWRAP_EXT MTK_M4U_ID(SMI_L4_ID, 4) +#define M4U_L4_P5_HW_VDEC_TILE_EXT MTK_M4U_ID(SMI_L4_ID, 5) +#define M4U_L4_P6_HW_VDEC_VLD_EXT MTK_M4U_ID(SMI_L4_ID, 6) +#define M4U_L4_P7_HW_VDEC_VLD2_EXT MTK_M4U_ID(SMI_L4_ID, 7) +#define M4U_L4_P8_HW_VDEC_AVC_MV_EXT MTK_M4U_ID(SMI_L4_ID, 8) +#define M4U_L4_P9_HW_VDEC_RG_CTRL_DMA_EXT MTK_M4U_ID(SMI_L4_ID, 9) + +/* Larb5 --dummy*/ + +/* Larb6 --dummy*/ + +/* Larb7 -- venc*/ +#define M4U_L7_P0_VENC_RCPU MTK_M4U_ID(SMI_L7_ID, 0) +#define M4U_L7_P1_VENC_REC MTK_M4U_ID(SMI_L7_ID, 1) +#define M4U_L7_P2_VENC_BSDMA MTK_M4U_ID(SMI_L7_ID, 2) +#define M4U_L7_P3_VENC_SV_COMV MTK_M4U_ID(SMI_L7_ID, 3) +#define M4U_L7_P4_VENC_RD_COMV MTK_M4U_ID(SMI_L7_ID, 4) +#define M4U_L7_P5_VENC_CUR_LUMA MTK_M4U_ID(SMI_L7_ID, 5) +#define M4U_L7_P6_VENC_CUR_CHROMA MTK_M4U_ID(SMI_L7_ID, 6) +#define M4U_L7_P7_VENC_REF_LUMA MTK_M4U_ID(SMI_L7_ID, 7) +#define M4U_L7_P8_VENC_REF_CHROMA MTK_M4U_ID(SMI_L7_ID, 8) +#define M4U_L7_P9_JPGENC_Y_RDMA MTK_M4U_ID(SMI_L7_ID, 9) +#define M4U_L7_P10_JPGENC_C_RDMA MTK_M4U_ID(SMI_L7_ID, 10) +#define M4U_L7_P11_JPGENC_Q_RDMA MTK_M4U_ID(SMI_L7_ID, 11) +#define M4U_L7_P12_JPGENC_BSDMA MTK_M4U_ID(SMI_L7_ID, 12) +#define M4U_L7_P13_JPGDEC_WDMA MTK_M4U_ID(SMI_L7_ID, 13) +#define M4U_L7_P14_JPGDEC_BSDMA MTK_M4U_ID(SMI_L7_ID, 14) +#define M4U_L7_P15_JPGDEC_HUFF_OFFSET MTK_M4U_ID(SMI_L7_ID, 15) + +/* Larb8 -- EPD*/ +#define M4U_L8_P0_EPD_WF_GREQ1 MTK_M4U_ID(SMI_L8_ID, 0) +#define M4U_L8_P1_EPD_WF_GREQ3 MTK_M4U_ID(SMI_L8_ID, 1) +#define M4U_L8_P2_EPD_WF_GREQ5 MTK_M4U_ID(SMI_L8_ID, 2) +#define M4U_L8_P3_EPD_WF_GREQ7 MTK_M4U_ID(SMI_L8_ID, 3) +#define M4U_L8_P4_EPD_WF_GREQ9 MTK_M4U_ID(SMI_L8_ID, 4) +#define M4U_L8_P5_EPD_WF_GREQ11 MTK_M4U_ID(SMI_L8_ID, 5) +#define M4U_L8_P6_EPD_WF_GREQ13 MTK_M4U_ID(SMI_L8_ID, 6) +#define M4U_L8_P7_EPD_WF_GREQ15 MTK_M4U_ID(SMI_L8_ID, 7) +#define M4U_L8_P8_EPD_WF_LUT_RDMA2_GREQ MTK_M4U_ID(SMI_L8_ID, 8) +#define M4U_L8_P9_EPD_WF_LUT_RDMA3_GREQ MTK_M4U_ID(SMI_L8_ID, 9) +#define M4U_L8_P10_EPD_WB_BUF_RDMA_GREQ MTK_M4U_ID(SMI_L8_ID, 10) +#define M4U_L8_P11_EPD_WB_BUF_WDMA_GREQ MTK_M4U_ID(SMI_L8_ID, 11) +#define M4U_L8_P12_EPD_VCOM_GREQ MTK_M4U_ID(SMI_L8_ID, 12) +#define M4U_L8_P13_EPD_DISPLAY_RDMA0_GREQ MTK_M4U_ID(SMI_L8_ID, 13) +#define M4U_L8_P14_EPD_DISPLAY_FAKE_ENG_GREQ MTK_M4U_ID(SMI_L8_ID, 14) + +/* Larb9 --imgsys1*/ +#define M4U_L9_P0_IMGI_D1 MTK_M4U_ID(SMI_L9_ID, 0) +#define M4U_L9_P1_IMGBI_D1 MTK_M4U_ID(SMI_L9_ID, 1) +#define M4U_L9_P2_DMGI_D1 MTK_M4U_ID(SMI_L9_ID, 2) +#define M4U_L9_P3_DEPI_D1 MTK_M4U_ID(SMI_L9_ID, 3) +#define M4U_L9_P4_LCE_D1 MTK_M4U_ID(SMI_L9_ID, 4) +#define M4U_L9_P5_SMTI_D1 MTK_M4U_ID(SMI_L9_ID, 5) +#define M4U_L9_P6_SMTO_D2 MTK_M4U_ID(SMI_L9_ID, 6) +#define M4U_L9_P7_SMTO_D1 MTK_M4U_ID(SMI_L9_ID, 7) +#define M4U_L9_P8_CRZO_D1 MTK_M4U_ID(SMI_L9_ID, 8) +#define M4U_L9_P9_IMG3O_D1 MTK_M4U_ID(SMI_L9_ID, 9) +#define M4U_L9_P10_VIPI_D1 MTK_M4U_ID(SMI_L9_ID, 10) +#define M4U_L9_P11_SMTI_D5 MTK_M4U_ID(SMI_L9_ID, 11) +#define M4U_L9_P12_TIMGO_D1 MTK_M4U_ID(SMI_L9_ID, 12) +#define M4U_L9_P13_UFBC_W0 MTK_M4U_ID(SMI_L9_ID, 13) +#define M4U_L9_P14_UFBC_R0 MTK_M4U_ID(SMI_L9_ID, 14) +#define M4U_L9_P15_WPE_RDMA1 MTK_M4U_ID(SMI_L9_ID, 15) +#define M4U_L9_P16_WPE_RDMA0 MTK_M4U_ID(SMI_L9_ID, 16) +#define M4U_L9_P17_WPE_WDMA MTK_M4U_ID(SMI_L9_ID, 17) +#define M4U_L9_P18_MFB_RDMA0 MTK_M4U_ID(SMI_L9_ID, 18) +#define M4U_L9_P19_MFB_RDMA1 MTK_M4U_ID(SMI_L9_ID, 19) +#define M4U_L9_P20_MFB_RDMA2 MTK_M4U_ID(SMI_L9_ID, 20) +#define M4U_L9_P21_MFB_RDMA3 MTK_M4U_ID(SMI_L9_ID, 21) +#define M4U_L9_P22_MFB_RDMA4 MTK_M4U_ID(SMI_L9_ID, 22) +#define M4U_L9_P23_MFB_RDMA5 MTK_M4U_ID(SMI_L9_ID, 23) +#define M4U_L9_P24_MFB_WDMA0 MTK_M4U_ID(SMI_L9_ID, 24) +#define M4U_L9_P25_MFB_WDMA1 MTK_M4U_ID(SMI_L9_ID, 25) +#define M4U_L9_P26_RESERVE6 MTK_M4U_ID(SMI_L9_ID, 26) +#define M4U_L9_P27_RESERVE7 MTK_M4U_ID(SMI_L9_ID, 27) +#define M4U_L9_P28_RESERVE8 MTK_M4U_ID(SMI_L9_ID, 28) + +/* Larb10 -- dummy*/ + +/* Larb11 -- imgsys2*/ +#define M4U_L11_P0_IMGI_D1 MTK_M4U_ID(SMI_L11_ID, 0) +#define M4U_L11_P1_IMGBI_D1 MTK_M4U_ID(SMI_L11_ID, 1) +#define M4U_L11_P2_DMGI_D1 MTK_M4U_ID(SMI_L11_ID, 2) +#define M4U_L11_P3_DEPI_D1 MTK_M4U_ID(SMI_L11_ID, 3) +#define M4U_L11_P4_LCE_D1 MTK_M4U_ID(SMI_L11_ID, 4) +#define M4U_L11_P5_SMTI_D1 MTK_M4U_ID(SMI_L11_ID, 5) +#define M4U_L11_P6_SMTO_D2 MTK_M4U_ID(SMI_L11_ID, 6) +#define M4U_L11_P7_SMTO_D1 MTK_M4U_ID(SMI_L11_ID, 7) +#define M4U_L11_P8_CRZO_D1 MTK_M4U_ID(SMI_L11_ID, 8) +#define M4U_L11_P9_IMG3O_D1 MTK_M4U_ID(SMI_L11_ID, 9) +#define M4U_L11_P10_VIPI_D1 MTK_M4U_ID(SMI_L11_ID, 10) +#define M4U_L11_P11_SMTI_D5 MTK_M4U_ID(SMI_L11_ID, 11) +#define M4U_L11_P12_TIMGO_D1 MTK_M4U_ID(SMI_L11_ID, 12) +#define M4U_L11_P13_UFBC_W0 MTK_M4U_ID(SMI_L11_ID, 13) +#define M4U_L11_P14_UFBC_R0 MTK_M4U_ID(SMI_L11_ID, 14) +#define M4U_L11_P15_WPE_RDMA1 MTK_M4U_ID(SMI_L11_ID, 15) +#define M4U_L11_P16_WPE_RDMA0 MTK_M4U_ID(SMI_L11_ID, 16) +#define M4U_L11_P17_WPE_WDMA MTK_M4U_ID(SMI_L11_ID, 17) +#define M4U_L11_P18_MFB_RDMA0 MTK_M4U_ID(SMI_L11_ID, 18) +#define M4U_L11_P19_MFB_RDMA1 MTK_M4U_ID(SMI_L11_ID, 19) +#define M4U_L11_P20_MFB_RDMA2 MTK_M4U_ID(SMI_L11_ID, 20) +#define M4U_L11_P21_MFB_RDMA3 MTK_M4U_ID(SMI_L11_ID, 21) +#define M4U_L11_P22_MFB_RDMA4 MTK_M4U_ID(SMI_L11_ID, 22) +#define M4U_L11_P23_MFB_RDMA5 MTK_M4U_ID(SMI_L11_ID, 23) +#define M4U_L11_P24_MFB_WDMA0 MTK_M4U_ID(SMI_L11_ID, 24) +#define M4U_L11_P25_MFB_WDMA1 MTK_M4U_ID(SMI_L11_ID, 25) +#define M4U_L11_P26_RESERVE6 MTK_M4U_ID(SMI_L11_ID, 26) +#define M4U_L11_P27_RESERVE7 MTK_M4U_ID(SMI_L11_ID, 27) +#define M4U_L11_P28_RESERVE8 MTK_M4U_ID(SMI_L11_ID, 28) + +/* Larb12 -- dummy*/ + +/* Larb13 -- cam*/ +#define M4U_L13_P0_MRAWI MTK_M4U_ID(SMI_L13_ID, 0) +#define M4U_L13_P1_MRAWO_0 MTK_M4U_ID(SMI_L13_ID, 1) +#define M4U_L13_P2_MRAWO_1 MTK_M4U_ID(SMI_L13_ID, 2) +#define M4U_L13_P3_CAMSV_1 MTK_M4U_ID(SMI_L13_ID, 3) +#define M4U_L13_P4_CAMSV_2 MTK_M4U_ID(SMI_L13_ID, 4) +#define M4U_L13_P5_CAMSV_3 MTK_M4U_ID(SMI_L13_ID, 5) +#define M4U_L13_P6_CAMSV_4 MTK_M4U_ID(SMI_L13_ID, 6) +#define M4U_L13_P7_CAMSV_5 MTK_M4U_ID(SMI_L13_ID, 7) +#define M4U_L13_P8_CAMSV_6 MTK_M4U_ID(SMI_L13_ID, 8) +#define M4U_L13_P9_CCUI MTK_M4U_ID(SMI_L13_ID, 9) +#define M4U_L13_P10_CCUO MTK_M4U_ID(SMI_L13_ID, 10) +#define M4U_L13_P11_FAKE MTK_M4U_ID(SMI_L13_ID, 11) +#define M4U_L13_P12_PDAI_0 MTK_M4U_ID(SMI_L13_ID, 12) +#define M4U_L13_P13_PDAI_1 MTK_M4U_ID(SMI_L13_ID, 13) +#define M4U_L13_P14_PDAO MTK_M4U_ID(SMI_L13_ID, 14) + +/* Larb14 -- cam */ +#define M4U_L14_P0_RESERVE MTK_M4U_ID(SMI_L14_ID, 0) +#define M4U_L14_P1_RESERVE MTK_M4U_ID(SMI_L14_ID, 1) +#define M4U_L14_P2_RESERVE MTK_M4U_ID(SMI_L14_ID, 2) +#define M4U_L14_P3_CAMSV_0 MTK_M4U_ID(SMI_L14_ID, 3) +#define M4U_L14_P4_CCUI MTK_M4U_ID(SMI_L14_ID, 4) +#define M4U_L14_P5_CCUO MTK_M4U_ID(SMI_L14_ID, 5) +#define M4U_L14_P6_CAMSV_7 MTK_M4U_ID(SMI_L14_ID, 6) +#define M4U_L14_P7_CAMSV_8 MTK_M4U_ID(SMI_L14_ID, 7) +#define M4U_L14_P8_CAMSV_9 MTK_M4U_ID(SMI_L14_ID, 8) +#define M4U_L14_P9_CAMSV_10 MTK_M4U_ID(SMI_L14_ID, 9) + +/* Larb15 -- dummy*/ + +/* Larb16 -- cam*/ +#define M4U_L16_P0_IMGO_R1_A MTK_M4U_ID(SMI_L16_ID, 0) +#define M4U_L16_P1_RRZO_R1_A MTK_M4U_ID(SMI_L16_ID, 1) +#define M4U_L16_P2_CQI_R1_A MTK_M4U_ID(SMI_L16_ID, 2) +#define M4U_L16_P3_BPCI_R1_A MTK_M4U_ID(SMI_L16_ID, 3) +#define M4U_L16_P4_YUVO_R1_A MTK_M4U_ID(SMI_L16_ID, 4) +#define M4U_L16_P5_UFDI_R2_A MTK_M4U_ID(SMI_L16_ID, 5) +#define M4U_L16_P6_RAWI_R2_A MTK_M4U_ID(SMI_L16_ID, 6) +#define M4U_L16_P7_RAWI_R3_A MTK_M4U_ID(SMI_L16_ID, 7) +#define M4U_L16_P8_AAO_R1_A MTK_M4U_ID(SMI_L16_ID, 8) +#define M4U_L16_P9_AFO_R1_A MTK_M4U_ID(SMI_L16_ID, 9) +#define M4U_L16_P10_FLKO_R1_A MTK_M4U_ID(SMI_L16_ID, 10) +#define M4U_L16_P11_LCESO_R1_A MTK_M4U_ID(SMI_L16_ID, 11) +#define M4U_L16_P12_CRZO_R1_A MTK_M4U_ID(SMI_L16_ID, 12) +#define M4U_L16_P13_LTMSO_R1_A MTK_M4U_ID(SMI_L16_ID, 13) +#define M4U_L16_P14_RSSO_R1_A MTK_M4U_ID(SMI_L16_ID, 14) +#define M4U_L16_P15_AAHO_R1_A MTK_M4U_ID(SMI_L16_ID, 15) +#define M4U_L16_P16_LSCI_R1_A MTK_M4U_ID(SMI_L16_ID, 16) + +/* Larb17 -- cam tie value */ + +/* Larb19 -- ipesys tie value */ + +/* Larb20 -- ipesys*/ +#define M4U_L20_P0_FDVT_RDA_0 MTK_M4U_ID(SMI_L20_ID, 0) +#define M4U_L20_P1_FDVT_RDB_0 MTK_M4U_ID(SMI_L20_ID, 1) +#define M4U_L20_P2_FDVT_WRA_0 MTK_M4U_ID(SMI_L20_ID, 2) +#define M4U_L20_P3_FDVT_WRB_0 MTK_M4U_ID(SMI_L20_ID, 3) +#define M4U_L20_P4_RSC_RDMA MTK_M4U_ID(SMI_L20_ID, 4) +#define M4U_L20_P5_RSC_WDMA MTK_M4U_ID(SMI_L20_ID, 5) + +/* fake larb & port for svp and dual svp and wfd */ +#define M4U_PORT_SVP_HEAP MTK_M4U_ID(SMI_L22_ID, 0) +#define M4U_PORT_DUAL_SVP_HEAP MTK_M4U_ID(SMI_L22_ID, 1) +#define M4U_PORT_WFD_HEAP MTK_M4U_ID(SMI_L22_ID, 2) + +/* fake larb0 for apu */ +#define M4U_LARB_APU SMI_L22_ID + +#endif From patchwork Wed Sep 2 19:42:16 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: David Lechner X-Patchwork-Id: 2296991 X-Patchwork-Delegate: dlechner@baylibre.com Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=lists.u-boot-project.org header.i=@lists.u-boot-project.org header.a=rsa-sha256 header.s=default header.b=Tn8TDvx0; dkim=pass (2048-bit key; secure) header.d=baylibre.com header.i=@baylibre.com header.a=rsa-sha256 header.s=google header.b=Zf9j1zuc; dkim-atps=neutral Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=lists.u-boot-project.org (client-ip=2605:bc80:3010::138; helo=smtp1.osuosl.org; envelope-from=u-boot-bounces@lists.u-boot-project.org; receiver=patchwork.ozlabs.org) Received: from smtp1.osuosl.org (smtp1.osuosl.org [IPv6:2605:bc80:3010::138]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange x25519 server-signature ECDSA (secp384r1) server-digest SHA384) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4hZtSD4ZScz1y1C for ; Thu, 03 Sep 2026 05:43:08 +1000 (AEST) Received: from localhost (localhost [127.0.0.1]) by smtp1.osuosl.org (Postfix) with ESMTP id 9B93980EF4; Wed, 2 Sep 2026 19:43:06 +0000 (UTC) X-Virus-Scanned: amavis at osuosl.org Received: from smtp1.osuosl.org ([127.0.0.1]) by localhost (smtp1.osuosl.org [127.0.0.1]) (amavis, port 10024) with ESMTP id bqOJuNcYbMpq; Wed, 2 Sep 2026 19:43:05 +0000 (UTC) ARC-Filter: OpenARC Filter v1.3.0 smtp1.osuosl.org 1DC1D80EDC Authentication-Results: smtp1.osuosl.org; arc=pass header.oldest-pass=0 smtp.remote-ip=140.211.166.142 ARC-Seal: i=2; d=osuosl.org; s=arc; a=rsa-sha256; cv=pass; t=1788378185; b=cQ3+SNAnB29d207Zij1g+r8xmvWoVZAEr1sPlHZGAM/5hegMa5Fg7dtHb2H4EKWCYd7Q aW5fvUeWkZCw41idCdKstqfDaZncJTnExke6NG+nh71jU9GdDFN/7OSqrQQ7hgzPdCsOI hfs3i0WdD0pXNx6B1MFCGoqw4hbJMmVw5XZHJ3JjNd1kJXnMJyleBgpMziONhhnB0anLg KimwUThAaXLFlNXCM8Mib1s1ZbPyDVrbLtOOtg7SrJlLD4SSIy9v+oCnmB87izxGyC4ez YheIWKAkQ0JUjaAyRsbLtVCZ9oS8CM+5o3VnAJ2Syof8c+Ix9W0U5umdqDy6iQDD9YQ== ARC-Message-Signature: i=2; d=osuosl.org; s=arc; a=rsa-sha256; c=relaxed/relaxed; t=1788378185; h=X-Comment:DKIM-Signature:X-Original-To:Delivered-To:Received: Received:X-Virus-Scanned:X-Spam-Flag:X-Spam-Score:X-Spam-Level: X-Spam-Status:Received:ARC-Filter:Received-SPF:Received:Received: DKIM-Signature:X-Google-DKIM-Signature:X-Gm-Message-State:X-Gm-Gg: X-Received:Received:From:Date:Subject:MIME-Version:Content-Type: Content-Transfer-Encoding:Message-Id:References:In-Reply-To:To:Cc: X-Mailer:X-Developer-Signature:X-Developer-Key:X-BeenThere: X-Mailman-Version:Precedence:List-Id:List-Unsubscribe:List-Archive: List-Post:List-Help:List-Subscribe:Errors-To; bh=RbojSCkN2gvUN8mn4UQRbJrSsinVmpY0DLpVt+t9Tl8=; b=kZbfzhJU5wg6HGIF/2zamD/tYI+CB4VsFdnSIBAEgjszBxGUfIZq9bOGP2bM/h5lTASR 4c8Nq6WQrBrBqsO+SNj8tqlrqw6nntJl4KT8Q9rSKok4c0lVoPcGyLVAcTyC4Wryfg0Lr pMjfkC5qOzuB2acOtVcMxvdEmTDxYiZFvrUhCqLCrEXeNNSdraJJVG0QJp/GWgDqVtwNg gxyTmVo/P/reNRtA4BF2Sv7SgHfbC4o833ziGh0o15ftjWJHOpj3Iww6XInVC1ssCCh9E 3+gg07X0asUhywpWzm/txoFOQ4mQYTlO47UT/gtVgT2SxhOhqxIyiqTwnnzy7TLcKXA== ARC-Authentication-Results: i=2; smtp1.osuosl.org; arc=pass header.oldest-pass=0 smtp.remote-ip=140.211.166.142 X-Comment: SPF check N/A for local connections - client-ip=140.211.166.142; helo=lists1.osuosl.org; envelope-from=u-boot-bounces@lists.u-boot-project.org; receiver= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=lists.u-boot-project.org; s=default; t=1788378185; bh=RbojSCkN2gvUN8mn4UQRbJrSsinVmpY0DLpVt+t9Tl8=; h=From:Date:Subject:References:In-Reply-To:To:Cc:List-Id: List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe: From; b=Tn8TDvx0Fz2RRsPGeENPx0NfzI19UZ3yK1l6EShGUBKaYpriw+KgWpGclb1soG8pw tEfYH2mTelCzx+4uIos9LJCkD4ebeY7cEojMLJQk3fU4rq68+qY3vioVVMGYhZuyH9 GDjXkZuf3Z+IfcTTUSq/d8rCC4l+qlq/tyWEocIKRXqUVYjMvig2bF1uGtwW3UA0Qx ebE2KJvMx+6dlY+bRXUAgUi3CZOvS/VoHoFDNiJSQMT9Tghyu6l9GB81m+VnYiz28u Ym9DKjBpyRN93jzr99P9lR6fXfuUTS6Q154GelbAu88XsNv+cXonL4M+D6iKG6Ibtm bYD5zXc2ahNKQ== Received: from lists1.osuosl.org (lists1.osuosl.org [140.211.166.142]) by smtp1.osuosl.org (Postfix) with ESMTP id 1DC1D80EDC; Wed, 2 Sep 2026 19:43:05 +0000 (UTC) X-Original-To: u-boot@lists.u-boot-project.org Delivered-To: u-boot@lists.u-boot-project.org Received: from smtp4.osuosl.org (smtp4.osuosl.org [IPv6:2605:bc80:3010::137]) by lists1.osuosl.org (Postfix) with ESMTP id 01D911D9 for ; Wed, 2 Sep 2026 19:43:03 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by smtp4.osuosl.org (Postfix) with ESMTP id E4F7240A55 for ; Wed, 2 Sep 2026 19:43:02 +0000 (UTC) X-Virus-Scanned: amavis at osuosl.org Received: from smtp4.osuosl.org ([127.0.0.1]) by localhost (smtp4.osuosl.org [127.0.0.1]) (amavis, port 10024) with ESMTP id YtQZoCff-c1b for ; Wed, 2 Sep 2026 19:43:02 +0000 (UTC) ARC-Filter: OpenARC Filter v1.3.0 smtp4.osuosl.org 36AD340806 Authentication-Results: smtp4.osuosl.org; arc=none smtp.remote-ip="2607:f8b0:4864:20::22b" ARC-Seal: i=1; d=osuosl.org; s=arc; a=rsa-sha256; cv=none; t=1788378182; b=cWQS5vwoJCpFgZRLzCjE+ygVHeDjpjR6i37gIRr/Wyz12Uh8wOszMITli5EPNxRayv9z 6QWqCoF+XxQtDec6Y1wOtPzLB4YRD2Bp31DXpMCRtoEZG2OYlDtR6B2HBS/s2rjufISTT wm+DZxPqV94IMedBJYwuLKAvU6X/TR/gGVzDOHuaY9HyFLiKq97emS4EaJ1XXQ/mtvbNz pWTQkQPPDs81McFW+n5I2wg/D7hIelq14ctq/1BwMRc862wd6I0A59tPU1DXSIjNXqt5t kJOePBaxNP90zgAk7cMBAHrepOyL/wXb9txm97MUQIyfIUtweElLugQZZtKrJX/NxoA== ARC-Message-Signature: i=1; d=osuosl.org; s=arc; a=rsa-sha256; c=relaxed/relaxed; t=1788378182; h=Received-SPF:Received:DKIM-Signature:X-Google-DKIM-Signature: X-Gm-Message-State:X-Gm-Gg:X-Received:Received:From:Date:Subject: MIME-Version:Content-Type:Content-Transfer-Encoding:Message-Id: References:In-Reply-To:To:Cc:X-Mailer:X-Developer-Signature: X-Developer-Key; bh=RbojSCkN2gvUN8mn4UQRbJrSsinVmpY0DLpVt+t9Tl8=; b=CXL6fAkDeWgWIRFhFY/FrglvJ/oO3ErYgxdemAaov4A4ZSRFEeQHRK0SXfmr1hiihEBQ oPOVQuwzJTMCfMRLwqEKN5Hj7HdNYSucGjD2hVHV5Uf4P2IIDmFjZ3tuY8+rCc8CiwSvu N/LdVBY9pdywlgaMfdWzBfuMqB8um69RpGR817viCip3CSXoIe6wnRBYbdHXAyLb+tAyn FRc6+iWxUbcPLB0mm901Ucbg+zHwXiiqQtwRIa4IjoLg1bB8ShC/TryLSmKznPUcIPb9N Fel6Vqyw5hRGnq6ZaWmPnnGTHUxfZ6gu6P6CNNoB0VC//pWuxLy7kGPDt4JXBv+56Gg== ARC-Authentication-Results: i=1; smtp4.osuosl.org; dmarc=none header.from=baylibre.com; dkim=pass header.d=baylibre.com header.i=@baylibre.com header.a=rsa-sha256 header.s=google header.b=Zf9j1zuc; arc=none smtp.remote-ip="2607:f8b0:4864:20::22b" Received-SPF: Pass (mailfrom) identity=mailfrom; client-ip=2607:f8b0:4864:20::22b; helo=mail-oi1-x22b.google.com; envelope-from=dlechner@baylibre.com; receiver= Authentication-Results: smtp4.osuosl.org; dmarc=none (p=none dis=none) header.from=baylibre.com Authentication-Results: smtp4.osuosl.org; dkim=pass (2048-bit key) header.d=baylibre.com header.i=@baylibre.com header.a=rsa-sha256 header.s=google header.b=Zf9j1zuc Received: from mail-oi1-x22b.google.com (mail-oi1-x22b.google.com [IPv6:2607:f8b0:4864:20::22b]) by smtp4.osuosl.org (Postfix) with ESMTPS id 36AD340806 for ; Wed, 2 Sep 2026 19:43:00 +0000 (UTC) Received: by mail-oi1-x22b.google.com with SMTP id 5614622812f47-4a40bcc8d69so1249661b6e.3 for ; Wed, 02 Sep 2026 12:43:00 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=baylibre.com; s=google; t=1788378180; x=1788982980; darn=lists.u-boot-project.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :content-type:mime-version:subject:date:from:from:to:cc:subject:date :message-id:reply-to:content-type; bh=RbojSCkN2gvUN8mn4UQRbJrSsinVmpY0DLpVt+t9Tl8=; b=Zf9j1zucRS7lEmpmh8r8gREcFzEFZOSCW3xcu/KKYNpQcqB2j6fQFfFcI1aV3VrU5e Ss40jbWfSaI9nE0DdmWPYPNq58B/ibAY4Dm9yoX2q8eLo0UGKZhqPV0dkm95MA6pDA9V v0sjix2mnWiUGO54KzpV4kgslBO/yp+fshagKxMeLv7udOGYZLqcg4OAw2PYSLIyHsM8 +malnHsQzGqtisR6OldDAWOYBwXbYT+A9lzumFVjZHEq/DwPtMs8MmHcoQdsDayxcsNN jdXLfZle5m+iyjcM1ywqS3IKSrjltiqrWyftenZq5++knhC58w6ElpyIuRVzZHLG+dXH zKeA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1788378180; x=1788982980; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :content-type:mime-version:subject:date:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=RbojSCkN2gvUN8mn4UQRbJrSsinVmpY0DLpVt+t9Tl8=; b=rPSxhryOBssTK+d5JPiCjOh0jWk6bfb4b2fsTkW5c8mnCCfAyRMcaYRVcWkQUiR4UN F1XsxIC7rHeSOh1H7YpNI5B7cRCdTsGSBHA6LHILEw3mzbB143tlePqI+y9JzA0/G6iB 87WcXx8Mxwqjz0HsbOc29xEBXnhKcuQiPC/1/ZSZAj0FJB8vIbuu0I4Hnwnpw15zl9Ls uLMsRAVYoJn2VQ7PrTx8dLwQLZoxneODb3yxDETx1UyzVw8d5xS4VVKIhnMsrgfBkvD8 gffzB5d/MKzfhMDL7C3saDnREWPmYfVFs9UpaA73TkJIx65t4Q0xYKCHFldAl8ADL2RO ZntA== X-Gm-Message-State: AFuF++nkChhN08GMn8d+aeVmO3zRw5FepC3Sr5iWVFbr90bX7WyMMfYk AqEeTUIEwHmVpYpTREPbLgVmUuhr0vwzz3Pj6tzo/xgru0HX2FK/bnBn6sjd1woVnFY= X-Gm-Gg: AR+sD10rz9d6uECEyFiV9ZPm+LGT+IWWrsbwNT3u7uuHp6tq9YsXFKdIKBFbTVDnkC+ pwd5oOLzp0pDWqKS6WumE3kSqR3n/CSZgkkeAthMcdGCX+t/+1rYdtgEcooFqTZHXacymhzaNxA 83H3rEpWG92CEQzD3OhXL38GhojAx/gEa1rS5EqgHrBxu+HjSLZD/nseTu7SVqGVV/VXjASNKLd 1Ffryc9MMORr3TalvUtomxl/FP6vW4/42DDPCDzeft7/RtxFLN0xbP8cbG+7Bl+tSK+JozxaekQ UORy/LfGipzvYKlXYnzforfyO2KY4+lQ+9RkJ1z+gGuTSJi1yBCvxLFG1dDWNMWMaQVrNiNsKZC 8UbYfUAei4lP2W+qu0YhYpM7DFBQ9giSi5cSlfUitnk6EhCWDoUx4h9jtHc3DTRpfem3MlECzOQ SKQedqE+P+H6krpjuhvLY4OLGuwxrzQrLVTuJyni2fq5MSdsoz2G/HFFCwl/oa5kkflg== X-Received: by 2002:a05:6820:1c95:b0:6b1:7251:41d5 with SMTP id 006d021491bc7-6b47e9b10b5mr4957110eaf.3.1788378179674; Wed, 02 Sep 2026 12:42:59 -0700 (PDT) Received: from [127.0.1.1] ([2600:8803:e7e4:500:518a:9db8:615b:293f]) by smtp.gmail.com with ESMTPSA id 586e51a60fabf-46f336c72fdsm4241804fac.17.2026.09.02.12.42.57 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 02 Sep 2026 12:42:57 -0700 (PDT) From: David Lechner Date: Wed, 02 Sep 2026 14:42:16 -0500 Subject: [PATCH v4 2/4] arm: mediatek: add MT8366 application processor MIME-Version: 1.0 Message-Id: <20260902-mtk-genio-360-bringup-v4-2-2d38f522c72b@baylibre.com> References: <20260902-mtk-genio-360-bringup-v4-0-2d38f522c72b@baylibre.com> In-Reply-To: <20260902-mtk-genio-360-bringup-v4-0-2d38f522c72b@baylibre.com> To: Tom Rini , Ryder Lee , Weijie Gao , Chunfeng Yun , Igor Belwon , Julien Stephan , GSS_MTK_Uboot_upstream , Macpaul Lin , Ilias Apalodimas Cc: u-boot@lists.u-boot-project.org, David Lechner , Chris Chen X-Mailer: b4 0.17-dev X-Developer-Signature: v=1; a=openpgp-sha256; l=5191; i=dlechner@baylibre.com; h=from:subject:message-id; bh=HJCfz15+Sxa+9bL2L74ghUglAyOGtOTeF7Az5gZEt98=; b=owEBhAF7/pANAwAKAcLMIAH/AY/AAcsmYgBqmHwmfkvnkNHxQSZbkuFLJGQL5viIbHsh7W2Xq JdFs4FvsvKJAUoEAAEKADQWIQTsGNmeYg6D1pzYaJjCzCAB/wGPwAUCaph8JhYcZGxlY2huZXJA YmF5bGlicmUuY29tAAoJEMLMIAH/AY/ANSoIAJMeFf0JE95pS23Y5LPc8QucyXnOq9+W6UyNwhm cIZoSaKE+pP+fzvqdGHw326olrpH60fdBAi3nC/gMGOl6jS4QleTPfuzaJBcBWl80hmJtulsdTj RJSIY5umuzi8FUVFWWRp+faLtfWdiZcK0GQF/hhztgpcq3OKV63ddg6OgESeOlgN7Yd8smAQzjz pnhP8IiLxIrjYrilZ/kM9+wkpLMtcCLQgf95T+j+x4WcTIhK/IN7pgDt5oexYZ/jKk3po0diWlh l8hRR7b2ZNhISy0EEeGzgkj62VeRr9UH0tjBfbgBH0Wo5ro4wAGQ/gCZkvdGXVsq1wcyrlax6ly IMCc= X-Developer-Key: i=dlechner@baylibre.com; a=openpgp; fpr=8A73D82A6A1F509907F373881F8AF88C82F77C03 X-BeenThere: u-boot@lists.u-boot-project.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: u-boot-bounces@lists.u-boot-project.org From: Chris Chen Add basic support for the MT8366 application processor including init Kconfig target. Signed-off-by: Chris Chen Co-developed-by: David Lechner Signed-off-by: David Lechner --- arch/arm/mach-mediatek/Kconfig | 12 ++++++- arch/arm/mach-mediatek/Makefile | 1 + arch/arm/mach-mediatek/cpu.c | 3 +- arch/arm/mach-mediatek/mt8366/Makefile | 3 ++ arch/arm/mach-mediatek/mt8366/init.c | 58 ++++++++++++++++++++++++++++++++++ 5 files changed, 75 insertions(+), 2 deletions(-) diff --git a/arch/arm/mach-mediatek/Kconfig b/arch/arm/mach-mediatek/Kconfig index 5e6c50ca64d..c278b220773 100644 --- a/arch/arm/mach-mediatek/Kconfig +++ b/arch/arm/mach-mediatek/Kconfig @@ -119,6 +119,15 @@ config TARGET_MT8365 It is including UART, SPI, USB2.0 dual role, SD and MMC cards, NAND, PWM, I2C, I2S, S/PDIF, and several LPDDR3 and LPDDR4 options. +config TARGET_MT8366 + bool "MediaTek MT8366 SoC" + select ARM64 + help + The MediaTek MT8366 is a ARM64-based SoC with a single-core Cortex-A76 and + a five-core Cortex-A55. It is including UART, SPI, USB3.0 dual role, + SD and MMC cards, PWM, I2C, I2S, S/PDIF, and several LPDDR4x + options. + config TARGET_MT8512 bool "MediaTek MT8512 SoC" select ARM64 @@ -159,6 +168,7 @@ config MTK_MEM_MAP_DDR_BASE_PHY config MTK_MEM_MAP_DDR_SIZE hex "DDR .size in mem_map" default 0x200000000 if TARGET_MT7987 || TARGET_MT7988 || TARGET_MT8188 || TARGET_MT8195 + default 0x100000000 if TARGET_MT8366 default 0xc0000000 if TARGET_MT8365 default 0x80000000 if TARGET_MT7981 || TARGET_MT7986 || TARGET_MT8183 default 0x40000000 if TARGET_MT7622 || TARGET_MT8512 @@ -207,7 +217,7 @@ config SYS_CONFIG_NAME config MTK_BROM_HEADER_INFO string default "media=nor" if TARGET_MT8518 || TARGET_MT8512 || TARGET_MT7629 - default "media=emmc" if TARGET_MT8516 || TARGET_MT8365 || TARGET_MT8183 || TARGET_MT8188 || TARGET_MT8189 || TARGET_MT8195 + default "media=emmc" if TARGET_MT8516 || TARGET_MT8365 || TARGET_MT8366 || TARGET_MT8183 || TARGET_MT8188 || TARGET_MT8189 || TARGET_MT8195 default "lk=1" if TARGET_MT7623 config MTK_TZ_MOVABLE diff --git a/arch/arm/mach-mediatek/Makefile b/arch/arm/mach-mediatek/Makefile index 35f748a70d6..51bf5789bb5 100644 --- a/arch/arm/mach-mediatek/Makefile +++ b/arch/arm/mach-mediatek/Makefile @@ -17,6 +17,7 @@ obj-$(CONFIG_TARGET_MT8188) += mt8188/ obj-$(CONFIG_TARGET_MT8189) += mt8189/ obj-$(CONFIG_TARGET_MT8195) += mt8195/ obj-$(CONFIG_TARGET_MT8365) += mt8365/ +obj-$(CONFIG_TARGET_MT8366) += mt8366/ obj-$(CONFIG_TARGET_MT8512) += mt8512/ obj-$(CONFIG_TARGET_MT8516) += mt8516/ obj-$(CONFIG_TARGET_MT8518) += mt8518/ diff --git a/arch/arm/mach-mediatek/cpu.c b/arch/arm/mach-mediatek/cpu.c index 56a41e42df6..04ede8823b0 100644 --- a/arch/arm/mach-mediatek/cpu.c +++ b/arch/arm/mach-mediatek/cpu.c @@ -39,7 +39,8 @@ void enable_caches(void) u32 mediatek_sip_part_name(void) { if (CONFIG_IS_ENABLED(TARGET_MT8188) || CONFIG_IS_ENABLED(TARGET_MT8189) || - CONFIG_IS_ENABLED(TARGET_MT8195) || CONFIG_IS_ENABLED(TARGET_MT8365)) { + CONFIG_IS_ENABLED(TARGET_MT8195) || CONFIG_IS_ENABLED(TARGET_MT8365) || + CONFIG_IS_ENABLED(TARGET_MT8366)) { struct arm_smccc_res res __maybe_unused; arm_smccc_smc(MTK_SIP_PLAT_BINFO, 0, 0, 0, 0, 0, 0, 0, &res); diff --git a/arch/arm/mach-mediatek/mt8366/Makefile b/arch/arm/mach-mediatek/mt8366/Makefile new file mode 100644 index 00000000000..661744a4398 --- /dev/null +++ b/arch/arm/mach-mediatek/mt8366/Makefile @@ -0,0 +1,3 @@ +# SPDX-License-Identifier: GPL-2.0-only + +obj-y += init.o diff --git a/arch/arm/mach-mediatek/mt8366/init.c b/arch/arm/mach-mediatek/mt8366/init.c new file mode 100644 index 00000000000..13123be068e --- /dev/null +++ b/arch/arm/mach-mediatek/mt8366/init.c @@ -0,0 +1,58 @@ +// SPDX-License-Identifier: GPL-2.0-only +/* + * Copyright (C) 2026 Baylibre, SAS + * Copyright (C) 2026 MediaTek Inc. + * Author: Chris Chen + */ + +#include +#include +#include +#include +#include +#include +#include +#include + +#include "../cpu.h" + +DECLARE_GLOBAL_DATA_PTR; + +int dram_init(void) +{ + return fdtdec_setup_mem_size_base(); +} + +phys_addr_t board_get_usable_ram_top(phys_size_t total_size) +{ + /* + * Limit gd->ram_top not exceeding SZ_4G. Because some peripherals like + * MMC requires DMA buffer allocated below SZ_4G. + */ + return min(gd->ram_top, SZ_4G); +} + +void reset_cpu(void) +{ + if (CONFIG_IS_ENABLED(PSCI_RESET)) { + psci_system_reset(); + } else { + struct udevice *wdt; + + uclass_first_device(UCLASS_WDT, &wdt); + if (wdt) + wdt_expire_now(wdt, 0); + } +} + +int print_cpuinfo(void) +{ + u32 part = mediatek_sip_part_name(); + + if (part) + printf("CPU: MediaTek MT%.4x\n", part); + else + printf("CPU: MediaTek MT8366 series\n"); + + return 0; +} From patchwork Wed Sep 2 19:42:17 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: David Lechner X-Patchwork-Id: 2296992 X-Patchwork-Delegate: dlechner@baylibre.com Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=lists.u-boot-project.org header.i=@lists.u-boot-project.org header.a=rsa-sha256 header.s=default header.b=Wbtysp7U; dkim=pass (2048-bit key; secure) header.d=baylibre.com header.i=@baylibre.com header.a=rsa-sha256 header.s=google header.b=XFflqXgx; dkim-atps=neutral Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=lists.u-boot-project.org (client-ip=2605:bc80:3010::137; helo=smtp4.osuosl.org; envelope-from=u-boot-bounces@lists.u-boot-project.org; receiver=patchwork.ozlabs.org) Received: from smtp4.osuosl.org (smtp4.osuosl.org [IPv6:2605:bc80:3010::137]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange x25519 server-signature ECDSA (secp384r1) server-digest SHA384) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4hZtSF412sz1xwg for ; Thu, 03 Sep 2026 05:43:09 +1000 (AEST) Received: from localhost (localhost [127.0.0.1]) by smtp4.osuosl.org (Postfix) with ESMTP id 3213140AAF; Wed, 2 Sep 2026 19:43:08 +0000 (UTC) X-Virus-Scanned: amavis at osuosl.org Received: from smtp4.osuosl.org ([127.0.0.1]) by localhost (smtp4.osuosl.org [127.0.0.1]) (amavis, port 10024) with ESMTP id OwcpAseOv5_t; Wed, 2 Sep 2026 19:43:07 +0000 (UTC) ARC-Filter: OpenARC Filter v1.3.0 smtp4.osuosl.org B612E40AB3 Authentication-Results: smtp4.osuosl.org; arc=pass header.oldest-pass=0 smtp.remote-ip=140.211.166.142 ARC-Seal: i=2; d=osuosl.org; s=arc; a=rsa-sha256; cv=pass; t=1788378186; b=Ra78h01JPaBk4RMo/tY9bK1WMK3n3hg7lWEmJf9o6lwjkJACEW47Fuu6uaeB6gYOZgaP fOqZQAR/LMUZaG0/VJa2EmbcdFrOcY0JNV5Sy+WDrz17/cSDOWFgZA7hQwl/a0qB/zBdl zHIzfBlpvEzHDcF49cCMkb5uvmIaSADRLDSjGgEl28J8uVeamHg2uHzsbol3UJpq7QcnV 1+prF4dwa8/UfY8QSNR51cyAaVUzFZuYlu/L8MGGCAlUj21GTMXzukUHgDEjuarfRIlIF CMlWlljIGOVzvntpg0P06/igDFD8MUHmD/OLk5U2dVFfI9OFDKQ2aDO4K3dgp/GAyig== ARC-Message-Signature: i=2; d=osuosl.org; s=arc; a=rsa-sha256; c=relaxed/relaxed; t=1788378186; h=X-Comment:DKIM-Signature:X-Original-To:Delivered-To:Received: Received:X-Virus-Scanned:X-Spam-Flag:X-Spam-Score:X-Spam-Level: X-Spam-Status:Received:ARC-Filter:Received-SPF:Received:Received: DKIM-Signature:X-Google-DKIM-Signature:X-Gm-Message-State:X-Gm-Gg: X-Received:Received:From:Date:Subject:MIME-Version:Content-Type: Content-Transfer-Encoding:Message-Id:References:In-Reply-To:To:Cc: X-Mailer:X-Developer-Signature:X-Developer-Key:X-BeenThere: X-Mailman-Version:Precedence:List-Id:List-Unsubscribe:List-Archive: List-Post:List-Help:List-Subscribe:Errors-To; bh=0MeySjZ38+NpBxHE/JhIapwa4LvT6VPaHzqdp+E4Q30=; b=k72xbQp12+KiQsyWtd9vi3NndNn1Aw3w9gKKJK6BKfmWlzEpz1bsd0rUw0IDMjEmh95g sDSehDi4vtUo60GEOoxMcskP8vjAz6GfbvsnIY7Z7mHsxAKquVbu4dGUFDPlhqDn3qKCp APSAlvooZJVJ9M+Dluvy3byrBmp0iECMRD5byK+5UI5xcb6D2I6+/4sGg/m/I/fhJByt1 Wz3ZiQAYLQUfIVykVbSloFL3z35qkl2fXyKbQb7jWYaLXzuL/EfLwZ6nEkJ0TKYV/elTJ 5uDrfbhi98ug/rvRmpedAQgnJ75GVsZJQiF2LKrgMsspbduhs2x6/cEFwYXo8HTFtKA== ARC-Authentication-Results: i=2; smtp4.osuosl.org; dmarc=none header.from=baylibre.com; dkim=pass header.d=baylibre.com header.i=@baylibre.com header.a=rsa-sha256 header.s=google header.b=XFflqXgx; arc=pass header.oldest-pass=0 smtp.remote-ip=140.211.166.142 X-Comment: SPF check N/A for local connections - client-ip=140.211.166.142; helo=lists1.osuosl.org; envelope-from=u-boot-bounces@lists.u-boot-project.org; receiver= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=lists.u-boot-project.org; s=default; t=1788378186; bh=0MeySjZ38+NpBxHE/JhIapwa4LvT6VPaHzqdp+E4Q30=; h=From:Date:Subject:References:In-Reply-To:To:Cc:List-Id: List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe: From; b=Wbtysp7URLrNFPuFzFTi/ZxhCRz5VNjuDM1SGklgDUXhBLkiTFJCheLOvp3LjTlfT AmzryflP4Lr31UMyAJBX0niaxokJ1RcyGEqQjBZDIeuvYXiOjQWzFuxqeu3nFVCMha KkJycq3SYs29g4rEjBoD8ywCvWux2NCMtyCMBC87hNQWzMl8W5cNJMl0jx8TNqZlVZ Uy8+g1PcPTcx+Rq2Y1umxObjL9g+PsWqyZGntvKaPG5648bB4rZ9+xuil8XsyJYEmw +lBWNRLqUOiB4qfYK67i/r/aHCA7BaJH0lQhtbSlSx5TD4uax+jzcPxWygxvuZ3a5+ vNBeli8RwaQmg== Received: from lists1.osuosl.org (lists1.osuosl.org [140.211.166.142]) by smtp4.osuosl.org (Postfix) with ESMTP id B612E40AB3; Wed, 2 Sep 2026 19:43:06 +0000 (UTC) X-Original-To: u-boot@lists.u-boot-project.org Delivered-To: u-boot@lists.u-boot-project.org Received: from smtp4.osuosl.org (smtp4.osuosl.org [IPv6:2605:bc80:3010::137]) by lists1.osuosl.org (Postfix) with ESMTP id B5D321D9 for ; Wed, 2 Sep 2026 19:43:05 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by smtp4.osuosl.org (Postfix) with ESMTP id 9A30E407EE for ; Wed, 2 Sep 2026 19:43:05 +0000 (UTC) X-Virus-Scanned: amavis at osuosl.org Received: from smtp4.osuosl.org ([127.0.0.1]) by localhost (smtp4.osuosl.org [127.0.0.1]) (amavis, port 10024) with ESMTP id wVisA3obJ7aL for ; Wed, 2 Sep 2026 19:43:04 +0000 (UTC) ARC-Filter: OpenARC Filter v1.3.0 smtp4.osuosl.org 5FB7B40805 Authentication-Results: smtp4.osuosl.org; arc=none smtp.remote-ip="2001:4860:4864:20::2f" ARC-Seal: i=1; d=osuosl.org; s=arc; a=rsa-sha256; cv=none; t=1788378184; b=te1/waaGs4Vwwj71uvnu8UUZmo6CcVWxOx8XrryhTYcF46hjRZ7EYF9hWcjMp9h1ooS1 FD7TdP3Gh3qgPFXN93GWuWvAxHjhsPjvOKghue8NfHoGEFKrBw+5jwFH0DzX7kpjLRZBe vElmVkOfhEW4qUOW8S+U4Rlflbh5UcLxaSobu+9AnpJKVVFVTqqEgx1BqaJ9n48m1GtKV 0Ul2YBbcFkMzj+872Z5JwMkEbnCagcspWZ70f0CcRtdKw5B+WdynNLrCyowMYbWXTJHl8 XImkfoZmIprHHOQ+0lVD3yAA5f1pe24W9Dtw2IMgMnnazkXDrEwPlac2BkyQoS8I5gQ== ARC-Message-Signature: i=1; d=osuosl.org; s=arc; a=rsa-sha256; c=relaxed/relaxed; t=1788378184; h=Received-SPF:Received:DKIM-Signature:X-Google-DKIM-Signature: X-Gm-Message-State:X-Gm-Gg:X-Received:Received:From:Date:Subject: MIME-Version:Content-Type:Content-Transfer-Encoding:Message-Id: References:In-Reply-To:To:Cc:X-Mailer:X-Developer-Signature: X-Developer-Key; bh=0MeySjZ38+NpBxHE/JhIapwa4LvT6VPaHzqdp+E4Q30=; b=p+zBgZukP5kbpf9gO879WnLBuOXgRb15TEMMyc6brR/f0JGt5Vtf267V3rCcBigesYxR zw2Rk0yG01W7kRd/TYYTaAg59p9RbIoUqzKby0pOCuZVN8pQLbCsV3JTYHiFAShhD1+gz VnFWk4xKZOv44oUaqGdwjUg0FjOlwYzYvLVXFkfrNTmYzRt29Cz2rWKcfgmp1TYnEe2F0 IpWEMHb31De22XprlPoeaUmRaEWTwXVLSd3PyYCgjYUK6nVPj7Nwmv3ZgYYo7vlY2OjXV ptpAlaDzGKHRJHk5Pb3aeGxv/ZrKjsMoJLlorFm55SQEbtdyvXI8aUtibqMAVtKAqbg== ARC-Authentication-Results: i=1; smtp4.osuosl.org; dmarc=none header.from=baylibre.com; dkim=pass header.d=baylibre.com header.i=@baylibre.com header.a=rsa-sha256 header.s=google header.b=XFflqXgx; arc=none smtp.remote-ip="2001:4860:4864:20::2f" Received-SPF: Pass (mailfrom) identity=mailfrom; client-ip=2001:4860:4864:20::2f; helo=mail-oa1-x2f.google.com; envelope-from=dlechner@baylibre.com; receiver= Authentication-Results: smtp4.osuosl.org; dmarc=none (p=none dis=none) header.from=baylibre.com Authentication-Results: smtp4.osuosl.org; dkim=pass (2048-bit key) header.d=baylibre.com header.i=@baylibre.com header.a=rsa-sha256 header.s=google header.b=XFflqXgx Received: from mail-oa1-x2f.google.com (mail-oa1-x2f.google.com [IPv6:2001:4860:4864:20::2f]) by smtp4.osuosl.org (Postfix) with ESMTPS id 5FB7B40805 for ; Wed, 2 Sep 2026 19:43:03 +0000 (UTC) Received: by mail-oa1-x2f.google.com with SMTP id 586e51a60fabf-467a6834028so950478fac.1 for ; Wed, 02 Sep 2026 12:43:03 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=baylibre.com; s=google; t=1788378182; x=1788982982; darn=lists.u-boot-project.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :content-type:mime-version:subject:date:from:from:to:cc:subject:date :message-id:reply-to:content-type; bh=0MeySjZ38+NpBxHE/JhIapwa4LvT6VPaHzqdp+E4Q30=; b=XFflqXgxUFqk4RA93jeWMOHS4JHszbR2Vj2gnTV5muQdVLAyAwF4OBg1H03Ug2JE2C HXoG+e3tzrx/zZIrnI/H6yhZWVDCiG0J/zWEx1zBsWEfU0yROfmUx/qmHDFW9RXHOrO/ jp6WuUaKRcmO/zH5+lptfbvcmI7rEtm23r17x8z4F3ojyGdj2LAAkKUsISyv35Tr6EzC UZc1bEFYcImpiwdqTpcvtgHcEFOQ59P4rPzaxvgN22vgflvE0Xy8P6v0d1LssL4PfODe I1pjwrPcm/ozr/veH+zNHaGQ6XANe9cru8AZBrwBbNKjaDR5wGHhQVzlfqRSEfoMXwrp 7H0g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1788378182; x=1788982982; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :content-type:mime-version:subject:date:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=0MeySjZ38+NpBxHE/JhIapwa4LvT6VPaHzqdp+E4Q30=; b=iG1BDSBUEfNmF0liM22mEATaU4Oiwv3gSH7ua9EXtlB4RibdrM7vS3FmIVF8sRYLks NSVy5b2rD1PFiUESw70aZAfgwih7C4QUkKWzvj/h0zxq04kt5yF1PEjRDfgGxiKPqB/D PvSnqjsNmj4ccG8a3N7sH5cf4vzyd8lFzjpIPdNcm4TSNzLp30CVtJEpsfisUaXDPvT1 +fL7pZGqTKlUC80I4xpjHmRv9LZyH6e2+Kvd/40Nl6uzODLLsAwK5JyzDHi5Xnb6S0zC kffHbOiB/MmGG+nrP+ejihTk4hCtfjfghqt0fhR+1pD1dEKpMp1QXY6EcpsrquBm9rFD 8q8g== X-Gm-Message-State: AFuF++nk3Bf8JkVeNdVyYKieQPMFM5kma8/yBet4qCuFhS5CMZsR5dOd ws8IuM17SrsAYWltV9pHNEjyGGEY+pRVy8Mv7FfuyjQJJYTuYkuy2QHN9LKCJtpeWYM= X-Gm-Gg: AYBFou2FteeSy0W5Gg0GYOLBOq7St0G0lV/hHEgQCQX8VXcLPQifMMylnr8cH3HjeUv sjRCLVM4JVSMcWT2gl7c5YhO3YF1B7h9i9BQjX3hnO4cKtRBCYSmpF+PEmY+mWfv/2hJaRkpKis KamVrUP+vXrN9HFRGwKLsS4hK46WAp4wBBwuF7aUyVJ43wcAru/Askd+3fIVNUjdDgSCGL4JQbt 7U64IO2pQt2/BJYWgyhKLYoJyCmxzI0b1GZzeZ2/HjHe3D9ln0IhH/yrMugZ1o1A/25WPcZSFGN ogs4E07gV2gpiYOWlFeQKGmXb/GQTfZIrfkJL/nPPDAz6xnBSvuTYSMZj/OjIdOVPfoTlP5bMcM q5D269gSO4DaLpr90A6ZJbWHhuSI2qGaMfF5PYsec+TeouNg+M5z8DOFJYlyIfvybCpg3iLQH1R qnptzLePPWgelYJX15FhFDtvbaW98uiYo9fFs4lU81Y3orifrsmBzu01Pfwc+216c+wA== X-Received: by 2002:a05:6870:d10f:b0:45e:6cd1:9a3f with SMTP id 586e51a60fabf-46f84e27894mr6726818fac.0.1788378182563; Wed, 02 Sep 2026 12:43:02 -0700 (PDT) Received: from [127.0.1.1] ([2600:8803:e7e4:500:518a:9db8:615b:293f]) by smtp.gmail.com with ESMTPSA id 586e51a60fabf-46f336c72fdsm4241804fac.17.2026.09.02.12.42.59 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 02 Sep 2026 12:43:00 -0700 (PDT) From: David Lechner Date: Wed, 02 Sep 2026 14:42:17 -0500 Subject: [PATCH v4 3/4] arm: dts: mediatek: add Genio 360 EVK MIME-Version: 1.0 Message-Id: <20260902-mtk-genio-360-bringup-v4-3-2d38f522c72b@baylibre.com> References: <20260902-mtk-genio-360-bringup-v4-0-2d38f522c72b@baylibre.com> In-Reply-To: <20260902-mtk-genio-360-bringup-v4-0-2d38f522c72b@baylibre.com> To: Tom Rini , Ryder Lee , Weijie Gao , Chunfeng Yun , Igor Belwon , Julien Stephan , GSS_MTK_Uboot_upstream , Macpaul Lin , Ilias Apalodimas Cc: u-boot@lists.u-boot-project.org, David Lechner X-Mailer: b4 0.17-dev X-Developer-Signature: v=1; a=openpgp-sha256; l=13824; i=dlechner@baylibre.com; h=from:subject:message-id; bh=gcUE4LzjR+eKMCtVG5xAf8wJdUIJ4Mk19e3EC1NTXUo=; b=owEBhAF7/pANAwAKAcLMIAH/AY/AAcsmYgBqmHwsYp8//WdnN1b2JMtQxuj0kGuejzlDPXdne RH5UKHzl3GJAUoEAAEKADQWIQTsGNmeYg6D1pzYaJjCzCAB/wGPwAUCaph8LBYcZGxlY2huZXJA YmF5bGlicmUuY29tAAoJEMLMIAH/AY/AB30H/0k08DABjVosXljgkIUpAHe8o9wLS45OYFqdA9m nd6XnT4JJErljVQbDaTtJFBd6jOTJkzi/QdiiHSfKlyxXX6XlMiRECG50z9/IXKHpKRL6rJfCWf 9hrBAcgfTfjvsaGvGxukVGzP+nMqgZweu4hTW4G7ZDJJvRshx276gdaWZw7pBEbnvf3zjSCimBP dqMxgeks+neh6pDgOZCVAGC5Q5pb7Oadd8naXklycO/dQY0QktlVa3xKhqL3PucXdHcsiJ39lrB rMsOhrdo2Y8CjucpBYrqyFBrBooIVuKY2JuRgqsQEfyXELl3gBa4KFyFumi7rNHyXWmHU2Gj29d GFNc= X-Developer-Key: i=dlechner@baylibre.com; a=openpgp; fpr=8A73D82A6A1F509907F373881F8AF88C82F77C03 X-BeenThere: u-boot@lists.u-boot-project.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: u-boot-bounces@lists.u-boot-project.org From: Macpaul Lin Add a devicetree for the MediaTek Genio 360 Evaluation Kit board. Upstreaming of this board has not even started yet, so we will have to carry a downstream version of this for some time. Signed-off-by: Macpaul Lin Signed-off-by: David Lechner --- arch/arm/dts/Makefile | 1 + arch/arm/dts/mt8366-genio-360-evk-common.dtsi | 521 ++++++++++++++++++++++++++ arch/arm/dts/mt8366-genio-360-evk.dts | 14 + 3 files changed, 536 insertions(+) diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile index 1b533721bb4..bd093e219d9 100644 --- a/arch/arm/dts/Makefile +++ b/arch/arm/dts/Makefile @@ -1089,6 +1089,7 @@ dtb-$(CONFIG_ARCH_MEDIATEK) += \ mt7988-rfb.dtb \ mt7988-sd-rfb.dtb \ mt8183-pumpkin.dtb \ + mt8366-genio-360-evk.dtb \ mt8371-genio-520-evk.dtb \ mt8371-genio-520-evk-ufs.dtb \ mt8391-genio-720-evk.dtb \ diff --git a/arch/arm/dts/mt8366-genio-360-evk-common.dtsi b/arch/arm/dts/mt8366-genio-360-evk-common.dtsi new file mode 100644 index 00000000000..361d9cbf2ad --- /dev/null +++ b/arch/arm/dts/mt8366-genio-360-evk-common.dtsi @@ -0,0 +1,521 @@ +// SPDX-License-Identifier: GPL-2.0-only OR MIT +/* + * Copyright (C) 2026 MediaTek Inc. + * Author: Macpaul Lin + */ + +#include "mt8366.dtsi" +#include "mt6366.dtsi" + +/ { + aliases { + ethernet0 = ð + mmc0 = &mmc0; + mmc1 = &mmc1; + }; + + memory@40000000 { + device_type = "memory"; + /* 4GB */ + reg = <0 0x40000000 0x1 0x00000000>; + }; + + firmware: firmware { + optee { + compatible = "linaro,optee-tz"; + method = "smc"; + }; + + psci: psci { + compatible = "arm,psci-1.0"; + method = "smc"; + }; + }; + + reserved-memory { + #address-cells = <2>; + #size-cells = <2>; + ranges; + + /* 2 MiB reserved for ARM Trusted Firmware (BL31) */ + bl31_secmon_reserved: secmon@54600000 { + no-map; + reg = <0 0x54600000 0x0 0x200000>; + }; + + /* 12 MiB reserved for OP-TEE (BL32) + * +-----------------------+ 0x43e0_0000 + * | SHMEM 2MiB | + * +-----------------------+ 0x43c0_0000 + * | | TA_RAM 8MiB | + * + TZDRAM +--------------+ 0x4340_0000 + * | | TEE_RAM 2MiB | + * +-----------------------+ 0x4320_0000 + */ + optee_reserved: optee@43200000 { + no-map; + reg = <0 0x43200000 0 0x00c00000>; + }; + + dsi_reserved: dsi@60000000 { + reg = <0 0x60000000 0 0x02000000>; + no-map; + }; + }; + + chosen { + stdout-path = &uart0; + }; + + usb_p0_vbus: regulator-usb-p0-vbus { + compatible = "regulator-fixed"; + regulator-name = "usb-p0-vbus"; + regulator-min-microvolt = <5000000>; + regulator-max-microvolt = <5000000>; + gpio = <&pio 53 GPIO_ACTIVE_HIGH>; + enable-active-high; + }; + + usb_p1_vbus: regulator-usb-p1-vbus { + compatible = "regulator-fixed"; + regulator-name = "usb-p1-vbus"; + regulator-min-microvolt = <5000000>; + regulator-max-microvolt = <5000000>; + gpio = <&pio 55 GPIO_ACTIVE_HIGH>; + enable-active-high; + }; + + /* + * Panel VDD and IOVCC rails are switched by the same enable GPIO, + * so both -supply properties on the panel node point at this one + * regulator instead of duplicating the GPIO across two nodes. This + * works as long as we don't care what the voltage is. Technically, + * there are two separate regulators though. + */ + regulator_dsi0_lcm: regulator-dsi0-lcm { + compatible = "regulator-fixed"; + regulator-name = "dsi0-lcm"; + pinctrl-names = "default"; + pinctrl-0 = <&dsi0_lcm_pins_default>; + gpio = <&pio 119 GPIO_ACTIVE_HIGH>; + enable-active-high; + }; + + backlight_lcd0: backlight-lcd0 { + compatible = "pwm-backlight"; + pwms = <&disp_pwm0 0 500000>; + brightness-levels = <0 1023>; + num-interpolated-steps = <1023>; + default-brightness-level = <576>; + }; +}; + +&watchdog { + status = "okay"; +}; + +&uart0 { + status = "okay"; +}; + +&snor { + pinctrl-names = "default"; + pinctrl-0 = <&snor_pins>; + status = "okay"; + + flash@0 { + compatible = "jedec,spi-nor"; + reg = <0>; + spi-tx-bus-width = <4>; + spi-rx-bus-width = <4>; + }; +}; + +&disp_pwm0 { + status = "okay"; + pinctrl-names = "default"; + pinctrl-0 = <&disp_pwm0_pin_default>; +}; + +&dsi0 { + status = "okay"; + #address-cells = <1>; + #size-cells = <0>; + + panel@0 { + compatible = "startek,kd070fhfid078", "himax,hx8279"; + reg = <0>; + reset-gpios = <&pio 65 GPIO_ACTIVE_HIGH>; + enable-gpios = <&pio 63 GPIO_ACTIVE_HIGH>; + pinctrl-names = "default"; + pinctrl-0 = <&panel0_pins_default>; + backlight = <&backlight_lcd0>; + vdd-supply = <®ulator_dsi0_lcm>; + iovcc-supply = <®ulator_dsi0_lcm>; + status = "okay"; + + port { + panel0_in: endpoint { + remote-endpoint = <&dsi0_out>; + }; + }; + }; + + port { + dsi0_out: endpoint { + remote-endpoint = <&panel0_in>; + }; + }; +}; + +&mipi_tx_config0 { + status = "okay"; +}; + +&mutex0 { + status = "okay"; +}; + +&disp_ovl0_4l { + status = "okay"; +}; + +&disp_rdma0 { + status = "okay"; +}; + +&smi_larb0 { + status = "okay"; +}; + +&smi_disp_common { + status = "okay"; +}; + +&pio { + disp_pwm0_pin_default: disp-pwm0-pins { + pins { + pinmux = ; + output-high; + }; + }; + + panel0_pins_default: panel0-pins { + pins { + pinmux = , + ; + output-high; + }; + }; + + mmc0_pins_default: mmc0-default-pins { + pins-clk { + pinmux = ; + drive-strength = ; + bias-pull-down = ; + }; + + pins-cmd-dat { + pinmux = , + , + , + , + , + , + , + , + ; + input-enable; + drive-strength = ; + bias-pull-up = ; + }; + + pins-ds { + pinmux = ; + drive-strength = ; + bias-pull-down = ; + }; + + pins-rst { + pinmux = ; + bias-pull-up = ; + }; + }; + + mmc0_pins_uhs: mmc0-uhs-pins { + pins-clk { + pinmux = ; + drive-strength = ; + bias-pull-down = ; + }; + + pins-cmd-dat { + pinmux = , + , + , + , + , + , + , + , + ; + input-enable; + drive-strength = ; + bias-pull-up = ; + }; + + pins-ds { + pinmux = ; + drive-strength = ; + bias-pull-down = ; + }; + + pins-rst { + pinmux = ; + bias-pull-up = ; + }; + }; + + mmc1_pins_default: mmc1-default-pins { + pins-clk { + pinmux = ; + drive-strength = ; + bias-pull-down = ; + }; + + pins-cmd-dat { + pinmux = , + , + , + , + ; + input-enable; + drive-strength = ; + bias-pull-up = ; + }; + + pins-insert { + pinmux = ; + bias-pull-up; + }; + }; + + mmc1_pins_uhs: mmc1-uhs-pins { + pins-clk { + pinmux = ; + drive-strength = ; + bias-pull-down = ; + }; + + pins-cmd-dat { + pinmux = , + , + , + , + ; + input-enable; + drive-strength = ; + bias-pull-up = ; + }; + }; + + usb0_default_pins: usb0-default-pins { + pins-vbus-valid { + pinmux = ; + }; + }; + + dsi0_lcm_pins_default: dsi0-lcm-pins { + pins { + pinmux = ; + output-high; + }; + }; + + snor_pins: snor-pins { + pins-ck-io { + pinmux = , + , + ; + drive-strength = ; + bias-pull-down; + }; + + pins-cs { + pinmux = , + , + ; + drive-strength = ; + bias-pull-up; + }; + }; + + eth_default: eth-default-pins { + pins-txd { + pinmux = , + , + , + ; + drive-strength = ; + }; + + pins-cc { + pinmux = , + , + , + ; + drive-strength = ; + }; + + pins-rxd { + pinmux = , + , + , + ; + drive-strength = ; + }; + + pins-mdio { + pinmux = , + ; + drive-strength = ; + input-enable; + }; + + pins-power { + pinmux = , + ; + output-high; + }; + + pins-reset { + pinmux = ; + }; + }; + + eth_sleep: eth-sleep-pins { + pins-txd { + pinmux = , + , + , + ; + }; + + pins-cc { + pinmux = , + , + , + ; + }; + + pins-rxd { + pinmux = , + , + , + ; + }; + + pins-mdio { + pinmux = , + ; + input-disable; + bias-disable; + }; + }; +}; + +&ssusb { + pinctrl-names = "default"; + pinctrl-0 = <&usb0_default_pins>; + role-switch-default-mode = "peripheral"; + wakeup-source; + status = "okay"; +}; + +&usb_host0 { + status = "okay"; +}; + +&usb_host1 { + vbus-supply = <&usb_p1_vbus>; + wakeup-source; + status = "okay"; +}; + +&usb_host2 { + status = "okay"; +}; + +&u3phy0 { + status = "okay"; +}; + +&u2phy1 { + status = "okay"; +}; + +&u2phy2 { + status = "okay"; +}; + +&mmc0 { + status = "okay"; + pinctrl-names = "default", "state_uhs"; + pinctrl-0 = <&mmc0_pins_default>; + pinctrl-1 = <&mmc0_pins_uhs>; + bus-width = <8>; + max-frequency = <200000000>; + cap-mmc-highspeed; + mmc-hs200-1_8v; + mmc-hs400-1_8v; + supports-cqe; + mmc-hs400-enhanced-strobe; + hs400-ds-delay = <0x10100>; + cap-mmc-hw-reset; + vmmc-supply = <&mt6366_vemc_reg>; + vqmmc-supply = <&mt6366_vio18_reg>; + no-sdio; + no-sd; + non-removable; +}; + +&mmc1 { + status = "okay"; + pinctrl-names = "default", "state_uhs"; + pinctrl-0 = <&mmc1_pins_default>; + pinctrl-1 = <&mmc1_pins_uhs>; + bus-width = <4>; + max-frequency = <200000000>; + cap-sd-highspeed; + sd-uhs-sdr50; + sd-uhs-sdr104; + cd-gpios = <&pio 94 GPIO_ACTIVE_LOW>; + vmmc-supply = <&mt6366_vmch_reg>; + vqmmc-supply = <&mt6366_vmc_reg>; + no-sdio; + no-mmc; +}; + +ð { + /* The TX clock delay is provided by the board, only RX needs an ID. */ + phy-mode = "rgmii-rxid"; + phy-handle = <&phy>; + pinctrl-names = "default", "sleep"; + pinctrl-0 = <ð_default>; + pinctrl-1 = <ð_sleep>; + status = "okay"; + + mdio { + compatible = "snps,dwmac-mdio"; + #address-cells = <1>; + #size-cells = <0>; + + phy: ethernet-phy@0 { + compatible = "ethernet-phy-idc0ff.0421"; + reg = <0>; + reset-gpios = <&pio 28 GPIO_ACTIVE_LOW>; + reset-assert-us = <10000>; + reset-deassert-us = <10000>; + }; + }; +}; diff --git a/arch/arm/dts/mt8366-genio-360-evk.dts b/arch/arm/dts/mt8366-genio-360-evk.dts new file mode 100644 index 00000000000..1bf94e9512c --- /dev/null +++ b/arch/arm/dts/mt8366-genio-360-evk.dts @@ -0,0 +1,14 @@ +// SPDX-License-Identifier: GPL-2.0-only OR MIT +/* + * Copyright (C) 2026 MediaTek Inc. + * Author: Macpaul Lin + */ + +/dts-v1/; + +#include "mt8366-genio-360-evk-common.dtsi" + +/ { + model = "MediaTek Genio-360 EVK"; + compatible = "mediatek,genio-360-evk", "mediatek,mt8366"; +}; From patchwork Wed Sep 2 19:42:18 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: David Lechner X-Patchwork-Id: 2296993 X-Patchwork-Delegate: dlechner@baylibre.com Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=lists.u-boot-project.org header.i=@lists.u-boot-project.org header.a=rsa-sha256 header.s=default header.b=a/2/ZKtz; dkim=pass (2048-bit key; secure) header.d=baylibre.com header.i=@baylibre.com header.a=rsa-sha256 header.s=google header.b=nmw+AFxf; dkim-atps=neutral Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=lists.u-boot-project.org (client-ip=2605:bc80:3010::136; helo=smtp3.osuosl.org; envelope-from=u-boot-bounces@lists.u-boot-project.org; receiver=patchwork.ozlabs.org) Received: from smtp3.osuosl.org (smtp3.osuosl.org [IPv6:2605:bc80:3010::136]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange x25519 server-signature ECDSA (secp384r1) server-digest SHA384) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4hZtSH6Y3Nz1xwg for ; Thu, 03 Sep 2026 05:43:11 +1000 (AEST) Received: from localhost (localhost [127.0.0.1]) by smtp3.osuosl.org (Postfix) with ESMTP id 8AB986083C; Wed, 2 Sep 2026 19:43:10 +0000 (UTC) X-Virus-Scanned: amavis at osuosl.org Received: from smtp3.osuosl.org ([127.0.0.1]) by localhost (smtp3.osuosl.org [127.0.0.1]) (amavis, port 10024) with ESMTP id FiLVb-2f57JW; Wed, 2 Sep 2026 19:43:09 +0000 (UTC) ARC-Filter: OpenARC Filter v1.3.0 smtp3.osuosl.org 76B1760873 Authentication-Results: smtp3.osuosl.org; arc=pass header.oldest-pass=0 smtp.remote-ip=140.211.166.142 ARC-Seal: i=2; d=osuosl.org; s=arc; a=rsa-sha256; cv=pass; t=1788378188; b=OvldP5iPf61fk8VhUF4hV/DuYIVn+BWH9nhIyY31aROgI/OoBVWse3GzyeYlDZ618UwX vCC2jbRwE0GoQmR/wV+boPWq/v+RALAFzOeyMYOjrLCVOYlolCcs/+xsxBcJiCGNYLMTY fF/DwrGq8RjMFaB62A9ahYk4Yf2/MjMuBRESesdVPZ5j49xZH0pYjlWP8zJvrun+lWjsl 9WFhlFNBSqPtuo243lztisqDn0zaVw6qsaub5RpaOM1ulxEdk5b1iV2Db6NosVIVyws+T RNkES+BoaDTdGTtEFZGTsLwCgc2VkNbYIgHI1qoTyItBmGN4eiw0JUL9CFRamJHhGzg== ARC-Message-Signature: i=2; d=osuosl.org; s=arc; a=rsa-sha256; c=relaxed/relaxed; t=1788378188; h=X-Comment:DKIM-Signature:X-Original-To:Delivered-To:Received: Received:X-Virus-Scanned:X-Spam-Flag:X-Spam-Score:X-Spam-Level: X-Spam-Status:Received:ARC-Filter:Received-SPF:Received:Received: DKIM-Signature:X-Google-DKIM-Signature:X-Gm-Message-State:X-Gm-Gg: X-Received:Received:From:Date:Subject:MIME-Version:Content-Type: Content-Transfer-Encoding:Message-Id:References:In-Reply-To:To:Cc: X-Mailer:X-Developer-Signature:X-Developer-Key:X-BeenThere: X-Mailman-Version:Precedence:List-Id:List-Unsubscribe:List-Archive: List-Post:List-Help:List-Subscribe:Errors-To; bh=d849HdEkS0QCffQiTG6DULTxDl5m6Sfd04qjndHZNak=; b=Mxs3LSDjpUq0Bqsd0vilZqXOfgVaMfsXHUXlk5vIpNn7dOa2vZ+mRX9Wmd6HKdZZz2v7 4sLR4Ah6LBHnI7r2ngFZ1F8cM2+ocHKb1mcaVobFCjS02y9vAv/zqzG4nFnvkN2yQOk4o BsXy2IDG+XvP1nffMYqlbMDEJCZGXaVV0J/yFH1GOnYL/AcGy0ndwIr/BKe9RBKgva6Ns SZ/S6pljQ43HbkfX7NhtA4JD/GcxXxfa23mVMi1Fp+piSHVKChQX8QqUEIKJm6NX+IBRi Z3ifxRhiLjST7UbqEBfzswQHYoL//JzuqA+DHIrLc5EFYkMWRssJJRRgf8HQMEsoMEw== ARC-Authentication-Results: i=2; smtp3.osuosl.org; arc=pass header.oldest-pass=0 smtp.remote-ip=140.211.166.142 X-Comment: SPF check N/A for local connections - client-ip=140.211.166.142; helo=lists1.osuosl.org; envelope-from=u-boot-bounces@lists.u-boot-project.org; receiver= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=lists.u-boot-project.org; s=default; t=1788378188; bh=d849HdEkS0QCffQiTG6DULTxDl5m6Sfd04qjndHZNak=; h=From:Date:Subject:References:In-Reply-To:To:Cc:List-Id: List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe: From; b=a/2/ZKtz4scqtNDHcCdhE03vtmuFLUFntN50Ph7Sla0Wbf0sbpNAIyPy470tw0Xqn c0rrtH0sr7bztpRiOCsFI9UklGQRilAkkf8ZZZ8T0rvReRN9eiDqBSJhFXEp3zP8vp H3vNiwsRCROjaCUJr/7qOvDiM4okHhQtenRFHHdX2JRkSlbtoqDbUu6SqEFA75bJxn AdW3WV9LmfjMfAf6mB+CGhwkQzEJHOO+OTZdwKDP94SoT+JMCZv5S5SSrr+foR+zJ5 4dpD21qP77j5ADuU6f8WX5ZwxMOB8Lxy4l8SL5YAhJGHXm4IQVB6VAwZNkCjHuHmLb TbvxdRaWRYegg== Received: from lists1.osuosl.org (lists1.osuosl.org [140.211.166.142]) by smtp3.osuosl.org (Postfix) with ESMTP id 76B1760873; Wed, 2 Sep 2026 19:43:08 +0000 (UTC) X-Original-To: u-boot@lists.u-boot-project.org Delivered-To: u-boot@lists.u-boot-project.org Received: from smtp4.osuosl.org (smtp4.osuosl.org [IPv6:2605:bc80:3010::137]) by lists1.osuosl.org (Postfix) with ESMTP id 654E42B2 for ; Wed, 2 Sep 2026 19:43:07 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by smtp4.osuosl.org (Postfix) with ESMTP id 571DF40AB6 for ; Wed, 2 Sep 2026 19:43:07 +0000 (UTC) X-Virus-Scanned: amavis at osuosl.org Received: from smtp4.osuosl.org ([127.0.0.1]) by localhost (smtp4.osuosl.org [127.0.0.1]) (amavis, port 10024) with ESMTP id j76tWn-hPhd5 for ; Wed, 2 Sep 2026 19:43:06 +0000 (UTC) ARC-Filter: OpenARC Filter v1.3.0 smtp4.osuosl.org 84ECD40805 Authentication-Results: smtp4.osuosl.org; arc=none smtp.remote-ip="2001:4860:4864:20::2c" ARC-Seal: i=1; d=osuosl.org; s=arc; a=rsa-sha256; cv=none; t=1788378186; b=gi+VDdr+vibgqDB6eDIVmE4dYFGlHmJwll8L/3Y4AWIXfYKBg6eWLpp2dUVTyMRzNDsU ASnDne6afmcF+PdfQUWXOnjNQcGpPw7O/urQB+AMaTDz9aiQ9k2uQkqvDwCye9S10Zgzz 5SiCdhvv4sV8r8wJ6jokXFvGWxF9sSiSd56DWdBPiQC4rWtBmssrJPiJku0TgxCZOKqiq XoyQJV9D68Si2Fqt9OapNoHoFW/+KpzIxrcvgUHti9HyEFpoE5S/I7ynFuUKKWxvP6eNq w51rkSHO/kkjirkuSiiZw57y5G4UiK5cKJ+SeO5lih+RAnipTJhhIqQve3BvLMy8tJg== ARC-Message-Signature: i=1; d=osuosl.org; s=arc; a=rsa-sha256; c=relaxed/relaxed; t=1788378186; h=Received-SPF:Received:DKIM-Signature:X-Google-DKIM-Signature: X-Gm-Message-State:X-Gm-Gg:X-Received:Received:From:Date:Subject: MIME-Version:Content-Type:Content-Transfer-Encoding:Message-Id: References:In-Reply-To:To:Cc:X-Mailer:X-Developer-Signature: X-Developer-Key; bh=d849HdEkS0QCffQiTG6DULTxDl5m6Sfd04qjndHZNak=; b=Oj2HWXedp52xjztEcfDSmJLe9SJ+Bu0l+4NoxYOBJVjt+HpdXjLoh5pG9fQ5756/wkBH u+3a6e27vwYmeJcOFx6FEimy/goekOJVP3gKRmt7snZNLggPPNvAzwqlPWpGaj1FwGB7K THiZAsh0kGYz8AvbBvvXsQQQi6Zo1B9QCo97gbexTRXb3dkGFF8xmoCmduaUYo7WLQ3ox klWkOw3BqCL5XZylKzKuoWww8yPCWVqw/gT76zKkK4axD38L0cDRt28M8xHgEhUXsQlZk SR46g/H1IXpZfLaOULH6CNBKIkVQrcauzVeJKX80Umdlk6T9K9IWsR///c7E0DHeHFQ== ARC-Authentication-Results: i=1; smtp4.osuosl.org; dmarc=none header.from=baylibre.com; dkim=pass header.d=baylibre.com header.i=@baylibre.com header.a=rsa-sha256 header.s=google header.b=nmw+AFxf; arc=none smtp.remote-ip="2001:4860:4864:20::2c" Received-SPF: Pass (mailfrom) identity=mailfrom; client-ip=2001:4860:4864:20::2c; helo=mail-oa1-x2c.google.com; envelope-from=dlechner@baylibre.com; receiver= Authentication-Results: smtp4.osuosl.org; dmarc=none (p=none dis=none) header.from=baylibre.com Authentication-Results: smtp4.osuosl.org; dkim=pass (2048-bit key) header.d=baylibre.com header.i=@baylibre.com header.a=rsa-sha256 header.s=google header.b=nmw+AFxf Received: from mail-oa1-x2c.google.com (mail-oa1-x2c.google.com [IPv6:2001:4860:4864:20::2c]) by smtp4.osuosl.org (Postfix) with ESMTPS id 84ECD40805 for ; Wed, 2 Sep 2026 19:43:05 +0000 (UTC) Received: by mail-oa1-x2c.google.com with SMTP id 586e51a60fabf-465cfc7e33dso985784fac.1 for ; Wed, 02 Sep 2026 12:43:05 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=baylibre.com; s=google; t=1788378185; x=1788982985; darn=lists.u-boot-project.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :content-type:mime-version:subject:date:from:from:to:cc:subject:date :message-id:reply-to:content-type; bh=d849HdEkS0QCffQiTG6DULTxDl5m6Sfd04qjndHZNak=; b=nmw+AFxflgTS5rEbEhNMs7KtpWQIDi3QusG7ReWHNZjaZWycdds2tJmICMPV2FjVeI ru6xb9bP4/k9mlx0mNMxRQh6qNPyNu6zvkkAoimNWwHyriBfBajwB1juLhmnUzv+C8s9 iZ/qmETo+G6VIgbvWAS5DbuhTkHuGutsJOX/fCn37GisxVElRAVTd48Q/Ivi+g9kZHz8 jZ8n0hvkyWtRicj680nWsOaLfZaws/Z0RVeL0Z5jg9853GANROxYMoTQ0hb6LkOj6weP ZXVbx6H/lki51+8qCIwC4zVjK0fT49RunmTaad6VOyWh5e9BhNdlyrj08VvL79kyM0ab F8VQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1788378185; x=1788982985; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :content-type:mime-version:subject:date:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=d849HdEkS0QCffQiTG6DULTxDl5m6Sfd04qjndHZNak=; b=setX9qUVcaFlGn7cwN4mVB4kzC2WAuwUZ5Qi1M+l4HmAh8Uk4fyBLUkL2sNh2g9cjq ZGpI8Hu0aHuwdYi9eIvlN3F4VvBHSleJKcIbvAhR2h0eitr1mCmzYZvpeeH0J5Mdkxr4 PuLVDhXYr+Sf+8+qVEBIxi6cGwa5QG1b+GrcqORv0rPKqbaWQcrMb1616B4eNbcTb5ii 79eqB9TJmi6Chw5d0IBOb5QTLb3gDm9sEX0ujEICU2hVAJzAixbJZ49Z17Bmt3odPLTo gi6WndoxuBqqsoMPGvqifmdgFtuESXBPIz9Wsy0WjoUg/ueujcXSt1pZzHKlypCdXxu1 32iA== X-Gm-Message-State: AFuF++kVbhrac7AQaUOWFkT0tGGc2eKS7LaTE7ZgtygawHTDV4j0MdaV kd3CvosBRU8c89SfIua5ddbefc+BxdTwoNJYFhpPdDqC8HvwU3xvivVrTBc02FL3lYM= X-Gm-Gg: AR+sD10pUlwEuSypiwMiUT7UZDup8GWm5pizREK6rCOmZYL0RQXQH/OEvyYCLMntdtR r9SmmrqeeToA8w6Divs0YuIRkeSUQfTfs9gd6hiX/8U+uxc8Vlxlbw0LzmBDyxTK+sHtq5ZDpAE uqCS9w6RxyWDPy/LMK18QydiAzYBnI+XeBOuiBtjO8b1ZFJbORMnrWu9rZZRRhG4bDMrR2omhxe Ubfv5H+1DcY9FlyAACwa2xa8Rke8XnoSpjaW0b8ikqVnnBYtKThhgutRBIrwLu4MYYK29f9YGCP iD9/+58JRdnb52uaw2OnPF7nDhx2cbO6rRzbinV/O2Rg0FgT4fF0M/PXj8KsxNRJwv5fs/F0DQF cLZvGVJOrPoXMXqp1r7dRK+//baGx+wtcpIj9w8dnvjOQ8eDJAwWXbPTVpUWD/yzk6PgBk2UaFW i3EhqQNlPPMheamYVgVOCYtikqFw1HDnHmbLx6uc3VksLkhFUI+HybJ+DYwJunHRS9znUVwTQg1 LoS X-Received: by 2002:a05:6871:828:b0:46a:5d14:b079 with SMTP id 586e51a60fabf-46f86261e87mr6258925fac.7.1788378184770; Wed, 02 Sep 2026 12:43:04 -0700 (PDT) Received: from [127.0.1.1] ([2600:8803:e7e4:500:518a:9db8:615b:293f]) by smtp.gmail.com with ESMTPSA id 586e51a60fabf-46f336c72fdsm4241804fac.17.2026.09.02.12.43.02 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 02 Sep 2026 12:43:03 -0700 (PDT) From: David Lechner Date: Wed, 02 Sep 2026 14:42:18 -0500 Subject: [PATCH v4 4/4] board: mediatek: add Genio 360 EVK defconfig MIME-Version: 1.0 Message-Id: <20260902-mtk-genio-360-bringup-v4-4-2d38f522c72b@baylibre.com> References: <20260902-mtk-genio-360-bringup-v4-0-2d38f522c72b@baylibre.com> In-Reply-To: <20260902-mtk-genio-360-bringup-v4-0-2d38f522c72b@baylibre.com> To: Tom Rini , Ryder Lee , Weijie Gao , Chunfeng Yun , Igor Belwon , Julien Stephan , GSS_MTK_Uboot_upstream , Macpaul Lin , Ilias Apalodimas Cc: u-boot@lists.u-boot-project.org, David Lechner X-Mailer: b4 0.17-dev X-Developer-Signature: v=1; a=openpgp-sha256; l=2757; i=dlechner@baylibre.com; h=from:subject:message-id; bh=86QR3frISdXiNq64e5VbSk+gIXvorz5CRYpwaRvUcSg=; b=owEBhAF7/pANAwAKAcLMIAH/AY/AAcsmYgBqmHwzzY8t1aMIyGe5H0UjU4JxqF/BySjvKj22O mb84VDfyT+JAUoEAAEKADQWIQTsGNmeYg6D1pzYaJjCzCAB/wGPwAUCaph8MxYcZGxlY2huZXJA YmF5bGlicmUuY29tAAoJEMLMIAH/AY/AvD8H/3T/5vq184xZqbbu39uAYdnAoh8YrmtLT9EEdCB FdbxLlubCnxlLCozVfh0lzUvOKi4RcRjRI8yk0rvCAdVKwpG2XQEL4T1rFHYChdz0pXG9NrrTR/ Heti9H0FofQKEpZQNab9dQ23FvCRoUeXe3HiSwpyaTCEdujWl57Tq0ou6si+QZU5T99xp8CX5+Q 6TU0TmX+N8Du6UFQcFsre+BHQJGARZaVWd7Ts9qG0O4L5Q3e5JrvALZHBBJ6zBiyPEs5DdDOYR8 E/Ab1s5MQkcBvDrLWrXwLaF4kyo0vvU4N2DJb1s11c/xYbyamVw4jHUl2yEkuYjrsIkkVBf//H5 3N6E= X-Developer-Key: i=dlechner@baylibre.com; a=openpgp; fpr=8A73D82A6A1F509907F373881F8AF88C82F77C03 X-BeenThere: u-boot@lists.u-boot-project.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: u-boot-bounces@lists.u-boot-project.org From: Macpaul Lin Add a new defconfig for the MediaTek Genio 360 Evaluation Kit. Signed-off-by: Macpaul Lin Signed-off-by: David Lechner --- board/mediatek/MAINTAINERS | 9 +++++ configs/mt8366_genio_360_evk_defconfig | 62 ++++++++++++++++++++++++++++++++++ 2 files changed, 71 insertions(+) diff --git a/board/mediatek/MAINTAINERS b/board/mediatek/MAINTAINERS index 47f91d6e81c..873179a765e 100644 --- a/board/mediatek/MAINTAINERS +++ b/board/mediatek/MAINTAINERS @@ -14,6 +14,15 @@ M: Julien Masson S: Maintained F: configs/mt8365_evk_defconfig +MT8366 +M: Macpaul Lin +S: Maintained +F: arch/arm/dts/mt8366-genio-360-evk-common.dtsi +F: arch/arm/dts/mt8366-genio-360-evk.dts +F: arch/arm/dts/mt8366.dtsi +F: configs/mt8366_genio_360_evk_defconfig +F: include/dt-bindings/gce/mt8366-gce.h + MT8188/MT8370/MT8390 M: Macpaul Lin M: Julien Stephan diff --git a/configs/mt8366_genio_360_evk_defconfig b/configs/mt8366_genio_360_evk_defconfig new file mode 100644 index 00000000000..03de6573aa5 --- /dev/null +++ b/configs/mt8366_genio_360_evk_defconfig @@ -0,0 +1,62 @@ +CONFIG_ARM=y +CONFIG_COUNTER_FREQUENCY=13000000 +CONFIG_POSITION_INDEPENDENT=y +CONFIG_ARCH_MEDIATEK=y +CONFIG_TEXT_BASE=0x4c000000 +CONFIG_NR_DRAM_BANKS=1 +CONFIG_DM_GPIO=y +CONFIG_DEFAULT_DEVICE_TREE="mt8366-genio-360-evk" +CONFIG_OF_LIBFDT_OVERLAY=y +CONFIG_TARGET_MT8366=y +CONFIG_SYS_LOAD_ADDR=0x4c000000 +CONFIG_FIT=y +CONFIG_BOOTSTD_FULL=y +CONFIG_DEFAULT_FDT_FILE="mt8366-genio-360-evk" +# CONFIG_BOARD_INIT is not set +CONFIG_CMD_CLK=y +CONFIG_CMD_DM=y +CONFIG_CMD_GPIO=y +CONFIG_CMD_GPT=y +CONFIG_CMD_MMC=y +CONFIG_CMD_MTD=y +CONFIG_CMD_USB=y +CONFIG_CMD_PMIC=y +CONFIG_CMD_REGULATOR=y +CONFIG_NET_LWIP=y +CONFIG_NET_RANDOM_ETHADDR=y +CONFIG_CLK=y +CONFIG_POWER_DOMAIN=y +CONFIG_MT8366_POWER_DOMAIN=y +CONFIG_MMC_MTK=y +CONFIG_FS_FAT=y +CONFIG_MTD=y +CONFIG_DM_MTD=y +CONFIG_DM_SPI_FLASH=y +CONFIG_SPI_FLASH_SFDP_SUPPORT=y +CONFIG_SPI_FLASH_MACRONIX=y +CONFIG_SPI_FLASH_MTD=y +CONFIG_DWC_ETH_QOS=y +CONFIG_DWC_ETH_QOS_MTK=y +CONFIG_PHY_AIROHA=y +CONFIG_PHY_AIROHA_AN8801=y +CONFIG_PHY_ETHERNET_ID=y +CONFIG_PHY=y +CONFIG_PHY_MTK_TPHY=y +CONFIG_PINCTRL=y +CONFIG_DM_PMIC=y +CONFIG_DM_PMIC_MTK_PWRAP=y +CONFIG_DM_REGULATOR=y +CONFIG_DM_REGULATOR_FIXED=y +CONFIG_DM_REGULATOR_MT6358=y +CONFIG_BAUDRATE=921600 +CONFIG_DM_SERIAL=y +CONFIG_MTK_SERIAL=y +CONFIG_SPI=y +CONFIG_DM_SPI=y +CONFIG_MTK_SNOR=y +CONFIG_USB=y +CONFIG_USB_XHCI_HCD=y +CONFIG_USB_XHCI_MTK=y +CONFIG_USB_MTU3=y +CONFIG_WDT=y +CONFIG_WDT_MTK=y