Message ID | 20211120204053.2299501-2-davidm@egauge.net (mailing list archive) |
---|---|
State | Changes Requested |
Headers | show |
Series | [v2,1/2] hwmon: (sht4x) Fix EREMOTEIO errors | expand |
On 11/20/21 12:40 PM, David Mosberger-Tang wrote: > This patch enables automatic loading of the sht4x module via a device > tree table entry. > > Signed-off-by: David Mosberger-Tang <davidm@egauge.net> > --- > .../bindings/hwmon/sensirion,sht4x.yaml | 50 +++++++++++++++++++ > drivers/hwmon/sht4x.c | 7 +++ This needs to be two separate patches, one the devicetree change and the other the source code change. DT maintainers need to be copied on the devicetree patch. Also, please consider adding the device to trivial-devices.yaml instead since there are no special bindings. Thanks, Guenter > 2 files changed, 57 insertions(+) > create mode 100644 Documentation/devicetree/bindings/hwmon/sensirion,sht4x.yaml > > diff --git a/Documentation/devicetree/bindings/hwmon/sensirion,sht4x.yaml b/Documentation/devicetree/bindings/hwmon/sensirion,sht4x.yaml > new file mode 100644 > index 000000000000..588c2e37b035 > --- /dev/null > +++ b/Documentation/devicetree/bindings/hwmon/sensirion,sht4x.yaml > @@ -0,0 +1,50 @@ > +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/hwmon/sensirion,sht4x.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Sensirion SHT4x Humidity and Temperature Sensor IC > + > +maintainers: > + - Navin Sankar Velliangiri navin@linumiz.com > + > +description: | > + The SHT4x is a high-accuracy digital humidity and temperature sensor > + designed especially for battery-driven high-volume consumer > + electronics applications. For further information refere to > + Documentation/hwmon/sht4x.rst > + > + This binding document describes the binding for the hardware monitor > + portion of the driver. > + > +properties: > + compatible: > + enum: > + - sensirion,sht4x > + > + reg: > + const: 0x44 > + description: > + The I2c base address of the SHT4x. 0x44 for all chip versions > + except for SHT41-BD1B, where it is 0x45. > + > +required: > + - compatible > + - reg > + > +additionalProperties: false > + > +examples: > + - | > + i2c { > + #address-cells = <1>; > + #size-cells = <0>; > + clock-frequency = <400000>; > + > + sht4x@44 { > + compatible = "sensirion,sht4x"; > + reg = <0x44>; > + }; > + }; > +... > diff --git a/drivers/hwmon/sht4x.c b/drivers/hwmon/sht4x.c > index 3415d7a0e0fc..6e53d81e32d4 100644 > --- a/drivers/hwmon/sht4x.c > +++ b/drivers/hwmon/sht4x.c > @@ -281,9 +281,16 @@ static const struct i2c_device_id sht4x_id[] = { > }; > MODULE_DEVICE_TABLE(i2c, sht4x_id); > > +static const struct of_device_id sht4x_of_match[] = { > + { .compatible = "sensirion,sht4x" }, > + { } > +}; > +MODULE_DEVICE_TABLE(of, sht4x_of_match); > + > static struct i2c_driver sht4x_driver = { > .driver = { > .name = "sht4x", > + .of_match_table = sht4x_of_match > }, > .probe = sht4x_probe, > .id_table = sht4x_id, >
On Sat, 2021-11-20 at 13:12 -0800, Guenter Roeck wrote: > On 11/20/21 12:40 PM, David Mosberger-Tang wrote: > > This patch enables automatic loading of the sht4x module via a device > > tree table entry. > > > > Signed-off-by: David Mosberger-Tang <davidm@egauge.net> > > --- > > .../bindings/hwmon/sensirion,sht4x.yaml | 50 +++++++++++++++++++ > > drivers/hwmon/sht4x.c | 7 +++ > > This needs to be two separate patches, one the devicetree change and the other > the source code change. DT maintainers need to be copied on the devicetree > patch. Isn't that going to be confusing if one but not the other patch makes it into a repository? Either you end up with an undocumented device tree property or you end up with documentation for an unsupported property. > Also, please consider adding the device to trivial-devices.yaml instead since > there are no special bindings. I didn't know it existed. Sure, that's much easier. --david > Thanks, > Guenter > > > 2 files changed, 57 insertions(+) > > create mode 100644 Documentation/devicetree/bindings/hwmon/sensirion,sht4x.yaml > > > > diff --git a/Documentation/devicetree/bindings/hwmon/sensirion,sht4x.yaml b/Documentation/devicetree/bindings/hwmon/sensirion,sht4x.yaml > > new file mode 100644 > > index 000000000000..588c2e37b035 > > --- /dev/null > > +++ b/Documentation/devicetree/bindings/hwmon/sensirion,sht4x.yaml > > @@ -0,0 +1,50 @@ > > +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause > > +%YAML 1.2 > > +--- > > +$id: http://devicetree.org/schemas/hwmon/sensirion,sht4x.yaml# > > +$schema: http://devicetree.org/meta-schemas/core.yaml# > > + > > +title: Sensirion SHT4x Humidity and Temperature Sensor IC > > + > > +maintainers: > > + - Navin Sankar Velliangiri navin@linumiz.com > > + > > +description: | > > + The SHT4x is a high-accuracy digital humidity and temperature sensor > > + designed especially for battery-driven high-volume consumer > > + electronics applications. For further information refere to > > + Documentation/hwmon/sht4x.rst > > + > > + This binding document describes the binding for the hardware monitor > > + portion of the driver. > > + > > +properties: > > + compatible: > > + enum: > > + - sensirion,sht4x > > + > > + reg: > > + const: 0x44 > > + description: > > + The I2c base address of the SHT4x. 0x44 for all chip versions > > + except for SHT41-BD1B, where it is 0x45. > > + > > +required: > > + - compatible > > + - reg > > + > > +additionalProperties: false > > + > > +examples: > > + - | > > + i2c { > > + #address-cells = <1>; > > + #size-cells = <0>; > > + clock-frequency = <400000>; > > + > > + sht4x@44 { > > + compatible = "sensirion,sht4x"; > > + reg = <0x44>; > > + }; > > + }; > > +... > > diff --git a/drivers/hwmon/sht4x.c b/drivers/hwmon/sht4x.c > > index 3415d7a0e0fc..6e53d81e32d4 100644 > > --- a/drivers/hwmon/sht4x.c > > +++ b/drivers/hwmon/sht4x.c > > @@ -281,9 +281,16 @@ static const struct i2c_device_id sht4x_id[] = { > > }; > > MODULE_DEVICE_TABLE(i2c, sht4x_id); > > > > +static const struct of_device_id sht4x_of_match[] = { > > + { .compatible = "sensirion,sht4x" }, > > + { } > > +}; > > +MODULE_DEVICE_TABLE(of, sht4x_of_match); > > + > > static struct i2c_driver sht4x_driver = { > > .driver = { > > .name = "sht4x", > > + .of_match_table = sht4x_of_match > > }, > > .probe = sht4x_probe, > > .id_table = sht4x_id, > >
On Sat, Nov 20, 2021 at 02:36:39PM -0700, David Mosberger-Tang wrote: > On Sat, 2021-11-20 at 13:12 -0800, Guenter Roeck wrote: > > On 11/20/21 12:40 PM, David Mosberger-Tang wrote: > > > This patch enables automatic loading of the sht4x module via a device > > > tree table entry. > > > > > > Signed-off-by: David Mosberger-Tang <davidm@egauge.net> > > > --- > > > .../bindings/hwmon/sensirion,sht4x.yaml | 50 +++++++++++++++++++ > > > drivers/hwmon/sht4x.c | 7 +++ > > > > This needs to be two separate patches, one the devicetree change and the other > > the source code change. DT maintainers need to be copied on the devicetree > > patch. > > Isn't that going to be confusing if one but not the other patch makes > it into a repository? Either you end up with an undocumented device > tree property or you end up with documentation for an unsupported > property. > This is a trivial device, so that isn't really an issue. Otherwise, if there are real bindings to approve, I would not accept the patch making the code change unless the devicetree patch is approved, and I would typically apply both together. Anyway, those are the rules. Devicetree patches need to be sent separately and approved by a devicetree maintainer. We should not [have to] discuss rules here. If you are unhappy with it, I would suggest to start a discussion on the devicetree mailing list and suggest alternatives. Thanks, Guenter
On Sat, 2021-11-20 at 13:51 -0800, Guenter Roeck wrote: > On Sat, Nov 20, 2021 at 02:36:39PM -0700, David Mosberger-Tang wrote: > > On Sat, 2021-11-20 at 13:12 -0800, Guenter Roeck wrote: > > > On 11/20/21 12:40 PM, David Mosberger-Tang wrote: > > > > This patch enables automatic loading of the sht4x module via a device > > > > tree table entry. > > > > > > > > Signed-off-by: David Mosberger-Tang <davidm@egauge.net> > > > > --- > > > > .../bindings/hwmon/sensirion,sht4x.yaml | 50 +++++++++++++++++++ > > > > drivers/hwmon/sht4x.c | 7 +++ > > > > > > This needs to be two separate patches, one the devicetree change and the other > > > the source code change. DT maintainers need to be copied on the devicetree > > > patch. > > > > Isn't that going to be confusing if one but not the other patch makes > > it into a repository? Either you end up with an undocumented device > > tree property or you end up with documentation for an unsupported > > property. > > > This is a trivial device, so that isn't really an issue. Otherwise, > if there are real bindings to approve, I would not accept the patch > making the code change unless the devicetree patch is approved, > and I would typically apply both together. Got it, thanks for the explanation. --david
diff --git a/Documentation/devicetree/bindings/hwmon/sensirion,sht4x.yaml b/Documentation/devicetree/bindings/hwmon/sensirion,sht4x.yaml new file mode 100644 index 000000000000..588c2e37b035 --- /dev/null +++ b/Documentation/devicetree/bindings/hwmon/sensirion,sht4x.yaml @@ -0,0 +1,50 @@ +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/hwmon/sensirion,sht4x.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Sensirion SHT4x Humidity and Temperature Sensor IC + +maintainers: + - Navin Sankar Velliangiri navin@linumiz.com + +description: | + The SHT4x is a high-accuracy digital humidity and temperature sensor + designed especially for battery-driven high-volume consumer + electronics applications. For further information refere to + Documentation/hwmon/sht4x.rst + + This binding document describes the binding for the hardware monitor + portion of the driver. + +properties: + compatible: + enum: + - sensirion,sht4x + + reg: + const: 0x44 + description: + The I2c base address of the SHT4x. 0x44 for all chip versions + except for SHT41-BD1B, where it is 0x45. + +required: + - compatible + - reg + +additionalProperties: false + +examples: + - | + i2c { + #address-cells = <1>; + #size-cells = <0>; + clock-frequency = <400000>; + + sht4x@44 { + compatible = "sensirion,sht4x"; + reg = <0x44>; + }; + }; +... diff --git a/drivers/hwmon/sht4x.c b/drivers/hwmon/sht4x.c index 3415d7a0e0fc..6e53d81e32d4 100644 --- a/drivers/hwmon/sht4x.c +++ b/drivers/hwmon/sht4x.c @@ -281,9 +281,16 @@ static const struct i2c_device_id sht4x_id[] = { }; MODULE_DEVICE_TABLE(i2c, sht4x_id); +static const struct of_device_id sht4x_of_match[] = { + { .compatible = "sensirion,sht4x" }, + { } +}; +MODULE_DEVICE_TABLE(of, sht4x_of_match); + static struct i2c_driver sht4x_driver = { .driver = { .name = "sht4x", + .of_match_table = sht4x_of_match }, .probe = sht4x_probe, .id_table = sht4x_id,
This patch enables automatic loading of the sht4x module via a device tree table entry. Signed-off-by: David Mosberger-Tang <davidm@egauge.net> --- .../bindings/hwmon/sensirion,sht4x.yaml | 50 +++++++++++++++++++ drivers/hwmon/sht4x.c | 7 +++ 2 files changed, 57 insertions(+) create mode 100644 Documentation/devicetree/bindings/hwmon/sensirion,sht4x.yaml