Re: [alsa-devel] [RFC PATCH 2/7] soundwire: add Slave sysfs support

From: Greg KH
Date: Mon May 06 2019 - 11:20:39 EST


On Mon, May 06, 2019 at 09:42:35AM -0500, Pierre-Louis Bossart wrote:
> > > +
> > > +int sdw_sysfs_slave_init(struct sdw_slave *slave)
> > > +{
> > > + struct sdw_slave_sysfs *sysfs;
> > > + unsigned int src_dpns, sink_dpns, i, j;
> > > + int err;
> > > +
> > > + if (slave->sysfs) {
> > > + dev_err(&slave->dev, "SDW Slave sysfs is already initialized\n");
> > > + err = -EIO;
> > > + goto err_ret;
> > > + }
> > > +
> > > + sysfs = kzalloc(sizeof(*sysfs), GFP_KERNEL);
> >
> > Same question as patch 1, why a new device?
>
> yes it's the same open. In this case, the slave devices are defined at a
> different level so it's also confusing to create a device to represent the
> slave properties. The code works but I am not sure the initial directions
> are correct.

You can just make a subdir for your attributes by using the attribute
group name, if a subdirectory is needed just to keep things a bit more
organized.

Otherwise, you need to mess with having multiple "types" of struct
device all associated with the same bus. It is possible, and not that
hard, but I don't think you are doing that here.

thnaks,

greg k-h