Re: [PATCH] HID: playstation: convert to use dev_groups

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Greg,

Thanks for the patch. It looks good and confirmed it working properly.
(Replying from personal email... corporate email systems *Exchange*
don't work well with GIT)

Acked-by: Roderick Colenbrander <roderick.colenbrander@xxxxxxxx>

Thanks,
Roderick Colenbrander

On Thu, Aug 4, 2022 at 4:32 AM Greg Kroah-Hartman
<gregkh@xxxxxxxxxxxxxxxxxxx> wrote:
>
> There is no need for a driver to individually add/create device groups,
> the driver core will do it automatically for you.  Convert the
> hid-playstation driver to use the dev_groups pointer instead of manually
> calling the driver core to create the group and have it be cleaned up
> later on by the devm core.
>
> Cc: Roderick Colenbrander <roderick.colenbrander@xxxxxxxx>
> Cc: Jiri Kosina <jikos@xxxxxxxxxx>
> Cc: Benjamin Tissoires <benjamin.tissoires@xxxxxxxxxx>
> Cc: linux-input@xxxxxxxxxxxxxxx
> Cc: linux-kernel@xxxxxxxxxxxxxxx
> Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
> ---
>  drivers/hid/hid-playstation.c | 16 +++++-----------
>  1 file changed, 5 insertions(+), 11 deletions(-)
>
> diff --git a/drivers/hid/hid-playstation.c b/drivers/hid/hid-playstation.c
> index b1b5721b5d8f..40050eb85c0a 100644
> --- a/drivers/hid/hid-playstation.c
> +++ b/drivers/hid/hid-playstation.c
> @@ -692,15 +692,12 @@ static ssize_t hardware_version_show(struct device *dev,
>
>  static DEVICE_ATTR_RO(hardware_version);
>
> -static struct attribute *ps_device_attributes[] = {
> +static struct attribute *ps_device_attrs[] = {
>         &dev_attr_firmware_version.attr,
>         &dev_attr_hardware_version.attr,
>         NULL
>  };
> -
> -static const struct attribute_group ps_device_attribute_group = {
> -       .attrs = ps_device_attributes,
> -};
> +ATTRIBUTE_GROUPS(ps_device);
>
>  static int dualsense_get_calibration_data(struct dualsense *ds)
>  {
> @@ -1448,12 +1445,6 @@ static int ps_probe(struct hid_device *hdev, const struct hid_device_id *id)
>                 }
>         }
>
> -       ret = devm_device_add_group(&hdev->dev, &ps_device_attribute_group);
> -       if (ret) {
> -               hid_err(hdev, "Failed to register sysfs nodes.\n");
> -               goto err_close;
> -       }
> -
>         return ret;
>
>  err_close:
> @@ -1487,6 +1478,9 @@ static struct hid_driver ps_driver = {
>         .probe          = ps_probe,
>         .remove         = ps_remove,
>         .raw_event      = ps_raw_event,
> +       .driver = {
> +               .dev_groups = ps_device_groups,
> +       },
>  };
>
>  static int __init ps_init(void)
> --
> 2.37.1
>



[Index of Archives]     [Linux Media Devel]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Linux Wireless Networking]     [Linux Omap]

  Powered by Linux