* Re: [PATCH -next] drm/radeon/radeon_pm: use DEVICE_ATTR_RW macro
@ 2021-06-02 1:53 ` Alex Deucher
0 siblings, 0 replies; 12+ messages in thread
From: Alex Deucher @ 2021-06-02 1:53 UTC (permalink / raw)
To: YueHaibing
Cc: Dave Airlie, xinhui pan, LKML, Maling list - DRI developers,
amd-gfx list, Daniel Vetter, Deucher, Alexander,
Christian Koenig
On Fri, May 28, 2021 at 3:18 AM YueHaibing <yuehaibing@huawei.com> wrote:
>
> Use DEVICE_ATTR_RW() helper instead of plain DEVICE_ATTR(),
> which makes the code a bit shorter and easier to read.
>
> Signed-off-by: YueHaibing <yuehaibing@huawei.com>
I'm not convinced this really buys us anything other than code churn,
but I don't have a particularly strong opinion of others feel
differently.
Alex
> ---
> drivers/gpu/drm/radeon/radeon_pm.c | 56 ++++++++++++------------------
> 1 file changed, 23 insertions(+), 33 deletions(-)
>
> diff --git a/drivers/gpu/drm/radeon/radeon_pm.c b/drivers/gpu/drm/radeon/radeon_pm.c
> index 3861c0b98fcf..edf10cc3947e 100644
> --- a/drivers/gpu/drm/radeon/radeon_pm.c
> +++ b/drivers/gpu/drm/radeon/radeon_pm.c
> @@ -352,9 +352,8 @@ static void radeon_pm_print_states(struct radeon_device *rdev)
> }
> }
>
> -static ssize_t radeon_get_pm_profile(struct device *dev,
> - struct device_attribute *attr,
> - char *buf)
> +static ssize_t power_profile_show(struct device *dev,
> + struct device_attribute *attr, char *buf)
> {
> struct drm_device *ddev = dev_get_drvdata(dev);
> struct radeon_device *rdev = ddev->dev_private;
> @@ -366,10 +365,8 @@ static ssize_t radeon_get_pm_profile(struct device *dev,
> (cp == PM_PROFILE_HIGH) ? "high" : "default");
> }
>
> -static ssize_t radeon_set_pm_profile(struct device *dev,
> - struct device_attribute *attr,
> - const char *buf,
> - size_t count)
> +static ssize_t power_profile_store(struct device *dev, struct device_attribute *attr,
> + const char *buf, size_t count)
> {
> struct drm_device *ddev = dev_get_drvdata(dev);
> struct radeon_device *rdev = ddev->dev_private;
> @@ -406,9 +403,8 @@ static ssize_t radeon_set_pm_profile(struct device *dev,
> return count;
> }
>
> -static ssize_t radeon_get_pm_method(struct device *dev,
> - struct device_attribute *attr,
> - char *buf)
> +static ssize_t power_method_show(struct device *dev,
> + struct device_attribute *attr, char *buf)
> {
> struct drm_device *ddev = dev_get_drvdata(dev);
> struct radeon_device *rdev = ddev->dev_private;
> @@ -418,10 +414,9 @@ static ssize_t radeon_get_pm_method(struct device *dev,
> (pm == PM_METHOD_PROFILE) ? "profile" : "dpm");
> }
>
> -static ssize_t radeon_set_pm_method(struct device *dev,
> - struct device_attribute *attr,
> - const char *buf,
> - size_t count)
> +static ssize_t power_method_store(struct device *dev,
> + struct device_attribute *attr,
> + const char *buf, size_t count)
> {
> struct drm_device *ddev = dev_get_drvdata(dev);
> struct radeon_device *rdev = ddev->dev_private;
> @@ -462,9 +457,8 @@ static ssize_t radeon_set_pm_method(struct device *dev,
> return count;
> }
>
> -static ssize_t radeon_get_dpm_state(struct device *dev,
> - struct device_attribute *attr,
> - char *buf)
> +static ssize_t power_dpm_state_show(struct device *dev,
> + struct device_attribute *attr, char *buf)
> {
> struct drm_device *ddev = dev_get_drvdata(dev);
> struct radeon_device *rdev = ddev->dev_private;
> @@ -475,10 +469,9 @@ static ssize_t radeon_get_dpm_state(struct device *dev,
> (pm == POWER_STATE_TYPE_BALANCED) ? "balanced" : "performance");
> }
>
> -static ssize_t radeon_set_dpm_state(struct device *dev,
> - struct device_attribute *attr,
> - const char *buf,
> - size_t count)
> +static ssize_t power_dpm_state_store(struct device *dev,
> + struct device_attribute *attr,
> + const char *buf, size_t count)
> {
> struct drm_device *ddev = dev_get_drvdata(dev);
> struct radeon_device *rdev = ddev->dev_private;
> @@ -506,9 +499,9 @@ static ssize_t radeon_set_dpm_state(struct device *dev,
> return count;
> }
>
> -static ssize_t radeon_get_dpm_forced_performance_level(struct device *dev,
> - struct device_attribute *attr,
> - char *buf)
> +static ssize_t power_dpm_force_performance_level_show(struct device *dev,
> + struct device_attribute *attr,
> + char *buf)
> {
> struct drm_device *ddev = dev_get_drvdata(dev);
> struct radeon_device *rdev = ddev->dev_private;
> @@ -523,10 +516,9 @@ static ssize_t radeon_get_dpm_forced_performance_level(struct device *dev,
> (level == RADEON_DPM_FORCED_LEVEL_LOW) ? "low" : "high");
> }
>
> -static ssize_t radeon_set_dpm_forced_performance_level(struct device *dev,
> +static ssize_t power_dpm_force_performance_level_store(struct device *dev,
> struct device_attribute *attr,
> - const char *buf,
> - size_t count)
> + const char *buf, size_t count)
> {
> struct drm_device *ddev = dev_get_drvdata(dev);
> struct radeon_device *rdev = ddev->dev_private;
> @@ -658,12 +650,10 @@ static ssize_t radeon_hwmon_get_pwm1(struct device *dev,
> return sprintf(buf, "%i\n", speed);
> }
>
> -static DEVICE_ATTR(power_profile, S_IRUGO | S_IWUSR, radeon_get_pm_profile, radeon_set_pm_profile);
> -static DEVICE_ATTR(power_method, S_IRUGO | S_IWUSR, radeon_get_pm_method, radeon_set_pm_method);
> -static DEVICE_ATTR(power_dpm_state, S_IRUGO | S_IWUSR, radeon_get_dpm_state, radeon_set_dpm_state);
> -static DEVICE_ATTR(power_dpm_force_performance_level, S_IRUGO | S_IWUSR,
> - radeon_get_dpm_forced_performance_level,
> - radeon_set_dpm_forced_performance_level);
> +static DEVICE_ATTR_RW(power_profile);
> +static DEVICE_ATTR_RW(power_method);
> +static DEVICE_ATTR_RW(power_dpm_state);
> +static DEVICE_ATTR_RW(power_dpm_force_performance_level);
>
> static ssize_t radeon_hwmon_show_temp(struct device *dev,
> struct device_attribute *attr,
> --
> 2.17.1
>
_______________________________________________
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH -next] drm/radeon/radeon_pm: use DEVICE_ATTR_RW macro
@ 2021-06-02 1:53 ` Alex Deucher
0 siblings, 0 replies; 12+ messages in thread
From: Alex Deucher @ 2021-06-02 1:53 UTC (permalink / raw)
To: YueHaibing
Cc: Dave Airlie, xinhui pan, LKML, Maling list - DRI developers,
amd-gfx list, Deucher, Alexander, Christian Koenig
On Fri, May 28, 2021 at 3:18 AM YueHaibing <yuehaibing@huawei.com> wrote:
>
> Use DEVICE_ATTR_RW() helper instead of plain DEVICE_ATTR(),
> which makes the code a bit shorter and easier to read.
>
> Signed-off-by: YueHaibing <yuehaibing@huawei.com>
I'm not convinced this really buys us anything other than code churn,
but I don't have a particularly strong opinion of others feel
differently.
Alex
> ---
> drivers/gpu/drm/radeon/radeon_pm.c | 56 ++++++++++++------------------
> 1 file changed, 23 insertions(+), 33 deletions(-)
>
> diff --git a/drivers/gpu/drm/radeon/radeon_pm.c b/drivers/gpu/drm/radeon/radeon_pm.c
> index 3861c0b98fcf..edf10cc3947e 100644
> --- a/drivers/gpu/drm/radeon/radeon_pm.c
> +++ b/drivers/gpu/drm/radeon/radeon_pm.c
> @@ -352,9 +352,8 @@ static void radeon_pm_print_states(struct radeon_device *rdev)
> }
> }
>
> -static ssize_t radeon_get_pm_profile(struct device *dev,
> - struct device_attribute *attr,
> - char *buf)
> +static ssize_t power_profile_show(struct device *dev,
> + struct device_attribute *attr, char *buf)
> {
> struct drm_device *ddev = dev_get_drvdata(dev);
> struct radeon_device *rdev = ddev->dev_private;
> @@ -366,10 +365,8 @@ static ssize_t radeon_get_pm_profile(struct device *dev,
> (cp == PM_PROFILE_HIGH) ? "high" : "default");
> }
>
> -static ssize_t radeon_set_pm_profile(struct device *dev,
> - struct device_attribute *attr,
> - const char *buf,
> - size_t count)
> +static ssize_t power_profile_store(struct device *dev, struct device_attribute *attr,
> + const char *buf, size_t count)
> {
> struct drm_device *ddev = dev_get_drvdata(dev);
> struct radeon_device *rdev = ddev->dev_private;
> @@ -406,9 +403,8 @@ static ssize_t radeon_set_pm_profile(struct device *dev,
> return count;
> }
>
> -static ssize_t radeon_get_pm_method(struct device *dev,
> - struct device_attribute *attr,
> - char *buf)
> +static ssize_t power_method_show(struct device *dev,
> + struct device_attribute *attr, char *buf)
> {
> struct drm_device *ddev = dev_get_drvdata(dev);
> struct radeon_device *rdev = ddev->dev_private;
> @@ -418,10 +414,9 @@ static ssize_t radeon_get_pm_method(struct device *dev,
> (pm == PM_METHOD_PROFILE) ? "profile" : "dpm");
> }
>
> -static ssize_t radeon_set_pm_method(struct device *dev,
> - struct device_attribute *attr,
> - const char *buf,
> - size_t count)
> +static ssize_t power_method_store(struct device *dev,
> + struct device_attribute *attr,
> + const char *buf, size_t count)
> {
> struct drm_device *ddev = dev_get_drvdata(dev);
> struct radeon_device *rdev = ddev->dev_private;
> @@ -462,9 +457,8 @@ static ssize_t radeon_set_pm_method(struct device *dev,
> return count;
> }
>
> -static ssize_t radeon_get_dpm_state(struct device *dev,
> - struct device_attribute *attr,
> - char *buf)
> +static ssize_t power_dpm_state_show(struct device *dev,
> + struct device_attribute *attr, char *buf)
> {
> struct drm_device *ddev = dev_get_drvdata(dev);
> struct radeon_device *rdev = ddev->dev_private;
> @@ -475,10 +469,9 @@ static ssize_t radeon_get_dpm_state(struct device *dev,
> (pm == POWER_STATE_TYPE_BALANCED) ? "balanced" : "performance");
> }
>
> -static ssize_t radeon_set_dpm_state(struct device *dev,
> - struct device_attribute *attr,
> - const char *buf,
> - size_t count)
> +static ssize_t power_dpm_state_store(struct device *dev,
> + struct device_attribute *attr,
> + const char *buf, size_t count)
> {
> struct drm_device *ddev = dev_get_drvdata(dev);
> struct radeon_device *rdev = ddev->dev_private;
> @@ -506,9 +499,9 @@ static ssize_t radeon_set_dpm_state(struct device *dev,
> return count;
> }
>
> -static ssize_t radeon_get_dpm_forced_performance_level(struct device *dev,
> - struct device_attribute *attr,
> - char *buf)
> +static ssize_t power_dpm_force_performance_level_show(struct device *dev,
> + struct device_attribute *attr,
> + char *buf)
> {
> struct drm_device *ddev = dev_get_drvdata(dev);
> struct radeon_device *rdev = ddev->dev_private;
> @@ -523,10 +516,9 @@ static ssize_t radeon_get_dpm_forced_performance_level(struct device *dev,
> (level == RADEON_DPM_FORCED_LEVEL_LOW) ? "low" : "high");
> }
>
> -static ssize_t radeon_set_dpm_forced_performance_level(struct device *dev,
> +static ssize_t power_dpm_force_performance_level_store(struct device *dev,
> struct device_attribute *attr,
> - const char *buf,
> - size_t count)
> + const char *buf, size_t count)
> {
> struct drm_device *ddev = dev_get_drvdata(dev);
> struct radeon_device *rdev = ddev->dev_private;
> @@ -658,12 +650,10 @@ static ssize_t radeon_hwmon_get_pwm1(struct device *dev,
> return sprintf(buf, "%i\n", speed);
> }
>
> -static DEVICE_ATTR(power_profile, S_IRUGO | S_IWUSR, radeon_get_pm_profile, radeon_set_pm_profile);
> -static DEVICE_ATTR(power_method, S_IRUGO | S_IWUSR, radeon_get_pm_method, radeon_set_pm_method);
> -static DEVICE_ATTR(power_dpm_state, S_IRUGO | S_IWUSR, radeon_get_dpm_state, radeon_set_dpm_state);
> -static DEVICE_ATTR(power_dpm_force_performance_level, S_IRUGO | S_IWUSR,
> - radeon_get_dpm_forced_performance_level,
> - radeon_set_dpm_forced_performance_level);
> +static DEVICE_ATTR_RW(power_profile);
> +static DEVICE_ATTR_RW(power_method);
> +static DEVICE_ATTR_RW(power_dpm_state);
> +static DEVICE_ATTR_RW(power_dpm_force_performance_level);
>
> static ssize_t radeon_hwmon_show_temp(struct device *dev,
> struct device_attribute *attr,
> --
> 2.17.1
>
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH -next] drm/radeon/radeon_pm: use DEVICE_ATTR_RW macro
2021-06-02 1:53 ` Alex Deucher
(?)
@ 2021-06-02 6:41 ` Christian König
-1 siblings, 0 replies; 12+ messages in thread
From: Christian König @ 2021-06-02 6:41 UTC (permalink / raw)
To: Alex Deucher, YueHaibing
Cc: Dave Airlie, xinhui pan, LKML, Maling list - DRI developers,
amd-gfx list, Daniel Vetter, Deucher, Alexander,
Christian Koenig
Am 02.06.21 um 03:53 schrieb Alex Deucher:
> On Fri, May 28, 2021 at 3:18 AM YueHaibing <yuehaibing@huawei.com> wrote:
>> Use DEVICE_ATTR_RW() helper instead of plain DEVICE_ATTR(),
>> which makes the code a bit shorter and easier to read.
>>
>> Signed-off-by: YueHaibing <yuehaibing@huawei.com>
> I'm not convinced this really buys us anything other than code churn,
> but I don't have a particularly strong opinion of others feel
> differently.
I agree, especially dropping the amdgpu prefix from the functions
doesn't sound like something we want.
Christian.
>
> Alex
>
>
>> ---
>> drivers/gpu/drm/radeon/radeon_pm.c | 56 ++++++++++++------------------
>> 1 file changed, 23 insertions(+), 33 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/radeon/radeon_pm.c b/drivers/gpu/drm/radeon/radeon_pm.c
>> index 3861c0b98fcf..edf10cc3947e 100644
>> --- a/drivers/gpu/drm/radeon/radeon_pm.c
>> +++ b/drivers/gpu/drm/radeon/radeon_pm.c
>> @@ -352,9 +352,8 @@ static void radeon_pm_print_states(struct radeon_device *rdev)
>> }
>> }
>>
>> -static ssize_t radeon_get_pm_profile(struct device *dev,
>> - struct device_attribute *attr,
>> - char *buf)
>> +static ssize_t power_profile_show(struct device *dev,
>> + struct device_attribute *attr, char *buf)
>> {
>> struct drm_device *ddev = dev_get_drvdata(dev);
>> struct radeon_device *rdev = ddev->dev_private;
>> @@ -366,10 +365,8 @@ static ssize_t radeon_get_pm_profile(struct device *dev,
>> (cp == PM_PROFILE_HIGH) ? "high" : "default");
>> }
>>
>> -static ssize_t radeon_set_pm_profile(struct device *dev,
>> - struct device_attribute *attr,
>> - const char *buf,
>> - size_t count)
>> +static ssize_t power_profile_store(struct device *dev, struct device_attribute *attr,
>> + const char *buf, size_t count)
>> {
>> struct drm_device *ddev = dev_get_drvdata(dev);
>> struct radeon_device *rdev = ddev->dev_private;
>> @@ -406,9 +403,8 @@ static ssize_t radeon_set_pm_profile(struct device *dev,
>> return count;
>> }
>>
>> -static ssize_t radeon_get_pm_method(struct device *dev,
>> - struct device_attribute *attr,
>> - char *buf)
>> +static ssize_t power_method_show(struct device *dev,
>> + struct device_attribute *attr, char *buf)
>> {
>> struct drm_device *ddev = dev_get_drvdata(dev);
>> struct radeon_device *rdev = ddev->dev_private;
>> @@ -418,10 +414,9 @@ static ssize_t radeon_get_pm_method(struct device *dev,
>> (pm == PM_METHOD_PROFILE) ? "profile" : "dpm");
>> }
>>
>> -static ssize_t radeon_set_pm_method(struct device *dev,
>> - struct device_attribute *attr,
>> - const char *buf,
>> - size_t count)
>> +static ssize_t power_method_store(struct device *dev,
>> + struct device_attribute *attr,
>> + const char *buf, size_t count)
>> {
>> struct drm_device *ddev = dev_get_drvdata(dev);
>> struct radeon_device *rdev = ddev->dev_private;
>> @@ -462,9 +457,8 @@ static ssize_t radeon_set_pm_method(struct device *dev,
>> return count;
>> }
>>
>> -static ssize_t radeon_get_dpm_state(struct device *dev,
>> - struct device_attribute *attr,
>> - char *buf)
>> +static ssize_t power_dpm_state_show(struct device *dev,
>> + struct device_attribute *attr, char *buf)
>> {
>> struct drm_device *ddev = dev_get_drvdata(dev);
>> struct radeon_device *rdev = ddev->dev_private;
>> @@ -475,10 +469,9 @@ static ssize_t radeon_get_dpm_state(struct device *dev,
>> (pm == POWER_STATE_TYPE_BALANCED) ? "balanced" : "performance");
>> }
>>
>> -static ssize_t radeon_set_dpm_state(struct device *dev,
>> - struct device_attribute *attr,
>> - const char *buf,
>> - size_t count)
>> +static ssize_t power_dpm_state_store(struct device *dev,
>> + struct device_attribute *attr,
>> + const char *buf, size_t count)
>> {
>> struct drm_device *ddev = dev_get_drvdata(dev);
>> struct radeon_device *rdev = ddev->dev_private;
>> @@ -506,9 +499,9 @@ static ssize_t radeon_set_dpm_state(struct device *dev,
>> return count;
>> }
>>
>> -static ssize_t radeon_get_dpm_forced_performance_level(struct device *dev,
>> - struct device_attribute *attr,
>> - char *buf)
>> +static ssize_t power_dpm_force_performance_level_show(struct device *dev,
>> + struct device_attribute *attr,
>> + char *buf)
>> {
>> struct drm_device *ddev = dev_get_drvdata(dev);
>> struct radeon_device *rdev = ddev->dev_private;
>> @@ -523,10 +516,9 @@ static ssize_t radeon_get_dpm_forced_performance_level(struct device *dev,
>> (level == RADEON_DPM_FORCED_LEVEL_LOW) ? "low" : "high");
>> }
>>
>> -static ssize_t radeon_set_dpm_forced_performance_level(struct device *dev,
>> +static ssize_t power_dpm_force_performance_level_store(struct device *dev,
>> struct device_attribute *attr,
>> - const char *buf,
>> - size_t count)
>> + const char *buf, size_t count)
>> {
>> struct drm_device *ddev = dev_get_drvdata(dev);
>> struct radeon_device *rdev = ddev->dev_private;
>> @@ -658,12 +650,10 @@ static ssize_t radeon_hwmon_get_pwm1(struct device *dev,
>> return sprintf(buf, "%i\n", speed);
>> }
>>
>> -static DEVICE_ATTR(power_profile, S_IRUGO | S_IWUSR, radeon_get_pm_profile, radeon_set_pm_profile);
>> -static DEVICE_ATTR(power_method, S_IRUGO | S_IWUSR, radeon_get_pm_method, radeon_set_pm_method);
>> -static DEVICE_ATTR(power_dpm_state, S_IRUGO | S_IWUSR, radeon_get_dpm_state, radeon_set_dpm_state);
>> -static DEVICE_ATTR(power_dpm_force_performance_level, S_IRUGO | S_IWUSR,
>> - radeon_get_dpm_forced_performance_level,
>> - radeon_set_dpm_forced_performance_level);
>> +static DEVICE_ATTR_RW(power_profile);
>> +static DEVICE_ATTR_RW(power_method);
>> +static DEVICE_ATTR_RW(power_dpm_state);
>> +static DEVICE_ATTR_RW(power_dpm_force_performance_level);
>>
>> static ssize_t radeon_hwmon_show_temp(struct device *dev,
>> struct device_attribute *attr,
>> --
>> 2.17.1
>>
> _______________________________________________
> amd-gfx mailing list
> amd-gfx@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/amd-gfx
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH -next] drm/radeon/radeon_pm: use DEVICE_ATTR_RW macro
@ 2021-06-02 6:41 ` Christian König
0 siblings, 0 replies; 12+ messages in thread
From: Christian König @ 2021-06-02 6:41 UTC (permalink / raw)
To: Alex Deucher, YueHaibing
Cc: Dave Airlie, xinhui pan, LKML, amd-gfx list,
Maling list - DRI developers, Daniel Vetter, Deucher, Alexander,
Christian Koenig
Am 02.06.21 um 03:53 schrieb Alex Deucher:
> On Fri, May 28, 2021 at 3:18 AM YueHaibing <yuehaibing@huawei.com> wrote:
>> Use DEVICE_ATTR_RW() helper instead of plain DEVICE_ATTR(),
>> which makes the code a bit shorter and easier to read.
>>
>> Signed-off-by: YueHaibing <yuehaibing@huawei.com>
> I'm not convinced this really buys us anything other than code churn,
> but I don't have a particularly strong opinion of others feel
> differently.
I agree, especially dropping the amdgpu prefix from the functions
doesn't sound like something we want.
Christian.
>
> Alex
>
>
>> ---
>> drivers/gpu/drm/radeon/radeon_pm.c | 56 ++++++++++++------------------
>> 1 file changed, 23 insertions(+), 33 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/radeon/radeon_pm.c b/drivers/gpu/drm/radeon/radeon_pm.c
>> index 3861c0b98fcf..edf10cc3947e 100644
>> --- a/drivers/gpu/drm/radeon/radeon_pm.c
>> +++ b/drivers/gpu/drm/radeon/radeon_pm.c
>> @@ -352,9 +352,8 @@ static void radeon_pm_print_states(struct radeon_device *rdev)
>> }
>> }
>>
>> -static ssize_t radeon_get_pm_profile(struct device *dev,
>> - struct device_attribute *attr,
>> - char *buf)
>> +static ssize_t power_profile_show(struct device *dev,
>> + struct device_attribute *attr, char *buf)
>> {
>> struct drm_device *ddev = dev_get_drvdata(dev);
>> struct radeon_device *rdev = ddev->dev_private;
>> @@ -366,10 +365,8 @@ static ssize_t radeon_get_pm_profile(struct device *dev,
>> (cp == PM_PROFILE_HIGH) ? "high" : "default");
>> }
>>
>> -static ssize_t radeon_set_pm_profile(struct device *dev,
>> - struct device_attribute *attr,
>> - const char *buf,
>> - size_t count)
>> +static ssize_t power_profile_store(struct device *dev, struct device_attribute *attr,
>> + const char *buf, size_t count)
>> {
>> struct drm_device *ddev = dev_get_drvdata(dev);
>> struct radeon_device *rdev = ddev->dev_private;
>> @@ -406,9 +403,8 @@ static ssize_t radeon_set_pm_profile(struct device *dev,
>> return count;
>> }
>>
>> -static ssize_t radeon_get_pm_method(struct device *dev,
>> - struct device_attribute *attr,
>> - char *buf)
>> +static ssize_t power_method_show(struct device *dev,
>> + struct device_attribute *attr, char *buf)
>> {
>> struct drm_device *ddev = dev_get_drvdata(dev);
>> struct radeon_device *rdev = ddev->dev_private;
>> @@ -418,10 +414,9 @@ static ssize_t radeon_get_pm_method(struct device *dev,
>> (pm == PM_METHOD_PROFILE) ? "profile" : "dpm");
>> }
>>
>> -static ssize_t radeon_set_pm_method(struct device *dev,
>> - struct device_attribute *attr,
>> - const char *buf,
>> - size_t count)
>> +static ssize_t power_method_store(struct device *dev,
>> + struct device_attribute *attr,
>> + const char *buf, size_t count)
>> {
>> struct drm_device *ddev = dev_get_drvdata(dev);
>> struct radeon_device *rdev = ddev->dev_private;
>> @@ -462,9 +457,8 @@ static ssize_t radeon_set_pm_method(struct device *dev,
>> return count;
>> }
>>
>> -static ssize_t radeon_get_dpm_state(struct device *dev,
>> - struct device_attribute *attr,
>> - char *buf)
>> +static ssize_t power_dpm_state_show(struct device *dev,
>> + struct device_attribute *attr, char *buf)
>> {
>> struct drm_device *ddev = dev_get_drvdata(dev);
>> struct radeon_device *rdev = ddev->dev_private;
>> @@ -475,10 +469,9 @@ static ssize_t radeon_get_dpm_state(struct device *dev,
>> (pm == POWER_STATE_TYPE_BALANCED) ? "balanced" : "performance");
>> }
>>
>> -static ssize_t radeon_set_dpm_state(struct device *dev,
>> - struct device_attribute *attr,
>> - const char *buf,
>> - size_t count)
>> +static ssize_t power_dpm_state_store(struct device *dev,
>> + struct device_attribute *attr,
>> + const char *buf, size_t count)
>> {
>> struct drm_device *ddev = dev_get_drvdata(dev);
>> struct radeon_device *rdev = ddev->dev_private;
>> @@ -506,9 +499,9 @@ static ssize_t radeon_set_dpm_state(struct device *dev,
>> return count;
>> }
>>
>> -static ssize_t radeon_get_dpm_forced_performance_level(struct device *dev,
>> - struct device_attribute *attr,
>> - char *buf)
>> +static ssize_t power_dpm_force_performance_level_show(struct device *dev,
>> + struct device_attribute *attr,
>> + char *buf)
>> {
>> struct drm_device *ddev = dev_get_drvdata(dev);
>> struct radeon_device *rdev = ddev->dev_private;
>> @@ -523,10 +516,9 @@ static ssize_t radeon_get_dpm_forced_performance_level(struct device *dev,
>> (level == RADEON_DPM_FORCED_LEVEL_LOW) ? "low" : "high");
>> }
>>
>> -static ssize_t radeon_set_dpm_forced_performance_level(struct device *dev,
>> +static ssize_t power_dpm_force_performance_level_store(struct device *dev,
>> struct device_attribute *attr,
>> - const char *buf,
>> - size_t count)
>> + const char *buf, size_t count)
>> {
>> struct drm_device *ddev = dev_get_drvdata(dev);
>> struct radeon_device *rdev = ddev->dev_private;
>> @@ -658,12 +650,10 @@ static ssize_t radeon_hwmon_get_pwm1(struct device *dev,
>> return sprintf(buf, "%i\n", speed);
>> }
>>
>> -static DEVICE_ATTR(power_profile, S_IRUGO | S_IWUSR, radeon_get_pm_profile, radeon_set_pm_profile);
>> -static DEVICE_ATTR(power_method, S_IRUGO | S_IWUSR, radeon_get_pm_method, radeon_set_pm_method);
>> -static DEVICE_ATTR(power_dpm_state, S_IRUGO | S_IWUSR, radeon_get_dpm_state, radeon_set_dpm_state);
>> -static DEVICE_ATTR(power_dpm_force_performance_level, S_IRUGO | S_IWUSR,
>> - radeon_get_dpm_forced_performance_level,
>> - radeon_set_dpm_forced_performance_level);
>> +static DEVICE_ATTR_RW(power_profile);
>> +static DEVICE_ATTR_RW(power_method);
>> +static DEVICE_ATTR_RW(power_dpm_state);
>> +static DEVICE_ATTR_RW(power_dpm_force_performance_level);
>>
>> static ssize_t radeon_hwmon_show_temp(struct device *dev,
>> struct device_attribute *attr,
>> --
>> 2.17.1
>>
> _______________________________________________
> amd-gfx mailing list
> amd-gfx@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/amd-gfx
_______________________________________________
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH -next] drm/radeon/radeon_pm: use DEVICE_ATTR_RW macro
@ 2021-06-02 6:41 ` Christian König
0 siblings, 0 replies; 12+ messages in thread
From: Christian König @ 2021-06-02 6:41 UTC (permalink / raw)
To: Alex Deucher, YueHaibing
Cc: Dave Airlie, xinhui pan, LKML, amd-gfx list,
Maling list - DRI developers, Deucher, Alexander,
Christian Koenig
Am 02.06.21 um 03:53 schrieb Alex Deucher:
> On Fri, May 28, 2021 at 3:18 AM YueHaibing <yuehaibing@huawei.com> wrote:
>> Use DEVICE_ATTR_RW() helper instead of plain DEVICE_ATTR(),
>> which makes the code a bit shorter and easier to read.
>>
>> Signed-off-by: YueHaibing <yuehaibing@huawei.com>
> I'm not convinced this really buys us anything other than code churn,
> but I don't have a particularly strong opinion of others feel
> differently.
I agree, especially dropping the amdgpu prefix from the functions
doesn't sound like something we want.
Christian.
>
> Alex
>
>
>> ---
>> drivers/gpu/drm/radeon/radeon_pm.c | 56 ++++++++++++------------------
>> 1 file changed, 23 insertions(+), 33 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/radeon/radeon_pm.c b/drivers/gpu/drm/radeon/radeon_pm.c
>> index 3861c0b98fcf..edf10cc3947e 100644
>> --- a/drivers/gpu/drm/radeon/radeon_pm.c
>> +++ b/drivers/gpu/drm/radeon/radeon_pm.c
>> @@ -352,9 +352,8 @@ static void radeon_pm_print_states(struct radeon_device *rdev)
>> }
>> }
>>
>> -static ssize_t radeon_get_pm_profile(struct device *dev,
>> - struct device_attribute *attr,
>> - char *buf)
>> +static ssize_t power_profile_show(struct device *dev,
>> + struct device_attribute *attr, char *buf)
>> {
>> struct drm_device *ddev = dev_get_drvdata(dev);
>> struct radeon_device *rdev = ddev->dev_private;
>> @@ -366,10 +365,8 @@ static ssize_t radeon_get_pm_profile(struct device *dev,
>> (cp == PM_PROFILE_HIGH) ? "high" : "default");
>> }
>>
>> -static ssize_t radeon_set_pm_profile(struct device *dev,
>> - struct device_attribute *attr,
>> - const char *buf,
>> - size_t count)
>> +static ssize_t power_profile_store(struct device *dev, struct device_attribute *attr,
>> + const char *buf, size_t count)
>> {
>> struct drm_device *ddev = dev_get_drvdata(dev);
>> struct radeon_device *rdev = ddev->dev_private;
>> @@ -406,9 +403,8 @@ static ssize_t radeon_set_pm_profile(struct device *dev,
>> return count;
>> }
>>
>> -static ssize_t radeon_get_pm_method(struct device *dev,
>> - struct device_attribute *attr,
>> - char *buf)
>> +static ssize_t power_method_show(struct device *dev,
>> + struct device_attribute *attr, char *buf)
>> {
>> struct drm_device *ddev = dev_get_drvdata(dev);
>> struct radeon_device *rdev = ddev->dev_private;
>> @@ -418,10 +414,9 @@ static ssize_t radeon_get_pm_method(struct device *dev,
>> (pm == PM_METHOD_PROFILE) ? "profile" : "dpm");
>> }
>>
>> -static ssize_t radeon_set_pm_method(struct device *dev,
>> - struct device_attribute *attr,
>> - const char *buf,
>> - size_t count)
>> +static ssize_t power_method_store(struct device *dev,
>> + struct device_attribute *attr,
>> + const char *buf, size_t count)
>> {
>> struct drm_device *ddev = dev_get_drvdata(dev);
>> struct radeon_device *rdev = ddev->dev_private;
>> @@ -462,9 +457,8 @@ static ssize_t radeon_set_pm_method(struct device *dev,
>> return count;
>> }
>>
>> -static ssize_t radeon_get_dpm_state(struct device *dev,
>> - struct device_attribute *attr,
>> - char *buf)
>> +static ssize_t power_dpm_state_show(struct device *dev,
>> + struct device_attribute *attr, char *buf)
>> {
>> struct drm_device *ddev = dev_get_drvdata(dev);
>> struct radeon_device *rdev = ddev->dev_private;
>> @@ -475,10 +469,9 @@ static ssize_t radeon_get_dpm_state(struct device *dev,
>> (pm == POWER_STATE_TYPE_BALANCED) ? "balanced" : "performance");
>> }
>>
>> -static ssize_t radeon_set_dpm_state(struct device *dev,
>> - struct device_attribute *attr,
>> - const char *buf,
>> - size_t count)
>> +static ssize_t power_dpm_state_store(struct device *dev,
>> + struct device_attribute *attr,
>> + const char *buf, size_t count)
>> {
>> struct drm_device *ddev = dev_get_drvdata(dev);
>> struct radeon_device *rdev = ddev->dev_private;
>> @@ -506,9 +499,9 @@ static ssize_t radeon_set_dpm_state(struct device *dev,
>> return count;
>> }
>>
>> -static ssize_t radeon_get_dpm_forced_performance_level(struct device *dev,
>> - struct device_attribute *attr,
>> - char *buf)
>> +static ssize_t power_dpm_force_performance_level_show(struct device *dev,
>> + struct device_attribute *attr,
>> + char *buf)
>> {
>> struct drm_device *ddev = dev_get_drvdata(dev);
>> struct radeon_device *rdev = ddev->dev_private;
>> @@ -523,10 +516,9 @@ static ssize_t radeon_get_dpm_forced_performance_level(struct device *dev,
>> (level == RADEON_DPM_FORCED_LEVEL_LOW) ? "low" : "high");
>> }
>>
>> -static ssize_t radeon_set_dpm_forced_performance_level(struct device *dev,
>> +static ssize_t power_dpm_force_performance_level_store(struct device *dev,
>> struct device_attribute *attr,
>> - const char *buf,
>> - size_t count)
>> + const char *buf, size_t count)
>> {
>> struct drm_device *ddev = dev_get_drvdata(dev);
>> struct radeon_device *rdev = ddev->dev_private;
>> @@ -658,12 +650,10 @@ static ssize_t radeon_hwmon_get_pwm1(struct device *dev,
>> return sprintf(buf, "%i\n", speed);
>> }
>>
>> -static DEVICE_ATTR(power_profile, S_IRUGO | S_IWUSR, radeon_get_pm_profile, radeon_set_pm_profile);
>> -static DEVICE_ATTR(power_method, S_IRUGO | S_IWUSR, radeon_get_pm_method, radeon_set_pm_method);
>> -static DEVICE_ATTR(power_dpm_state, S_IRUGO | S_IWUSR, radeon_get_dpm_state, radeon_set_dpm_state);
>> -static DEVICE_ATTR(power_dpm_force_performance_level, S_IRUGO | S_IWUSR,
>> - radeon_get_dpm_forced_performance_level,
>> - radeon_set_dpm_forced_performance_level);
>> +static DEVICE_ATTR_RW(power_profile);
>> +static DEVICE_ATTR_RW(power_method);
>> +static DEVICE_ATTR_RW(power_dpm_state);
>> +static DEVICE_ATTR_RW(power_dpm_force_performance_level);
>>
>> static ssize_t radeon_hwmon_show_temp(struct device *dev,
>> struct device_attribute *attr,
>> --
>> 2.17.1
>>
> _______________________________________________
> amd-gfx mailing list
> amd-gfx@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/amd-gfx
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH -next] drm/radeon/radeon_pm: use DEVICE_ATTR_RW macro
2021-06-02 1:53 ` Alex Deucher
(?)
@ 2021-06-02 6:41 ` Christian König
-1 siblings, 0 replies; 12+ messages in thread
From: Christian König @ 2021-06-02 6:41 UTC (permalink / raw)
To: Alex Deucher, YueHaibing
Cc: Dave Airlie, xinhui pan, LKML, Maling list - DRI developers,
amd-gfx list, Daniel Vetter, Deucher, Alexander,
Christian Koenig
Am 02.06.21 um 03:53 schrieb Alex Deucher:
> On Fri, May 28, 2021 at 3:18 AM YueHaibing <yuehaibing@huawei.com> wrote:
>> Use DEVICE_ATTR_RW() helper instead of plain DEVICE_ATTR(),
>> which makes the code a bit shorter and easier to read.
>>
>> Signed-off-by: YueHaibing <yuehaibing@huawei.com>
> I'm not convinced this really buys us anything other than code churn,
> but I don't have a particularly strong opinion of others feel
> differently.
I agree, especially dropping the amdgpu/radeon prefix from the functions
doesn't sound like something we want.
Christian.
>
> Alex
>
>
>> ---
>> drivers/gpu/drm/radeon/radeon_pm.c | 56 ++++++++++++------------------
>> 1 file changed, 23 insertions(+), 33 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/radeon/radeon_pm.c b/drivers/gpu/drm/radeon/radeon_pm.c
>> index 3861c0b98fcf..edf10cc3947e 100644
>> --- a/drivers/gpu/drm/radeon/radeon_pm.c
>> +++ b/drivers/gpu/drm/radeon/radeon_pm.c
>> @@ -352,9 +352,8 @@ static void radeon_pm_print_states(struct radeon_device *rdev)
>> }
>> }
>>
>> -static ssize_t radeon_get_pm_profile(struct device *dev,
>> - struct device_attribute *attr,
>> - char *buf)
>> +static ssize_t power_profile_show(struct device *dev,
>> + struct device_attribute *attr, char *buf)
>> {
>> struct drm_device *ddev = dev_get_drvdata(dev);
>> struct radeon_device *rdev = ddev->dev_private;
>> @@ -366,10 +365,8 @@ static ssize_t radeon_get_pm_profile(struct device *dev,
>> (cp == PM_PROFILE_HIGH) ? "high" : "default");
>> }
>>
>> -static ssize_t radeon_set_pm_profile(struct device *dev,
>> - struct device_attribute *attr,
>> - const char *buf,
>> - size_t count)
>> +static ssize_t power_profile_store(struct device *dev, struct device_attribute *attr,
>> + const char *buf, size_t count)
>> {
>> struct drm_device *ddev = dev_get_drvdata(dev);
>> struct radeon_device *rdev = ddev->dev_private;
>> @@ -406,9 +403,8 @@ static ssize_t radeon_set_pm_profile(struct device *dev,
>> return count;
>> }
>>
>> -static ssize_t radeon_get_pm_method(struct device *dev,
>> - struct device_attribute *attr,
>> - char *buf)
>> +static ssize_t power_method_show(struct device *dev,
>> + struct device_attribute *attr, char *buf)
>> {
>> struct drm_device *ddev = dev_get_drvdata(dev);
>> struct radeon_device *rdev = ddev->dev_private;
>> @@ -418,10 +414,9 @@ static ssize_t radeon_get_pm_method(struct device *dev,
>> (pm == PM_METHOD_PROFILE) ? "profile" : "dpm");
>> }
>>
>> -static ssize_t radeon_set_pm_method(struct device *dev,
>> - struct device_attribute *attr,
>> - const char *buf,
>> - size_t count)
>> +static ssize_t power_method_store(struct device *dev,
>> + struct device_attribute *attr,
>> + const char *buf, size_t count)
>> {
>> struct drm_device *ddev = dev_get_drvdata(dev);
>> struct radeon_device *rdev = ddev->dev_private;
>> @@ -462,9 +457,8 @@ static ssize_t radeon_set_pm_method(struct device *dev,
>> return count;
>> }
>>
>> -static ssize_t radeon_get_dpm_state(struct device *dev,
>> - struct device_attribute *attr,
>> - char *buf)
>> +static ssize_t power_dpm_state_show(struct device *dev,
>> + struct device_attribute *attr, char *buf)
>> {
>> struct drm_device *ddev = dev_get_drvdata(dev);
>> struct radeon_device *rdev = ddev->dev_private;
>> @@ -475,10 +469,9 @@ static ssize_t radeon_get_dpm_state(struct device *dev,
>> (pm == POWER_STATE_TYPE_BALANCED) ? "balanced" : "performance");
>> }
>>
>> -static ssize_t radeon_set_dpm_state(struct device *dev,
>> - struct device_attribute *attr,
>> - const char *buf,
>> - size_t count)
>> +static ssize_t power_dpm_state_store(struct device *dev,
>> + struct device_attribute *attr,
>> + const char *buf, size_t count)
>> {
>> struct drm_device *ddev = dev_get_drvdata(dev);
>> struct radeon_device *rdev = ddev->dev_private;
>> @@ -506,9 +499,9 @@ static ssize_t radeon_set_dpm_state(struct device *dev,
>> return count;
>> }
>>
>> -static ssize_t radeon_get_dpm_forced_performance_level(struct device *dev,
>> - struct device_attribute *attr,
>> - char *buf)
>> +static ssize_t power_dpm_force_performance_level_show(struct device *dev,
>> + struct device_attribute *attr,
>> + char *buf)
>> {
>> struct drm_device *ddev = dev_get_drvdata(dev);
>> struct radeon_device *rdev = ddev->dev_private;
>> @@ -523,10 +516,9 @@ static ssize_t radeon_get_dpm_forced_performance_level(struct device *dev,
>> (level == RADEON_DPM_FORCED_LEVEL_LOW) ? "low" : "high");
>> }
>>
>> -static ssize_t radeon_set_dpm_forced_performance_level(struct device *dev,
>> +static ssize_t power_dpm_force_performance_level_store(struct device *dev,
>> struct device_attribute *attr,
>> - const char *buf,
>> - size_t count)
>> + const char *buf, size_t count)
>> {
>> struct drm_device *ddev = dev_get_drvdata(dev);
>> struct radeon_device *rdev = ddev->dev_private;
>> @@ -658,12 +650,10 @@ static ssize_t radeon_hwmon_get_pwm1(struct device *dev,
>> return sprintf(buf, "%i\n", speed);
>> }
>>
>> -static DEVICE_ATTR(power_profile, S_IRUGO | S_IWUSR, radeon_get_pm_profile, radeon_set_pm_profile);
>> -static DEVICE_ATTR(power_method, S_IRUGO | S_IWUSR, radeon_get_pm_method, radeon_set_pm_method);
>> -static DEVICE_ATTR(power_dpm_state, S_IRUGO | S_IWUSR, radeon_get_dpm_state, radeon_set_dpm_state);
>> -static DEVICE_ATTR(power_dpm_force_performance_level, S_IRUGO | S_IWUSR,
>> - radeon_get_dpm_forced_performance_level,
>> - radeon_set_dpm_forced_performance_level);
>> +static DEVICE_ATTR_RW(power_profile);
>> +static DEVICE_ATTR_RW(power_method);
>> +static DEVICE_ATTR_RW(power_dpm_state);
>> +static DEVICE_ATTR_RW(power_dpm_force_performance_level);
>>
>> static ssize_t radeon_hwmon_show_temp(struct device *dev,
>> struct device_attribute *attr,
>> --
>> 2.17.1
>>
> _______________________________________________
> amd-gfx mailing list
> amd-gfx@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/amd-gfx
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH -next] drm/radeon/radeon_pm: use DEVICE_ATTR_RW macro
@ 2021-06-02 6:41 ` Christian König
0 siblings, 0 replies; 12+ messages in thread
From: Christian König @ 2021-06-02 6:41 UTC (permalink / raw)
To: Alex Deucher, YueHaibing
Cc: Dave Airlie, xinhui pan, LKML, amd-gfx list,
Maling list - DRI developers, Daniel Vetter, Deucher, Alexander,
Christian Koenig
Am 02.06.21 um 03:53 schrieb Alex Deucher:
> On Fri, May 28, 2021 at 3:18 AM YueHaibing <yuehaibing@huawei.com> wrote:
>> Use DEVICE_ATTR_RW() helper instead of plain DEVICE_ATTR(),
>> which makes the code a bit shorter and easier to read.
>>
>> Signed-off-by: YueHaibing <yuehaibing@huawei.com>
> I'm not convinced this really buys us anything other than code churn,
> but I don't have a particularly strong opinion of others feel
> differently.
I agree, especially dropping the amdgpu/radeon prefix from the functions
doesn't sound like something we want.
Christian.
>
> Alex
>
>
>> ---
>> drivers/gpu/drm/radeon/radeon_pm.c | 56 ++++++++++++------------------
>> 1 file changed, 23 insertions(+), 33 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/radeon/radeon_pm.c b/drivers/gpu/drm/radeon/radeon_pm.c
>> index 3861c0b98fcf..edf10cc3947e 100644
>> --- a/drivers/gpu/drm/radeon/radeon_pm.c
>> +++ b/drivers/gpu/drm/radeon/radeon_pm.c
>> @@ -352,9 +352,8 @@ static void radeon_pm_print_states(struct radeon_device *rdev)
>> }
>> }
>>
>> -static ssize_t radeon_get_pm_profile(struct device *dev,
>> - struct device_attribute *attr,
>> - char *buf)
>> +static ssize_t power_profile_show(struct device *dev,
>> + struct device_attribute *attr, char *buf)
>> {
>> struct drm_device *ddev = dev_get_drvdata(dev);
>> struct radeon_device *rdev = ddev->dev_private;
>> @@ -366,10 +365,8 @@ static ssize_t radeon_get_pm_profile(struct device *dev,
>> (cp == PM_PROFILE_HIGH) ? "high" : "default");
>> }
>>
>> -static ssize_t radeon_set_pm_profile(struct device *dev,
>> - struct device_attribute *attr,
>> - const char *buf,
>> - size_t count)
>> +static ssize_t power_profile_store(struct device *dev, struct device_attribute *attr,
>> + const char *buf, size_t count)
>> {
>> struct drm_device *ddev = dev_get_drvdata(dev);
>> struct radeon_device *rdev = ddev->dev_private;
>> @@ -406,9 +403,8 @@ static ssize_t radeon_set_pm_profile(struct device *dev,
>> return count;
>> }
>>
>> -static ssize_t radeon_get_pm_method(struct device *dev,
>> - struct device_attribute *attr,
>> - char *buf)
>> +static ssize_t power_method_show(struct device *dev,
>> + struct device_attribute *attr, char *buf)
>> {
>> struct drm_device *ddev = dev_get_drvdata(dev);
>> struct radeon_device *rdev = ddev->dev_private;
>> @@ -418,10 +414,9 @@ static ssize_t radeon_get_pm_method(struct device *dev,
>> (pm == PM_METHOD_PROFILE) ? "profile" : "dpm");
>> }
>>
>> -static ssize_t radeon_set_pm_method(struct device *dev,
>> - struct device_attribute *attr,
>> - const char *buf,
>> - size_t count)
>> +static ssize_t power_method_store(struct device *dev,
>> + struct device_attribute *attr,
>> + const char *buf, size_t count)
>> {
>> struct drm_device *ddev = dev_get_drvdata(dev);
>> struct radeon_device *rdev = ddev->dev_private;
>> @@ -462,9 +457,8 @@ static ssize_t radeon_set_pm_method(struct device *dev,
>> return count;
>> }
>>
>> -static ssize_t radeon_get_dpm_state(struct device *dev,
>> - struct device_attribute *attr,
>> - char *buf)
>> +static ssize_t power_dpm_state_show(struct device *dev,
>> + struct device_attribute *attr, char *buf)
>> {
>> struct drm_device *ddev = dev_get_drvdata(dev);
>> struct radeon_device *rdev = ddev->dev_private;
>> @@ -475,10 +469,9 @@ static ssize_t radeon_get_dpm_state(struct device *dev,
>> (pm == POWER_STATE_TYPE_BALANCED) ? "balanced" : "performance");
>> }
>>
>> -static ssize_t radeon_set_dpm_state(struct device *dev,
>> - struct device_attribute *attr,
>> - const char *buf,
>> - size_t count)
>> +static ssize_t power_dpm_state_store(struct device *dev,
>> + struct device_attribute *attr,
>> + const char *buf, size_t count)
>> {
>> struct drm_device *ddev = dev_get_drvdata(dev);
>> struct radeon_device *rdev = ddev->dev_private;
>> @@ -506,9 +499,9 @@ static ssize_t radeon_set_dpm_state(struct device *dev,
>> return count;
>> }
>>
>> -static ssize_t radeon_get_dpm_forced_performance_level(struct device *dev,
>> - struct device_attribute *attr,
>> - char *buf)
>> +static ssize_t power_dpm_force_performance_level_show(struct device *dev,
>> + struct device_attribute *attr,
>> + char *buf)
>> {
>> struct drm_device *ddev = dev_get_drvdata(dev);
>> struct radeon_device *rdev = ddev->dev_private;
>> @@ -523,10 +516,9 @@ static ssize_t radeon_get_dpm_forced_performance_level(struct device *dev,
>> (level == RADEON_DPM_FORCED_LEVEL_LOW) ? "low" : "high");
>> }
>>
>> -static ssize_t radeon_set_dpm_forced_performance_level(struct device *dev,
>> +static ssize_t power_dpm_force_performance_level_store(struct device *dev,
>> struct device_attribute *attr,
>> - const char *buf,
>> - size_t count)
>> + const char *buf, size_t count)
>> {
>> struct drm_device *ddev = dev_get_drvdata(dev);
>> struct radeon_device *rdev = ddev->dev_private;
>> @@ -658,12 +650,10 @@ static ssize_t radeon_hwmon_get_pwm1(struct device *dev,
>> return sprintf(buf, "%i\n", speed);
>> }
>>
>> -static DEVICE_ATTR(power_profile, S_IRUGO | S_IWUSR, radeon_get_pm_profile, radeon_set_pm_profile);
>> -static DEVICE_ATTR(power_method, S_IRUGO | S_IWUSR, radeon_get_pm_method, radeon_set_pm_method);
>> -static DEVICE_ATTR(power_dpm_state, S_IRUGO | S_IWUSR, radeon_get_dpm_state, radeon_set_dpm_state);
>> -static DEVICE_ATTR(power_dpm_force_performance_level, S_IRUGO | S_IWUSR,
>> - radeon_get_dpm_forced_performance_level,
>> - radeon_set_dpm_forced_performance_level);
>> +static DEVICE_ATTR_RW(power_profile);
>> +static DEVICE_ATTR_RW(power_method);
>> +static DEVICE_ATTR_RW(power_dpm_state);
>> +static DEVICE_ATTR_RW(power_dpm_force_performance_level);
>>
>> static ssize_t radeon_hwmon_show_temp(struct device *dev,
>> struct device_attribute *attr,
>> --
>> 2.17.1
>>
> _______________________________________________
> amd-gfx mailing list
> amd-gfx@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/amd-gfx
_______________________________________________
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH -next] drm/radeon/radeon_pm: use DEVICE_ATTR_RW macro
@ 2021-06-02 6:41 ` Christian König
0 siblings, 0 replies; 12+ messages in thread
From: Christian König @ 2021-06-02 6:41 UTC (permalink / raw)
To: Alex Deucher, YueHaibing
Cc: Dave Airlie, xinhui pan, LKML, amd-gfx list,
Maling list - DRI developers, Deucher, Alexander,
Christian Koenig
Am 02.06.21 um 03:53 schrieb Alex Deucher:
> On Fri, May 28, 2021 at 3:18 AM YueHaibing <yuehaibing@huawei.com> wrote:
>> Use DEVICE_ATTR_RW() helper instead of plain DEVICE_ATTR(),
>> which makes the code a bit shorter and easier to read.
>>
>> Signed-off-by: YueHaibing <yuehaibing@huawei.com>
> I'm not convinced this really buys us anything other than code churn,
> but I don't have a particularly strong opinion of others feel
> differently.
I agree, especially dropping the amdgpu/radeon prefix from the functions
doesn't sound like something we want.
Christian.
>
> Alex
>
>
>> ---
>> drivers/gpu/drm/radeon/radeon_pm.c | 56 ++++++++++++------------------
>> 1 file changed, 23 insertions(+), 33 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/radeon/radeon_pm.c b/drivers/gpu/drm/radeon/radeon_pm.c
>> index 3861c0b98fcf..edf10cc3947e 100644
>> --- a/drivers/gpu/drm/radeon/radeon_pm.c
>> +++ b/drivers/gpu/drm/radeon/radeon_pm.c
>> @@ -352,9 +352,8 @@ static void radeon_pm_print_states(struct radeon_device *rdev)
>> }
>> }
>>
>> -static ssize_t radeon_get_pm_profile(struct device *dev,
>> - struct device_attribute *attr,
>> - char *buf)
>> +static ssize_t power_profile_show(struct device *dev,
>> + struct device_attribute *attr, char *buf)
>> {
>> struct drm_device *ddev = dev_get_drvdata(dev);
>> struct radeon_device *rdev = ddev->dev_private;
>> @@ -366,10 +365,8 @@ static ssize_t radeon_get_pm_profile(struct device *dev,
>> (cp == PM_PROFILE_HIGH) ? "high" : "default");
>> }
>>
>> -static ssize_t radeon_set_pm_profile(struct device *dev,
>> - struct device_attribute *attr,
>> - const char *buf,
>> - size_t count)
>> +static ssize_t power_profile_store(struct device *dev, struct device_attribute *attr,
>> + const char *buf, size_t count)
>> {
>> struct drm_device *ddev = dev_get_drvdata(dev);
>> struct radeon_device *rdev = ddev->dev_private;
>> @@ -406,9 +403,8 @@ static ssize_t radeon_set_pm_profile(struct device *dev,
>> return count;
>> }
>>
>> -static ssize_t radeon_get_pm_method(struct device *dev,
>> - struct device_attribute *attr,
>> - char *buf)
>> +static ssize_t power_method_show(struct device *dev,
>> + struct device_attribute *attr, char *buf)
>> {
>> struct drm_device *ddev = dev_get_drvdata(dev);
>> struct radeon_device *rdev = ddev->dev_private;
>> @@ -418,10 +414,9 @@ static ssize_t radeon_get_pm_method(struct device *dev,
>> (pm == PM_METHOD_PROFILE) ? "profile" : "dpm");
>> }
>>
>> -static ssize_t radeon_set_pm_method(struct device *dev,
>> - struct device_attribute *attr,
>> - const char *buf,
>> - size_t count)
>> +static ssize_t power_method_store(struct device *dev,
>> + struct device_attribute *attr,
>> + const char *buf, size_t count)
>> {
>> struct drm_device *ddev = dev_get_drvdata(dev);
>> struct radeon_device *rdev = ddev->dev_private;
>> @@ -462,9 +457,8 @@ static ssize_t radeon_set_pm_method(struct device *dev,
>> return count;
>> }
>>
>> -static ssize_t radeon_get_dpm_state(struct device *dev,
>> - struct device_attribute *attr,
>> - char *buf)
>> +static ssize_t power_dpm_state_show(struct device *dev,
>> + struct device_attribute *attr, char *buf)
>> {
>> struct drm_device *ddev = dev_get_drvdata(dev);
>> struct radeon_device *rdev = ddev->dev_private;
>> @@ -475,10 +469,9 @@ static ssize_t radeon_get_dpm_state(struct device *dev,
>> (pm == POWER_STATE_TYPE_BALANCED) ? "balanced" : "performance");
>> }
>>
>> -static ssize_t radeon_set_dpm_state(struct device *dev,
>> - struct device_attribute *attr,
>> - const char *buf,
>> - size_t count)
>> +static ssize_t power_dpm_state_store(struct device *dev,
>> + struct device_attribute *attr,
>> + const char *buf, size_t count)
>> {
>> struct drm_device *ddev = dev_get_drvdata(dev);
>> struct radeon_device *rdev = ddev->dev_private;
>> @@ -506,9 +499,9 @@ static ssize_t radeon_set_dpm_state(struct device *dev,
>> return count;
>> }
>>
>> -static ssize_t radeon_get_dpm_forced_performance_level(struct device *dev,
>> - struct device_attribute *attr,
>> - char *buf)
>> +static ssize_t power_dpm_force_performance_level_show(struct device *dev,
>> + struct device_attribute *attr,
>> + char *buf)
>> {
>> struct drm_device *ddev = dev_get_drvdata(dev);
>> struct radeon_device *rdev = ddev->dev_private;
>> @@ -523,10 +516,9 @@ static ssize_t radeon_get_dpm_forced_performance_level(struct device *dev,
>> (level == RADEON_DPM_FORCED_LEVEL_LOW) ? "low" : "high");
>> }
>>
>> -static ssize_t radeon_set_dpm_forced_performance_level(struct device *dev,
>> +static ssize_t power_dpm_force_performance_level_store(struct device *dev,
>> struct device_attribute *attr,
>> - const char *buf,
>> - size_t count)
>> + const char *buf, size_t count)
>> {
>> struct drm_device *ddev = dev_get_drvdata(dev);
>> struct radeon_device *rdev = ddev->dev_private;
>> @@ -658,12 +650,10 @@ static ssize_t radeon_hwmon_get_pwm1(struct device *dev,
>> return sprintf(buf, "%i\n", speed);
>> }
>>
>> -static DEVICE_ATTR(power_profile, S_IRUGO | S_IWUSR, radeon_get_pm_profile, radeon_set_pm_profile);
>> -static DEVICE_ATTR(power_method, S_IRUGO | S_IWUSR, radeon_get_pm_method, radeon_set_pm_method);
>> -static DEVICE_ATTR(power_dpm_state, S_IRUGO | S_IWUSR, radeon_get_dpm_state, radeon_set_dpm_state);
>> -static DEVICE_ATTR(power_dpm_force_performance_level, S_IRUGO | S_IWUSR,
>> - radeon_get_dpm_forced_performance_level,
>> - radeon_set_dpm_forced_performance_level);
>> +static DEVICE_ATTR_RW(power_profile);
>> +static DEVICE_ATTR_RW(power_method);
>> +static DEVICE_ATTR_RW(power_dpm_state);
>> +static DEVICE_ATTR_RW(power_dpm_force_performance_level);
>>
>> static ssize_t radeon_hwmon_show_temp(struct device *dev,
>> struct device_attribute *attr,
>> --
>> 2.17.1
>>
> _______________________________________________
> amd-gfx mailing list
> amd-gfx@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/amd-gfx
^ permalink raw reply [flat|nested] 12+ messages in thread