[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <65b9d883538fa_5a9dd2946a@dwillia2-mobl3.amr.corp.intel.com.notmuch>
Date: Tue, 30 Jan 2024 21:20:03 -0800
From: Dan Williams <dan.j.williams@...el.com>
To: Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
<alsa-devel@...a-project.org>
CC: <linux-kernel@...r.kernel.org>, Greg Kroah-Hartman
<gregkh@...uxfoundation.org>, Dan Williams <dan.j.williams@...el.com>, "Vinod
Koul" <vkoul@...nel.org>, Bard Liao <yung-chuan.liao@...ux.intel.com>,
Pierre-Louis Bossart <pierre-louis.bossart@...ux.intel.com>, Sanyog Kale
<sanyog.r.kale@...el.com>
Subject: Re: [PATCH 2/6] soundwire: sysfs: move sdw_slave_dev_attr_group into
the existing list of groups
Greg Kroah-Hartman wrote:
> The sysfs logic already creates a list of groups for the device, so add
> the sdw_slave_dev_attr_group group to that list instead of having to do
> a two-step process of adding a group list and then an individual group.
>
> This is a step on the way to moving all of the sysfs attribute handling
> into the default driver core attribute group logic so that the soundwire
> core does not have to do any of it manually.
>
> Cc: Vinod Koul <vkoul@...nel.org>
> Cc: Bard Liao <yung-chuan.liao@...ux.intel.com>
> Cc: Pierre-Louis Bossart <pierre-louis.bossart@...ux.intel.com>
> Cc: Sanyog Kale <sanyog.r.kale@...el.com>
> Cc: alsa-devel@...a-project.org
> Cc: linux-kernel@...r.kernel.org
> Signed-off-by: Greg Kroah-Hartman <gregkh@...uxfoundation.org>
> ---
> drivers/soundwire/sysfs_slave.c | 15 ++++++++++-----
> 1 file changed, 10 insertions(+), 5 deletions(-)
>
> diff --git a/drivers/soundwire/sysfs_slave.c b/drivers/soundwire/sysfs_slave.c
> index 3210359cd944..83e3f6cc3250 100644
> --- a/drivers/soundwire/sysfs_slave.c
> +++ b/drivers/soundwire/sysfs_slave.c
> @@ -105,7 +105,10 @@ static struct attribute *slave_attrs[] = {
> &dev_attr_modalias.attr,
> NULL,
> };
> -ATTRIBUTE_GROUPS(slave);
> +
> +static const struct attribute_group slave_attr_group = {
> + .attrs = slave_attrs,
> +};
>
> static struct attribute *slave_dev_attrs[] = {
> &dev_attr_mipi_revision.attr,
> @@ -190,6 +193,12 @@ static const struct attribute_group dp0_group = {
> .name = "dp0",
> };
>
> +static const struct attribute_group *slave_groups[] = {
> + &slave_attr_group,
> + &sdw_slave_dev_attr_group,
> + NULL,
> +};
> +
> int sdw_slave_sysfs_init(struct sdw_slave *slave)
> {
> int ret;
> @@ -198,10 +207,6 @@ int sdw_slave_sysfs_init(struct sdw_slave *slave)
> if (ret < 0)
> return ret;
>
> - ret = devm_device_add_group(&slave->dev, &sdw_slave_dev_attr_group);
> - if (ret < 0)
> - return ret;
> -
Yeah, open-coding the groups, much better than dynamically adding one.
> if (slave->prop.dp0_prop) {
> ret = devm_device_add_group(&slave->dev, &dp0_group);
> if (ret < 0)
Makes sense. I won't say "looks good" as this file has "slave" all over
the place, but I checked and it entered the kernel just before the
CodingStyle changed.
Reviewed-by: Dan Williams <dan.j.williams@...el.com>
Powered by blists - more mailing lists