From: Vinod Koul <vkoul@kernel.org>
To: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: Sanyog Kale <sanyog.r.kale@intel.com>,
alsa-devel@alsa-project.org,
Bard Liao <yung-chuan.liao@linux.intel.com>,
Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>,
linux-kernel@vger.kernel.org
Subject: Re: [PATCH 2/5] soundwire: sysfs: cleanup the logic for creating the dp0 sysfs attributes
Date: Wed, 3 Aug 2022 17:00:04 +0530 [thread overview]
Message-ID: <YupcPEbc0xD5pDtt@matsya> (raw)
In-Reply-To: <YuP2pjhyKTTfpXQq@kroah.com>
On 29-07-22, 17:03, Greg Kroah-Hartman wrote:
> On Fri, Jul 29, 2022 at 09:57:52AM -0500, Pierre-Louis Bossart wrote:
> >
> >
> > On 7/29/22 09:52, Greg Kroah-Hartman wrote:
> > > On Fri, Jul 29, 2022 at 09:46:26AM -0500, Pierre-Louis Bossart wrote:
> > >>
> > >>
> > >> On 7/29/22 08:50, Greg Kroah-Hartman wrote:
> > >>> There's no need to special-case the dp0 sysfs attributes, the
> > >>> is_visible() callback in the attribute group can handle that for us, so
> > >>> add that and add it to the attribute group list making the logic simpler
> > >>> overall.
> > >>>
> > >>> 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@kernel.org>
> > >>> Cc: Bard Liao <yung-chuan.liao@linux.intel.com>
> > >>> Cc: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
> > >>> Cc: Sanyog Kale <sanyog.r.kale@intel.com>
> > >>> Cc: alsa-devel@alsa-project.org
> > >>> Cc: linux-kernel@vger.kernel.org
> > >>> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
> > >>> ---
> > >>> drivers/soundwire/sysfs_slave.c | 18 ++++++++++++------
> > >>> 1 file changed, 12 insertions(+), 6 deletions(-)
> > >>>
> > >>> diff --git a/drivers/soundwire/sysfs_slave.c b/drivers/soundwire/sysfs_slave.c
> > >>> index 83e3f6cc3250..3723333a5c2b 100644
> > >>> --- a/drivers/soundwire/sysfs_slave.c
> > >>> +++ b/drivers/soundwire/sysfs_slave.c
> > >>> @@ -174,6 +174,16 @@ static ssize_t words_show(struct device *dev,
> > >>> }
> > >>> static DEVICE_ATTR_RO(words);
> > >>>
> > >>> +static umode_t dp0_is_visible(struct kobject *kobj, struct attribute *attr,
> > >>> + int n)
> > >>> +{
> > >>> + struct sdw_slave *slave = dev_to_sdw_dev(kobj_to_dev(kobj));
> > >>> +
> > >>> + if (slave->prop.dp0_prop)
> > >>> + return attr->mode;
> > >>> + return 0;
> > >>> +}
> > >>
> > >> This changes the results slightly by creating an empty 'dp0' directory
> > >> with no attributes inside.
> > >>
> > >> Before:
> > >>
> > >> [root@fedora ~]# cd /sys/bus/soundwire/devices/sdw:3:025d:0714:01
> > >> [root@fedora sdw:3:025d:0714:01]# ls dp0
> > >> ls: cannot access 'dp0': No such file or directory
> > >>
> > >> After:
> > >> [root@fedora sdw:3:025d:0714:01]# ls dp0
> > >
> > > That should be fine, tools should just be looking for the attributes,
> > > not the existance of a directory, right?
> >
> > The idea what that we would only expose ports that actually exist.
> > That's helpful information anyone with a basic knowledge of the
> > SoundWire specification would understand.
>
> Is "dp0" a port? If so, why isn't it a real device?
No they are not. It is a logical channel to send data to the device. The
device can have one or many data ports...
So the device logic or usb-endpoint style maynot look good here...
The change looks good though, dp0 maybe present and empty, we should
looks for attributes...
> > The attributes are really details that few people/applications would
> > understand, and unfortunately the information reported in DSDT is more
> > often than not complete garbage.
>
> I don't understand what DSDT is, or how it is relevant here :(
>
> thanks,
>
> greg k-h
--
~Vinod
WARNING: multiple messages have this Message-ID (diff)
From: Vinod Koul <vkoul@kernel.org>
To: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>,
alsa-devel@alsa-project.org, linux-kernel@vger.kernel.org,
Sanyog Kale <sanyog.r.kale@intel.com>,
Bard Liao <yung-chuan.liao@linux.intel.com>
Subject: Re: [PATCH 2/5] soundwire: sysfs: cleanup the logic for creating the dp0 sysfs attributes
Date: Wed, 3 Aug 2022 17:00:04 +0530 [thread overview]
Message-ID: <YupcPEbc0xD5pDtt@matsya> (raw)
In-Reply-To: <YuP2pjhyKTTfpXQq@kroah.com>
On 29-07-22, 17:03, Greg Kroah-Hartman wrote:
> On Fri, Jul 29, 2022 at 09:57:52AM -0500, Pierre-Louis Bossart wrote:
> >
> >
> > On 7/29/22 09:52, Greg Kroah-Hartman wrote:
> > > On Fri, Jul 29, 2022 at 09:46:26AM -0500, Pierre-Louis Bossart wrote:
> > >>
> > >>
> > >> On 7/29/22 08:50, Greg Kroah-Hartman wrote:
> > >>> There's no need to special-case the dp0 sysfs attributes, the
> > >>> is_visible() callback in the attribute group can handle that for us, so
> > >>> add that and add it to the attribute group list making the logic simpler
> > >>> overall.
> > >>>
> > >>> 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@kernel.org>
> > >>> Cc: Bard Liao <yung-chuan.liao@linux.intel.com>
> > >>> Cc: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
> > >>> Cc: Sanyog Kale <sanyog.r.kale@intel.com>
> > >>> Cc: alsa-devel@alsa-project.org
> > >>> Cc: linux-kernel@vger.kernel.org
> > >>> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
> > >>> ---
> > >>> drivers/soundwire/sysfs_slave.c | 18 ++++++++++++------
> > >>> 1 file changed, 12 insertions(+), 6 deletions(-)
> > >>>
> > >>> diff --git a/drivers/soundwire/sysfs_slave.c b/drivers/soundwire/sysfs_slave.c
> > >>> index 83e3f6cc3250..3723333a5c2b 100644
> > >>> --- a/drivers/soundwire/sysfs_slave.c
> > >>> +++ b/drivers/soundwire/sysfs_slave.c
> > >>> @@ -174,6 +174,16 @@ static ssize_t words_show(struct device *dev,
> > >>> }
> > >>> static DEVICE_ATTR_RO(words);
> > >>>
> > >>> +static umode_t dp0_is_visible(struct kobject *kobj, struct attribute *attr,
> > >>> + int n)
> > >>> +{
> > >>> + struct sdw_slave *slave = dev_to_sdw_dev(kobj_to_dev(kobj));
> > >>> +
> > >>> + if (slave->prop.dp0_prop)
> > >>> + return attr->mode;
> > >>> + return 0;
> > >>> +}
> > >>
> > >> This changes the results slightly by creating an empty 'dp0' directory
> > >> with no attributes inside.
> > >>
> > >> Before:
> > >>
> > >> [root@fedora ~]# cd /sys/bus/soundwire/devices/sdw:3:025d:0714:01
> > >> [root@fedora sdw:3:025d:0714:01]# ls dp0
> > >> ls: cannot access 'dp0': No such file or directory
> > >>
> > >> After:
> > >> [root@fedora sdw:3:025d:0714:01]# ls dp0
> > >
> > > That should be fine, tools should just be looking for the attributes,
> > > not the existance of a directory, right?
> >
> > The idea what that we would only expose ports that actually exist.
> > That's helpful information anyone with a basic knowledge of the
> > SoundWire specification would understand.
>
> Is "dp0" a port? If so, why isn't it a real device?
No they are not. It is a logical channel to send data to the device. The
device can have one or many data ports...
So the device logic or usb-endpoint style maynot look good here...
The change looks good though, dp0 maybe present and empty, we should
looks for attributes...
> > The attributes are really details that few people/applications would
> > understand, and unfortunately the information reported in DSDT is more
> > often than not complete garbage.
>
> I don't understand what DSDT is, or how it is relevant here :(
>
> thanks,
>
> greg k-h
--
~Vinod
next prev parent reply other threads:[~2022-08-03 11:31 UTC|newest]
Thread overview: 47+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-07-29 13:50 [PATCH 1/5] soundwire: sysfs: move sdw_slave_dev_attr_group into the existing list of groups Greg Kroah-Hartman
2022-07-29 13:50 ` Greg Kroah-Hartman
2022-07-29 13:50 ` [PATCH 2/5] soundwire: sysfs: cleanup the logic for creating the dp0 sysfs attributes Greg Kroah-Hartman
2022-07-29 13:50 ` Greg Kroah-Hartman
2022-07-29 14:46 ` Pierre-Louis Bossart
2022-07-29 14:46 ` Pierre-Louis Bossart
2022-07-29 14:52 ` Greg Kroah-Hartman
2022-07-29 14:52 ` Greg Kroah-Hartman
2022-07-29 14:57 ` Pierre-Louis Bossart
2022-07-29 14:57 ` Pierre-Louis Bossart
2022-07-29 15:03 ` Greg Kroah-Hartman
2022-07-29 15:03 ` Greg Kroah-Hartman
2022-07-29 15:52 ` Pierre-Louis Bossart
2022-07-29 15:52 ` Pierre-Louis Bossart
2022-07-29 16:35 ` Greg Kroah-Hartman
2022-07-29 16:35 ` Greg Kroah-Hartman
2022-07-29 16:46 ` Pierre-Louis Bossart
2022-07-29 16:46 ` Pierre-Louis Bossart
2022-07-29 17:15 ` Greg Kroah-Hartman
2022-07-29 17:15 ` Greg Kroah-Hartman
2022-07-29 17:25 ` Pierre-Louis Bossart
2022-07-29 17:25 ` Pierre-Louis Bossart
2022-08-24 13:55 ` Greg Kroah-Hartman
2022-08-24 13:55 ` Greg Kroah-Hartman
2022-08-03 11:30 ` Vinod Koul [this message]
2022-08-03 11:30 ` Vinod Koul
2022-07-29 13:50 ` [PATCH 3/5] soundwire: sysfs: have the driver core handle the creation of the device groups Greg Kroah-Hartman
2022-07-29 13:50 ` Greg Kroah-Hartman
2022-07-29 14:12 ` Pierre-Louis Bossart
2022-07-29 14:12 ` Pierre-Louis Bossart
2022-07-29 14:19 ` Greg Kroah-Hartman
2022-07-29 14:19 ` Greg Kroah-Hartman
2022-07-29 13:50 ` [PATCH 4/5] soundwire: sysfs: remove sdw_slave_sysfs_init() Greg Kroah-Hartman
2022-07-29 13:50 ` Greg Kroah-Hartman
2022-07-29 15:00 ` Pierre-Louis Bossart
2022-07-29 15:13 ` Greg Kroah-Hartman
2022-07-29 15:13 ` Greg Kroah-Hartman
2022-08-03 11:33 ` Vinod Koul
2022-08-03 11:33 ` Vinod Koul
2022-07-29 13:50 ` [PATCH 5/5] soundwire: sysfs: remove unneeded ATTRIBUTE_GROUPS() comments Greg Kroah-Hartman
2022-07-29 13:50 ` Greg Kroah-Hartman
2022-08-23 16:00 ` [PATCH 1/5] soundwire: sysfs: move sdw_slave_dev_attr_group into the existing list of groups Vinod Koul
2022-08-23 16:00 ` Vinod Koul
2022-08-24 6:18 ` Greg Kroah-Hartman
2022-08-24 6:18 ` Greg Kroah-Hartman
2022-08-24 14:04 ` Greg Kroah-Hartman
2022-08-24 14:04 ` Greg Kroah-Hartman
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=YupcPEbc0xD5pDtt@matsya \
--to=vkoul@kernel.org \
--cc=alsa-devel@alsa-project.org \
--cc=gregkh@linuxfoundation.org \
--cc=linux-kernel@vger.kernel.org \
--cc=pierre-louis.bossart@linux.intel.com \
--cc=sanyog.r.kale@intel.com \
--cc=yung-chuan.liao@linux.intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.