diff options
author | Álvaro Fernández Rojas <noltari@gmail.com> | 2019-07-09 20:32:28 +0200 |
---|---|---|
committer | Álvaro Fernández Rojas <noltari@gmail.com> | 2019-07-14 12:44:14 +0200 |
commit | 42954857190b9df16d9d873ecc7f6cc38e013e44 (patch) | |
tree | 98c588f629ff534d458eb0884782ea99672d7634 /target/linux/brcm2708/patches-4.19/950-0446-staging-bcm2835-audio-Remove-superfluous-open-flag.patch | |
parent | f1875e902d0afb7d9b9e5285b4fd8da7f6c5e30a (diff) | |
download | upstream-42954857190b9df16d9d873ecc7f6cc38e013e44.tar.gz upstream-42954857190b9df16d9d873ecc7f6cc38e013e44.tar.bz2 upstream-42954857190b9df16d9d873ecc7f6cc38e013e44.zip |
brcm2708: add linux 4.19 support
Boot tested on Raspberry Pi B+ (BCM2708) and Raspberry Pi 2 (BCM2709)
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
Diffstat (limited to 'target/linux/brcm2708/patches-4.19/950-0446-staging-bcm2835-audio-Remove-superfluous-open-flag.patch')
-rw-r--r-- | target/linux/brcm2708/patches-4.19/950-0446-staging-bcm2835-audio-Remove-superfluous-open-flag.patch | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/target/linux/brcm2708/patches-4.19/950-0446-staging-bcm2835-audio-Remove-superfluous-open-flag.patch b/target/linux/brcm2708/patches-4.19/950-0446-staging-bcm2835-audio-Remove-superfluous-open-flag.patch new file mode 100644 index 0000000000..26a3ddf36a --- /dev/null +++ b/target/linux/brcm2708/patches-4.19/950-0446-staging-bcm2835-audio-Remove-superfluous-open-flag.patch @@ -0,0 +1,61 @@ +From 5894f3d0de921dd5134004906643a1d1219b13cf Mon Sep 17 00:00:00 2001 +From: Takashi Iwai <tiwai@suse.de> +Date: Tue, 4 Sep 2018 17:58:36 +0200 +Subject: [PATCH 446/703] staging: bcm2835-audio: Remove superfluous open flag + +commit ad13924de6b07cb52714ea1809c57b2e72a24504 upstream. + +All the alsa_stream->open flag checks in the current code are +redundant, and they cannot be racy. For the code simplification, +let's remove the flag and its check. + +Signed-off-by: Takashi Iwai <tiwai@suse.de> +Tested-by: Stefan Wahren <stefan.wahren@i2se.com> +Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> +--- + .../staging/vc04_services/bcm2835-audio/bcm2835-pcm.c | 9 ++------- + drivers/staging/vc04_services/bcm2835-audio/bcm2835.h | 1 - + 2 files changed, 2 insertions(+), 8 deletions(-) + +--- a/drivers/staging/vc04_services/bcm2835-audio/bcm2835-pcm.c ++++ b/drivers/staging/vc04_services/bcm2835-audio/bcm2835-pcm.c +@@ -57,8 +57,7 @@ void bcm2835_playback_fifo(struct bcm283 + audio_info("alsa_stream=%p substream=%p\n", alsa_stream, + alsa_stream ? alsa_stream->substream : 0); + +- if (alsa_stream->open) +- consumed = bcm2835_audio_retrieve_buffers(alsa_stream); ++ consumed = bcm2835_audio_retrieve_buffers(alsa_stream); + + /* We get called only if playback was triggered, So, the number of buffers we retrieve in + * each iteration are the buffers that have been played out already +@@ -154,7 +153,6 @@ static int snd_bcm2835_playback_open_gen + chip->alsa_stream[idx] = alsa_stream; + + chip->opened |= (1 << idx); +- alsa_stream->open = 1; + alsa_stream->draining = 1; + + out: +@@ -205,10 +203,7 @@ static int snd_bcm2835_playback_close(st + alsa_stream->period_size = 0; + alsa_stream->buffer_size = 0; + +- if (alsa_stream->open) { +- alsa_stream->open = 0; +- bcm2835_audio_close(alsa_stream); +- } ++ bcm2835_audio_close(alsa_stream); + if (alsa_stream->chip) + alsa_stream->chip->alsa_stream[alsa_stream->idx] = NULL; + /* +--- a/drivers/staging/vc04_services/bcm2835-audio/bcm2835.h ++++ b/drivers/staging/vc04_services/bcm2835-audio/bcm2835.h +@@ -121,7 +121,6 @@ struct bcm2835_alsa_stream { + + spinlock_t lock; + +- int open; + int running; + int draining; + |