Re: Please suggest proper format for DT properties.

From: Rob Herring
Date: Mon Sep 21 2015 - 20:32:36 EST


On Mon, Sep 21, 2015 at 2:24 PM, Constantine Shulyupin
<const@xxxxxxxxxxxxx> wrote:
> On Mon, Sep 21, 2015 at 4:51 AM, Rob Herring <robh@xxxxxxxxxx> wrote:
>> On Fri, Sep 18, 2015 at 5:36 PM, Constantine Shulyupin
>> <const@xxxxxxxxxxxxx> wrote:
>>> Hi,
>>>
>>> I am designing DT support for a hwmon chip.
>>> It has some sensors, each of them can be:
>>> - "disabled"
>>> - "thermal diode"
>>> - "thermistor"
>>> - "voltage"
>>>
>>> Four possible options for DT properties format.
>>>
>>> Option 1: Separated property for each sensor.
>>>
>>> Example nct7802 node:
>>>
>>> nct7802 {
>>> compatible = "nuvoton,nct7802";
>>> reg = <0x2a>;
>>> nuvoton,sensor1-type = "thermistor";
>>> nuvoton,sensor2-type = "disabled";
>>> nuvoton,sensor3-type = "voltage";
>>> };
>>>
>>> Option 2: Array of strings for all sensors.
>>>
>>> nct7802 {
>>> compatible = "nuvoton,nct7802";
>>> reg = <0x2a>;
>>> nuvoton,sensors-types = "thermistor", "disabled", "voltage";
>>> };
>>
>> It seems you are just listing out all possible modes. Why do you need
>> this in the DT at all? This can be inferred by the compatible string.
>
> There are tree sensor, each of one can be one of three type ("thermal
> diode", "thermistor", "voltage") or be disabled.
> Also there are at least five platform depended registers, most of them
> are enable/disable.
> You can find full datasheet here
> https://www.nuvoton.com/hq/products/cloud-computing/hardware-monitors/desktop-server-series/nct7802y/
>
> The question is how to describe configuration of this registers in dts.
> The second option is array of types for tree registers.

Okay, got it. I would go with option 2 in that case. Perhaps "mode"
instead of "type" though.

Rob
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/