linuxppc-dev.lists.ozlabs.org archive mirror
 help / color / mirror / Atom feed
* [PATCH AUTOSEL 5.12 42/43] powerpc/fsl: set fsl, i2c-erratum-a004447 flag for P2041 i2c controllers
       [not found] <20210603170734.3168284-1-sashal@kernel.org>
@ 2021-06-03 17:07 ` Sasha Levin
  2021-06-04  0:42   ` [PATCH AUTOSEL 5.12 42/43] powerpc/fsl: set fsl,i2c-erratum-a004447 " Michael Ellerman
  2021-06-03 17:07 ` [PATCH AUTOSEL 5.12 43/43] powerpc/fsl: set fsl, i2c-erratum-a004447 flag for P1010 " Sasha Levin
  1 sibling, 1 reply; 5+ messages in thread
From: Sasha Levin @ 2021-06-03 17:07 UTC (permalink / raw)
  To: linux-kernel, stable
  Cc: Sasha Levin, devicetree, Wolfram Sang, Chris Packham, linuxppc-dev

From: Chris Packham <chris.packham@alliedtelesis.co.nz>

[ Upstream commit 7adc7b225cddcfd0f346d10144fd7a3d3d9f9ea7 ]

The i2c controllers on the P2040/P2041 have an erratum where the
documented scheme for i2c bus recovery will not work (A-004447). A
different mechanism is needed which is documented in the P2040 Chip
Errata Rev Q (latest available at the time of writing).

Signed-off-by: Chris Packham <chris.packham@alliedtelesis.co.nz>
Acked-by: Michael Ellerman <mpe@ellerman.id.au>
Signed-off-by: Wolfram Sang <wsa@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
 arch/powerpc/boot/dts/fsl/p2041si-post.dtsi | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)

diff --git a/arch/powerpc/boot/dts/fsl/p2041si-post.dtsi b/arch/powerpc/boot/dts/fsl/p2041si-post.dtsi
index 872e4485dc3f..ddc018d42252 100644
--- a/arch/powerpc/boot/dts/fsl/p2041si-post.dtsi
+++ b/arch/powerpc/boot/dts/fsl/p2041si-post.dtsi
@@ -371,7 +371,23 @@ sdhc@114000 {
 	};
 
 /include/ "qoriq-i2c-0.dtsi"
+	i2c@118000 {
+		fsl,i2c-erratum-a004447;
+	};
+
+	i2c@118100 {
+		fsl,i2c-erratum-a004447;
+	};
+
 /include/ "qoriq-i2c-1.dtsi"
+	i2c@119000 {
+		fsl,i2c-erratum-a004447;
+	};
+
+	i2c@119100 {
+		fsl,i2c-erratum-a004447;
+	};
+
 /include/ "qoriq-duart-0.dtsi"
 /include/ "qoriq-duart-1.dtsi"
 /include/ "qoriq-gpio-0.dtsi"
-- 
2.30.2


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [PATCH AUTOSEL 5.12 43/43] powerpc/fsl: set fsl, i2c-erratum-a004447 flag for P1010 i2c controllers
       [not found] <20210603170734.3168284-1-sashal@kernel.org>
  2021-06-03 17:07 ` [PATCH AUTOSEL 5.12 42/43] powerpc/fsl: set fsl, i2c-erratum-a004447 flag for P2041 i2c controllers Sasha Levin
