All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] ALSA: core: sysfs: show components string
@ 2020-03-23 19:36 Pierre-Louis Bossart
  2020-03-23 19:41 ` Mark Brown
  2020-03-24  1:53 ` Takashi Sakamoto
  0 siblings, 2 replies; 14+ messages in thread
From: Pierre-Louis Bossart @ 2020-03-23 19:36 UTC (permalink / raw)
  To: alsa-devel; +Cc: tiwai, broonie, Pierre-Louis Bossart

Add attribute and show the components string. This is useful to see
what is provided to userspace and e.g. used by UCM to understand the
card configuration:

root@plb:~# more /sys/class/sound/card0/components
HDA:8086280b,80860101,00100000 cfg-spk:2 hs:rt711 spk:rt1308 mic:rt715

Note that the style uses what's recommended by checkpatch.pl and is
slightly different from other sysfs attributes.

Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
---
 sound/core/init.c | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/sound/core/init.c b/sound/core/init.c
index b02a99766351..decaf944a8ad 100644
--- a/sound/core/init.c
+++ b/sound/core/init.c
@@ -695,9 +695,21 @@ card_number_show_attr(struct device *dev,
 
 static DEVICE_ATTR(number, 0444, card_number_show_attr, NULL);
 
+static ssize_t
+components_show(struct device *dev,
+		struct device_attribute *attr, char *buf)
+{
+	struct snd_card *card = container_of(dev, struct snd_card, card_dev);
+
+	return scnprintf(buf, PAGE_SIZE, "%s\n", card->components);
+}
+
+static DEVICE_ATTR_RO(components);
+
 static struct attribute *card_dev_attrs[] = {
 	&dev_attr_id.attr,
 	&dev_attr_number.attr,
+	&dev_attr_components.attr,
 	NULL
 };
 
-- 
2.20.1


^ permalink raw reply related	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2020-03-24 15:00 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-03-23 19:36 [PATCH] ALSA: core: sysfs: show components string Pierre-Louis Bossart
2020-03-23 19:41 ` Mark Brown
2020-03-23 20:21   ` Pierre-Louis Bossart
2020-03-23 20:23   ` Takashi Iwai
2020-03-24  1:53 ` Takashi Sakamoto
2020-03-24  3:34   ` Pierre-Louis Bossart
2020-03-24  4:33     ` Takashi Sakamoto
2020-03-24  5:12       ` Pierre-Louis Bossart
2020-03-24  9:01         ` Takashi Sakamoto
2020-03-24 13:15           ` Pierre-Louis Bossart
2020-03-24 13:45             ` Jaroslav Kysela
2020-03-24 14:56             ` Takashi Iwai
2020-03-24 14:59               ` Pierre-Louis Bossart
2020-03-24 11:54     ` Mark Brown

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.