[v4,2/9] dt-bindings: mtd: ingenic: Change 'BCH' to 'ECC' in documentation

Message ID 20190209192305.4434-2-paul@crapouillou.net
State Not Applicable
Headers show
Series
  • [v4,1/9] dt-bindings: mtd: ingenic: Add compatible strings for JZ4740 and JZ4725B
Related show

Checks

Context Check Description
robh/checkpatch success

Commit Message

Paul Cercueil Feb. 9, 2019, 7:22 p.m.
The JZ4740 ECC hardware is not BCH but Reed-Solomon, so it makes more
sense to use the more generic ECC term.

Signed-off-by: Paul Cercueil <paul@crapouillou.net>
---

Changes:

v3: New patch

v4: No change

 .../devicetree/bindings/mtd/ingenic,jz4780-nand.txt    | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)

Comments

Rob Herring Feb. 13, 2019, 9:46 p.m. | #1
On Sat,  9 Feb 2019 16:22:58 -0300, Paul Cercueil wrote:
> The JZ4740 ECC hardware is not BCH but Reed-Solomon, so it makes more
> sense to use the more generic ECC term.
> 
> Signed-off-by: Paul Cercueil <paul@crapouillou.net>
> ---
> 
> Changes:
> 
> v3: New patch
> 
> v4: No change
> 
>  .../devicetree/bindings/mtd/ingenic,jz4780-nand.txt    | 18 +++++++++---------
>  1 file changed, 9 insertions(+), 9 deletions(-)
> 

Reviewed-by: Rob Herring <robh@kernel.org>
Miquel Raynal March 4, 2019, 9:50 a.m. | #2
Hi Paul,

Paul Cercueil <paul@crapouillou.net> wrote on Sat,  9 Feb 2019 16:22:58
-0300:

> The JZ4740 ECC hardware is not BCH but Reed-Solomon, so it makes more
> sense to use the more generic ECC term.
> 
> Signed-off-by: Paul Cercueil <paul@crapouillou.net>
> ---
> 
> Changes:
> 
> v3: New patch
> 
> v4: No change
> 
>  .../devicetree/bindings/mtd/ingenic,jz4780-nand.txt    | 18 +++++++++---------
>  1 file changed, 9 insertions(+), 9 deletions(-)
> 
> diff --git a/Documentation/devicetree/bindings/mtd/ingenic,jz4780-nand.txt b/Documentation/devicetree/bindings/mtd/ingenic,jz4780-nand.txt
> index a5b940f18bf6..5a45cc54f46d 100644
> --- a/Documentation/devicetree/bindings/mtd/ingenic,jz4780-nand.txt
> +++ b/Documentation/devicetree/bindings/mtd/ingenic,jz4780-nand.txt
> @@ -1,4 +1,4 @@
> -* Ingenic JZ4780 NAND/BCH
> +* Ingenic JZ4780 NAND/ECC
>  
>  This file documents the device tree bindings for NAND flash devices on the
>  JZ4780. NAND devices are connected to the NEMC controller (described in
> @@ -14,10 +14,10 @@ Required NAND controller device properties:
>    an offset of 0 and a size of 0x1000000 (i.e. the whole NEMC bank).
>  
>  Optional NAND controller device properties:
> -- ingenic,bch-controller: To make use of the hardware BCH controller, this
> -  property must contain a phandle for the BCH controller node. The required
> +- ingenic,bch-controller: To make use of the hardware ECC controller, this
> +  property must contain a phandle for the ECC controller node. The required

I think there is already a 'ecc-engine' property used by MTK and Atmel
NAND controllers to point to the ECC engine block. Please use this
property instead of the ingenic specific one.

>    properties for this node are described below. If this is not specified,
> -  software BCH will be used instead.
> +  software ECC will be used instead.
>  
>  Optional children nodes:
>  - Individual NAND chips are children of the NAND controller node.
> @@ -70,17 +70,17 @@ nemc: nemc@13410000 {
>  	};
>  };
>  
> -The BCH controller is a separate SoC component used for error correction on
> +The ECC controller is a separate SoC component used for error correction on
>  NAND devices. The following is a description of the device properties for a
> -BCH controller.
> +ECC controller.
>  
> -Required BCH properties:
> +Required ECC properties:
>  - compatible: Should be one of:
>    * ingenic,jz4740-ecc
>    * ingenic,jz4725b-bch
>    * ingenic,jz4780-bch
> -- reg: Should specify the BCH controller registers location and length.
> -- clocks: Clock for the BCH controller.
> +- reg: Should specify the ECC controller registers location and length.
> +- clocks: Clock for the ECC controller.
>  
>  Example:
>  

