diff mbox series

[v3] hwmon:(adm1275) Enable adm1278 ADM1278_TEMP1_EN

Message ID 20200608104349.GA10918@cnn
State Not Applicable, archived
Headers show
Series [v3] hwmon:(adm1275) Enable adm1278 ADM1278_TEMP1_EN | expand

Commit Message

Manikandan June 8, 2020, 10:43 a.m. UTC
The adm1278 temp attribute need it for openbmc platform .
This feature not enabled by default, so PMON_CONFIG needs to enable it.

v3:
----
fix invalid signed-off.
removed checkpath warnings.
write ADM1278_TEMP1_EN and ADM1278_VOUT_EN conf in single line operation.

v2:
----
add Signed-off-by.
removed ADM1278_TEMP1_EN check.

Signed-off-by: Manikandan Elumalai <manikandan.hcl.ers.epl@gmail.com>
---
 drivers/hwmon/pmbus/adm1275.c | 10 ++++------
 1 file changed, 4 insertions(+), 6 deletions(-)

Comments

Guenter Roeck June 8, 2020, 1:49 p.m. UTC | #1
On 6/8/20 3:43 AM, Manikandan Elumalai wrote:
> The adm1278 temp attribute need it for openbmc platform .
> This feature not enabled by default, so PMON_CONFIG needs to enable it.
> 
> v3:
> ----
> fix invalid signed-off.
> removed checkpath warnings.
> write ADM1278_TEMP1_EN and ADM1278_VOUT_EN conf in single line operation.
> 
> v2:
> ----
> add Signed-off-by.
> removed ADM1278_TEMP1_EN check.
> 
> Signed-off-by: Manikandan Elumalai <manikandan.hcl.ers.epl@gmail.com>
> ---
>  drivers/hwmon/pmbus/adm1275.c | 10 ++++------
>  1 file changed, 4 insertions(+), 6 deletions(-)
> 
> diff --git a/drivers/hwmon/pmbus/adm1275.c b/drivers/hwmon/pmbus/adm1275.c
> index 5caa37fb..4782e31 100644
> --- a/drivers/hwmon/pmbus/adm1275.c
> +++ b/drivers/hwmon/pmbus/adm1275.c
> @@ -666,11 +666,12 @@ static int adm1275_probe(struct i2c_client *client,
>  		tindex = 3;
>  
>  		info->func[0] |= PMBUS_HAVE_PIN | PMBUS_HAVE_STATUS_INPUT |
> -			PMBUS_HAVE_VOUT | PMBUS_HAVE_STATUS_VOUT;
> +			PMBUS_HAVE_VOUT | PMBUS_HAVE_STATUS_VOUT |
> +			PMBUS_HAVE_TEMP | PMBUS_HAVE_STATUS_TEMP;
>  
> -		/* Enable VOUT if not enabled (it is disabled by default) */
> +		/* Enable VOUT & TEMP1 if not enabled (disabled by default) */
>  		if (!(config & ADM1278_VOUT_EN)) {

This if statement needs to be
		if (config & (ADM1278_VOUT_EN | ADM1278_TEMP1_EN) != ADM1278_VOUT_EN | ADM1278_TEMP1_EN)

> -			config |= ADM1278_VOUT_EN;
> +			config |= ADM1278_VOUT_EN | ADM1278_TEMP1_EN;
>  			ret = i2c_smbus_write_byte_data(client,
>  							ADM1275_PMON_CONFIG,
>  							config);
> @@ -681,9 +682,6 @@ static int adm1275_probe(struct i2c_client *client,
>  			}
>  		}
>  
> -		if (config & ADM1278_TEMP1_EN)
> -			info->func[0] |=
> -				PMBUS_HAVE_TEMP | PMBUS_HAVE_STATUS_TEMP;
>  		if (config & ADM1278_VIN_EN)
>  			info->func[0] |= PMBUS_HAVE_VIN;
>  		break;
>
Manikandan June 9, 2020, 3:26 p.m. UTC | #2
On Mon, Jun 08, 2020 at 06:49:45AM -0700, Guenter Roeck wrote:
> On 6/8/20 3:43 AM, Manikandan Elumalai wrote:
> > The adm1278 temp attribute need it for openbmc platform .
> > This feature not enabled by default, so PMON_CONFIG needs to enable it.
> > 
> > v3:
> > ----
> > fix invalid signed-off.
> > removed checkpath warnings.
> > write ADM1278_TEMP1_EN and ADM1278_VOUT_EN conf in single line operation.
> > 
> > v2:
> > ----
> > add Signed-off-by.
> > removed ADM1278_TEMP1_EN check.
> > 
> > Signed-off-by: Manikandan Elumalai <manikandan.hcl.ers.epl@gmail.com>
> > ---
> >  drivers/hwmon/pmbus/adm1275.c | 10 ++++------
> >  1 file changed, 4 insertions(+), 6 deletions(-)
> > 
> > diff --git a/drivers/hwmon/pmbus/adm1275.c b/drivers/hwmon/pmbus/adm1275.c
> > index 5caa37fb..4782e31 100644
> > --- a/drivers/hwmon/pmbus/adm1275.c
> > +++ b/drivers/hwmon/pmbus/adm1275.c
> > @@ -666,11 +666,12 @@ static int adm1275_probe(struct i2c_client *client,
> >  		tindex = 3;
> >  
> >  		info->func[0] |= PMBUS_HAVE_PIN | PMBUS_HAVE_STATUS_INPUT |
> > -			PMBUS_HAVE_VOUT | PMBUS_HAVE_STATUS_VOUT;
> > +			PMBUS_HAVE_VOUT | PMBUS_HAVE_STATUS_VOUT |
> > +			PMBUS_HAVE_TEMP | PMBUS_HAVE_STATUS_TEMP;
> >  
> > -		/* Enable VOUT if not enabled (it is disabled by default) */
> > +		/* Enable VOUT & TEMP1 if not enabled (disabled by default) */
> >  		if (!(config & ADM1278_VOUT_EN)) {
> 
> This if statement needs to be
> 		if (config & (ADM1278_VOUT_EN | ADM1278_TEMP1_EN) != ADM1278_VOUT_EN | ADM1278_TEMP1_EN)
>
          Hi Guenter,

             The below warning shown by checkpatch after changes,

                  WARNING: line over 80 characters
                   #38: FILE: drivers/hwmon/pmbus/adm1275.c:672:
                   + if (config & (ADM1278_VOUT_EN | ADM1278_TEMP1_EN) != ADM1278_VOUT_EN | ADM1278_TEMP1_EN) {
 
                   total: 0 errors, 1 warnings, 24 lines checked

              I didn't see any if() condition made as two line in the driver . Is this acceptable warning ?

         Thanks
         Mani.E
> > -			config |= ADM1278_VOUT_EN;
> > +			config |= ADM1278_VOUT_EN | ADM1278_TEMP1_EN;
> >  			ret = i2c_smbus_write_byte_data(client,
> >  							ADM1275_PMON_CONFIG,
> >  							config);
> > @@ -681,9 +682,6 @@ static int adm1275_probe(struct i2c_client *client,
> >  			}
> >  		}
> >  
> > -		if (config & ADM1278_TEMP1_EN)
> > -			info->func[0] |=
> > -				PMBUS_HAVE_TEMP | PMBUS_HAVE_STATUS_TEMP;
> >  		if (config & ADM1278_VIN_EN)
> >  			info->func[0] |= PMBUS_HAVE_VIN;
> >  		break;
> > 
>
Guenter Roeck June 9, 2020, 4:56 p.m. UTC | #3
On 6/9/20 8:26 AM, Manikandan wrote:
> On Mon, Jun 08, 2020 at 06:49:45AM -0700, Guenter Roeck wrote:
>> On 6/8/20 3:43 AM, Manikandan Elumalai wrote:
>>> The adm1278 temp attribute need it for openbmc platform .
>>> This feature not enabled by default, so PMON_CONFIG needs to enable it.
>>>
>>> v3:
>>> ----
>>> fix invalid signed-off.
>>> removed checkpath warnings.
>>> write ADM1278_TEMP1_EN and ADM1278_VOUT_EN conf in single line operation.
>>>
>>> v2:
>>> ----
>>> add Signed-off-by.
>>> removed ADM1278_TEMP1_EN check.
>>>
>>> Signed-off-by: Manikandan Elumalai <manikandan.hcl.ers.epl@gmail.com>
>>> ---
>>>  drivers/hwmon/pmbus/adm1275.c | 10 ++++------
>>>  1 file changed, 4 insertions(+), 6 deletions(-)
>>>
>>> diff --git a/drivers/hwmon/pmbus/adm1275.c b/drivers/hwmon/pmbus/adm1275.c
>>> index 5caa37fb..4782e31 100644
>>> --- a/drivers/hwmon/pmbus/adm1275.c
>>> +++ b/drivers/hwmon/pmbus/adm1275.c
>>> @@ -666,11 +666,12 @@ static int adm1275_probe(struct i2c_client *client,
>>>  		tindex = 3;
>>>  
>>>  		info->func[0] |= PMBUS_HAVE_PIN | PMBUS_HAVE_STATUS_INPUT |
>>> -			PMBUS_HAVE_VOUT | PMBUS_HAVE_STATUS_VOUT;
>>> +			PMBUS_HAVE_VOUT | PMBUS_HAVE_STATUS_VOUT |
>>> +			PMBUS_HAVE_TEMP | PMBUS_HAVE_STATUS_TEMP;
>>>  
>>> -		/* Enable VOUT if not enabled (it is disabled by default) */
>>> +		/* Enable VOUT & TEMP1 if not enabled (disabled by default) */
>>>  		if (!(config & ADM1278_VOUT_EN)) {
>>
>> This if statement needs to be
>> 		if (config & (ADM1278_VOUT_EN | ADM1278_TEMP1_EN) != ADM1278_VOUT_EN | ADM1278_TEMP1_EN)
>>
>           Hi Guenter,
> 
>              The below warning shown by checkpatch after changes,
> 
>                   WARNING: line over 80 characters
>                    #38: FILE: drivers/hwmon/pmbus/adm1275.c:672:
>                    + if (config & (ADM1278_VOUT_EN | ADM1278_TEMP1_EN) != ADM1278_VOUT_EN | ADM1278_TEMP1_EN) {
>  
>                    total: 0 errors, 1 warnings, 24 lines checked
> 
>               I didn't see any if() condition made as two line in the driver . Is this acceptable warning ?
> 

The warning is (or should be) gone in the latest upstream kernel -
the line length limit is now 100 bytes. Just ignore that warning,
or rebase your patch to the latest upstream kernel.

Guenter

>          Thanks
>          Mani.E
>>> -			config |= ADM1278_VOUT_EN;
>>> +			config |= ADM1278_VOUT_EN | ADM1278_TEMP1_EN;
>>>  			ret = i2c_smbus_write_byte_data(client,
>>>  							ADM1275_PMON_CONFIG,
>>>  							config);
>>> @@ -681,9 +682,6 @@ static int adm1275_probe(struct i2c_client *client,
>>>  			}
>>>  		}
>>>  
>>> -		if (config & ADM1278_TEMP1_EN)
>>> -			info->func[0] |=
>>> -				PMBUS_HAVE_TEMP | PMBUS_HAVE_STATUS_TEMP;
>>>  		if (config & ADM1278_VIN_EN)
>>>  			info->func[0] |= PMBUS_HAVE_VIN;
>>>  		break;
>>>
>>
diff mbox series

Patch

diff --git a/drivers/hwmon/pmbus/adm1275.c b/drivers/hwmon/pmbus/adm1275.c
index 5caa37fb..4782e31 100644
--- a/drivers/hwmon/pmbus/adm1275.c
+++ b/drivers/hwmon/pmbus/adm1275.c
@@ -666,11 +666,12 @@  static int adm1275_probe(struct i2c_client *client,
 		tindex = 3;
 
 		info->func[0] |= PMBUS_HAVE_PIN | PMBUS_HAVE_STATUS_INPUT |
-			PMBUS_HAVE_VOUT | PMBUS_HAVE_STATUS_VOUT;
+			PMBUS_HAVE_VOUT | PMBUS_HAVE_STATUS_VOUT |
+			PMBUS_HAVE_TEMP | PMBUS_HAVE_STATUS_TEMP;
 
-		/* Enable VOUT if not enabled (it is disabled by default) */
+		/* Enable VOUT & TEMP1 if not enabled (disabled by default) */
 		if (!(config & ADM1278_VOUT_EN)) {
-			config |= ADM1278_VOUT_EN;
+			config |= ADM1278_VOUT_EN | ADM1278_TEMP1_EN;
 			ret = i2c_smbus_write_byte_data(client,
 							ADM1275_PMON_CONFIG,
 							config);
@@ -681,9 +682,6 @@  static int adm1275_probe(struct i2c_client *client,
 			}
 		}
 
-		if (config & ADM1278_TEMP1_EN)
-			info->func[0] |=
-				PMBUS_HAVE_TEMP | PMBUS_HAVE_STATUS_TEMP;
 		if (config & ADM1278_VIN_EN)
 			info->func[0] |= PMBUS_HAVE_VIN;
 		break;