diff mbox

ARM: dts: kirkwood: add "nor-jedec" flash compatible binding

Message ID 1431066079-19725-1-git-send-email-zajec5@gmail.com
State Not Applicable
Headers show

Commit Message

Rafał Miłecki May 8, 2015, 6:21 a.m. UTC
Starting with commits
8ff16cf ("Documentation: devicetree: m25p80: add "nor-jedec" binding")
1103b85 ("mtd: m25p80: bind to "nor-jedec" ID, for auto-detection")
we have "nor-jedec" binding indicating support for JEDEC identification.

Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
---
 arch/arm/boot/dts/kirkwood-b3.dts              | 2 +-
 arch/arm/boot/dts/kirkwood-cloudbox.dts        | 2 +-
 arch/arm/boot/dts/kirkwood-dir665.dts          | 2 +-
 arch/arm/boot/dts/kirkwood-dreamplug.dts       | 2 +-
 arch/arm/boot/dts/kirkwood-lsxl.dtsi           | 2 +-
 arch/arm/boot/dts/kirkwood-mv88f6281gtw-ge.dts | 2 +-
 arch/arm/boot/dts/kirkwood-netxbig.dtsi        | 2 +-
 arch/arm/boot/dts/kirkwood-ns2-common.dtsi     | 2 +-
 arch/arm/boot/dts/kirkwood-rd88f6192.dts       | 2 +-
 arch/arm/boot/dts/kirkwood-synology.dtsi       | 2 +-
 arch/arm/boot/dts/kirkwood-t5325.dts           | 2 +-
 arch/arm/boot/dts/kirkwood-ts219.dtsi          | 2 +-
 12 files changed, 12 insertions(+), 12 deletions(-)

Comments

Gregory CLEMENT May 11, 2015, 1:09 p.m. UTC | #1
Hi Rafał,

On 08/05/2015 08:21, Rafał Miłecki wrote:
> Starting with commits
> 8ff16cf ("Documentation: devicetree: m25p80: add "nor-jedec" binding")
> 1103b85 ("mtd: m25p80: bind to "nor-jedec" ID, for auto-detection")
> we have "nor-jedec" binding indicating support for JEDEC identification.

I have the same question that for mvebu: did you actually check that all
the NOR flash referenced in the dts supports the JEDEC identification?

Then again, if it id the case I will add it in mvebu/dt soon, unless Andrew,
Jason or any other developer who has submitted the dts is aware of a restriction
about applying it.

Thanks,

