Received: by 2002:a05:6a11:4021:0:0:0:0 with SMTP id ky33csp211915pxb; Wed, 22 Sep 2021 20:35:52 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwnz9K9UvZeJ0OGAGuZwyq2HRGKJvvYw7qp5PCKTowVDLEfm1BCNumlQGO/NJA5tLA6SGU7 X-Received: by 2002:a17:906:b08e:: with SMTP id x14mr2804370ejy.40.1632368152336; Wed, 22 Sep 2021 20:35:52 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1632368152; cv=none; d=google.com; s=arc-20160816; b=PkvCMNDZNYyQvqPFRy2lDK62gZn7eoSirMLmdxu+w08Bizb61w6hZ7Eym/iGgQzWUz T36wFh5negEPo267fPqA5RrR+cgIZb6PTQC8znLxSsvIjkEqoy+YDk/NTnG4VuMHdeiR /kygSZ8kKDlXS1nfCCeM4VFwCuAs3aBosf5yU/eVouJOK0p89DocnWLtRhjLPgA6oTx9 lgzoUKdzUWlDMxz+NwxXVlXUbf/cmmm0OQ1av4QwGBiGhm5nEV3ryJhE3knt0O/J4ryX wcZ/MTOwbAcbpNucSryWUnLqgVHyjco5SVUARtFU/WS9TAxIZXtmn7iyRdAp1PBsdjlY JEIw== 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=aCAdCC2VoYuzPgOWHL+INPm0T3LFZk/knjbjDR45Lvbyz/SkR2JkEscX9gImx0wc9p Ol+JW2StjAkhlJBPQn9vo/U0g9BwtzQ1iUVMPv4MEGf8vPTc54+0zSd/sldiEm2OqwvF NPti+ppfE5VyrqM98PCkn6kXS8MRkpkRLWMRAUClwiFf3F89V7wfn0rciNorLFoq4Kud BuwptsGCcqXWboZ1l7X9uSb4y31JmObuToxl0sQc7TP5CBLZhpc5HAGoWMAjBN6+3rql fIfxFQYFv/E4uJD6lBH1v6YyGOKXHCULTli74LIIrRuwjN7peQxnImCDCXmh8hAU/pa0 aj4g== 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 linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-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 t16si4394476edt.141.2021.09.22.20.35.28; Wed, 22 Sep 2021 20:35:52 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-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 linux-kernel-owner@vger.kernel.org designates 23.128.96.18 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 S239078AbhIWDe0 (ORCPT + 99 others); Wed, 22 Sep 2021 23:34:26 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:39118 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S239050AbhIWDeY (ORCPT ); Wed, 22 Sep 2021 23:34:24 -0400 Received: from mail-pg1-x52c.google.com (mail-pg1-x52c.google.com [IPv6:2607:f8b0:4864:20::52c]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 5417DC06175F for ; Wed, 22 Sep 2021 20:32:53 -0700 (PDT) Received: by mail-pg1-x52c.google.com with SMTP id q68so4917232pga.9 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=EHmoigWmlVi9dXbtJl5ukdtnKc/Q+vr1OsZoaDlMNivwsldTmPc4F2KaN3BlkpKAct eBZsVhespD1ITekFDBs2Zio5sXbZp1OMjeVEvHcZzlR6NXdO8DPHelS0Cv2vECzhVlXs SevDsVdWIGW04OgqkXopJ3cQD4qh9a7ILRm1RKMRIAJ5TdiCV9qVWcXdCjut0KjjqJt9 4j2YEYwJ4pb5CsUfeDBJO8ZrlJn+jVNNXGBuzwRGpyrndWyHqsMXVUp2Q041RGrmn/lG dKZN0/gIPnXfQJHUYO2h0yZaEgoFGrety858HbAzerUgOfyPTMUqNccit2EOBkqgkFWt 19Xg== X-Gm-Message-State: AOAM5319IaQqVeRosrwoslROAVcOANmu0eQXwA9zclDwHaOf9RV2sgqo 77LWQLCB8CwRnjczlGINvKKjxw== 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: linux-kernel@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 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>; + }; + }; + }; -- 2.17.1