From patchwork Thu Sep 23 03:32:23 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Shawn Guo X-Patchwork-Id: 514526 Delivered-To: patch@linaro.org Received: by 2002:a02:c816:0:0:0:0:0 with SMTP id p22csp11685jao; Wed, 22 Sep 2021 20:32:56 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzhwPJLM6AUcBp8kZ32T3wvGSh6SOgsk/WeJg9oPbYmIAEvR4cM25Jq6qVSWwhBGsiufd6Y X-Received: by 2002:a17:906:1319:: with SMTP id w25mr2788127ejb.552.1632367976069; Wed, 22 Sep 2021 20:32:56 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1632367976; cv=none; d=google.com; s=arc-20160816; b=uF2no5nXwQwNbCVirWGRgrCeOJaKfvw1CjBbgs39QBh/sXuiOHWF7X6/DYSRytIJ/7 2C0sCtQOQWf4iSy4cORoS3Pv8h+0l2dMSJXgzLg9rA1sk8xeNb5U3FRc7NZEZkyFV2Q7 7T56fvssk3VFUm5qDqGibuyKsJCANZVGH76xgbKMIU3xSWbsaYtq/ZZPV675V0F31Nua YXRZnrQj2xUccznMzuK/KMYvEFchnSLwns8+xf/6IBPk6PRFkeJywfMsEgzYWTbXb86o /iZcQxwIUmaUEjJ0g40e7M0gcnmKUh1g8YZy/Mwuo6Q9zlAMG6fSuf4rZGzJCXAXr2WH 37IA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:references:in-reply-to:message-id:date:subject :cc:to:from:dkim-signature; bh=AyW/5UqkKbj/laxIvLvwrK1s8Ju5HDTao9QP66liyh0=; b=xI/nIAhdjhwUx3mT/0jzhjs1FT7/eKbMXdmfmrR0GSXi+YfmHHirJEKLrSxR66Ki8s 6/YJxF6AE4HXdweDQHytIKBzkZnBsjdjyTEHUKNRlgHaHAmBuAunx8LACU1YahxJKlil e1KUZ8OErywnIZ07b/Ft251nj6PoAjdtiZX+nxhdJbgekWkCR2eEuyde64puANf7E5Oz 0U4enEU2WlZggejf3Z+4EqsthgF6Wt6+5zTqkHGCYSiFpQ3rqO39sRWs/lkWBLfmScNU uHlp7h2GIVMtkutBrnB91SHpm5wTzVqzJ2WrryPX2nydqkoC9A8EjhgSpkj+RWe/yvgm 4RdA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=WhXoXn9i; spf=pass (google.com: domain of devicetree-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=devicetree-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id w2si4924946ejk.273.2021.09.22.20.32.55; Wed, 22 Sep 2021 20:32:56 -0700 (PDT) Received-SPF: pass (google.com: domain of devicetree-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=WhXoXn9i; spf=pass (google.com: domain of devicetree-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=devicetree-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 S238938AbhIWDeZ (ORCPT + 7 others); Wed, 22 Sep 2021 23:34:25 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:39116 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S239078AbhIWDeY (ORCPT ); Wed, 22 Sep 2021 23:34:24 -0400 Received: from mail-pg1-x52b.google.com (mail-pg1-x52b.google.com [IPv6:2607:f8b0:4864:20::52b]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 5206FC061757 for ; Wed, 22 Sep 2021 20:32:53 -0700 (PDT) Received: by mail-pg1-x52b.google.com with SMTP id 81so1404464pgb.0 for ; Wed, 22 Sep 2021 20:32:53 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=AyW/5UqkKbj/laxIvLvwrK1s8Ju5HDTao9QP66liyh0=; b=WhXoXn9iKAL26M7Hl2kcorqi5BhFNSEPuJULIU3LKna597eklTArFs68U+xcujHnOH wr37QxeJrDUUU01t/iqQ/DheVl60VyATBkO47UuaXGohFC/N+Hcv90sgTImR3c2YZ7NX 7l7zF7ZXJxv6ALukItSznKGE7AUGAotr46YV3k59kNee72ROaf/jUMtL7mqnIymLNWZg xKVEMGFpfAvBeUiNiDL/tHTbGOSG+JBUWNynDcySZ7op2GFus4qRCqNJCzVEZYSgbFyn 40RKTWnLoJQuAo36WML5DYNc9JqEQZBbrKSIYksTpEZ1Nw7272iQw2tD/tQuZcN7LNOL gC5Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=AyW/5UqkKbj/laxIvLvwrK1s8Ju5HDTao9QP66liyh0=; b=aHt40nBN6SXDzisAysuMpT317dnPLW556bDkiqhYFMkFUeYcJfql0iAVSc9aK24gJy /MVYwi+oY0ap3PmtAC/Zvg2YbsYG02E04kCCT+VEJk/kZnV8J4Z50K2fssZyOXzstr5q XOaM6O9mtRH3WPTz//NT1ieND8IjvNleD/H5vtbGx+cniig7GFYe4C7JEqMdyvcl15e9 WNZokvirZgrWHyyvHVQoYpH7tEWA6JJAN42GQDpj8d2HCflDpvm/LN6SaUeRyX8R6o0j g0KNom+2rs+kFk9EA2FB1S+6jfe67KFLMvEwFPSwTn1K5bP/LKEN6Q+zbBqWe+A7G2tx jU0Q== X-Gm-Message-State: AOAM530MUozcxg27So54Q7WFXm81mTAbuoCEUWU89C1oR0mb3nzOkJHq nkzXY9zA4FSDAEWoEsT3Ff2hZQ== X-Received: by 2002:a62:7997:0:b0:43d:f9e1:939c with SMTP id u145-20020a627997000000b0043df9e1939cmr2076648pfc.2.1632367972830; Wed, 22 Sep 2021 20:32:52 -0700 (PDT) Received: from localhost.localdomain (80.251.214.228.16clouds.com. [80.251.214.228]) by smtp.gmail.com with ESMTPSA id h18sm3817168pfr.89.2021.09.22.20.32.50 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 22 Sep 2021 20:32:52 -0700 (PDT) From: Shawn Guo To: Linus Walleij Cc: Bjorn Andersson , Rob Herring , Loic Poulain , linux-gpio@vger.kernel.org, devicetree@vger.kernel.org, linux-arm-msm@vger.kernel.org, linux-kernel@vger.kernel.org, Shawn Guo Subject: [PATCH v3 1/2] dt-bindings: pinctrl: qcom: Add QCM2290 pinctrl bindings Date: Thu, 23 Sep 2021 11:32:23 +0800 Message-Id: <20210923033224.29719-2-shawn.guo@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20210923033224.29719-1-shawn.guo@linaro.org> References: <20210923033224.29719-1-shawn.guo@linaro.org> Precedence: bulk List-ID: X-Mailing-List: devicetree@vger.kernel.org Add device tree bindings for QCM2290 pinctrl. Signed-off-by: Shawn Guo Reviewed-by: Rob Herring --- .../pinctrl/qcom,qcm2290-pinctrl.yaml | 165 ++++++++++++++++++ 1 file changed, 165 insertions(+) create mode 100644 Documentation/devicetree/bindings/pinctrl/qcom,qcm2290-pinctrl.yaml -- 2.17.1 diff --git a/Documentation/devicetree/bindings/pinctrl/qcom,qcm2290-pinctrl.yaml b/Documentation/devicetree/bindings/pinctrl/qcom,qcm2290-pinctrl.yaml new file mode 100644 index 000000000000..13f338619d77 --- /dev/null +++ b/Documentation/devicetree/bindings/pinctrl/qcom,qcm2290-pinctrl.yaml @@ -0,0 +1,165 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/pinctrl/qcom,qcm2290-pinctrl.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Qualcomm Technologies, Inc. QCM2290 TLMM block + +maintainers: + - Shawn Guo + +description: + This binding describes the Top Level Mode Multiplexer block found in the + QCM2290 platform. + +properties: + compatible: + const: qcom,qcm2290-tlmm + + reg: + maxItems: 1 + + interrupts: + description: Specifies the TLMM summary IRQ + maxItems: 1 + + interrupt-controller: true + + '#interrupt-cells': + description: + Specifies the PIN numbers and Flags, as defined in defined in + include/dt-bindings/interrupt-controller/irq.h + const: 2 + + 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 + + wakeup-parent: + maxItems: 1 + +#PIN CONFIGURATION NODES +patternProperties: + '-state$': + oneOf: + - $ref: "#/$defs/qcom-qcm2290-tlmm-state" + - patternProperties: + ".*": + $ref: "#/$defs/qcom-qcm2290-tlmm-state" + +'$defs': + qcom-qcm2290-tlmm-state: + type: object + description: + Pinctrl node's client devices use subnodes for desired pin configuration. + Client device subnodes use below standard properties. + $ref: "qcom,tlmm-common.yaml#/$defs/qcom-tlmm-state" + + properties: + pins: + description: + List of gpio pins affected by the properties specified in this + subnode. + items: + oneOf: + - pattern: "^gpio([0-9]|[1-9][0-9]|1[0-1][0-9]|12[0-6])$" + - enum: [ sdc1_rclk, sdc1_clk, sdc1_cmd, sdc1_data, + sdc2_clk, sdc2_cmd, sdc2_data ] + minItems: 1 + maxItems: 36 + + function: + description: + Specify the alternative function to be configured for the specified + pins. + + enum: [ adsp_ext, agera_pll, atest, cam_mclk, cci_async, cci_i2c, + cci_timer0, cci_timer1, cci_timer2, cci_timer3, char_exec, + cri_trng, cri_trng0, cri_trng1, dac_calib, dbg_out, ddr_bist, + ddr_pxi0, ddr_pxi1, ddr_pxi2, ddr_pxi3, gcc_gp1, gcc_gp2, + gcc_gp3, gpio, gp_pdm0, gp_pdm1, gp_pdm2, gsm0_tx, gsm1_tx, + jitter_bist, mdp_vsync, mdp_vsync_out_0, mdp_vsync_out_1, + mpm_pwr, mss_lte, m_voc, nav_gpio, pa_indicator, pbs0, pbs1, + pbs2, pbs3, pbs4, pbs5, pbs6, pbs7, pbs8, pbs9, pbs10, pbs11, + pbs12, pbs13, pbs14, pbs15, pbs_out, phase_flag, pll_bist, + pll_bypassnl, pll_reset, prng_rosc, pwm_0, pwm_1, pwm_2, pwm_3, + pwm_4, pwm_5, pwm_6, pwm_7, pwm_8, pwm_9, qdss_cti, qdss_gpio, + qup0, qup1, qup2, qup3, qup4, qup5, sdc1_tb, sdc2_tb, sd_write, + ssbi_wtr1, tgu_ch0, tgu_ch1, tgu_ch2, tgu_ch3, tsense_pwm, + uim1_clk, uim1_data, uim1_present, uim1_reset, uim2_clk, + uim2_data, uim2_present, uim2_reset, usb_phy, vfr_1, + vsense_trigger, wlan1_adc0, wlan1_adc1 ] + + drive-strength: + enum: [2, 4, 6, 8, 10, 12, 14, 16] + default: 2 + description: + Selects the drive strength for the specified pins, in mA. + + bias-pull-down: true + + bias-pull-up: true + + bias-disable: true + + output-high: true + + output-low: true + + required: + - pins + + additionalProperties: false + +required: + - compatible + - reg + - interrupts + - interrupt-controller + - '#interrupt-cells' + - gpio-controller + - '#gpio-cells' + - gpio-ranges + +additionalProperties: false + +examples: + - | + #include + tlmm: pinctrl@500000 { + compatible = "qcom,qcm2290-tlmm"; + reg = <0x500000 0x300000>; + interrupts = ; + gpio-controller; + #gpio-cells = <2>; + interrupt-controller; + #interrupt-cells = <2>; + gpio-ranges = <&tlmm 0 0 127>; + + sdc2_on_state: sdc2-on-state { + clk { + pins = "sdc2_clk"; + bias-disable; + drive-strength = <16>; + }; + + cmd { + pins = "sdc2_cmd"; + bias-pull-up; + drive-strength = <10>; + }; + + data { + pins = "sdc2_data"; + bias-pull-up; + drive-strength = <10>; + }; + }; + };