eeprom: at24: device tree support fixes
v4 cover eeprom: at24: device tree support fixes
The first three patches fix certain issues with the DT binding document.
The last two extend the device tree support in the driver with more at24 EEPROM variants.
v1 -> v2:
- remove any implementation details from patch 1/5
v2 -> v3:
- reword patch 1/5: allow any "<manufacturer>,<vendor>" pair as long as a supported fallback is used
v3 -> v4:
- another shot at correct wording of the compatible property description
- squashed patches 1/5 and 2/5
Bartosz Golaszewski (4):
dt-bindings: at24: consistently document the compatible property
dt-bindings: at24: fix formatting and style
dt-bindings: at24: extend the list of supported chips
eeprom: at24: extend the list of chips supported in DT
Documentation/devicetree/bindings/eeprom/at24.txt | 91 ++++++++++++++--------- drivers/misc/eeprom/at24.c | 9 +++ 2 files changed, 66 insertions(+), 34 deletions(-)
Signature · 1 line
2.15.1
PATCH v4 1/4 dt-bindings: at24: consistently document the compatible property
Current description of the compatible property for at24 is quite vague.
State explicitly that any "<manufacturer>,<model>" pair is accepted as long as a correct fallback is used for non-atmel chips.
--- Documentation/devicetree/bindings/eeprom/at24.txt | 58 ++++++++++++++--------- 1 file changed, 36 insertions(+), 22 deletions(-)
Documentation/devicetree/bindings/eeprom/at24.txt +36 -22
@@ -2,28 +2,42 @@ 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 a "<manufacturer>,<model>" pair. The following <model> + values are supported (assuming "atmel" as manufacturer): + + "atmel,24c00", + "atmel,24c01", + "atmel,24c02", + "atmel,spd", + "atmel,24c04", + "atmel,24c08", + "atmel,24c16", + "atmel,24c32", + "atmel,24c64", + "atmel,24c128", + "atmel,24c256", + "atmel,24c512", + "atmel,24c1024", + + If <manufacturer> is not "atmel", then a fallback must be used + with the same <type> and "atmel" as manufacturer. + + Example: + compatible = "microchip,24c128", "atmel,24c128"; + + Supported manufacturers are: + + "catalyst", + "microchip", + "ramtron", + "renesas", + "nxp", + "st", + + Some vendors use different model names for chips which are just + variants of the above. Known such exceptions are listed below: + + "renesas,r1ex24002" - the fallback is "atmel,24c02" - reg : the I2C address of the EEPROM
Signature · 1 line
2.15.1
Re: [PATCH v4 1/4] dt-bindings: at24: consistently document the compatible property
Quoted 5 lines · Bartosz Golaszewski
Current description of the compatible property for at24 is quite vague.
State explicitly that any "<manufacturer>,<model>" pair is accepted as long as a correct fallback is used for non-atmel chips.
Documentation/devicetree/bindings/eeprom/at24.txt EEPROMs (I2C) · line 12
Quoted 9 lines
Documentation/devicetree/bindings/eeprom/at24.txt +5
-3- "atmel,24c00", "atmel,24c01", "atmel,24c02", "atmel,24c04", - "atmel,24c08", "atmel,24c16", "atmel,24c32", "atmel,24c64", - "atmel,24c128", "atmel,24c256", "atmel,24c512", "atmel,24c1024" + "atmel,24c00", + "atmel,24c01", + "atmel,24c02", + "atmel,spd", + "atmel,24c04",
Just to whom it may concern, I still don't like the ordering. By name is better to read and catch up the (un)supported chips.
Signature · 2 lines
With Best Regards, Andy Shevchenko
Re: [PATCH v4 1/4] dt-bindings: at24: consistently document the compatible property
In reply to Bartosz GolaszewskiQuoted 9 lines · Bartosz Golaszewski
Current description of the compatible property for at24 is quite vague.
State explicitly that any "<manufacturer>,<model>" pair is accepted as long as a correct fallback is used for non-atmel chips.
Signed-off-by Bartosz Golaszewski <[email protected]>--- Documentation/devicetree/bindings/eeprom/at24.txt | 58 ++++++++++++++--------- 1 file changed, 36 insertions(+), 22 deletions(-)
PATCH v4 2/4 dt-bindings: at24: fix formatting and style
In reply to Bartosz GolaszewskiMake formatting and style consistent for the entire document.
This patch doesn't change the content of the binding.
--- Documentation/devicetree/bindings/eeprom/at24.txt | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-)
Documentation/devicetree/bindings/eeprom/at24.txt +11 -11
@@ -39,23 +39,23 @@ Required properties: "renesas,r1ex24002" - the fallback is "atmel,24c02" - - reg : the I2C address of the EEPROM + - reg: The I2C address of the EEPROM. Optional properties: - - pagesize : the length of the pagesize for writing. Please consult the - manual of your device, that value varies a lot. A wrong value - may result in data loss! If not specified, a safety value of - '1' is used which will be very slow. + - pagesize: The length of the pagesize for writing. Please consult the + manual of your device, that value varies a lot. A wrong value + may result in data loss! If not specified, a safety value of + '1' is used which will be very slow. - - read-only: this parameterless property disables writes to the eeprom + - read-only: This parameterless property disables writes to the eeprom. - - size: total eeprom size in bytes + - size: Total eeprom size in bytes. - - no-read-rollover: - This parameterless property indicates that the multi-address - eeprom does not automatically roll over reads to the next - slave address. Please consult the manual of your device. + - no-read-rollover: This parameterless property indicates that the + multi-address eeprom does not automatically roll over + reads to the next slave address. Please consult the + manual of your device. - wp-gpios: GPIO to which the write-protect pin of the chip is connected.
Signature · 1 line
2.15.1
Re: [PATCH v4 2/4] dt-bindings: at24: fix formatting and style
Quoted 9 lines · Bartosz Golaszewski
Make formatting and style consistent for the entire document.
This patch doesn't change the content of the binding.
Signed-off-by Bartosz Golaszewski <[email protected]>Reviewed-by Javier Martinez Canillas <[email protected]>--- Documentation/devicetree/bindings/eeprom/at24.txt | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-)
PATCH v4 3/4 dt-bindings: at24: extend the list of supported chips
In reply to Bartosz GolaszewskiAdd other variants of at24 EEPROMs we support in the driver to the list of allowed compatible fallbacks.
--- Documentation/devicetree/bindings/eeprom/at24.txt | 9 +++++++++ 1 file changed, 9 insertions(+)
Documentation/devicetree/bindings/eeprom/at24.txt +9 -0
@@ -7,13 +7,22 @@ Required properties: "atmel,24c00", "atmel,24c01", + "atmel,24cs01", "atmel,24c02", + "atmel,24cs02", + "atmel,24mac402", + "atmel,24mac602", "atmel,spd", "atmel,24c04", + "atmel,24cs04", "atmel,24c08", + "atmel,24cs08", "atmel,24c16", + "atmel,24cs16", "atmel,24c32", + "atmel,24cs32", "atmel,24c64", + "atmel,24cs64", "atmel,24c128", "atmel,24c256", "atmel,24c512",
Signature · 6 lines
2.15.1 -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH v4 3/4] dt-bindings: at24: extend the list of supported chips
Quoted 8 lines · Bartosz Golaszewski
Add other variants of at24 EEPROMs we support in the driver to the list of allowed compatible fallbacks.
Signed-off-by Bartosz Golaszewski <brgl-ARrdPY/[email protected]>Reviewed-by Javier Martinez Canillas <[email protected]>--- Documentation/devicetree/bindings/eeprom/at24.txt | 9 +++++++++ 1 file changed, 9 insertions(+)
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html
PATCH v4 4/4 eeprom: at24: extend the list of chips supported in DT
In reply to Bartosz GolaszewskiAdd all supported at24 variants to the of_match table.
--- drivers/misc/eeprom/at24.c | 9 +++++++++ 1 file changed, 9 insertions(+)
drivers/misc/eeprom/at24.c +9 -0
@@ -209,13 +209,22 @@ MODULE_DEVICE_TABLE(i2c, at24_ids);static const struct of_device_id at24_of_match[] = { { .compatible ="atmel,24c00" , .data = &at24_data_24c00 }, { .compatible ="atmel,24c01" , .data = &at24_data_24c01 }, + { .compatible ="atmel,24cs01" , .data = &at24_data_24cs01 }, { .compatible ="atmel,24c02" , .data = &at24_data_24c02 }, + { .compatible ="atmel,24cs02" , .data = &at24_data_24cs02 }, + { .compatible ="atmel,24mac402" , .data = &at24_data_24mac402 }, + { .compatible ="atmel,24mac602" , .data = &at24_data_24mac602 }, { .compatible ="atmel,spd" , .data = &at24_data_spd }, { .compatible ="atmel,24c04" , .data = &at24_data_24c04 }, + { .compatible ="atmel,24cs04" , .data = &at24_data_24cs04 }, { .compatible ="atmel,24c08" , .data = &at24_data_24c08 }, + { .compatible ="atmel,24cs08" , .data = &at24_data_24cs08 }, { .compatible ="atmel,24c16" , .data = &at24_data_24c16 }, + { .compatible ="atmel,24cs16" , .data = &at24_data_24cs16 }, { .compatible ="atmel,24c32" , .data = &at24_data_24c32 }, + { .compatible ="atmel,24cs32" , .data = &at24_data_24cs32 }, { .compatible ="atmel,24c64" , .data = &at24_data_24c64 }, + { .compatible ="atmel,24cs64" , .data = &at24_data_24cs64 }, { .compatible ="atmel,24c128" , .data = &at24_data_24c128 }, { .compatible ="atmel,24c256" , .data = &at24_data_24c256 }, { .compatible ="atmel,24c512" , .data = &at24_data_24c512 },
Signature · 1 line
2.15.1