android_kernel_xiaomi_sm8350/sound/oss
Sergei Shtylylov 7b6666530e [PATCH] Au1550 AC'97 OSS driver spinlock fixes
We have found some issues with Au1550 AC'97 OSS driver in 2.6
(sound/oss/au1550_ac97.c), though it also should concern 2.4 driver
(drivers/sound/au1550_psc.c).

start_dac() grabs a spinlock already held by its caller, au1550_write().
This doesn't show up with the standard UP spinlock impelmentation but when
the different one (mutex based) is in use, a lockup happens.

And the interrupt handlers also didn't grab the spinlock -- that's OK in
the usual kernel but not when the IRQ handlers are threaded.  So, they're
grabbing the spinlock now (as every correct interrupt handler should do).

Signed-off-by: Konstantin Baidarov <kbaidarov@ru.mvista.com>
Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-12-15 14:22:45 -08:00
..
cs4281 [PATCH] move pm_register/etc. to CONFIG_PM_LEGACY, pm_legacy.h 2005-11-13 18:14:10 -08:00
dmasound Input: convert dmasound_awacs (OSS) to dynamic input allocation 2005-11-02 22:49:10 -05:00
emu10k1 [PATCH] remove redundant NULL checks before kfree() in sound/ and avoid casting pointers about to be kfree()'ed 2005-06-25 16:25:00 -07:00
ac97_codec.c [PATCH] fix missing includes 2005-10-30 17:37:32 -08:00
ac97_plugin_ad1980.c
ac97.c
ac97.h
aci.c
aci.h
ad1816.c [PATCH] sound/oss/: cleanups 2005-06-25 16:25:01 -07:00
ad1848_mixer.h
ad1848.c [PATCH] move pm_register/etc. to CONFIG_PM_LEGACY, pm_legacy.h 2005-11-13 18:14:10 -08:00
ad1848.h
ad1889.c [PATCH] remove redundant NULL checks before kfree() in sound/ and avoid casting pointers about to be kfree()'ed 2005-06-25 16:25:00 -07:00
ad1889.h
adlib_card.c
aedsp16.c
ali5455.c
au1000.c OSS MIPS drivers: "extern inline" -> "static inline" 2005-11-07 18:05:35 +00:00
au1550_ac97.c [PATCH] Au1550 AC'97 OSS driver spinlock fixes 2005-12-15 14:22:45 -08:00
audio_syms.c
audio.c
awe_hw.h
awe_wave.c [PATCH] Typo fix: dot after newline in printk strings 2005-10-30 17:37:20 -08:00
awe_wave.h
bin2hex.c
btaudio.c
CHANGELOG
cmpci.c [PATCH] sound/oss/cmpci: Use the DMA_32BIT_MASK constant 2005-06-25 16:25:09 -07:00
coproc.h
COPYING
cs46xx_wrapper-24.h
cs46xx.c [PATCH] pm: more u32 vs. pm_message_t fixes 2005-07-07 18:23:43 -07:00
cs46xxpm-24.h
cs46xxpm.h
cs461x_image.h
cs461x.h
cs4232.c [PATCH] remove some more check_region stuff 2005-10-30 17:37:18 -08:00
dev_table.c
dev_table.h
dm.h
dmabuf.c
es1370.c Merge rsync://rsync.kernel.org/pub/scm/linux/kernel/git/dtor/input.git manually 2005-06-27 14:47:31 -07:00
es1371.c Merge rsync://rsync.kernel.org/pub/scm/linux/kernel/git/dtor/input.git manually 2005-06-27 14:47:31 -07:00
esssolo1.c Merge rsync://rsync.kernel.org/pub/scm/linux/kernel/git/dtor/input.git manually 2005-06-27 14:47:31 -07:00
forte.c
gus_card.c
gus_hw.h
gus_linearvol.h
gus_midi.c
gus_vol.c
gus_wave.c
gus.h
hal2.c
hal2.h
harmony.c
hex2hex.c
i810_audio.c [PATCH] i810_audio: fix release_region misordering in error exit from i810_probe 2005-08-23 01:38:22 -04:00
ics2101.c
ite8172.c [PATCH] oss: don't concatenate __FUNCTION__ with strings 2005-09-22 22:17:37 -07:00
iwmem.h
kahlua.c
Kconfig [PATCH] schedule obsolete OSS drivers for removal 2005-11-09 07:55:53 -08:00
mad16.c Input: mad16 (OSS) - do not carry around gameport code if gameport core 2005-06-01 02:38:46 -05:00
maestro3.c
maestro3.h
maestro.c [PATCH] move pm_register/etc. to CONFIG_PM_LEGACY, pm_legacy.h 2005-11-13 18:14:10 -08:00
maestro.h
Makefile [PATCH] ad1980 makefile fix 2005-08-23 18:43:46 -07:00
maui.c
midi_ctrl.h
midi_syms.c
midi_synth.c
midi_synth.h
midibuf.c [PATCH] timer initialization cleanup: DEFINE_TIMER 2005-09-09 14:03:48 -07:00
mpu401.c [PATCH] remove redundant NULL checks before kfree() in sound/ and avoid casting pointers about to be kfree()'ed 2005-06-25 16:25:00 -07:00
mpu401.h
msnd_classic.c
msnd_classic.h
msnd_pinnacle.c [PATCH] msnd_pinnacle GFP fix 2005-04-24 12:28:34 -07:00
msnd_pinnacle.h
msnd.c [PATCH] changing CONFIG_LOCALVERSION rebuilds too much, for no good reason 2005-11-09 07:55:57 -08:00
msnd.h
nec_vrc5477.c OSS MIPS drivers: "extern inline" -> "static inline" 2005-11-07 18:05:35 +00:00
nm256_audio.c [PATCH] move pm_register/etc. to CONFIG_PM_LEGACY, pm_legacy.h 2005-11-13 18:14:10 -08:00
nm256_coeff.h [PATCH] sound/oss/: cleanups 2005-06-25 16:25:01 -07:00
nm256.h [PATCH] nm256 oss build failure 2005-06-25 16:25:01 -07:00
opl3_hw.h
opl3.c
opl3.h
opl3sa2.c [PATCH] move pm_register/etc. to CONFIG_PM_LEGACY, pm_legacy.h 2005-11-13 18:14:10 -08:00
opl3sa.c
os.h [PATCH] changing CONFIG_LOCALVERSION rebuilds too much, for no good reason 2005-11-09 07:55:57 -08:00
pas2_card.c
pas2_midi.c
pas2_mixer.c
pas2_pcm.c
pas2.h
pss.c [PATCH] turn many #if $undefined_string into #ifdef $undefined_string 2005-07-27 16:26:08 -07:00
README.FIRST
rme96xx.c [PATCH] changing CONFIG_LOCALVERSION rebuilds too much, for no good reason 2005-11-09 07:55:57 -08:00
rme96xx.h
sb_audio.c
sb_card.c
sb_card.h
sb_common.c [PATCH] remove redundant NULL checks before kfree() in sound/ and avoid casting pointers about to be kfree()'ed 2005-06-25 16:25:00 -07:00
sb_ess.c
sb_ess.h
sb_midi.c
sb_mixer.c
sb_mixer.h
sb.h
sequencer_syms.c [PATCH] sound/oss/sequencer_syms: unexport reprogram_timer 2005-11-07 07:54:08 -08:00
sequencer.c
sgalaxy.c
sh_dac_audio.c [PATCH] changing CONFIG_LOCALVERSION rebuilds too much, for no good reason 2005-11-09 07:55:57 -08:00
sonicvibes.c Input: sonicvibes (OSS) - do not carry around gameport code if gameport 2005-06-01 02:38:43 -05:00
sound_calls.h
sound_config.h
sound_firmware.h
sound_syms.c
sound_timer.c
soundcard.c [PATCH] Driver Core: fix up all callers of class_device_create() 2005-10-28 09:52:52 -07:00
soundvers.h
sscape.c [PATCH] sound/oss/sscape.c: remove dead code 2005-06-25 16:25:03 -07:00
swarm_cs4297a.c
sys_timer.c [PATCH] timer initialization cleanup: DEFINE_TIMER 2005-09-09 14:03:48 -07:00
trident.c Input: trident (OSS) - do not carry around gameport code if gameport 2005-06-01 02:38:37 -05:00
trident.h
trix.c
tuning.h
uart401.c
uart6850.c [PATCH] timer initialization cleanup: DEFINE_TIMER 2005-09-09 14:03:48 -07:00
ulaw.h
v_midi.c [PATCH] sound/oss/: cleanups 2005-06-25 16:25:01 -07:00
v_midi.h
via82cxxx_audio.c [PATCH] sound/oss/via82cxxx_audio: Use the DMA_32BIT_MASK constant 2005-06-27 00:49:23 -04:00
vidc_fill.S
vidc.c
vidc.h [PATCH] vidc gcc4 fix 2005-08-23 18:43:45 -07:00
vwsnd.c
waveartist.c
waveartist.h
wavfront.c [PATCH] remove some more check_region stuff 2005-10-30 17:37:18 -08:00
wf_midi.c
ymfpci_image.h
ymfpci.c [PATCH] pci_ids: macros: replace partial with whole symbols 2005-10-28 15:36:59 -07:00
ymfpci.h
yss225.c
yss225.h

The modular sound driver patches were funded by Red Hat Software 
(www.redhat.com). The sound driver here is thus a modified version of 
Hannu's code. Please bear that in mind when considering the appropriate
forums for bug reporting. 

Alan Cox