@ 2021-06-03 17:07 ` Sasha Levin
  1 sibling, 0 replies; 5+ messages in thread
From: Sasha Levin @ 2021-06-03 17:07 UTC (permalink / raw)
  To: linux-kernel, stable
  Cc: Sasha Levin, devicetree, Wolfram Sang, Chris Packham, linuxppc-dev

From: Chris Packham <chris.packham@alliedtelesis.co.nz>

[ Upstream commit 19ae697a1e4edf1d755b413e3aa38da65e2db23b ]

The i2c controllers on the P1010 have an erratum where the documented
scheme for i2c bus recovery will not work (A-004447). A different
mechanism is needed which is documented in the P1010 Chip Errata Rev L.

Signed-off-by: Chris Packham <chris.packham@alliedtelesis.co.nz>
Acked-by: Michael Ellerman <mpe@ellerman.id.au>
Signed-off-by: Wolfram Sang <wsa@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
 arch/powerpc/boot/dts/fsl/p1010si-post.dtsi | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/arch/powerpc/boot/dts/fsl/p1010si-post.dtsi b/arch/powerpc/boot/dts/fsl/p1010si-post.dtsi
index 1b4aafc1f6a2..9716a0484ecf 100644
--- a/arch/powerpc/boot/dts/fsl/p1010si-post.dtsi
+++ b/arch/powerpc/boot/dts/fsl/p1010si-post.dtsi
@@ -122,7 +122,15 @@ memory-controller@2000 {
 	};
 
 /include/ "pq3-i2c-0.dtsi"
+	i2c@3000 {
+		fsl,i2c-erratum-a004447;
+	};
+
 /include/ "pq3-i2c-1.dtsi"
+	i2c@3100 {
+		fsl,i2c-erratum-a004447;
+	};
+
 /include/ "pq3-duart-0.dtsi"
 /include/ "pq3-espi-0.dtsi"
 	spi0: spi@7000 {
-- 
2.30.2


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [PATCH AUTOSEL 5.12 42/43] powerpc/fsl: set fsl,i2c-erratum-a004447 flag for P2041 i2c controllers
  2021-06-03 17:07 ` [PATCH AUTOSEL 5.12 42/43] powerpc/fsl: set fsl, i2c-erratum-a004447 flag for P2041 i2c controllers Sasha Levin
@ 2021-06-04  0:42   ` Michael Ellerman
  2021-06-04  0:58     ` Chris Packham
  0 siblings, 1 reply; 5+ messages in thread
From: Michael Ellerman @ 2021-06-04  0:42 UTC (permalink / raw)
  To: Sasha Levin, linux-kernel, stable
  Cc: Wolfram Sang, Sasha Levin, Chris Packham, linuxppc-dev, devicetree

Sasha Levin <sashal@kernel.org> writes:
> From: Chris Packham <chris.packham@alliedtelesis.co.nz>
>
> [ Upstream commit 7adc7b225cddcfd0f346d10144fd7a3d3d9f9ea7 ]
>
> The i2c controllers on the P2040/P2041 have an erratum where the
> documented scheme for i2c bus recovery will not work (A-004447). A
> different mechanism is needed which is documented in the P2040 Chip
> Errata Rev Q (latest available at the time of writing).
>
> Signed-off-by: Chris Packham <chris.packham@alliedtelesis.co.nz>
> Acked-by: Michael Ellerman <mpe@ellerman.id.au>
> Signed-off-by: Wolfram Sang <wsa@kernel.org>
> Signed-off-by: Sasha Levin <sashal@kernel.org>
> ---
>  arch/powerpc/boot/dts/fsl/p2041si-post.dtsi | 16 ++++++++++++++++
>  1 file changed, 16 insertions(+)

This patch (and the subsequent one), just set a flag in the device tree.

They have no effect unless you also backport the code change that looks
for that flag, which was upstream commit:

  8f0cdec8b5fd ("i2c: mpc: implement erratum A-004447 workaround")

AFAICS you haven't picked that one up for any of the stable trees.

I'll defer to Chris & Wolfram on whether it's a good idea to take the
code change for stable.

I guess it's harmless to pick these two patches, but it's also
pointless. So I think you either want to take all three, or drop these
two.

cheers