Thanks,
Miquèl
Paul Cercueil March 4, 2019, 6:23 p.m. | #3
On Mon, Mar 4, 2019 at 10:50 AM, Miquel Raynal 
<miquel.raynal@bootlin.com> wrote:
> Hi Paul,
> 
> Paul Cercueil <paul@crapouillou.net <mailto:paul@crapouillou.net>> 
> wrote on Sat,  9 Feb 2019 16:22:58
> -0300:
> 
>>  The JZ4740 ECC hardware is not BCH but Reed-Solomon, so it makes 
>> more
>>  sense to use the more generic ECC term.
>> 
>>  Signed-off-by: Paul Cercueil <paul@crapouillou.net 
>> <mailto:paul@crapouillou.net>>
>>  ---
>> 
>>  Changes:
>> 
>>  v3: New patch
>> 
>>  v4: No change
>> 
>>   .../devicetree/bindings/mtd/ingenic,jz4780-nand.txt    | 18 
>> +++++++++---------
>>   1 file changed, 9 insertions(+), 9 deletions(-)
>> 
>>  diff --git 
>> a/Documentation/devicetree/bindings/mtd/ingenic,jz4780-nand.txt 
>> b/Documentation/devicetree/bindings/mtd/ingenic,jz4780-nand.txt
>>  index a5b940f18bf6..5a45cc54f46d 100644
>>  --- a/Documentation/devicetree/bindings/mtd/ingenic,jz4780-nand.txt
>>  +++ b/Documentation/devicetree/bindings/mtd/ingenic,jz4780-nand.txt
>>  @@ -1,4 +1,4 @@
>>  -* Ingenic JZ4780 NAND/BCH
>>  +* Ingenic JZ4780 NAND/ECC
>> 
>>   This file documents the device tree bindings for NAND flash 
>> devices on the
>>   JZ4780. NAND devices are connected to the NEMC controller 
>> (described in
>>  @@ -14,10 +14,10 @@ Required NAND controller device properties:
>>     an offset of 0 and a size of 0x1000000 (i.e. the whole NEMC 
>> bank).
>> 
>>   Optional NAND controller device properties:
>>  -- ingenic,bch-controller: To make use of the hardware BCH 
>> controller, this
>>  -  property must contain a phandle for the BCH controller node. The 
>> required
>>  +- ingenic,bch-controller: To make use of the hardware ECC 
>> controller, this
>>  +  property must contain a phandle for the ECC controller node. The 
>> required
> 
> I think there is already a 'ecc-engine' property used by MTK and Atmel
> NAND controllers to point to the ECC engine block. Please use this
> property instead of the ingenic specific one.

ingenic,bch-controller is already in the devicetree ABI. I can't change 
it now...

>>     properties for this node are described below. If this is not 
>> specified,
>>  -  software BCH will be used instead.
>>  +  software ECC will be used instead.
>> 
>>   Optional children nodes:
>>   - Individual NAND chips are children of the NAND controller node.
>>  @@ -70,17 +70,17 @@ nemc: nemc@13410000 {
>>   	};
>>   };
>> 
>>  -The BCH controller is a separate SoC component used for error 
>> correction on
>>  +The ECC controller is a separate SoC component used for error 
>> correction on
>>   NAND devices. The following is a description of the device 
>> properties for a
>>  -BCH controller.
>>  +ECC controller.
>> 
>>  -Required BCH properties:
>>  +Required ECC properties:
>>   - compatible: Should be one of:
>>     * ingenic,jz4740-ecc
>>     * ingenic,jz4725b-bch
>>     * ingenic,jz4780-bch
>>  -- reg: Should specify the BCH controller registers location and 
>> length.
>>  -- clocks: Clock for the BCH controller.
>>  +- reg: Should specify the ECC controller registers location and 
>> length.
>>  +- clocks: Clock for the ECC controller.
>> 
>>   Example:
>> 
> 
> Thanks,
> Miquèl
Miquel Raynal March 4, 2019, 6:58 p.m. | #4
Hi Paul,

