From nobody Fri Sep 20 09:47:42 2024 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id DED51CDB474 for ; Thu, 12 Oct 2023 23:02:57 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1443074AbjJLXC4 (ORCPT ); Thu, 12 Oct 2023 19:02:56 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:44160 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1344180AbjJLXCy (ORCPT ); Thu, 12 Oct 2023 19:02:54 -0400 Received: from mail-pl1-x62f.google.com (mail-pl1-x62f.google.com [IPv6:2607:f8b0:4864:20::62f]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 39FECA9 for ; Thu, 12 Oct 2023 16:02:52 -0700 (PDT) Received: by mail-pl1-x62f.google.com with SMTP id d9443c01a7336-1c88b46710bso11791195ad.1 for ; Thu, 12 Oct 2023 16:02:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; t=1697151772; x=1697756572; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=xzPG+xpT5BbDg0qW2qt+Y19uOu7gh9PwNNdVozZqNeg=; b=ORzF2WtqmhanDFaA7QXWdAKBDR0zTc+NkCtKBc9qsEGqlOpJvqfyZzIw3Xys3I5lRu a5Nl7z/OdnfzpsZ/XBfb6fJedOscXIdwU5741lVApdOnmXIGL018YTSFvCAW/bvJdqak alKrlm9Z1LmpDzXK8UqfULYoIwbrKcmwsChNY= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1697151772; x=1697756572; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=xzPG+xpT5BbDg0qW2qt+Y19uOu7gh9PwNNdVozZqNeg=; b=chbfcvhVQleHJ6xL3vIgcNgKttPgW+/jItLA+dUZhcoxoELgMLLTqvrx/Y6xJEw2RR A909dZ+lBg3UPIVkxQKW3GotFGhVxOnzQYLBEZTGYwAyzIXzHpGJM5Gmaoz5MVlFVaqW T8Z/9jYpqFcyoNBueuChc9kBNaDl1LGIHGWA/utGu6URfGHDtaYTYWcWUz+Ve+BKrekZ bTAnT+Rf8arFh2UnwMKN3rhGEUmvn72khsVJC4S1qN8zyRsNuI4XLqVp2DejUwHmc7Rj 1EweEgfjA2jd2NFR8656rkG+ZV0d76BOQOZhOMHVvNbm3ggFQpQ40vwMxKSNYnGXcm28 Rj5A== X-Gm-Message-State: AOJu0Yzfa9AvKSUeWsJKJ8Aekv+a3uOd/hUNXXI/sBmwcQS7OEulamzy bPesPwVii6C64D+lfh/J7VmfQw== X-Google-Smtp-Source: AGHT+IEYr7Z3L7HFXDZ1gZ63Wpm+nie3UzPvm4bf0fksbBj+rHkZdRp9mK7kNdXak7fH4bxBC7KHKw== X-Received: by 2002:a17:902:a409:b0:1c6:33fe:257b with SMTP id p9-20020a170902a40900b001c633fe257bmr23054265plq.19.1697151771692; Thu, 12 Oct 2023 16:02:51 -0700 (PDT) Received: from wenstp920.tpe.corp.google.com ([2401:fa00:1:10:7397:2561:ed13:bac8]) by smtp.gmail.com with ESMTPSA id g11-20020a1709026b4b00b001c613091aeasm2494390plt.297.2023.10.12.16.02.49 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 12 Oct 2023 16:02:51 -0700 (PDT) From: Chen-Yu Tsai To: Matthias Brugger , AngeloGioacchino Del Regno , Rob Herring , Krzysztof Kozlowski , Conor Dooley Cc: Chen-Yu Tsai , devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-kernel@vger.kernel.org Subject: [PATCH 1/9] dt-bindings: arm: mediatek: Sort entries by SoC then board compatibles Date: Fri, 13 Oct 2023 07:02:27 +0800 Message-ID: <20231012230237.2676469-2-wenst@chromium.org> X-Mailer: git-send-email 2.42.0.655.g421f12c284-goog In-Reply-To: <20231012230237.2676469-1-wenst@chromium.org> References: <20231012230237.2676469-1-wenst@chromium.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" Some of the new MediaTek board entries were inserted in a chronological order, or just randomly. This makes it harder to search for an entry. Sort the entries by first grouping by SoC, then sorting by board compatible strings. Also add a comment at the top asking people to do the same. Signed-off-by: Chen-Yu Tsai Acked-by: Conor Dooley --- .../devicetree/bindings/arm/mediatek.yaml | 123 +++++++++--------- 1 file changed, 62 insertions(+), 61 deletions(-) diff --git a/Documentation/devicetree/bindings/arm/mediatek.yaml b/Document= ation/devicetree/bindings/arm/mediatek.yaml index a5999b3afc35..60337b439744 100644 --- a/Documentation/devicetree/bindings/arm/mediatek.yaml +++ b/Documentation/devicetree/bindings/arm/mediatek.yaml @@ -17,6 +17,7 @@ properties: const: '/' compatible: oneOf: + # Sort by SoC (last) compatible, then board compatible - items: - enum: - mediatek,mt2701-evb @@ -129,71 +130,10 @@ properties: - enum: - mediatek,mt8173-evb - const: mediatek,mt8173 - - items: - - enum: - - mediatek,mt8183-evb - - const: mediatek,mt8183 - - description: Google Hayato rev5 - items: - - const: google,hayato-rev5-sku2 - - const: google,hayato-sku2 - - const: google,hayato - - const: mediatek,mt8192 - - description: Google Hayato - items: - - const: google,hayato-rev1 - - const: google,hayato - - const: mediatek,mt8192 - - description: Google Spherion rev4 (Acer Chromebook 514) - items: - - const: google,spherion-rev4 - - const: google,spherion - - const: mediatek,mt8192 - - description: Google Spherion (Acer Chromebook 514) - items: - - const: google,spherion-rev3 - - const: google,spherion-rev2 - - const: google,spherion-rev1 - - const: google,spherion-rev0 - - const: google,spherion - - const: mediatek,mt8192 - - description: Acer Tomato (Acer Chromebook Spin 513 CP513-2H) - items: - - enum: - - google,tomato-rev2 - - google,tomato-rev1 - - const: google,tomato - - const: mediatek,mt8195 - - description: Acer Tomato rev3 - 4 (Acer Chromebook Spin 513 CP513-= 2H) - items: - - const: google,tomato-rev4 - - const: google,tomato-rev3 - - const: google,tomato - - const: mediatek,mt8195 - - items: - - enum: - - mediatek,mt8186-evb - - const: mediatek,mt8186 - - items: - - enum: - - mediatek,mt8192-evb - - const: mediatek,mt8192 - - items: - - enum: - - mediatek,mt8195-demo - - mediatek,mt8195-evb - - const: mediatek,mt8195 - description: Google Burnet (HP Chromebook x360 11MK G3 EE) items: - const: google,burnet - const: mediatek,mt8183 - - description: Google Krane (Lenovo IdeaPad Duet, 10e,...) - items: - - enum: - - google,krane-sku0 - - google,krane-sku176 - - const: google,krane - - const: mediatek,mt8183 - description: Google Cozmo (Acer Chromebook 314) items: - const: google,cozmo @@ -244,6 +184,13 @@ properties: - google,kodama-sku32 - const: google,kodama - const: mediatek,mt8183 + - description: Google Krane (Lenovo IdeaPad Duet, 10e,...) + items: + - enum: + - google,krane-sku0 + - google,krane-sku176 + - const: google,krane + - const: mediatek,mt8183 - description: Google Willow (Acer Chromebook 311 C722/C722T) items: - enum: @@ -251,10 +198,64 @@ properties: - google,willow-sku1 - const: google,willow - const: mediatek,mt8183 + - items: + - enum: + - mediatek,mt8183-evb + - const: mediatek,mt8183 - items: - enum: - mediatek,mt8183-pumpkin - const: mediatek,mt8183 + - items: + - enum: + - mediatek,mt8186-evb + - const: mediatek,mt8186 + - description: Google Hayato + items: + - const: google,hayato-rev1 + - const: google,hayato + - const: mediatek,mt8192 + - description: Google Hayato rev5 + items: + - const: google,hayato-rev5-sku2 + - const: google,hayato-sku2 + - const: google,hayato + - const: mediatek,mt8192 + - description: Google Spherion (Acer Chromebook 514) + items: + - const: google,spherion-rev3 + - const: google,spherion-rev2 + - const: google,spherion-rev1 + - const: google,spherion-rev0 + - const: google,spherion + - const: mediatek,mt8192 + - description: Google Spherion rev4 (Acer Chromebook 514) + items: + - const: google,spherion-rev4 + - const: google,spherion + - const: mediatek,mt8192 + - items: + - enum: + - mediatek,mt8192-evb + - const: mediatek,mt8192 + - description: Acer Tomato (Acer Chromebook Spin 513 CP513-2H) + items: + - enum: + - google,tomato-rev2 + - google,tomato-rev1 + - const: google,tomato + - const: mediatek,mt8195 + - description: Acer Tomato rev3 - 4 (Acer Chromebook Spin 513 CP513-= 2H) + items: + - const: google,tomato-rev4 + - const: google,tomato-rev3 + - const: google,tomato + - const: mediatek,mt8195 + - items: + - enum: + - mediatek,mt8195-demo + - mediatek,mt8195-evb + - const: mediatek,mt8195 - items: - enum: - mediatek,mt8365-evk --=20 2.42.0.655.g421f12c284-goog From nobody Fri Sep 20 09:47:42 2024 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 2B188C41513 for ; Thu, 12 Oct 2023 23:03:01 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1443084AbjJLXDA (ORCPT ); Thu, 12 Oct 2023 19:03:00 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:44176 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1443069AbjJLXC4 (ORCPT ); Thu, 12 Oct 2023 19:02:56 -0400 Received: from mail-pl1-x635.google.com (mail-pl1-x635.google.com [IPv6:2607:f8b0:4864:20::635]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 6D424BE for ; Thu, 12 Oct 2023 16:02:54 -0700 (PDT) Received: by mail-pl1-x635.google.com with SMTP id d9443c01a7336-1c9e072472bso9347495ad.2 for ; Thu, 12 Oct 2023 16:02:54 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; t=1697151774; x=1697756574; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=8yqkAgo/MWU32uTOpYWxBlk99kCXZj/R+2kdYHDmcPQ=; b=YLkb/zEIgErr7W5Ns7a5qrTYcRqXuZsUUm2dcznj61eRVviTk/IU+7RE2oDmhPxVLW kWnmUTed+tUy8a5+4pQnxc48/m2vMg/Irs/oC3SPcqeVZ1EhCxJjbezEouz2e9CzkuIt k1o0XMAr7ICA1hQSxYjx9qlyfgLSnfQ4h/Ngw= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1697151774; x=1697756574; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=8yqkAgo/MWU32uTOpYWxBlk99kCXZj/R+2kdYHDmcPQ=; b=Tj6GGH8ZBW8KDkolGbe9V8q6eOGMFd67oLDrurA23GdnpciuFptX8x2/VhiLKa+PJ3 8r+ICVJk4y8aoe0QpZMtRVfHFZLh74o8b8Mydnf5EqJhgWbjHtITcmDj1Smndn4h6Msn lgqfP16VluqkKG/qJiwsMBbROYMyl8WCgWWlO7rfkTFOU+sjLUcBV8VKiAtgIDuri44n /fePP1yk9UHPgkgGGFBpxcV3sZaQkE+pV4jMRBP4ufUFdfTpnxvVYCrR3gNxc0hOLQpX npL0haVb6h5N3c2ZxNm2KW1gSEEAZBL+nE4LirOXn4/NX2tlnaX3HunwhiYF/2JtZr23 0QaA== X-Gm-Message-State: AOJu0YwKewjAWDn1HDxugFxWr1Gc7a6coliB5N/xAsTqxM75AD580XP3 WJxvDouJ8KcsnjFOEI2OSCTaWA== X-Google-Smtp-Source: AGHT+IG4Jz3St0JSY+Xv22Ld5Lp75IMTOmETltc03cF5+vYAt26xlXAJR4aUtfFXw/keyYea6CEZbQ== X-Received: by 2002:a17:902:e803:b0:1c6:2acc:62ea with SMTP id u3-20020a170902e80300b001c62acc62eamr28185711plg.57.1697151773931; Thu, 12 Oct 2023 16:02:53 -0700 (PDT) Received: from wenstp920.tpe.corp.google.com ([2401:fa00:1:10:7397:2561:ed13:bac8]) by smtp.gmail.com with ESMTPSA id g11-20020a1709026b4b00b001c613091aeasm2494390plt.297.2023.10.12.16.02.51 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 12 Oct 2023 16:02:53 -0700 (PDT) From: Chen-Yu Tsai To: Matthias Brugger , AngeloGioacchino Del Regno , Rob Herring , Krzysztof Kozlowski , Conor Dooley Cc: Chen-Yu Tsai , devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-kernel@vger.kernel.org Subject: [PATCH 2/9] dt-bindings: arm: mediatek: Add MT8186 Tentacruel / Tentacool Chromebooks Date: Fri, 13 Oct 2023 07:02:28 +0800 Message-ID: <20231012230237.2676469-3-wenst@chromium.org> X-Mailer: git-send-email 2.42.0.655.g421f12c284-goog In-Reply-To: <20231012230237.2676469-1-wenst@chromium.org> References: <20231012230237.2676469-1-wenst@chromium.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" Add entries for MT8186 based Tentacruel / Tentacool Chromebooks. The two are based on the same board design: the former is a convertible device with a touchscreen, stylus, and some extra buttons; the latter is a clamshell device and lacks these additional features. The two devices both have two variants. The difference is a second source touchpad controller that shares the same address as the original, but is incompatible. The extra SKU IDs for the Tentacruel devices map to different sensor components attached to the Embedded Controller. These are not visible to the main processor. Signed-off-by: Chen-Yu Tsai --- .../devicetree/bindings/arm/mediatek.yaml | 26 +++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/Documentation/devicetree/bindings/arm/mediatek.yaml b/Document= ation/devicetree/bindings/arm/mediatek.yaml index 60337b439744..aa7e6734b336 100644 --- a/Documentation/devicetree/bindings/arm/mediatek.yaml +++ b/Documentation/devicetree/bindings/arm/mediatek.yaml @@ -206,6 +206,32 @@ properties: - enum: - mediatek,mt8183-pumpkin - const: mediatek,mt8183 + - description: Google Tentacruel (ASUS Chromebook CM14 Flip CM1402F) + items: + - const: google,tentacruel-sku262144 + - const: google,tentacruel-sku262145 + - const: google,tentacruel-sku262146 + - const: google,tentacruel-sku262147 + - const: google,tentacruel + - const: mediatek,mt8186 + - description: Google Tentacruel (ASUS Chromebook CM14 Flip CM1402F) + items: + - const: google,tentacruel-sku262148 + - const: google,tentacruel-sku262149 + - const: google,tentacruel-sku262150 + - const: google,tentacruel-sku262151 + - const: google,tentacruel + - const: mediatek,mt8186 + - description: Google Tentacool (ASUS Chromebook CM14 CM1402C) + items: + - const: google,tentacruel-sku327681 + - const: google,tentacruel + - const: mediatek,mt8186 + - description: Google Tentacool (ASUS Chromebook CM14 CM1402C) + items: + - const: google,tentacruel-sku327683 + - const: google,tentacruel + - const: mediatek,mt8186 - items: - enum: - mediatek,mt8186-evb --=20 2.42.0.655.g421f12c284-goog From nobody Fri Sep 20 09:47:42 2024 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id B1E37CDB483 for ; Thu, 12 Oct 2023 23:03:06 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1443079AbjJLXDF (ORCPT ); Thu, 12 Oct 2023 19:03:05 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:57546 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1443068AbjJLXC6 (ORCPT ); Thu, 12 Oct 2023 19:02:58 -0400 Received: from mail-pl1-x629.google.com (mail-pl1-x629.google.com [IPv6:2607:f8b0:4864:20::629]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id A0373CF for ; Thu, 12 Oct 2023 16:02:56 -0700 (PDT) Received: by mail-pl1-x629.google.com with SMTP id d9443c01a7336-1c9d922c039so12692225ad.3 for ; Thu, 12 Oct 2023 16:02:56 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; t=1697151776; x=1697756576; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=qE2xuZH+agCjBR7PCdArWMNvITRMyBp9lywkci3iPfo=; b=bC/ArQfa8wQnogpeFi4YL961TNs9eEf9N/XXz+SlKdWnE8zqTOhI1QozMXK3SmMVZ6 yqha7VXnmBye552w8DuZi5q9K/2NxY5nqQ3YHgL93F71uVjtTzdJ8FIUJTIr9rALYseR zb+Dj8SkNu/G2dBpJGcDH3pu1c1iVKfESaUVE= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1697151776; x=1697756576; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=qE2xuZH+agCjBR7PCdArWMNvITRMyBp9lywkci3iPfo=; b=ITqPr3ezsqVFUpkDSZPzx87kekQfiWEjVqRVwYPv/He5UnOavqNz7HA9rytJaq2AOQ D2TTZX00YjP+otZ/uNze6O0HJT4hx+1gEzX3wAtvBU3ovYTEr9tSsrWWth/Temjr2HQH 0QsJ6gRY6dWzPtQ/PbIMSUQ3ecGeAF0FwVL9hl5otJKzZne9CTMCXj+L+kXcW3OwtjII +g9YG/g2pHfrI49jqwHqg6OzwZxMIEmpp89f60gO+OzLcxKDFcZs/ZAZqOjfAwTcfH80 0zzUXM53uc93MOZMof3Cmw4ZPAkOO+/Mlb+mxVXS1hAU7DkuGaph1VTiMqG7JX2ccRGU Vqag== X-Gm-Message-State: AOJu0YypEjStK8oH4U5ByZNGqeckUAJ/rnKimEyf1Vd3v0Mj18wVaffi EpOxmWekqnsMKKAJQ03CMu1SvA== X-Google-Smtp-Source: AGHT+IH82x0sce06pOgWdTOBXT/0/9Qeyys0giYi3PeU9VJRdoN88a47OlyJF9OWRAjbgB1qKDskbA== X-Received: by 2002:a17:902:dac9:b0:1bf:4582:90d with SMTP id q9-20020a170902dac900b001bf4582090dmr31465372plx.46.1697151776154; Thu, 12 Oct 2023 16:02:56 -0700 (PDT) Received: from wenstp920.tpe.corp.google.com ([2401:fa00:1:10:7397:2561:ed13:bac8]) by smtp.gmail.com with ESMTPSA id g11-20020a1709026b4b00b001c613091aeasm2494390plt.297.2023.10.12.16.02.54 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 12 Oct 2023 16:02:55 -0700 (PDT) From: Chen-Yu Tsai To: Matthias Brugger , AngeloGioacchino Del Regno , Rob Herring , Krzysztof Kozlowski , Conor Dooley Cc: Chen-Yu Tsai , devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-kernel@vger.kernel.org Subject: [PATCH 3/9] dt-bindings: arm: mediatek: Add MT8186 Steelix Chromebook Date: Fri, 13 Oct 2023 07:02:29 +0800 Message-ID: <20231012230237.2676469-4-wenst@chromium.org> X-Mailer: git-send-email 2.42.0.655.g421f12c284-goog In-Reply-To: <20231012230237.2676469-1-wenst@chromium.org> References: <20231012230237.2676469-1-wenst@chromium.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" Add an entry for the MT8186 based Steelix Chromebook, also known as the Lenovo 300e Yoga Chromebook Gen 4. Signed-off-by: Chen-Yu Tsai --- Documentation/devicetree/bindings/arm/mediatek.yaml | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/Documentation/devicetree/bindings/arm/mediatek.yaml b/Document= ation/devicetree/bindings/arm/mediatek.yaml index aa7e6734b336..fafd5e18f640 100644 --- a/Documentation/devicetree/bindings/arm/mediatek.yaml +++ b/Documentation/devicetree/bindings/arm/mediatek.yaml @@ -206,6 +206,13 @@ properties: - enum: - mediatek,mt8183-pumpkin - const: mediatek,mt8183 + - description: Google Steelix (Lenovo 300e Yoga Chromebook Gen 4) + items: + - enum: + - google,steelix-sku131072 + - google,steelix-sku131073 + - const: google,steelix + - const: mediatek,mt8186 - description: Google Tentacruel (ASUS Chromebook CM14 Flip CM1402F) items: - const: google,tentacruel-sku262144 --=20 2.42.0.655.g421f12c284-goog From nobody Fri Sep 20 09:47:42 2024 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id A52F1CDB482 for ; Thu, 12 Oct 2023 23:03:09 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1443086AbjJLXDI (ORCPT ); Thu, 12 Oct 2023 19:03:08 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:57676 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1443095AbjJLXDD (ORCPT ); Thu, 12 Oct 2023 19:03:03 -0400 Received: from mail-pl1-x635.google.com (mail-pl1-x635.google.com [IPv6:2607:f8b0:4864:20::635]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id DEA3AE1 for ; Thu, 12 Oct 2023 16:02:58 -0700 (PDT) Received: by mail-pl1-x635.google.com with SMTP id d9443c01a7336-1c8a1541232so13529485ad.0 for ; Thu, 12 Oct 2023 16:02:58 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; t=1697151778; x=1697756578; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=GBvy7lbYwOwBhn+AJIxwjjdhBjxul9CUNWBOFs/FosQ=; b=UIj4TMYElMdp6G4kwkWFYIq0vBIjEHUBXm86+uO/we2nKAn/mA2d62eC0tFDUwDUOt IrMXD0nc4zQ6vhYRnMFneu5d7a6y0cmFAjm+6bNTTe4ixkMWoGTF5bRWqI4E3PudaTSX 5rH0Rw75TbMzC3iMLDbZUgzCg4HM8CXWrsYTM= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1697151778; x=1697756578; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=GBvy7lbYwOwBhn+AJIxwjjdhBjxul9CUNWBOFs/FosQ=; b=B4UHDVlxLnKB9Q/RNq8bbPi9HtAjAVLkN+GdWKvTn+Bq/aG/yPADTaPlVIDsXuOwuh C9nXRfvcgh0HYcEWMBHcwA+TXOFzrMWt45ZYDp861GDEznLtzQuDvxnoei5fm6pTBu6Y 7WK+BROfV0OQRcf67BBj+f6pBgwcQAioigKmPjA6Wkcxp6NIEIEGoeB25XiROnz+DXkw dJB5c/0KeSipgFBuXW/O+GfGTv2R4QCuRJLyGFInm9/UnBjVWzJS+DdHdnK9FUZDCuT/ Vwk2DFtGPbAlFHafyPUp/nBHVpkgmXWnA2mXeQ+pQi41TWCurW6QLAHd3LGDvgUFU2yr ak3g== X-Gm-Message-State: AOJu0Yy5z83YAXwTF7rSWBH1COO5KzXVc8CBHK55juYrmi068bopmP7I ad7tWpKoq7BNcjvVvHvmwVxItA== X-Google-Smtp-Source: AGHT+IGXznJ4hIrXPd2v4LG0qd7GDuqFPhe4DtqE9+/RvasogqCkxgRRCfWmbESl1PyoeLxvWTeJjA== X-Received: by 2002:a17:902:f14c:b0:1c9:e0f9:a668 with SMTP id d12-20020a170902f14c00b001c9e0f9a668mr2179774plb.18.1697151778356; Thu, 12 Oct 2023 16:02:58 -0700 (PDT) Received: from wenstp920.tpe.corp.google.com ([2401:fa00:1:10:7397:2561:ed13:bac8]) by smtp.gmail.com with ESMTPSA id g11-20020a1709026b4b00b001c613091aeasm2494390plt.297.2023.10.12.16.02.56 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 12 Oct 2023 16:02:58 -0700 (PDT) From: Chen-Yu Tsai To: Matthias Brugger , AngeloGioacchino Del Regno , Rob Herring , Krzysztof Kozlowski , Conor Dooley Cc: Chen-Yu Tsai , devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-kernel@vger.kernel.org Subject: [PATCH 4/9] dt-bindings: arm: mediatek: Add MT8186 Rusty Chromebook Date: Fri, 13 Oct 2023 07:02:30 +0800 Message-ID: <20231012230237.2676469-5-wenst@chromium.org> X-Mailer: git-send-email 2.42.0.655.g421f12c284-goog In-Reply-To: <20231012230237.2676469-1-wenst@chromium.org> References: <20231012230237.2676469-1-wenst@chromium.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" Add an entry for the MT8186 based Rusty Chromebook, also known as the Lenovo 100e Chromebook Gen 4. Signed-off-by: Chen-Yu Tsai --- Documentation/devicetree/bindings/arm/mediatek.yaml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/Documentation/devicetree/bindings/arm/mediatek.yaml b/Document= ation/devicetree/bindings/arm/mediatek.yaml index fafd5e18f640..5e5834d9865f 100644 --- a/Documentation/devicetree/bindings/arm/mediatek.yaml +++ b/Documentation/devicetree/bindings/arm/mediatek.yaml @@ -206,6 +206,12 @@ properties: - enum: - mediatek,mt8183-pumpkin - const: mediatek,mt8183 + - description: Google Rusty (Lenovo 100e Chromebook Gen 4) + items: + - const: google,steelix-sku196608 + - const: google,steelix-sku196609 + - const: google,steelix + - const: mediatek,mt8186 - description: Google Steelix (Lenovo 300e Yoga Chromebook Gen 4) items: - enum: --=20 2.42.0.655.g421f12c284-goog From nobody Fri Sep 20 09:47:42 2024 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 04CAFCDB474 for ; Thu, 12 Oct 2023 23:03:12 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1443105AbjJLXDM (ORCPT ); Thu, 12 Oct 2023 19:03:12 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:57650 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1443085AbjJLXDE (ORCPT ); Thu, 12 Oct 2023 19:03:04 -0400 Received: from mail-pl1-x634.google.com (mail-pl1-x634.google.com [IPv6:2607:f8b0:4864:20::634]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 0C5DAF2 for ; Thu, 12 Oct 2023 16:03:01 -0700 (PDT) Received: by mail-pl1-x634.google.com with SMTP id d9443c01a7336-1c9d3a21f7aso12701375ad.2 for ; Thu, 12 Oct 2023 16:03:01 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; t=1697151780; x=1697756580; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=RIH+YvGCzBPNtKNlT8wLBn/0tQkDSpCAQdxybdH6cwo=; b=Ky/YuNs1FNez3PueN1yU5xUOODqzPkZO4mpDCeH8r2lRRbYzUjOcJtxB/TlyW78SeD ZyF/QFKYJCMsHqykS8Pdz+Bs9h5rmoBrzSa9oWwOkgKdtxMHQfGUofJu1fO0KHoAidxF uq0F0Ak343S8kRBVyUS/SxTgjMx0ZM3wBeELk= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1697151780; x=1697756580; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=RIH+YvGCzBPNtKNlT8wLBn/0tQkDSpCAQdxybdH6cwo=; b=LWuBjZ1AMcrTPycztiyRWHNJBtnE2EdxPRmH8vDMhRVkqjDatx3+UOEPf59BQ+pQAG Ee6exIIQnZ7/ZF7GAdC+ZKxwYYln33iS2b0ujkD19/B4/bJljzIDuTTpvb56VPUEiYcD AkmxKTB4a6Fuzg2cVW0X8eEUM7NWMstAI0YaZgidzGAcoqJb0sdejThog7hIGKed429e lWZ3Zi2hdUXy0giowqKB/HM5Jhr6ZEdRCPDdhaiSe6cB1wr653jPd7GsrRzjZVDbv/zJ I1ojtw/Izz1kxohPoIlSZaJk3XnEtLMaedubKK5Lgbh00UxZYqNdFC+xbaW3PGfGBq3/ Kx8Q== X-Gm-Message-State: AOJu0Yxy+mtn/XH7n6eb0p9HdospcDAVjf6q3b7bGZNY41z/ESpeGg9e q0b079cdC54uJVmGZAgw7wy5Kg== X-Google-Smtp-Source: AGHT+IFBHMMkJoSakpp1N70bOiH3PMSzDjXVxC2bq1hCrP6zNIw/kZcHm0z6MEySLozadGI5ljy7GA== X-Received: by 2002:a17:902:f2d3:b0:1c9:ec98:217 with SMTP id h19-20020a170902f2d300b001c9ec980217mr1142980plc.41.1697151780553; Thu, 12 Oct 2023 16:03:00 -0700 (PDT) Received: from wenstp920.tpe.corp.google.com ([2401:fa00:1:10:7397:2561:ed13:bac8]) by smtp.gmail.com with ESMTPSA id g11-20020a1709026b4b00b001c613091aeasm2494390plt.297.2023.10.12.16.02.58 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 12 Oct 2023 16:03:00 -0700 (PDT) From: Chen-Yu Tsai To: Matthias Brugger , AngeloGioacchino Del Regno , Rob Herring , Krzysztof Kozlowski , Conor Dooley Cc: Chen-Yu Tsai , devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-kernel@vger.kernel.org Subject: [PATCH 5/9] dt-bindings: arm: mediatek: Add MT8186 Magneton Chromebooks Date: Fri, 13 Oct 2023 07:02:31 +0800 Message-ID: <20231012230237.2676469-6-wenst@chromium.org> X-Mailer: git-send-email 2.42.0.655.g421f12c284-goog In-Reply-To: <20231012230237.2676469-1-wenst@chromium.org> References: <20231012230237.2676469-1-wenst@chromium.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" Add entries for the MT8186 based Chromebooks, also collectively known as the Lenovo IdeaPad Slim 3 Chromebook (14M868). It is also based on the "Steelix" design. Being a laptop instead of a convertible device, there is no touchscreen or stylus, which is similar to Rusty. However Magneton does not have ports on the right side of the device. Three variants are listed separately. These use different touchscreen controllers, or lack a touchscreen altogether. Signed-off-by: Chen-Yu Tsai --- .../devicetree/bindings/arm/mediatek.yaml | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/Documentation/devicetree/bindings/arm/mediatek.yaml b/Document= ation/devicetree/bindings/arm/mediatek.yaml index 5e5834d9865f..a4541855a838 100644 --- a/Documentation/devicetree/bindings/arm/mediatek.yaml +++ b/Documentation/devicetree/bindings/arm/mediatek.yaml @@ -206,6 +206,24 @@ properties: - enum: - mediatek,mt8183-pumpkin - const: mediatek,mt8183 + - description: Google Magneton (Lenovo IdeaPad Slim 3 Chromebook (14= M868)) + items: + - const: google,steelix-sku393216 + - const: google,steelix-sku393219 + - const: google,steelix + - const: mediatek,mt8186 + - description: Google Magneton (Lenovo IdeaPad Slim 3 Chromebook (14= M868)) + items: + - const: google,steelix-sku393217 + - const: google,steelix-sku393220 + - const: google,steelix + - const: mediatek,mt8186 + - description: Google Magneton (Lenovo IdeaPad Slim 3 Chromebook (14= M868)) + items: + - const: google,steelix-sku393218 + - const: google,steelix-sku393221 + - const: google,steelix + - const: mediatek,mt8186 - description: Google Rusty (Lenovo 100e Chromebook Gen 4) items: - const: google,steelix-sku196608 --=20 2.42.0.655.g421f12c284-goog From nobody Fri Sep 20 09:47:42 2024 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 3D755CDB474 for ; Thu, 12 Oct 2023 23:03:26 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1443096AbjJLXDY (ORCPT ); Thu, 12 Oct 2023 19:03:24 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:44554 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1443085AbjJLXDQ (ORCPT ); Thu, 12 Oct 2023 19:03:16 -0400 Received: from mail-pl1-x632.google.com (mail-pl1-x632.google.com [IPv6:2607:f8b0:4864:20::632]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id D4C35D9 for ; Thu, 12 Oct 2023 16:03:03 -0700 (PDT) Received: by mail-pl1-x632.google.com with SMTP id d9443c01a7336-1c9bca1d96cso12649055ad.3 for ; Thu, 12 Oct 2023 16:03:03 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; t=1697151783; x=1697756583; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=Bn5Ecduz7on8TvFLHVoVC96NE7w0G3SGZ/gUWUrFJgc=; b=NfxLcwURe25/GsMcGZJqslmOAny9UZzAtZJMUxDv0tXHAFhWjevmu/PWpeG2BfyNw7 ixT00ohB5cwKWbXsqoh5ned6WS5tb9f4AhpoHuWnKirmqpbfjKNIDLcH2xmb4lUsqBBk 9DlmHzzlQtkQpMNs1WYz4Em+/skZ8e7rEuxNc= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1697151783; x=1697756583; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=Bn5Ecduz7on8TvFLHVoVC96NE7w0G3SGZ/gUWUrFJgc=; b=rcAIG1PgGDtVo49TM/2PJ1tdYmjv7I/dwlN4IL/XdTmqXfBkM729w6Gt+UI1tZ5y81 3Dud3S+FBz9HeZpj/6CIlf/6euHox4I688AZRBirjHthnBKy87419vd73C7TdFwkvkKA iUEO0+jjKOZAmgeagMWBpQAtRb2oXMT4fgLWYZY029gHQuMiEoaD0I1Xb4uN78Qao1pT 3PBMNXvOwezSs/bGMeL8efrjsqiUYSQjoZdHR7sET+x1kYE29t27fOmQR1ylbnAv5Hxm uCFqBGfafHWi3T+ayoYwSkdWRJGTMcTutTMc94yFwJ4126b8tX+7oOi7RUKwrGNBwFxO wcQQ== X-Gm-Message-State: AOJu0YzaQeH7RMf7S1PO/O2g4w4JeRbibHLMBZyz5uXfrWWDAbUMVXys NmMt4sIOLpyNKbZdzougf48Mgw== X-Google-Smtp-Source: AGHT+IHvWLheV+cff+gNI6+jV98ZxPabKgsV8UosGidPu6YDu0WS2Bg5e7NIgYAFkrmE8jy1CLG8hA== X-Received: by 2002:a17:902:e746:b0:1c9:d3ce:e7d3 with SMTP id p6-20020a170902e74600b001c9d3cee7d3mr5530525plf.4.1697151782997; Thu, 12 Oct 2023 16:03:02 -0700 (PDT) Received: from wenstp920.tpe.corp.google.com ([2401:fa00:1:10:7397:2561:ed13:bac8]) by smtp.gmail.com with ESMTPSA id g11-20020a1709026b4b00b001c613091aeasm2494390plt.297.2023.10.12.16.03.00 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 12 Oct 2023 16:03:02 -0700 (PDT) From: Chen-Yu Tsai To: Matthias Brugger , AngeloGioacchino Del Regno , Rob Herring , Krzysztof Kozlowski , Conor Dooley Cc: Chen-Yu Tsai , devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-kernel@vger.kernel.org Subject: [PATCH 6/9] arm64: dts: mediatek: Add MT8186 Krabby platform based Tentacruel / Tentacool Date: Fri, 13 Oct 2023 07:02:32 +0800 Message-ID: <20231012230237.2676469-7-wenst@chromium.org> X-Mailer: git-send-email 2.42.0.655.g421f12c284-goog In-Reply-To: <20231012230237.2676469-1-wenst@chromium.org> References: <20231012230237.2676469-1-wenst@chromium.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" Tentacruel and Tentacool are MT8186 based Chromebooks based on the Krabby design. Tentacruel, also known as the ASUS Chromebook CM14 Flip CM1402F, is a convertible device with touchscreen and stylus. Tentacool, also known as the ASUS Chromebook CM14 CM1402C, is a laptop device. It does not have a touchscreen or stylus. The two devices both have two variants. The difference is a second source touchpad controller that shares the same address as the original, but is incompatible. The extra SKU IDs for the Tentacruel devices map to different sensor components attached to the Embedded Controller. These are not visible to the main processor. Signed-off-by: Chen-Yu Tsai --- arch/arm64/boot/dts/mediatek/Makefile | 4 + .../dts/mediatek/mt8186-corsola-krabby.dtsi | 130 ++ .../mt8186-corsola-tentacool-sku327681.dts | 49 + .../mt8186-corsola-tentacool-sku327683.dts | 26 + .../mt8186-corsola-tentacruel-sku262144.dts | 44 + .../mt8186-corsola-tentacruel-sku262148.dts | 28 + .../boot/dts/mediatek/mt8186-corsola.dtsi | 1704 +++++++++++++++++ 7 files changed, 1985 insertions(+) create mode 100644 arch/arm64/boot/dts/mediatek/mt8186-corsola-krabby.dtsi create mode 100644 arch/arm64/boot/dts/mediatek/mt8186-corsola-tentacool-s= ku327681.dts create mode 100644 arch/arm64/boot/dts/mediatek/mt8186-corsola-tentacool-s= ku327683.dts create mode 100644 arch/arm64/boot/dts/mediatek/mt8186-corsola-tentacruel-= sku262144.dts create mode 100644 arch/arm64/boot/dts/mediatek/mt8186-corsola-tentacruel-= sku262148.dts create mode 100644 arch/arm64/boot/dts/mediatek/mt8186-corsola.dtsi diff --git a/arch/arm64/boot/dts/mediatek/Makefile b/arch/arm64/boot/dts/me= diatek/Makefile index e6e7592a3645..442af61b1305 100644 --- a/arch/arm64/boot/dts/mediatek/Makefile +++ b/arch/arm64/boot/dts/mediatek/Makefile @@ -43,6 +43,10 @@ dtb-$(CONFIG_ARCH_MEDIATEK) +=3D mt8183-kukui-kodama-sku= 32.dtb dtb-$(CONFIG_ARCH_MEDIATEK) +=3D mt8183-kukui-krane-sku0.dtb dtb-$(CONFIG_ARCH_MEDIATEK) +=3D mt8183-kukui-krane-sku176.dtb dtb-$(CONFIG_ARCH_MEDIATEK) +=3D mt8183-pumpkin.dtb +dtb-$(CONFIG_ARCH_MEDIATEK) +=3D mt8186-corsola-tentacool-sku327681.dtb +dtb-$(CONFIG_ARCH_MEDIATEK) +=3D mt8186-corsola-tentacool-sku327683.dtb +dtb-$(CONFIG_ARCH_MEDIATEK) +=3D mt8186-corsola-tentacruel-sku262144.dtb +dtb-$(CONFIG_ARCH_MEDIATEK) +=3D mt8186-corsola-tentacruel-sku262148.dtb dtb-$(CONFIG_ARCH_MEDIATEK) +=3D mt8186-evb.dtb dtb-$(CONFIG_ARCH_MEDIATEK) +=3D mt8192-asurada-hayato-r1.dtb dtb-$(CONFIG_ARCH_MEDIATEK) +=3D mt8192-asurada-hayato-r5-sku2.dtb diff --git a/arch/arm64/boot/dts/mediatek/mt8186-corsola-krabby.dtsi b/arch= /arm64/boot/dts/mediatek/mt8186-corsola-krabby.dtsi new file mode 100644 index 000000000000..0586c24f1e12 --- /dev/null +++ b/arch/arm64/boot/dts/mediatek/mt8186-corsola-krabby.dtsi @@ -0,0 +1,130 @@ +// SPDX-License-Identifier: (GPL-2.0 OR MIT) +/* + * Copyright 2023 Google LLC + */ + +/dts-v1/; +#include "mt8186-corsola.dtsi" +#include + +/ { + aliases { + i2c4 =3D &i2c4; + }; +}; + +&dsi_out { + remote-endpoint =3D <&ps8640_in>; +}; + +&i2c0 { + clock-frequency =3D <400000>; + + ps8640: edp-bridge@8 { + compatible =3D "parade,ps8640"; + reg =3D <0x8>; + powerdown-gpios =3D <&pio 96 GPIO_ACTIVE_LOW>; + reset-gpios =3D <&pio 98 GPIO_ACTIVE_LOW>; + pinctrl-names =3D "default"; + pinctrl-0 =3D <&ps8640_pins>; + vdd12-supply =3D <&mt6366_vrf12_reg>; + vdd33-supply =3D <&mt6366_vcn33_reg>; + + ports { + #address-cells =3D <1>; + #size-cells =3D <0>; + + port@0 { + reg =3D <0>; + + ps8640_in: endpoint { + remote-endpoint =3D <&dsi_out>; + }; + }; + + port@1 { + reg =3D <1>; + + ps8640_out: endpoint { + remote-endpoint =3D <&panel_in>; + }; + }; + }; + + aux-bus { + panel { + compatible =3D "edp-panel"; + power-supply =3D <&pp3300_disp_x>; + backlight =3D <&backlight_lcd0>; + + port { + panel_in: endpoint { + remote-endpoint =3D <&ps8640_out>; + }; + }; + }; + }; + }; +}; + +&i2c1 { + i2c-scl-internal-delay-ns =3D <10000>; + + touchscreen: touchscreen@10 { + compatible =3D "hid-over-i2c"; + reg =3D <0x10>; + interrupts-extended =3D <&pio 12 IRQ_TYPE_LEVEL_LOW>; + pinctrl-names =3D "default"; + pinctrl-0 =3D <&touchscreen_pins>; + post-power-on-delay-ms =3D <10>; + hid-descr-addr =3D <0x0001>; + vdd-supply =3D <&pp3300_s3>; + }; +}; + +&i2c4 { + pinctrl-names =3D "default"; + pinctrl-0 =3D <&i2c4_pins>; + clock-frequency =3D <400000>; + status =3D "okay"; + + proximity@28 { + pinctrl-names =3D "default"; + pinctrl-0 =3D <&sar_sensor_pins>; + compatible =3D "semtech,sx9324"; + reg =3D <0x28>; + interrupt-parent =3D <&pio>; + interrupts =3D <5 IRQ_TYPE_LEVEL_LOW>; + vdd-supply =3D <&mt6366_vio18_reg>; + svdd-supply =3D <&mt6366_vio18_reg>; + #io-channel-cells =3D <1>; + }; +}; + +&pio { + i2c4_pins: i2c4-pins { + pins-bus { + pinmux =3D , + ; + bias-disable; + drive-strength =3D <4>; + input-enable; + }; + }; + + ps8640_pins: ps8640-pins { + pins { + pinmux =3D , + ; + output-low; + }; + }; + + sar_sensor_pins: sar-sensor-pins { + pin-irq { + pinmux =3D ; + input-enable; + bias-pull-up; + }; + }; +}; diff --git a/arch/arm64/boot/dts/mediatek/mt8186-corsola-tentacool-sku32768= 1.dts b/arch/arm64/boot/dts/mediatek/mt8186-corsola-tentacool-sku327681.dts new file mode 100644 index 000000000000..8dfc24afabea --- /dev/null +++ b/arch/arm64/boot/dts/mediatek/mt8186-corsola-tentacool-sku327681.dts @@ -0,0 +1,49 @@ +// SPDX-License-Identifier: (GPL-2.0 OR MIT) +/* + * Copyright 2023 Google LLC + */ + +/dts-v1/; +#include "mt8186-corsola-krabby.dtsi" + +/ { + model =3D "Google Tentacool board"; + compatible =3D "google,tentacruel-sku327681", "google,tentacruel", "media= tek,mt8186"; + chassis-type =3D "laptop"; +}; + +/delete-node/ &gpio_keys; +/delete-node/ &touchscreen; + +&i2c1 { + status =3D "disabled"; +}; + +&keyboard_controller { + function-row-physmap =3D < + MATRIX_KEY(0x00, 0x02, 0) /* T1 */ + MATRIX_KEY(0x03, 0x02, 0) /* T2 */ + MATRIX_KEY(0x02, 0x02, 0) /* T3 */ + MATRIX_KEY(0x01, 0x02, 0) /* T4 */ + MATRIX_KEY(0x03, 0x04, 0) /* T5 */ + MATRIX_KEY(0x02, 0x04, 0) /* T6 */ + MATRIX_KEY(0x01, 0x04, 0) /* T7 */ + MATRIX_KEY(0x02, 0x09, 0) /* T8 */ + MATRIX_KEY(0x01, 0x09, 0) /* T9 */ + MATRIX_KEY(0x00, 0x04, 0) /* T10 */ + >; + + linux,keymap =3D < + MATRIX_KEY(0x00, 0x02, KEY_BACK) + MATRIX_KEY(0x03, 0x02, KEY_REFRESH) + MATRIX_KEY(0x02, 0x02, KEY_ZOOM) + MATRIX_KEY(0x01, 0x02, KEY_SCALE) + MATRIX_KEY(0x03, 0x04, KEY_SYSRQ) + MATRIX_KEY(0x02, 0x04, KEY_BRIGHTNESSDOWN) + MATRIX_KEY(0x01, 0x04, KEY_BRIGHTNESSUP) + MATRIX_KEY(0x02, 0x09, KEY_MUTE) + MATRIX_KEY(0x01, 0x09, KEY_VOLUMEDOWN) + MATRIX_KEY(0x00, 0x04, KEY_VOLUMEUP) + CROS_STD_MAIN_KEYMAP + >; +}; diff --git a/arch/arm64/boot/dts/mediatek/mt8186-corsola-tentacool-sku32768= 3.dts b/arch/arm64/boot/dts/mediatek/mt8186-corsola-tentacool-sku327683.dts new file mode 100644 index 000000000000..9b10336ede06 --- /dev/null +++ b/arch/arm64/boot/dts/mediatek/mt8186-corsola-tentacool-sku327683.dts @@ -0,0 +1,26 @@ +// SPDX-License-Identifier: (GPL-2.0 OR MIT) +/* + * Copyright 2023 Google LLC + */ + +#include "mt8186-corsola-tentacool-sku327681.dts" + +/ { + compatible =3D "google,tentacruel-sku327683", "google,tentacruel", "media= tek,mt8186"; +}; + +/* This variant replaces only the touchpad controller. */ +&i2c2 { + /delete-node/ touchpad@15; + + touchpad@15 { + pinctrl-names =3D "default"; + pinctrl-0 =3D <&trackpad_pin>; + compatible =3D "hid-over-i2c"; + reg =3D <0x15>; + interrupts-extended =3D <&pio 11 IRQ_TYPE_LEVEL_LOW>; + hid-descr-addr =3D <0x0001>; + vcc-supply =3D <&pp3300_s3>; + wakeup-source; + }; +}; diff --git a/arch/arm64/boot/dts/mediatek/mt8186-corsola-tentacruel-sku2621= 44.dts b/arch/arm64/boot/dts/mediatek/mt8186-corsola-tentacruel-sku262144.d= ts new file mode 100644 index 000000000000..26e9f19758cb --- /dev/null +++ b/arch/arm64/boot/dts/mediatek/mt8186-corsola-tentacruel-sku262144.dts @@ -0,0 +1,44 @@ +// SPDX-License-Identifier: (GPL-2.0 OR MIT) +/* + * Copyright 2022 Google LLC + */ + +/dts-v1/; +#include "mt8186-corsola-krabby.dtsi" + +/ { + model =3D "Google Tentacruel board"; + compatible =3D "google,tentacruel-sku262144", "google,tentacruel-sku26214= 5", + "google,tentacruel-sku262146", "google,tentacruel-sku262147", + "google,tentacruel", "mediatek,mt8186"; + chassis-type =3D "convertible"; +}; + +&keyboard_controller { + function-row-physmap =3D < + MATRIX_KEY(0x00, 0x02, 0) /* T1 */ + MATRIX_KEY(0x03, 0x02, 0) /* T2 */ + MATRIX_KEY(0x02, 0x02, 0) /* T3 */ + MATRIX_KEY(0x01, 0x02, 0) /* T4 */ + MATRIX_KEY(0x03, 0x04, 0) /* T5 */ + MATRIX_KEY(0x02, 0x04, 0) /* T6 */ + MATRIX_KEY(0x01, 0x04, 0) /* T7 */ + MATRIX_KEY(0x02, 0x09, 0) /* T8 */ + MATRIX_KEY(0x01, 0x09, 0) /* T9 */ + MATRIX_KEY(0x00, 0x04, 0) /* T10 */ + >; + + linux,keymap =3D < + MATRIX_KEY(0x00, 0x02, KEY_BACK) + MATRIX_KEY(0x03, 0x02, KEY_REFRESH) + MATRIX_KEY(0x02, 0x02, KEY_ZOOM) + MATRIX_KEY(0x01, 0x02, KEY_SCALE) + MATRIX_KEY(0x03, 0x04, KEY_SYSRQ) + MATRIX_KEY(0x02, 0x04, KEY_BRIGHTNESSDOWN) + MATRIX_KEY(0x01, 0x04, KEY_BRIGHTNESSUP) + MATRIX_KEY(0x02, 0x09, KEY_MUTE) + MATRIX_KEY(0x01, 0x09, KEY_VOLUMEDOWN) + MATRIX_KEY(0x00, 0x04, KEY_VOLUMEUP) + CROS_STD_MAIN_KEYMAP + >; +}; diff --git a/arch/arm64/boot/dts/mediatek/mt8186-corsola-tentacruel-sku2621= 48.dts b/arch/arm64/boot/dts/mediatek/mt8186-corsola-tentacruel-sku262148.d= ts new file mode 100644 index 000000000000..59d4d21fc7d3 --- /dev/null +++ b/arch/arm64/boot/dts/mediatek/mt8186-corsola-tentacruel-sku262148.dts @@ -0,0 +1,28 @@ +// SPDX-License-Identifier: (GPL-2.0 OR MIT) +/* + * Copyright 2022 Google LLC + */ + +#include "mt8186-corsola-tentacruel-sku262144.dts" + +/ { + compatible =3D "google,tentacruel-sku262144", "google,tentacruel-sku26214= 5", + "google,tentacruel-sku262146", "google,tentacruel-sku262147", + "google,tentacruel", "mediatek,mt8186"; +}; + +/* This variant replaces only the touchpad controller. */ +&i2c2 { + /delete-node/ touchpad@15; + + touchpad@15 { + pinctrl-names =3D "default"; + pinctrl-0 =3D <&trackpad_pin>; + compatible =3D "hid-over-i2c"; + reg =3D <0x15>; + interrupts-extended =3D <&pio 11 IRQ_TYPE_LEVEL_LOW>; + hid-descr-addr =3D <0x0001>; + vcc-supply =3D <&pp3300_s3>; + wakeup-source; + }; +}; diff --git a/arch/arm64/boot/dts/mediatek/mt8186-corsola.dtsi b/arch/arm64/= boot/dts/mediatek/mt8186-corsola.dtsi new file mode 100644 index 000000000000..42ebab1bafeb --- /dev/null +++ b/arch/arm64/boot/dts/mediatek/mt8186-corsola.dtsi @@ -0,0 +1,1704 @@ +// SPDX-License-Identifier: (GPL-2.0 OR MIT) +/* + * Copyright (C) 2022 MediaTek Inc. + */ +/dts-v1/; +#include "mt8186.dtsi" +#include +#include +#include +#include + +/ { + aliases { + i2c0 =3D &i2c0; + i2c1 =3D &i2c1; + i2c2 =3D &i2c2; + i2c3 =3D &i2c3; + i2c5 =3D &i2c5; + mmc0 =3D &mmc0; + mmc1 =3D &mmc1; + serial0 =3D &uart0; + }; + + chosen { + stdout-path =3D "serial0:115200n8"; + }; + + memory@40000000 { + device_type =3D "memory"; + /* The size should be filled in by the bootloader. */ + reg =3D <0 0x40000000 0 0>; + }; + + backlight_lcd0: backlight-lcd0 { + compatible =3D "pwm-backlight"; + pwms =3D <&pwm0 0 500000>; + power-supply =3D <&ppvar_sys>; + enable-gpios =3D <&pio 152 0>; + brightness-levels =3D <0 1023>; + num-interpolated-steps =3D <1023>; + default-brightness-level =3D <576>; + }; + + btsco: bt-sco { + compatible =3D "linux,bt-sco"; + #sound-dai-cells =3D <0>; + }; + + dmic_codec: dmic-codec { + compatible =3D "dmic-codec"; + num-channels =3D <2>; + wakeup-delay-ms =3D <50>; + #sound-dai-cells =3D <0>; + }; + + gpio_keys: gpio-keys { + compatible =3D "gpio-keys"; + pinctrl-names =3D "default"; + pinctrl-0 =3D <&pen_eject>; + + pen_insert: pen-insert-switch { + label =3D "Pen Insert"; + /* Insert =3D low, eject =3D high */ + gpios =3D <&pio 18 GPIO_ACTIVE_LOW>; + linux,code =3D ; + linux,input-type =3D ; + wakeup-event-action =3D ; + wakeup-source; + }; + }; + + pp1800_dpbrdg_dx: regulator-pp1800-dpbrdg-dx { + compatible =3D "regulator-fixed"; + pinctrl-names =3D "default"; + pinctrl-0 =3D <&en_pp1800_dpbrdg>; + regulator-name =3D "pp1800_dpbrdg_dx"; + enable-active-high; + gpio =3D <&pio 39 GPIO_ACTIVE_HIGH>; + vin-supply =3D <&mt6366_vio18_reg>; + }; + + pp3300_disp_x: regulator-pp3300-disp-x { + compatible =3D "regulator-fixed"; + regulator-name =3D "pp3300_disp_x"; + pinctrl-names =3D "default"; + pinctrl-0 =3D <&edp_panel_fixed_pins>; + enable-active-high; + regulator-boot-on; + gpio =3D <&pio 153 GPIO_ACTIVE_HIGH>; + vin-supply =3D <&pp3300_z2>; + }; + + /* system wide LDO 3.3V power rail */ + pp3300_z5: regulator-pp3300-ldo-z5 { + compatible =3D "regulator-fixed"; + regulator-name =3D "pp3300_ldo_z5"; + regulator-always-on; + regulator-boot-on; + regulator-min-microvolt =3D <3300000>; + regulator-max-microvolt =3D <3300000>; + vin-supply =3D <&ppvar_sys>; + }; + + /* separately switched 3.3V power rail */ + pp3300_s3: regulator-pp3300-s3 { + compatible =3D "regulator-fixed"; + regulator-name =3D "pp3300_s3"; + /* automatically sequenced by PMIC EXT_PMIC_EN2 */ + regulator-always-on; + regulator-boot-on; + vin-supply =3D <&pp3300_z2>; + }; + + /* system wide 3.3V power rail */ + pp3300_z2: regulator-pp3300-z2 { + compatible =3D "regulator-fixed"; + regulator-name =3D "pp3300_z2"; + /* EN pin tied to pp4200_z2, which is controlled by EC */ + regulator-always-on; + regulator-boot-on; + regulator-min-microvolt =3D <3300000>; + regulator-max-microvolt =3D <3300000>; + vin-supply =3D <&ppvar_sys>; + }; + + /* system wide 4.2V power rail */ + pp4200_z2: regulator-pp4200-z2 { + compatible =3D "regulator-fixed"; + regulator-name =3D "pp4200_z2"; + /* controlled by EC */ + regulator-always-on; + regulator-boot-on; + regulator-min-microvolt =3D <4200000>; + regulator-max-microvolt =3D <4200000>; + vin-supply =3D <&ppvar_sys>; + }; + + /* system wide switching 5.0V power rail */ + pp5000_z2: regulator-pp5000-z2 { + compatible =3D "regulator-fixed"; + regulator-name =3D "pp5000_z2"; + /* controlled by EC */ + regulator-always-on; + regulator-boot-on; + regulator-min-microvolt =3D <5000000>; + regulator-max-microvolt =3D <5000000>; + vin-supply =3D <&ppvar_sys>; + }; + + /* system wide semi-regulated power rail from battery or USB */ + ppvar_sys: regulator-ppvar-sys { + compatible =3D "regulator-fixed"; + regulator-name =3D "ppvar_sys"; + regulator-always-on; + regulator-boot-on; + }; + + reserved_memory: reserved-memory { + #address-cells =3D <2>; + #size-cells =3D <2>; + ranges; + + adsp_dma_mem: memory@61000000 { + compatible =3D "shared-dma-pool"; + reg =3D <0 0x61000000 0 0x100000>; + no-map; + }; + + adsp_mem: memory@60000000 { + compatible =3D "shared-dma-pool"; + reg =3D <0 0x60000000 0 0xA00000>; + no-map; + }; + + scp_mem: memory@50000000 { + compatible =3D "shared-dma-pool"; + reg =3D <0 0x50000000 0 0x10a0000>; + no-map; + }; + }; + + sound: sound { + compatible =3D "mediatek,mt8186-mt6366-rt1019-rt5682s-sound"; + pinctrl-names =3D "aud_clk_mosi_off", + "aud_clk_mosi_on", + "aud_clk_miso_off", + "aud_clk_miso_on", + "aud_dat_miso_off", + "aud_dat_miso_on", + "aud_dat_mosi_off", + "aud_dat_mosi_on", + "aud_gpio_i2s0_off", + "aud_gpio_i2s0_on", + "aud_gpio_i2s1_off", + "aud_gpio_i2s1_on", + "aud_gpio_i2s2_off", + "aud_gpio_i2s2_on", + "aud_gpio_i2s3_off", + "aud_gpio_i2s3_on", + "aud_gpio_tdm_off", + "aud_gpio_tdm_on", + "aud_gpio_pcm_off", + "aud_gpio_pcm_on", + "aud_gpio_dmic_sec"; + pinctrl-0 =3D <&aud_clk_mosi_off>; + pinctrl-1 =3D <&aud_clk_mosi_on>; + pinctrl-2 =3D <&aud_clk_miso_off>; + pinctrl-3 =3D <&aud_clk_miso_on>; + pinctrl-4 =3D <&aud_dat_miso_off>; + pinctrl-5 =3D <&aud_dat_miso_on>; + pinctrl-6 =3D <&aud_dat_mosi_off>; + pinctrl-7 =3D <&aud_dat_mosi_on>; + pinctrl-8 =3D <&aud_gpio_i2s0_off>; + pinctrl-9 =3D <&aud_gpio_i2s0_on>; + pinctrl-10 =3D <&aud_gpio_i2s1_off>; + pinctrl-11 =3D <&aud_gpio_i2s1_on>; + pinctrl-12 =3D <&aud_gpio_i2s2_off>; + pinctrl-13 =3D <&aud_gpio_i2s2_on>; + pinctrl-14 =3D <&aud_gpio_i2s3_off>; + pinctrl-15 =3D <&aud_gpio_i2s3_on>; + pinctrl-16 =3D <&aud_gpio_tdm_off>; + pinctrl-17 =3D <&aud_gpio_tdm_on>; + pinctrl-18 =3D <&aud_gpio_pcm_off>; + pinctrl-19 =3D <&aud_gpio_pcm_on>; + pinctrl-20 =3D <&aud_gpio_dmic_sec>; + mediatek,adsp =3D <&adsp>; + mediatek,platform =3D <&afe>; + + playback-codecs { + sound-dai =3D <&it6505dptx>, <&rt1019p>; + }; + + headset-codec { + sound-dai =3D <&rt5682s 0>; + }; + }; + + rt1019p: speaker-codec { + compatible =3D "realtek,rt1019p"; + pinctrl-names =3D "default"; + pinctrl-0 =3D <&rt1019p_pins_default>; + sdb-gpios =3D <&pio 150 GPIO_ACTIVE_HIGH>; + #sound-dai-cells =3D <0>; + }; + + usb_p1_vbus: regulator-usb-p1-vbus { + compatible =3D "regulator-fixed"; + regulator-name =3D "vbus1"; + regulator-min-microvolt =3D <5000000>; + regulator-max-microvolt =3D <5000000>; + enable-active-high; + gpio =3D <&pio 148 GPIO_ACTIVE_HIGH>; + vin-supply =3D <&pp5000_z2>; + }; + + wifi_pwrseq: wifi-pwrseq { + compatible =3D "mmc-pwrseq-simple"; + pinctrl-names =3D "default"; + pinctrl-0 =3D <&wifi_enable_pin>; + post-power-on-delay-ms =3D <50>; + reset-gpios =3D <&pio 54 GPIO_ACTIVE_LOW>; + }; + + wifi_wakeup: wifi-wakeup { + compatible =3D "gpio-keys"; + pinctrl-names =3D "default"; + pinctrl-0 =3D <&wifi_wakeup_pin>; + + wowlan-event { + label =3D "Wake on WiFi"; + gpios =3D <&pio 7 GPIO_ACTIVE_LOW>; + linux,code =3D ; + wakeup-source; + }; + }; +}; + +&adsp { + memory-region =3D <&adsp_dma_mem>, <&adsp_mem>; + status =3D "fail"; /* causes stall */ +}; + +&afe { + i2s0-share =3D "I2S1"; + i2s3-share =3D "I2S2"; + status =3D "okay"; +}; + +&cci { + proc-supply =3D <&mt6366_vproc12_reg>; +}; + +&cpu0 { + proc-supply =3D <&mt6366_vproc12_reg>; +}; + +&cpu1 { + proc-supply =3D <&mt6366_vproc12_reg>; +}; + +&cpu2 { + proc-supply =3D <&mt6366_vproc12_reg>; +}; + +&cpu3 { + proc-supply =3D <&mt6366_vproc12_reg>; +}; + +&cpu4 { + proc-supply =3D <&mt6366_vproc12_reg>; +}; + +&cpu5 { + proc-supply =3D <&mt6366_vproc12_reg>; +}; + +&cpu6 { + proc-supply =3D <&mt6366_vproc11_reg>; +}; + +&cpu7 { + proc-supply =3D <&mt6366_vproc11_reg>; +}; + +&dpi { + pinctrl-names =3D "default", "sleep"; + pinctrl-0 =3D <&dpi_pins_default>; + pinctrl-1 =3D <&dpi_pins_sleep>; + status =3D "okay"; +}; + +&dpi_out { + remote-endpoint =3D <&it6505_in>; +}; + +&dsi0 { + status =3D "okay"; +}; + +&gic { + mediatek,broken-save-restore-fw; +}; + +&gpu { + mali-supply =3D <&mt6366_vgpu_reg>; + status =3D "okay"; +}; + +&i2c0 { + pinctrl-names =3D "default"; + pinctrl-0 =3D <&i2c0_pins>; + status =3D "okay"; +}; + +&i2c1 { + pinctrl-names =3D "default"; + pinctrl-0 =3D <&i2c1_pins>; + clock-frequency =3D <400000>; + i2c-scl-internal-delay-ns =3D <8000>; + status =3D "okay"; +}; + +&i2c2 { + pinctrl-names =3D "default"; + pinctrl-0 =3D <&i2c2_pins>; + clock-frequency =3D <400000>; + i2c-scl-internal-delay-ns =3D <10000>; + status =3D "okay"; + + touchpad@15 { + compatible =3D "elan,ekth3000"; + reg =3D <0x15>; + interrupts-extended =3D <&pio 11 IRQ_TYPE_LEVEL_LOW>; + pinctrl-names =3D "default"; + pinctrl-0 =3D <&trackpad_pin>; + vcc-supply =3D <&pp3300_s3>; + wakeup-source; + }; +}; + +&i2c3 { + pinctrl-names =3D "default"; + pinctrl-0 =3D <&i2c3_pins>; + clock-frequency =3D <100000>; + status =3D "okay"; + + it6505dptx: dp-bridge@5c { + pinctrl-names =3D "default"; + pinctrl-0 =3D <&it6505_pins>; + compatible =3D "ite,it6505"; + reg =3D <0x5c>; + interrupts-extended =3D <&pio 8 IRQ_TYPE_LEVEL_LOW>; + ovdd-supply =3D <&mt6366_vsim2_reg>; + pwr18-supply =3D <&pp1800_dpbrdg_dx>; + reset-gpios =3D <&pio 177 GPIO_ACTIVE_HIGH>; + no-laneswap; + + #address-cells =3D <1>; + #size-cells =3D <0>; + #sound-dai-cells =3D <0>; + + ports { + #address-cells =3D <1>; + #size-cells =3D <0>; + + port@0 { + reg =3D <0>; + + it6505_in: endpoint { + link-frequencies =3D /bits/ 64 <150000000>; + remote-endpoint =3D <&dpi_out>; + }; + }; + + port@1 { + reg =3D <1>; + }; + }; + }; +}; + +&i2c5 { + pinctrl-names =3D "default"; + pinctrl-0 =3D <&i2c5_pins>; + status =3D "okay"; + + rt5682s: codec@1a { + compatible =3D "realtek,rt5682s"; + reg =3D <0x1a>; + interrupts-extended =3D <&pio 17 IRQ_TYPE_EDGE_BOTH>; + realtek,jd-src =3D <1>; + AVDD-supply =3D <&mt6366_vio18_reg>; + DBVDD-supply =3D <&mt6366_vio18_reg>; + LDO1-IN-supply =3D <&mt6366_vio18_reg>; + MICVDD-supply =3D <&pp3300_z2>; + #sound-dai-cells =3D <1>; + }; +}; + +&mfg0 { + domain-supply =3D <&mt6366_vsram_gpu_reg>; +}; + +&mfg1 { + domain-supply =3D <&mt6366_vgpu_reg>; +}; + +&mipi_tx0 { + status =3D "okay"; +}; + +&mmc0 { + pinctrl-names =3D "default", "state_uhs"; + pinctrl-0 =3D <&mmc0_pins_default>; + pinctrl-1 =3D <&mmc0_pins_uhs>; + bus-width =3D <8>; + max-frequency =3D <200000000>; + non-removable; + cap-mmc-highspeed; + mmc-hs200-1_8v; + mmc-hs400-1_8v; + supports-cqe; + no-sd; + no-sdio; + cap-mmc-hw-reset; + hs400-ds-delay =3D <0x11814>; + mediatek,hs400-ds-dly3 =3D <0x14>; + vmmc-supply =3D <&mt6366_vemc_reg>; + vqmmc-supply =3D <&mt6366_vio18_reg>; + status =3D "okay"; +}; + +&mmc1 { + pinctrl-names =3D "default", "state_uhs", "state_eint"; + pinctrl-0 =3D <&mmc1_pins_default>; + pinctrl-1 =3D <&mmc1_pins_uhs>; + pinctrl-2 =3D <&mmc1_pins_eint>; + /delete-property/ interrupts; + interrupt-names =3D "msdc", "sdio_wakeup"; + interrupts-extended =3D <&gic GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH 0>, + <&pio 87 IRQ_TYPE_LEVEL_LOW>; + bus-width =3D <4>; + max-frequency =3D <200000000>; + cap-sd-highspeed; + sd-uhs-sdr104; + sd-uhs-sdr50; + keep-power-in-suspend; + wakeup-source; + cap-sdio-irq; + no-mmc; + no-sd; + non-removable; + vmmc-supply =3D <&pp3300_s3>; + vqmmc-supply =3D <&mt6366_vio18_reg>; + mmc-pwrseq =3D <&wifi_pwrseq>; + status =3D "okay"; + #address-cells =3D <1>; + #size-cells =3D <0>; + + bluetooth@2 { + compatible =3D "mediatek,mt7921s-bluetooth"; + reg =3D <2>; + pinctrl-names =3D "default"; + pinctrl-0 =3D <&bt_pins_reset>; + reset-gpios =3D <&pio 155 GPIO_ACTIVE_LOW>; + }; +}; + +&nor_flash { + pinctrl-names =3D "default"; + pinctrl-0 =3D <&nor_pins_default>; + assigned-clock-parents =3D <&topckgen CLK_TOP_MAINPLL_D7_D4>; + status =3D "okay"; + #address-cells =3D <1>; + #size-cells =3D <0>; + + flash@0 { + compatible =3D "jedec,spi-nor"; + reg =3D <0>; + spi-max-frequency =3D <39000000>; + }; +}; + +&pio { + /* 185 lines */ + gpio-line-names =3D "TP", + "TP", + "TP", + "I2S0_HP_DI", + "I2S3_DP_SPKR_DO", + "SAR_INT_ODL", + "BT_WAKE_AP_ODL", + "WIFI_INT_ODL", + "DPBRDG_INT_ODL", + "EDPBRDG_INT_ODL", + "EC_AP_HPD_OD", + "TCHPAD_INT_ODL", + "TCHSCR_INT_1V8_ODL", + "EC_AP_INT_ODL", + "EC_IN_RW_ODL", + "GSC_AP_INT_ODL", + /* AP_FLASH_WP_L is crossystem ABI. Rev1 schematics call it AP_WP_ODL= . */ + "AP_FLASH_WP_L", + "HP_INT_ODL", + "PEN_EJECT_OD", + "WCAM_PWDN_L", + "WCAM_RST_L", + "UCAM_SEN_EN", + "UCAM_RST_L", + "LTE_RESET_L", + "LTE_SAR_DETECT_L", + "I2S2_DP_SPK_MCK", + "I2S2_DP_SPKR_BCK", + "I2S2_DP_SPKR_LRCK", + "I2S2_DP_SPKR_DI (TP)", + "EN_PP1000_EDPBRDG", + "EN_PP1800_EDPBRDG", + "EN_PP3300_EDPBRDG", + "UART_GSC_TX_AP_RX", + "UART_AP_TX_GSC_RX", + "UART_DBGCON_TX_ADSP_RX", + "UART_ADSP_TX_DBGCON_RX", + "EN_PP1000_DPBRDG", + "TCHSCR_REPORT_DISABLE", + "EN_PP3300_DPBRDG", + "EN_PP1800_DPBRDG", + "SPI_AP_CLK_EC", + "SPI_AP_CS_EC_L", + "SPI_AP_DO_EC_DI", + "SPI_AP_DI_EC_DO", + "SPI_AP_CLK_GSC", + "SPI_AP_CS_GSC_L", + "SPI_AP_DO_GSC_DI", + "SPI_AP_DI_GSC_DO", + "UART_DBGCON_TX_SCP_RX", + "UART_SCP_TX_DBGCON_RX", + "EN_PP1200_CAM_X", + "EN_PP2800A_VCM_X", + "EN_PP2800A_UCAM_X", + "EN_PP2800A_WCAM_X", + "WLAN_MODULE_RST_L", + "EN_PP1200_UCAM_X", + "I2S1_HP_DO", + "I2S1_HP_BCK", + "I2S1_HP_LRCK", + "I2S1_HP_MCK", + "TCHSCR_RST_1V8_L", + "SPI_AP_CLK_ROM", + "SPI_AP_CS_ROM_L", + "SPI_AP_DO_ROM_DI", + "SPI_AP_DI_ROM_DO", + "NC", + "NC", + "EMMC_STRB", + "EMMC_CLK", + "EMMC_CMD", + "EMMC_RST_L", + "EMMC_DATA0", + "EMMC_DATA1", + "EMMC_DATA2", + "EMMC_DATA3", + "EMMC_DATA4", + "EMMC_DATA5", + "EMMC_DATA6", + "EMMC_DATA7", + "AP_KPCOL0", + "NC", + "NC", + "NC", + "TP", + "SDIO_CLK", + "SDIO_CMD", + "SDIO_DATA0", + "SDIO_DATA1", + "SDIO_DATA2", + "SDIO_DATA3", + "NC", + "NC", + "NC", + "NC", + "NC", + "NC", + "EDPBRDG_PWREN", + "BL_PWM_1V8", + "EDPBRDG_RST_L", + "MIPI_DPI_CLK", + "MIPI_DPI_VSYNC", + "MIPI_DPI_HSYNC", + "MIPI_DPI_DE", + "MIPI_DPI_D0", + "MIPI_DPI_D1", + "MIPI_DPI_D2", + "MIPI_DPI_D3", + "MIPI_DPI_D4", + "MIPI_DPI_D5", + "MIPI_DPI_D6", + "MIPI_DPI_DA7", + "MIPI_DPI_D8", + "MIPI_DPI_D9", + "MIPI_DPI_D10", + "MIPI_DPI_D11", + "PCM_BT_CLK", + "PCM_BT_SYNC", + "PCM_BT_DI", + "PCM_BT_DO", + "JTAG_TMS_TP", + "JTAG_TCK_TP", + "JTAG_TDI_TP", + "JTAG_TDO_TP", + "JTAG_TRSTN_TP", + "CLK_24M_WCAM", + "CLK_24M_UCAM", + "UCAM_DET_ODL", + "AP_I2C_EDPBRDG_SCL_1V8", + "AP_I2C_EDPBRDG_SDA_1V8", + "AP_I2C_TCHSCR_SCL_1V8", + "AP_I2C_TCHSCR_SDA_1V8", + "AP_I2C_TCHPAD_SCL_1V8", + "AP_I2C_TCHPAD_SDA_1V8", + "AP_I2C_DPBRDG_SCL_1V8", + "AP_I2C_DPBRDG_SDA_1V8", + "AP_I2C_WLAN_SCL_1V8", + "AP_I2C_WLAN_SDA_1V8", + "AP_I2C_AUD_SCL_1V8", + "AP_I2C_AUD_SDA_1V8", + "AP_I2C_TPM_SCL_1V8", + "AP_I2C_UCAM_SDA_1V8", + "AP_I2C_UCAM_SCL_1V8", + "AP_I2C_UCAM_SDA_1V8", + "AP_I2C_WCAM_SCL_1V8", + "AP_I2C_WCAM_SDA_1V8", + "SCP_I2C_SENSOR_SCL_1V8", + "SCP_I2C_SENSOR_SDA_1V8", + "AP_EC_WARM_RST_REQ", + "AP_XHCI_INIT_DONE", + "USB3_HUB_RST_L", + "EN_SPKR", + "BEEP_ON", + "AP_EDP_BKLTEN", + "EN_PP3300_DISP_X", + "EN_PP3300_SDBRDG_X", + "BT_KILL_1V8_L", + "WIFI_KILL_1V8_L", + "PWRAP_SPI0_CSN", + "PWRAP_SPI0_CK", + "PWRAP_SPI0_MO", + "PWRAP_SPI0_MI", + "SRCLKENA0", + "SRCLKENA1", + "SCP_VREQ_VAO", + "AP_RTC_CLK32K", + "AP_PMIC_WDTRST_L", + "AUD_CLK_MOSI", + "AUD_SYNC_MOSI", + "AUD_DAT_MOSI0", + "AUD_DAT_MOSI1", + "AUD_CLK_MISO", + "AUD_SYNC_MISO", + "AUD_DAT_MISO0", + "AUD_DAT_MISO1", + "NC", + "NC", + "DPBRDG_PWREN", + "DPBRDG_RST_L", + "LTE_W_DISABLE_L", + "LTE_SAR_DETECT_L", + "EN_PP3300_LTE_X", + "LTE_PWR_OFF_L", + "LTE_RESET_L", + "TP", + "TP"; + + aud_clk_mosi_off: aud-clk-mosi-off-pins { + pins-cmd-dat { + pinmux =3D , + ; + input-enable; + bias-pull-down; + }; + }; + + aud_clk_mosi_on: aud-clk-mosi-on-pins { + pins-cmd-dat { + pinmux =3D , + ; + }; + }; + + aud_clk_miso_off: aud-clk-miso-off-pins { + pins-cmd-dat { + pinmux =3D , + ; + input-enable; + bias-pull-down; + }; + }; + + aud_clk_miso_on: aud-clk-miso-on-pins { + pins-cmd-dat { + pinmux =3D , + ; + }; + }; + + aud_dat_mosi_off: aud-dat-mosi-off-pins { + pins-cmd-dat { + pinmux =3D , + ; + input-enable; + bias-pull-down; + }; + }; + + aud_dat_mosi_on: aud-dat-mosi-on-pins { + pins-cmd-dat { + pinmux =3D , + ; + }; + }; + + aud_dat_miso_off: aud-dat-miso-off-pins { + pins-cmd-dat { + pinmux =3D , + ; + input-enable; + bias-pull-down; + }; + }; + + aud_dat_miso_on: aud-dat-miso-on-pins { + pins-cmd-dat { + pinmux =3D , + ; + input-schmitt-enable; + bias-disable; + }; + }; + + aud_gpio_i2s0_off: aud-gpio-i2s0-off-pins { + pins-cmd-dat { + pinmux =3D ; + }; + }; + + aud_gpio_i2s0_on: aud-gpio-i2s0-on-pins { + pins-cmd-dat { + pinmux =3D ; + }; + }; + + aud_gpio_i2s1_off: aud-gpio-i2s-off-pins { + pins-cmd-dat { + pinmux =3D , + , + , + ; + output-low; + }; + }; + + aud_gpio_i2s1_on: aud-gpio-i2s1-on-pins { + pins-cmd-dat { + pinmux =3D , + , + , + ; + }; + }; + + aud_gpio_i2s2_off: aud-gpio-i2s2-off-pins { + pins-cmd-dat { + pinmux =3D , + ; + output-low; + }; + }; + + aud_gpio_i2s2_on: aud-gpio-i2s2-on-pins { + pins-cmd-dat { + pinmux =3D , + ; + drive-strength =3D <4>; + }; + }; + + aud_gpio_i2s3_off: aud-gpio-i2s3-off-pins { + pins-cmd-dat { + pinmux =3D ; + output-low; + }; + }; + + aud_gpio_i2s3_on: aud-gpio-i2s3-on-pins { + pins-cmd-dat { + pinmux =3D ; + drive-strength =3D <4>; + }; + }; + + aud_gpio_tdm_off: aud-gpio-tdm-off-pins { }; + + aud_gpio_tdm_on: aud-gpio-tdm-on-pins { }; + + aud_gpio_pcm_off: aud-gpio-pcm-off-pins { + pins-cmd-dat { + pinmux =3D , + , + , + ; + output-low; + }; + }; + + aud_gpio_pcm_on: aud-gpio-pcm-on-pins { + pins-cmd-dat { + pinmux =3D , + , + , + ; + }; + }; + + aud_gpio_dmic_sec: aud-gpio-dmic-sec-pins { + pins { + pinmux =3D ; + output-low; + }; + }; + + bt_pins_reset: bt-reset-pins { + pins-bt-reset { + pinmux =3D ; + output-high; + }; + }; + + dpi_pins_sleep: dpi-sleep-pins { + pins-cmd-dat { + pinmux =3D , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + ; + drive-strength =3D <10>; + output-low; + }; + }; + + dpi_pins_default: dpi-default-pins { + pins-cmd-dat { + pinmux =3D , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + ; + drive-strength =3D <10>; + }; + }; + + ec_ap_int: cros-ec-int-pins { + pins1 { + pinmux =3D ; + input-enable; + }; + }; + + edp_panel_fixed_pins: edp-panel-fixed-pins { + pins1 { + pinmux =3D ; + output-high; + }; + }; + + en_pp1800_dpbrdg: en-pp1800-dpbrdg-pins { + pins { + pinmux =3D ; + output-low; + }; + }; + + gsc_ap_int_odl: gsc-ap-int-odl-pins { + pins1 { + pinmux =3D ; + input-enable; + }; + }; + + i2c0_pins: i2c0-pins { + pins-bus { + pinmux =3D , + ; + bias-disable; + drive-strength =3D <4>; + input-enable; + }; + }; + + i2c1_pins: i2c1-pins { + pins-bus { + pinmux =3D , + ; + bias-disable; + drive-strength =3D <4>; + input-enable; + }; + }; + + i2c2_pins: i2c2-pins { + pins-bus { + pinmux =3D , + ; + bias-disable; + drive-strength =3D <4>; + input-enable; + }; + }; + + i2c3_pins: i2c3-pins { + pins-bus { + pinmux =3D , + ; + bias-disable; + drive-strength =3D <4>; + input-enable; + }; + }; + + i2c5_pins: i2c5-pins { + pins-bus { + pinmux =3D , + ; + bias-disable; + drive-strength =3D <4>; + input-enable; + }; + }; + + it6505_pins: it6505-pins { + pins-hpd { + pinmux =3D ; + input-enable; + bias-pull-up; + }; + + pins-int { + pinmux =3D ; + input-enable; + bias-pull-up; + }; + + pins-reset { + pinmux =3D ; + output-low; + bias-pull-up; + }; + }; + + mmc0_pins_default: mmc0-default-pins { + pins-clk { + pinmux =3D ; + bias-pull-down =3D ; + }; + + pins-cmd-dat { + pinmux =3D , + , + , + , + , + , + , + , + ; + input-enable; + bias-pull-up =3D ; + }; + + pins-rst { + pinmux =3D ; + bias-pull-up =3D ; + }; + }; + + mmc0_pins_uhs: mmc0-uhs-pins { + pins-clk { + pinmux =3D ; + drive-strength =3D <6>; + bias-pull-down =3D ; + }; + + pins-cmd-dat { + pinmux =3D , + , + , + , + , + , + , + , + ; + input-enable; + drive-strength =3D <6>; + bias-pull-up =3D ; + }; + + pins-ds { + pinmux =3D ; + drive-strength =3D <6>; + bias-pull-down =3D ; + }; + + pins-rst { + pinmux =3D ; + bias-pull-up =3D ; + }; + }; + + mmc1_pins_default: mmc1-default-pins { + pins-clk { + pinmux =3D ; + drive-strength =3D <6>; + bias-pull-down =3D ; + }; + + pins-cmd-dat { + pinmux =3D , + , + , + , + ; + input-enable; + drive-strength =3D <6>; + bias-pull-up =3D ; + }; + }; + + mmc1_pins_uhs: mmc1-uhs-pins { + pins-clk { + pinmux =3D ; + drive-strength =3D <6>; + bias-pull-down =3D ; + }; + + pins-cmd-dat { + pinmux =3D , + , + , + , + ; + input-enable; + drive-strength =3D <8>; + bias-pull-up =3D ; + }; + }; + + mmc1_pins_eint: mmc1-eint-pins { + pins_dat1 { + pinmux =3D ; + input-enable; + bias-pull-up =3D ; + }; + }; + + nor_pins_default: nor-default-pins { + pins0 { + pinmux =3D , + , + ; + drive-strength =3D <6>; + bias-pull-down; + }; + + pins1 { + pinmux =3D , + , + ; + drive-strength =3D <6>; + bias-pull-up; + }; + }; + + pen_eject: pen-eject-pins { + pins { + pinmux =3D ; + input-enable; + /* External pull-up. */ + bias-disable; + }; + }; + + pwm0_pin: pwm0-default-pins { + pins { + pinmux =3D ; + output-high; + }; + }; + + rt1019p_pins_default: rt1019p-default-pins { + pins { + pinmux =3D ; + output-low; + }; + }; + + scp_pins: scp-default-pins { + pins-scp-uart { + pinmux =3D , + ; + }; + }; + + spi1_pins: spi1-pins { + pins-spi { + pinmux =3D , + , + , + ; + bias-disable; + input-enable; + }; + }; + + spi2_pins: spi2-pins { + pins-spi { + pinmux =3D , + , + , + ; + bias-disable; + input-enable; + }; + }; + + spmi_pins: spmi-pins { + pins-spmi { + pinmux =3D , + ; + }; + }; + + touchscreen_pins: touchscreen-pins { + pins-irq { + pinmux =3D ; + input-enable; + bias-pull-up; + }; + + pins-reset { + pinmux =3D ; + output-high; + }; + + pins-report-sw { + pinmux =3D ; + output-low; + }; + }; + + trackpad_pin: trackpad-default-pins { + pins-int-n { + pinmux =3D ; + input-enable; + bias-disable; /* pulled externally */ + }; + }; + + wifi_enable_pin: wifi-enable-pins { + pins-wifi-enable { + pinmux =3D ; + }; + }; + + wifi_wakeup_pin: wifi-wakeup-pins { + pins-wifi-wakeup { + pinmux =3D ; + input-enable; + }; + }; +}; + +&pwm0 { + pinctrl-names =3D "default"; + pinctrl-0 =3D <&pwm0_pin>; + status =3D "okay"; +}; + +&pwrap { + pmic { + compatible =3D "mediatek,mt6366", "mediatek,mt6358"; + interrupt-controller; + interrupts-extended =3D <&pio 201 IRQ_TYPE_LEVEL_HIGH>; + #interrupt-cells =3D <2>; + + mt6366codec: codec { + compatible =3D "mediatek,mt6366-sound", "mediatek,mt6358-sound"; + Avdd-supply =3D <&mt6366_vaud28_reg>; + mediatek,dmic-mode =3D <1>; /* one-wire */ + }; + + mt6366_regulators: regulators { + compatible =3D "mediatek,mt6366-regulator", "mediatek,mt6358-regulator"; + vsys-ldo1-supply =3D <&pp4200_z2>; + vsys-ldo2-supply =3D <&pp4200_z2>; + vsys-ldo3-supply =3D <&pp4200_z2>; + vsys-vcore-supply =3D <&pp4200_z2>; + vsys-vdram1-supply =3D <&pp4200_z2>; + vsys-vgpu-supply =3D <&pp4200_z2>; + vsys-vmodem-supply =3D <&pp4200_z2>; + vsys-vpa-supply =3D <&pp4200_z2>; + vsys-vproc11-supply =3D <&pp4200_z2>; + vsys-vproc12-supply =3D <&pp4200_z2>; + vsys-vs1-supply =3D <&pp4200_z2>; + vsys-vs2-supply =3D <&pp4200_z2>; + vs1-ldo1-supply =3D <&mt6366_vs1_reg>; + vs2-ldo1-supply =3D <&mt6366_vdram1_reg>; + vs2-ldo2-supply =3D <&mt6366_vs2_reg>; + vs2-ldo3-supply =3D <&mt6366_vs2_reg>; + + vcore { + regulator-name =3D "pp0750_dvdd_core"; + regulator-min-microvolt =3D <550000>; + regulator-max-microvolt =3D <800000>; + regulator-ramp-delay =3D <6250>; + regulator-enable-ramp-delay =3D <200>; + regulator-allowed-modes =3D <0 1>; + regulator-always-on; + }; + + mt6366_vdram1_reg: vdram1 { + regulator-name =3D "pp1125_emi_vdd2"; + regulator-min-microvolt =3D <1125000>; + regulator-max-microvolt =3D <1125000>; + regulator-ramp-delay =3D <12500>; + regulator-enable-ramp-delay =3D <0>; + regulator-allowed-modes =3D <0 1>; + regulator-always-on; + }; + + mt6366_vgpu_reg: vgpu { + regulator-name =3D "ppvar_dvdd_gpu"; + regulator-min-microvolt =3D <600000>; + regulator-max-microvolt =3D <950000>; + regulator-ramp-delay =3D <6250>; + regulator-enable-ramp-delay =3D <200>; + regulator-allowed-modes =3D <0 1>; + }; + + mt6366_vproc11_reg: vproc11 { + regulator-name =3D "ppvar_dvdd_proc_bc_mt6366"; + regulator-min-microvolt =3D <600000>; + regulator-max-microvolt =3D <1200000>; + regulator-ramp-delay =3D <6250>; + regulator-enable-ramp-delay =3D <200>; + regulator-allowed-modes =3D <0 1>; + regulator-always-on; + }; + + mt6366_vproc12_reg: vproc12 { + regulator-name =3D "ppvar_dvdd_proc_lc"; + regulator-min-microvolt =3D <600000>; + regulator-max-microvolt =3D <1200000>; + regulator-ramp-delay =3D <6250>; + regulator-enable-ramp-delay =3D <200>; + regulator-allowed-modes =3D <0 1>; + regulator-always-on; + }; + + mt6366_vs1_reg: vs1 { + regulator-name =3D "pp2000_vs1"; + regulator-min-microvolt =3D <2000000>; + regulator-max-microvolt =3D <2000000>; + regulator-ramp-delay =3D <12500>; + regulator-enable-ramp-delay =3D <0>; + regulator-always-on; + }; + + mt6366_vs2_reg: vs2 { + regulator-name =3D "pp1350_vs2"; + regulator-min-microvolt =3D <1350000>; + regulator-max-microvolt =3D <1350000>; + regulator-ramp-delay =3D <12500>; + regulator-enable-ramp-delay =3D <0>; + regulator-always-on; + }; + + va12 { + regulator-name =3D "pp1200_va12"; + regulator-min-microvolt =3D <1200000>; + regulator-max-microvolt =3D <1200000>; + regulator-enable-ramp-delay =3D <270>; + regulator-always-on; + }; + + mt6366_vaud28_reg: vaud28 { + regulator-name =3D "pp2800_vaud28"; + regulator-min-microvolt =3D <2800000>; + regulator-max-microvolt =3D <2800000>; + regulator-enable-ramp-delay =3D <270>; + }; + + mt6366_vaux18_reg: vaux18 { + regulator-name =3D "pp1840_vaux18"; + regulator-min-microvolt =3D <1800000>; + regulator-max-microvolt =3D <1840000>; + regulator-enable-ramp-delay =3D <270>; + }; + + mt6366_vbif28_reg: vbif28 { + regulator-name =3D "pp2800_vbif28"; + regulator-min-microvolt =3D <2800000>; + regulator-max-microvolt =3D <2800000>; + regulator-enable-ramp-delay =3D <270>; + }; + + mt6366_vcn18_reg: vcn18 { + regulator-name =3D "pp1800_vcn18_x"; + regulator-min-microvolt =3D <1800000>; + regulator-max-microvolt =3D <1800000>; + regulator-enable-ramp-delay =3D <270>; + }; + + mt6366_vcn28_reg: vcn28 { + regulator-name =3D "pp2800_vcn28_x"; + regulator-min-microvolt =3D <2800000>; + regulator-max-microvolt =3D <2800000>; + regulator-enable-ramp-delay =3D <270>; + }; + + mt6366_vefuse_reg: vefuse { + regulator-name =3D "pp1800_vefuse"; + regulator-min-microvolt =3D <1800000>; + regulator-max-microvolt =3D <1800000>; + regulator-enable-ramp-delay =3D <270>; + }; + + mt6366_vfe28_reg: vfe28 { + regulator-name =3D "pp2800_vfe28_x"; + regulator-min-microvolt =3D <2800000>; + regulator-max-microvolt =3D <2800000>; + regulator-enable-ramp-delay =3D <270>; + }; + + mt6366_vemc_reg: vemc { + regulator-name =3D "pp3000_vemc"; + regulator-min-microvolt =3D <3000000>; + regulator-max-microvolt =3D <3000000>; + regulator-enable-ramp-delay =3D <60>; + }; + + mt6366_vibr_reg: vibr { + regulator-name =3D "pp2800_vibr_x"; + regulator-min-microvolt =3D <2800000>; + regulator-max-microvolt =3D <2800000>; + regulator-enable-ramp-delay =3D <60>; + }; + + mt6366_vio18_reg: vio18 { + regulator-name =3D "pp1800_vio18_s3"; + regulator-min-microvolt =3D <1800000>; + regulator-max-microvolt =3D <1800000>; + regulator-enable-ramp-delay =3D <2700>; + regulator-always-on; + }; + + mt6366_vio28_reg: vio28 { + regulator-name =3D "pp2800_vio28_x"; + regulator-min-microvolt =3D <2800000>; + regulator-max-microvolt =3D <2800000>; + regulator-enable-ramp-delay =3D <270>; + }; + + mt6366_vm18_reg: vm18 { + regulator-name =3D "pp1800_emi_vdd1"; + regulator-min-microvolt =3D <1800000>; + regulator-max-microvolt =3D <1840000>; + regulator-enable-ramp-delay =3D <325>; + regulator-always-on; + }; + + mt6366_vmc_reg: vmc { + regulator-name =3D "pp3000_vmc"; + regulator-min-microvolt =3D <3000000>; + regulator-max-microvolt =3D <3000000>; + regulator-enable-ramp-delay =3D <60>; + }; + + mt6366_vmddr_reg: vmddr { + regulator-name =3D "pm0750_emi_vmddr"; + regulator-min-microvolt =3D <700000>; + regulator-max-microvolt =3D <750000>; + regulator-enable-ramp-delay =3D <325>; + regulator-always-on; + }; + + mt6366_vmch_reg: vmch { + regulator-name =3D "pp3000_vmch"; + regulator-min-microvolt =3D <3000000>; + regulator-max-microvolt =3D <3000000>; + regulator-enable-ramp-delay =3D <60>; + }; + + mt6366_vcn33_reg: vcn33 { + regulator-name =3D "pp3300_vcn33_x"; + regulator-min-microvolt =3D <3300000>; + regulator-max-microvolt =3D <3300000>; + regulator-enable-ramp-delay =3D <270>; + }; + + vdram2 { + regulator-name =3D "pp0600_emi_vddq"; + regulator-min-microvolt =3D <600000>; + regulator-max-microvolt =3D <600000>; + regulator-enable-ramp-delay =3D <3300>; + regulator-always-on; + }; + + mt6366_vrf12_reg: vrf12 { + regulator-name =3D "pp1200_vrf12_x"; + regulator-min-microvolt =3D <1200000>; + regulator-max-microvolt =3D <1200000>; + regulator-enable-ramp-delay =3D <120>; + }; + + mt6366_vrf18_reg: vrf18 { + regulator-name =3D "pp1800_vrf18_x"; + regulator-min-microvolt =3D <1800000>; + regulator-max-microvolt =3D <1800000>; + regulator-enable-ramp-delay =3D <120>; + }; + + vsim1 { + regulator-name =3D "pp1860_vsim1_x"; + regulator-min-microvolt =3D <1800000>; + regulator-max-microvolt =3D <1860000>; + regulator-enable-ramp-delay =3D <540>; + }; + + mt6366_vsim2_reg: vsim2 { + regulator-name =3D "pp2760_vsim2_x"; + regulator-min-microvolt =3D <2700000>; + regulator-max-microvolt =3D <2760000>; + regulator-enable-ramp-delay =3D <540>; + }; + + mt6366_vsram_gpu_reg: vsram-gpu { + regulator-name =3D "pp0900_dvdd_sram_gpu"; + regulator-min-microvolt =3D <850000>; + regulator-max-microvolt =3D <1050000>; + regulator-ramp-delay =3D <6250>; + regulator-enable-ramp-delay =3D <240>; + }; + + mt6366_vsram_others_reg: vsram-others { + regulator-name =3D "pp0900_dvdd_sram_core"; + regulator-min-microvolt =3D <900000>; + regulator-max-microvolt =3D <900000>; + regulator-ramp-delay =3D <6250>; + regulator-enable-ramp-delay =3D <240>; + regulator-always-on; + }; + + mt6366_vsram_proc11_reg: vsram-proc11 { + regulator-name =3D "pp0900_dvdd_sram_bc"; + regulator-min-microvolt =3D <850000>; + regulator-max-microvolt =3D <1120000>; + regulator-ramp-delay =3D <6250>; + regulator-enable-ramp-delay =3D <240>; + regulator-always-on; + }; + + mt6366_vsram_proc12_reg: vsram-proc12 { + regulator-name =3D "pp0900_dvdd_sram_lc"; + regulator-min-microvolt =3D <850000>; + regulator-max-microvolt =3D <1120000>; + regulator-ramp-delay =3D <6250>; + regulator-enable-ramp-delay =3D <240>; + regulator-always-on; + }; + + vusb { + regulator-name =3D "pp3070_vusb"; + regulator-min-microvolt =3D <3000000>; + regulator-max-microvolt =3D <3070000>; + regulator-enable-ramp-delay =3D <270>; + regulator-always-on; + }; + + vxo22 { + regulator-name =3D "pp2240_vxo22"; + regulator-min-microvolt =3D <2200000>; + regulator-max-microvolt =3D <2240000>; + regulator-enable-ramp-delay =3D <120>; + /* Feeds DCXO internally */ + regulator-always-on; + }; + }; + + rtc { + compatible =3D "mediatek,mt6366-rtc", "mediatek,mt6358-rtc"; + }; + }; +}; + +&scp { + pinctrl-names =3D "default"; + pinctrl-0 =3D <&scp_pins>; + firmware-name =3D "mediatek/mt8186/scp.img"; + memory-region =3D <&scp_mem>; + status =3D "okay"; + + cros-ec-rpmsg { + compatible =3D "google,cros-ec-rpmsg"; + mediatek,rpmsg-name =3D "cros-ec-rpmsg"; + }; +}; + +&spi1 { + pinctrl-names =3D "default"; + pinctrl-0 =3D <&spi1_pins>; + mediatek,pad-select =3D <0>; + status =3D "okay"; + + cros_ec: ec@0 { + compatible =3D "google,cros-ec-spi"; + reg =3D <0>; + spi-max-frequency =3D <1000000>; + interrupt-parent =3D <&pio>; + interrupts =3D <13 IRQ_TYPE_LEVEL_LOW>; + pinctrl-names =3D "default"; + pinctrl-0 =3D <&ec_ap_int>; + + i2c_tunnel: i2c-tunnel { + compatible =3D "google,cros-ec-i2c-tunnel"; + google,remote-bus =3D <1>; + #address-cells =3D <1>; + #size-cells =3D <0>; + }; + + typec { + compatible =3D "google,cros-ec-typec"; + #address-cells =3D <1>; + #size-cells =3D <0>; + + usb_c0: connector@0 { + compatible =3D "usb-c-connector"; + reg =3D <0>; + label =3D "left"; + power-role =3D "dual"; + data-role =3D "host"; + try-power-role =3D "source"; + + ports { + #address-cells =3D <1>; + #size-cells =3D <0>; + + port@1 { + reg =3D <1>; + + typec_port0: endpoint { }; + }; + }; + }; + + usb_c1: connector@1 { + compatible =3D "usb-c-connector"; + reg =3D <1>; + label =3D "right"; + power-role =3D "dual"; + data-role =3D "host"; + try-power-role =3D "source"; + + ports { + #address-cells =3D <1>; + #size-cells =3D <0>; + + port@1 { + reg =3D <1>; + + typec_port1: endpoint { }; + }; + }; + }; + }; + }; +}; + +&spi2 { + pinctrl-names =3D "default"; + pinctrl-0 =3D <&spi2_pins>; + cs-gpios =3D <&pio 45 GPIO_ACTIVE_LOW>; + mediatek,pad-select =3D <0>; + status =3D "okay"; + + cr50: cr50@0 { + compatible =3D "google,cr50"; + reg =3D <0>; + spi-max-frequency =3D <1000000>; + pinctrl-names =3D "default"; + pinctrl-0 =3D <&gsc_ap_int_odl>; + interrupt-parent =3D <&pio>; + interrupts =3D <15 IRQ_TYPE_EDGE_RISING>; + }; +}; + +&ssusb0 { + status =3D "okay"; +}; + +&ssusb1 { + status =3D "okay"; +}; + +&u3phy0 { + status =3D "okay"; +}; + +&u3phy1 { + status =3D "okay"; +}; + +&uart0 { + status =3D "okay"; +}; + +&usb_host0 { + vbus-supply =3D <&pp3300_s3>; + status =3D "okay"; +}; + +&usb_host1 { + vbus-supply =3D <&usb_p1_vbus>; + status =3D "okay"; + #address-cells =3D <2>; + #size-cells =3D <2>; +}; + +&watchdog { + mediatek,reset-by-toprgu; +}; + +#include +#include --=20 2.42.0.655.g421f12c284-goog From nobody Fri Sep 20 09:47:42 2024 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 1A64CC41513 for ; Thu, 12 Oct 2023 23:03:29 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1443168AbjJLXD2 (ORCPT ); Thu, 12 Oct 2023 19:03:28 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:44570 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1443117AbjJLXDR (ORCPT ); Thu, 12 Oct 2023 19:03:17 -0400 Received: from mail-pl1-x630.google.com (mail-pl1-x630.google.com [IPv6:2607:f8b0:4864:20::630]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 3EE9EE9 for ; Thu, 12 Oct 2023 16:03:06 -0700 (PDT) Received: by mail-pl1-x630.google.com with SMTP id d9443c01a7336-1c735473d1aso12092685ad.1 for ; Thu, 12 Oct 2023 16:03:06 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; t=1697151785; x=1697756585; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=elRJOT0+jP15Tj9U3kQZRIBQRbixiN5REYoEWrdtK5w=; b=Xl59Dlz+0wndx3nDlDAe2qo/qPVP5bzjWaMEigJDMB1NqV3UjyuEEn6VKBbOI3lWW0 VnMCssuHs3uExW27VKhUYUDpHJtrDCk4umcewSuxHs/Vgt//10BWtf7jlxpaCRffv38p b+icSZOBF1ChSb8YgECJmdHnXAlW2DQT6TQfI= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1697151785; x=1697756585; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=elRJOT0+jP15Tj9U3kQZRIBQRbixiN5REYoEWrdtK5w=; b=xUx2yfr7ZMTV8SBm+cLmTVmNRrWnsNYB6h6mKS4rZSAKkPRnBAAC3Bex7WFfo8ISVc LuFsZ6T/cTCVRJiBKzN8rLvdIIiwQE9Urj4q40V/k4/xPsGA7BXrHG4oWyJR7qtYDhNl 6i7suNsqED7byH7ZMLySnGu3kh4xHnmrPgYGY4BMTweHipDaXtRYZqaFVjLKpxTWSC3n 9KO6IeATJNvOgn/TC5QlQam6PPI/uQzikVOfMqMRr0mnafkKGqYZugeswc00zMe1jLsv 8mkJHc68/H+jbhDcqyoiOypGKzkk1AijzWhSvXttoJxL4Rmv7rgosa1+83n78HUZZUT/ MwXA== X-Gm-Message-State: AOJu0YzoxWo+wqlCtV34DvNeOITu3lhZBDzgJv668zEejiNHF/mh0lBh dSxxnFU2bS1U2uK7mCmvFwXj9g== X-Google-Smtp-Source: AGHT+IETBvsm1XnmTWnSmggpIS2D6EHnFWemDGUBooCEpJIBT5VxSe56rZHquqj5JdrJZVa34+oMzg== X-Received: by 2002:a17:902:d485:b0:1c8:791c:d782 with SMTP id c5-20020a170902d48500b001c8791cd782mr26095660plg.29.1697151785248; Thu, 12 Oct 2023 16:03:05 -0700 (PDT) Received: from wenstp920.tpe.corp.google.com ([2401:fa00:1:10:7397:2561:ed13:bac8]) by smtp.gmail.com with ESMTPSA id g11-20020a1709026b4b00b001c613091aeasm2494390plt.297.2023.10.12.16.03.03 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 12 Oct 2023 16:03:04 -0700 (PDT) From: Chen-Yu Tsai To: Matthias Brugger , AngeloGioacchino Del Regno , Rob Herring , Krzysztof Kozlowski , Conor Dooley Cc: Chen-Yu Tsai , devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-kernel@vger.kernel.org Subject: [PATCH 7/9] arm64: dts: mediatek: Introduce MT8186 Steelix Date: Fri, 13 Oct 2023 07:02:33 +0800 Message-ID: <20231012230237.2676469-8-wenst@chromium.org> X-Mailer: git-send-email 2.42.0.655.g421f12c284-goog In-Reply-To: <20231012230237.2676469-1-wenst@chromium.org> References: <20231012230237.2676469-1-wenst@chromium.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" The MT8186 Steelix, also known as the Lenovo 300e Yoga Chromebook Gen 4, is a convertible device based on a common design of the same name. The device comes in different variants. Of them, whether a world facing camera is integrated is the only differentiating factor between the two device trees added. The different SKU IDs describe this alone. The other device difference is the touchpad component used. This is simply handled by having both possible components described in the device tree, and letting the implementation figure out which one is actually available. The system bootloader / firmware does not differentiate this in that they share the same SKU IDs. Signed-off-by: Chen-Yu Tsai --- arch/arm64/boot/dts/mediatek/Makefile | 2 + .../mt8186-corsola-steelix-sku131072.dts | 18 ++ .../mt8186-corsola-steelix-sku131073.dts | 18 ++ .../dts/mediatek/mt8186-corsola-steelix.dtsi | 197 ++++++++++++++++++ 4 files changed, 235 insertions(+) create mode 100644 arch/arm64/boot/dts/mediatek/mt8186-corsola-steelix-sku= 131072.dts create mode 100644 arch/arm64/boot/dts/mediatek/mt8186-corsola-steelix-sku= 131073.dts create mode 100644 arch/arm64/boot/dts/mediatek/mt8186-corsola-steelix.dtsi diff --git a/arch/arm64/boot/dts/mediatek/Makefile b/arch/arm64/boot/dts/me= diatek/Makefile index 442af61b1305..7bd9471b89f9 100644 --- a/arch/arm64/boot/dts/mediatek/Makefile +++ b/arch/arm64/boot/dts/mediatek/Makefile @@ -43,6 +43,8 @@ dtb-$(CONFIG_ARCH_MEDIATEK) +=3D mt8183-kukui-kodama-sku3= 2.dtb dtb-$(CONFIG_ARCH_MEDIATEK) +=3D mt8183-kukui-krane-sku0.dtb dtb-$(CONFIG_ARCH_MEDIATEK) +=3D mt8183-kukui-krane-sku176.dtb dtb-$(CONFIG_ARCH_MEDIATEK) +=3D mt8183-pumpkin.dtb +dtb-$(CONFIG_ARCH_MEDIATEK) +=3D mt8186-corsola-steelix-sku131072.dtb +dtb-$(CONFIG_ARCH_MEDIATEK) +=3D mt8186-corsola-steelix-sku131073.dtb dtb-$(CONFIG_ARCH_MEDIATEK) +=3D mt8186-corsola-tentacool-sku327681.dtb dtb-$(CONFIG_ARCH_MEDIATEK) +=3D mt8186-corsola-tentacool-sku327683.dtb dtb-$(CONFIG_ARCH_MEDIATEK) +=3D mt8186-corsola-tentacruel-sku262144.dtb diff --git a/arch/arm64/boot/dts/mediatek/mt8186-corsola-steelix-sku131072.= dts b/arch/arm64/boot/dts/mediatek/mt8186-corsola-steelix-sku131072.dts new file mode 100644 index 000000000000..eae17bca8585 --- /dev/null +++ b/arch/arm64/boot/dts/mediatek/mt8186-corsola-steelix-sku131072.dts @@ -0,0 +1,18 @@ +// SPDX-License-Identifier: (GPL-2.0 OR MIT) +/* + * Copyright 2022 Google LLC + */ + +/dts-v1/; +#include "mt8186-corsola-steelix.dtsi" + +/ { + model =3D "Google Steelix board"; + compatible =3D "google,steelix-sku131072", "google,steelix", + "mediatek,mt8186"; + chassis-type =3D "convertible"; +}; + +&mt6366codec { + mediatek,dmic-mode =3D <0>; /* two-wire */ +}; diff --git a/arch/arm64/boot/dts/mediatek/mt8186-corsola-steelix-sku131073.= dts b/arch/arm64/boot/dts/mediatek/mt8186-corsola-steelix-sku131073.dts new file mode 100644 index 000000000000..a55375b95d0d --- /dev/null +++ b/arch/arm64/boot/dts/mediatek/mt8186-corsola-steelix-sku131073.dts @@ -0,0 +1,18 @@ +// SPDX-License-Identifier: (GPL-2.0 OR MIT) +/* + * Copyright 2022 Google LLC + */ + +/dts-v1/; +#include "mt8186-corsola-steelix.dtsi" + +/ { + model =3D "Google Steelix board"; + compatible =3D "google,steelix-sku131073", "google,steelix", + "mediatek,mt8186"; + chassis-type =3D "convertible"; +}; + +&mt6366codec { + mediatek,dmic-mode =3D <1>; /* one-wire */ +}; diff --git a/arch/arm64/boot/dts/mediatek/mt8186-corsola-steelix.dtsi b/arc= h/arm64/boot/dts/mediatek/mt8186-corsola-steelix.dtsi new file mode 100644 index 000000000000..8488f2f9dc4d --- /dev/null +++ b/arch/arm64/boot/dts/mediatek/mt8186-corsola-steelix.dtsi @@ -0,0 +1,197 @@ +// SPDX-License-Identifier: (GPL-2.0 OR MIT) +/* + * Copyright 2023 Google LLC + */ + +/dts-v1/; +#include "mt8186-corsola.dtsi" +#include +#include + +/{ + pp1000_edpbrdg: regulator-pp1000-edpbrdg { + compatible =3D "regulator-fixed"; + regulator-name =3D "pp1000_edpbrdg"; + pinctrl-names =3D "default"; + pinctrl-0 =3D <&en_pp1000_edpbrdg>; + enable-active-high; + regulator-boot-on; + gpio =3D <&pio 29 GPIO_ACTIVE_HIGH>; + vin-supply =3D <&pp3300_z2>; + }; + + pp1800_edpbrdg_dx: regulator-pp1800-edpbrdg-dx { + compatible =3D "regulator-fixed"; + regulator-name =3D "pp1800_edpbrdg_dx"; + pinctrl-names =3D "default"; + pinctrl-0 =3D <&en_pp1800_edpbrdg>; + enable-active-high; + regulator-boot-on; + gpio =3D <&pio 30 GPIO_ACTIVE_HIGH>; + vin-supply =3D <&mt6366_vio18_reg>; + }; + + pp3300_edp_dx: regulator-pp3300-edp-dx { + compatible =3D "regulator-fixed"; + regulator-name =3D "pp3300_edp_dx"; + pinctrl-names =3D "default"; + pinctrl-0 =3D <&en_pp3300_edpbrdg>; + enable-active-high; + regulator-boot-on; + gpio =3D <&pio 31 GPIO_ACTIVE_HIGH>; + vin-supply =3D <&pp3300_z2>; + }; +}; + +&dsi_out { + remote-endpoint =3D <&anx7625_in>; +}; + +&i2c0 { + clock-frequency =3D <400000>; + + anx_bridge: anx7625@58 { + compatible =3D "analogix,anx7625"; + reg =3D <0x58>; + pinctrl-names =3D "default"; + pinctrl-0 =3D <&anx7625_pins>; + enable-gpios =3D <&pio 96 GPIO_ACTIVE_HIGH>; + reset-gpios =3D <&pio 98 GPIO_ACTIVE_HIGH>; + vdd10-supply =3D <&pp1000_edpbrdg>; + vdd18-supply =3D <&pp1800_edpbrdg_dx>; + vdd33-supply =3D <&pp3300_edp_dx>; + analogix,lane0-swing =3D /bits/ 8 <0x70 0x30>; + analogix,lane1-swing =3D /bits/ 8 <0x70 0x30>; + + ports { + #address-cells =3D <1>; + #size-cells =3D <0>; + + port@0 { + reg =3D <0>; + + anx7625_in: endpoint { + remote-endpoint =3D <&dsi_out>; + data-lanes =3D <0 1 2 3>; + }; + }; + + port@1 { + reg =3D <1>; + + anx7625_out: endpoint { + remote-endpoint =3D <&panel_in>; + }; + }; + }; + + aux-bus { + panel: panel { + compatible =3D "edp-panel"; + power-supply =3D <&pp3300_disp_x>; + backlight =3D <&backlight_lcd0>; + + port { + panel_in: endpoint { + remote-endpoint =3D <&anx7625_out>; + }; + }; + }; + }; + }; +}; + +&i2c1 { + touchscreen: touchscreen@5d { + compatible =3D "goodix,gt7375p"; + reg =3D <0x5d>; + interrupts-extended =3D <&pio 12 IRQ_TYPE_EDGE_FALLING>; + pinctrl-names =3D "default"; + pinctrl-0 =3D <&touchscreen_pins>; + reset-gpios =3D <&pio 60 GPIO_ACTIVE_LOW>; + vdd-supply =3D <&pp3300_s3>; + goodix,no-reset-during-suspend; + }; +}; + +&i2c2 { + i2c-scl-internal-delay-ns =3D <22000>; + + /* second source component */ + touchpad@2c { + compatible =3D "hid-over-i2c"; + reg =3D <0x2c>; + hid-descr-addr =3D <0x20>; + interrupts-extended =3D <&pio 11 IRQ_TYPE_LEVEL_LOW>; + pinctrl-names =3D "default"; + pinctrl-0 =3D <&trackpad_pin>; + vdd-supply =3D <&pp3300_s3>; + wakeup-source; + }; +}; + +&keyboard_controller { + function-row-physmap =3D < + MATRIX_KEY(0x00, 0x02, 0) /* T1 */ + MATRIX_KEY(0x03, 0x02, 0) /* T2 */ + MATRIX_KEY(0x02, 0x02, 0) /* T3 */ + MATRIX_KEY(0x01, 0x02, 0) /* T4 */ + MATRIX_KEY(0x03, 0x04, 0) /* T5 */ + MATRIX_KEY(0x02, 0x04, 0) /* T6 */ + MATRIX_KEY(0x01, 0x04, 0) /* T7 */ + MATRIX_KEY(0x02, 0x09, 0) /* T8 */ + MATRIX_KEY(0x01, 0x09, 0) /* T9 */ + MATRIX_KEY(0x00, 0x04, 0) /* T10 */ + >; + + linux,keymap =3D < + MATRIX_KEY(0x00, 0x02, KEY_BACK) + MATRIX_KEY(0x03, 0x02, KEY_REFRESH) + MATRIX_KEY(0x02, 0x02, KEY_ZOOM) + MATRIX_KEY(0x01, 0x02, KEY_SCALE) + MATRIX_KEY(0x03, 0x04, KEY_BRIGHTNESSDOWN) + MATRIX_KEY(0x02, 0x04, KEY_BRIGHTNESSUP) + MATRIX_KEY(0x01, 0x04, KEY_MICMUTE) + MATRIX_KEY(0x02, 0x09, KEY_MUTE) + MATRIX_KEY(0x01, 0x09, KEY_VOLUMEDOWN) + MATRIX_KEY(0x00, 0x04, KEY_VOLUMEUP) + CROS_STD_MAIN_KEYMAP + >; +}; + +&pio { + anx7625_pins: anx7625-pins { + pins1 { + pinmux =3D , + ; + output-low; + }; + + pins2 { + pinmux =3D ; + input-enable; + bias-disable; + }; + }; + + en_pp1000_edpbrdg: pp1000-edpbrdg-en-pins { + pins { + pinmux =3D ; + output-low; + }; + }; + + en_pp1800_edpbrdg: pp1800-edpbrdg-en-pins { + pins { + pinmux =3D ; + output-low; + }; + }; + + en_pp3300_edpbrdg: pp3300-edpbrdg-en-pins { + pins { + pinmux =3D ; + output-low; + }; + }; +}; --=20 2.42.0.655.g421f12c284-goog From nobody Fri Sep 20 09:47:42 2024 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id A0F7DCDB47E for ; Thu, 12 Oct 2023 23:03:33 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1443175AbjJLXDc (ORCPT ); Thu, 12 Oct 2023 19:03:32 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:41044 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1443125AbjJLXDS (ORCPT ); Thu, 12 Oct 2023 19:03:18 -0400 Received: from mail-pg1-x52d.google.com (mail-pg1-x52d.google.com [IPv6:2607:f8b0:4864:20::52d]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 3B87411A for ; Thu, 12 Oct 2023 16:03:08 -0700 (PDT) Received: by mail-pg1-x52d.google.com with SMTP id 41be03b00d2f7-53fa455cd94so1119248a12.2 for ; Thu, 12 Oct 2023 16:03:08 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; t=1697151787; x=1697756587; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=WZL2qR43CHkvuuHjLtXEqq66Lhh+fHM/KJL5HBKVwIw=; b=io1gPev+wnRRi7RgcMLLkzv+ZoVAlHx+0GWsWg+DzqjpPMltssaaLADCgcOo9hGCYY 8Tt0TSrCufC2dlYHG7HCXfD6Gix9TDPkzE/i/02wvpMITEF0/yfimt0lXFGB8xN55el3 2N1HLRVtT7ops6HYLqRstCaSz245P0VHGlB+w= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1697151787; x=1697756587; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=WZL2qR43CHkvuuHjLtXEqq66Lhh+fHM/KJL5HBKVwIw=; b=LHU2k0mS5k0fPyqpuCuZXbwwsIDJR0WfRx4gUotm91vroTeyrkwDmEf8Rw/WtmaAOm p3BLQqg5xxB5C/SVR5OlVRWejSAiHmSOt8XRGucADjSXG8cPs/tpFvKF0F5m5LxuxpK5 lPovyGB2/Ssm5Av4vb3bBshCil9ftQN+1UJj7jMfMhv78uqk3KQ6YBY9WsknSJfnNEa1 d9cLk1B9dXOUvvwravww1el54VruAzrZsGcz0Fk1xzWPx+tpLPNcsdV+YhrpELYj5jOb 1zyOgfLUgPgYJs+agH99YDBw+/KI50iXZqw0m+2c0x5AA0NY6xtnxhtFrWN7vO1hF5Xl cMiw== X-Gm-Message-State: AOJu0Yz3jurWsVOL9NCVIm5wfncfezJ5kgoOe5NCOBKktX+4QIpIW0JT uebwYDWQl2fLndqQcaqNAAEtYg== X-Google-Smtp-Source: AGHT+IHNmLFSfXUvSCIZu97slh9dMsSIdN2phuDlOzogtcn/v4ql653OTqwp3qn3wC8meMvlaIr5PQ== X-Received: by 2002:a17:902:b698:b0:1c8:791c:d797 with SMTP id c24-20020a170902b69800b001c8791cd797mr19017563pls.56.1697151787485; Thu, 12 Oct 2023 16:03:07 -0700 (PDT) Received: from wenstp920.tpe.corp.google.com ([2401:fa00:1:10:7397:2561:ed13:bac8]) by smtp.gmail.com with ESMTPSA id g11-20020a1709026b4b00b001c613091aeasm2494390plt.297.2023.10.12.16.03.05 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 12 Oct 2023 16:03:07 -0700 (PDT) From: Chen-Yu Tsai To: Matthias Brugger , AngeloGioacchino Del Regno , Rob Herring , Krzysztof Kozlowski , Conor Dooley Cc: Chen-Yu Tsai , devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-kernel@vger.kernel.org Subject: [PATCH 8/9] arm64: dts: mediatek: Add MT8186 Steelix platform based Rusty Date: Fri, 13 Oct 2023 07:02:34 +0800 Message-ID: <20231012230237.2676469-9-wenst@chromium.org> X-Mailer: git-send-email 2.42.0.655.g421f12c284-goog In-Reply-To: <20231012230237.2676469-1-wenst@chromium.org> References: <20231012230237.2676469-1-wenst@chromium.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" MT8186 Rusty, otherwise known as the Lenovo 100e Chromebook Gen 4, is an MT8186 based laptop. It is based on the "Steelix" design. Being a laptop instead of a convertible device, there is no touchscreen or stylus. Signed-off-by: Chen-Yu Tsai --- arch/arm64/boot/dts/mediatek/Makefile | 1 + .../mt8186-corsola-rusty-sku196608.dts | 21 +++++++++++++++++++ 2 files changed, 22 insertions(+) create mode 100644 arch/arm64/boot/dts/mediatek/mt8186-corsola-rusty-sku19= 6608.dts diff --git a/arch/arm64/boot/dts/mediatek/Makefile b/arch/arm64/boot/dts/me= diatek/Makefile index 7bd9471b89f9..6b05f1f2e645 100644 --- a/arch/arm64/boot/dts/mediatek/Makefile +++ b/arch/arm64/boot/dts/mediatek/Makefile @@ -43,6 +43,7 @@ dtb-$(CONFIG_ARCH_MEDIATEK) +=3D mt8183-kukui-kodama-sku3= 2.dtb dtb-$(CONFIG_ARCH_MEDIATEK) +=3D mt8183-kukui-krane-sku0.dtb dtb-$(CONFIG_ARCH_MEDIATEK) +=3D mt8183-kukui-krane-sku176.dtb dtb-$(CONFIG_ARCH_MEDIATEK) +=3D mt8183-pumpkin.dtb +dtb-$(CONFIG_ARCH_MEDIATEK) +=3D mt8186-corsola-rusty-sku196608.dtb dtb-$(CONFIG_ARCH_MEDIATEK) +=3D mt8186-corsola-steelix-sku131072.dtb dtb-$(CONFIG_ARCH_MEDIATEK) +=3D mt8186-corsola-steelix-sku131073.dtb dtb-$(CONFIG_ARCH_MEDIATEK) +=3D mt8186-corsola-tentacool-sku327681.dtb diff --git a/arch/arm64/boot/dts/mediatek/mt8186-corsola-rusty-sku196608.dt= s b/arch/arm64/boot/dts/mediatek/mt8186-corsola-rusty-sku196608.dts new file mode 100644 index 000000000000..02ab7eb11dcd --- /dev/null +++ b/arch/arm64/boot/dts/mediatek/mt8186-corsola-rusty-sku196608.dts @@ -0,0 +1,21 @@ +// SPDX-License-Identifier: (GPL-2.0 OR MIT) +/* + * Copyright 2022 Google LLC + */ + +/dts-v1/; +#include "mt8186-corsola-steelix.dtsi" + +/ { + model =3D "Google Rusty board"; + compatible =3D "google,steelix-sku196608", "google,steelix-sku196609", + "google,steelix", "mediatek,mt8186"; + chassis-type =3D "laptop"; +}; + +/delete-node/ &gpio_keys; +/delete-node/ &touchscreen; + +&i2c1 { + status =3D "disabled"; +}; --=20 2.42.0.655.g421f12c284-goog From nobody Fri Sep 20 09:47:42 2024 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id F3E5FCDB482 for ; Thu, 12 Oct 2023 23:03:41 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1443204AbjJLXDl (ORCPT ); Thu, 12 Oct 2023 19:03:41 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:44744 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1443106AbjJLXDU (ORCPT ); Thu, 12 Oct 2023 19:03:20 -0400 Received: from mail-pl1-x633.google.com (mail-pl1-x633.google.com [IPv6:2607:f8b0:4864:20::633]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id BE32513D for ; Thu, 12 Oct 2023 16:03:10 -0700 (PDT) Received: by mail-pl1-x633.google.com with SMTP id d9443c01a7336-1c60778a3bfso13428785ad.1 for ; Thu, 12 Oct 2023 16:03:10 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; t=1697151790; x=1697756590; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=EFPxN5h4Yz/Kh95Kwg/dHQdP+2ryagu2J01cqKKyODk=; b=lYm6XMvvuI34p/F7s115FrGfqboNSfFM9IzGFXqKhIWKanwzxXtyZzN179mm/jB4c3 AYZHGZC/ljXxOD8CNb5BcNZZhSQdSQ8hU/mkkAfs2sKbIsFoueuMKn9uTKi2f74xmp+Q rEt0jFXFGrjPJHR5mOWgTI4TqfXsg/yPaQ2K8= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1697151790; x=1697756590; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=EFPxN5h4Yz/Kh95Kwg/dHQdP+2ryagu2J01cqKKyODk=; b=n5OTJAQXLE4OErNDMzMrmW0xKNXbLTd1rSQzwgzR7PR8v93Auzhb13UGW94KxLZdwQ MrmTLCbX7k0xD0UpGFloJCdNToHmfx7YUrw1YupdbetU7v5AUrNzK0cg3/W1gg4cm2I/ 5aQZaoDy+F4fKaJZMPNUcm5Ytxr5wrVC+q8ZEBNdpEdQxDqoDjJwW/Mmwaq3/SSjddHC KyfFwVwmjN0z5k3XeF2gKlU9Qm23TLavPRGgRB8WmE0iXORHIN9SpILZaDtaUzrQenmJ +zCo9BKM4t+V5dtBpfwneWvZzrrIn4T06zZMHJT/uK3rscMz+bhuzzE/AKnXWOZursJy kDzw== X-Gm-Message-State: AOJu0YxPmOFFI5pHTwK0NXUuvht7bQ2OQw+J4kRhnK7D6+sYece6TuN4 4GiYoG48LQtvXOAImzQmZobgHuRnZqpLaqqsktE+WQ== X-Google-Smtp-Source: AGHT+IEwiBTYiXyw0ylqmM0RWi8WMP5G5S+LI3ARjay2AD+Tzo7msM4hIoDmDwH8vRIRJqHScqQhSA== X-Received: by 2002:a17:902:d481:b0:1c8:7d21:fc50 with SMTP id c1-20020a170902d48100b001c87d21fc50mr24606295plg.56.1697151789811; Thu, 12 Oct 2023 16:03:09 -0700 (PDT) Received: from wenstp920.tpe.corp.google.com ([2401:fa00:1:10:7397:2561:ed13:bac8]) by smtp.gmail.com with ESMTPSA id g11-20020a1709026b4b00b001c613091aeasm2494390plt.297.2023.10.12.16.03.07 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 12 Oct 2023 16:03:09 -0700 (PDT) From: Chen-Yu Tsai To: Matthias Brugger , AngeloGioacchino Del Regno , Rob Herring , Krzysztof Kozlowski , Conor Dooley Cc: Chen-Yu Tsai , devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-kernel@vger.kernel.org Subject: [PATCH 9/9] arm64: dts: mediatek: Add MT8186 Magneton Chromebooks Date: Fri, 13 Oct 2023 07:02:35 +0800 Message-ID: <20231012230237.2676469-10-wenst@chromium.org> X-Mailer: git-send-email 2.42.0.655.g421f12c284-goog In-Reply-To: <20231012230237.2676469-1-wenst@chromium.org> References: <20231012230237.2676469-1-wenst@chromium.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" Add entries for the MT8186 based Chromebooks, also collectively known as the Lenovo IdeaPad Slim 3 Chromebook (14M868). It is also based on the "Steelix" design. Being a laptop instead of a convertible device, there is no touchscreen or stylus, which is similar to Rusty. However Magneton does not have ports on the right side of the device. Three variants are listed separately. These use different touchscreen controllers, or lack a touchscreen altogether. Signed-off-by: Chen-Yu Tsai --- arch/arm64/boot/dts/mediatek/Makefile | 3 ++ .../mt8186-corsola-magneton-sku393216.dts | 38 +++++++++++++++++++ .../mt8186-corsola-magneton-sku393217.dts | 38 +++++++++++++++++++ .../mt8186-corsola-magneton-sku393218.dts | 21 ++++++++++ 4 files changed, 100 insertions(+) create mode 100644 arch/arm64/boot/dts/mediatek/mt8186-corsola-magneton-sk= u393216.dts create mode 100644 arch/arm64/boot/dts/mediatek/mt8186-corsola-magneton-sk= u393217.dts create mode 100644 arch/arm64/boot/dts/mediatek/mt8186-corsola-magneton-sk= u393218.dts diff --git a/arch/arm64/boot/dts/mediatek/Makefile b/arch/arm64/boot/dts/me= diatek/Makefile index 6b05f1f2e645..7e365e9516ab 100644 --- a/arch/arm64/boot/dts/mediatek/Makefile +++ b/arch/arm64/boot/dts/mediatek/Makefile @@ -43,6 +43,9 @@ dtb-$(CONFIG_ARCH_MEDIATEK) +=3D mt8183-kukui-kodama-sku3= 2.dtb dtb-$(CONFIG_ARCH_MEDIATEK) +=3D mt8183-kukui-krane-sku0.dtb dtb-$(CONFIG_ARCH_MEDIATEK) +=3D mt8183-kukui-krane-sku176.dtb dtb-$(CONFIG_ARCH_MEDIATEK) +=3D mt8183-pumpkin.dtb +dtb-$(CONFIG_ARCH_MEDIATEK) +=3D mt8186-corsola-magneton-sku393216.dtb +dtb-$(CONFIG_ARCH_MEDIATEK) +=3D mt8186-corsola-magneton-sku393217.dtb +dtb-$(CONFIG_ARCH_MEDIATEK) +=3D mt8186-corsola-magneton-sku393218.dtb dtb-$(CONFIG_ARCH_MEDIATEK) +=3D mt8186-corsola-rusty-sku196608.dtb dtb-$(CONFIG_ARCH_MEDIATEK) +=3D mt8186-corsola-steelix-sku131072.dtb dtb-$(CONFIG_ARCH_MEDIATEK) +=3D mt8186-corsola-steelix-sku131073.dtb diff --git a/arch/arm64/boot/dts/mediatek/mt8186-corsola-magneton-sku393216= .dts b/arch/arm64/boot/dts/mediatek/mt8186-corsola-magneton-sku393216.dts new file mode 100644 index 000000000000..7406e7a29fcc --- /dev/null +++ b/arch/arm64/boot/dts/mediatek/mt8186-corsola-magneton-sku393216.dts @@ -0,0 +1,38 @@ +// SPDX-License-Identifier: (GPL-2.0 OR MIT) +/* + * Copyright 2022 Google LLC + */ + +/dts-v1/; +#include "mt8186-corsola-steelix.dtsi" + +/ { + model =3D "Google Magneton board"; + compatible =3D "google,steelix-sku393216", "google,steelix-sku393219", + "google,steelix", "mediatek,mt8186"; + chassis-type =3D "laptop"; +}; + +/delete-node/ &gpio_keys; +/delete-node/ &touchscreen; + +&i2c1 { + touchscreen: touchscreen@10 { + compatible =3D "hid-over-i2c"; + reg =3D <0x10>; + interrupt-parent =3D <&pio>; + interrupts =3D <12 IRQ_TYPE_LEVEL_LOW>; + pinctrl-names =3D "default"; + pinctrl-0 =3D <&touchscreen_pins>; + reset-gpios =3D <&pio 60 GPIO_ACTIVE_LOW>; + vdd-supply =3D <&pp3300_s3>; + status =3D "okay"; + + post-power-on-delay-ms =3D <350>; + hid-descr-addr =3D <0x0001>; + }; +}; + +&usb_c1 { + status =3D "disabled"; +}; diff --git a/arch/arm64/boot/dts/mediatek/mt8186-corsola-magneton-sku393217= .dts b/arch/arm64/boot/dts/mediatek/mt8186-corsola-magneton-sku393217.dts new file mode 100644 index 000000000000..b1806e0b2782 --- /dev/null +++ b/arch/arm64/boot/dts/mediatek/mt8186-corsola-magneton-sku393217.dts @@ -0,0 +1,38 @@ +// SPDX-License-Identifier: (GPL-2.0 OR MIT) +/* + * Copyright 2022 Google LLC + */ + +/dts-v1/; +#include "mt8186-corsola-steelix.dtsi" + +/ { + model =3D "Google Magneton board"; + compatible =3D "google,steelix-sku393217", "google,steelix-sku393220", + "google,steelix", "mediatek,mt8186"; + chassis-type =3D "laptop"; +}; + +/delete-node/ &gpio_keys; +/delete-node/ &touchscreen; + +&i2c1 { + touchscreen: touchscreen@40 { + compatible =3D "hid-over-i2c"; + reg =3D <0x40>; + interrupt-parent =3D <&pio>; + interrupts =3D <12 IRQ_TYPE_LEVEL_LOW>; + pinctrl-names =3D "default"; + pinctrl-0 =3D <&touchscreen_pins>; + reset-gpios =3D <&pio 60 GPIO_ACTIVE_LOW>; + vdd-supply =3D <&pp3300_s3>; + status =3D "okay"; + + post-power-on-delay-ms =3D <450>; + hid-descr-addr =3D <0x0001>; + }; +}; + +&usb_c1 { + status =3D "disabled"; +}; diff --git a/arch/arm64/boot/dts/mediatek/mt8186-corsola-magneton-sku393218= .dts b/arch/arm64/boot/dts/mediatek/mt8186-corsola-magneton-sku393218.dts new file mode 100644 index 000000000000..c70f196f115b --- /dev/null +++ b/arch/arm64/boot/dts/mediatek/mt8186-corsola-magneton-sku393218.dts @@ -0,0 +1,21 @@ +// SPDX-License-Identifier: (GPL-2.0 OR MIT) +/* + * Copyright 2022 Google LLC + */ + +/dts-v1/; +#include "mt8186-corsola-steelix.dtsi" + +/ { + model =3D "Google Magneton board"; + compatible =3D "google,steelix-sku393218", "google,steelix-sku393221", + "google,steelix", "mediatek,mt8186"; + chassis-type =3D "laptop"; +}; + +/delete-node/ &gpio_keys; +/delete-node/ &touchscreen; + +&usb_c1 { + status =3D "disabled"; +}; --=20 2.42.0.655.g421f12c284-goog