From patchwork Wed Jul 19 19:20:56 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Krzysztof Kozlowski X-Patchwork-Id: 122773 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:c923:0:b0:3e4:2afc:c1 with SMTP id j3csp2658804vqt; Wed, 19 Jul 2023 12:33:39 -0700 (PDT) X-Google-Smtp-Source: APBJJlGM4kJGUikiRxiLYFyvttV/QDpLP+4qYE/dURHTOKlA5smqJ1rq5T+OtNzW5Tk1memTp/aG X-Received: by 2002:a17:90b:1806:b0:261:cce:d1c2 with SMTP id lw6-20020a17090b180600b002610cced1c2mr4124697pjb.11.1689795219503; Wed, 19 Jul 2023 12:33:39 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1689795219; cv=none; d=google.com; s=arc-20160816; b=b2ndSSxIphVkLOnDDBXa5/YOYCx6BYV/CzMj83BEJwj/zNm8aHZ+l4lRJOxboublV1 /DcaSlYc3pEjtRIreGJjtvAH0Uf/3OK+FpzVP87CD2CRbG+z5WB7YTrEIO27jtHPS1k7 NxN4WjAtHdLsR58djOTBowSWq0VVx1+wZt6mjvk2iGWzc9qzFSQxWkOg4VsHMoOOcMnr xytrkEc/h9Xrpzy4PBIkostI7z/hl9wH1imnyIXJqfw/IdYBwO2987aE+4gymtyWqDPx 1Mo7OIw6FfUpOP/3YVQtB/fsQu/OYxMaKmg3fW9K9jfbKeDJxD4oAnduWdamQzBdHuhF evBw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from:dkim-signature; bh=61Vthzi+jTZc0OfRE0feJj3h8OeCFS14mJvBksaJnnI=; fh=gMDNvDgXNifOr/8X3vWgWK/RzGCP4TgmfRxOPNqABEM=; b=fQvtV877+yTvVxCkd0Db/jTvCLRY5E+ZOptCvQr1+0ZQWYyGaWzNRM17pkqJGdWRcX Uz1Vf2i0IHdOcQr0wa6Ja3M0iReAuhMEIxo3GAqfpe/3omVoLQ7+//UW/swrkdayBlsX b14oM/FxcNV8Lilne3gvdyarl9oQMo8azvDxmmxEAtL6b32foFl9bo3/oFcm+HK7lBgt 2m+OnZskUmGFxuPsAOgO7JX2+GkSfJUDEIZt5W1O/b8E6iXE6b96KI1tfkVwev2LiMfw +6aMAqGQ5gS22r82IyAoTWTVd30AKlL3NSZh4O8cddpmR5y5UTQPsWmwvBrDWIMM3adg UNHw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=pzNtRS1B; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id s22-20020a170902a51600b001b890417a0bsi3926099plq.410.2023.07.19.12.33.21; Wed, 19 Jul 2023 12:33:39 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=pzNtRS1B; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230517AbjGSTVJ (ORCPT + 99 others); Wed, 19 Jul 2023 15:21:09 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:49244 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229626AbjGSTVI (ORCPT ); Wed, 19 Jul 2023 15:21:08 -0400 Received: from mail-wm1-x32a.google.com (mail-wm1-x32a.google.com [IPv6:2a00:1450:4864:20::32a]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id C91041BFC for ; Wed, 19 Jul 2023 12:21:04 -0700 (PDT) Received: by mail-wm1-x32a.google.com with SMTP id 5b1f17b1804b1-3fbd33a57b6so75973035e9.2 for ; Wed, 19 Jul 2023 12:21:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1689794463; x=1692386463; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=61Vthzi+jTZc0OfRE0feJj3h8OeCFS14mJvBksaJnnI=; b=pzNtRS1B2p/uIypnjPAvtXVS4EPtglILWxAokj5oph/6BExIaa+o41LOomTOziP2nx 7PgfS3bMXFrJ3mC2uCDTmPQ+wfUKZVJryCitgfd295rOinv3xtx+2ShzS/rVCgRbZWTR lUlv9WTsLyL6Y4Pr/5kTfHlTO/5dUsX8bd+SdKsWje43p4ciOfEh1Gw9/5gU5tgkikUc uz3hT0N+/4bxOW9zlKmF4jnL3k/IO/LmFG8ZjmQPLKizvkKVb5NwyN6JAoTL38EgruL9 uFYvlVIhsOjgHSgpEjMzKq1o/kYkDqTlXVtxmJfS6cRUh2L+aH3g3RK2/m3GVdRcEglf IbxQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1689794463; x=1692386463; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=61Vthzi+jTZc0OfRE0feJj3h8OeCFS14mJvBksaJnnI=; b=dzCs1XpIgYA+ZNZq7BSqnQgyn4iOQRvazvlRwd1tZwQalN/asVsfvE77smkNst6v3i zwcFU9YskFrSqa0hOGgt5xvtmDkZWddu4NNSqZfi5ZJcoXAilJVYWiogLthvrrvdWoUx ZlfL72juMoNpZm26O2P5OSrgkrxc4Gsh2603lMS/gsgndw1z22irAoQJLNP/WlQorTgC 8jgZGcz97nseV+s5nU22sGRFC5Q1AgWOICOGDzvAA2NYxUktYQFk+UTE1Nl9ZlVodFQb YnhrkPPN6aM+NkWXjoWUF2roArWyUr7iOLvZ36wmMt7NmKqW2tsB0Y3VttoZ+y6ezRcs RBlA== X-Gm-Message-State: ABy/qLa7YIFyYU7+hfOFWMNgkqYDKVPU+Op6b8TyTwQToVt6WvS+Pyrz 5LKygHafM1+LPdK1nQz0OOlIXA== X-Received: by 2002:a1c:7501:0:b0:3fc:10:b25f with SMTP id o1-20020a1c7501000000b003fc0010b25fmr5620160wmc.15.1689794463153; Wed, 19 Jul 2023 12:21:03 -0700 (PDT) Received: from krzk-bin.. ([178.197.223.104]) by smtp.gmail.com with ESMTPSA id r17-20020adfe691000000b0031444673643sm5991086wrm.57.2023.07.19.12.21.01 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 19 Jul 2023 12:21:02 -0700 (PDT) From: Krzysztof Kozlowski To: Bjorn Andersson , Andy Gross , Konrad Dybcio , Linus Walleij , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Catalin Marinas , Will Deacon , Srinivas Kandagatla , linux-arm-msm@vger.kernel.org, linux-gpio@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org Cc: Krzysztof Kozlowski , Rob Herring Subject: [PATCH v3 1/3] dt-bindings: pinctrl: qcom,sm8350-lpass-lpi: add SM8350 LPASS TLMM Date: Wed, 19 Jul 2023 21:20:56 +0200 Message-Id: <20230719192058.433517-1-krzysztof.kozlowski@linaro.org> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1771878712360945378 X-GMAIL-MSGID: 1771878712360945378 Add bindings for pin controller in SM8350 Low Power Audio SubSystem (LPASS). Signed-off-by: Krzysztof Kozlowski Reviewed-by: Rob Herring --- Changes in v3: 1. Correct subject typo biding->bindings. 2. Add Rb tag. 3. Not dropping the label as Rob asked for, because it is actually used in the example. Changes in v2: 1. None --- .../qcom,sm8350-lpass-lpi-pinctrl.yaml | 143 ++++++++++++++++++ 1 file changed, 143 insertions(+) create mode 100644 Documentation/devicetree/bindings/pinctrl/qcom,sm8350-lpass-lpi-pinctrl.yaml diff --git a/Documentation/devicetree/bindings/pinctrl/qcom,sm8350-lpass-lpi-pinctrl.yaml b/Documentation/devicetree/bindings/pinctrl/qcom,sm8350-lpass-lpi-pinctrl.yaml new file mode 100644 index 000000000000..2e65ae08dd21 --- /dev/null +++ b/Documentation/devicetree/bindings/pinctrl/qcom,sm8350-lpass-lpi-pinctrl.yaml @@ -0,0 +1,143 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/pinctrl/qcom,sm8350-lpass-lpi-pinctrl.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Qualcomm SM8350 SoC LPASS LPI TLMM + +maintainers: + - Krzysztof Kozlowski + - Srinivas Kandagatla + +description: + Top Level Mode Multiplexer pin controller in the Low Power Audio SubSystem + (LPASS) Low Power Island (LPI) of Qualcomm SM8350 SoC. + +properties: + compatible: + const: qcom,sm8350-lpass-lpi-pinctrl + + reg: + items: + - description: LPASS LPI TLMM Control and Status registers + - description: LPASS LPI MCC registers + + clocks: + items: + - description: LPASS Core voting clock + - description: LPASS Audio voting clock + + clock-names: + items: + - const: core + - const: audio + + gpio-controller: true + + "#gpio-cells": + description: Specifying the pin number and flags, as defined in + include/dt-bindings/gpio/gpio.h + const: 2 + + gpio-ranges: + maxItems: 1 + +patternProperties: + "-state$": + oneOf: + - $ref: "#/$defs/qcom-sm8350-lpass-state" + - patternProperties: + "-pins$": + $ref: "#/$defs/qcom-sm8350-lpass-state" + additionalProperties: false + +$defs: + qcom-sm8350-lpass-state: + type: object + description: + Pinctrl node's client devices use subnodes for desired pin configuration. + Client device subnodes use below standard properties. + $ref: /schemas/pinctrl/pincfg-node.yaml + + properties: + pins: + description: + List of gpio pins affected by the properties specified in this + subnode. + items: + pattern: "^gpio([0-9]|1[0-9]|2[0-2])$" + + function: + enum: [ dmic1_clk, dmic1_data, dmic2_clk, dmic2_data, dmic3_clk, + dmic3_data, dmic4_clk, dmic4_data, ext_mclk1_a, ext_mclk1_b, + ext_mclk1_c, ext_mclk1_d, ext_mclk1_e, gpio, i2s0_clk, + i2s0_data, i2s0_ws, i2s1_clk, i2s1_data, i2s1_ws, i2s2_clk, + i2s2_data, i2s2_ws, i2s3_clk, i2s3_data, i2s3_ws, i2s4_clk, + i2s4_data, i2s4_ws, slimbus_clk, slimbus_data, swr_rx_clk, + swr_rx_data, swr_tx_clk, swr_tx_data, wsa_swr_clk, + wsa_swr_data, wsa2_swr_clk, wsa2_swr_data ] + description: + Specify the alternative function to be configured for the specified + pins. + + drive-strength: + enum: [2, 4, 6, 8, 10, 12, 14, 16] + default: 2 + description: + Selects the drive strength for the specified pins, in mA. + + slew-rate: + enum: [0, 1, 2, 3] + default: 0 + description: | + 0: No adjustments + 1: Higher Slew rate (faster edges) + 2: Lower Slew rate (slower edges) + 3: Reserved (No adjustments) + + bias-bus-hold: true + bias-pull-down: true + bias-pull-up: true + bias-disable: true + input-enable: true + output-high: true + output-low: true + + required: + - pins + - function + + additionalProperties: false + +allOf: + - $ref: pinctrl.yaml# + +required: + - compatible + - reg + - clocks + - clock-names + - gpio-controller + - "#gpio-cells" + - gpio-ranges + +additionalProperties: false + +examples: + - | + #include + + lpass_tlmm: pinctrl@33c0000 { + compatible = "qcom,sm8350-lpass-lpi-pinctrl"; + reg = <0x033c0000 0x20000>, + <0x03550000 0x10000>; + + clocks = <&q6afecc LPASS_HW_MACRO_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>, + <&q6afecc LPASS_HW_DCODEC_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>; + clock-names = "core", "audio"; + + gpio-controller; + #gpio-cells = <2>; + gpio-ranges = <&lpass_tlmm 0 0 15>; + }; From patchwork Wed Jul 19 19:20:57 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Krzysztof Kozlowski X-Patchwork-Id: 122772 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:c923:0:b0:3e4:2afc:c1 with SMTP id j3csp2658799vqt; Wed, 19 Jul 2023 12:33:39 -0700 (PDT) X-Google-Smtp-Source: APBJJlGzoF3K2fJlp9HlhcW4E7SoRVcR8S3WAhNBhxRGFYNIoGcPzHGkl0NUqPCbC/ihwMZyipSK X-Received: by 2002:a17:90a:ae09:b0:263:4157:66de with SMTP id t9-20020a17090aae0900b00263415766demr12398204pjq.42.1689795219430; Wed, 19 Jul 2023 12:33:39 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1689795219; cv=none; d=google.com; s=arc-20160816; b=mwK68XoH3OuGhIEM47OIkHbyHUMfGgSXUMFsXAT5N/ke8t/ho5DIvj9XiaeAepFRf6 LMT/JOhzHFYWVXq1RohbC6/2ilgK8hIBuCmmbhIC5qNC9iQvWr43wkZmhfemeaeKwxLy DcGn+wEvZJoXo31jFVQD4iP5jZfljW7G3HJmFa23ZH/7hPxwoC8QZKQmiZxBNrVrtzCl BOgTvGKfcwu/p7K8DkBt5pbi2ElMtLNFrhN5XnC2XEmqi22nTJKKGy86506Pb/TABUA/ YmStBj0x/972p8osDqxjs2GSvhDLiWEHct5csi64Ll3MKjzgG0/8qIDzzi/U1YBKUTRu SDWg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=vehK5tAJWBKnbmCsKENLB4Hw3eCsFjL6udhsVOOOEy0=; fh=hsz1ab2FCOo40rmMJtM+dIGUxj8ISVzo+QsBtbXs69w=; b=i+IlcfAQwlo4KidRfyDF7Nup0N+71riYbz79XKAXrRJk1vPLHej2krR5ar8ZSAmdjH 8vwklBLoQpI5BOAjA3N/2vUHb2Nb5tZGjHIlnX9XLU/Tp74Lu86yDplBNXMeYxaajCBs qt742IPFeNVWD9L+fKj6qz9Tv4zFS/+dHd6VckeleFCQ0Dmd68xMfy1Qk5mJc7+G8Orj qgiP3FDCErv4123Oo0CF0QYSb+XP6zVDqTWxl72B6LfpFNlxaqAgW0a+bvHS82ouRLVP QBaZHMcVH+G7HHX+6Qcwm0+gnATe9ZuZH6WxwXuczlQhO3e7SwdSGijOnipg3lMnphhY Uhgg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=NMKXeV4t; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id s24-20020a17090aa11800b0025eeb3cc4b2si1842530pjp.9.2023.07.19.12.33.22; Wed, 19 Jul 2023 12:33:39 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=NMKXeV4t; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231147AbjGSTVM (ORCPT + 99 others); Wed, 19 Jul 2023 15:21:12 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:49254 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230390AbjGSTVI (ORCPT ); Wed, 19 Jul 2023 15:21:08 -0400 Received: from mail-wr1-x432.google.com (mail-wr1-x432.google.com [IPv6:2a00:1450:4864:20::432]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id F18251FD2 for ; Wed, 19 Jul 2023 12:21:06 -0700 (PDT) Received: by mail-wr1-x432.google.com with SMTP id ffacd0b85a97d-31716932093so1333088f8f.3 for ; Wed, 19 Jul 2023 12:21:06 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1689794465; x=1692386465; 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=vehK5tAJWBKnbmCsKENLB4Hw3eCsFjL6udhsVOOOEy0=; b=NMKXeV4tXLXJrZDWuMkzpv6SaMg/+wX3TWKtivlpj/k9ZKkheaqsKlpw7htHzjsTwd GJ57fKtj55n9L7Up+sh1iZp8hP6w9t+Z2fBixutWeW3iMhtvQH238/3E51TnNrfwApPk Z+RhCR6DRNxHDjXWdv+DkAmxnqe+QtJB1dYEi72qHRTbgRw+TqOArkQAnNCLu1bJjtmZ AAMQiTXD71K7dPxRS6ahIYCX2m1HpzxqZ/C4NhZUK2Q2P5w+17bthpZy9aW8Ard7CnOg YSH29xjjgbRt/3AjwvbhGNSFkX1RDiN8oJUrz+TqT1LzlRsWGAE4TyxCPOqAhwjA07b+ KLtw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1689794465; x=1692386465; 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=vehK5tAJWBKnbmCsKENLB4Hw3eCsFjL6udhsVOOOEy0=; b=YLSr9rjLD9tTeZHVYzKid0a0gg2QBUKIa1j/SYbUzMj0KD+3xNS8OYcm83rjOyJNC/ LP6uotT9A6ZEuJGAi3EQi4VkuIGckn9PJRFuGmE23mGtFlLcNClcLobj0n6+ks6AbyDB bq+TRPY3lvgeq7iwdAfTxilAz2S7JAMkwa3b52AkMtfLo00h2RtdJVsJgtBckx6DRFog YNysQzRCm4o/CE8wBoLGSNTCwD80K2tyIM3DDI6kHBME1iprtrWxmHc5ujsYnMLxUvu6 5hdwO9tjM7LnLxa72+r50+AoBSMxfJDsz+h+vbI3Y3EUy6904oXBft17fcjzM0/iEvna VkhA== X-Gm-Message-State: ABy/qLZPGNwVAUbnyBK+GVq0SmZt0vAAJ/pbpGYy6GrKSKkOBw4sTwJt k+cirAsoqUciqrlZHlmHHRmW9h8dv/x1gtF5NrQ= X-Received: by 2002:a5d:4d47:0:b0:314:449e:8536 with SMTP id a7-20020a5d4d47000000b00314449e8536mr617747wru.10.1689794465371; Wed, 19 Jul 2023 12:21:05 -0700 (PDT) Received: from krzk-bin.. ([178.197.223.104]) by smtp.gmail.com with ESMTPSA id r17-20020adfe691000000b0031444673643sm5991086wrm.57.2023.07.19.12.21.03 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 19 Jul 2023 12:21:04 -0700 (PDT) From: Krzysztof Kozlowski To: Bjorn Andersson , Andy Gross , Konrad Dybcio , Linus Walleij , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Catalin Marinas , Will Deacon , Srinivas Kandagatla , linux-arm-msm@vger.kernel.org, linux-gpio@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org Cc: Krzysztof Kozlowski Subject: [PATCH v3 2/3] pinctrl: qcom: sm8350-lpass-lpi: add SM8350 LPASS TLMM Date: Wed, 19 Jul 2023 21:20:57 +0200 Message-Id: <20230719192058.433517-2-krzysztof.kozlowski@linaro.org> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230719192058.433517-1-krzysztof.kozlowski@linaro.org> References: <20230719192058.433517-1-krzysztof.kozlowski@linaro.org> MIME-Version: 1.0 X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1771878711646362062 X-GMAIL-MSGID: 1771878711646362062 Add driver for pin controller in Low Power Audio SubSystem (LPASS). The driver is similar to SM8250 LPASS pin controller, with difference in one new pin (gpio14) belonging to swr_tx_data. Signed-off-by: Krzysztof Kozlowski --- Changes in v3: 1. Drop incorrect LPI_MUX_swr_tx_data2 function. 2. Correct gpio14 group to swr_tx_data in sm8350_groups. 3. Add MODULE_AUTHOR. Changes in v2: 1. Typo in commit msg SM8450->SM8250 2. Typo in Kconfig entry (SM3550->SM8350) --- drivers/pinctrl/qcom/Kconfig | 10 ++ drivers/pinctrl/qcom/Makefile | 1 + .../pinctrl/qcom/pinctrl-sm8350-lpass-lpi.c | 167 ++++++++++++++++++ 3 files changed, 178 insertions(+) create mode 100644 drivers/pinctrl/qcom/pinctrl-sm8350-lpass-lpi.c diff --git a/drivers/pinctrl/qcom/Kconfig b/drivers/pinctrl/qcom/Kconfig index 634c75336983..643f1d7a531e 100644 --- a/drivers/pinctrl/qcom/Kconfig +++ b/drivers/pinctrl/qcom/Kconfig @@ -77,6 +77,16 @@ config PINCTRL_SM8250_LPASS_LPI Qualcomm Technologies Inc LPASS (Low Power Audio SubSystem) LPI (Low Power Island) found on the Qualcomm Technologies Inc SM8250 platform. +config PINCTRL_SM8350_LPASS_LPI + tristate "Qualcomm Technologies Inc SM8350 LPASS LPI pin controller driver" + depends on ARM64 || COMPILE_TEST + depends on PINCTRL_LPASS_LPI + help + This is the pinctrl, pinmux, pinconf and gpiolib driver for the + Qualcomm Technologies Inc LPASS (Low Power Audio SubSystem) LPI + (Low Power Island) found on the Qualcomm Technologies Inc SM8350 + platform. + config PINCTRL_SM8450_LPASS_LPI tristate "Qualcomm Technologies Inc SM8450 LPASS LPI pin controller driver" depends on ARM64 || COMPILE_TEST diff --git a/drivers/pinctrl/qcom/Makefile b/drivers/pinctrl/qcom/Makefile index 426ddbf35f32..76ffcfbffc8e 100644 --- a/drivers/pinctrl/qcom/Makefile +++ b/drivers/pinctrl/qcom/Makefile @@ -52,6 +52,7 @@ obj-$(CONFIG_PINCTRL_SM8150) += pinctrl-sm8150.o obj-$(CONFIG_PINCTRL_SM8250) += pinctrl-sm8250.o obj-$(CONFIG_PINCTRL_SM8250_LPASS_LPI) += pinctrl-sm8250-lpass-lpi.o obj-$(CONFIG_PINCTRL_SM8350) += pinctrl-sm8350.o +obj-$(CONFIG_PINCTRL_SM8350_LPASS_LPI) += pinctrl-sm8350-lpass-lpi.o obj-$(CONFIG_PINCTRL_SM8450) += pinctrl-sm8450.o obj-$(CONFIG_PINCTRL_SM8450_LPASS_LPI) += pinctrl-sm8450-lpass-lpi.o obj-$(CONFIG_PINCTRL_SM8550) += pinctrl-sm8550.o diff --git a/drivers/pinctrl/qcom/pinctrl-sm8350-lpass-lpi.c b/drivers/pinctrl/qcom/pinctrl-sm8350-lpass-lpi.c new file mode 100644 index 000000000000..f889c779bccd --- /dev/null +++ b/drivers/pinctrl/qcom/pinctrl-sm8350-lpass-lpi.c @@ -0,0 +1,167 @@ +// SPDX-License-Identifier: GPL-2.0-only +/* + * Copyright (c) 2016-2019, The Linux Foundation. All rights reserved. + * Copyright (c) 2020-2023 Linaro Ltd. + */ + +#include +#include +#include + +#include "pinctrl-lpass-lpi.h" + +enum lpass_lpi_functions { + LPI_MUX_dmic1_clk, + LPI_MUX_dmic1_data, + LPI_MUX_dmic2_clk, + LPI_MUX_dmic2_data, + LPI_MUX_dmic3_clk, + LPI_MUX_dmic3_data, + LPI_MUX_i2s1_clk, + LPI_MUX_i2s1_data, + LPI_MUX_i2s1_ws, + LPI_MUX_i2s2_clk, + LPI_MUX_i2s2_data, + LPI_MUX_i2s2_ws, + LPI_MUX_qua_mi2s_data, + LPI_MUX_qua_mi2s_sclk, + LPI_MUX_qua_mi2s_ws, + LPI_MUX_swr_rx_clk, + LPI_MUX_swr_rx_data, + LPI_MUX_swr_tx_clk, + LPI_MUX_swr_tx_data, + LPI_MUX_wsa_swr_clk, + LPI_MUX_wsa_swr_data, + LPI_MUX_gpio, + LPI_MUX__, +}; + +static int gpio0_pins[] = { 0 }; +static int gpio1_pins[] = { 1 }; +static int gpio2_pins[] = { 2 }; +static int gpio3_pins[] = { 3 }; +static int gpio4_pins[] = { 4 }; +static int gpio5_pins[] = { 5 }; +static int gpio6_pins[] = { 6 }; +static int gpio7_pins[] = { 7 }; +static int gpio8_pins[] = { 8 }; +static int gpio9_pins[] = { 9 }; +static int gpio10_pins[] = { 10 }; +static int gpio11_pins[] = { 11 }; +static int gpio12_pins[] = { 12 }; +static int gpio13_pins[] = { 13 }; +static int gpio14_pins[] = { 14 }; + +static const struct pinctrl_pin_desc sm8350_lpi_pins[] = { + PINCTRL_PIN(0, "gpio0"), + PINCTRL_PIN(1, "gpio1"), + PINCTRL_PIN(2, "gpio2"), + PINCTRL_PIN(3, "gpio3"), + PINCTRL_PIN(4, "gpio4"), + PINCTRL_PIN(5, "gpio5"), + PINCTRL_PIN(6, "gpio6"), + PINCTRL_PIN(7, "gpio7"), + PINCTRL_PIN(8, "gpio8"), + PINCTRL_PIN(9, "gpio9"), + PINCTRL_PIN(10, "gpio10"), + PINCTRL_PIN(11, "gpio11"), + PINCTRL_PIN(12, "gpio12"), + PINCTRL_PIN(13, "gpio13"), + PINCTRL_PIN(14, "gpio14"), +}; + +static const char * const swr_tx_clk_groups[] = { "gpio0" }; +static const char * const swr_tx_data_groups[] = { "gpio1", "gpio2", "gpio5", "gpio14" }; +static const char * const swr_rx_clk_groups[] = { "gpio3" }; +static const char * const swr_rx_data_groups[] = { "gpio4", "gpio5" }; +static const char * const dmic1_clk_groups[] = { "gpio6" }; +static const char * const dmic1_data_groups[] = { "gpio7" }; +static const char * const dmic2_clk_groups[] = { "gpio8" }; +static const char * const dmic2_data_groups[] = { "gpio9" }; +static const char * const i2s2_clk_groups[] = { "gpio10" }; +static const char * const i2s2_ws_groups[] = { "gpio11" }; +static const char * const dmic3_clk_groups[] = { "gpio12" }; +static const char * const dmic3_data_groups[] = { "gpio13" }; +static const char * const qua_mi2s_sclk_groups[] = { "gpio0" }; +static const char * const qua_mi2s_ws_groups[] = { "gpio1" }; +static const char * const qua_mi2s_data_groups[] = { "gpio2", "gpio3", "gpio4" }; +static const char * const i2s1_clk_groups[] = { "gpio6" }; +static const char * const i2s1_ws_groups[] = { "gpio7" }; +static const char * const i2s1_data_groups[] = { "gpio8", "gpio9" }; +static const char * const wsa_swr_clk_groups[] = { "gpio10" }; +static const char * const wsa_swr_data_groups[] = { "gpio11" }; +static const char * const i2s2_data_groups[] = { "gpio12", "gpio12" }; + +static const struct lpi_pingroup sm8350_groups[] = { + LPI_PINGROUP(0, 0, swr_tx_clk, qua_mi2s_sclk, _, _), + LPI_PINGROUP(1, 2, swr_tx_data, qua_mi2s_ws, _, _), + LPI_PINGROUP(2, 4, swr_tx_data, qua_mi2s_data, _, _), + LPI_PINGROUP(3, 8, swr_rx_clk, qua_mi2s_data, _, _), + LPI_PINGROUP(4, 10, swr_rx_data, qua_mi2s_data, _, _), + LPI_PINGROUP(5, 12, swr_tx_data, swr_rx_data, _, _), + LPI_PINGROUP(6, LPI_NO_SLEW, dmic1_clk, i2s1_clk, _, _), + LPI_PINGROUP(7, LPI_NO_SLEW, dmic1_data, i2s1_ws, _, _), + LPI_PINGROUP(8, LPI_NO_SLEW, dmic2_clk, i2s1_data, _, _), + LPI_PINGROUP(9, LPI_NO_SLEW, dmic2_data, i2s1_data, _, _), + LPI_PINGROUP(10, 16, i2s2_clk, wsa_swr_clk, _, _), + LPI_PINGROUP(11, 18, i2s2_ws, wsa_swr_data, _, _), + LPI_PINGROUP(12, LPI_NO_SLEW, dmic3_clk, i2s2_data, _, _), + LPI_PINGROUP(13, LPI_NO_SLEW, dmic3_data, i2s2_data, _, _), + LPI_PINGROUP(14, 6, swr_tx_data, _, _, _), +}; + +static const struct lpi_function sm8350_functions[] = { + LPI_FUNCTION(dmic1_clk), + LPI_FUNCTION(dmic1_data), + LPI_FUNCTION(dmic2_clk), + LPI_FUNCTION(dmic2_data), + LPI_FUNCTION(dmic3_clk), + LPI_FUNCTION(dmic3_data), + LPI_FUNCTION(i2s1_clk), + LPI_FUNCTION(i2s1_data), + LPI_FUNCTION(i2s1_ws), + LPI_FUNCTION(i2s2_clk), + LPI_FUNCTION(i2s2_data), + LPI_FUNCTION(i2s2_ws), + LPI_FUNCTION(qua_mi2s_data), + LPI_FUNCTION(qua_mi2s_sclk), + LPI_FUNCTION(qua_mi2s_ws), + LPI_FUNCTION(swr_rx_clk), + LPI_FUNCTION(swr_rx_data), + LPI_FUNCTION(swr_tx_clk), + LPI_FUNCTION(swr_tx_data), + LPI_FUNCTION(wsa_swr_clk), + LPI_FUNCTION(wsa_swr_data), +}; + +static const struct lpi_pinctrl_variant_data sm8350_lpi_data = { + .pins = sm8350_lpi_pins, + .npins = ARRAY_SIZE(sm8350_lpi_pins), + .groups = sm8350_groups, + .ngroups = ARRAY_SIZE(sm8350_groups), + .functions = sm8350_functions, + .nfunctions = ARRAY_SIZE(sm8350_functions), +}; + +static const struct of_device_id lpi_pinctrl_of_match[] = { + { + .compatible = "qcom,sm8350-lpass-lpi-pinctrl", + .data = &sm8350_lpi_data, + }, + { } +}; +MODULE_DEVICE_TABLE(of, lpi_pinctrl_of_match); + +static struct platform_driver lpi_pinctrl_driver = { + .driver = { + .name = "qcom-sm8350-lpass-lpi-pinctrl", + .of_match_table = lpi_pinctrl_of_match, + }, + .probe = lpi_pinctrl_probe, + .remove = lpi_pinctrl_remove, +}; +module_platform_driver(lpi_pinctrl_driver); + +MODULE_AUTHOR("Krzysztof Kozlowski "); +MODULE_DESCRIPTION("QTI SM8350 LPI GPIO pin control driver"); +MODULE_LICENSE("GPL"); From patchwork Wed Jul 19 19:20:58 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Krzysztof Kozlowski X-Patchwork-Id: 122799 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:c923:0:b0:3e4:2afc:c1 with SMTP id j3csp2683286vqt; Wed, 19 Jul 2023 13:16:12 -0700 (PDT) X-Google-Smtp-Source: APBJJlFmt0iB2GCCZEpsO+nAyTHK/Euc3VqxKcUlgr3z1AzV8Ga8krxh6sSWmNvIksPZulwUriqW X-Received: by 2002:aa7:d44a:0:b0:51a:7bcd:a82d with SMTP id q10-20020aa7d44a000000b0051a7bcda82dmr3266790edr.23.1689797771878; Wed, 19 Jul 2023 13:16:11 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1689797771; cv=none; d=google.com; s=arc-20160816; b=mnx/bNw0ddoK577/vnjfg24DUpbWjhWHlv3gawlF8r5brmHiWq1oCQVN81BoZvswse 9l2IktjQVnm4nIjllb5ZbYZsdUCGnyYiFFNRblH1GpkHyQxdkDj15Runyn734FqAmuzP 6xBe/w2uWm1SNI3nPHHCChv1i/mspC2AgqwuyRJb26wL2oQlDgGQGJMOGPhFDrzcXnhS el1rrSdpy0gUGF121b8fO9Dg5GPUCvmvMzmxD9qN8ilPnpobr/1S90sXaNwKrNCFvYXQ mSWygc31rh1F/aODfGophiTKHt1MpaXodxl0dKMekaq6L2oM9Wusf03mHNU2ZMLhvAff XnHw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=G8Ghoj2qWhSzudbHZ/AY8E639NOQWAULVpg/aOv7ufY=; fh=hsz1ab2FCOo40rmMJtM+dIGUxj8ISVzo+QsBtbXs69w=; b=nm68477IqNvssc57Dlnqf3REsMoFh2h7dHHVfKfw109PqOOSsKWq0f8ufoAaVFXv2D EghGfC8ydf6J72s1/acf51IVq2puBXIhQUrDYtHaHvHsNqeaYkidoPt+ZqYARgpWQ5/h 0Wr9pPTZqD97fnq1fvK7OSq66MNEvtat80V3gZzwOuZu/qv5+Wdd++1t2XRcLuwZ7Awt yht59UZzbo0odWZHCBlba6NPAk9f+ZGJ6fSixN+WN1dyeOF91E0kXK5czaTUXV0LJw69 tXNduk9/v4a/cU7iDWD8MPvuMk0rUBRYj/x7QllaexKAFHIFHQuXd5hqFFB+MxYehNmh AZHw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=S0lt8deQ; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id m11-20020aa7c48b000000b0051e0fa09c6esi3200358edq.16.2023.07.19.13.15.44; Wed, 19 Jul 2023 13:16:11 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=S0lt8deQ; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229651AbjGSTVR (ORCPT + 99 others); Wed, 19 Jul 2023 15:21:17 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:49264 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231130AbjGSTVL (ORCPT ); Wed, 19 Jul 2023 15:21:11 -0400 Received: from mail-wr1-x435.google.com (mail-wr1-x435.google.com [IPv6:2a00:1450:4864:20::435]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 10C661FC8 for ; Wed, 19 Jul 2023 12:21:09 -0700 (PDT) Received: by mail-wr1-x435.google.com with SMTP id ffacd0b85a97d-31716932093so1333112f8f.3 for ; Wed, 19 Jul 2023 12:21:08 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1689794467; x=1692386467; 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=G8Ghoj2qWhSzudbHZ/AY8E639NOQWAULVpg/aOv7ufY=; b=S0lt8deQ2yHm2Uo8ZdcQnpBhnocPZzlbO9LLVW3ewBqa9VvKyd8ZZgnVbiLpAqDNqG 7Ob8tW46PtpPtplajubuRZeYsm6uSJ7p/pPAjkoOOU9SO1EpSOmcjZN9UTJoaurS0R94 1j6Uoru8Gh7DCgrxh8Pgh51+VPF1JEGlTLCUrGKdgNJ2960Px9Rxru2u3u1xY48KX95L qQjBs0ZoqfLOThNl2w+0uGouudNi/ZMeBgQT/cWs3PJVVTRK7ZZPD0BvSa8HRbzXYc6n 6C6QhHO4uWWFWeq7lTdEeIfeYyRQ9aMx0IlcT4yF+GkuG8MY8kwA7y7ub14C2z35CEz2 KI8g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1689794467; x=1692386467; 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=G8Ghoj2qWhSzudbHZ/AY8E639NOQWAULVpg/aOv7ufY=; b=ByYnPbaSF5lg/77QBzA5SkBFkF/EgL3GYdicouBWuEp1rs6ubtaiTWvgYcaveYW9cf 94/rwmui6TENBVjbwV7p76bzj3aGG7jYb2b+aqAVW5rcedIu0lMNt8ztO0jdPIVcgG+i ZLqAQNvIc2Z8mEHrucgF2vRp+8uSV2SM/xCJIoBwlKzBu6naMFG7YzlLgPBK2u9upH4V xl4uoQ0ElyC9ko2doyLnmvQQolXISV+pDBkk1qmWYFGVu6ULTQpyDcQFWu6IlLolvprR vAxmMpycIPr13+PP0TvqGhHE+YJKShJPivy5HbmWhsloVN8SXqgAgHhUx3YDw9S/bvVn Q7FQ== X-Gm-Message-State: ABy/qLZyc6pOMtet5X32siCqCBrmgO1zjm/xsnMcTnIM5RcqLT4xzQdP 6w4ubqodrDAOJXaxxqC+LgD0UA== X-Received: by 2002:a5d:4a49:0:b0:314:1a98:ebc0 with SMTP id v9-20020a5d4a49000000b003141a98ebc0mr618964wrs.26.1689794467675; Wed, 19 Jul 2023 12:21:07 -0700 (PDT) Received: from krzk-bin.. ([178.197.223.104]) by smtp.gmail.com with ESMTPSA id r17-20020adfe691000000b0031444673643sm5991086wrm.57.2023.07.19.12.21.05 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 19 Jul 2023 12:21:07 -0700 (PDT) From: Krzysztof Kozlowski To: Bjorn Andersson , Andy Gross , Konrad Dybcio , Linus Walleij , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Catalin Marinas , Will Deacon , Srinivas Kandagatla , linux-arm-msm@vger.kernel.org, linux-gpio@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org Cc: Krzysztof Kozlowski Subject: [PATCH v3 3/3] arm64: defconfig: enable Qualcomm SM8350 LPASS pinctrl Date: Wed, 19 Jul 2023 21:20:58 +0200 Message-Id: <20230719192058.433517-3-krzysztof.kozlowski@linaro.org> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230719192058.433517-1-krzysztof.kozlowski@linaro.org> References: <20230719192058.433517-1-krzysztof.kozlowski@linaro.org> MIME-Version: 1.0 X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1771881388475421659 X-GMAIL-MSGID: 1771881388475421659 Enable the Qualcomm SM8350 LPASS TLMM pin controller driver for providing GPIOs/pins for audio block on SM8350 based boards (e.g. HDK8350). Signed-off-by: Krzysztof Kozlowski Acked-by: Linus Walleij --- Changes in v3: 1. None Changes in v2: 1. Add Ack --- arch/arm64/configs/defconfig | 1 + 1 file changed, 1 insertion(+) diff --git a/arch/arm64/configs/defconfig b/arch/arm64/configs/defconfig index 6cbf6eb59378..cf2a811e45f1 100644 --- a/arch/arm64/configs/defconfig +++ b/arch/arm64/configs/defconfig @@ -594,6 +594,7 @@ CONFIG_PINCTRL_SM8150=y CONFIG_PINCTRL_SM8250=y CONFIG_PINCTRL_SM8250_LPASS_LPI=m CONFIG_PINCTRL_SM8350=y +CONFIG_PINCTRL_SM8350_LPASS_LPI=m CONFIG_PINCTRL_SM8450=y CONFIG_PINCTRL_SM8450_LPASS_LPI=m CONFIG_PINCTRL_SC8280XP_LPASS_LPI=m