Thread (14 messages) 14 messages, 2 authors, 2017-12-21

Re: [PATCH 1/5] dt-bindings: at24: consistently document the compatible property

From: Javier Martinez Canillas <javier@dowhile0.org>
Date: 2017-12-21 13:29:59
Also in: linux-i2c, lkml

On Thu, Dec 21, 2017 at 2:28 PM, Bartosz Golaszewski [off-list ref] wrote:
2017-12-21 14:19 GMT+01:00 Javier Martinez Canillas [off-list ref]:
quoted
Hello Bartosz,

Nice patch.

On Thu, Dec 21, 2017 at 2:08 PM, Bartosz Golaszewski [off-list ref] wrote:
quoted
Current description of the compatible property for at24 is quite vague.

Specify an exact list of accepted compatibles and document the - now
deprecated - strings which were previously used in device tree files.

Signed-off-by: Bartosz Golaszewski <redacted>
---
 Documentation/devicetree/bindings/eeprom/at24.txt | 50 +++++++++++++----------
 1 file changed, 28 insertions(+), 22 deletions(-)
diff --git a/Documentation/devicetree/bindings/eeprom/at24.txt b/Documentation/devicetree/bindings/eeprom/at24.txt
index cbc80e194ac6..6ccbd000bfa4 100644
--- a/Documentation/devicetree/bindings/eeprom/at24.txt
+++ b/Documentation/devicetree/bindings/eeprom/at24.txt
@@ -2,28 +2,34 @@ EEPROMs (I2C)

 Required properties:

-  - compatible : should be "<manufacturer>,<type>", like these:
-
-       "atmel,24c00", "atmel,24c01", "atmel,24c02", "atmel,24c04",
-       "atmel,24c08", "atmel,24c16", "atmel,24c32", "atmel,24c64",
-       "atmel,24c128", "atmel,24c256", "atmel,24c512", "atmel,24c1024"
-
-       "catalyst,24c32"
-
-       "microchip,24c128"
-
-       "ramtron,24c64"
-
-       "renesas,r1ex24002"
-
-       The following manufacturers values have been deprecated:
-       "at", "at24"
-
-        If there is no specific driver for <manufacturer>, a generic
-        device with <type> and manufacturer "atmel" should be used.
-        Possible types are:
-        "24c00", "24c01", "24c02", "24c04", "24c08", "24c16", "24c32", "24c64",
-        "24c128", "24c256", "24c512", "24c1024", "spd"
+  - compatible: must be one of the following:
+
+        "atmel,24c00",
+        "atmel,24c01",
+        "atmel,24c02",
+        "atmel,24c04",
+        "atmel,24c08",
+        "atmel,24c16",
+        "atmel,24c32",
+        "atmel,24c64",
+        "atmel,24c128",
+        "atmel,24c256",
+        "atmel,24c512",
+        "atmel,24c1024"
+
+  NOTE: old compatible strings, such as:
+
+        "catalyst,24c32",
+        "microchip,24c128",
+        "ramtron,24c64",
+        "renesas,r1ex24002",
+        "at,24c08",
+        "at24,24c08"
+
+  will still work, but are now deprecated.
+
+  Also: matching by device type alone - while still supported due to
+  implementation details in I2C core - is deprecated as well.
I don't think that's correct to mention Linux specific implementation
details in a Device Tree binding. It's supposed to be OS independent
and in theory the same DT binding could be used in other OS /
bootloaders.

With that last paragraph removed, feel free to add:

Reviewed-by: Javier Martinez Canillas <javierm@redhat.com>
quoted
   - reg : the I2C address of the EEPROM
Best regards,
Javier
How about I just add the no-vendor string examples to the list of
deprecated compatibles above?
yes, that's a good idea.
Best regards,
Bartosz
Best regards,
Javier
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help