Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ca2df45a authored by Krzysztof Helt's avatar Krzysztof Helt Committed by Jaroslav Kysela
Browse files

[ALSA] This patch removes open_mutex from the ad1848-lib as



open and close operations are called only from pcm layer
and mutexed there with pcm->open_mutex.

Signed-off-by: default avatarKrzysztof Helt <krzysztof.h1@wp.pl>
Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
Signed-off-by: default avatarJaroslav Kysela <perex@perex.cz>
parent c2cbdbb1
Loading
Loading
Loading
Loading
+0 −1
Original line number Diff line number Diff line
@@ -154,7 +154,6 @@ struct snd_ad1848 {
#endif

	spinlock_t reg_lock;
	struct mutex open_mutex;
};

/* exported functions */
+3 −11
Original line number Diff line number Diff line
@@ -378,11 +378,9 @@ static int snd_ad1848_open(struct snd_ad1848 *chip, unsigned int mode)
{
	unsigned long flags;

	mutex_lock(&chip->open_mutex);
	if (chip->mode & AD1848_MODE_OPEN) {
		mutex_unlock(&chip->open_mutex);
	if (chip->mode & AD1848_MODE_OPEN)
		return -EAGAIN;
	}

	snd_ad1848_mce_down(chip);

#ifdef SNDRV_DEBUG_MCE
@@ -423,7 +421,6 @@ static int snd_ad1848_open(struct snd_ad1848 *chip, unsigned int mode)
	spin_unlock_irqrestore(&chip->reg_lock, flags);

	chip->mode = mode;
	mutex_unlock(&chip->open_mutex);

	return 0;
}
@@ -432,11 +429,8 @@ static void snd_ad1848_close(struct snd_ad1848 *chip)
{
	unsigned long flags;

	mutex_lock(&chip->open_mutex);
	if (!chip->mode) {
		mutex_unlock(&chip->open_mutex);
	if (!chip->mode)
		return;
	}
	/* disable IRQ */
	spin_lock_irqsave(&chip->reg_lock, flags);
	outb(0, AD1848P(chip, STATUS));	/* clear IRQ */
@@ -462,7 +456,6 @@ static void snd_ad1848_close(struct snd_ad1848 *chip)
	spin_unlock_irqrestore(&chip->reg_lock, flags);

	chip->mode = 0;
	mutex_unlock(&chip->open_mutex);
}

/*
@@ -880,7 +873,6 @@ int snd_ad1848_create(struct snd_card *card,
	if (chip == NULL)
		return -ENOMEM;
	spin_lock_init(&chip->reg_lock);
	mutex_init(&chip->open_mutex);
	chip->card = card;
	chip->port = port;
	chip->irq = -1;