# Which is a best practice for dtso file?



## Alexander Mishin (Sep 7, 2021)

I wrote a kernel driver with dtso file to define a device parameters. It works fine for me, I am proud of myself and all that...
But then I find a file in the sources /usr/src/sys/contrib/device-tree/Bindings/iio/light/bh1750.yaml which says:

```
required:
  - compatible
  - reg

additionalProperties: false
```
But I have additional properties in my dtso file:

```
light-sensor@23 {
    compatible = "rohm,bh1750";
    reg = <0x23>;
    /* MTreg = 69 by default for bh1750 */
    mtreg = <0x45>;
    /* Up to 50% if You need to increase ready-time */
    quality-lack = <0>;
    polling-time = <2>;
    hres-mode = <2>;
    status = "okay";
};
```
These properties set tunable values that I read from a bh1750 datasheet.
And I have a question (it is only one, not three  ):
Is it bad to set the additional properties through an fdt-overlay at all?
I can rid all them from the dtso file to leave the _compatible_ and _reg_ ones only (They will still tunable through sysctl(8) and sysctl.conf(5) anyway). But should I?
Should I treat the files in /usr/src/sys/contrib/device-tree/Bindings/ as a strong recomendation... or they are just from another os, from another world?


----------

