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

From: Javier Martinez Canillas
Date: Thu Dec 21 2017 - 08:30:24 EST


On Thu, Dec 21, 2017 at 2:28 PM, Bartosz Golaszewski <brgl@xxxxxxxx> wrote:
> 2017-12-21 14:19 GMT+01:00 Javier Martinez Canillas <javier@xxxxxxxxxxxx>:
>> Hello Bartosz,
>>
>> Nice patch.
>>
>> On Thu, Dec 21, 2017 at 2:08 PM, Bartosz Golaszewski <brgl@xxxxxxxx> wrote:
>>> 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 <brgl@xxxxxxxx>
>>> ---
>>> 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@xxxxxxxxxx>
>>
>>> - 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