Commit 1f3fff7b authored by Kay Sievers's avatar Kay Sievers Committed by Takashi Iwai

ALSA: use card device as parent for jack input-devices

This moves the jack devices from the PCI device into the ALSA card device, which
makes it easier for userspace to find all devices belonging to a specific card
while granting access to logged-in users.

Jack input devices from sound cards can now simply be matched with udev by doing:
  SUBSYSTEM="input", SUBSYSTEMS="sound", ...

 ls -l /sys/devices/pci0000:00/0000:00:1b.0/sound/card0
 controlC0
 device -> ../../../0000:00:1b.0
 id
 input10
 input11
 input8
 input9
 number
 pcmC0D0c
 pcmC0D0p
 pcmC0D1p
 power
 subsystem -> ../../../../../class/sound
 uevent

Cc: Lennart Poettering <lennart@0pointer.de>
Signed-off-by: default avatarKay Sievers <kay.sievers@vrfy.org>
Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
parent ad0b0822
...@@ -63,7 +63,7 @@ static int snd_jack_dev_register(struct snd_device *device) ...@@ -63,7 +63,7 @@ static int snd_jack_dev_register(struct snd_device *device)
/* Default to the sound card device. */ /* Default to the sound card device. */
if (!jack->input_dev->dev.parent) if (!jack->input_dev->dev.parent)
jack->input_dev->dev.parent = card->dev; jack->input_dev->dev.parent = snd_card_get_device_link(card);
err = input_register_device(jack->input_dev); err = input_register_device(jack->input_dev);
if (err == 0) if (err == 0)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment