From nobody Fri Sep 20 11:44:30 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 8E418EE49AB for ; Tue, 22 Aug 2023 08:45:36 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233949AbjHVIpg (ORCPT ); Tue, 22 Aug 2023 04:45:36 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:50364 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233942AbjHVIpf (ORCPT ); Tue, 22 Aug 2023 04:45:35 -0400 Received: from mail-pf1-x42e.google.com (mail-pf1-x42e.google.com [IPv6:2607:f8b0:4864:20::42e]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 86F531B0 for ; Tue, 22 Aug 2023 01:45:33 -0700 (PDT) Received: by mail-pf1-x42e.google.com with SMTP id d2e1a72fcca58-68a3f1d8be2so1763924b3a.3 for ; Tue, 22 Aug 2023 01:45:33 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; t=1692693933; x=1693298733; 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=scA3slj2GnANfQZ9WmrZNWN3UDRBxFFiMbyHn692ZM4=; b=Y6BM3dWQ2i1ulThxW8v48ZRSijPKfGGDZU7YePxZx4AQcVIlA/ORIdCKMV08hkCpCY qPNYEzQkzeGYFKSMV8pGTxo2/wvqI8UxJHVruSp1Y+nVqJz8GWV514e3wRNI1sTiDPYK nUL7pKK3A3Qh1AOStKX69Lnb2vawQmrTGjUGY= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1692693933; x=1693298733; 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=scA3slj2GnANfQZ9WmrZNWN3UDRBxFFiMbyHn692ZM4=; b=WUJozVMzHOlfXmlX7gD/KIrZsE/Y728CRt7ffovix7gBFbEeugaeo7N9wLS6KcN6+r +RVtRap/8gAAtn+jnCt4bKNdW95c02YKhe9AcZGG/vMnYGyvXTw+g+P8Cz79fqp50jYQ SMR+yyeAWYI3wEhWT7Sromn3thnMZJgUF3EthC3Q6FF/YiHNPJPrExGYRLX0BdwqWUKK 23Eb7NJ9RWS5cdETyAI7VuJqpMNar4KA9ASKiLOByi3mwRxkK0S56HgBD1Mbmlky0XK0 hiTQU3DWSW6Nx9JZhMhDOjWJ58a6MOq0vOvKKc3UPPSkgd85E6pPmm1Oq0EYPR51LZvP OA3Q== X-Gm-Message-State: AOJu0YwupajWiayMLGnZ6o16176AD4pmjGV+UD9E9MC/G7XA0Fn7LYBM k1HYaSLSGhVqdBkk6JBN+leYug== X-Google-Smtp-Source: AGHT+IHW6ePGH6SgC29qM4b5i2IL+bnaOrlXSniE0MdltskRkrxsbx0tRAxYxqvSf6DSgpjVj78adQ== X-Received: by 2002:a05:6a00:1492:b0:68a:4312:e0d6 with SMTP id v18-20020a056a00149200b0068a4312e0d6mr7109893pfu.10.1692693932995; Tue, 22 Aug 2023 01:45:32 -0700 (PDT) Received: from wenstp920.tpe.corp.google.com ([2401:fa00:1:10:e619:3fa0:1a90:6bb0]) by smtp.gmail.com with ESMTPSA id s26-20020aa78d5a000000b00666b012baedsm7304790pfe.158.2023.08.22.01.45.30 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 22 Aug 2023 01:45:32 -0700 (PDT) From: Chen-Yu Tsai To: Lee Jones , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Matthias Brugger , AngeloGioacchino Del Regno , Mark Brown Cc: Chen-Yu Tsai , Zhiyong Tao , devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org Subject: [PATCH v2 01/11] dt-bindings: mfd: mt6397: Split out compatible for MediaTek MT6366 PMIC Date: Tue, 22 Aug 2023 16:45:09 +0800 Message-ID: <20230822084520.564937-2-wenst@chromium.org> X-Mailer: git-send-email 2.42.0.rc1.204.g551eb34607-goog In-Reply-To: <20230822084520.564937-1-wenst@chromium.org> References: <20230822084520.564937-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 MT6366 PMIC is mostly, but not fully, compatible with MT6358. It has a different set of regulators. Specifically, it lacks the camera related VCAM* LDOs and VLDO28, but has additional VM18, VMDDR, and VSRAM_CORE LDOs. The PMICs contain a chip ID register that can be used to detect which exact model is preset, so it is possible to share a common base compatible string. Add a separate compatible for the MT6366 PMIC, with a fallback to the MT6358 PMIC. Fixes: 49be16305587 ("dt-bindings: mfd: Add compatible for the MediaTek MT6= 366 PMIC") Signed-off-by: Chen-Yu Tsai Acked-by: Krzysztof Kozlowski --- Dropped Conor's Reviewed-by tag as this patch is now completely different. Documentation/devicetree/bindings/mfd/mt6397.txt | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Documentation/devicetree/bindings/mfd/mt6397.txt b/Documentati= on/devicetree/bindings/mfd/mt6397.txt index 294693a8906c..10540aa7afa1 100644 --- a/Documentation/devicetree/bindings/mfd/mt6397.txt +++ b/Documentation/devicetree/bindings/mfd/mt6397.txt @@ -22,8 +22,9 @@ compatible: "mediatek,mt6323" for PMIC MT6323 "mediatek,mt6331" for PMIC MT6331 and MT6332 "mediatek,mt6357" for PMIC MT6357 - "mediatek,mt6358" for PMIC MT6358 and MT6366 + "mediatek,mt6358" for PMIC MT6358 "mediatek,mt6359" for PMIC MT6359 + "mediatek,mt6366", "mediatek,mt6358" for PMIC MT6366 "mediatek,mt6397" for PMIC MT6397 =20 Optional subnodes: @@ -40,6 +41,7 @@ Optional subnodes: - compatible: "mediatek,mt6323-regulator" see ../regulator/mt6323-regulator.txt - compatible: "mediatek,mt6358-regulator" + - compatible: "mediatek,mt6366-regulator", "mediatek-mt6358-regulator" see ../regulator/mt6358-regulator.txt - compatible: "mediatek,mt6397-regulator" see ../regulator/mt6397-regulator.txt --=20 2.42.0.rc1.204.g551eb34607-goog From nobody Fri Sep 20 11:44:30 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 D9A7CEE49AB for ; Tue, 22 Aug 2023 08:45:43 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233970AbjHVIpn (ORCPT ); Tue, 22 Aug 2023 04:45:43 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:50376 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233950AbjHVIph (ORCPT ); Tue, 22 Aug 2023 04:45:37 -0400 Received: from mail-oa1-x2b.google.com (mail-oa1-x2b.google.com [IPv6:2001:4860:4864:20::2b]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 35DC11B0 for ; Tue, 22 Aug 2023 01:45:36 -0700 (PDT) Received: by mail-oa1-x2b.google.com with SMTP id 586e51a60fabf-1c8e9d75ce1so2221795fac.3 for ; Tue, 22 Aug 2023 01:45:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; t=1692693935; x=1693298735; 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=k79wdmYHctxTtTviGEsItx8Rkhv7MYSzlD064SW+BWo=; b=l3UNByXtp7EcL+5pV348GVt6NJLrnCD5W0g9jVmO89nbf6Dt9TJc7YhaUQr9r8jSi+ NTk+SdWvqrIUWXCWUNUfLZB8bFQ8+DFThbyCe1qmx/G4NGmarLbYM1uGQxD4M6rfqIPI Kat4JQ8Me81NQIcTYoTx+JFs3gDoEGAyzlc5E= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1692693935; x=1693298735; 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=k79wdmYHctxTtTviGEsItx8Rkhv7MYSzlD064SW+BWo=; b=QoT6EfwoanbrvI4//1dBJf4dargQaKBtJARCBBEVIfLyvA0Gnn50xHNtsHxeuyGBcs WdV7cILVX6rwXeOY7F3zusjlZcmyoIMvCbIsiR6CN4eFBM+Iu8ZyF8FwMT3K3xT8k7Cq KhjxZmb8dXe3g12jRVoBpPvoiYr9siko0UmfBtLL8hm0+9Hc+BNesZvddE2sMqYXcxI+ IpNXBor3ZDsOQnnDaGeP97mLNqwaEhg/D5FK2S9qQCAVBqiYAKx9/HQEQHxpqXHnH1Wu P2nFSbrbEfjsc1opMCoWnUqJ2yZ2zsexZSrYg8Vw/uJ6LxeKjwAxiXX152cmTaXacpso GRBw== X-Gm-Message-State: AOJu0Yz8fqSw6HyvtvooSzAPTUZg1ifVXvbqL1n+6QpI3QXOhL6xP40i 2TE26N9CNt7wU8YGyu6mlTnt0g== X-Google-Smtp-Source: AGHT+IFrqNfX0Z2M1qPDMP5VU3WvMzTEBG6FxwX95QutkiDBAyygmWZFCFMonYMFDSbc3GnKB2Qo8A== X-Received: by 2002:a05:6870:211:b0:1c8:d72a:d6b4 with SMTP id j17-20020a056870021100b001c8d72ad6b4mr9470932oad.2.1692693935466; Tue, 22 Aug 2023 01:45:35 -0700 (PDT) Received: from wenstp920.tpe.corp.google.com ([2401:fa00:1:10:e619:3fa0:1a90:6bb0]) by smtp.gmail.com with ESMTPSA id s26-20020aa78d5a000000b00666b012baedsm7304790pfe.158.2023.08.22.01.45.33 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 22 Aug 2023 01:45:35 -0700 (PDT) From: Chen-Yu Tsai To: Lee Jones , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Matthias Brugger , AngeloGioacchino Del Regno , Mark Brown Cc: Chen-Yu Tsai , Zhiyong Tao , devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org Subject: [PATCH v2 02/11] mfd: mt6358: Add registers for MT6366 specific regulators Date: Tue, 22 Aug 2023 16:45:10 +0800 Message-ID: <20230822084520.564937-3-wenst@chromium.org> X-Mailer: git-send-email 2.42.0.rc1.204.g551eb34607-goog In-Reply-To: <20230822084520.564937-1-wenst@chromium.org> References: <20230822084520.564937-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 MT6366 PMIC, compared to the MT6358, does away with the VCAM* regulators. Two regulators VM18 and VMDDR reuse their register space. There's also a VSRAM type regulator VSRAM_CORE thats' split between the VCAM* register space and other parts. Add register address macros for these MT6366 specific regulators. Signed-off-by: Chen-Yu Tsai Acked-by: Lee Jones Reviewed-by: AngeloGioacchino Del Regno --- include/linux/mfd/mt6358/registers.h | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/include/linux/mfd/mt6358/registers.h b/include/linux/mfd/mt635= 8/registers.h index 5ea2590be710..d83e87298ac4 100644 --- a/include/linux/mfd/mt6358/registers.h +++ b/include/linux/mfd/mt6358/registers.h @@ -294,4 +294,21 @@ #define MT6358_AUD_TOP_INT_CON0 0x2228 #define MT6358_AUD_TOP_INT_STATUS0 0x2234 =20 +/* + * MT6366 has no VCAM*, but has other regulators in its place. The names + * keep the MT6358 prefix for ease of use in the regulator driver. + */ +#define MT6358_LDO_VSRAM_CON5 0x1bf8 +#define MT6358_LDO_VM18_CON0 MT6358_LDO_VCAMA1_CON0 +#define MT6358_LDO_VM18_CON1 MT6358_LDO_VCAMA1_CON1 +#define MT6358_LDO_VM18_CON2 MT6358_LDO_VCAMA1_CON2 +#define MT6358_LDO_VMDDR_CON0 MT6358_LDO_VCAMA2_CON0 +#define MT6358_LDO_VMDDR_CON1 MT6358_LDO_VCAMA2_CON1 +#define MT6358_LDO_VMDDR_CON2 MT6358_LDO_VCAMA2_CON2 +#define MT6358_LDO_VSRAM_CORE_CON0 MT6358_LDO_VCAMD_CON0 +#define MT6358_LDO_VSRAM_CORE_DBG0 0x1cb6 +#define MT6358_LDO_VSRAM_CORE_DBG1 0x1cb8 +#define MT6358_VM18_ANA_CON0 MT6358_VCAMA1_ANA_CON0 +#define MT6358_VMDDR_ANA_CON0 MT6358_VCAMD_ANA_CON0 + #endif /* __MFD_MT6358_REGISTERS_H__ */ --=20 2.42.0.rc1.204.g551eb34607-goog From nobody Fri Sep 20 11:44:30 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 A9894EE49A3 for ; Tue, 22 Aug 2023 08:45:45 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233982AbjHVIpp (ORCPT ); Tue, 22 Aug 2023 04:45:45 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:38216 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231970AbjHVIpm (ORCPT ); Tue, 22 Aug 2023 04:45:42 -0400 Received: from mail-pf1-x42f.google.com (mail-pf1-x42f.google.com [IPv6:2607:f8b0:4864:20::42f]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 9FCB8CC9 for ; Tue, 22 Aug 2023 01:45:38 -0700 (PDT) Received: by mail-pf1-x42f.google.com with SMTP id d2e1a72fcca58-689f9576babso2746329b3a.0 for ; Tue, 22 Aug 2023 01:45:38 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; t=1692693938; x=1693298738; 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=jxGCtJ2Wep5efB+WkbsRfN8SMwC+vT6DRMJNr+uJtTM=; b=cee35XBJgWrPIQZvclRYmKKPTK9TteoVtq9KR3/9hzVU2nQck7y1o5DKhwVRs7XFKK 4NNAL4bucDmYnAC41qmpYUalcs3WZJxxorUDN3ByYWT2Z+itOdYmg9JElY4L3SgA0z+D Aw6ZodFVgTHZEDCF6UcY5gD1H1sWwuxiB5K0g= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1692693938; x=1693298738; 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=jxGCtJ2Wep5efB+WkbsRfN8SMwC+vT6DRMJNr+uJtTM=; b=igfSarFH1Qhjx8sxbDb61wr7fgsO9tbvH0muaa7ODL3ivdBOWWOnjdx7Z00JxPJPjy 2vxAdHCEjyKkncNCNeQxr3KgIFB9inDDWBL85SDqErabUc85fgglBYMW17QVBTzWsjhY 1c+eij5j18+46gS9AF3Sw3R4PA2P00u015ZHUSpksUyHWIbTU3DZUeqLsGn12yv9tNfM hPawedEU1koBdmjPYdUNN+c2YN2p2BI8+IopTfA1UE9Fli8IKgwfUcwDJ4wdlM2Yd8ap VvQDTcwkIpTNPN8KzEIoytUgO16AnCngDTeBxky1NusdCsYA+PiqEZGFq+Pry/QImUXw tAYw== X-Gm-Message-State: AOJu0YwzS8ktE1RRVDt3uCqUwQ2DiuOgCdg053R+evqNfiP5pCltNDeD YBz+dGFauJlPy2B8g+oAw9yPHg== X-Google-Smtp-Source: AGHT+IFYd2YL0KrDWvgUIXKMErFKQPaxg058X5tel5M+GH8U6Yi8Ag0PHyjiaxw7yRafBPsTLXVK+A== X-Received: by 2002:a05:6a00:2389:b0:688:9516:f703 with SMTP id f9-20020a056a00238900b006889516f703mr8179341pfc.31.1692693937996; Tue, 22 Aug 2023 01:45:37 -0700 (PDT) Received: from wenstp920.tpe.corp.google.com ([2401:fa00:1:10:e619:3fa0:1a90:6bb0]) by smtp.gmail.com with ESMTPSA id s26-20020aa78d5a000000b00666b012baedsm7304790pfe.158.2023.08.22.01.45.35 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 22 Aug 2023 01:45:37 -0700 (PDT) From: Chen-Yu Tsai To: Lee Jones , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Matthias Brugger , AngeloGioacchino Del Regno , Mark Brown Cc: Chen-Yu Tsai , Zhiyong Tao , devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org Subject: [PATCH v2 03/11] regulator: dt-bindings: mt6358: Convert to DT schema Date: Tue, 22 Aug 2023 16:45:11 +0800 Message-ID: <20230822084520.564937-4-wenst@chromium.org> X-Mailer: git-send-email 2.42.0.rc1.204.g551eb34607-goog In-Reply-To: <20230822084520.564937-1-wenst@chromium.org> References: <20230822084520.564937-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" Convert this from the old style text based binding to the new DT schema style. This will make adding the MT6366 portion easier. The examples have been trimmed down considerably, and the remaining entries now match what is seen in actual device trees. The original submitter seems to have left MediaTek, so instead the submitter and maintainer for the MT6366 binding is listed. Cc: Zhiyong Tao Signed-off-by: Chen-Yu Tsai --- .../regulator/mediatek,mt6358-regulator.yaml | 105 ++++++ .../bindings/regulator/mt6358-regulator.txt | 350 ------------------ 2 files changed, 105 insertions(+), 350 deletions(-) create mode 100644 Documentation/devicetree/bindings/regulator/mediatek,mt= 6358-regulator.yaml delete mode 100644 Documentation/devicetree/bindings/regulator/mt6358-regu= lator.txt diff --git a/Documentation/devicetree/bindings/regulator/mediatek,mt6358-re= gulator.yaml b/Documentation/devicetree/bindings/regulator/mediatek,mt6358-= regulator.yaml new file mode 100644 index 000000000000..4d7924c5cc7d --- /dev/null +++ b/Documentation/devicetree/bindings/regulator/mediatek,mt6358-regulator= .yaml @@ -0,0 +1,105 @@ +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/regulator/mediatek,mt6358-regulator.yam= l# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: MediaTek MT6358 Regulator + +maintainers: + - Zhiyong Tao + +description: | + Regulator node of the PMIC. This node should under the PMIC's device nod= e. + All voltage regulators provided by the PMIC are described as sub-nodes of + this node. + +properties: + compatible: + const: mediatek,mt6358-regulator + +patternProperties: + "^buck_v(core|dram1|gpu|modem|pa|proc1[12]|s[12])$": + description: Buck regulators + type: object + $ref: regulator.yaml# + unevaluatedProperties: false + + "^ldo_v(a|rf)12": + description: LDOs with fixed 1.2V output and 0~100/10mV tuning + type: object + $ref: regulator.yaml# + unevaluatedProperties: false + + "^ldo_v((aux|cn|io|rf)18|camio)": + description: LDOs with fixed 1.8V output and 0~100/10mV tuning + type: object + $ref: regulator.yaml# + unevaluatedProperties: false + + "^ldo_vxo22": + description: LDOs with fixed 2.2V output and 0~100/10mV tuning + type: object + $ref: regulator.yaml# + unevaluatedProperties: false + + "^ldo_v(aud|bif|cn|fe|io)28": + description: LDOs with fixed 2.8V output and 0~100/10mV tuning + type: object + $ref: regulator.yaml# + unevaluatedProperties: false + + "^ldo_vusb": + description: LDOs with fixed 3.0V output and 0~100/10mV tuning + type: object + $ref: regulator.yaml# + unevaluatedProperties: false + + "^ldo_vsram_(gpu|others|proc1[12])$": + description: LDOs with variable output + type: object + $ref: regulator.yaml# + unevaluatedProperties: false + + "^ldo_v(cama[12]|camd|cn33|dram2|efuse|emc|ibr|ldo28|mc|mch|sim[12])$": + description: LDOs with variable output and 0~100/10mV tuning + type: object + $ref: regulator.yaml# + unevaluatedProperties: false + +required: + - compatible + +additionalProperties: false + +examples: + - | + #include + + regulator { + compatible =3D "mediatek,mt6358-regulator"; + + buck_vgpu { + regulator-name =3D "vgpu"; + regulator-min-microvolt =3D <625000>; + regulator-max-microvolt =3D <900000>; + regulator-ramp-delay =3D <6250>; + regulator-enable-ramp-delay =3D <200>; + regulator-allowed-modes =3D ; + regulator-coupled-with =3D <&mt6358_vsram_gpu_reg>; + regulator-coupled-max-spread =3D <100000>; + }; + + ldo_vsram_gpu { + regulator-name =3D "vsram_gpu"; + regulator-min-microvolt =3D <850000>; + regulator-max-microvolt =3D <1000000>; + regulator-ramp-delay =3D <6250>; + regulator-enable-ramp-delay =3D <240>; + regulator-coupled-with =3D <&mt6358_vgpu_reg>; + regulator-coupled-max-spread =3D <100000>; + }; + }; + +... diff --git a/Documentation/devicetree/bindings/regulator/mt6358-regulator.t= xt b/Documentation/devicetree/bindings/regulator/mt6358-regulator.txt deleted file mode 100644 index b6384306db5c..000000000000 --- a/Documentation/devicetree/bindings/regulator/mt6358-regulator.txt +++ /dev/null @@ -1,350 +0,0 @@ -MediaTek MT6358 Regulator - -All voltage regulators provided by the MT6358 PMIC are described as the -subnodes of the MT6358 regulators node. Each regulator is named according -to its regulator type, buck_ and ldo_. The definition for each -of these nodes is defined using the standard binding for regulators at -Documentation/devicetree/bindings/regulator/regulator.txt. - -The valid names for regulators are:: -BUCK: - buck_vdram1, buck_vcore, buck_vpa, buck_vproc11, buck_vproc12, buck_vgpu, - buck_vs2, buck_vmodem, buck_vs1 -LDO: - ldo_vdram2, ldo_vsim1, ldo_vibr, ldo_vrf12, ldo_vio18, ldo_vusb, ldo_vca= mio, - ldo_vcamd, ldo_vcn18, ldo_vfe28, ldo_vsram_proc11, ldo_vcn28, ldo_vsram_= others, - ldo_vsram_gpu, ldo_vxo22, ldo_vefuse, ldo_vaux18, ldo_vmch, ldo_vbif28, - ldo_vsram_proc12, ldo_vcama1, ldo_vemc, ldo_vio28, ldo_va12, ldo_vrf18, - ldo_vcn33, ldo_vcama2, ldo_vmc, ldo_vldo28, ldo_vaud28, ldo_vsim2 - -Example: - - pmic { - compatible =3D "mediatek,mt6358"; - - mt6358regulator: mt6358regulator { - compatible =3D "mediatek,mt6358-regulator"; - - mt6358_vdram1_reg: buck_vdram1 { - regulator-compatible =3D "buck_vdram1"; - regulator-name =3D "vdram1"; - regulator-min-microvolt =3D <500000>; - regulator-max-microvolt =3D <2087500>; - regulator-ramp-delay =3D <12500>; - regulator-enable-ramp-delay =3D <0>; - regulator-always-on; - }; - - mt6358_vcore_reg: buck_vcore { - regulator-name =3D "vcore"; - regulator-min-microvolt =3D <500000>; - regulator-max-microvolt =3D <1293750>; - regulator-ramp-delay =3D <6250>; - regulator-enable-ramp-delay =3D <200>; - regulator-always-on; - }; - - mt6358_vpa_reg: buck_vpa { - regulator-name =3D "vpa"; - regulator-min-microvolt =3D <500000>; - regulator-max-microvolt =3D <3650000>; - regulator-ramp-delay =3D <50000>; - regulator-enable-ramp-delay =3D <250>; - }; - - mt6358_vproc11_reg: buck_vproc11 { - regulator-name =3D "vproc11"; - regulator-min-microvolt =3D <500000>; - regulator-max-microvolt =3D <1293750>; - regulator-ramp-delay =3D <6250>; - regulator-enable-ramp-delay =3D <200>; - regulator-always-on; - }; - - mt6358_vproc12_reg: buck_vproc12 { - regulator-name =3D "vproc12"; - regulator-min-microvolt =3D <500000>; - regulator-max-microvolt =3D <1293750>; - regulator-ramp-delay =3D <6250>; - regulator-enable-ramp-delay =3D <200>; - regulator-always-on; - }; - - mt6358_vgpu_reg: buck_vgpu { - regulator-name =3D "vgpu"; - regulator-min-microvolt =3D <500000>; - regulator-max-microvolt =3D <1293750>; - regulator-ramp-delay =3D <6250>; - regulator-enable-ramp-delay =3D <200>; - }; - - mt6358_vs2_reg: buck_vs2 { - regulator-name =3D "vs2"; - regulator-min-microvolt =3D <500000>; - regulator-max-microvolt =3D <2087500>; - regulator-ramp-delay =3D <12500>; - regulator-enable-ramp-delay =3D <0>; - regulator-always-on; - }; - - mt6358_vmodem_reg: buck_vmodem { - regulator-name =3D "vmodem"; - regulator-min-microvolt =3D <500000>; - regulator-max-microvolt =3D <1293750>; - regulator-ramp-delay =3D <6250>; - regulator-enable-ramp-delay =3D <900>; - regulator-always-on; - }; - - mt6358_vs1_reg: buck_vs1 { - regulator-name =3D "vs1"; - regulator-min-microvolt =3D <1000000>; - regulator-max-microvolt =3D <2587500>; - regulator-ramp-delay =3D <12500>; - regulator-enable-ramp-delay =3D <0>; - regulator-always-on; - }; - - mt6358_vdram2_reg: ldo_vdram2 { - regulator-name =3D "vdram2"; - regulator-min-microvolt =3D <600000>; - regulator-max-microvolt =3D <1800000>; - regulator-enable-ramp-delay =3D <3300>; - }; - - mt6358_vsim1_reg: ldo_vsim1 { - regulator-name =3D "vsim1"; - regulator-min-microvolt =3D <1700000>; - regulator-max-microvolt =3D <3100000>; - regulator-enable-ramp-delay =3D <540>; - }; - - mt6358_vibr_reg: ldo_vibr { - regulator-name =3D "vibr"; - regulator-min-microvolt =3D <1200000>; - regulator-max-microvolt =3D <3300000>; - regulator-enable-ramp-delay =3D <60>; - }; - - mt6358_vrf12_reg: ldo_vrf12 { - compatible =3D "regulator-fixed"; - regulator-name =3D "vrf12"; - regulator-min-microvolt =3D <1200000>; - regulator-max-microvolt =3D <1200000>; - regulator-enable-ramp-delay =3D <120>; - }; - - mt6358_vio18_reg: ldo_vio18 { - compatible =3D "regulator-fixed"; - regulator-name =3D "vio18"; - regulator-min-microvolt =3D <1800000>; - regulator-max-microvolt =3D <1800000>; - regulator-enable-ramp-delay =3D <2700>; - regulator-always-on; - }; - - mt6358_vusb_reg: ldo_vusb { - regulator-name =3D "vusb"; - regulator-min-microvolt =3D <3000000>; - regulator-max-microvolt =3D <3100000>; - regulator-enable-ramp-delay =3D <270>; - regulator-always-on; - }; - - mt6358_vcamio_reg: ldo_vcamio { - compatible =3D "regulator-fixed"; - regulator-name =3D "vcamio"; - regulator-min-microvolt =3D <1800000>; - regulator-max-microvolt =3D <1800000>; - regulator-enable-ramp-delay =3D <270>; - }; - - mt6358_vcamd_reg: ldo_vcamd { - regulator-name =3D "vcamd"; - regulator-min-microvolt =3D <900000>; - regulator-max-microvolt =3D <1800000>; - regulator-enable-ramp-delay =3D <270>; - }; - - mt6358_vcn18_reg: ldo_vcn18 { - compatible =3D "regulator-fixed"; - regulator-name =3D "vcn18"; - regulator-min-microvolt =3D <1800000>; - regulator-max-microvolt =3D <1800000>; - regulator-enable-ramp-delay =3D <270>; - }; - - mt6358_vfe28_reg: ldo_vfe28 { - compatible =3D "regulator-fixed"; - regulator-name =3D "vfe28"; - regulator-min-microvolt =3D <2800000>; - regulator-max-microvolt =3D <2800000>; - regulator-enable-ramp-delay =3D <270>; - }; - - mt6358_vsram_proc11_reg: ldo_vsram_proc11 { - regulator-name =3D "vsram_proc11"; - regulator-min-microvolt =3D <500000>; - regulator-max-microvolt =3D <1293750>; - regulator-ramp-delay =3D <6250>; - regulator-enable-ramp-delay =3D <240>; - regulator-always-on; - }; - - mt6358_vcn28_reg: ldo_vcn28 { - compatible =3D "regulator-fixed"; - regulator-name =3D "vcn28"; - regulator-min-microvolt =3D <2800000>; - regulator-max-microvolt =3D <2800000>; - regulator-enable-ramp-delay =3D <270>; - }; - - mt6358_vsram_others_reg: ldo_vsram_others { - regulator-name =3D "vsram_others"; - regulator-min-microvolt =3D <500000>; - regulator-max-microvolt =3D <1293750>; - regulator-ramp-delay =3D <6250>; - regulator-enable-ramp-delay =3D <240>; - regulator-always-on; - }; - - mt6358_vsram_gpu_reg: ldo_vsram_gpu { - regulator-name =3D "vsram_gpu"; - regulator-min-microvolt =3D <500000>; - regulator-max-microvolt =3D <1293750>; - regulator-ramp-delay =3D <6250>; - regulator-enable-ramp-delay =3D <240>; - }; - - mt6358_vxo22_reg: ldo_vxo22 { - compatible =3D "regulator-fixed"; - regulator-name =3D "vxo22"; - regulator-min-microvolt =3D <2200000>; - regulator-max-microvolt =3D <2200000>; - regulator-enable-ramp-delay =3D <120>; - regulator-always-on; - }; - - mt6358_vefuse_reg: ldo_vefuse { - regulator-name =3D "vefuse"; - regulator-min-microvolt =3D <1700000>; - regulator-max-microvolt =3D <1900000>; - regulator-enable-ramp-delay =3D <270>; - }; - - mt6358_vaux18_reg: ldo_vaux18 { - compatible =3D "regulator-fixed"; - regulator-name =3D "vaux18"; - regulator-min-microvolt =3D <1800000>; - regulator-max-microvolt =3D <1800000>; - regulator-enable-ramp-delay =3D <270>; - }; - - mt6358_vmch_reg: ldo_vmch { - regulator-name =3D "vmch"; - regulator-min-microvolt =3D <2900000>; - regulator-max-microvolt =3D <3300000>; - regulator-enable-ramp-delay =3D <60>; - }; - - mt6358_vbif28_reg: ldo_vbif28 { - compatible =3D "regulator-fixed"; - regulator-name =3D "vbif28"; - regulator-min-microvolt =3D <2800000>; - regulator-max-microvolt =3D <2800000>; - regulator-enable-ramp-delay =3D <270>; - }; - - mt6358_vsram_proc12_reg: ldo_vsram_proc12 { - regulator-name =3D "vsram_proc12"; - regulator-min-microvolt =3D <500000>; - regulator-max-microvolt =3D <1293750>; - regulator-ramp-delay =3D <6250>; - regulator-enable-ramp-delay =3D <240>; - regulator-always-on; - }; - - mt6358_vcama1_reg: ldo_vcama1 { - regulator-name =3D "vcama1"; - regulator-min-microvolt =3D <1800000>; - regulator-max-microvolt =3D <3000000>; - regulator-enable-ramp-delay =3D <270>; - }; - - mt6358_vemc_reg: ldo_vemc { - regulator-name =3D "vemc"; - regulator-min-microvolt =3D <2900000>; - regulator-max-microvolt =3D <3300000>; - regulator-enable-ramp-delay =3D <60>; - regulator-always-on; - }; - - mt6358_vio28_reg: ldo_vio28 { - compatible =3D "regulator-fixed"; - regulator-name =3D "vio28"; - regulator-min-microvolt =3D <2800000>; - regulator-max-microvolt =3D <2800000>; - regulator-enable-ramp-delay =3D <270>; - }; - - mt6358_va12_reg: ldo_va12 { - compatible =3D "regulator-fixed"; - regulator-name =3D "va12"; - regulator-min-microvolt =3D <1200000>; - regulator-max-microvolt =3D <1200000>; - regulator-enable-ramp-delay =3D <270>; - regulator-always-on; - }; - - mt6358_vrf18_reg: ldo_vrf18 { - compatible =3D "regulator-fixed"; - regulator-name =3D "vrf18"; - regulator-min-microvolt =3D <1800000>; - regulator-max-microvolt =3D <1800000>; - regulator-enable-ramp-delay =3D <120>; - }; - - mt6358_vcn33_reg: ldo_vcn33 { - regulator-name =3D "vcn33"; - regulator-min-microvolt =3D <3300000>; - regulator-max-microvolt =3D <3500000>; - regulator-enable-ramp-delay =3D <270>; - }; - - mt6358_vcama2_reg: ldo_vcama2 { - regulator-name =3D "vcama2"; - regulator-min-microvolt =3D <1800000>; - regulator-max-microvolt =3D <3000000>; - regulator-enable-ramp-delay =3D <270>; - }; - - mt6358_vmc_reg: ldo_vmc { - regulator-name =3D "vmc"; - regulator-min-microvolt =3D <1800000>; - regulator-max-microvolt =3D <3300000>; - regulator-enable-ramp-delay =3D <60>; - }; - - mt6358_vldo28_reg: ldo_vldo28 { - regulator-name =3D "vldo28"; - regulator-min-microvolt =3D <2800000>; - regulator-max-microvolt =3D <3000000>; - regulator-enable-ramp-delay =3D <270>; - }; - - mt6358_vaud28_reg: ldo_vaud28 { - compatible =3D "regulator-fixed"; - regulator-name =3D "vaud28"; - regulator-min-microvolt =3D <2800000>; - regulator-max-microvolt =3D <2800000>; - regulator-enable-ramp-delay =3D <270>; - }; - - mt6358_vsim2_reg: ldo_vsim2 { - regulator-name =3D "vsim2"; - regulator-min-microvolt =3D <1700000>; - regulator-max-microvolt =3D <3100000>; - regulator-enable-ramp-delay =3D <540>; - }; - }; - }; --=20 2.42.0.rc1.204.g551eb34607-goog From nobody Fri Sep 20 11:44:30 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 75238EE49A8 for ; Tue, 22 Aug 2023 08:45:52 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233975AbjHVIpw (ORCPT ); Tue, 22 Aug 2023 04:45:52 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:38228 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233958AbjHVIpo (ORCPT ); Tue, 22 Aug 2023 04:45:44 -0400 Received: from mail-pf1-x436.google.com (mail-pf1-x436.google.com [IPv6:2607:f8b0:4864:20::436]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 00CF3CE5 for ; Tue, 22 Aug 2023 01:45:40 -0700 (PDT) Received: by mail-pf1-x436.google.com with SMTP id d2e1a72fcca58-68a4025b5e8so1563852b3a.3 for ; Tue, 22 Aug 2023 01:45:40 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; t=1692693940; x=1693298740; 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=uWvqEYx7nigLStoTHfBNGDNnZRGlEQKlFX9KEKxxWao=; b=jZv7Hu3uyjMHvZQPJZuxOzNjrT44nxbUjsoA5wMpqxP3QTGgr5mvNpeRrAZlXVFI1O wjJnR3722qCjZYmkUdTqeAS3LQSGR/N+mgDw6oU5vf2UQsfQEbQ+8Mo5QAHXjek0D+4D +T0FFLVlm+5+pS+Qi2nVB5tZOW74+MqSDCjDM= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1692693940; x=1693298740; 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=uWvqEYx7nigLStoTHfBNGDNnZRGlEQKlFX9KEKxxWao=; b=FVgMyIvO689ALmDmEJGbZsjFp/iH4Sa20zbCOA0z/eS1YOrFgSSd5zSeXvD6iz3sfX BjOfmS4mZzJ+DFeknW3CGrontkvQQRROyeeVsGa4OwJeNdF1HhxX46/MrBG1HSofdaPT VZ5/dpriUBJR52T4UpUfZBDYouaUw/U6A1+WzBLdm41ptx6i07O/16XzPM1ReynsSqfa 3y0RF6svDqziGg0LnCiUrhXquDaMPt0nhb66xBZKRUdJoWlAlxKmT/bm2tEBTovIS5XO wLVkXbKCG7ASm6Yvyst3qsX6C+N4lGrlhxUQmaVIuElnwCC2vwWE4WdEuJB+4L4cvXao 4G3Q== X-Gm-Message-State: AOJu0Yy865yR8o5z6R3jj791l926ZxH6N6X5V4ug9ZM9QLitUuRBFnca C5M+7wW8lxVVtoOCH1TuO3gL7g== X-Google-Smtp-Source: AGHT+IFb23fhs9Apos2oL1dgOhgh6KyRZEOAL6GURDoRrpRHDeYzqpoHYXqhuvJFd8+IVfDagjd+2Q== X-Received: by 2002:a05:6a00:2190:b0:687:8417:ab51 with SMTP id h16-20020a056a00219000b006878417ab51mr7254197pfi.8.1692693940475; Tue, 22 Aug 2023 01:45:40 -0700 (PDT) Received: from wenstp920.tpe.corp.google.com ([2401:fa00:1:10:e619:3fa0:1a90:6bb0]) by smtp.gmail.com with ESMTPSA id s26-20020aa78d5a000000b00666b012baedsm7304790pfe.158.2023.08.22.01.45.38 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 22 Aug 2023 01:45:40 -0700 (PDT) From: Chen-Yu Tsai To: Lee Jones , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Matthias Brugger , AngeloGioacchino Del Regno , Mark Brown Cc: Chen-Yu Tsai , Zhiyong Tao , devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org Subject: [PATCH v2 04/11] regulator: dt-bindings: mt6358: Add regulator supplies Date: Tue, 22 Aug 2023 16:45:12 +0800 Message-ID: <20230822084520.564937-5-wenst@chromium.org> X-Mailer: git-send-email 2.42.0.rc1.204.g551eb34607-goog In-Reply-To: <20230822084520.564937-1-wenst@chromium.org> References: <20230822084520.564937-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 MT6358 PMIC has various regulator power supply pins that should be supplied from external power sources or routed from one of its outputs. Add these regulator supplies to the binding. The names are the actual names from the datasheet, with hyphens replacing underscores. Signed-off-by: Chen-Yu Tsai --- .../regulator/mediatek,mt6358-regulator.yaml | 35 +++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/Documentation/devicetree/bindings/regulator/mediatek,mt6358-re= gulator.yaml b/Documentation/devicetree/bindings/regulator/mediatek,mt6358-= regulator.yaml index 4d7924c5cc7d..82328fe17680 100644 --- a/Documentation/devicetree/bindings/regulator/mediatek,mt6358-regulator= .yaml +++ b/Documentation/devicetree/bindings/regulator/mediatek,mt6358-regulator= .yaml @@ -18,6 +18,41 @@ properties: compatible: const: mediatek,mt6358-regulator =20 + vsys-ldo1-supply: + description: Supply for LDOs vfe28, vxo22, vcn28, vaux18, vaud28, vsim= 1, vusb, vbif28 + vsys-ldo2-supply: + description: Supply for LDOs vldo28, vio28, vmc, vmch, vsim2 + vsys-ldo3-supply: + description: Supply for LDOs vcn33, vcama1, vcama2, vemc, vibr + vsys-vcore-supply: + description: Supply for buck regulator vcore + vsys-vdram1-supply: + description: Supply for buck regulator vdram1 + vsys-vgpu-supply: + description: Supply for buck regulator vgpu + vsys-vmodem-supply: + description: Supply for buck regulator vmodem + vsys-vpa-supply: + description: Supply for buck regulator vpa + vsys-vproc11-supply: + description: Supply for buck regulator vproc11 + vsys-vproc12-supply: + description: Supply for buck regulator vproc12 + vsys-vs1-supply: + description: Supply for buck regulator vs1 + vsys-vs2-supply: + description: Supply for buck regulator vs2 + vs1-ldo1-supply: + description: Supply for LDOs vrf18, vefuse, vcn18, vcamio, vio18 + vs2-ldo1-supply: + description: Supply for LDOs vdram2 + vs2-ldo2-supply: + description: Supply for LDOs vrf12, va12 + vs2-ldo3-supply: + description: Supply for LDOs vsram-gpu, vsram-others, vsram-proc11, vs= ram-proc12 + vs2-ldo4-supply: + description: Supply for LDO vcamd + patternProperties: "^buck_v(core|dram1|gpu|modem|pa|proc1[12]|s[12])$": description: Buck regulators --=20 2.42.0.rc1.204.g551eb34607-goog From nobody Fri Sep 20 11:44:30 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 95E0DEE49A8 for ; Tue, 22 Aug 2023 08:45:58 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233958AbjHVIp6 (ORCPT ); Tue, 22 Aug 2023 04:45:58 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:38288 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233990AbjHVIpv (ORCPT ); Tue, 22 Aug 2023 04:45:51 -0400 Received: from mail-oi1-x22a.google.com (mail-oi1-x22a.google.com [IPv6:2607:f8b0:4864:20::22a]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id CED3ACCA for ; Tue, 22 Aug 2023 01:45:43 -0700 (PDT) Received: by mail-oi1-x22a.google.com with SMTP id 5614622812f47-3a741f46fadso3235900b6e.0 for ; Tue, 22 Aug 2023 01:45:43 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; t=1692693943; x=1693298743; 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=WLEot2bDhTp9fvAY+MekQ5I92rdYBwqTaNw+kjYI3xE=; b=bnm1i9X2gp09V0zgSPwBCRpNicnZuPQI0JQJOMCeX2jjLWF+2hvADTVUtkZqmkaHGQ NdznPI11uv+eYRR1cPob88YLm1ZYnwrdzCnxu7pnh4vyvrMmfHTssJwlEyr0V/DQ6pRc hnK1BHbAtK6RUrchYkV1DyVgM+wWCwGDzy1kw= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1692693943; x=1693298743; 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=WLEot2bDhTp9fvAY+MekQ5I92rdYBwqTaNw+kjYI3xE=; b=a1FMKqle2u5G0XzvJIn8zezFXGvpx571KQfG488YQbsI3hRiKNz/IY0vdZREa2RNwl xqdqfWV7h0q2TC7kJ7WmydDxfxR83FP+NOpRpdBOtFv01hY/rTpaqJK/lq/T5svKP2pa OiwyMTa87pT1Dzj1433ufr/crth1vr2s5Kw6jQeBnQicZmY9Azwe+QYEbBQTKlrPjzcz BXb80X2qk4HAL0rD3xB/yHxYa2TWnGf23qB1RfPxougtStJwzhh2M5X5HtukK1BsqTMI GRTWWUMYJQYnrE8OM2yBGSFK1rOWzHwvYhFniFE172tHsXXrH95tp3QGMsX2HdQv8FUa 41Ng== X-Gm-Message-State: AOJu0YySYrsKqB5Kulq74nh6mFYxytCyr+jEp8k3mM4qgKbKZIZKHyfr h96tsdl3/DuOQhGBCA0V+ke3AA== X-Google-Smtp-Source: AGHT+IFNt2EgkeunTDPvWWg/on0wlZbvPpea12PvOVP6FS/BMcSpdshX9dsOIoXG4JruqK2haZdgzA== X-Received: by 2002:aca:674d:0:b0:3a4:67b6:454e with SMTP id b13-20020aca674d000000b003a467b6454emr10552276oiy.6.1692693943041; Tue, 22 Aug 2023 01:45:43 -0700 (PDT) Received: from wenstp920.tpe.corp.google.com ([2401:fa00:1:10:e619:3fa0:1a90:6bb0]) by smtp.gmail.com with ESMTPSA id s26-20020aa78d5a000000b00666b012baedsm7304790pfe.158.2023.08.22.01.45.40 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 22 Aug 2023 01:45:42 -0700 (PDT) From: Chen-Yu Tsai To: Lee Jones , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Matthias Brugger , AngeloGioacchino Del Regno , Mark Brown Cc: Zhiyong Tao , devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, Chen-Yu Tsai Subject: [PATCH v2 05/11] regulator: dt-bindings: mediatek: Add MT6366 PMIC Date: Tue, 22 Aug 2023 16:45:13 +0800 Message-ID: <20230822084520.564937-6-wenst@chromium.org> X-Mailer: git-send-email 2.42.0.rc1.204.g551eb34607-goog In-Reply-To: <20230822084520.564937-1-wenst@chromium.org> References: <20230822084520.564937-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" From: Zhiyong Tao The MediaTek MT6366 PMIC is similar to the MT6358 PMIC. It is designed to be paired with the MediaTek MT8186 SoC. It has 9 buck regulators and 29 LDO regulators, not counting ones that feed internally and basically have no controls. The regulators are named after their intended usage for the SoC and system design, thus not named generically as ldoX or dcdcX, but as vcn33 or vgpu. Add a binding document describing all the regulators and their supplies. Signed-off-by: Zhiyong Tao [wens@chromium.org: major rework and added commit message] Signed-off-by: Chen-Yu Tsai --- Changes since v1: - Replaced underscores in supply names to hyphens - Merged with MT6358 regulator binding - Added MT6358 fallback compatible to MT6366 regulator Changes since Zhiyong's last version (v4) [1]: - simplified regulator names - added descriptions to regulators - removed bogus regulators (*_sshub) - merged vcn33-wifi and vcn33-bt as vcn33 - added missing regulators (vm18, vmddr, vsram-core) - cut down examples to a handful of cases and made them complete - expanded commit message a lot [1] https://lore.kernel.org/linux-arm-kernel/20220823123745.14061-1-zhiyong= .tao@mediatek.com/ .../regulator/mediatek,mt6358-regulator.yaml | 227 +++++++++++++----- 1 file changed, 168 insertions(+), 59 deletions(-) diff --git a/Documentation/devicetree/bindings/regulator/mediatek,mt6358-re= gulator.yaml b/Documentation/devicetree/bindings/regulator/mediatek,mt6358-= regulator.yaml index 82328fe17680..b350181f33ff 100644 --- a/Documentation/devicetree/bindings/regulator/mediatek,mt6358-regulator= .yaml +++ b/Documentation/devicetree/bindings/regulator/mediatek,mt6358-regulator= .yaml @@ -16,14 +16,18 @@ description: | =20 properties: compatible: - const: mediatek,mt6358-regulator + oneOf: + - const: mediatek,mt6358-regulator + - items: + - const: mediatek,mt6366-regulator + - const: mediatek,mt6358-regulator =20 vsys-ldo1-supply: description: Supply for LDOs vfe28, vxo22, vcn28, vaux18, vaud28, vsim= 1, vusb, vbif28 vsys-ldo2-supply: - description: Supply for LDOs vldo28, vio28, vmc, vmch, vsim2 + description: Supply for LDOs vldo28 (MT6358 only), vio28, vmc, vmch, v= sim2 vsys-ldo3-supply: - description: Supply for LDOs vcn33, vcama1, vcama2, vemc, vibr + description: Supply for LDOs vcn33, vcama[12] (MT6358 only), vemc, vibr vsys-vcore-supply: description: Supply for buck regulator vcore vsys-vdram1-supply: @@ -43,75 +47,138 @@ properties: vsys-vs2-supply: description: Supply for buck regulator vs2 vs1-ldo1-supply: - description: Supply for LDOs vrf18, vefuse, vcn18, vcamio, vio18 + description: Supply for LDOs vrf18, vefuse, vcn18, vcamio (MT6358 only= ), vio18 vs2-ldo1-supply: - description: Supply for LDOs vdram2 + description: Supply for LDOs vdram2, vmddr (MT6366 only) vs2-ldo2-supply: description: Supply for LDOs vrf12, va12 vs2-ldo3-supply: - description: Supply for LDOs vsram-gpu, vsram-others, vsram-proc11, vs= ram-proc12 - vs2-ldo4-supply: - description: Supply for LDO vcamd - -patternProperties: - "^buck_v(core|dram1|gpu|modem|pa|proc1[12]|s[12])$": - description: Buck regulators - type: object - $ref: regulator.yaml# - unevaluatedProperties: false - - "^ldo_v(a|rf)12": - description: LDOs with fixed 1.2V output and 0~100/10mV tuning - type: object - $ref: regulator.yaml# - unevaluatedProperties: false - - "^ldo_v((aux|cn|io|rf)18|camio)": - description: LDOs with fixed 1.8V output and 0~100/10mV tuning - type: object - $ref: regulator.yaml# - unevaluatedProperties: false - - "^ldo_vxo22": - description: LDOs with fixed 2.2V output and 0~100/10mV tuning - type: object - $ref: regulator.yaml# - unevaluatedProperties: false - - "^ldo_v(aud|bif|cn|fe|io)28": - description: LDOs with fixed 2.8V output and 0~100/10mV tuning - type: object - $ref: regulator.yaml# - unevaluatedProperties: false - - "^ldo_vusb": - description: LDOs with fixed 3.0V output and 0~100/10mV tuning - type: object - $ref: regulator.yaml# - unevaluatedProperties: false - - "^ldo_vsram_(gpu|others|proc1[12])$": - description: LDOs with variable output - type: object - $ref: regulator.yaml# - unevaluatedProperties: false - - "^ldo_v(cama[12]|camd|cn33|dram2|efuse|emc|ibr|ldo28|mc|mch|sim[12])$": - description: LDOs with variable output and 0~100/10mV tuning - type: object - $ref: regulator.yaml# - unevaluatedProperties: false + description: Supply for LDOs vsram-core (MT6366 only), vsram-gpu, vsra= m-others, vsram-proc11, vsram-proc12 =20 required: - compatible =20 -additionalProperties: false +unevaluatedProperties: false + +allOf: + - if: + properties: + compatible: + const: mediatek,mt6358-regulator + then: + properties: + vs2-ldo4-supply: + description: Supply for LDO vcamd + + patternProperties: + "^buck_v(core|dram1|gpu|modem|pa|proc1[12]|s[12])$": + description: Buck regulators + type: object + $ref: regulator.yaml# + unevaluatedProperties: false + + "^ldo_v(a|rf)12": + description: LDOs with fixed 1.2V output and 0~100/10mV tuning + type: object + $ref: regulator.yaml# + unevaluatedProperties: false + + "^ldo_v((aux|cn|io|rf)18|camio)": + description: LDOs with fixed 1.8V output and 0~100/10mV tuning + type: object + $ref: regulator.yaml# + unevaluatedProperties: false + + "^ldo_vxo22": + description: LDOs with fixed 2.2V output and 0~100/10mV tuning + type: object + $ref: regulator.yaml# + unevaluatedProperties: false + + "^ldo_v(aud|bif|cn|fe|io)28": + description: LDOs with fixed 2.8V output and 0~100/10mV tuning + type: object + $ref: regulator.yaml# + unevaluatedProperties: false + + "^ldo_vusb": + description: LDOs with fixed 3.0V output and 0~100/10mV tuning + type: object + $ref: regulator.yaml# + unevaluatedProperties: false + + "^ldo_vsram_(gpu|others|proc1[12])$": + description: LDOs with variable output + type: object + $ref: regulator.yaml# + unevaluatedProperties: false + + "^ldo_v(cama[12]|camd|cn33|dram2|efuse|emc|ibr|ldo28|mc|mch|sim[12= ])$": + description: LDOs with variable output and 0~100/10mV tuning + type: object + $ref: regulator.yaml# + unevaluatedProperties: false + + - if: + properties: + compatible: + contains: + const: mediatek,mt6366-regulator + then: + patternProperties: + "^v(core|dram1|gpu|modem|pa|proc1[12]|s[12])$": + description: Buck regulators + type: object + $ref: regulator.yaml# + unevaluatedProperties: false + + "^v(a|rf)12": + description: LDOs with fixed 1.2V output and 0~100/10mV tuning + type: object + $ref: regulator.yaml# + unevaluatedProperties: false + + "^v(aux|io|rf)18": + description: LDOs with fixed 1.8V output and 0~100/10mV tuning + type: object + $ref: regulator.yaml# + unevaluatedProperties: false + + "^vxo22": + description: LDOs with fixed 2.2V output and 0~100/10mV tuning + type: object + $ref: regulator.yaml# + unevaluatedProperties: false + + "^v(aud|bif|cn|fe|io)28": + description: LDOs with fixed 2.8V output and 0~100/10mV tuning + type: object + $ref: regulator.yaml# + unevaluatedProperties: false + + "^vusb": + description: LDOs with fixed 3.0V output and 0~100/10mV tuning + type: object + $ref: regulator.yaml# + unevaluatedProperties: false + + "^vsram-(core|gpu|others|proc1[12])$": + description: LDOs with variable output + type: object + $ref: regulator.yaml# + unevaluatedProperties: false + + "^v(cn18|cn33|dram2|efuse|emc|ibr|m18|mc|mch|mddr|sim[12])$": + description: LDOs with variable output and 0~100/10mV tuning + type: object + $ref: regulator.yaml# + unevaluatedProperties: false =20 examples: - | #include =20 - regulator { + mt6358-regulator { compatible =3D "mediatek,mt6358-regulator"; =20 buck_vgpu { @@ -137,4 +204,46 @@ examples: }; }; =20 + mt6366-regulator { + compatible =3D "mediatek,mt6366-regulator", "mediatek,mt6358-regul= ator"; + + 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 ; + regulator-always-on; + }; + + 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 ; + regulator-always-on; + }; + + 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; + }; + + 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; + }; + }; ... --=20 2.42.0.rc1.204.g551eb34607-goog From nobody Fri Sep 20 11:44:30 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 9F454EE49A3 for ; Tue, 22 Aug 2023 08:46:05 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232630AbjHVIqF (ORCPT ); Tue, 22 Aug 2023 04:46:05 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:33230 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233985AbjHVIp4 (ORCPT ); Tue, 22 Aug 2023 04:45:56 -0400 Received: from mail-pf1-x42e.google.com (mail-pf1-x42e.google.com [IPv6:2607:f8b0:4864:20::42e]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 47C96E48 for ; Tue, 22 Aug 2023 01:45:46 -0700 (PDT) Received: by mail-pf1-x42e.google.com with SMTP id d2e1a72fcca58-68a3cae6d94so2096131b3a.0 for ; Tue, 22 Aug 2023 01:45:46 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; t=1692693945; x=1693298745; 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=UpiVif2mdv3ig7H2FjeqypVWX5tyPx6doaDt74YKlhk=; b=jlVHlY2MPbzdFfvndETtF9LbfUuUHNZ8xl2H9uZja8FWMMXW+lrh3UdctXtAckivcg UdkAuhMNBRzeygIMnbH8p+tsbhRJoIWOnGZpJVoLouIoW80FY6Jp7H9tOS2kcfxicYz2 fkDlN2jjiDK00bjEj2esFR4HyI+MYEBeS+YaQ= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1692693945; x=1693298745; 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=UpiVif2mdv3ig7H2FjeqypVWX5tyPx6doaDt74YKlhk=; b=fBwsPUCHfXlaKEVU0PyX2l+IehWql2o6Vc1MeNRHZhMDCGMkDZpR7D7nLWbAbNpfsn GKKwbHbHZL6MdLfmrgYBfCl8xSZ1f0GTu2eCVK8Y5IGqAHyTqmBnIUYLHVH/NW8t4ab1 wxAZUs15KRchxidynFXqiAgGaP1UACC3C4lpJhSBB/YoQcbHSyTxMDqAgtAppJWHCr2+ W81rjHDztR+JoHkc7bFLNh992CfrRNwB4h/jO9vQ+DshBMLN2h+zLGG1tPEADoCbFe/6 e/llBjP5aU209tW7m7D9sbFKA7Mw8gJRva1qjvvqkKu5dK71WdUp28v+U5hqAr49eRKC wvPQ== X-Gm-Message-State: AOJu0Yx0MGH1Csj5PXHi6AtZogx2zLG8DiHd0cADu3nll5a87GZTZcm2 XvJU1fY58dB5/HVfh3jDDB0kZSuDT9D5YZIA6lw= X-Google-Smtp-Source: AGHT+IHwLyLZpwPRsnQ6Ln01otKWQq6V/kVvhHPZAOTGcAKbTVRT6DJvkfV6jW9gNLc83YyucshwMg== X-Received: by 2002:a05:6a21:7182:b0:148:2d35:5a11 with SMTP id wq2-20020a056a21718200b001482d355a11mr10841998pzb.40.1692693945607; Tue, 22 Aug 2023 01:45:45 -0700 (PDT) Received: from wenstp920.tpe.corp.google.com ([2401:fa00:1:10:e619:3fa0:1a90:6bb0]) by smtp.gmail.com with ESMTPSA id s26-20020aa78d5a000000b00666b012baedsm7304790pfe.158.2023.08.22.01.45.43 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 22 Aug 2023 01:45:45 -0700 (PDT) From: Chen-Yu Tsai To: Lee Jones , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Matthias Brugger , AngeloGioacchino Del Regno , Mark Brown Cc: Chen-Yu Tsai , Zhiyong Tao , devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org Subject: [PATCH v2 06/11] regulator: mt6358: Add supply names for MT6358 regulators Date: Tue, 22 Aug 2023 16:45:14 +0800 Message-ID: <20230822084520.564937-7-wenst@chromium.org> X-Mailer: git-send-email 2.42.0.rc1.204.g551eb34607-goog In-Reply-To: <20230822084520.564937-1-wenst@chromium.org> References: <20230822084520.564937-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 DT bindings for MT6358 regulator now defines the supply names for the PMIC. Add support for them by adding .supply_name field settings for each regulator. Signed-off-by: Chen-Yu Tsai --- drivers/regulator/mt6358-regulator.c | 106 +++++++++++++-------------- 1 file changed, 51 insertions(+), 55 deletions(-) diff --git a/drivers/regulator/mt6358-regulator.c b/drivers/regulator/mt635= 8-regulator.c index 3cb2e6768e25..db75f644966a 100644 --- a/drivers/regulator/mt6358-regulator.c +++ b/drivers/regulator/mt6358-regulator.c @@ -34,12 +34,13 @@ struct mt6358_regulator_info { =20 #define to_regulator_info(x) container_of((x), struct mt6358_regulator_inf= o, desc) =20 -#define MT6358_BUCK(match, vreg, min, max, step, \ - vosel_mask, _da_vsel_reg, _da_vsel_mask, \ - _modeset_reg, _modeset_shift) \ +#define MT6358_BUCK(match, vreg, supply, min, max, step, \ + vosel_mask, _da_vsel_reg, _da_vsel_mask, \ + _modeset_reg, _modeset_shift) \ [MT6358_ID_##vreg] =3D { \ .desc =3D { \ .name =3D #vreg, \ + .supply_name =3D supply, \ .of_match =3D of_match_ptr(match), \ .ops =3D &mt6358_volt_range_ops, \ .type =3D REGULATOR_VOLTAGE, \ @@ -62,10 +63,11 @@ struct mt6358_regulator_info { .modeset_mask =3D BIT(_modeset_shift), \ } =20 -#define MT6358_LDO(match, vreg, volt_ranges, enreg, enbit, vosel, vosel_ma= sk) \ +#define MT6358_LDO(match, vreg, supply, volt_ranges, enreg, enbit, vosel, = vosel_mask) \ [MT6358_ID_##vreg] =3D { \ .desc =3D { \ .name =3D #vreg, \ + .supply_name =3D supply, \ .of_match =3D of_match_ptr(match), \ .ops =3D &mt6358_volt_table_ops, \ .type =3D REGULATOR_VOLTAGE, \ @@ -86,12 +88,12 @@ struct mt6358_regulator_info { .qi =3D BIT(15), \ } =20 -#define MT6358_LDO1(match, vreg, min, max, step, \ - _da_vsel_reg, _da_vsel_mask, \ - vosel, vosel_mask) \ +#define MT6358_LDO1(match, vreg, supply, min, max, step, \ + _da_vsel_reg, _da_vsel_mask, vosel, vosel_mask) \ [MT6358_ID_##vreg] =3D { \ .desc =3D { \ .name =3D #vreg, \ + .supply_name =3D supply, \ .of_match =3D of_match_ptr(match), \ .ops =3D &mt6358_volt_range_ops, \ .type =3D REGULATOR_VOLTAGE, \ @@ -111,11 +113,11 @@ struct mt6358_regulator_info { .qi =3D BIT(0), \ } =20 -#define MT6358_REG_FIXED(match, vreg, \ - enreg, enbit, volt) \ +#define MT6358_REG_FIXED(match, vreg, supply, enreg, enbit, volt) \ [MT6358_ID_##vreg] =3D { \ .desc =3D { \ .name =3D #vreg, \ + .supply_name =3D supply, \ .of_match =3D of_match_ptr(match), \ .ops =3D &mt6358_volt_fixed_ops, \ .type =3D REGULATOR_VOLTAGE, \ @@ -458,79 +460,73 @@ static const struct regulator_ops mt6358_volt_fixed_o= ps =3D { =20 /* The array is indexed by id(MT6358_ID_XXX) */ static const struct mt6358_regulator_info mt6358_regulators[] =3D { - MT6358_BUCK("buck_vdram1", VDRAM1, 500000, 2087500, 12500, + MT6358_BUCK("buck_vdram1", VDRAM1, "vsys-vdram1", 500000, 2087500, 12500, 0x7f, MT6358_BUCK_VDRAM1_DBG0, 0x7f, MT6358_VDRAM1_ANA_CON0, 8), - MT6358_BUCK("buck_vcore", VCORE, 500000, 1293750, 6250, + MT6358_BUCK("buck_vcore", VCORE, "vsys-vcore", 500000, 1293750, 6250, 0x7f, MT6358_BUCK_VCORE_DBG0, 0x7f, MT6358_VCORE_VGPU_ANA_CON0, 1), - MT6358_BUCK("buck_vpa", VPA, 500000, 3650000, 50000, + MT6358_BUCK("buck_vpa", VPA, "vsys-vpa", 500000, 3650000, 50000, 0x3f, MT6358_BUCK_VPA_DBG0, 0x3f, MT6358_VPA_ANA_CON0, 3), - MT6358_BUCK("buck_vproc11", VPROC11, 500000, 1293750, 6250, + MT6358_BUCK("buck_vproc11", VPROC11, "vsys-vproc11", 500000, 1293750, 625= 0, 0x7f, MT6358_BUCK_VPROC11_DBG0, 0x7f, MT6358_VPROC_ANA_CON0, 1), - MT6358_BUCK("buck_vproc12", VPROC12, 500000, 1293750, 6250, + MT6358_BUCK("buck_vproc12", VPROC12, "vsys-vproc12", 500000, 1293750, 625= 0, 0x7f, MT6358_BUCK_VPROC12_DBG0, 0x7f, MT6358_VPROC_ANA_CON0, 2), - MT6358_BUCK("buck_vgpu", VGPU, 500000, 1293750, 6250, + MT6358_BUCK("buck_vgpu", VGPU, "vsys-vgpu", 500000, 1293750, 6250, 0x7f, MT6358_BUCK_VGPU_ELR0, 0x7f, MT6358_VCORE_VGPU_ANA_CON0, 2), - MT6358_BUCK("buck_vs2", VS2, 500000, 2087500, 12500, + MT6358_BUCK("buck_vs2", VS2, "vsys-vs2", 500000, 2087500, 12500, 0x7f, MT6358_BUCK_VS2_DBG0, 0x7f, MT6358_VS2_ANA_CON0, 8), - MT6358_BUCK("buck_vmodem", VMODEM, 500000, 1293750, 6250, + MT6358_BUCK("buck_vmodem", VMODEM, "vsys-vmodem", 500000, 1293750, 6250, 0x7f, MT6358_BUCK_VMODEM_DBG0, 0x7f, MT6358_VMODEM_ANA_CON0, 8), - MT6358_BUCK("buck_vs1", VS1, 1000000, 2587500, 12500, + MT6358_BUCK("buck_vs1", VS1, "vsys-vs1", 1000000, 2587500, 12500, 0x7f, MT6358_BUCK_VS1_DBG0, 0x7f, MT6358_VS1_ANA_CON0, 8), - MT6358_REG_FIXED("ldo_vrf12", VRF12, - MT6358_LDO_VRF12_CON0, 0, 1200000), - MT6358_REG_FIXED("ldo_vio18", VIO18, - MT6358_LDO_VIO18_CON0, 0, 1800000), - MT6358_REG_FIXED("ldo_vcamio", VCAMIO, - MT6358_LDO_VCAMIO_CON0, 0, 1800000), - MT6358_REG_FIXED("ldo_vcn18", VCN18, MT6358_LDO_VCN18_CON0, 0, 1800000), - MT6358_REG_FIXED("ldo_vfe28", VFE28, MT6358_LDO_VFE28_CON0, 0, 2800000), - MT6358_REG_FIXED("ldo_vcn28", VCN28, MT6358_LDO_VCN28_CON0, 0, 2800000), - MT6358_REG_FIXED("ldo_vxo22", VXO22, MT6358_LDO_VXO22_CON0, 0, 2200000), - MT6358_REG_FIXED("ldo_vaux18", VAUX18, - MT6358_LDO_VAUX18_CON0, 0, 1800000), - MT6358_REG_FIXED("ldo_vbif28", VBIF28, - MT6358_LDO_VBIF28_CON0, 0, 2800000), - MT6358_REG_FIXED("ldo_vio28", VIO28, MT6358_LDO_VIO28_CON0, 0, 2800000), - MT6358_REG_FIXED("ldo_va12", VA12, MT6358_LDO_VA12_CON0, 0, 1200000), - MT6358_REG_FIXED("ldo_vrf18", VRF18, MT6358_LDO_VRF18_CON0, 0, 1800000), - MT6358_REG_FIXED("ldo_vaud28", VAUD28, - MT6358_LDO_VAUD28_CON0, 0, 2800000), - MT6358_LDO("ldo_vdram2", VDRAM2, vdram2, + MT6358_REG_FIXED("ldo_vrf12", VRF12, "vs2-ldo2", MT6358_LDO_VRF12_CON0, 0= , 1200000), + MT6358_REG_FIXED("ldo_vio18", VIO18, "vs1-ldo1", MT6358_LDO_VIO18_CON0, 0= , 1800000), + MT6358_REG_FIXED("ldo_vcamio", VCAMIO, "vs1-ldo1", MT6358_LDO_VCAMIO_CON0= , 0, 1800000), + MT6358_REG_FIXED("ldo_vcn18", VCN18, "vs1-ldo1", MT6358_LDO_VCN18_CON0, 0= , 1800000), + MT6358_REG_FIXED("ldo_vfe28", VFE28, "vsys-ldo1", MT6358_LDO_VFE28_CON0, = 0, 2800000), + MT6358_REG_FIXED("ldo_vcn28", VCN28, "vsys-ldo1", MT6358_LDO_VCN28_CON0, = 0, 2800000), + MT6358_REG_FIXED("ldo_vxo22", VXO22, "vsys-ldo1", MT6358_LDO_VXO22_CON0, = 0, 2200000), + MT6358_REG_FIXED("ldo_vaux18", VAUX18, "vsys-ldo1", MT6358_LDO_VAUX18_CON= 0, 0, 1800000), + MT6358_REG_FIXED("ldo_vbif28", VBIF28, "vsys-ldo1", MT6358_LDO_VBIF28_CON= 0, 0, 2800000), + MT6358_REG_FIXED("ldo_vio28", VIO28, "vsys-ldo2", MT6358_LDO_VIO28_CON0, = 0, 2800000), + MT6358_REG_FIXED("ldo_va12", VA12, "vs2-ldo2", MT6358_LDO_VA12_CON0, 0, 1= 200000), + MT6358_REG_FIXED("ldo_vrf18", VRF18, "vs1-ldo1", MT6358_LDO_VRF18_CON0, 0= , 1800000), + MT6358_REG_FIXED("ldo_vaud28", VAUD28, "vsys-ldo1", MT6358_LDO_VAUD28_CON= 0, 0, 2800000), + MT6358_LDO("ldo_vdram2", VDRAM2, "vs2-ldo1", vdram2, MT6358_LDO_VDRAM2_CON0, 0, MT6358_LDO_VDRAM2_ELR0, 0xf), - MT6358_LDO("ldo_vsim1", VSIM1, vsim, + MT6358_LDO("ldo_vsim1", VSIM1, "vsys-ldo1", vsim, MT6358_LDO_VSIM1_CON0, 0, MT6358_VSIM1_ANA_CON0, 0xf00), - MT6358_LDO("ldo_vibr", VIBR, vibr, + MT6358_LDO("ldo_vibr", VIBR, "vsys-ldo3", vibr, MT6358_LDO_VIBR_CON0, 0, MT6358_VIBR_ANA_CON0, 0xf00), - MT6358_LDO("ldo_vusb", VUSB, vusb, + MT6358_LDO("ldo_vusb", VUSB, "vsys-ldo1", vusb, MT6358_LDO_VUSB_CON0_0, 0, MT6358_VUSB_ANA_CON0, 0x700), - MT6358_LDO("ldo_vcamd", VCAMD, vcamd, + MT6358_LDO("ldo_vcamd", VCAMD, "vs2-ldo4", vcamd, MT6358_LDO_VCAMD_CON0, 0, MT6358_VCAMD_ANA_CON0, 0xf00), - MT6358_LDO("ldo_vefuse", VEFUSE, vefuse, + MT6358_LDO("ldo_vefuse", VEFUSE, "vs1-ldo1", vefuse, MT6358_LDO_VEFUSE_CON0, 0, MT6358_VEFUSE_ANA_CON0, 0xf00), - MT6358_LDO("ldo_vmch", VMCH, vmch_vemc, + MT6358_LDO("ldo_vmch", VMCH, "vsys-ldo2", vmch_vemc, MT6358_LDO_VMCH_CON0, 0, MT6358_VMCH_ANA_CON0, 0x700), - MT6358_LDO("ldo_vcama1", VCAMA1, vcama, + MT6358_LDO("ldo_vcama1", VCAMA1, "vsys-ldo3", vcama, MT6358_LDO_VCAMA1_CON0, 0, MT6358_VCAMA1_ANA_CON0, 0xf00), - MT6358_LDO("ldo_vemc", VEMC, vmch_vemc, + MT6358_LDO("ldo_vemc", VEMC, "vsys-ldo2", vmch_vemc, MT6358_LDO_VEMC_CON0, 0, MT6358_VEMC_ANA_CON0, 0x700), - MT6358_LDO("ldo_vcn33", VCN33, vcn33, + MT6358_LDO("ldo_vcn33", VCN33, "vsys-ldo3", vcn33, MT6358_LDO_VCN33_CON0_0, 0, MT6358_VCN33_ANA_CON0, 0x300), - MT6358_LDO("ldo_vcama2", VCAMA2, vcama, + MT6358_LDO("ldo_vcama2", VCAMA2, "vsys-ldo3", vcama, MT6358_LDO_VCAMA2_CON0, 0, MT6358_VCAMA2_ANA_CON0, 0xf00), - MT6358_LDO("ldo_vmc", VMC, vmc, + MT6358_LDO("ldo_vmc", VMC, "vsys-ldo2", vmc, MT6358_LDO_VMC_CON0, 0, MT6358_VMC_ANA_CON0, 0xf00), - MT6358_LDO("ldo_vldo28", VLDO28, vldo28, + MT6358_LDO("ldo_vldo28", VLDO28, "vsys-ldo2", vldo28, MT6358_LDO_VLDO28_CON0_0, 0, MT6358_VLDO28_ANA_CON0, 0x300), - MT6358_LDO("ldo_vsim2", VSIM2, vsim, + MT6358_LDO("ldo_vsim2", VSIM2, "vsys-ldo2", vsim, MT6358_LDO_VSIM2_CON0, 0, MT6358_VSIM2_ANA_CON0, 0xf00), - MT6358_LDO1("ldo_vsram_proc11", VSRAM_PROC11, 500000, 1293750, 6250, + MT6358_LDO1("ldo_vsram_proc11", VSRAM_PROC11, "vs2-ldo3", 500000, 1293750= , 6250, MT6358_LDO_VSRAM_PROC11_DBG0, 0x7f00, MT6358_LDO_VSRAM_CON0, 0x7f), - MT6358_LDO1("ldo_vsram_others", VSRAM_OTHERS, 500000, 1293750, 6250, + MT6358_LDO1("ldo_vsram_others", VSRAM_OTHERS, "vs2-ldo3", 500000, 1293750= , 6250, MT6358_LDO_VSRAM_OTHERS_DBG0, 0x7f00, MT6358_LDO_VSRAM_CON2, 0x7f), - MT6358_LDO1("ldo_vsram_gpu", VSRAM_GPU, 500000, 1293750, 6250, + MT6358_LDO1("ldo_vsram_gpu", VSRAM_GPU, "vs2-ldo3", 500000, 1293750, 6250, MT6358_LDO_VSRAM_GPU_DBG0, 0x7f00, MT6358_LDO_VSRAM_CON3, 0x7f), - MT6358_LDO1("ldo_vsram_proc12", VSRAM_PROC12, 500000, 1293750, 6250, + MT6358_LDO1("ldo_vsram_proc12", VSRAM_PROC12, "vs2-ldo3", 500000, 1293750= , 6250, MT6358_LDO_VSRAM_PROC12_DBG0, 0x7f00, MT6358_LDO_VSRAM_CON1, 0x7f), }; =20 --=20 2.42.0.rc1.204.g551eb34607-goog From nobody Fri Sep 20 11:44:30 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 95AFDEE4993 for ; Tue, 22 Aug 2023 08:46:09 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234011AbjHVIqJ (ORCPT ); Tue, 22 Aug 2023 04:46:09 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:46412 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233939AbjHVIqC (ORCPT ); Tue, 22 Aug 2023 04:46:02 -0400 Received: from mail-pf1-x433.google.com (mail-pf1-x433.google.com [IPv6:2607:f8b0:4864:20::433]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 07438E5D for ; Tue, 22 Aug 2023 01:45:48 -0700 (PDT) Received: by mail-pf1-x433.google.com with SMTP id d2e1a72fcca58-68a6cd7c6a6so420136b3a.1 for ; Tue, 22 Aug 2023 01:45:48 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; t=1692693948; x=1693298748; 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=63jQ1kY7su1lCsx2tRGAaWVTfzqHu9OQUezgv59mi30=; b=euyhApvgxt/Q4MkWGgkXf2m0xVZQ1jlXwo0cwZ2kR/Ph6JsCAdfPXn+6pi/yNAeRFg YLyHGIpJVdGgyp+ZNKHhHDJut16oUyPkQ6gZxy2SdFbIMcU6r9iX/zzxyOwVyY0Z/LQy Hh0DbdYOmHaGtyMFJ9uhSmuY+B1lNZO8aJN2s= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1692693948; x=1693298748; 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=63jQ1kY7su1lCsx2tRGAaWVTfzqHu9OQUezgv59mi30=; b=NS/TqzDEZ7Ki0JANsP5FU5NR10zEjzNsrsc9aEbRfH0k+OC9sbmXMDxZvA3gIRgAym LmQyAoW6Stv/R6RtblkJ+dIu1S+mvsWLO+LoNCFjczOstGVfc1xjYh8IGF7nwSwJ9+lV +xXmUif0Rw1XJxOoQWPH/YXsQz06Llso+c2hsKibJ/34C0soDCD6vhL9uNAMDpAvSctS pmNlYydxneYkgoPRRqF1Pi1KDboBkssQEw2BwxM6lWTPxFhQHjrFYNIQswtAHKym8Fdi cby50PlXhu6M3T5wcxUZYg2S0S5+12JQ9pIHADfkFAo9K9z+QkqC78NndGSOAeplSiUc EuWw== X-Gm-Message-State: AOJu0YxI5QXdyWAWwUPlrRXPgdiF9FV4ricsG+XhJZITvuPDHm6SIhK2 je0LAlpc+a9W15w2QIv1KVaJxw== X-Google-Smtp-Source: AGHT+IEfnsEAyLuzQuoLVVkbddi+FiEa94olPQ1J53s6w9Y/lSnpqa4nTLNupC70/wdRTpHMMRNvAA== X-Received: by 2002:a05:6a00:1a56:b0:687:41cb:e274 with SMTP id h22-20020a056a001a5600b0068741cbe274mr7774159pfv.9.1692693948082; Tue, 22 Aug 2023 01:45:48 -0700 (PDT) Received: from wenstp920.tpe.corp.google.com ([2401:fa00:1:10:e619:3fa0:1a90:6bb0]) by smtp.gmail.com with ESMTPSA id s26-20020aa78d5a000000b00666b012baedsm7304790pfe.158.2023.08.22.01.45.45 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 22 Aug 2023 01:45:47 -0700 (PDT) From: Chen-Yu Tsai To: Lee Jones , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Matthias Brugger , AngeloGioacchino Del Regno , Mark Brown Cc: Chen-Yu Tsai , Zhiyong Tao , devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org Subject: [PATCH v2 07/11] regulator: mt6358: fix and drop type prefix in MT6366 regulator node names Date: Tue, 22 Aug 2023 16:45:15 +0800 Message-ID: <20230822084520.564937-8-wenst@chromium.org> X-Mailer: git-send-email 2.42.0.rc1.204.g551eb34607-goog In-Reply-To: <20230822084520.564937-1-wenst@chromium.org> References: <20230822084520.564937-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 new MT6366 binding does away with the type prefix ("buck_", "ldo_") in the regulator node names. This better matches the PMIC pin names. Remaining underscores in names are also replaced with hyphens. Drop the type prefixes and replace remaining underscores to match the MT6366 binding. Signed-off-by: Chen-Yu Tsai Reviewed-by: AngeloGioacchino Del Regno --- drivers/regulator/mt6358-regulator.c | 70 ++++++++++++++-------------- 1 file changed, 35 insertions(+), 35 deletions(-) diff --git a/drivers/regulator/mt6358-regulator.c b/drivers/regulator/mt635= 8-regulator.c index db75f644966a..bc7fe2ff189d 100644 --- a/drivers/regulator/mt6358-regulator.c +++ b/drivers/regulator/mt6358-regulator.c @@ -532,68 +532,68 @@ static const struct mt6358_regulator_info mt6358_regu= lators[] =3D { =20 /* The array is indexed by id(MT6366_ID_XXX) */ static const struct mt6358_regulator_info mt6366_regulators[] =3D { - MT6366_BUCK("buck_vdram1", VDRAM1, 500000, 2087500, 12500, + MT6366_BUCK("vdram1", VDRAM1, 500000, 2087500, 12500, 0x7f, MT6358_BUCK_VDRAM1_DBG0, 0x7f, MT6358_VDRAM1_ANA_CON0, 8), - MT6366_BUCK("buck_vcore", VCORE, 500000, 1293750, 6250, + MT6366_BUCK("vcore", VCORE, 500000, 1293750, 6250, 0x7f, MT6358_BUCK_VCORE_DBG0, 0x7f, MT6358_VCORE_VGPU_ANA_CON0, 1), - MT6366_BUCK("buck_vpa", VPA, 500000, 3650000, 50000, + MT6366_BUCK("vpa", VPA, 500000, 3650000, 50000, 0x3f, MT6358_BUCK_VPA_DBG0, 0x3f, MT6358_VPA_ANA_CON0, 3), - MT6366_BUCK("buck_vproc11", VPROC11, 500000, 1293750, 6250, + MT6366_BUCK("vproc11", VPROC11, 500000, 1293750, 6250, 0x7f, MT6358_BUCK_VPROC11_DBG0, 0x7f, MT6358_VPROC_ANA_CON0, 1), - MT6366_BUCK("buck_vproc12", VPROC12, 500000, 1293750, 6250, + MT6366_BUCK("vproc12", VPROC12, 500000, 1293750, 6250, 0x7f, MT6358_BUCK_VPROC12_DBG0, 0x7f, MT6358_VPROC_ANA_CON0, 2), - MT6366_BUCK("buck_vgpu", VGPU, 500000, 1293750, 6250, + MT6366_BUCK("vgpu", VGPU, 500000, 1293750, 6250, 0x7f, MT6358_BUCK_VGPU_ELR0, 0x7f, MT6358_VCORE_VGPU_ANA_CON0, 2), - MT6366_BUCK("buck_vs2", VS2, 500000, 2087500, 12500, + MT6366_BUCK("vs2", VS2, 500000, 2087500, 12500, 0x7f, MT6358_BUCK_VS2_DBG0, 0x7f, MT6358_VS2_ANA_CON0, 8), - MT6366_BUCK("buck_vmodem", VMODEM, 500000, 1293750, 6250, + MT6366_BUCK("vmodem", VMODEM, 500000, 1293750, 6250, 0x7f, MT6358_BUCK_VMODEM_DBG0, 0x7f, MT6358_VMODEM_ANA_CON0, 8), - MT6366_BUCK("buck_vs1", VS1, 1000000, 2587500, 12500, + MT6366_BUCK("vs1", VS1, 1000000, 2587500, 12500, 0x7f, MT6358_BUCK_VS1_DBG0, 0x7f, MT6358_VS1_ANA_CON0, 8), - MT6366_REG_FIXED("ldo_vrf12", VRF12, + MT6366_REG_FIXED("vrf12", VRF12, MT6358_LDO_VRF12_CON0, 0, 1200000), - MT6366_REG_FIXED("ldo_vio18", VIO18, + MT6366_REG_FIXED("vio18", VIO18, MT6358_LDO_VIO18_CON0, 0, 1800000), - MT6366_REG_FIXED("ldo_vcn18", VCN18, MT6358_LDO_VCN18_CON0, 0, 1800000), - MT6366_REG_FIXED("ldo_vfe28", VFE28, MT6358_LDO_VFE28_CON0, 0, 2800000), - MT6366_REG_FIXED("ldo_vcn28", VCN28, MT6358_LDO_VCN28_CON0, 0, 2800000), - MT6366_REG_FIXED("ldo_vxo22", VXO22, MT6358_LDO_VXO22_CON0, 0, 2200000), - MT6366_REG_FIXED("ldo_vaux18", VAUX18, + MT6366_REG_FIXED("vcn18", VCN18, MT6358_LDO_VCN18_CON0, 0, 1800000), + MT6366_REG_FIXED("vfe28", VFE28, MT6358_LDO_VFE28_CON0, 0, 2800000), + MT6366_REG_FIXED("vcn28", VCN28, MT6358_LDO_VCN28_CON0, 0, 2800000), + MT6366_REG_FIXED("vxo22", VXO22, MT6358_LDO_VXO22_CON0, 0, 2200000), + MT6366_REG_FIXED("vaux18", VAUX18, MT6358_LDO_VAUX18_CON0, 0, 1800000), - MT6366_REG_FIXED("ldo_vbif28", VBIF28, + MT6366_REG_FIXED("vbif28", VBIF28, MT6358_LDO_VBIF28_CON0, 0, 2800000), - MT6366_REG_FIXED("ldo_vio28", VIO28, MT6358_LDO_VIO28_CON0, 0, 2800000), - MT6366_REG_FIXED("ldo_va12", VA12, MT6358_LDO_VA12_CON0, 0, 1200000), - MT6366_REG_FIXED("ldo_vrf18", VRF18, MT6358_LDO_VRF18_CON0, 0, 1800000), - MT6366_REG_FIXED("ldo_vaud28", VAUD28, + MT6366_REG_FIXED("vio28", VIO28, MT6358_LDO_VIO28_CON0, 0, 2800000), + MT6366_REG_FIXED("va12", VA12, MT6358_LDO_VA12_CON0, 0, 1200000), + MT6366_REG_FIXED("vrf18", VRF18, MT6358_LDO_VRF18_CON0, 0, 1800000), + MT6366_REG_FIXED("vaud28", VAUD28, MT6358_LDO_VAUD28_CON0, 0, 2800000), - MT6366_LDO("ldo_vdram2", VDRAM2, vdram2, + MT6366_LDO("vdram2", VDRAM2, vdram2, MT6358_LDO_VDRAM2_CON0, 0, MT6358_LDO_VDRAM2_ELR0, 0x10), - MT6366_LDO("ldo_vsim1", VSIM1, vsim, + MT6366_LDO("vsim1", VSIM1, vsim, MT6358_LDO_VSIM1_CON0, 0, MT6358_VSIM1_ANA_CON0, 0xf00), - MT6366_LDO("ldo_vibr", VIBR, vibr, + MT6366_LDO("vibr", VIBR, vibr, MT6358_LDO_VIBR_CON0, 0, MT6358_VIBR_ANA_CON0, 0xf00), - MT6366_LDO("ldo_vusb", VUSB, vusb, + MT6366_LDO("vusb", VUSB, vusb, MT6358_LDO_VUSB_CON0_0, 0, MT6358_VUSB_ANA_CON0, 0x700), - MT6366_LDO("ldo_vefuse", VEFUSE, vefuse, + MT6366_LDO("vefuse", VEFUSE, vefuse, MT6358_LDO_VEFUSE_CON0, 0, MT6358_VEFUSE_ANA_CON0, 0xf00), - MT6366_LDO("ldo_vmch", VMCH, vmch_vemc, + MT6366_LDO("vmch", VMCH, vmch_vemc, MT6358_LDO_VMCH_CON0, 0, MT6358_VMCH_ANA_CON0, 0x700), - MT6366_LDO("ldo_vemc", VEMC, vmch_vemc, + MT6366_LDO("vemc", VEMC, vmch_vemc, MT6358_LDO_VEMC_CON0, 0, MT6358_VEMC_ANA_CON0, 0x700), - MT6366_LDO("ldo_vcn33", VCN33, vcn33, + MT6366_LDO("vcn33", VCN33, vcn33, MT6358_LDO_VCN33_CON0_0, 0, MT6358_VCN33_ANA_CON0, 0x300), - MT6366_LDO("ldo_vmc", VMC, vmc, + MT6366_LDO("vmc", VMC, vmc, MT6358_LDO_VMC_CON0, 0, MT6358_VMC_ANA_CON0, 0xf00), - MT6366_LDO("ldo_vsim2", VSIM2, vsim, + MT6366_LDO("vsim2", VSIM2, vsim, MT6358_LDO_VSIM2_CON0, 0, MT6358_VSIM2_ANA_CON0, 0xf00), - MT6366_LDO1("ldo_vsram_proc11", VSRAM_PROC11, 500000, 1293750, 6250, + MT6366_LDO1("vsram-proc11", VSRAM_PROC11, 500000, 1293750, 6250, MT6358_LDO_VSRAM_PROC11_DBG0, 0x7f00, MT6358_LDO_VSRAM_CON0, 0x7f), - MT6366_LDO1("ldo_vsram_others", VSRAM_OTHERS, 500000, 1293750, 6250, + MT6366_LDO1("vsram-others", VSRAM_OTHERS, 500000, 1293750, 6250, MT6358_LDO_VSRAM_OTHERS_DBG0, 0x7f00, MT6358_LDO_VSRAM_CON2, 0x7f), - MT6366_LDO1("ldo_vsram_gpu", VSRAM_GPU, 500000, 1293750, 6250, + MT6366_LDO1("vsram-gpu", VSRAM_GPU, 500000, 1293750, 6250, MT6358_LDO_VSRAM_GPU_DBG0, 0x7f00, MT6358_LDO_VSRAM_CON3, 0x7f), - MT6366_LDO1("ldo_vsram_proc12", VSRAM_PROC12, 500000, 1293750, 6250, + MT6366_LDO1("vsram-proc12", VSRAM_PROC12, 500000, 1293750, 6250, MT6358_LDO_VSRAM_PROC12_DBG0, 0x7f00, MT6358_LDO_VSRAM_CON1, 0x7f), }; =20 --=20 2.42.0.rc1.204.g551eb34607-goog From nobody Fri Sep 20 11:44:30 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 3AB65EE49AB for ; Tue, 22 Aug 2023 08:46:20 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234012AbjHVIqT (ORCPT ); Tue, 22 Aug 2023 04:46:19 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:46386 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233989AbjHVIqG (ORCPT ); Tue, 22 Aug 2023 04:46:06 -0400 Received: from mail-pf1-x42a.google.com (mail-pf1-x42a.google.com [IPv6:2607:f8b0:4864:20::42a]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 0D7AFE6D for ; Tue, 22 Aug 2023 01:45:51 -0700 (PDT) Received: by mail-pf1-x42a.google.com with SMTP id d2e1a72fcca58-68a42d06d02so1350596b3a.0 for ; Tue, 22 Aug 2023 01:45:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; t=1692693950; x=1693298750; 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=0LwYgNBbWG4PSO0ihWHLk9nZHuEXoxAxRNjJgweYAgo=; b=J+QwwhCGW2PlgVOsRScY8jHu/1OXjqYru7xvZ9s/ADQ+nrzIBUfmTMymsmARfmL+4H AnOM17YVkaTixQaITrtFF8mB4PIQH7vD2wxC9P0Wt/KHqbmc+wkQBbsNkZwTP8AZQI86 Gjr9GSPn7c742h8Sl49vW2v7oDE6df7wU7f0I= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1692693950; x=1693298750; 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=0LwYgNBbWG4PSO0ihWHLk9nZHuEXoxAxRNjJgweYAgo=; b=MUELK5ENfXb3wT3gq7A7jWUWL0VFuL2BpbtuksuMyl9JTDqWo+Zaq2Z7ulJh25CCVi gYo7m/BDFVLY7bN6rPJ3QJawx2dOwVBOdav2NQsWD84lSwHqa3ms5zV+pqGpu73pardi 9I713M6iXWyjvDQq8z8zM/YZjL3oSFVl65ZiZPuPhAkUw609Jkkx9cOe2GKsjBqu+oap VUV2BMSmPf/RIy+PWcrLOIc1cylr03CQGgTm1MtaV7tB+pjCD1eIgU3IMHDG0+2ywUdo yqC2RABXPe2JL7gf1a34G+ifZ122h4Y0WqoguWRIr/5QM2MxMrJ9BV3eFrFS57onwapG uOJg== X-Gm-Message-State: AOJu0Ywh3RF0/0QHJ60Z9Y2WLwNTIb0wk1CJvZdCn7P9reuHROMQc+QF GZq770ukXwWbbZ/10OrIcAMLyQ== X-Google-Smtp-Source: AGHT+IFIC8qxSyPLsrbBGKQMJZIOzJn7IR8m1rXKz78wmhnuJtgxM/t0Jtr5jd2AOa6QjktQ1pwRYg== X-Received: by 2002:a05:6a20:6a05:b0:134:d4d3:f0a8 with SMTP id p5-20020a056a206a0500b00134d4d3f0a8mr7998627pzk.3.1692693950531; Tue, 22 Aug 2023 01:45:50 -0700 (PDT) Received: from wenstp920.tpe.corp.google.com ([2401:fa00:1:10:e619:3fa0:1a90:6bb0]) by smtp.gmail.com with ESMTPSA id s26-20020aa78d5a000000b00666b012baedsm7304790pfe.158.2023.08.22.01.45.48 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 22 Aug 2023 01:45:50 -0700 (PDT) From: Chen-Yu Tsai To: Lee Jones , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Matthias Brugger , AngeloGioacchino Del Regno , Mark Brown Cc: Chen-Yu Tsai , Zhiyong Tao , devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org Subject: [PATCH v2 08/11] regulator: mt6358: Make MT6366 vcn18 LDO configurable Date: Tue, 22 Aug 2023 16:45:16 +0800 Message-ID: <20230822084520.564937-9-wenst@chromium.org> X-Mailer: git-send-email 2.42.0.rc1.204.g551eb34607-goog In-Reply-To: <20230822084520.564937-1-wenst@chromium.org> References: <20230822084520.564937-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 VCN18 regulator on the MT6366 (only) actually has a wide configurable range of voltages, even though its name suggests a fixed output voltage. Convert it from a fixed LDO to a configurable LDO. Its range of settings is the same as the VM18 regulator, which is missing and will be added in a subsequent patch. Signed-off-by: Chen-Yu Tsai Reviewed-by: AngeloGioacchino Del Regno --- drivers/regulator/mt6358-regulator.c | 24 +++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/drivers/regulator/mt6358-regulator.c b/drivers/regulator/mt635= 8-regulator.c index bc7fe2ff189d..587ee852c053 100644 --- a/drivers/regulator/mt6358-regulator.c +++ b/drivers/regulator/mt6358-regulator.c @@ -326,6 +326,27 @@ static const struct linear_range vldo28_ranges[] =3D { REGULATOR_LINEAR_RANGE(3000000, 11, 21, 10000), }; =20 +static const unsigned int mt6366_vcn18_vm18_selectors[] =3D { + 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 }; +static const struct linear_range mt6366_vcn18_vm18_ranges[] =3D { + REGULATOR_LINEAR_RANGE(600000, 0, 10, 10000), + REGULATOR_LINEAR_RANGE(700000, 11, 21, 10000), + REGULATOR_LINEAR_RANGE(800000, 22, 32, 10000), + REGULATOR_LINEAR_RANGE(900000, 33, 43, 10000), + REGULATOR_LINEAR_RANGE(1000000, 44, 54, 10000), + REGULATOR_LINEAR_RANGE(1100000, 55, 65, 10000), + REGULATOR_LINEAR_RANGE(1200000, 66, 76, 10000), + REGULATOR_LINEAR_RANGE(1300000, 77, 87, 10000), + REGULATOR_LINEAR_RANGE(1400000, 88, 98, 10000), + REGULATOR_LINEAR_RANGE(1500000, 99, 109, 10000), + REGULATOR_LINEAR_RANGE(1600000, 110, 120, 10000), + REGULATOR_LINEAR_RANGE(1700000, 121, 131, 10000), + REGULATOR_LINEAR_RANGE(1800000, 132, 142, 10000), + REGULATOR_LINEAR_RANGE(1900000, 143, 153, 10000), + REGULATOR_LINEAR_RANGE(2000000, 154, 164, 10000), + REGULATOR_LINEAR_RANGE(2100000, 165, 175, 10000), +}; + static unsigned int mt6358_map_mode(unsigned int mode) { return mode =3D=3D MT6358_BUCK_MODE_AUTO ? @@ -554,7 +575,6 @@ static const struct mt6358_regulator_info mt6366_regula= tors[] =3D { MT6358_LDO_VRF12_CON0, 0, 1200000), MT6366_REG_FIXED("vio18", VIO18, MT6358_LDO_VIO18_CON0, 0, 1800000), - MT6366_REG_FIXED("vcn18", VCN18, MT6358_LDO_VCN18_CON0, 0, 1800000), MT6366_REG_FIXED("vfe28", VFE28, MT6358_LDO_VFE28_CON0, 0, 2800000), MT6366_REG_FIXED("vcn28", VCN28, MT6358_LDO_VCN28_CON0, 0, 2800000), MT6366_REG_FIXED("vxo22", VXO22, MT6358_LDO_VXO22_CON0, 0, 2200000), @@ -587,6 +607,8 @@ static const struct mt6358_regulator_info mt6366_regula= tors[] =3D { MT6358_LDO_VMC_CON0, 0, MT6358_VMC_ANA_CON0, 0xf00), MT6366_LDO("vsim2", VSIM2, vsim, MT6358_LDO_VSIM2_CON0, 0, MT6358_VSIM2_ANA_CON0, 0xf00), + MT6366_LDO("vcn18", VCN18, mt6366_vcn18_vm18, + MT6358_LDO_VCN18_CON0, 0, MT6358_VCN18_ANA_CON0, 0xf00), MT6366_LDO1("vsram-proc11", VSRAM_PROC11, 500000, 1293750, 6250, MT6358_LDO_VSRAM_PROC11_DBG0, 0x7f00, MT6358_LDO_VSRAM_CON0, 0x7f), MT6366_LDO1("vsram-others", VSRAM_OTHERS, 500000, 1293750, 6250, --=20 2.42.0.rc1.204.g551eb34607-goog From nobody Fri Sep 20 11:44:30 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 D08FEEE49A8 for ; Tue, 22 Aug 2023 08:46:28 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234007AbjHVIq2 (ORCPT ); Tue, 22 Aug 2023 04:46:28 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:45274 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S234025AbjHVIqO (ORCPT ); Tue, 22 Aug 2023 04:46:14 -0400 Received: from mail-pf1-x42a.google.com (mail-pf1-x42a.google.com [IPv6:2607:f8b0:4864:20::42a]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 973FCE78 for ; Tue, 22 Aug 2023 01:45:53 -0700 (PDT) Received: by mail-pf1-x42a.google.com with SMTP id d2e1a72fcca58-68a6cd7c6a6so420184b3a.1 for ; Tue, 22 Aug 2023 01:45:53 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; t=1692693953; x=1693298753; 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=FJlvy9cp8YdYtNw+zjvbSQuMdmHyQIESMtjbg1P8AFk=; b=jslm9USmn7dRFDz6w4G2MzfvBdGji0khaqZCw0xGX9816ntX5c1o/8RAnphAMa38Nt V6NkjQBDRKn4oEnwJ06G//CAQqUnkvvIdtbmIGnCcTerUS2xodD4hrg8WkG0Ls16v4GA DRx58JL7aAFmkyFRJJWni+65VRSDHWw6x2mF8= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1692693953; x=1693298753; 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=FJlvy9cp8YdYtNw+zjvbSQuMdmHyQIESMtjbg1P8AFk=; b=JxAqieI8HgsRFyM7QbJFOFp2Iq97KKZx5bk/eSOC9Y+L7j0+sQH7hy0kU5dLWccOGG RxO8nz88SiRme3PtIW8EDzuzJMsqyWs//3YQRztKd7xxIko156LwBNrF+o+VFlijEniz 827Dll4tSftC5/tHwmUoYHFac8q0j3lmDVaH7huW5+D/k+F9oKmzRifG/VHiGHqTMyle ph2B4ffsuru0YZ/+eb6Avrz4rMFXhi5ntY4bKIBXQD+9QjCOpUes6WCNlVw3sTWY6iid oS+btWTmla4OMOa+TX3NNKdR23wmA92fXllskkSL0nmvPOHqZ8XEJWwuH2aLu5HihCQu wnQw== X-Gm-Message-State: AOJu0YyvZPC6XL4kUqMmO6FR/1i411lBSjGwQJeSJ1aFJWNKMqzD38IA hvymEYqC6t2OHmv4OLwMnaDUCQ== X-Google-Smtp-Source: AGHT+IGhAEeSd5MyI4wpWI/9j0yldPpTY8zN3LuQHYHKCR7QGaBsbvecfXQ+vwtFphVPcWXhbIrv+g== X-Received: by 2002:a05:6a20:7d8e:b0:140:730b:4b3f with SMTP id v14-20020a056a207d8e00b00140730b4b3fmr8839855pzj.1.1692693952941; Tue, 22 Aug 2023 01:45:52 -0700 (PDT) Received: from wenstp920.tpe.corp.google.com ([2401:fa00:1:10:e619:3fa0:1a90:6bb0]) by smtp.gmail.com with ESMTPSA id s26-20020aa78d5a000000b00666b012baedsm7304790pfe.158.2023.08.22.01.45.50 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 22 Aug 2023 01:45:52 -0700 (PDT) From: Chen-Yu Tsai To: Lee Jones , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Matthias Brugger , AngeloGioacchino Del Regno , Mark Brown Cc: Chen-Yu Tsai , Zhiyong Tao , devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org Subject: [PATCH v2 09/11] regulator: mt6358: Add missing regulators for MT6366 Date: Tue, 22 Aug 2023 16:45:17 +0800 Message-ID: <20230822084520.564937-10-wenst@chromium.org> X-Mailer: git-send-email 2.42.0.rc1.204.g551eb34607-goog In-Reply-To: <20230822084520.564937-1-wenst@chromium.org> References: <20230822084520.564937-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" When support for the MT6366 PMIC regulators was added, it was assumed that it had the same functionality as MT6358. In reality there are differences. A few regulators have different ranges, or were renamed and repurposed, or removed altogether. Add the 3 regulators that were missing from the original submission. These are added for completeness. VSRAM_CORE is not used in existing projects. VM18 and VMDDR feed DRAM related consumers, and are not used in-kernel. Signed-off-by: Chen-Yu Tsai Reviewed-by: AngeloGioacchino Del Regno --- drivers/regulator/mt6358-regulator.c | 20 ++++++++++++++++++++ include/linux/regulator/mt6358-regulator.h | 3 +++ 2 files changed, 23 insertions(+) diff --git a/drivers/regulator/mt6358-regulator.c b/drivers/regulator/mt635= 8-regulator.c index 587ee852c053..658c4dbf478f 100644 --- a/drivers/regulator/mt6358-regulator.c +++ b/drivers/regulator/mt6358-regulator.c @@ -326,6 +326,20 @@ static const struct linear_range vldo28_ranges[] =3D { REGULATOR_LINEAR_RANGE(3000000, 11, 21, 10000), }; =20 +static const unsigned int mt6366_vmddr_selectors[] =3D { 0, 1, 2, 3, 4, 5,= 6, 7, 9, 12 }; +static const struct linear_range mt6366_vmddr_ranges[] =3D { + REGULATOR_LINEAR_RANGE(600000, 0, 10, 10000), + REGULATOR_LINEAR_RANGE(700000, 11, 21, 10000), + REGULATOR_LINEAR_RANGE(800000, 22, 32, 10000), + REGULATOR_LINEAR_RANGE(900000, 33, 43, 10000), + REGULATOR_LINEAR_RANGE(1000000, 44, 54, 10000), + REGULATOR_LINEAR_RANGE(1100000, 55, 65, 10000), + REGULATOR_LINEAR_RANGE(1200000, 66, 76, 10000), + REGULATOR_LINEAR_RANGE(1300000, 77, 87, 10000), + REGULATOR_LINEAR_RANGE(1500000, 88, 98, 10000), + REGULATOR_LINEAR_RANGE(1800000, 99, 109, 10000), +}; + static const unsigned int mt6366_vcn18_vm18_selectors[] =3D { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 }; static const struct linear_range mt6366_vcn18_vm18_ranges[] =3D { @@ -609,6 +623,10 @@ static const struct mt6358_regulator_info mt6366_regul= ators[] =3D { MT6358_LDO_VSIM2_CON0, 0, MT6358_VSIM2_ANA_CON0, 0xf00), MT6366_LDO("vcn18", VCN18, mt6366_vcn18_vm18, MT6358_LDO_VCN18_CON0, 0, MT6358_VCN18_ANA_CON0, 0xf00), + MT6366_LDO("vm18", VM18, mt6366_vcn18_vm18, + MT6358_LDO_VM18_CON0, 0, MT6358_VM18_ANA_CON0, 0xf00), + MT6366_LDO("vmddr", VMDDR, mt6366_vmddr, + MT6358_LDO_VMDDR_CON0, 0, MT6358_VMDDR_ANA_CON0, 0xf00), MT6366_LDO1("vsram-proc11", VSRAM_PROC11, 500000, 1293750, 6250, MT6358_LDO_VSRAM_PROC11_DBG0, 0x7f00, MT6358_LDO_VSRAM_CON0, 0x7f), MT6366_LDO1("vsram-others", VSRAM_OTHERS, 500000, 1293750, 6250, @@ -617,6 +635,8 @@ static const struct mt6358_regulator_info mt6366_regula= tors[] =3D { MT6358_LDO_VSRAM_GPU_DBG0, 0x7f00, MT6358_LDO_VSRAM_CON3, 0x7f), MT6366_LDO1("vsram-proc12", VSRAM_PROC12, 500000, 1293750, 6250, MT6358_LDO_VSRAM_PROC12_DBG0, 0x7f00, MT6358_LDO_VSRAM_CON1, 0x7f), + MT6366_LDO1("vsram-core", VSRAM_CORE, 500000, 1293750, 6250, + MT6358_LDO_VSRAM_CORE_DBG0, 0x7f00, MT6358_LDO_VSRAM_CON5, 0x7f), }; =20 static int mt6358_sync_vcn33_setting(struct device *dev) diff --git a/include/linux/regulator/mt6358-regulator.h b/include/linux/reg= ulator/mt6358-regulator.h index c71a6a9fce7a..562386f9b80e 100644 --- a/include/linux/regulator/mt6358-regulator.h +++ b/include/linux/regulator/mt6358-regulator.h @@ -86,6 +86,9 @@ enum { MT6366_ID_VMC, MT6366_ID_VAUD28, MT6366_ID_VSIM2, + MT6366_ID_VM18, + MT6366_ID_VMDDR, + MT6366_ID_VSRAM_CORE, MT6366_ID_RG_MAX, }; =20 --=20 2.42.0.rc1.204.g551eb34607-goog From nobody Fri Sep 20 11:44:30 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 71740EE49AB for ; Tue, 22 Aug 2023 08:46:31 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234053AbjHVIqb (ORCPT ); Tue, 22 Aug 2023 04:46:31 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:45310 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S234032AbjHVIqR (ORCPT ); Tue, 22 Aug 2023 04:46:17 -0400 Received: from mail-oa1-x2e.google.com (mail-oa1-x2e.google.com [IPv6:2001:4860:4864:20::2e]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 4212DE7E for ; Tue, 22 Aug 2023 01:45:56 -0700 (PDT) Received: by mail-oa1-x2e.google.com with SMTP id 586e51a60fabf-1c4c7a83bcdso2593946fac.0 for ; Tue, 22 Aug 2023 01:45:56 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; t=1692693955; x=1693298755; 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=jrDATXbws5HyoVxKw6+vLUMTkruOotP8pQDuc9L5CV0=; b=AahAynSSwqqklGnOieWpiwev1YewTeQEJasNlRAeINMMGIi+RFZDQCbyhFnv9lT0ET vUd90ri/zi+hG7M9h1S3yi0xPmmNn3euftjPkk3Cubr2hOQrop6x7hRlVtbkdYFiRNp2 mgvLWMagRl5N7MS1Ll5Yhi46G+SoEydtAUw+Q= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1692693955; x=1693298755; 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=jrDATXbws5HyoVxKw6+vLUMTkruOotP8pQDuc9L5CV0=; b=g5o/8KDPjoOaUv4ci0FgJ00l9UHzNQ+eWfJl5mE2SKGJVRwqLlzwhwPEN7/KZNd4av rr50NFzRR5sz7YUpx/btX9sPFwINVdhK+itNsCSMKFmf4g9wxP56cKDDL6mHA9SYGXNd HGjTD3PSY8QM3T4ulLePPtPwnplyEpqXg+wmX4NFxtse1ELDJrM39MdUYEpRQIe1dbUD IxwkhiGVpllQj+/oz25gQAUllVeFU8jHZAD3ARJ3E55hpNf6K1dUHzkldd7sAwzN1aiH XOId+eA19EXc2Zo+pI43vsdbbzFxmeCJv+HneWsMyrld8GkTcTHxpt4UQeXilUrYn7tN gxcw== X-Gm-Message-State: AOJu0YxfTbIv13WVzMM4tMPE00viUtyrHT/1UOgmVP78AssJBaRpycsk hHKGLb6QNxdTd7+EysWW3NjD6Q== X-Google-Smtp-Source: AGHT+IEcbRmA1Ic/MwYkdWxmF4FnqY/IGmYo7qFR1gg+Ch7vEHEZH5CjQDg6P02c2DJOdM3gzIYiLA== X-Received: by 2002:a05:6871:8a4:b0:1bb:5480:4bc with SMTP id r36-20020a05687108a400b001bb548004bcmr11263042oaq.37.1692693955422; Tue, 22 Aug 2023 01:45:55 -0700 (PDT) Received: from wenstp920.tpe.corp.google.com ([2401:fa00:1:10:e619:3fa0:1a90:6bb0]) by smtp.gmail.com with ESMTPSA id s26-20020aa78d5a000000b00666b012baedsm7304790pfe.158.2023.08.22.01.45.53 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 22 Aug 2023 01:45:55 -0700 (PDT) From: Chen-Yu Tsai To: Lee Jones , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Matthias Brugger , AngeloGioacchino Del Regno , Mark Brown Cc: Chen-Yu Tsai , Zhiyong Tao , devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org Subject: [PATCH v2 10/11] regulator: mt6358: Add supply names for MT6366 regulators Date: Tue, 22 Aug 2023 16:45:18 +0800 Message-ID: <20230822084520.564937-11-wenst@chromium.org> X-Mailer: git-send-email 2.42.0.rc1.204.g551eb34607-goog In-Reply-To: <20230822084520.564937-1-wenst@chromium.org> References: <20230822084520.564937-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 DT bindings for MT6366 regulator defines the supply names for the PMIC. Add support for them by adding .supply_name field settings for each regulator. The buck regulators each have their own supply whose name can be derived from the regulator name. The LDOs have shared supplies. Signed-off-by: Chen-Yu Tsai Reviewed-by: AngeloGioacchino Del Regno --- Changes since v1: - Replaced underscores in supply names with hyphens - Reflowed a couple macros for readability drivers/regulator/mt6358-regulator.c | 77 +++++++++++++--------------- 1 file changed, 37 insertions(+), 40 deletions(-) diff --git a/drivers/regulator/mt6358-regulator.c b/drivers/regulator/mt635= 8-regulator.c index 658c4dbf478f..e6533fd62a82 100644 --- a/drivers/regulator/mt6358-regulator.c +++ b/drivers/regulator/mt6358-regulator.c @@ -141,6 +141,7 @@ struct mt6358_regulator_info { [MT6366_ID_##vreg] =3D { \ .desc =3D { \ .name =3D #vreg, \ + .supply_name =3D "vsys-" match, \ .of_match =3D of_match_ptr(match), \ .ops =3D &mt6358_volt_range_ops, \ .type =3D REGULATOR_VOLTAGE, \ @@ -163,10 +164,11 @@ struct mt6358_regulator_info { .modeset_mask =3D BIT(_modeset_shift), \ } =20 -#define MT6366_LDO(match, vreg, volt_ranges, enreg, enbit, vosel, vosel_ma= sk) \ +#define MT6366_LDO(match, vreg, volt_ranges, supply, enreg, enbit, vosel, = vosel_mask) \ [MT6366_ID_##vreg] =3D { \ .desc =3D { \ .name =3D #vreg, \ + .supply_name =3D supply, \ .of_match =3D of_match_ptr(match), \ .ops =3D &mt6358_volt_table_ops, \ .type =3D REGULATOR_VOLTAGE, \ @@ -187,12 +189,12 @@ struct mt6358_regulator_info { .qi =3D BIT(15), \ } =20 -#define MT6366_LDO1(match, vreg, min, max, step, \ - _da_vsel_reg, _da_vsel_mask, \ - vosel, vosel_mask) \ +#define MT6366_LDO1(match, vreg, supply, min, max, step, \ + _da_vsel_reg, _da_vsel_mask, vosel, vosel_mask) \ [MT6366_ID_##vreg] =3D { \ .desc =3D { \ .name =3D #vreg, \ + .supply_name =3D supply, \ .of_match =3D of_match_ptr(match), \ .ops =3D &mt6358_volt_range_ops, \ .type =3D REGULATOR_VOLTAGE, \ @@ -212,11 +214,11 @@ struct mt6358_regulator_info { .qi =3D BIT(0), \ } =20 -#define MT6366_REG_FIXED(match, vreg, \ - enreg, enbit, volt) \ +#define MT6366_REG_FIXED(match, vreg, supply, enreg, enbit, volt) \ [MT6366_ID_##vreg] =3D { \ .desc =3D { \ .name =3D #vreg, \ + .supply_name =3D supply, \ .of_match =3D of_match_ptr(match), \ .ops =3D &mt6358_volt_fixed_ops, \ .type =3D REGULATOR_VOLTAGE, \ @@ -585,57 +587,52 @@ static const struct mt6358_regulator_info mt6366_regu= lators[] =3D { 0x7f, MT6358_BUCK_VMODEM_DBG0, 0x7f, MT6358_VMODEM_ANA_CON0, 8), MT6366_BUCK("vs1", VS1, 1000000, 2587500, 12500, 0x7f, MT6358_BUCK_VS1_DBG0, 0x7f, MT6358_VS1_ANA_CON0, 8), - MT6366_REG_FIXED("vrf12", VRF12, - MT6358_LDO_VRF12_CON0, 0, 1200000), - MT6366_REG_FIXED("vio18", VIO18, - MT6358_LDO_VIO18_CON0, 0, 1800000), - MT6366_REG_FIXED("vfe28", VFE28, MT6358_LDO_VFE28_CON0, 0, 2800000), - MT6366_REG_FIXED("vcn28", VCN28, MT6358_LDO_VCN28_CON0, 0, 2800000), - MT6366_REG_FIXED("vxo22", VXO22, MT6358_LDO_VXO22_CON0, 0, 2200000), - MT6366_REG_FIXED("vaux18", VAUX18, - MT6358_LDO_VAUX18_CON0, 0, 1800000), - MT6366_REG_FIXED("vbif28", VBIF28, - MT6358_LDO_VBIF28_CON0, 0, 2800000), - MT6366_REG_FIXED("vio28", VIO28, MT6358_LDO_VIO28_CON0, 0, 2800000), - MT6366_REG_FIXED("va12", VA12, MT6358_LDO_VA12_CON0, 0, 1200000), - MT6366_REG_FIXED("vrf18", VRF18, MT6358_LDO_VRF18_CON0, 0, 1800000), - MT6366_REG_FIXED("vaud28", VAUD28, - MT6358_LDO_VAUD28_CON0, 0, 2800000), - MT6366_LDO("vdram2", VDRAM2, vdram2, + MT6366_REG_FIXED("vrf12", VRF12, "vs2-ldo2", MT6358_LDO_VRF12_CON0, 0, 12= 00000), + MT6366_REG_FIXED("vio18", VIO18, "vs1-ldo1", MT6358_LDO_VIO18_CON0, 0, 18= 00000), + MT6366_REG_FIXED("vfe28", VFE28, "vsys-ldo1", MT6358_LDO_VFE28_CON0, 0, 2= 800000), + MT6366_REG_FIXED("vcn28", VCN28, "vsys-ldo1", MT6358_LDO_VCN28_CON0, 0, 2= 800000), + MT6366_REG_FIXED("vxo22", VXO22, "vsys-ldo1", MT6358_LDO_VXO22_CON0, 0, 2= 200000), + MT6366_REG_FIXED("vaux18", VAUX18, "vsys-ldo1", MT6358_LDO_VAUX18_CON0, 0= , 1800000), + MT6366_REG_FIXED("vbif28", VBIF28, "vsys-ldo1", MT6358_LDO_VBIF28_CON0, 0= , 2800000), + MT6366_REG_FIXED("vio28", VIO28, "vsys-ldo2", MT6358_LDO_VIO28_CON0, 0, 2= 800000), + MT6366_REG_FIXED("va12", VA12, "vs2-ldo2", MT6358_LDO_VA12_CON0, 0, 12000= 00), + MT6366_REG_FIXED("vrf18", VRF18, "vs1-ldo1", MT6358_LDO_VRF18_CON0, 0, 18= 00000), + MT6366_REG_FIXED("vaud28", VAUD28, "vsys-ldo1", MT6358_LDO_VAUD28_CON0, 0= , 2800000), + MT6366_LDO("vdram2", VDRAM2, vdram2, "vs2-ldo1", MT6358_LDO_VDRAM2_CON0, 0, MT6358_LDO_VDRAM2_ELR0, 0x10), - MT6366_LDO("vsim1", VSIM1, vsim, + MT6366_LDO("vsim1", VSIM1, vsim, "vsys-ldo1", MT6358_LDO_VSIM1_CON0, 0, MT6358_VSIM1_ANA_CON0, 0xf00), - MT6366_LDO("vibr", VIBR, vibr, + MT6366_LDO("vibr", VIBR, vibr, "vsys-ldo3", MT6358_LDO_VIBR_CON0, 0, MT6358_VIBR_ANA_CON0, 0xf00), - MT6366_LDO("vusb", VUSB, vusb, + MT6366_LDO("vusb", VUSB, vusb, "vsys-ldo1", MT6358_LDO_VUSB_CON0_0, 0, MT6358_VUSB_ANA_CON0, 0x700), - MT6366_LDO("vefuse", VEFUSE, vefuse, + MT6366_LDO("vefuse", VEFUSE, vefuse, "vs1-ldo1", MT6358_LDO_VEFUSE_CON0, 0, MT6358_VEFUSE_ANA_CON0, 0xf00), - MT6366_LDO("vmch", VMCH, vmch_vemc, + MT6366_LDO("vmch", VMCH, vmch_vemc, "vsys-ldo2", MT6358_LDO_VMCH_CON0, 0, MT6358_VMCH_ANA_CON0, 0x700), - MT6366_LDO("vemc", VEMC, vmch_vemc, + MT6366_LDO("vemc", VEMC, vmch_vemc, "vsys-ldo3", MT6358_LDO_VEMC_CON0, 0, MT6358_VEMC_ANA_CON0, 0x700), - MT6366_LDO("vcn33", VCN33, vcn33, + MT6366_LDO("vcn33", VCN33, vcn33, "vsys-ldo3", MT6358_LDO_VCN33_CON0_0, 0, MT6358_VCN33_ANA_CON0, 0x300), - MT6366_LDO("vmc", VMC, vmc, + MT6366_LDO("vmc", VMC, vmc, "vsys-ldo2", MT6358_LDO_VMC_CON0, 0, MT6358_VMC_ANA_CON0, 0xf00), - MT6366_LDO("vsim2", VSIM2, vsim, + MT6366_LDO("vsim2", VSIM2, vsim, "vsys-ldo2", MT6358_LDO_VSIM2_CON0, 0, MT6358_VSIM2_ANA_CON0, 0xf00), - MT6366_LDO("vcn18", VCN18, mt6366_vcn18_vm18, + MT6366_LDO("vcn18", VCN18, mt6366_vcn18_vm18, "vs1-ldo1", MT6358_LDO_VCN18_CON0, 0, MT6358_VCN18_ANA_CON0, 0xf00), - MT6366_LDO("vm18", VM18, mt6366_vcn18_vm18, + MT6366_LDO("vm18", VM18, mt6366_vcn18_vm18, "vs1-ldo1", MT6358_LDO_VM18_CON0, 0, MT6358_VM18_ANA_CON0, 0xf00), - MT6366_LDO("vmddr", VMDDR, mt6366_vmddr, + MT6366_LDO("vmddr", VMDDR, mt6366_vmddr, "vs2-ldo1", MT6358_LDO_VMDDR_CON0, 0, MT6358_VMDDR_ANA_CON0, 0xf00), - MT6366_LDO1("vsram-proc11", VSRAM_PROC11, 500000, 1293750, 6250, + MT6366_LDO1("vsram-proc11", VSRAM_PROC11, "vs2-ldo3", 500000, 1293750, 62= 50, MT6358_LDO_VSRAM_PROC11_DBG0, 0x7f00, MT6358_LDO_VSRAM_CON0, 0x7f), - MT6366_LDO1("vsram-others", VSRAM_OTHERS, 500000, 1293750, 6250, + MT6366_LDO1("vsram-others", VSRAM_OTHERS, "vs2-ldo3", 500000, 1293750, 62= 50, MT6358_LDO_VSRAM_OTHERS_DBG0, 0x7f00, MT6358_LDO_VSRAM_CON2, 0x7f), - MT6366_LDO1("vsram-gpu", VSRAM_GPU, 500000, 1293750, 6250, + MT6366_LDO1("vsram-gpu", VSRAM_GPU, "vs2-ldo3", 500000, 1293750, 6250, MT6358_LDO_VSRAM_GPU_DBG0, 0x7f00, MT6358_LDO_VSRAM_CON3, 0x7f), - MT6366_LDO1("vsram-proc12", VSRAM_PROC12, 500000, 1293750, 6250, + MT6366_LDO1("vsram-proc12", VSRAM_PROC12, "vs2-ldo3", 500000, 1293750, 62= 50, MT6358_LDO_VSRAM_PROC12_DBG0, 0x7f00, MT6358_LDO_VSRAM_CON1, 0x7f), - MT6366_LDO1("vsram-core", VSRAM_CORE, 500000, 1293750, 6250, + MT6366_LDO1("vsram-core", VSRAM_CORE, "vs2-ldo3", 500000, 1293750, 6250, MT6358_LDO_VSRAM_CORE_DBG0, 0x7f00, MT6358_LDO_VSRAM_CON5, 0x7f), }; =20 --=20 2.42.0.rc1.204.g551eb34607-goog From nobody Fri Sep 20 11:44:30 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 6E32CEE49AE for ; Tue, 22 Aug 2023 08:46:38 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234034AbjHVIqi (ORCPT ); Tue, 22 Aug 2023 04:46:38 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:43142 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S234018AbjHVIqX (ORCPT ); Tue, 22 Aug 2023 04:46:23 -0400 Received: from mail-pf1-x434.google.com (mail-pf1-x434.google.com [IPv6:2607:f8b0:4864:20::434]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 8D1DEE58 for ; Tue, 22 Aug 2023 01:45:59 -0700 (PDT) Received: by mail-pf1-x434.google.com with SMTP id d2e1a72fcca58-68a410316a2so1325137b3a.0 for ; Tue, 22 Aug 2023 01:45:59 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; t=1692693958; x=1693298758; 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=hlF1u7hcM0QcOf0dBRcVX4obCkl3j7F2WIt5v6FZgoU=; b=mhxuhaGqh88+7Ene1JAl6kiwkMKSUNbySevMtCh45aHQzwcstAH3Zxc0tfaKCOyV1g ZwwqbRmdYMX9iHwcax5SYaE3jG5u3ApPmK4LhMkh2aWnTo/Z5esP4OgtPTiTgS/X4fM8 loOv7lDpdU/vDqg55o1JV3nZuZZRDW4GO7AWQ= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1692693958; x=1693298758; 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=hlF1u7hcM0QcOf0dBRcVX4obCkl3j7F2WIt5v6FZgoU=; b=A3CVa5z8W4sZajVrfHf3XtCWxB15AauwU8AnKfYVUj5ycKWqlBnCAoLOgyBDAM/vNC 77RtqV7ZEnDJWSfQ3hVhLsLy2iCf6rvKXdlVIjwJksUhasKnu/+yibH5POQylBOoAKrT nurxCwVxVJnoHgL6+U4ggiv6RsIrX4omrc/eIy4SjoUxGgUOBbPVKV6DH4+3sF5Bta5m cdWRPPqt1DK3UGFZLMQgV7OdQ22mg8cWt59MO9uYRpNf0Ksf3npL9FJaycppsl6WPiZ+ tlnFRSo6V8yYaHOemO/TSc9wltDQkx48fnlCCvUbhdHrKSse0wi4doSyJWq2aq/QUf6Y Szgg== X-Gm-Message-State: AOJu0YyMXy1Hvbg5Vd8Ak11Yw0hQ/lz9pqKEC9z2vnvoMdIuItXlfbfn 159wImMdo2Nguu9YuktqSl4KSw== X-Google-Smtp-Source: AGHT+IHjB5kNMo/7EJRgipMgtPWyKH6stKI6IA+7/JLvg5/DHP/HLoq+swtjIZEl1DUHRTjCliTjJQ== X-Received: by 2002:a05:6a20:7347:b0:140:6979:2952 with SMTP id v7-20020a056a20734700b0014069792952mr7772550pzc.47.1692693957871; Tue, 22 Aug 2023 01:45:57 -0700 (PDT) Received: from wenstp920.tpe.corp.google.com ([2401:fa00:1:10:e619:3fa0:1a90:6bb0]) by smtp.gmail.com with ESMTPSA id s26-20020aa78d5a000000b00666b012baedsm7304790pfe.158.2023.08.22.01.45.55 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 22 Aug 2023 01:45:57 -0700 (PDT) From: Chen-Yu Tsai To: Lee Jones , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Matthias Brugger , AngeloGioacchino Del Regno , Mark Brown Cc: Chen-Yu Tsai , Zhiyong Tao , devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org Subject: [PATCH v2 11/11] arm64: dts: mediatek: mt8183-kukui: Add PMIC regulator supplies Date: Tue, 22 Aug 2023 16:45:19 +0800 Message-ID: <20230822084520.564937-12-wenst@chromium.org> X-Mailer: git-send-email 2.42.0.rc1.204.g551eb34607-goog In-Reply-To: <20230822084520.564937-1-wenst@chromium.org> References: <20230822084520.564937-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 PMIC regulator node is missing regulator supplies. Now that the binding supports them, add all the power rail supplies. Most of them are fed from a system-wide semi-regulated power rail. A couple LDOs are fed from the PMIC's own buck regulator outputs. Signed-off-by: Chen-Yu Tsai --- .../arm64/boot/dts/mediatek/mt8183-kukui.dtsi | 28 +++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/arch/arm64/boot/dts/mediatek/mt8183-kukui.dtsi b/arch/arm64/bo= ot/dts/mediatek/mt8183-kukui.dtsi index 6ce16a265e05..d48c66cc8c18 100644 --- a/arch/arm64/boot/dts/mediatek/mt8183-kukui.dtsi +++ b/arch/arm64/boot/dts/mediatek/mt8183-kukui.dtsi @@ -103,6 +103,14 @@ pp3300_alw: regulator6 { regulator-max-microvolt =3D <3300000>; }; =20 + /* system wide semi-regulated power rail from charger */ + reg_vsys: regulator-vsys { + compatible =3D "regulator-fixed"; + regulator-name =3D "vsys"; + regulator-always-on; + regulator-boot-on; + }; + reserved_memory: reserved-memory { #address-cells =3D <2>; #size-cells =3D <2>; @@ -404,6 +412,26 @@ &mt6358codec { Avdd-supply =3D <&mt6358_vaud28_reg>; }; =20 +&mt6358regulator { + vsys-ldo1-supply =3D <®_vsys>; + vsys-ldo2-supply =3D <®_vsys>; + vsys-ldo3-supply =3D <®_vsys>; + vsys-vcore-supply =3D <®_vsys>; + vsys-vdram1-supply =3D <®_vsys>; + vsys-vgpu-supply =3D <®_vsys>; + vsys-vmodem-supply =3D <®_vsys>; + vsys-vpa-supply =3D <®_vsys>; + vsys-vproc11-supply =3D <®_vsys>; + vsys-vproc12-supply =3D <®_vsys>; + vsys-vs1-supply =3D <®_vsys>; + vsys-vs2-supply =3D <®_vsys>; + vs1-ldo1-supply =3D <&mt6358_vs1_reg>; + vs2-ldo1-supply =3D <&mt6358_vdram1_reg>; + vs2-ldo2-supply =3D <&mt6358_vs2_reg>; + vs2-ldo3-supply =3D <&mt6358_vs2_reg>; + vs2-ldo4-supply =3D <&mt6358_vs2_reg>; +}; + &mt6358_vgpu_reg { regulator-min-microvolt =3D <625000>; regulator-max-microvolt =3D <900000>; --=20 2.42.0.rc1.204.g551eb34607-goog