forked from Minki/linux
ALSA: ctl: evaluate macro instead of numerical value
SNDRV_CTL_TLV_OP_XXX is defined but not used in core code. Instead, raw numerical value is evaluated. This commit replaces these values to these macros for better looking. Signed-off-by: Takashi Sakamoto <o-takashi@sakamocchi.jp> Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
parent
cfd3113e7c
commit
39d118677b
@ -1099,7 +1099,7 @@ static int snd_ctl_elem_user_tlv(struct snd_kcontrol *kcontrol,
|
||||
int change = 0;
|
||||
void *new_data;
|
||||
|
||||
if (op_flag > 0) {
|
||||
if (op_flag == SNDRV_CTL_TLV_OP_WRITE) {
|
||||
if (size > 1024 * 128) /* sane value */
|
||||
return -EINVAL;
|
||||
|
||||
@ -1381,9 +1381,12 @@ static int snd_ctl_tlv_ioctl(struct snd_ctl_file *file,
|
||||
goto __kctl_end;
|
||||
}
|
||||
vd = &kctl->vd[tlv.numid - kctl->id.numid];
|
||||
if ((op_flag == 0 && (vd->access & SNDRV_CTL_ELEM_ACCESS_TLV_READ) == 0) ||
|
||||
(op_flag > 0 && (vd->access & SNDRV_CTL_ELEM_ACCESS_TLV_WRITE) == 0) ||
|
||||
(op_flag < 0 && (vd->access & SNDRV_CTL_ELEM_ACCESS_TLV_COMMAND) == 0)) {
|
||||
if ((op_flag == SNDRV_CTL_TLV_OP_READ &&
|
||||
(vd->access & SNDRV_CTL_ELEM_ACCESS_TLV_READ) == 0) ||
|
||||
(op_flag == SNDRV_CTL_TLV_OP_WRITE &&
|
||||
(vd->access & SNDRV_CTL_ELEM_ACCESS_TLV_WRITE) == 0) ||
|
||||
(op_flag == SNDRV_CTL_TLV_OP_CMD &&
|
||||
(vd->access & SNDRV_CTL_ELEM_ACCESS_TLV_COMMAND) == 0)) {
|
||||
err = -ENXIO;
|
||||
goto __kctl_end;
|
||||
}
|
||||
@ -1400,7 +1403,7 @@ static int snd_ctl_tlv_ioctl(struct snd_ctl_file *file,
|
||||
return 0;
|
||||
}
|
||||
} else {
|
||||
if (op_flag) {
|
||||
if (op_flag != SNDRV_CTL_ELEM_ACCESS_TLV_READ) {
|
||||
err = -ENXIO;
|
||||
goto __kctl_end;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user