Thread (9 messages) flat view 9 messages, 2 authors, 2021-03-16

Re: [PATCH 2/2] hwmon: (pmbus): Add driver for BluTek BPA-RS600

From: Guenter Roeck <linux@roeck-us.net>
Date: 2021-03-16 04:51:34
Also in: linux-hwmon, lkml

On 3/15/21 9:21 PM, Chris Packham wrote:
On 16/03/21 4:43 pm, Guenter Roeck wrote:
quoted
On 3/15/21 7:35 PM, Chris Packham wrote:
quoted
The BPA-RS600 is a compact 600W AC to DC removable power supply module.

Signed-off-by: Chris Packham <chris.packham@alliedtelesis.co.nz>
---
<snip>
quoted
quoted
+
+static int bpa_rs600_read_word_data(struct i2c_client *client, int page,
+		int phase, int reg)+{
+	int ret;
+
+	if (page > 0)
+		return -ENXIO;
+
+	switch (reg) {
+	case PMBUS_VIN_UV_FAULT_LIMIT:
+	case PMBUS_VIN_OV_FAULT_LIMIT:
+	case PMBUS_VOUT_UV_FAULT_LIMIT:
+	case PMBUS_VOUT_OV_FAULT_LIMIT:
+		ret = -ENXIO;
Is that needed ? Why not -ENODATA ?
Basically these commands get responses on the bus but they don't have 
valid data (nor are they documented in the datasheet). I'll add a 
comment to that effect.

If I'm reading things correctly -ENODATA is a signal to 
_pmbus_read_word_data use the "normal" read operation. So I need to 
Correct.
return something other than that. I found another driver (mp2975.c) 
doing the same thing for what I assume are similar reasons so I went 
with -ENXIO.
-ENXIO is ok, but please document it.

Thanks,
Guenter
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help