Message ID | 20230929102744.84989-3-jonathanh@nvidia.com (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
Series | hwmon: ina3221: Add selective summation support | expand |
On 29/09/2023 11:27, Jon Hunter wrote: > The INA3221 has a critical alert pin that can be controlled by the > summation control function. This function adds the single > shunt-voltage conversions for the desired channels in order to > compare the combined sum to the programmed limit. The Shunt-Voltage > Sum Limit register contains the programmed value that is compared > to the value in the Shunt-Voltage Sum register in order to > determine if the total summed limit is exceeded. If the > shunt-voltage sum limit value is exceeded, the critical alert pin > pulls low. > > For the summation limit to have a meaningful value, it is necessary > to use the same shunt-resistor value on all included channels. Add a new > vendor specific property, 'ti,summation-disable', to allow specific > channels to be excluded from the summation control function if the shunt > resistor is different to other channels or the channel should not be > considered for triggering the critical alert pin. > > Note that the ina3221 has always supported summing the various input > channels and summation is enabled by default if the shunt-resistor > values are the same. This change simply provides a way to exclude > inputs from the summation. If this property is not populated, then the > functionality of the driver does not change. > > Signed-off-by: Jon Hunter <jonathanh@nvidia.com> > Signed-off-by: Ninad Malwade <nmalwade@nvidia.com> > --- > .../devicetree/bindings/hwmon/ti,ina3221.yaml | 23 +++++++++++++++++++ > 1 file changed, 23 insertions(+) > > diff --git a/Documentation/devicetree/bindings/hwmon/ti,ina3221.yaml b/Documentation/devicetree/bindings/hwmon/ti,ina3221.yaml > index d0e64a72af5b..d69f50d0e4ab 100644 > --- a/Documentation/devicetree/bindings/hwmon/ti,ina3221.yaml > +++ b/Documentation/devicetree/bindings/hwmon/ti,ina3221.yaml > @@ -58,6 +58,25 @@ patternProperties: > shunt-resistor-micro-ohms: > description: shunt resistor value in micro-Ohm > > + ti,summation-disable: > + description: | > + The INA3221 has a critical alert pin that can be controlled by the > + summation control function. This function adds the single > + shunt-voltage conversions for the desired channels in order to > + compare the combined sum to the programmed limit. The Shunt-Voltage > + Sum Limit register contains the programmed value that is compared > + to the value in the Shunt-Voltage Sum register in order to > + determine if the total summed limit is exceeded. If the > + shunt-voltage sum limit value is exceeded, the critical alert pin > + is asserted. > + > + For the summation limit to have a meaningful value, it is necessary > + to use the same shunt-resistor value on all enabled channels. If > + this is not the case or if a channel should not be used for > + triggering the critical alert pin, then this property can be used > + exclude specific channels from the summation control function. > + type: boolean > + > required: > - reg > > @@ -81,6 +100,10 @@ examples: > > input@0 { > reg = <0x0>; > + /* > + * Input channels are enabled by default in the device and so > + * to disable, must be explicitly disabled in device-tree. > + */ > status = "disabled"; > }; > Ugh, I added this to the wrong patch. Let me correct this and send this again. Jon
diff --git a/Documentation/devicetree/bindings/hwmon/ti,ina3221.yaml b/Documentation/devicetree/bindings/hwmon/ti,ina3221.yaml index d0e64a72af5b..d69f50d0e4ab 100644 --- a/Documentation/devicetree/bindings/hwmon/ti,ina3221.yaml +++ b/Documentation/devicetree/bindings/hwmon/ti,ina3221.yaml @@ -58,6 +58,25 @@ patternProperties: shunt-resistor-micro-ohms: description: shunt resistor value in micro-Ohm + ti,summation-disable: + description: | + The INA3221 has a critical alert pin that can be controlled by the + summation control function. This function adds the single + shunt-voltage conversions for the desired channels in order to + compare the combined sum to the programmed limit. The Shunt-Voltage + Sum Limit register contains the programmed value that is compared + to the value in the Shunt-Voltage Sum register in order to + determine if the total summed limit is exceeded. If the + shunt-voltage sum limit value is exceeded, the critical alert pin + is asserted. + + For the summation limit to have a meaningful value, it is necessary + to use the same shunt-resistor value on all enabled channels. If + this is not the case or if a channel should not be used for + triggering the critical alert pin, then this property can be used + exclude specific channels from the summation control function. + type: boolean + required: - reg @@ -81,6 +100,10 @@ examples: input@0 { reg = <0x0>; + /* + * Input channels are enabled by default in the device and so + * to disable, must be explicitly disabled in device-tree. + */ status = "disabled"; };