|
@@ -36,6 +36,7 @@
|
|
|
int snd_soc_jack_new(struct snd_soc_codec *codec, const char *id, int type,
|
|
|
struct snd_soc_jack *jack)
|
|
|
{
|
|
|
+ mutex_init(&jack->mutex);
|
|
|
jack->codec = codec;
|
|
|
INIT_LIST_HEAD(&jack->pins);
|
|
|
INIT_LIST_HEAD(&jack->jack_zones);
|
|
@@ -75,7 +76,7 @@ void snd_soc_jack_report(struct snd_soc_jack *jack, int status, int mask)
|
|
|
codec = jack->codec;
|
|
|
dapm = &codec->dapm;
|
|
|
|
|
|
- mutex_lock(&codec->mutex);
|
|
|
+ mutex_lock(&jack->mutex);
|
|
|
|
|
|
oldstatus = jack->status;
|
|
|
|
|
@@ -109,7 +110,7 @@ void snd_soc_jack_report(struct snd_soc_jack *jack, int status, int mask)
|
|
|
snd_jack_report(jack->jack, jack->status);
|
|
|
|
|
|
out:
|
|
|
- mutex_unlock(&codec->mutex);
|
|
|
+ mutex_unlock(&jack->mutex);
|
|
|
}
|
|
|
EXPORT_SYMBOL_GPL(snd_soc_jack_report);
|
|
|
|