summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2008-10-07 11:38:09 +0200
committerJaroslav Kysela <perex@perex.cz>2008-10-10 13:41:53 +0200
commitff33f2303b0ea8e5ac15af91de8d8538a5d58db1 (patch)
tree4160cbce65339c8baabca0aefbf5ba79de99188c
parent8ae23ec3ab305b58140462234bddf2257af57bae (diff)
downloadop-kernel-dev-ff33f2303b0ea8e5ac15af91de8d8538a5d58db1.zip
op-kernel-dev-ff33f2303b0ea8e5ac15af91de8d8538a5d58db1.tar.gz
ALSA: Increase components array size
Increase the card components[] (and thus snd_card_info.components[], too) array size from 80 to 128 chars so that more strings can be stored. The 80 chars aren't enough for more than 2 HD-audio codecs, and this hits an ugly snd_BUG() as reported by Wu Fegguang for HP 2230s. The control protocol number is increased to 2.0.6 as well, in case it matters. Reported-by: Wu Fengguang <wfg@linux.intel.com> Acked-by: Jaroslav Kysela <perex@perex.cz> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
-rw-r--r--include/sound/asound.h5
-rw-r--r--include/sound/core.h2
2 files changed, 3 insertions, 4 deletions
diff --git a/include/sound/asound.h b/include/sound/asound.h
index 1196e3d..2c4dc90 100644
--- a/include/sound/asound.h
+++ b/include/sound/asound.h
@@ -707,7 +707,7 @@ struct snd_timer_tread {
* *
****************************************************************************/
-#define SNDRV_CTL_VERSION SNDRV_PROTOCOL_VERSION(2, 0, 5)
+#define SNDRV_CTL_VERSION SNDRV_PROTOCOL_VERSION(2, 0, 6)
struct snd_ctl_card_info {
int card; /* card number */
@@ -718,8 +718,7 @@ struct snd_ctl_card_info {
unsigned char longname[80]; /* name + info text about soundcard */
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 components[128]; /* card components / fine identification, delimited with one space (AC97 etc..) */
};
typedef int __bitwise snd_ctl_elem_type_t;
diff --git a/include/sound/core.h b/include/sound/core.h
index f52ab6f..e5eec5f 100644
--- a/include/sound/core.h
+++ b/include/sound/core.h
@@ -116,7 +116,7 @@ struct snd_card {
char shortname[32]; /* short name of this soundcard */
char longname[80]; /* name of this soundcard */
char mixername[80]; /* mixer name */
- char components[80]; /* card components delimited with
+ char components[128]; /* card components delimited with
space */
struct module *module; /* top-level module */
OpenPOWER on IntegriCloud