diff options
author | Jaroslav Kysela <perex@suse.cz> | 2005-01-03 15:36:57 +0100 |
---|---|---|
committer | Jaroslav Kysela <perex@suse.cz> | 2005-01-03 15:36:57 +0100 |
commit | a83c8170bde27860e7abddaffe8364d61146e060 (patch) | |
tree | 7dfefff21bafea8828aabc09afaf3d845dd1f4a6 /sound | |
parent | 65ebc2726279ecacb3b4c3ecf1c701d74f7f3b22 (diff) | |
download | history-a83c8170bde27860e7abddaffe8364d61146e060.tar.gz |
[ALSA] Fix open handling
USB USX2Y
Return -EBUSY from snd_usX2Y_usbpcm_open(), if the associated hwdep
device is not opened.
It now works as originally intended. Had forgotten a pair of parenthesis.
Signed-off-by: Karsten Wiese <annabellesgarden@yahoo.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound')
-rw-r--r-- | sound/usb/usx2y/usbusx2y.c | 6 | ||||
-rw-r--r-- | sound/usb/usx2y/usx2yhwdeppcm.c | 4 |
2 files changed, 7 insertions, 3 deletions
diff --git a/sound/usb/usx2y/usbusx2y.c b/sound/usb/usx2y/usbusx2y.c index b264233f557be9..542dc4845091e7 100644 --- a/sound/usb/usx2y/usbusx2y.c +++ b/sound/usb/usx2y/usbusx2y.c @@ -1,6 +1,10 @@ /* * usbusy2y.c - ALSA USB US-428 Driver * +2004-12-14 Karsten Wiese + Version 0.8.7.1: + snd_pcm_open for rawusb pcm-devices now returns -EBUSY if called without rawusb's hwdep device being open. + 2004-12-02 Karsten Wiese Version 0.8.7: Use macro usb_maxpacket() for portability. @@ -139,7 +143,7 @@ MODULE_AUTHOR("Karsten Wiese <annabellesgarden@yahoo.de>"); -MODULE_DESCRIPTION("TASCAM "NAME_ALLCAPS" Version 0.8.7"); +MODULE_DESCRIPTION("TASCAM "NAME_ALLCAPS" Version 0.8.7.1"); MODULE_LICENSE("GPL"); MODULE_SUPPORTED_DEVICE("{{TASCAM(0x1604), "NAME_ALLCAPS"(0x8001)(0x8005)(0x8007) }}"); diff --git a/sound/usb/usx2y/usx2yhwdeppcm.c b/sound/usb/usx2y/usx2yhwdeppcm.c index 5d0e2d17d489ab..bb2c8e9000c686 100644 --- a/sound/usb/usx2y/usx2yhwdeppcm.c +++ b/sound/usb/usx2y/usx2yhwdeppcm.c @@ -22,7 +22,7 @@ It provides the alsa kernel half of the usx2y-alsa-jack driver pair. The pair uses a hardware dependant alsa-device for mmaped pcm transport. Advantage achieved: - The usb_hcd places reads/writes pcm data into dma-memory. + The usb_hc moves pcm data from/into memory via DMA. That memory is mmaped by jack's usx2y driver. Jack's usx2y driver is the first/last to read/write pcm data. Read/write is a combination of power of 2 period shaping and @@ -568,7 +568,7 @@ static int snd_usX2Y_usbpcm_open(snd_pcm_substream_t *substream) snd_pcm_substream_chip(substream))[substream->stream]; snd_pcm_runtime_t *runtime = substream->runtime; - if (!subs->usX2Y->chip_status & USX2Y_STAT_CHIP_MMAP_PCM_URBS) + if (!(subs->usX2Y->chip_status & USX2Y_STAT_CHIP_MMAP_PCM_URBS)) return -EBUSY; runtime->hw = SNDRV_PCM_STREAM_PLAYBACK == substream->stream ? snd_usX2Y_2c : |