Message ID | 20190209192305.4434-2-paul@crapouillou.net |
---|---|
State | Not Applicable, archived |
Headers | show |
Series | [v4,1/9] dt-bindings: mtd: ingenic: Add compatible strings for JZ4740 and JZ4725B | expand |
Context | Check | Description |
---|---|---|
robh/checkpatch | success |
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>
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
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
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
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
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
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:
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(-)