? test/oldapi Index: include/control.h =================================================================== RCS file: /cvsroot/alsa/alsa-lib/include/control.h,v retrieving revision 1.101 diff -u -r1.101 control.h --- include/control.h 9 Jun 2005 17:12:08 -0000 1.101 +++ include/control.h 4 Jan 2006 16:32:59 -0000 @@ -290,6 +290,7 @@ const char *snd_ctl_card_info_get_longname(const snd_ctl_card_info_t *obj); const char *snd_ctl_card_info_get_mixername(const snd_ctl_card_info_t *obj); const char *snd_ctl_card_info_get_components(const snd_ctl_card_info_t *obj); +const char *snd_ctl_card_info_get_busid(const snd_ctl_card_info_t *obj); size_t snd_ctl_event_sizeof(void); /** \hideinitializer Index: include/sound/asound.h =================================================================== RCS file: /cvsroot/alsa/alsa-lib/include/sound/asound.h,v retrieving revision 1.22 diff -u -r1.22 asound.h --- include/sound/asound.h 16 Aug 2005 12:19:15 -0000 1.22 +++ include/sound/asound.h 4 Jan 2006 16:33:02 -0000 @@ -727,7 +727,8 @@ unsigned char reserved_[16]; /* reserved for future (was ID of mixer) */ unsigned char mixername[80]; /* visual mixer identification */ unsigned char components[80]; /* card components / fine identification, delimited with one space (AC97 etc..) */ - unsigned char reserved[48]; /* reserved for future */ + unsigned char busid[20]; /* physical bus id of soundcard */ + unsigned char reserved[28]; /* reserved for future */ }; enum sndrv_ctl_elem_type { Index: src/control/control.c =================================================================== RCS file: /cvsroot/alsa/alsa-lib/src/control/control.c,v retrieving revision 1.108 diff -u -r1.108 control.c --- src/control/control.c 14 Nov 2005 10:18:22 -0000 1.108 +++ src/control/control.c 4 Jan 2006 16:33:06 -0000 @@ -1365,6 +1365,17 @@ } /** + * \brief Get card bus id from a CTL card info + * \param obj CTL card info + * \return physical card bus id + */ +const char *snd_ctl_card_info_get_busid(const snd_ctl_card_info_t *obj) +{ + assert(obj); + return (const char *)obj->busid; +} + +/** * \brief get size of #snd_ctl_event_t * \return size in bytes */ Index: test/control.c =================================================================== RCS file: /cvsroot/alsa/alsa-lib/test/control.c,v retrieving revision 1.12 diff -u -r1.12 control.c --- test/control.c 3 Sep 2003 19:25:09 -0000 1.12 +++ test/control.c 4 Jan 2006 16:33:06 -0000 @@ -40,6 +40,7 @@ printf(" longname - '%s'\n", snd_ctl_card_info_get_longname(info)); printf(" mixername - '%s'\n", snd_ctl_card_info_get_mixername(info)); printf(" components - '%s'\n", snd_ctl_card_info_get_components(info)); + printf(" busid - '%s'\n", snd_ctl_card_info_get_busid(info)); dev = -1; while (1) { snd_pcm_sync_id_t sync;