2
0
mirror of https://github.com/edk2-porting/linux-next.git synced 2024-12-23 20:53:53 +08:00

V4L/DVB: cx18: Rename snd_cx18_mixer_lock to snd_cx18_lock and increase visibility

Rename snd_cx18_mixer_lock() to snd_cx18_lock() in anticpation of using it
in the cx18-alsa-pcm.c file routines.

Signed-off-by: Andy Walls <awalls@radix.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
This commit is contained in:
Andy Walls 2010-01-30 14:27:29 -03:00 committed by Mauro Carvalho Chehab
parent 10e43d90da
commit 83695009a4
2 changed files with 20 additions and 20 deletions

View File

@ -35,22 +35,6 @@
#include "cx18-alsa.h" #include "cx18-alsa.h"
#include "cx18-driver.h" #include "cx18-driver.h"
/*
* Mixer manipulations are like v4l2 ioctl() calls to manipulate controls,
* just use the same lock we use for ioctl()s for now
*/
static inline void snd_cx18_mixer_lock(struct snd_cx18_card *cxsc)
{
struct cx18 *cx = to_cx18(cxsc->v4l2_dev);
mutex_lock(&cx->serialize_lock);
}
static inline void snd_cx18_mixer_unlock(struct snd_cx18_card *cxsc)
{
struct cx18 *cx = to_cx18(cxsc->v4l2_dev);
mutex_unlock(&cx->serialize_lock);
}
/* /*
* Note the cx18-av-core volume scale is funny, due to the alignment of the * Note the cx18-av-core volume scale is funny, due to the alignment of the
* scale with another chip's range: * scale with another chip's range:
@ -108,9 +92,9 @@ static int snd_cx18_mixer_tv_vol_get(struct snd_kcontrol *kctl,
vctrl.id = V4L2_CID_AUDIO_VOLUME; vctrl.id = V4L2_CID_AUDIO_VOLUME;
vctrl.value = dB_to_cx18_av_vol(uctl->value.integer.value[0]); vctrl.value = dB_to_cx18_av_vol(uctl->value.integer.value[0]);
snd_cx18_mixer_lock(cxsc); snd_cx18_lock(cxsc);
ret = v4l2_subdev_call(cx->sd_av, core, g_ctrl, &vctrl); ret = v4l2_subdev_call(cx->sd_av, core, g_ctrl, &vctrl);
snd_cx18_mixer_unlock(cxsc); snd_cx18_unlock(cxsc);
if (!ret) if (!ret)
uctl->value.integer.value[0] = cx18_av_vol_to_dB(vctrl.value); uctl->value.integer.value[0] = cx18_av_vol_to_dB(vctrl.value);
@ -128,7 +112,7 @@ static int snd_cx18_mixer_tv_vol_put(struct snd_kcontrol *kctl,
vctrl.id = V4L2_CID_AUDIO_VOLUME; vctrl.id = V4L2_CID_AUDIO_VOLUME;
vctrl.value = dB_to_cx18_av_vol(uctl->value.integer.value[0]); vctrl.value = dB_to_cx18_av_vol(uctl->value.integer.value[0]);
snd_cx18_mixer_lock(cxsc); snd_cx18_lock(cxsc);
/* Fetch current state */ /* Fetch current state */
ret = v4l2_subdev_call(cx->sd_av, core, g_ctrl, &vctrl); ret = v4l2_subdev_call(cx->sd_av, core, g_ctrl, &vctrl);
@ -142,7 +126,7 @@ static int snd_cx18_mixer_tv_vol_put(struct snd_kcontrol *kctl,
if (!ret) if (!ret)
ret = 1; /* Indicate control was changed w/o error */ ret = 1; /* Indicate control was changed w/o error */
} }
snd_cx18_mixer_unlock(cxsc); snd_cx18_unlock(cxsc);
return ret; return ret;
} }

View File

@ -32,6 +32,22 @@ struct snd_cx18_card {
extern int cx18_alsa_debug; extern int cx18_alsa_debug;
/*
* File operations that manipulate the encoder or video or audio subdevices
* need to be serialized. Use the same lock we use for v4l2 file ops.
*/
static inline void snd_cx18_lock(struct snd_cx18_card *cxsc)
{
struct cx18 *cx = to_cx18(cxsc->v4l2_dev);
mutex_lock(&cx->serialize_lock);
}
static inline void snd_cx18_unlock(struct snd_cx18_card *cxsc)
{
struct cx18 *cx = to_cx18(cxsc->v4l2_dev);
mutex_unlock(&cx->serialize_lock);
}
#define CX18_ALSA_DBGFLG_WARN (1 << 0) #define CX18_ALSA_DBGFLG_WARN (1 << 0)
#define CX18_ALSA_DBGFLG_WARN (1 << 0) #define CX18_ALSA_DBGFLG_WARN (1 << 0)
#define CX18_ALSA_DBGFLG_INFO (1 << 1) #define CX18_ALSA_DBGFLG_INFO (1 << 1)