From: Amna Waseem <Amna.Waseem@axis.com>
To: Guenter Roeck <linux@roeck-us.net>,
Jean Delvare <jdelvare@suse.com>, Rob Herring <robh@kernel.org>,
Krzysztof Kozlowski <krzk+dt@kernel.org>,
Conor Dooley <conor+dt@kernel.org>
Cc: Krzysztof Kozlowski <krzk@kernel.org>,
linux-hwmon@vger.kernel.org, devicetree@vger.kernel.org,
linux-kernel@vger.kernel.org, kernel@axis.com
Subject: Re: [PATCH v2 2/2] hwmon: (ina2xx) Add device tree support to pass alert polarity
Date: Thu, 30 May 2024 10:02:09 +0200 [thread overview]
Message-ID: <138a7fb9-fd69-4c41-8a55-629321a28521@axis.com> (raw)
In-Reply-To: <6b87136a-01e7-4b4b-b36f-632cf59b4760@roeck-us.net>
On 5/29/24 16:11, Guenter Roeck wrote:
> On 5/29/24 02:47, Amna Waseem wrote:
>> The INA230 has an Alert pin which is asserted when the alert
>> function selected in the Mask/Enable register exceeds the
>> value programmed into the Alert Limit register. Assertion is based
>> on the Alert Polarity Bit (APOL, bit 1 of the Mask/Enable register).
>> It is default set to value 0 i.e Normal (active-low open collector).
>> However, hardware can be designed in such a way that expects Alert pin
>> to become active high if a user-defined threshold in Alert limit
>> register has been exceeded. This patch adds a way to pass alert polarity
>> value to the driver via device tree.
>>
>> Signed-off-by: Amna Waseem <Amna.Waseem@axis.com>
>
> Please address my earlier comments, and in the future please wait a
> few minutes
> before sending another version to give people time to provide feedback
> on the earlier version(s).
Ok.
>> ---
>> drivers/hwmon/ina2xx.c | 27 +++++++++++++++++++++++++++
>> 1 file changed, 27 insertions(+)
>>
>> diff --git a/drivers/hwmon/ina2xx.c b/drivers/hwmon/ina2xx.c
>> index d8415d1f21fc..9afaabdc367d 100644
>> --- a/drivers/hwmon/ina2xx.c
>> +++ b/drivers/hwmon/ina2xx.c
>> @@ -73,6 +73,9 @@
>> #define INA226_READ_AVG(reg) (((reg) & INA226_AVG_RD_MASK)
>> >> 9)
>> #define INA226_SHIFT_AVG(val) ((val) << 9)
>> +#define INA226_ALERT_POLARITY_MASK 0x0002
>> +#define INA226_SHIFT_ALERT_POLARITY(val) ((val) << 1)
>> +
>> /* bit number of alert functions in Mask/Enable Register */
>> #define INA226_SHUNT_OVER_VOLTAGE_BIT 15
>> #define INA226_SHUNT_UNDER_VOLTAGE_BIT 14
>> @@ -178,6 +181,21 @@ static u16 ina226_interval_to_reg(int interval)
>> return INA226_SHIFT_AVG(avg_bits);
>> }
>> +static int ina2xx_set_alert_polarity(struct ina2xx_data *data,
>> + unsigned long val)
>> +{
>> + int ret;
>> +
>> + if (val > INT_MAX || !(val == 0 || val == 1))
>> + return -EINVAL;
>> +
>> + ret = regmap_update_bits(data->regmap, INA226_MASK_ENABLE,
>> + INA226_ALERT_POLARITY_MASK,
>> + INA226_SHIFT_ALERT_POLARITY(val));
>> +
>> + return ret;
>
> ret is an unnecessary variable.
> return regmap_update_bits(...);
>
Agreed. Will do it in next patch
>
>> +}
>> +
>> /*
>> * Calibration register is set to the best value, which eliminates
>> * truncation errors on calculating current register in hardware.
>> @@ -659,6 +677,15 @@ static int ina2xx_probe(struct i2c_client *client)
>> if (ret)
>> return dev_err_probe(dev, ret, "failed to enable vs
>> regulator\n");
>> + if (!of_property_read_u32(dev->of_node, "ti,alert-polarity",
>> &val)) {
>> + ret = ina2xx_set_alert_polarity(data, val);
>> + if (ret < 0) {
>> + return dev_err_probe(
>> + dev, ret,
>> + "failed to set APOL bit of Enable/Mask register\n");
>
> Line split is still as bad as before.
>
> Guenter
>
I have tried to apply clang-format and it still shows the line split as
follows:
if (!of_property_read_u32(dev->of_node, "ti,alert-polarity", &val)) {
ret = ina2xx_set_alert_polarity(data, val);
if (ret < 0) {
return dev_err_probe(
dev, ret,
"failed to set APOL bit of Enable/Mask register\n");
}
}
What format will you suggest for line split? Is there any reference you
can provide for splitting up the lines in Linux kernel drivers' code?
Amna
prev parent reply other threads:[~2024-05-30 8:02 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-05-29 9:47 [PATCH v2 0/2] hwmon: (ina2xx):Add Suppor for passing alert polarity from device tree to driver Amna Waseem
2024-05-29 9:47 ` [PATCH v2 1/2] dt-bindings: hwmon: ti,ina2xx: Add ti,alert-polarity property Amna Waseem
2024-05-29 16:17 ` Conor Dooley
2024-05-29 16:20 ` Guenter Roeck
2024-05-30 8:02 ` Amna Waseem
2024-05-29 9:47 ` [PATCH v2 2/2] hwmon: (ina2xx) Add device tree support to pass alert polarity Amna Waseem
2024-05-29 14:11 ` Guenter Roeck
2024-05-30 8:02 ` Amna Waseem [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=138a7fb9-fd69-4c41-8a55-629321a28521@axis.com \
--to=amna.waseem@axis.com \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=jdelvare@suse.com \
--cc=kernel@axis.com \
--cc=krzk+dt@kernel.org \
--cc=krzk@kernel.org \
--cc=linux-hwmon@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux@roeck-us.net \
--cc=robh@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox