soundwire: sysfs: add slave status and device number before probe
authorPierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Thu, 24 Sep 2020 19:44:30 +0000 (14:44 -0500)
committerVinod Koul <vkoul@kernel.org>
Mon, 28 Sep 2020 05:47:43 +0000 (11:17 +0530)
commit0173f525b2c1b02a51784e2119d434593235aed1
treebe7fd015e55158bb0ce939863460626788948415
parentfcb9d730be1d3010e0c8fdc5aaff62836d7a942c
soundwire: sysfs: add slave status and device number before probe

The MIPI DisCo device properties that are read by the driver from
platform firmware, or hard-coded in the driver, should only be
provided as sysfs entries when a driver probes successfully.

However the device status and device number is updated even when there
is no driver present, and hence can be updated when a Slave device is
detected on the bus without being described in platform firmware and
without any driver registered/probed.

As suggested by GregKH, the attribute group for Slave status and
device number is is added by default upon device registration.

Credits to Vinod Koul for the status_show() function, shared in a
separate patch and used as is here. The status table was modified to
remove an unnecessary enum and status_show() is handled in a different
group attribute than what was suggested by Vinod.

Tested-by: Srinivas Kandgatla <srinivas.kandagatla@linaro.org>
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Co-developed-by: Vinod Koul <vkoul@kernel.org>
Reviewed-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Link: https://lore.kernel.org/r/20200924194430.121058-3-pierre-louis.bossart@linux.intel.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
Documentation/ABI/testing/sysfs-bus-soundwire-slave
drivers/soundwire/slave.c
drivers/soundwire/sysfs_local.h
drivers/soundwire/sysfs_slave.c