[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20230314204801.n46zgeke4efxemae@intel.intel>
Date: Tue, 14 Mar 2023 21:48:01 +0100
From: Andi Shyti <andi.shyti@...nel.org>
To: Chris Packham <Chris.Packham@...iedtelesis.co.nz>
Cc: Andi Shyti <andi.shyti@...nel.org>,
Krzysztof Kozlowski <krzysztof.kozlowski@...aro.org>,
"linux-i2c@...r.kernel.org" <linux-i2c@...r.kernel.org>,
"devicetree@...r.kernel.org" <devicetree@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
Wolfram Sang <wsa@...nel.org>,
Rob Herring <robh+dt@...nel.org>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@...aro.org>,
Ryan Chen <ryan_chen@...eedtech.com>
Subject: Re: [PATCH v3 3/3] i2c: mpc: Use i2c-scl-clk-low-timeout-ms i2c
property
Hi Chris,
> >>> "fsl,timeout" is marked as deprecated and replaced by the
> >>> "i2c-scl-clk-low-timeout-ms" i2c property.
> >>>
> >>> Use this latter and, in case it is missing, for back
> >>> compatibility, check whether we still have "fsl,timeout" defined.
> >>>
> >>> Signed-off-by: Andi Shyti <andi.shyti@...nel.org>
> >>> Reviewed-by: Chris Packham <chris.packham@...iedtelesis.co.nz>
> >>> ---
> >>> drivers/i2c/busses/i2c-mpc.c | 12 +++++++++++-
> >>> 1 file changed, 11 insertions(+), 1 deletion(-)
> >>>
> >>> diff --git a/drivers/i2c/busses/i2c-mpc.c b/drivers/i2c/busses/i2c-mpc.c
> >>> index 87e5c1725750..28f11e30ac50 100644
> >>> --- a/drivers/i2c/busses/i2c-mpc.c
> >>> +++ b/drivers/i2c/busses/i2c-mpc.c
> >>> @@ -843,8 +843,18 @@ static int fsl_i2c_probe(struct platform_device *op)
> >>> mpc_i2c_setup_8xxx(op->dev.of_node, i2c, clock);
> >>> }
> >>>
> >>> + /*
> >>> + * "fsl,timeout" has been marked as deprecated and, to maintain
> >>> + * backward compatibility, we will only look for it if
> >>> + * "i2c-scl-clk-low-timeout-ms" is not present.
> >>> + */
> >>> result = of_property_read_u32(op->dev.of_node,
> >>> - "fsl,timeout", &mpc_ops.timeout);
> >>> + "i2c-scl-clk-low-timeout-ms",
> >>> + &mpc_ops.timeout);
> >>> + if (result == -EINVAL)
> >>> + result = of_property_read_u32(op->dev.of_node,
> >>> + "fsl,timeout", &mpc_ops.timeout);
> >> Wasn't old property in us and new one is in ms?
> > Thanks, Krzysztof! Good catch!
> >
> > Chris, you are the only user of this property, as of now. Is it
> > OK if we keep it ms? I will send a proper patch to do the
> > conversion.
> >
> > To me it doesn't make much sense to have the timeout defined in
> > us as that's of the same order of the raising and falling time
> > of the clock. Any opinion?
> I think it'd be easier to stick to us as then the same code can be used
> to probe both the old property and the new one. However I won't object
> if you adjust for the us to ms conversion between handling the new
> property vs the old one.
yeah... indeed it became quite ugly.
OK, I will just rename it from "i2c-scl-clk-low-timeout-ms" to
"i2c-scl-clk-low-timeout-us", respin the schema pull request and
leave everything as it is.
Thanks for your input, Chris!
Andi
Powered by blists - more mailing lists