> diff --git a/arch/powerpc/boot/dts/fsl/p2041si-post.dtsi b/arch/powerpc/boot/dts/fsl/p2041si-post.dtsi
> index 872e4485dc3f..ddc018d42252 100644
> --- a/arch/powerpc/boot/dts/fsl/p2041si-post.dtsi
> +++ b/arch/powerpc/boot/dts/fsl/p2041si-post.dtsi
> @@ -371,7 +371,23 @@ sdhc@114000 {
>  	};
>  
>  /include/ "qoriq-i2c-0.dtsi"
> +	i2c@118000 {
> +		fsl,i2c-erratum-a004447;
> +	};
> +
> +	i2c@118100 {
> +		fsl,i2c-erratum-a004447;
> +	};
> +
>  /include/ "qoriq-i2c-1.dtsi"
> +	i2c@119000 {
> +		fsl,i2c-erratum-a004447;
> +	};
> +
> +	i2c@119100 {
> +		fsl,i2c-erratum-a004447;
> +	};
> +
>  /include/ "qoriq-duart-0.dtsi"
>  /include/ "qoriq-duart-1.dtsi"
>  /include/ "qoriq-gpio-0.dtsi"
> -- 
> 2.30.2

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH AUTOSEL 5.12 42/43] powerpc/fsl: set fsl,i2c-erratum-a004447 flag for P2041 i2c controllers
  2021-06-04  0:42   ` [PATCH AUTOSEL 5.12 42/43] powerpc/fsl: set fsl,i2c-erratum-a004447 " Michael Ellerman
@ 2021-06-04  0:58     ` Chris Packham
  2021-06-10 22:00       ` Sasha Levin
  0 siblings, 1 reply; 5+ messages in thread
From: Chris Packham @ 2021-06-04  0:58 UTC (permalink / raw)
  To: Michael Ellerman, Sasha Levin, linux-kernel, stable
  Cc: Wolfram Sang, devicetree, linuxppc-dev


On 4/06/21 12:42 pm, Michael Ellerman wrote:
> Sasha Levin <sashal@kernel.org> writes:
>> From: Chris Packham <chris.packham@alliedtelesis.co.nz>
>>
>> [ Upstream commit 7adc7b225cddcfd0f346d10144fd7a3d3d9f9ea7 ]
>>
>> The i2c controllers on the P2040/P2041 have an erratum where the
>> documented scheme for i2c bus recovery will not work (A-004447). A
>> different mechanism is needed which is documented in the P2040 Chip
>> Errata Rev Q (latest available at the time of writing).
>>
>> Signed-off-by: Chris Packham <chris.packham@alliedtelesis.co.nz>
>> Acked-by: Michael Ellerman <mpe@ellerman.id.au>
>> Signed-off-by: Wolfram Sang <wsa@kernel.org>
>> Signed-off-by: Sasha Levin <sashal@kernel.org>
>> ---
>>   arch/powerpc/boot/dts/fsl/p2041si-post.dtsi | 16 ++++++++++++++++
>>   1 file changed, 16 insertions(+)
> This patch (and the subsequent one), just set a flag in the device tree.
>
> They have no effect unless you also backport the code change that looks
> for that flag, which was upstream commit:
>
>    8f0cdec8b5fd ("i2c: mpc: implement erratum A-004447 workaround")

That change itself isn't cherry-pick able without

65171b2df15e ("i2c: mpc: Make use of i2c_recover_bus()")

and in between 65171b2df15e and 8f0cdec8b5fd are a bunch of cleanups and 
a fairly major rewrite which may also affect the cherry-pick ability.

> AFAICS you haven't picked that one up for any of the stable trees.
>
> I'll defer to Chris & Wolfram on whether it's a good idea to take the
> code change for stable.

We have been doing some extra QA on our end for the "i2c: mpc: Refactor 
to improve responsiveness" and "P2040/P2041 i2c recovery erratum" series 
which hasn't thrown up any issues. But it's still a lot of new code and 
at some point we're going to run into API changes.

Given the fact that it's starting to snowball one might err on the side 
of caution.

> I guess it's harmless to pick these two patches, but it's also
> pointless. So I think you either want to take all three, or drop these
> two.

At a minimum you need

65171b2df15e ("i2c: mpc: Make use of i2c_recover_bus()")
8f0cdec8b5fd ("i2c: mpc: implement erratum A-004447 workaround")
7adc7b225cdd ("powerpc/fsl: set fsl,i2c-erratum-a004447 flag for P2041 
i2c controllers")
19ae697a1e4e ("powerpc/fsl: set fsl,i2c-erratum-a004447 flag for P1010 
i2c controllers")

> cheers
>
>> diff --git a/arch/powerpc/boot/dts/fsl/p2041si-post.dtsi b/arch/powerpc/boot/dts/fsl/p2041si-post.dtsi
>> index 872e4485dc3f..ddc018d42252 100644
>> --- a/arch/powerpc/boot/dts/fsl/p2041si-post.dtsi
>> +++ b/arch/powerpc/boot/dts/fsl/p2041si-post.dtsi
>> @@ -371,7 +371,23 @@ sdhc@114000 {
>>   	};
>>   
>>   /include/ "qoriq-i2c-0.dtsi"
>> +	i2c@118000 {
>> +		fsl,i2c-erratum-a004447;
>> +	};
>> +
>> +	i2c@118100 {
>> +		fsl,i2c-erratum-a004447;
>> +	};
>> +
>>   /include/ "qoriq-i2c-1.dtsi"
>> +	i2c@119000 {
>> +		fsl,i2c-erratum-a004447;
>> +	};
>> +
>> +	i2c@119100 {
>> +		fsl,i2c-erratum-a004447;
>> +	};
>> +
>>   /include/ "qoriq-duart-0.dtsi"
>>   /include/ "qoriq-duart-1.dtsi"
>>   /include/ "qoriq-gpio-0.dtsi"
>> -- 
>> 2.30.2

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH AUTOSEL 5.12 42/43] powerpc/fsl: set fsl,i2c-erratum-a004447 flag for P2041 i2c controllers
  2021-06-04  0:58     ` Chris Packham