Paul Cercueil <paul@crapouillou.net> wrote on Mon, 04 Mar 2019 19:23:50
+0100:

> On Mon, Mar 4, 2019 at 10:50 AM, Miquel Raynal <miquel.raynal@bootlin.com> wrote:
> > Hi Paul,
> > 
> > Paul Cercueil <paul@crapouillou.net <mailto:paul@crapouillou.net>> > wrote on Sat,  9 Feb 2019 16:22:58
> > -0300:
> >   
> >>  The JZ4740 ECC hardware is not BCH but Reed-Solomon, so it makes >> more
> >>  sense to use the more generic ECC term.  
> >> >>  Signed-off-by: Paul Cercueil <paul@crapouillou.net >> <mailto:paul@crapouillou.net>>  
> >>  ---  
> >> >>  Changes:
> >> >>  v3: New patch
> >> >>  v4: No change
> >> >>   .../devicetree/bindings/mtd/ingenic,jz4780-nand.txt    | 18 >> +++++++++---------  
> >>   1 file changed, 9 insertions(+), 9 deletions(-)  
> >> >>  diff --git >> a/Documentation/devicetree/bindings/mtd/ingenic,jz4780-nand.txt >> b/Documentation/devicetree/bindings/mtd/ingenic,jz4780-nand.txt  
> >>  index a5b940f18bf6..5a45cc54f46d 100644
> >>  --- a/Documentation/devicetree/bindings/mtd/ingenic,jz4780-nand.txt
> >>  +++ b/Documentation/devicetree/bindings/mtd/ingenic,jz4780-nand.txt
> >>  @@ -1,4 +1,4 @@
> >>  -* Ingenic JZ4780 NAND/BCH
> >>  +* Ingenic JZ4780 NAND/ECC  
> >> >>   This file documents the device tree bindings for NAND flash >> devices on the  
> >>   JZ4780. NAND devices are connected to the NEMC controller >> (described in
> >>  @@ -14,10 +14,10 @@ Required NAND controller device properties:
> >>     an offset of 0 and a size of 0x1000000 (i.e. the whole NEMC >> bank).  
> >> >>   Optional NAND controller device properties:  
> >>  -- ingenic,bch-controller: To make use of the hardware BCH >> controller, this
> >>  -  property must contain a phandle for the BCH controller node. The >> required
> >>  +- ingenic,bch-controller: To make use of the hardware ECC >> controller, this
> >>  +  property must contain a phandle for the ECC controller node. The >> required  
> > 
> > I think there is already a 'ecc-engine' property used by MTK and Atmel
> > NAND controllers to point to the ECC engine block. Please use this
> > property instead of the ingenic specific one.  
> 
> ingenic,bch-controller is already in the devicetree ABI. I can't change it now...

Oh, right...

Well, same thing as before, maybe you can change it and keep the driver
backward compatible? I don't want new DT to use this property because
it is not generic and we must have a way from the core to find the ECC
engine handle when the controller does not embed one itself (thus, the
ecc-engine property which is around for quite some time already).

Thanks,
Miquèl
Paul Cercueil March 13, 2019, 12:59 p.m. | #5
Le lun. 4 mars 2019 à 15:58, Miquel Raynal <miquel.raynal@bootlin.com> 
a écrit :
> Hi Paul,
> 
> Paul Cercueil <paul@crapouillou.net> wrote on Mon, 04 Mar 2019 
> 19:23:50
> +0100:
> 
>>  On Mon, Mar 4, 2019 at 10:50 AM, Miquel Raynal 
>> <miquel.raynal@bootlin.com> wrote:
>>  > Hi Paul,
>>  >
>>  > Paul Cercueil <paul@crapouillou.net 
>> <mailto:paul@crapouillou.net>> > wrote on Sat,  9 Feb 2019 16:22:58
>>  > -0300:
>>  >
>>  >>  The JZ4740 ECC hardware is not BCH but Reed-Solomon, so it 
>> makes >> more
>>  >>  sense to use the more generic ECC term.
>>  >> >>  Signed-off-by: Paul Cercueil <paul@crapouillou.net >> 
>> <mailto:paul@crapouillou.net>>
>>  >>  ---
>>  >> >>  Changes:
>>  >> >>  v3: New patch
>>  >> >>  v4: No change
>>  >> >>   .../devicetree/bindings/mtd/ingenic,jz4780-nand.txt    | 18 
>> >> +++++++++---------
>>  >>   1 file changed, 9 insertions(+), 9 deletions(-)
>>  >> >>  diff --git >> 
>> a/Documentation/devicetree/bindings/mtd/ingenic,jz4780-nand.txt >> 
>> b/Documentation/devicetree/bindings/mtd/ingenic,jz4780-nand.txt
>>  >>  index a5b940f18bf6..5a45cc54f46d 100644
>>  >>  --- 
>> a/Documentation/devicetree/bindings/mtd/ingenic,jz4780-nand.txt
>>  >>  +++ 
>> b/Documentation/devicetree/bindings/mtd/ingenic,jz4780-nand.txt
>>  >>  @@ -1,4 +1,4 @@
>>  >>  -* Ingenic JZ4780 NAND/BCH
>>  >>  +* Ingenic JZ4780 NAND/ECC
>>  >> >>   This file documents the device tree bindings for NAND flash 
>> >> devices on the
>>  >>   JZ4780. NAND devices are connected to the NEMC controller >> 
>> (described in
>>  >>  @@ -14,10 +14,10 @@ Required NAND controller device properties:
>>  >>     an offset of 0 and a size of 0x1000000 (i.e. the whole NEMC 
>> >> bank).
>>  >> >>   Optional NAND controller device properties:
>>  >>  -- ingenic,bch-controller: To make use of the hardware BCH >> 
>> controller, this
>>  >>  -  property must contain a phandle for the BCH controller node. 
>> The >> required
>>  >>  +- ingenic,bch-controller: To make use of the hardware ECC >> 
>> controller, this
>>  >>  +  property must contain a phandle for the ECC controller node. 
>> The >> required
>>  >
>>  > I think there is already a 'ecc-engine' property used by MTK and 
>> Atmel
>>  > NAND controllers to point to the ECC engine block. Please use this
>>  > property instead of the ingenic specific one.
>> 
>>  ingenic,bch-controller is already in the devicetree ABI. I can't 
>> change it now...
> 
> Oh, right...
> 
> Well, same thing as before, maybe you can change it and keep the 
> driver
> backward compatible? I don't want new DT to use this property because
> it is not generic and we must have a way from the core to find the ECC
> engine handle when the controller does not embed one itself (thus, the
> ecc-engine property which is around for quite some time already).

I can do that. Will the new ECC framework work with the "ecc-engine" 
property?

-Paul
Miquel Raynal March 13, 2019, 1:12 p.m. | #6
Hi Paul,

Paul Cercueil <paul@crapouillou.net> wrote on Wed, 13 Mar 2019 09:59:48
-0300:

> Le lun. 4 mars 2019 à 15:58, Miquel Raynal <miquel.raynal@bootlin.com> a écrit :
> > Hi Paul,
> > 
> > Paul Cercueil <paul@crapouillou.net> wrote on Mon, 04 Mar 2019 > 19:23:50
> > +0100:
> >   
> >>  On Mon, Mar 4, 2019 at 10:50 AM, Miquel Raynal >> <miquel.raynal@bootlin.com> wrote:  
> >>  > Hi Paul,
> >>  >
> >>  > Paul Cercueil <paul@crapouillou.net >> <mailto:paul@crapouillou.net>> > wrote on Sat,  9 Feb 2019 16:22:58
> >>  > -0300:
> >>  >  
> >>  >>  The JZ4740 ECC hardware is not BCH but Reed-Solomon, so it >> makes >> more
> >>  >>  sense to use the more generic ECC term.  
> >>  >> >>  Signed-off-by: Paul Cercueil <paul@crapouillou.net >> >> <mailto:paul@crapouillou.net>>  
> >>  >>  ---  
> >>  >> >>  Changes:
> >>  >> >>  v3: New patch
> >>  >> >>  v4: No change
> >>  >> >>   .../devicetree/bindings/mtd/ingenic,jz4780-nand.txt    | 18 >> >> +++++++++---------  
> >>  >>   1 file changed, 9 insertions(+), 9 deletions(-)  
> >>  >> >>  diff --git >> >> a/Documentation/devicetree/bindings/mtd/ingenic,jz4780-nand.txt >> >> b/Documentation/devicetree/bindings/mtd/ingenic,jz4780-nand.txt  
> >>  >>  index a5b940f18bf6..5a45cc54f46d 100644  
> >>  >>  --- >> a/Documentation/devicetree/bindings/mtd/ingenic,jz4780-nand.txt  
> >>  >>  +++ >> b/Documentation/devicetree/bindings/mtd/ingenic,jz4780-nand.txt
> >>  >>  @@ -1,4 +1,4 @@
> >>  >>  -* Ingenic JZ4780 NAND/BCH
> >>  >>  +* Ingenic JZ4780 NAND/ECC  
> >>  >> >>   This file documents the device tree bindings for NAND flash >> >> devices on the  
> >>  >>   JZ4780. NAND devices are connected to the NEMC controller >> >> (described in
> >>  >>  @@ -14,10 +14,10 @@ Required NAND controller device properties:
> >>  >>     an offset of 0 and a size of 0x1000000 (i.e. the whole NEMC >> >> bank).  
> >>  >> >>   Optional NAND controller device properties:  
> >>  >>  -- ingenic,bch-controller: To make use of the hardware BCH >> >> controller, this
> >>  >>  -  property must contain a phandle for the BCH controller node. >> The >> required
> >>  >>  +- ingenic,bch-controller: To make use of the hardware ECC >> >> controller, this
> >>  >>  +  property must contain a phandle for the ECC controller node. >> The >> required  
> >>  >
> >>  > I think there is already a 'ecc-engine' property used by MTK and >> Atmel
> >>  > NAND controllers to point to the ECC engine block. Please use this
> >>  > property instead of the ingenic specific one.  
> >> >>  ingenic,bch-controller is already in the devicetree ABI. I can't >> change it now...  
> > 
> > Oh, right...
> > 
> > Well, same thing as before, maybe you can change it and keep the > driver
> > backward compatible? I don't want new DT to use this property because
> > it is not generic and we must have a way from the core to find the ECC
> > engine handle when the controller does not embed one itself (thus, the
> > ecc-engine property which is around for quite some time already).  
> 
> I can do that. Will the new ECC framework work with the "ecc-engine" property?

Yes.

Right now it does not, but when supporting raw NAND devices, it will
have to.


Thanks,
Miquèl

Patch

diff --git a/Documentation/devicetree/bindings/mtd/ingenic,jz4780-nand.txt b/Documentation/devicetree/bindings/mtd/ingenic,jz4780-nand.txt
index a5b940f18bf6..5a45cc54f46d 100644
--- a/Documentation/devicetree/bindings/mtd/ingenic,jz4780-nand.txt
+++ b/Documentation/devicetree/bindings/mtd/ingenic,jz4780-nand.txt
@@ -1,4 +1,4 @@ 
-* Ingenic JZ4780 NAND/BCH
+* Ingenic JZ4780 NAND/ECC
 
 This file documents the device tree bindings for NAND flash devices on the
 JZ4780. NAND devices are connected to the NEMC controller (described in
@@ -14,10 +14,10 @@  Required NAND controller device properties:
   an offset of 0 and a size of 0x1000000 (i.e. the whole NEMC bank).
 
 Optional NAND controller device properties:
-- ingenic,bch-controller: To make use of the hardware BCH controller, this
-  property must contain a phandle for the BCH controller node. The required
+- ingenic,bch-controller: To make use of the hardware ECC controller, this
+  property must contain a phandle for the ECC controller node. The required
   properties for this node are described below. If this is not specified,
-  software BCH will be used instead.
+  software ECC will be used instead.
 
 Optional children nodes:
 - Individual NAND chips are children of the NAND controller node.
@@ -70,17 +70,17 @@  nemc: nemc@13410000 {
 	};
 };
 
-The BCH controller is a separate SoC component used for error correction on
+The ECC controller is a separate SoC component used for error correction on
 NAND devices. The following is a description of the device properties for a
-BCH controller.
+ECC controller.
 
-Required BCH properties:
+Required ECC properties:
 - compatible: Should be one of:
   * ingenic,jz4740-ecc
   * ingenic,jz4725b-bch
   * ingenic,jz4780-bch
-- reg: Should specify the BCH controller registers location and length.
-- clocks: Clock for the BCH controller.
+- reg: Should specify the ECC controller registers location and length.
+- clocks: Clock for the ECC controller.
 
 Example: