Message ID | 20240215-mbly-i2c-v1-1-19a336e91dca@bootlin.com |
---|---|
State | New |
Headers |
Return-Path: <linux-kernel+bounces-67334-ouuuleilei=gmail.com@vger.kernel.org> Delivered-To: ouuuleilei@gmail.com Received: by 2002:a05:7300:b825:b0:106:860b:bbdd with SMTP id da37csp530927dyb; Thu, 15 Feb 2024 08:53:43 -0800 (PST) X-Forwarded-Encrypted: i=3; AJvYcCV4GehmbbBz6xa/sqmLx9r5CIx9wMk/j8lNBcZCg72QHF49rAG/Z0lYhzYQMUzYFe3ycMDtrqVSuW7xnJemPwZH0F9ddw== X-Google-Smtp-Source: AGHT+IFzy2Ow94vz9J6pUOW2ZcnB3k+IZTAKs7dPYrGOGatcYpcMaagulMvubHHczSSyEOb/Vh6J X-Received: by 2002:a05:622a:1a9e:b0:42c:67fc:e3cd with SMTP id s30-20020a05622a1a9e00b0042c67fce3cdmr10836375qtc.23.1708016023486; Thu, 15 Feb 2024 08:53:43 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1708016023; cv=pass; d=google.com; s=arc-20160816; b=stUaMFAUgWSeYnCc9ANAJq8wdMU+OZ2WVvQmn/gnL2A71nVEzsYFzHdUrKraL1tq57 Dx2YEY+aBuMB0sLbsr4i+QA9uOMHxelQ9nm2KXEa04Op6UG+i7ZAPTZkPj4MdWNCcO4Y OwHwGlQhrG105ptpENHOS8bJVfOdKUNYbKl2MT1vW6syHeToziMOl/aDE9657frgwmFc iOmFCSRsNqgfT5+50HSjd0fvrUFYuoVSowj8g2YyOegjyjtxlV+bSbxTgu4XEMTZL7Gf Gbyrpn7T3MZLT8nt2Q/cAEWibsisHcOTGExepEl5/n4sgbSDluLX7FB4WJ/AysMD6Z0u lB3w== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:list-unsubscribe:list-subscribe:list-id:precedence :subject:date:from:dkim-signature; bh=G6Tnp2unso4XKazSiaHxm91hgMMt9GxFy8ctCox1SvU=; fh=5JSnMO1qLgeVtLVJilSQcFnAcZn2MWLSM3RnsAdOnEU=; b=WlnnxEUKkXO36L6Cw6Ls24B0INYyeGwRiOYCQByRzQn1agAAchd+kPbgohm/W4on1k woXcNuqjSSvE/NveDZJkX3utbdmoRtlCH5yGFXNzgEYq8sd7kNHpGUBLR+vj4+IRsB4o IvkVgCR1UbtRlu6I8akHCCgxYT6Dpy5wBArHpHPKOqHdhzZqwW3t1zqvDMT4hvlTmL0y /m9TG+0ZAotTiD00DzOBrPp0uVI1QrA7FW1Lur1wEVBWf9yhkQ41uYe7ZbHbW+FvUnpi kFJNjOVodfCzKraxhqZ77XS0MptHglkunwrS+4guGNQRdqcwXCo++ZksUYlWeKGcNMwv YgEA==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@bootlin.com header.s=gm1 header.b="JP1M/bpk"; arc=pass (i=1 spf=pass spfdomain=bootlin.com dkim=pass dkdomain=bootlin.com dmarc=pass fromdomain=bootlin.com); spf=pass (google.com: domain of linux-kernel+bounces-67334-ouuuleilei=gmail.com@vger.kernel.org designates 2604:1380:45d1:ec00::1 as permitted sender) smtp.mailfrom="linux-kernel+bounces-67334-ouuuleilei=gmail.com@vger.kernel.org"; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=bootlin.com Received: from ny.mirrors.kernel.org (ny.mirrors.kernel.org. [2604:1380:45d1:ec00::1]) by mx.google.com with ESMTPS id h9-20020a05620a400900b0078725bf52b5si1990763qko.347.2024.02.15.08.53.43 for <ouuuleilei@gmail.com> (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 15 Feb 2024 08:53:43 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel+bounces-67334-ouuuleilei=gmail.com@vger.kernel.org designates 2604:1380:45d1:ec00::1 as permitted sender) client-ip=2604:1380:45d1:ec00::1; Authentication-Results: mx.google.com; dkim=pass header.i=@bootlin.com header.s=gm1 header.b="JP1M/bpk"; arc=pass (i=1 spf=pass spfdomain=bootlin.com dkim=pass dkdomain=bootlin.com dmarc=pass fromdomain=bootlin.com); spf=pass (google.com: domain of linux-kernel+bounces-67334-ouuuleilei=gmail.com@vger.kernel.org designates 2604:1380:45d1:ec00::1 as permitted sender) smtp.mailfrom="linux-kernel+bounces-67334-ouuuleilei=gmail.com@vger.kernel.org"; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=bootlin.com Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ny.mirrors.kernel.org (Postfix) with ESMTPS id 144711C23D45 for <ouuuleilei@gmail.com>; Thu, 15 Feb 2024 16:53:43 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id BCBA81386A1; Thu, 15 Feb 2024 16:52:41 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=bootlin.com header.i=@bootlin.com header.b="JP1M/bpk" Received: from relay4-d.mail.gandi.net (relay4-d.mail.gandi.net [217.70.183.196]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 12AF1135A78; Thu, 15 Feb 2024 16:52:35 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=217.70.183.196 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1708015959; cv=none; b=XovIUtAGTZ837B2Sd2fE28C+jVC7fvFMv1JzNsRn8FeIFgBBxGFV1u6+8ZM9KQ3CtEi3KyydW5Vp8YF8XDR1il6A6vqfwn4BKvgjxD/Kk1RfLiuC4icG7XFnJuGYnDwH3SDbdn7L9Kgs12ShYSOnRb80e5LUde9S2BerF6o5UMQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1708015959; c=relaxed/simple; bh=Ijz14cGEXQbqSJZ0xGJh261hxmWQfnydjiU88f3iIpE=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=qtq9nhow3sjvTZdGJAJYqW0/0Wh9eC3JOz4Iu0Hg0a+eViXM5YhJdX3pGj4LcXWjk0n7nWdqsqfLf4UPviu4+GWMzGz/k9VetHAXvZ8+i3rUuG8w9pg/4a7TEUZMeqjBBq9kjKh+LNgb4ROFWge+w2NanqrcUcezWZH0qt11Lz4= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=bootlin.com; spf=pass smtp.mailfrom=bootlin.com; dkim=pass (2048-bit key) header.d=bootlin.com header.i=@bootlin.com header.b=JP1M/bpk; arc=none smtp.client-ip=217.70.183.196 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=bootlin.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=bootlin.com Received: by mail.gandi.net (Postfix) with ESMTPSA id 3CE20E0014; Thu, 15 Feb 2024 16:52:33 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bootlin.com; s=gm1; t=1708015953; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=G6Tnp2unso4XKazSiaHxm91hgMMt9GxFy8ctCox1SvU=; b=JP1M/bpk9bS3ep85U+nbtsJhPr5WGZqySKANmguhxV3YSIYrvZOMDOgVZeA87geAQb9jUf 6P8LNCHsKt8QUIE0xct6uroeEAxUrm0RnZoZU9QkzvinQmkyl+wvbIvJhFYjYFUnS3EQfW +ttcLLGBR++EuNY+uVTPqcfrrC1xAq3oqBCRyLXthyVpK13mzESZMdzptdcKUQCYJCVUl0 /O8bECxGAPEQmIo/w+2nhxKiDkWnHWewJiB4pDCQ6IeflfDVIPkHpTsqxf212e96mkqdyS AkREzWfipVxO/lnFPW66vP4sJQf7RsOoaHSfxsT+hRK5di/BTcrbsbktdq1A6g== From: =?utf-8?q?Th=C3=A9o_Lebrun?= <theo.lebrun@bootlin.com> Date: Thu, 15 Feb 2024 17:52:08 +0100 Subject: [PATCH 01/13] dt-bindings: i2c: nomadik: add timeout-usecs property bindings Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: <linux-kernel.vger.kernel.org> List-Subscribe: <mailto:linux-kernel+subscribe@vger.kernel.org> List-Unsubscribe: <mailto:linux-kernel+unsubscribe@vger.kernel.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 8bit Message-Id: <20240215-mbly-i2c-v1-1-19a336e91dca@bootlin.com> References: <20240215-mbly-i2c-v1-0-19a336e91dca@bootlin.com> In-Reply-To: <20240215-mbly-i2c-v1-0-19a336e91dca@bootlin.com> To: Linus Walleij <linus.walleij@linaro.org>, Andi Shyti <andi.shyti@kernel.org>, Rob Herring <robh+dt@kernel.org>, Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>, Conor Dooley <conor+dt@kernel.org>, Thomas Bogendoerfer <tsbogend@alpha.franken.de> Cc: linux-arm-kernel@lists.infradead.org, linux-i2c@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-mips@vger.kernel.org, Gregory Clement <gregory.clement@bootlin.com>, Vladimir Kondratiev <vladimir.kondratiev@mobileye.com>, Thomas Petazzoni <thomas.petazzoni@bootlin.com>, Tawfik Bayouk <tawfik.bayouk@mobileye.com>, =?utf-8?q?Th=C3=A9o_Lebrun?= <theo.lebrun@bootlin.com> X-Mailer: b4 0.12.4 X-GND-Sasl: theo.lebrun@bootlin.com X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1790984609401423671 X-GMAIL-MSGID: 1790984609401423671 |
Series |
Add Mobileye EyeQ5 support to the Nomadik I2C controller & use hrtimers for timeouts
|
|
Commit Message
Théo Lebrun
Feb. 15, 2024, 4:52 p.m. UTC
Expose I2C device timeout configuration from devicetree. Use µs as time
unit and express it in the name.
Signed-off-by: Théo Lebrun <theo.lebrun@bootlin.com>
---
Documentation/devicetree/bindings/i2c/st,nomadik-i2c.yaml | 5 +++++
1 file changed, 5 insertions(+)
Comments
On Thu, Feb 15, 2024 at 05:52:08PM +0100, Théo Lebrun wrote: > Expose I2C device timeout configuration from devicetree. Use µs as time > unit and express it in the name. > > Signed-off-by: Théo Lebrun <theo.lebrun@bootlin.com> > --- > Documentation/devicetree/bindings/i2c/st,nomadik-i2c.yaml | 5 +++++ > 1 file changed, 5 insertions(+) > > diff --git a/Documentation/devicetree/bindings/i2c/st,nomadik-i2c.yaml b/Documentation/devicetree/bindings/i2c/st,nomadik-i2c.yaml > index 16024415a4a7..e6b95e3765ac 100644 > --- a/Documentation/devicetree/bindings/i2c/st,nomadik-i2c.yaml > +++ b/Documentation/devicetree/bindings/i2c/st,nomadik-i2c.yaml > @@ -70,6 +70,10 @@ properties: > minimum: 1 > maximum: 400000 > > + timeout-usecs: Use standard unit suffixes. We already have at least 2 device specific timeout properties. This one should be common. That means you need to add it to i2c-controller.yaml in dtschema. GH PR or patch to devicetree-spec list is fine. Rob
Hello, On Fri Feb 16, 2024 at 3:27 AM CET, Rob Herring wrote: > On Thu, Feb 15, 2024 at 05:52:08PM +0100, Théo Lebrun wrote: > > Expose I2C device timeout configuration from devicetree. Use µs as time > > unit and express it in the name. > > > > Signed-off-by: Théo Lebrun <theo.lebrun@bootlin.com> > > --- > > Documentation/devicetree/bindings/i2c/st,nomadik-i2c.yaml | 5 +++++ > > 1 file changed, 5 insertions(+) > > > > diff --git a/Documentation/devicetree/bindings/i2c/st,nomadik-i2c.yaml b/Documentation/devicetree/bindings/i2c/st,nomadik-i2c.yaml > > index 16024415a4a7..e6b95e3765ac 100644 > > --- a/Documentation/devicetree/bindings/i2c/st,nomadik-i2c.yaml > > +++ b/Documentation/devicetree/bindings/i2c/st,nomadik-i2c.yaml > > @@ -70,6 +70,10 @@ properties: > > minimum: 1 > > maximum: 400000 > > > > + timeout-usecs: > > Use standard unit suffixes. > > We already have at least 2 device specific timeout properties. This one > should be common. That means you need to add it to i2c-controller.yaml > in dtschema. GH PR or patch to devicetree-spec list is fine. i2c-mpc (fsl,timeout) and i2c-gpio (i2c-gpio,timeout-ms). I agree this prop has no reason to be compatible-specific. Feedback from dt-bindings and I2C host maintainers would be useful: what should the property be named? Having the unit makes it self-descriptive, which sounds like a good idea to me. timeout-usecs, timeout-us, another option? Thanks, -- Théo Lebrun, Bootlin Embedded Linux and Kernel engineering https://bootlin.com
On 16/02/2024 10:16, Théo Lebrun wrote: > Hello, > > On Fri Feb 16, 2024 at 3:27 AM CET, Rob Herring wrote: >> On Thu, Feb 15, 2024 at 05:52:08PM +0100, Théo Lebrun wrote: >>> Expose I2C device timeout configuration from devicetree. Use µs as time >>> unit and express it in the name. >>> >>> Signed-off-by: Théo Lebrun <theo.lebrun@bootlin.com> >>> --- >>> Documentation/devicetree/bindings/i2c/st,nomadik-i2c.yaml | 5 +++++ >>> 1 file changed, 5 insertions(+) >>> >>> diff --git a/Documentation/devicetree/bindings/i2c/st,nomadik-i2c.yaml b/Documentation/devicetree/bindings/i2c/st,nomadik-i2c.yaml >>> index 16024415a4a7..e6b95e3765ac 100644 >>> --- a/Documentation/devicetree/bindings/i2c/st,nomadik-i2c.yaml >>> +++ b/Documentation/devicetree/bindings/i2c/st,nomadik-i2c.yaml >>> @@ -70,6 +70,10 @@ properties: >>> minimum: 1 >>> maximum: 400000 >>> >>> + timeout-usecs: >> >> Use standard unit suffixes. >> >> We already have at least 2 device specific timeout properties. This one >> should be common. That means you need to add it to i2c-controller.yaml >> in dtschema. GH PR or patch to devicetree-spec list is fine. > > i2c-mpc (fsl,timeout) and i2c-gpio (i2c-gpio,timeout-ms). I agree this > prop has no reason to be compatible-specific. > > Feedback from dt-bindings and I2C host maintainers would be useful: what > should the property be named? Having the unit makes it self-descriptive, > which sounds like a good idea to me. timeout-usecs, timeout-us, another > option? It must have an unit. That's not negotiable for new properties. Best regards, Krzysztof
Hi Théo, thanks for your patch! On Fri, Feb 16, 2024 at 10:16 AM Théo Lebrun <theo.lebrun@bootlin.com> wrote: > i2c-mpc (fsl,timeout) and i2c-gpio (i2c-gpio,timeout-ms). I agree this > prop has no reason to be compatible-specific. > > Feedback from dt-bindings and I2C host maintainers would be useful: what > should the property be named? Having the unit makes it self-descriptive, > which sounds like a good idea to me. timeout-usecs, timeout-us, another > option? Use i2c-transfer-timeout-ms in my opinion, so it us crystal clear what that property is for. As Rob mentioned this isn't in the kernel schemas but in dtschema, so you need to patch this: https://github.com/robherring/dt-schema Yours, Linus Walleij
Hello, On Mon Feb 19, 2024 at 3:06 PM CET, Linus Walleij wrote: > Hi Théo, > > thanks for your patch! > > On Fri, Feb 16, 2024 at 10:16 AM Théo Lebrun <theo.lebrun@bootlin.com> wrote: > > > i2c-mpc (fsl,timeout) and i2c-gpio (i2c-gpio,timeout-ms). I agree this > > prop has no reason to be compatible-specific. > > > > Feedback from dt-bindings and I2C host maintainers would be useful: what > > should the property be named? Having the unit makes it self-descriptive, > > which sounds like a good idea to me. timeout-usecs, timeout-us, another > > option? > > Use i2c-transfer-timeout-ms in my opinion, so it us crystal clear > what that property is for. Using µs (microseconds) would be OK? I'm not sure yet about the exact timeout desired but a one millisecond granularity might not be enough for the Mobileye usecase. Expect incoming patches to use the I2C controller in Fast Mode Plus (1Mbps) and High Speed Mode (3.4Mbps). Gotta go fast! > As Rob mentioned this isn't in the kernel schemas but in dtschema, so > you need to patch this: > https://github.com/robherring/dt-schema Indeed. The other question if we do microseconds is the suffix: -us, -usecs, -microseconds, etc? I picked -usecs for my v1, but a grep tells me I am the only user of this suffix. -us is much more common. BTW i2c-controller.yaml already has a µs timeout: i2c-scl-clk-low-timeout-us Thanks, -- Théo Lebrun, Bootlin Embedded Linux and Kernel engineering https://bootlin.com ------------------------------------------------------------------------
Hello, On Mon Feb 19, 2024 at 3:29 PM CET, Théo Lebrun wrote: > On Mon Feb 19, 2024 at 3:06 PM CET, Linus Walleij wrote: > > On Fri, Feb 16, 2024 at 10:16 AM Théo Lebrun <theo.lebrun@bootlin.com> wrote: > > > i2c-mpc (fsl,timeout) and i2c-gpio (i2c-gpio,timeout-ms). I agree this > > > prop has no reason to be compatible-specific. > > > > > > Feedback from dt-bindings and I2C host maintainers would be useful: what > > > should the property be named? Having the unit makes it self-descriptive, > > > which sounds like a good idea to me. timeout-usecs, timeout-us, another > > > option? > > > > Use i2c-transfer-timeout-ms in my opinion, so it us crystal clear > > what that property is for. > > Using µs (microseconds) would be OK? I'm not sure yet about the exact > timeout desired but a one millisecond granularity might not be enough > for the Mobileye usecase. > > Expect incoming patches to use the I2C controller in Fast Mode Plus > (1Mbps) and High Speed Mode (3.4Mbps). Gotta go fast! > > > As Rob mentioned this isn't in the kernel schemas but in dtschema, so > > you need to patch this: > > https://github.com/robherring/dt-schema > > Indeed. The other question if we do microseconds is the > suffix: -us, -usecs, -microseconds, etc? I picked -usecs for my v1, but > a grep tells me I am the only user of this suffix. -us is much more > common. > > BTW i2c-controller.yaml already has a µs timeout: > i2c-scl-clk-low-timeout-us Note: I've sent a draft patch to dt-schema. See: https://github.com/devicetree-org/dt-schema/pull/129 Feedback from I2C maintainers would confirm or infirm that this goes in the right direction. Thanks, -- Théo Lebrun, Bootlin Embedded Linux and Kernel engineering https://bootlin.com
Hi, > > > > i2c-mpc (fsl,timeout) and i2c-gpio (i2c-gpio,timeout-ms). I agree this > > > > prop has no reason to be compatible-specific. Anyone up to convert these drivers to the new binding and mark the old ones as deprecated? > > > As Rob mentioned this isn't in the kernel schemas but in dtschema, so > > > you need to patch this: > > > https://github.com/robherring/dt-schema @Rob: My memory fails a little bit about these two schemas: we have the github one for generic bindings, not strictly related to Linux, right? But why do we have then i2c.txt in ther kernel tree? Why don't we sync regularly with the generic schema? > Note: I've sent a draft patch to dt-schema. See: > https://github.com/devicetree-org/dt-schema/pull/129 I used to argue that you can set this timeout to any value in userspace. I have been convinced that it might make sense to set it early so it is in use already when booting. So, for this pull request: Reviewed-by: Wolfram Sang <wsa+renesas@sang-engineering.com> All the best, Wolfram
On Wed, Feb 21, 2024 at 06:43:55PM +0100, Wolfram Sang wrote: > Hi, > > > > > > i2c-mpc (fsl,timeout) and i2c-gpio (i2c-gpio,timeout-ms). I agree this > > > > > prop has no reason to be compatible-specific. > > Anyone up to convert these drivers to the new binding and mark the old > ones as deprecated? > > > > > As Rob mentioned this isn't in the kernel schemas but in dtschema, so > > > > you need to patch this: > > > > https://github.com/robherring/dt-schema > > @Rob: My memory fails a little bit about these two schemas: we have the > github one for generic bindings, not strictly related to Linux, right? Well, NONE of the bindings are strictly related to linux unless they say 'linux,' prefix. > But why do we have then i2c.txt in ther kernel tree? Why don't we sync > regularly with the generic schema? We need to remove i2c.txt. Often that hasn't happened because we need to relicense the text from GPL only to dual licensed. From a quick look, i2c/i2c-controller.yaml appears to have everything in i2c.txt, so I think we can go ahead and remove it. There's only a few references to i2c.txt to update with that. I'll send a patch, but please double check whether you think i2c-controller.yaml is missing anything. Rob
> > @Rob: My memory fails a little bit about these two schemas: we have the > > github one for generic bindings, not strictly related to Linux, right? > > Well, NONE of the bindings are strictly related to linux unless they say > 'linux,' prefix. Ok, right, of course. What I meant was probably: why do we have controller bindings in the kernel and schema bindings in a github tree? For me, this is a tad more difficult to maintain. Like i2c-controller.yaml file has the "no-detect" binding which IMO is wrong in many ways. I rejected the supporting code for Linux. > We need to remove i2c.txt. Often that hasn't happened because we need to > relicense the text from GPL only to dual licensed. From a quick look, > i2c/i2c-controller.yaml appears to have everything in i2c.txt, so I > think we can go ahead and remove it. There's only a few references to > i2c.txt to update with that. I'll send a patch, but please double check > whether you think i2c-controller.yaml is missing anything. Will do, thanks!
On Thu, Feb 22, 2024 at 12:28 PM Wolfram Sang <wsa@kernel.org> wrote: > > > > > @Rob: My memory fails a little bit about these two schemas: we have the > > > github one for generic bindings, not strictly related to Linux, right? > > > > Well, NONE of the bindings are strictly related to linux unless they say > > 'linux,' prefix. > > Ok, right, of course. What I meant was probably: why do we have > controller bindings in the kernel and schema bindings in a github tree? Generally the split is common, stable bindings go in dtschema. This is anything we'd consider should be in the DT spec. Though I have 0 plans to add anything to the spec because I'd like to generate the spec from schema. (Not really working on doing that either though). What's stable? Well, no solid definition there other than not new. So new things generally go into the kernel tree first. For device specific bindings, they will never go into dtschema and will live where the dts files are. > For me, this is a tad more difficult to maintain. Like > i2c-controller.yaml file has the "no-detect" binding which IMO is wrong > in many ways. I rejected the supporting code for Linux. It was probably added to i2c.txt and I probably said, looks fine, but add it to dtschema. Then the Linux support got rejected. We can simply remove it if it is not being used. This is why I'm generally against moving all the DT stuff out of the kernel. The reviewing would dry up. I'll try to make sure you see any future i2c changes. I take either patches on devicetree-spec list or GH PR. Shockingly, I mainly get GH PR. Rob
Hi Rob,
> I'll try to make sure you see any future i2c changes.
Thanks, if you mention @wsakernel I should get notified.
I looked into watching specific directories in Github and I found the
CODEOWNERS file. But code owners need to have write permissions and I
am not sure this is worth the hazzle.
Now on to checking that remaining binding...
Wolfram
diff --git a/Documentation/devicetree/bindings/i2c/st,nomadik-i2c.yaml b/Documentation/devicetree/bindings/i2c/st,nomadik-i2c.yaml index 16024415a4a7..e6b95e3765ac 100644 --- a/Documentation/devicetree/bindings/i2c/st,nomadik-i2c.yaml +++ b/Documentation/devicetree/bindings/i2c/st,nomadik-i2c.yaml @@ -70,6 +70,10 @@ properties: minimum: 1 maximum: 400000 + timeout-usecs: + $ref: /schemas/types.yaml#/definitions/uint32 + description: Timeout on I2C xfers in µs. + required: - compatible - reg @@ -98,6 +102,7 @@ examples: clock-names = "i2cclk", "apb_pclk"; power-domains = <&pm_domains DOMAIN_VAPE>; resets = <&prcc_reset DB8500_PRCC_3 DB8500_PRCC_3_RESET_I2C0>; + timeout-usecs = <200000>; }; i2c@101f8000 {