[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <e8f91504-2b2d-76b9-cfe3-8f027824854f@opensource.wdc.com>
Date: Mon, 11 Jul 2022 19:37:19 +0900
From: Damien Le Moal <damien.lemoal@...nsource.wdc.com>
To: Daniel Lezcano <daniel.lezcano@...aro.org>,
Daniel Lezcano <daniel.lezcano@...exp.org>, rafael@...nel.org
Cc: rui.zhang@...el.com, khilman@...libre.com, abailon@...libre.com,
amitk@...nel.org, linux-kernel@...r.kernel.org,
linux-pm@...r.kernel.org, Shawn Guo <shawnguo@...nel.org>,
Sascha Hauer <s.hauer@...gutronix.de>,
Pengutronix Kernel Team <kernel@...gutronix.de>,
Fabio Estevam <festevam@...il.com>,
NXP Linux Team <linux-imx@....com>,
"open list:LIBATA SUBSYSTEM (Serial and Parallel ATA drivers)"
<linux-ide@...r.kernel.org>,
"moderated list:ARM/FREESCALE IMX / MXC ARM ARCHITECTURE"
<linux-arm-kernel@...ts.infradead.org>
Subject: Re: [PATCH v1 25/33] ata/drivers/ahci_imx: Switch to new of thermal
API
On 7/11/22 18:14, Daniel Lezcano wrote:
> On 11/07/2022 01:18, Damien Le Moal wrote:
>> On 7/11/22 06:24, Daniel Lezcano wrote:
>>> The thermal OF code has a new API allowing to migrate the OF
>>> initialization to a simpler approach.
>>>
>>> Use this new API.
>>>
>>> Signed-off-by: Daniel Lezcano <daniel.lezcano@...exp.org>
>>> ---
>>> drivers/ata/ahci_imx.c | 15 ++++++++++-----
>>> 1 file changed, 10 insertions(+), 5 deletions(-)
>>>
>>> diff --git a/drivers/ata/ahci_imx.c b/drivers/ata/ahci_imx.c
>>> index 79aa9f285312..5ad9a890e71a 100644
>>> --- a/drivers/ata/ahci_imx.c
>>> +++ b/drivers/ata/ahci_imx.c
>>> @@ -327,7 +327,7 @@ static int read_adc_sum(void *dev, u16 rtune_ctl_reg, void __iomem * mmio)
>>> }
>>>
>>> /* SATA AHCI temperature monitor */
>>> -static int sata_ahci_read_temperature(void *dev, int *temp)
>>> +static int __sata_ahci_read_temperature(void *dev, int *temp)
>>> {
>>> u16 mpll_test_reg, rtune_ctl_reg, dac_ctl_reg, read_sum;
>>> u32 str1, str2, str3, str4;
>>> @@ -416,6 +416,11 @@ static int sata_ahci_read_temperature(void *dev, int *temp)
>>> return 0;
>>> }
>>>
>>> +static int sata_ahci_read_temperature(struct thermal_zone_device *tz, int *temp)
>>> +{
>>> + return __sata_ahci_read_temperature(tz->devdata, temp);
>>> +}
>>> +
>>> static ssize_t sata_ahci_show_temp(struct device *dev,
>>> struct device_attribute *da,
>>> char *buf)
>>> @@ -423,14 +428,14 @@ static ssize_t sata_ahci_show_temp(struct device *dev,
>>> unsigned int temp = 0;
>>> int err;
>>>
>>> - err = sata_ahci_read_temperature(dev, &temp);
>>> + err = __sata_ahci_read_temperature(dev, &temp);
>>> if (err < 0)
>>> return err;
>>>
>>> return sprintf(buf, "%u\n", temp);
>>> }
>>
>> I do not see why the above changes are necessary. Please explain.
>
> sata_ahci_read_temperature() is used by sata_ahci_show_temp() also.
>
> So in order to change the function prototype for the get_temp ops which
> does not take a void* but a thermal_zone_device* structure, this
> function wraps the call.
>
> Do you prefer sata_ahci_read_temperature() becomes sata_ahci_get_temp()
> and keep __sata_ahci_read_temperature() name untouched ?
Understood. You can keep the name changes you have, but please add this
explanation to the commit message.
>
>>>
>>> -static const struct thermal_zone_of_device_ops fsl_sata_ahci_of_thermal_ops = {
>>> +static struct thermal_zone_device_ops fsl_sata_ahci_of_thermal_ops = {
>>
>> Why remove the const ?
>>
>>> .get_temp = sata_ahci_read_temperature,
>>> };
>>>
>>> @@ -1131,8 +1136,8 @@ static int imx_ahci_probe(struct platform_device *pdev)
>>> ret = PTR_ERR(hwmon_dev);
>>> goto disable_clk;
>>> }
>>> - devm_thermal_zone_of_sensor_register(hwmon_dev, 0, hwmon_dev,
>>> - &fsl_sata_ahci_of_thermal_ops);
>>> + devm_thermal_of_zone_register(hwmon_dev, 0, hwmon_dev,
>>> + &fsl_sata_ahci_of_thermal_ops);
>>
>> This is the only change that seems necessary.
>>
>>> dev_info(dev, "%s: sensor 'sata_ahci'\n", dev_name(hwmon_dev));
>>> }
>>>
>>
>> And it is hard to review a patch without the full series for context.
>> Please send all patches next time.
>>
>>
>
>
--
Damien Le Moal
Western Digital Research
Powered by blists - more mailing lists