Gregory
> 
> Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
> ---
>  arch/arm/boot/dts/kirkwood-b3.dts              | 2 +-
>  arch/arm/boot/dts/kirkwood-cloudbox.dts        | 2 +-
>  arch/arm/boot/dts/kirkwood-dir665.dts          | 2 +-
>  arch/arm/boot/dts/kirkwood-dreamplug.dts       | 2 +-
>  arch/arm/boot/dts/kirkwood-lsxl.dtsi           | 2 +-
>  arch/arm/boot/dts/kirkwood-mv88f6281gtw-ge.dts | 2 +-
>  arch/arm/boot/dts/kirkwood-netxbig.dtsi        | 2 +-
>  arch/arm/boot/dts/kirkwood-ns2-common.dtsi     | 2 +-
>  arch/arm/boot/dts/kirkwood-rd88f6192.dts       | 2 +-
>  arch/arm/boot/dts/kirkwood-synology.dtsi       | 2 +-
>  arch/arm/boot/dts/kirkwood-t5325.dts           | 2 +-
>  arch/arm/boot/dts/kirkwood-ts219.dtsi          | 2 +-
>  12 files changed, 12 insertions(+), 12 deletions(-)
> 
> diff --git a/arch/arm/boot/dts/kirkwood-b3.dts b/arch/arm/boot/dts/kirkwood-b3.dts
> index c9247f8..103551f 100644
> --- a/arch/arm/boot/dts/kirkwood-b3.dts
> +++ b/arch/arm/boot/dts/kirkwood-b3.dts
> @@ -74,7 +74,7 @@
>  			m25p16@0 {
>  				#address-cells = <1>;
>  				#size-cells = <1>;
> -				compatible = "st,m25p16";
> +				compatible = "st,m25p16", "nor-jedec";
>  				reg = <0>;
>  				spi-max-frequency = <40000000>;
>  				mode = <0>;
> diff --git a/arch/arm/boot/dts/kirkwood-cloudbox.dts b/arch/arm/boot/dts/kirkwood-cloudbox.dts
> index ab6ab49..4a04985 100644
> --- a/arch/arm/boot/dts/kirkwood-cloudbox.dts
> +++ b/arch/arm/boot/dts/kirkwood-cloudbox.dts
> @@ -42,7 +42,7 @@
>  			flash@0 {
>  				#address-cells = <1>;
>  				#size-cells = <1>;
> -				compatible = "mxicy,mx25l4005a";
> +				compatible = "mxicy,mx25l4005a", "nor-jedec";
>  				reg = <0>;
>  				spi-max-frequency = <20000000>;
>  				mode = <0>;
> diff --git a/arch/arm/boot/dts/kirkwood-dir665.dts b/arch/arm/boot/dts/kirkwood-dir665.dts
> index 786959e..94c80a2 100644
> --- a/arch/arm/boot/dts/kirkwood-dir665.dts
> +++ b/arch/arm/boot/dts/kirkwood-dir665.dts
> @@ -93,7 +93,7 @@
>  			m25p80@0 {
>  				#address-cells = <1>;
>  				#size-cells = <1>;
> -				compatible = "mxicy,mx25l12805d";
> +				compatible = "mxicy,mx25l12805d", "nor-jedec";
>  				spi-max-frequency = <50000000>;
>  				reg = <0>;
>  
> diff --git a/arch/arm/boot/dts/kirkwood-dreamplug.dts b/arch/arm/boot/dts/kirkwood-dreamplug.dts
> index 6467c79..c9a1c09 100644
> --- a/arch/arm/boot/dts/kirkwood-dreamplug.dts
> +++ b/arch/arm/boot/dts/kirkwood-dreamplug.dts
> @@ -42,7 +42,7 @@
>  			m25p40@0 {
>  				#address-cells = <1>;
>  				#size-cells = <1>;
> -				compatible = "mxicy,mx25l1606e";
> +				compatible = "mxicy,mx25l1606e", "nor-jedec";
>  				reg = <0>;
>  				spi-max-frequency = <50000000>;
>  				mode = <0>;
> diff --git a/arch/arm/boot/dts/kirkwood-lsxl.dtsi b/arch/arm/boot/dts/kirkwood-lsxl.dtsi
> index 5348447..58e197a 100644
> --- a/arch/arm/boot/dts/kirkwood-lsxl.dtsi
> +++ b/arch/arm/boot/dts/kirkwood-lsxl.dtsi
> @@ -74,7 +74,7 @@
>  			m25p40@0 {
>  				#address-cells = <1>;
>  				#size-cells = <1>;
> -				compatible = "m25p40";
> +				compatible = "m25p40", "nor-jedec";
>  				reg = <0>;
>  				spi-max-frequency = <25000000>;
>  				mode = <0>;
> diff --git a/arch/arm/boot/dts/kirkwood-mv88f6281gtw-ge.dts b/arch/arm/boot/dts/kirkwood-mv88f6281gtw-ge.dts
> index f82827d..ae68061 100644
> --- a/arch/arm/boot/dts/kirkwood-mv88f6281gtw-ge.dts
> +++ b/arch/arm/boot/dts/kirkwood-mv88f6281gtw-ge.dts
> @@ -65,7 +65,7 @@
>  			flash@0 {
>  				#address-cells = <1>;
>  				#size-cells = <1>;
> -				compatible = "mxicy,mx25l12805d";
> +				compatible = "mxicy,mx25l12805d", "nor-jedec";
>  				reg = <0>;
>  				spi-max-frequency = <50000000>;
>  				mode = <0>;
> diff --git a/arch/arm/boot/dts/kirkwood-netxbig.dtsi b/arch/arm/boot/dts/kirkwood-netxbig.dtsi
> index b0cfb7c..11d21c0 100644
> --- a/arch/arm/boot/dts/kirkwood-netxbig.dtsi
> +++ b/arch/arm/boot/dts/kirkwood-netxbig.dtsi
> @@ -33,7 +33,7 @@
>  			flash@0 {
>  				#address-cells = <1>;
>  				#size-cells = <1>;
> -				compatible = "mxicy,mx25l4005a";
> +				compatible = "mxicy,mx25l4005a", "nor-jedec";
>  				reg = <0>;
>  				spi-max-frequency = <20000000>;
>  				mode = <0>;
> diff --git a/arch/arm/boot/dts/kirkwood-ns2-common.dtsi b/arch/arm/boot/dts/kirkwood-ns2-common.dtsi
> index fe6c024..b860b7f 100644
> --- a/arch/arm/boot/dts/kirkwood-ns2-common.dtsi
> +++ b/arch/arm/boot/dts/kirkwood-ns2-common.dtsi
> @@ -29,7 +29,7 @@
>  			flash@0 {
>  				#address-cells = <1>;
>  				#size-cells = <1>;
> -				compatible = "mxicy,mx25l4005a";
> +				compatible = "mxicy,mx25l4005a", "nor-jedec";
>  				reg = <0>;
>  				spi-max-frequency = <20000000>;
>  				mode = <0>;
> diff --git a/arch/arm/boot/dts/kirkwood-rd88f6192.dts b/arch/arm/boot/dts/kirkwood-rd88f6192.dts
> index 35a29de..80dff2f 100644
> --- a/arch/arm/boot/dts/kirkwood-rd88f6192.dts
> +++ b/arch/arm/boot/dts/kirkwood-rd88f6192.dts
> @@ -61,7 +61,7 @@
>  			m25p128@0 {
>  				#address-cells = <1>;
>  				#size-cells = <1>;
> -				compatible = "st,m25p128";
> +				compatible = "st,m25p128", "nor-jedec";
>  				reg = <0>;
>  				spi-max-frequency = <20000000>;
>  				mode = <0>;
> diff --git a/arch/arm/boot/dts/kirkwood-synology.dtsi b/arch/arm/boot/dts/kirkwood-synology.dtsi
> index 8be5b2e..48f4b02 100644
> --- a/arch/arm/boot/dts/kirkwood-synology.dtsi
> +++ b/arch/arm/boot/dts/kirkwood-synology.dtsi
> @@ -217,7 +217,7 @@
>  			m25p80@0 {
>  				#address-cells = <1>;
>  				#size-cells = <1>;
> -				compatible = "st,m25p80";
> +				compatible = "st,m25p80", "nor-jedec";
>  				reg = <0>;
>  				spi-max-frequency = <20000000>;
>  				mode = <0>;
> diff --git a/arch/arm/boot/dts/kirkwood-t5325.dts b/arch/arm/boot/dts/kirkwood-t5325.dts
> index 610ec0f..5dbd9a0 100644
> --- a/arch/arm/boot/dts/kirkwood-t5325.dts
> +++ b/arch/arm/boot/dts/kirkwood-t5325.dts
> @@ -88,7 +88,7 @@
>  			flash@0 {
>  				#address-cells = <1>;
>  				#size-cells = <1>;
> -				compatible = "st,m25p80";
> +				compatible = "st,m25p80", "nor-jedec";
>  				spi-max-frequency = <86000000>;
>  				reg = <0>;
>  				mode = <0>;
> diff --git a/arch/arm/boot/dts/kirkwood-ts219.dtsi b/arch/arm/boot/dts/kirkwood-ts219.dtsi
> index df7f152..cbb1049 100644
> --- a/arch/arm/boot/dts/kirkwood-ts219.dtsi
> +++ b/arch/arm/boot/dts/kirkwood-ts219.dtsi
> @@ -49,7 +49,7 @@
>  			m25p128@0 {
>  				#address-cells = <1>;
>  				#size-cells = <1>;
> -				compatible = "m25p128";
> +				compatible = "m25p128", "nor-jedec";
>  				reg = <0>;
>  				spi-max-frequency = <20000000>;
>  				mode = <0>;
>
Andrew Lunn May 11, 2015, 1:25 p.m. UTC | #2
On Mon, May 11, 2015 at 03:09:28PM +0200, Gregory CLEMENT wrote:
> Hi Rafa??,
> 
> On 08/05/2015 08:21, Rafa?? Mi??ecki wrote:
> > Starting with commits
> > 8ff16cf ("Documentation: devicetree: m25p80: add "nor-jedec" binding")
> > 1103b85 ("mtd: m25p80: bind to "nor-jedec" ID, for auto-detection")
> > we have "nor-jedec" binding indicating support for JEDEC identification.
> 
> I have the same question that for mvebu: did you actually check that all
> the NOR flash referenced in the dts supports the JEDEC identification?

Hi Gregory

That is a good question, but i've no knowledge in this area.

Rafa??, what is the long term plan? Will the device specific property
be removed sometime in the future, and nor-jedec probing be used to
identify the device? Is this already the actual behaviour?  I've seen
warnings when the DT entry specified the wrong device, something like:
Found ABC, Expected XYZ.

      Andrew
Rafał Miłecki May 12, 2015, 5:07 a.m. UTC | #3
On 11 May 2015 at 15:09, Gregory CLEMENT
<gregory.clement@free-electrons.com> wrote:
> On 08/05/2015 08:21, Rafał Miłecki wrote:
>> Starting with commits
>> 8ff16cf ("Documentation: devicetree: m25p80: add "nor-jedec" binding")
>> 1103b85 ("mtd: m25p80: bind to "nor-jedec" ID, for auto-detection")
>> we have "nor-jedec" binding indicating support for JEDEC identification.
>
> I have the same question that for mvebu: did you actually check that all
> the NOR flash referenced in the dts supports the JEDEC identification?

Yes, I checked *all* of them.


> Then again, if it id the case I will add it in mvebu/dt soon, unless Andrew,
> Jason or any other developer who has submitted the dts is aware of a restriction
> about applying it.

Please wait to see if the binding will be changed or not (tegre patch
thread discussion).
Rafał Miłecki May 12, 2015, 5:15 a.m. UTC | #4
On 11 May 2015 at 15:25, Andrew Lunn <andrew@lunn.ch> wrote:
> On Mon, May 11, 2015 at 03:09:28PM +0200, Gregory CLEMENT wrote:
>> On 08/05/2015 08:21, Rafa?? Mi??ecki wrote:
>> > Starting with commits
>> > 8ff16cf ("Documentation: devicetree: m25p80: add "nor-jedec" binding")
>> > 1103b85 ("mtd: m25p80: bind to "nor-jedec" ID, for auto-detection")
>> > we have "nor-jedec" binding indicating support for JEDEC identification.
>>
>> I have the same question that for mvebu: did you actually check that all
>> the NOR flash referenced in the dts supports the JEDEC identification?
>
> Rafa??, what is the long term plan?

One thing we should do for sure is:
1) Not adding support for new bidnings in the spi-nor driver unless
some chip really needs some special handling
2) Make sure all new entries will include both: specific chip &
generic JEDEC bindings


> Will the device specific property
> be removed sometime in the future, and nor-jedec probing be used to
> identify the device? Is this already the actual behaviour?

Probably not really, because of keeping backward compatibility. Please
mind some out-of-tree DT users and some DTB files being natively on
flashes instead of appended to the kernel. The cost is low, so
probably we can live with that.


> I've seen
> warnings when the DT entry specified the wrong device, something like:
> Found ABC, Expected XYZ.

This happens when DT/platform data provides wrong info about flash
chipset. Driver always queries hardware, even if a flash model was
provided. In case of finding different flash, it prints a warning.
Gregory CLEMENT May 15, 2015, 12:45 p.m. UTC | #5
Hi Rafał,

On 12/05/2015 07:07, Rafał Miłecki wrote:
> On 11 May 2015 at 15:09, Gregory CLEMENT
> <gregory.clement@free-electrons.com> wrote:
>> On 08/05/2015 08:21, Rafał Miłecki wrote:
>>> Starting with commits
>>> 8ff16cf ("Documentation: devicetree: m25p80: add "nor-jedec" binding")
>>> 1103b85 ("mtd: m25p80: bind to "nor-jedec" ID, for auto-detection")
>>> we have "nor-jedec" binding indicating support for JEDEC identification.
>>
>> I have the same question that for mvebu: did you actually check that all
>> the NOR flash referenced in the dts supports the JEDEC identification?
> 
> Yes, I checked *all* of them.
> 
> 
>> Then again, if it id the case I will add it in mvebu/dt soon, unless Andrew,
>> Jason or any other developer who has submitted the dts is aware of a restriction
>> about applying it.
> 
> Please wait to see if the binding will be changed or not (tegre patch
> thread discussion).
> 
OK I won't take them, and I am waiting for a v2.


Thanks,

Gregory
diff mbox

Patch

diff --git a/arch/arm/boot/dts/kirkwood-b3.dts b/arch/arm/boot/dts/kirkwood-b3.dts
index c9247f8..103551f 100644
--- a/arch/arm/boot/dts/kirkwood-b3.dts
+++ b/arch/arm/boot/dts/kirkwood-b3.dts
@@ -74,7 +74,7 @@ 
 			m25p16@0 {
 				#address-cells = <1>;
 				#size-cells = <1>;
-				compatible = "st,m25p16";
+				compatible = "st,m25p16", "nor-jedec";
 				reg = <0>;
 				spi-max-frequency = <40000000>;
 				mode = <0>;
diff --git a/arch/arm/boot/dts/kirkwood-cloudbox.dts b/arch/arm/boot/dts/kirkwood-cloudbox.dts
index ab6ab49..4a04985 100644
--- a/arch/arm/boot/dts/kirkwood-cloudbox.dts
+++ b/arch/arm/boot/dts/kirkwood-cloudbox.dts
@@ -42,7 +42,7 @@ 
 			flash@0 {
 				#address-cells = <1>;
 				#size-cells = <1>;
-				compatible = "mxicy,mx25l4005a";
+				compatible = "mxicy,mx25l4005a", "nor-jedec";
 				reg = <0>;
 				spi-max-frequency = <20000000>;
 				mode = <0>;
diff --git a/arch/arm/boot/dts/kirkwood-dir665.dts b/arch/arm/boot/dts/kirkwood-dir665.dts
index 786959e..94c80a2 100644
--- a/arch/arm/boot/dts/kirkwood-dir665.dts
+++ b/arch/arm/boot/dts/kirkwood-dir665.dts
@@ -93,7 +93,7 @@ 
 			m25p80@0 {
 				#address-cells = <1>;
 				#size-cells = <1>;
-				compatible = "mxicy,mx25l12805d";
+				compatible = "mxicy,mx25l12805d", "nor-jedec";
 				spi-max-frequency = <50000000>;
 				reg = <0>;
 
diff --git a/arch/arm/boot/dts/kirkwood-dreamplug.dts b/arch/arm/boot/dts/kirkwood-dreamplug.dts
index 6467c79..c9a1c09 100644
--- a/arch/arm/boot/dts/kirkwood-dreamplug.dts
+++ b/arch/arm/boot/dts/kirkwood-dreamplug.dts
@@ -42,7 +42,7 @@ 
 			m25p40@0 {
 				#address-cells = <1>;
 				#size-cells = <1>;
-				compatible = "mxicy,mx25l1606e";
+				compatible = "mxicy,mx25l1606e", "nor-jedec";
 				reg = <0>;
 				spi-max-frequency = <50000000>;
 				mode = <0>;
diff --git a/arch/arm/boot/dts/kirkwood-lsxl.dtsi b/arch/arm/boot/dts/kirkwood-lsxl.dtsi
index 5348447..58e197a 100644
--- a/arch/arm/boot/dts/kirkwood-lsxl.dtsi
+++ b/arch/arm/boot/dts/kirkwood-lsxl.dtsi
@@ -74,7 +74,7 @@ 
 			m25p40@0 {
 				#address-cells = <1>;
 				#size-cells = <1>;
-				compatible = "m25p40";
+				compatible = "m25p40", "nor-jedec";
 				reg = <0>;
 				spi-max-frequency = <25000000>;
 				mode = <0>;
diff --git a/arch/arm/boot/dts/kirkwood-mv88f6281gtw-ge.dts b/arch/arm/boot/dts/kirkwood-mv88f6281gtw-ge.dts
index f82827d..ae68061 100644
--- a/arch/arm/boot/dts/kirkwood-mv88f6281gtw-ge.dts
+++ b/arch/arm/boot/dts/kirkwood-mv88f6281gtw-ge.dts
@@ -65,7 +65,7 @@ 
 			flash@0 {
 				#address-cells = <1>;
 				#size-cells = <1>;
-				compatible = "mxicy,mx25l12805d";
+				compatible = "mxicy,mx25l12805d", "nor-jedec";
 				reg = <0>;
 				spi-max-frequency = <50000000>;
 				mode = <0>;
diff --git a/arch/arm/boot/dts/kirkwood-netxbig.dtsi b/arch/arm/boot/dts/kirkwood-netxbig.dtsi
index b0cfb7c..11d21c0 100644
--- a/arch/arm/boot/dts/kirkwood-netxbig.dtsi
+++ b/arch/arm/boot/dts/kirkwood-netxbig.dtsi
@@ -33,7 +33,7 @@ 
 			flash@0 {
 				#address-cells = <1>;
 				#size-cells = <1>;
-				compatible = "mxicy,mx25l4005a";
+				compatible = "mxicy,mx25l4005a", "nor-jedec";
 				reg = <0>;
 				spi-max-frequency = <20000000>;
 				mode = <0>;
diff --git a/arch/arm/boot/dts/kirkwood-ns2-common.dtsi b/arch/arm/boot/dts/kirkwood-ns2-common.dtsi
index fe6c024..b860b7f 100644
--- a/arch/arm/boot/dts/kirkwood-ns2-common.dtsi
+++ b/arch/arm/boot/dts/kirkwood-ns2-common.dtsi
@@ -29,7 +29,7 @@ 
 			flash@0 {
 				#address-cells = <1>;
 				#size-cells = <1>;
-				compatible = "mxicy,mx25l4005a";
+				compatible = "mxicy,mx25l4005a", "nor-jedec";
 				reg = <0>;
 				spi-max-frequency = <20000000>;
 				mode = <0>;
diff --git a/arch/arm/boot/dts/kirkwood-rd88f6192.dts b/arch/arm/boot/dts/kirkwood-rd88f6192.dts
index 35a29de..80dff2f 100644
--- a/arch/arm/boot/dts/kirkwood-rd88f6192.dts
+++ b/arch/arm/boot/dts/kirkwood-rd88f6192.dts
@@ -61,7 +61,7 @@ 
 			m25p128@0 {
 				#address-cells = <1>;
 				#size-cells = <1>;
-				compatible = "st,m25p128";
+				compatible = "st,m25p128", "nor-jedec";
 				reg = <0>;
 				spi-max-frequency = <20000000>;
 				mode = <0>;
diff --git a/arch/arm/boot/dts/kirkwood-synology.dtsi b/arch/arm/boot/dts/kirkwood-synology.dtsi
index 8be5b2e..48f4b02 100644
--- a/arch/arm/boot/dts/kirkwood-synology.dtsi
+++ b/arch/arm/boot/dts/kirkwood-synology.dtsi
@@ -217,7 +217,7 @@ 
 			m25p80@0 {
 				#address-cells = <1>;
 				#size-cells = <1>;
-				compatible = "st,m25p80";
+				compatible = "st,m25p80", "nor-jedec";
 				reg = <0>;
 				spi-max-frequency = <20000000>;
 				mode = <0>;
diff --git a/arch/arm/boot/dts/kirkwood-t5325.dts b/arch/arm/boot/dts/kirkwood-t5325.dts
index 610ec0f..5dbd9a0 100644
--- a/arch/arm/boot/dts/kirkwood-t5325.dts
+++ b/arch/arm/boot/dts/kirkwood-t5325.dts
@@ -88,7 +88,7 @@ 
 			flash@0 {
 				#address-cells = <1>;
 				#size-cells = <1>;
-				compatible = "st,m25p80";
+				compatible = "st,m25p80", "nor-jedec";
 				spi-max-frequency = <86000000>;
 				reg = <0>;
 				mode = <0>;
diff --git a/arch/arm/boot/dts/kirkwood-ts219.dtsi b/arch/arm/boot/dts/kirkwood-ts219.dtsi
index df7f152..cbb1049 100644
--- a/arch/arm/boot/dts/kirkwood-ts219.dtsi
+++ b/arch/arm/boot/dts/kirkwood-ts219.dtsi
@@ -49,7 +49,7 @@ 
 			m25p128@0 {
 				#address-cells = <1>;
 				#size-cells = <1>;
-				compatible = "m25p128";
+				compatible = "m25p128", "nor-jedec";
 				reg = <0>;
 				spi-max-frequency = <20000000>;
 				mode = <0>;