Message ID | 20221123152001.694546-3-abel.vesa@linaro.org |
---|---|
State | New |
Headers |
Return-Path: <linux-kernel-owner@vger.kernel.org> Delivered-To: ouuuleilei@gmail.com Received: by 2002:adf:f944:0:0:0:0:0 with SMTP id q4csp2855726wrr; Wed, 23 Nov 2022 07:26:07 -0800 (PST) X-Google-Smtp-Source: AA0mqf7y4JluGyfVvZfzYFu9y+K3OLJeqkL0mz7dBg+WJTHbsNimU3xrPvA+DsvL3B+LBfEjzhyw X-Received: by 2002:a17:906:89a1:b0:7ae:3193:8cf3 with SMTP id gg33-20020a17090689a100b007ae31938cf3mr22997267ejc.416.1669217167612; Wed, 23 Nov 2022 07:26:07 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1669217167; cv=none; d=google.com; s=arc-20160816; b=1HBzxrbINir4K3ipL5BJOKLC5tGWCMyZFWCCw7+PI8RuFemroBtizs2334Ee7nqqik 0ZypOEoXcTOFCgvZ9pbWFKSDp5pR+72hvc8kaDQnSpR0xlQfWP6ksdIDtyNzPYuQWnAf 0VNkV42AgsT8HQWRipW4Kioe7+dsCGJzEtWV0hWm4Oe40zzAEjzW+mxy++oPWE4c7cdq pXBuEID4u1kStjq3yAh7I1/LVoEhB4QMhR0ZTVUAAAdgcTl3yp3k8NOcRWQk3yF5Lb25 5tRGh6PQWH5saoJUOaQEa8NlkLgJY1RUclWrMJbyHzPpcxX7Gilq54hbisBhs2vv/iD0 QoTA== 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=evuJlb91MkWi9mnyqw5ELAWZLMaKtxVjaqYPITVH8m8=; b=qxGdtET5dhM6ECPDoobKSHxFrTIR697ClJzyMSfTIQn5S6BkFpKvYmLlbraHj94SXT eculOW7uOYMs23J8Briil8anDHhpb91yR3v8UmMs7uDkkPuCOgK5XhUDbzYplCk8Vlxj lpaKevFA5zmIEpCUCPEa4epPJzhSFdLkT1du3tbeTznUA/y5EX0gwitSU3YT3WoWuVsZ 3vJTW8oRv8404ObRnj/MKDWDuh3eeTnu1k2QJ2BYEm/Nfyv8dhJCzSttl4v41Sdb7wiB EowcSNVvUVobDdvoIhoBiWQ2WyYBcwokFKrP3lEZ1yU7sBbzPFO9NKbVsblTfd1jrHof SvNQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=q8lWSQRa; 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 hq15-20020a1709073f0f00b007b2c4e84af6si10484894ejc.684.2022.11.23.07.25.41; Wed, 23 Nov 2022 07:26:07 -0800 (PST) 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=q8lWSQRa; 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 S238813AbiKWPUg (ORCPT <rfc822;fengqi706@gmail.com> + 99 others); Wed, 23 Nov 2022 10:20:36 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:56860 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S238755AbiKWPUL (ORCPT <rfc822;linux-kernel@vger.kernel.org>); Wed, 23 Nov 2022 10:20:11 -0500 Received: from mail-wr1-x42d.google.com (mail-wr1-x42d.google.com [IPv6:2a00:1450:4864:20::42d]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id B42E191C2B for <linux-kernel@vger.kernel.org>; Wed, 23 Nov 2022 07:20:09 -0800 (PST) Received: by mail-wr1-x42d.google.com with SMTP id i12so26013944wrb.0 for <linux-kernel@vger.kernel.org>; Wed, 23 Nov 2022 07:20:09 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; 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=evuJlb91MkWi9mnyqw5ELAWZLMaKtxVjaqYPITVH8m8=; b=q8lWSQRaAkozvuYkm96lamfPHBmDM7kE59BXXqFuaduhEpfhX4YPutlDqeRl29xF+a maLX9RQ3e3o/CAeTK7ZshSnry9c/wELL5fIaEeHpnaZ7ymKs5Zr16qW/p3h55CpyWS/h OQX4uIHv34bUTgcV4S9Mi3LO6jTcXBOiJCQ3MXLk16MIs3YNCAfZpYx98fbpLWhXeXwA FNl912II7NdQwai2dpCGNcvURngSlTgeKXB144SEBypxbvEc4nQbuEcRTNxfCIS5Po/R z/MRYuiL1nLqTUx0S3P0CGJbACTT3M1vJFj6TT1TlKvJb/UzyFsFWhhzQWwdZfrWa1rC 5hwQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; 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=evuJlb91MkWi9mnyqw5ELAWZLMaKtxVjaqYPITVH8m8=; b=iWyv7oa3NzBH9uwxtSmoUrSiGvDEza/r4hVwT+GKFXIda8jAGeyV0WthNKpJC4xx/n BrCnaDjLO/ZFpWa8WV3yrW+DONGm/3wFv2zC2uXun8OlkR/VoTYlLS7J3/vz3LcTzO1V RnstkP8lPFlcVM6DCiAiO6eRndxMKYh4/rJrow1p5q99X4yZeS7TWDk13l+L7dz1Zgqs jv9cIo86JL/d/XUsFyjuwVlVe+2qWvI3APdjBD/7bCnXFNJgyZSUrw4nQNyC9ZBGrZm5 LY8sHPU0y4KRKDKkXU0GM8gnT6pQO71xhUcFDOPthcavVMXn1sMfQ7xEYpMgTzYZ2Ooe CqGw== X-Gm-Message-State: ANoB5pnfsU8M0j470Y0Te3uzi42pRik3BsxhyOGjTWxE1AQ9sCZsraF+ UOAolUgyETJCDJVu6jjo42vYgQ== X-Received: by 2002:a5d:48c3:0:b0:241:784b:1b7f with SMTP id p3-20020a5d48c3000000b00241784b1b7fmr18076241wrs.38.1669216808260; Wed, 23 Nov 2022 07:20:08 -0800 (PST) Received: from localhost.localdomain ([94.52.112.99]) by smtp.gmail.com with ESMTPSA id l10-20020adff48a000000b002366ded5864sm16764914wro.116.2022.11.23.07.20.07 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 23 Nov 2022 07:20:07 -0800 (PST) From: Abel Vesa <abel.vesa@linaro.org> To: Andy Gross <agross@kernel.org>, Bjorn Andersson <andersson@kernel.org>, Konrad Dybcio <konrad.dybcio@linaro.org>, Linus Walleij <linus.walleij@linaro.org>, Rob Herring <robh+dt@kernel.org>, Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org> Cc: Linux Kernel Mailing List <linux-kernel@vger.kernel.org>, devicetree@vger.kernel.org, linux-arm-msm@vger.kernel.org, "linux-gpio@vger.kernel.org" <linux-gpio@vger.kernel.org>, Neil Armstrong <neil.armstrong@linaro.org> Subject: [PATCH v2 2/4] dt-bindings: pinctrl: qcom,tlmm-common: document i2c pull property Date: Wed, 23 Nov 2022 17:19:59 +0200 Message-Id: <20221123152001.694546-3-abel.vesa@linaro.org> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20221123152001.694546-1-abel.vesa@linaro.org> References: <20221123152001.694546-1-abel.vesa@linaro.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit 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 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: <linux-kernel.vger.kernel.org> X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1750301060681430925?= X-GMAIL-MSGID: =?utf-8?q?1750301060681430925?= |
Series |
pinctrl: qcom: Add support for SM8550
|
|
Commit Message
Abel Vesa
Nov. 23, 2022, 3:19 p.m. UTC
From: Neil Armstrong <neil.armstrong@linaro.org> Document the new i2c_pull property introduced for SM8550 setting an I2C specific pull mode on I2C able pins. Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org> Signed-off-by: Abel Vesa <abel.vesa@linaro.org> --- Changes since v1: * Added my missing Signed-off-by tag * chaged i2c to I2C in qcom,i2c-pull description .../devicetree/bindings/pinctrl/qcom,tlmm-common.yaml | 3 +++ 1 file changed, 3 insertions(+)
Comments
On 23/11/2022 16:19, Abel Vesa wrote: > From: Neil Armstrong <neil.armstrong@linaro.org> > > Document the new i2c_pull property introduced for SM8550 setting > an I2C specific pull mode on I2C able pins. > > Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org> > Signed-off-by: Abel Vesa <abel.vesa@linaro.org> Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Best regards, Krzysztof
On Wed, Nov 23, 2022 at 4:20 PM Abel Vesa <abel.vesa@linaro.org> wrote: > From: Neil Armstrong <neil.armstrong@linaro.org> > > Document the new i2c_pull property introduced for SM8550 setting > an I2C specific pull mode on I2C able pins. > > Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org> > Signed-off-by: Abel Vesa <abel.vesa@linaro.org> (...) > + qcom,i2c-pull: > + type: boolean > + description: enable bias pull feature designed for I2C on pin But what is this? I2C buses are usually just plain old bias-high-impedance, high-z or open drain, wire-or or whatever you want to call it. But now there is some special i2c mode, huh? The description is pretty much "it is what it is"... can we have some explanation about what this means electrically speaking and why you cannot use bias-high-impedance? Yours, Linus Walleij
Hi Linus, On 24/11/2022 14:11, Linus Walleij wrote: > On Wed, Nov 23, 2022 at 4:20 PM Abel Vesa <abel.vesa@linaro.org> wrote: > >> From: Neil Armstrong <neil.armstrong@linaro.org> >> >> Document the new i2c_pull property introduced for SM8550 setting >> an I2C specific pull mode on I2C able pins. >> >> Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org> >> Signed-off-by: Abel Vesa <abel.vesa@linaro.org> > (...) >> + qcom,i2c-pull: >> + type: boolean >> + description: enable bias pull feature designed for I2C on pin > > But what is this? > > I2C buses are usually just plain old bias-high-impedance, high-z > or open drain, wire-or or whatever you want to call it. > > But now there is some special i2c mode, huh? > > The description is pretty much "it is what it is"... can we have > some explanation about what this means electrically speaking > and why you cannot use bias-high-impedance? I'll try to get some more info, but so far I only found what I wrote in the bindings. Neil > > Yours, > Linus Walleij
On Thu, Nov 24, 2022 at 2:24 PM Neil Armstrong <neil.armstrong@linaro.org> wrote: > On 24/11/2022 14:11, Linus Walleij wrote: > > On Wed, Nov 23, 2022 at 4:20 PM Abel Vesa <abel.vesa@linaro.org> wrote: > > > >> From: Neil Armstrong <neil.armstrong@linaro.org> > >> > >> Document the new i2c_pull property introduced for SM8550 setting > >> an I2C specific pull mode on I2C able pins. > >> > >> Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org> > >> Signed-off-by: Abel Vesa <abel.vesa@linaro.org> > > (...) > >> + qcom,i2c-pull: > >> + type: boolean > >> + description: enable bias pull feature designed for I2C on pin > > > > But what is this? > > > > I2C buses are usually just plain old bias-high-impedance, high-z > > or open drain, wire-or or whatever you want to call it. > > > > But now there is some special i2c mode, huh? > > > > The description is pretty much "it is what it is"... can we have > > some explanation about what this means electrically speaking > > and why you cannot use bias-high-impedance? > > I'll try to get some more info, but so far I only found what I wrote in the bindings. Björn: can you see if you can get some clarity about the i2c bias thing? Yours, Linus Walleij
On 25/11/2022 10:47, Linus Walleij wrote: > On Thu, Nov 24, 2022 at 2:24 PM Neil Armstrong > <neil.armstrong@linaro.org> wrote: >> On 24/11/2022 14:11, Linus Walleij wrote: >>> On Wed, Nov 23, 2022 at 4:20 PM Abel Vesa <abel.vesa@linaro.org> wrote: >>> >>>> From: Neil Armstrong <neil.armstrong@linaro.org> >>>> >>>> Document the new i2c_pull property introduced for SM8550 setting >>>> an I2C specific pull mode on I2C able pins. >>>> >>>> Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org> >>>> Signed-off-by: Abel Vesa <abel.vesa@linaro.org> >>> (...) >>>> + qcom,i2c-pull: >>>> + type: boolean >>>> + description: enable bias pull feature designed for I2C on pin >>> >>> But what is this? >>> >>> I2C buses are usually just plain old bias-high-impedance, high-z >>> or open drain, wire-or or whatever you want to call it. >>> >>> But now there is some special i2c mode, huh? >>> >>> The description is pretty much "it is what it is"... can we have >>> some explanation about what this means electrically speaking >>> and why you cannot use bias-high-impedance? >> >> I'll try to get some more info, but so far I only found what I wrote in the bindings. > > Björn: can you see if you can get some clarity about the i2c > bias thing? As I understood, it enables an "I2C resistor" on the pin, removing the need of an external pull-up resistor on the line. I assume the classical pull-up bias is not strong enough to replace an actual resistor on the PCB. Neil > > Yours, > Linus Walleij
On Fri, Nov 25, 2022 at 1:40 PM <neil.armstrong@linaro.org> wrote: > As I understood, it enables an "I2C resistor" on the pin, removing the need > of an external pull-up resistor on the line. > > I assume the classical pull-up bias is not strong enough to replace an actual > resistor on the PCB. In that case I think this should be an argument to bias-pull-up like: bias-pull-up = <360000>; Nominally the pull up is in ohms: bias-pull-up: oneOf: - type: boolean - $ref: /schemas/types.yaml#/definitions/uint32 description: pull up the pin. Takes as optional argument on hardware supporting it the pull strength in Ohm. Then the driver can choose to shunt in this extra I2C resistance from the resistance passed as argument. So no special property is needed, provided you can get an idea about the resistance provided here. Yours, Linus Walleij
Hi Linus, On 26/11/2022 22:53, Linus Walleij wrote: > On Fri, Nov 25, 2022 at 1:40 PM <neil.armstrong@linaro.org> wrote: > >> As I understood, it enables an "I2C resistor" on the pin, removing the need >> of an external pull-up resistor on the line. >> >> I assume the classical pull-up bias is not strong enough to replace an actual >> resistor on the PCB. > > In that case I think this should be an argument to bias-pull-up like: > > bias-pull-up = <360000>; > > Nominally the pull up is in ohms: > > bias-pull-up: > oneOf: > - type: boolean > - $ref: /schemas/types.yaml#/definitions/uint32 > description: pull up the pin. Takes as optional argument on hardware > supporting it the pull strength in Ohm. > > Then the driver can choose to shunt in this extra I2C resistance > from the resistance passed as argument. So no special property > is needed, provided you can get an idea about the resistance > provided here. I like this alternative, I'll try to figure out if we can find a value to match against. Thanks, Neil > > Yours, > Linus Walleij
On Tue, Nov 29, 2022 at 09:15:02AM +0100, Neil Armstrong wrote: > Hi Linus, > > On 26/11/2022 22:53, Linus Walleij wrote: > > On Fri, Nov 25, 2022 at 1:40 PM <neil.armstrong@linaro.org> wrote: > > > > > As I understood, it enables an "I2C resistor" on the pin, removing the need > > > of an external pull-up resistor on the line. > > > > > > I assume the classical pull-up bias is not strong enough to replace an actual > > > resistor on the PCB. That is correct. > > > > In that case I think this should be an argument to bias-pull-up like: > > > > bias-pull-up = <360000>; > > > > Nominally the pull up is in ohms: > > > > bias-pull-up: > > oneOf: > > - type: boolean > > - $ref: /schemas/types.yaml#/definitions/uint32 > > description: pull up the pin. Takes as optional argument on hardware > > supporting it the pull strength in Ohm. > > > > Then the driver can choose to shunt in this extra I2C resistance > > from the resistance passed as argument. So no special property > > is needed, provided you can get an idea about the resistance > > provided here. > > I like this alternative, I'll try to figure out if we can find a value > to match against. > The typical value for this resistor is 2.2kOhm. Regards, Bjorn
diff --git a/Documentation/devicetree/bindings/pinctrl/qcom,tlmm-common.yaml b/Documentation/devicetree/bindings/pinctrl/qcom,tlmm-common.yaml index e1354f0c64f8..9a809a69bd23 100644 --- a/Documentation/devicetree/bindings/pinctrl/qcom,tlmm-common.yaml +++ b/Documentation/devicetree/bindings/pinctrl/qcom,tlmm-common.yaml @@ -77,6 +77,9 @@ $defs: input-enable: true output-high: true output-low: true + qcom,i2c-pull: + type: boolean + description: enable bias pull feature designed for I2C on pin allOf: - $ref: pincfg-node.yaml#