diff options
author | Jeff Garzik <jeff@garzik.org> | 2006-09-24 01:52:47 -0400 |
---|---|---|
committer | Jeff Garzik <jeff@garzik.org> | 2006-09-24 01:52:47 -0400 |
commit | 23930fa1cebfea6f79881c588ccd1b0781e49e3f (patch) | |
tree | 36d29e3f83661c4f5f45b6f74ac0d5f9886867a8 /include/sound/control.h | |
parent | 36b35a5be0e4b406acd816e2122d153e875105be (diff) | |
parent | 4f5537de7c1531398e84e18a24f667e49cc94208 (diff) |
Merge branch 'master' into upstream
Diffstat (limited to 'include/sound/control.h')
-rw-r--r-- | include/sound/control.h | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/include/sound/control.h b/include/sound/control.h index 2489b1eb0110..1de148b0fd94 100644 --- a/include/sound/control.h +++ b/include/sound/control.h | |||
@@ -30,6 +30,11 @@ struct snd_kcontrol; | |||
30 | typedef int (snd_kcontrol_info_t) (struct snd_kcontrol * kcontrol, struct snd_ctl_elem_info * uinfo); | 30 | typedef int (snd_kcontrol_info_t) (struct snd_kcontrol * kcontrol, struct snd_ctl_elem_info * uinfo); |
31 | typedef int (snd_kcontrol_get_t) (struct snd_kcontrol * kcontrol, struct snd_ctl_elem_value * ucontrol); | 31 | typedef int (snd_kcontrol_get_t) (struct snd_kcontrol * kcontrol, struct snd_ctl_elem_value * ucontrol); |
32 | typedef int (snd_kcontrol_put_t) (struct snd_kcontrol * kcontrol, struct snd_ctl_elem_value * ucontrol); | 32 | typedef int (snd_kcontrol_put_t) (struct snd_kcontrol * kcontrol, struct snd_ctl_elem_value * ucontrol); |
33 | typedef int (snd_kcontrol_tlv_rw_t)(struct snd_kcontrol *kcontrol, | ||
34 | int op_flag, /* 0=read,1=write,-1=command */ | ||
35 | unsigned int size, | ||
36 | unsigned int __user *tlv); | ||
37 | |||
33 | 38 | ||
34 | struct snd_kcontrol_new { | 39 | struct snd_kcontrol_new { |
35 | snd_ctl_elem_iface_t iface; /* interface identifier */ | 40 | snd_ctl_elem_iface_t iface; /* interface identifier */ |
@@ -42,6 +47,10 @@ struct snd_kcontrol_new { | |||
42 | snd_kcontrol_info_t *info; | 47 | snd_kcontrol_info_t *info; |
43 | snd_kcontrol_get_t *get; | 48 | snd_kcontrol_get_t *get; |
44 | snd_kcontrol_put_t *put; | 49 | snd_kcontrol_put_t *put; |
50 | union { | ||
51 | snd_kcontrol_tlv_rw_t *c; | ||
52 | unsigned int *p; | ||
53 | } tlv; | ||
45 | unsigned long private_value; | 54 | unsigned long private_value; |
46 | }; | 55 | }; |
47 | 56 | ||
@@ -58,6 +67,10 @@ struct snd_kcontrol { | |||
58 | snd_kcontrol_info_t *info; | 67 | snd_kcontrol_info_t *info; |
59 | snd_kcontrol_get_t *get; | 68 | snd_kcontrol_get_t *get; |
60 | snd_kcontrol_put_t *put; | 69 | snd_kcontrol_put_t *put; |
70 | union { | ||
71 | snd_kcontrol_tlv_rw_t *c; | ||
72 | unsigned int *p; | ||
73 | } tlv; | ||
61 | unsigned long private_value; | 74 | unsigned long private_value; |
62 | void *private_data; | 75 | void *private_data; |
63 | void (*private_free)(struct snd_kcontrol *kcontrol); | 76 | void (*private_free)(struct snd_kcontrol *kcontrol); |