Thread (1 message) 1 message, 1 author, 2020-01-13

Re: [PATCH v2 2/2] hwmon: (adt7475) Added attenuator bypass support

From: Chris Packham <Chris.Packham@alliedtelesis.co.nz>
Date: 2020-01-13 00:08:26
Also in: linux-hwmon, lkml

(CC Rob and devicetree)

On Wed, 2019-12-18 at 19:53 -0800, Guenter Roeck wrote:
On 12/18/19 7:32 PM, Logan Shaw wrote:
quoted
Added a new file documenting the adt7475 devicetree and added the five
new properties to it.

Signed-off-by: Logan Shaw <redacted>
---
---
  .../devicetree/bindings/hwmon/adt7475.txt     | 35 +++++++++++++++++++
  1 file changed, 35 insertions(+)
  create mode 100644 Documentation/devicetree/bindings/hwmon/adt7475.txt
diff --git a/Documentation/devicetree/bindings/hwmon/adt7475.txt b/Documentation/devicetree/bindings/hwmon/adt7475.txt
new file mode 100644
index 000000000000..388dd718a246
--- /dev/null
+++ b/Documentation/devicetree/bindings/hwmon/adt7475.txt
There's an effort underway to convert the device tree bindings to yaml
so it'd be better for new bindings to start off that way. It should be
relatively straight forward, there are a couple of existing examples
in  Documentation/devicetree/bindings/hwmon/ to follow.

Also there is an existing entry in
Documentation/devicetree/bindings/trivial-devices.yaml for the adt7475
and friends that should be removed as part of the patch that adds the
new binding.
quoted
@@ -0,0 +1,35 @@
+*ADT7475 hwmon sensor.
+
+Required properties:
+- compatible: One of
+	"adi,adt7473"
+	"adi,adt7475"
+	"adi,adt7476"
+	"adi,adt7490"
+
+- reg: I2C address
+
+optional properties:
+
+- bypass-attenuator-all: Configures bypassing all voltage input attenuators.
+	This is only supported on the ADT7476 and ADT7490, this property does
+	nothing on other chips.
I don't know that there's any point in supporting bypass-attenuator-all 
even though the adt7475 can support it configuring per VIN seems more
useful.
Both adt7473 and adt7475 do support configuring an attenuator on VCCP
quoted
+		property present: Bit set to bypass all voltage input attenuators.
+		property absent: Registers left unchanged.
+
+- bypass-attenuator-inx: Configures bypassing individual voltage input
+	attenuators, where x is an integer from the set {0, 1, 3, 4}. This
+	is only supported on the ADT7476 and ADT7490, this property does nothing
+	on other chips.
+		property present: Bit set to bypass specific voltage input attenuator
+			for voltage input x.
+		property absent: Registers left unchanged.
+
This is interesting. It essentially means "retain configuration from ROM
Monitor", but leaves no means to _disable_ the bypass.
For our systems Linux is generally the ROM monitor, at least as far as
the hwmon devices are concerned. Overriding the HW default makes sense
for that case.

Do we want the ability to override the configuration from the ROM? It
should be easily doable by using an integer property instead of a
boolean.
quoted
+Example:
+
+hwmon@2e {
+	compatible = "adi,adt7475";
+	reg = <0x2e>;
+	bypass-attenuator-all;
+	bypass-attenuator-in1;
What would be the purpose of specifying both all and in1 ?
quoted
+};
\ No newline at end of file
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help