@ 2021-06-10 22:00       ` Sasha Levin
  0 siblings, 0 replies; 5+ messages in thread
From: Sasha Levin @ 2021-06-10 22:00 UTC (permalink / raw)
  To: Chris Packham
  Cc: devicetree, linux-kernel, stable, Wolfram Sang, linuxppc-dev

On Fri, Jun 04, 2021 at 12:58:54AM +0000, Chris Packham wrote:
>
>On 4/06/21 12:42 pm, Michael Ellerman wrote:
>> Sasha Levin <sashal@kernel.org> writes:
>>> From: Chris Packham <chris.packham@alliedtelesis.co.nz>
>>>
>>> [ Upstream commit 7adc7b225cddcfd0f346d10144fd7a3d3d9f9ea7 ]
>>>
>>> The i2c controllers on the P2040/P2041 have an erratum where the
>>> documented scheme for i2c bus recovery will not work (A-004447). A
>>> different mechanism is needed which is documented in the P2040 Chip
>>> Errata Rev Q (latest available at the time of writing).
>>>
>>> Signed-off-by: Chris Packham <chris.packham@alliedtelesis.co.nz>
>>> Acked-by: Michael Ellerman <mpe@ellerman.id.au>
>>> Signed-off-by: Wolfram Sang <wsa@kernel.org>
>>> Signed-off-by: Sasha Levin <sashal@kernel.org>
>>> ---
>>>   arch/powerpc/boot/dts/fsl/p2041si-post.dtsi | 16 ++++++++++++++++
>>>   1 file changed, 16 insertions(+)
>> This patch (and the subsequent one), just set a flag in the device tree.
>>
>> They have no effect unless you also backport the code change that looks
>> for that flag, which was upstream commit:
>>
>>    8f0cdec8b5fd ("i2c: mpc: implement erratum A-004447 workaround")
>
>That change itself isn't cherry-pick able without
>
>65171b2df15e ("i2c: mpc: Make use of i2c_recover_bus()")
>
>and in between 65171b2df15e and 8f0cdec8b5fd are a bunch of cleanups and
>a fairly major rewrite which may also affect the cherry-pick ability.
>
>> AFAICS you haven't picked that one up for any of the stable trees.
>>
>> I'll defer to Chris & Wolfram on whether it's a good idea to take the
>> code change for stable.
>
>We have been doing some extra QA on our end for the "i2c: mpc: Refactor
>to improve responsiveness" and "P2040/P2041 i2c recovery erratum" series
>which hasn't thrown up any issues. But it's still a lot of new code and
>at some point we're going to run into API changes.
>
>Given the fact that it's starting to snowball one might err on the side
>of caution.
>
>> I guess it's harmless to pick these two patches, but it's also
>> pointless. So I think you either want to take all three, or drop these
>> two.
>
>At a minimum you need
>
>65171b2df15e ("i2c: mpc: Make use of i2c_recover_bus()")
>8f0cdec8b5fd ("i2c: mpc: implement erratum A-004447 workaround")
>7adc7b225cdd ("powerpc/fsl: set fsl,i2c-erratum-a004447 flag for P2041
>i2c controllers")
>19ae697a1e4e ("powerpc/fsl: set fsl,i2c-erratum-a004447 flag for P1010
>i2c controllers")

I'll take the two additional commits, thanks!

-- 
Thanks,
Sasha

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2021-06-10 22:01 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <20210603170734.3168284-1-sashal@kernel.org>
2021-06-03 17:07 ` [PATCH AUTOSEL 5.12 42/43] powerpc/fsl: set fsl, i2c-erratum-a004447 flag for P2041 i2c controllers Sasha Levin
2021-06-04  0:42   ` [PATCH AUTOSEL 5.12 42/43] powerpc/fsl: set fsl,i2c-erratum-a004447 " Michael Ellerman
2021-06-04  0:58     ` Chris Packham
2021-06-10 22:00       ` Sasha Levin
2021-06-03 17:07 ` [PATCH AUTOSEL 5.12 43/43] powerpc/fsl: set fsl, i2c-erratum-a004447 flag for P1010 " Sasha Levin

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).