aboutsummaryrefslogtreecommitdiffstats
path: root/include/sound/seq_device.h
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2015-02-12 10:51:59 +0100
committerTakashi Iwai <tiwai@suse.de>2015-02-12 11:35:11 +0100
commit7c37ae5c625aaa4836466cfaea829a3199dfc571 (patch)
tree14ea2a629eeb1b09154b41bf22617bf9d7f7fcd2 /include/sound/seq_device.h
parentALSA: seq: Don't compile snd_seq_device_load_drivers() for built-in (diff)
downloadlinux-dev-7c37ae5c625aaa4836466cfaea829a3199dfc571.tar.xz
linux-dev-7c37ae5c625aaa4836466cfaea829a3199dfc571.zip
ALSA: seq: Rewrite sequencer device binding with standard bus
We've used the old house-made code for binding the sequencer device and driver. This can be far better implemented with the standard bus nowadays. This patch refactors the whole sequencer binding code with the bus /sys/bus/snd_seq. The devices appear as id-card-device on this bus and are bound with the drivers corresponding to the given id like the former implementation. The module autoload is also kept like before. There is no change in API functions by this patch, and almost all transitions are kept inside seq_device.c. The proc file output will change slightly but kept compatible as much as possible. Further integration works will follow in later patches. Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'include/sound/seq_device.h')
-rw-r--r--include/sound/seq_device.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/include/sound/seq_device.h b/include/sound/seq_device.h
index d52433563da2..ea256b825146 100644
--- a/include/sound/seq_device.h
+++ b/include/sound/seq_device.h
@@ -43,8 +43,11 @@ struct snd_seq_device {
void *private_data; /* private data for the caller */
void (*private_free)(struct snd_seq_device *device);
struct list_head list; /* link to next device */
+ struct device dev;
};
+#define to_seq_dev(_dev) \
+ container_of(_dev, struct snd_seq_device, dev)
/* driver operators
* init_device: