Hi Jaroslav,
Please commit this with comments
- US224 support
- FIX for build without CONFIG_SND_DEBUG
Thanks,
Karsten
Index: usb/usx2y/usX2Yhwdep.c
===================================================================
RCS file: /cvsroot/alsa/alsa-driver/usb/usx2y/usX2Yhwdep.c,v
retrieving revision 1.5
diff -u -r1.5 usX2Yhwdep.c
--- usb/usx2y/usX2Yhwdep.c 19 Mar 2004 07:22:06 -0000 1.5
+++ usb/usx2y/usX2Yhwdep.c 6 Apr 2004 21:32:05 -0000
@@ -194,11 +194,10 @@
{
int err = 0,
i;
- usX2Y->Seq04 = 0;
if (NULL == (usX2Y->AS04.buffer = kmalloc(URB_DataLen_AsyncSeq*URBS_AsyncSeq, GFP_KERNEL))) {
err = -ENOMEM;
- }else
+ } else
for (i = 0; i < URBS_AsyncSeq; ++i) {
if (NULL == (usX2Y->AS04.urb[i] = usb_alloc_urb(0, GFP_KERNEL))) {
err = -ENOMEM;
Index: usb/usx2y/usbusx2y.c
===================================================================
RCS file: /cvsroot/alsa/alsa-driver/usb/usx2y/usbusx2y.c,v
retrieving revision 1.8
diff -u -r1.8 usbusx2y.c
--- usb/usx2y/usbusx2y.c 17 Feb 2004 15:28:31 -0000 1.8
+++ usb/usx2y/usbusx2y.c 6 Apr 2004 21:32:06 -0000
@@ -1,6 +1,11 @@
/*
* usbus428.c - ALSA USB US-428 Driver
*
+2004-04-06 Karsten Wiese
+ Version 0.6.0:
+ Runs on 2.6.5 kernel without any "--with-debug=" things.
+ us224 reported running.
+
2004-01-14 Karsten Wiese
Version 0.5.1:
Runs with 2.6.1 kernel.
@@ -93,7 +98,7 @@
MODULE_AUTHOR("Karsten Wiese <[EMAIL PROTECTED]>");
-MODULE_DESCRIPTION("TASCAM "NAME_ALLCAPS" Version 0.4.1");
+MODULE_DESCRIPTION("TASCAM "NAME_ALLCAPS" Version 0.6.0");
MODULE_LICENSE("GPL");
MODULE_CLASSES("{sound}");
MODULE_DEVICES("{{TASCAM(0x1604), "NAME_ALLCAPS"(0x8001)(0x8007) }}");
@@ -118,7 +123,6 @@
static void snd_usX2Y_usb_disconnect(struct usb_device* usb_device, void* ptr);
static void snd_usX2Y_card_private_free(snd_card_t *card);
-#ifdef CONFIG_SND_DEBUG
/*
* pipe 4 is used for switching the lamps, setting samplerate, volumes ....
*/
@@ -128,14 +132,15 @@
void snd_usX2Y_Out04Int(struct urb* urb)
#endif
{
+#ifdef CONFIG_SND_DEBUG
if (urb->status) {
int i;
usX2Ydev_t* usX2Y = urb->context;
for (i = 0; i < 10 && usX2Y->AS04.urb[i] != urb; i++);
- snd_printd("snd_usX2Y_Out04Int() usX2Y->Seq04=%i urb %i status=%i\n", usX2Y->Seq04, i, urb->status);
+ snd_printd("snd_usX2Y_Out04Int() urb %i status=%i\n", i, urb->status);
}
-}
#endif
+}
#ifndef OLD_USB
void snd_usX2Y_In04Int(struct urb* urb, struct pt_regs *regs)
@@ -194,7 +199,7 @@
int j, send = us428ctls->p4outSent + 1;
if (send >= N_us428_p4out_BUFS)
send = 0;
- for (j = 0; j < URBS_AsyncSeq; ++j)
+ for (j = 0; j < URBS_AsyncSeq && !err; ++j)
if (0 == usX2Y->AS04.urb[j]->status) {
us428_p4out_t *p4out = us428ctls->p4out + send; // FIXME if more then 1 p4out is new, 1 gets lost.
usb_fill_bulk_urb(usX2Y->AS04.urb[j], usX2Y->chip.dev,
@@ -204,7 +209,7 @@
#ifdef OLD_USB
usX2Y->AS04.urb[j]->transfer_flags = USB_QUEUE_BULK;
#endif
- usb_submit_urb(usX2Y->AS04.urb[j], GFP_ATOMIC);
+ err = usb_submit_urb(usX2Y->AS04.urb[j], GFP_ATOMIC);
us428ctls->p4outSent = send;
break;
}
@@ -273,7 +278,6 @@
usX2Y(card)->chip.card = card;
init_MUTEX (&usX2Y(card)->open_mutex);
INIT_LIST_HEAD(&usX2Y(card)->chip.midi_list);
- usX2Y(card)->Seq04Complete = 1;
strcpy(card->driver, "USB "NAME_ALLCAPS"");
sprintf(card->shortname, "TASCAM "NAME_ALLCAPS"");
sprintf(card->longname, "%s (%x:%x if %d at %03d/%03d)",
Index: usb/usx2y/usbusx2y.h
===================================================================
RCS file: /cvsroot/alsa/alsa-driver/usb/usx2y/usbusx2y.h,v
retrieving revision 1.3
diff -u -r1.3 usbusx2y.h
--- usb/usx2y/usbusx2y.h 19 Jan 2004 18:43:28 -0000 1.3
+++ usb/usx2y/usbusx2y.h 6 Apr 2004 21:32:06 -0000
@@ -29,8 +29,6 @@
char In04Last[24];
unsigned In04IntCalls;
snd_usX2Y_urbSeq_t* US04;
- int Seq04;
- int Seq04Complete;
wait_queue_head_t In04WaitQueue;
snd_usX2Y_AsyncSeq_t AS04;
unsigned int rate,
@@ -56,10 +54,6 @@
#else
void snd_usX2Y_Out04Int(struct urb* urb);
void snd_usX2Y_In04Int(struct urb* urb);
-#endif
-
-#ifndef CONFIG_SND_DEBUG
-#define snd_usX2Y_Out04Int 0
#endif
#define NAME_ALLCAPS "US-X2Y"
Index: usb/usx2y/usbusx2yaudio.c
===================================================================
RCS file: /cvsroot/alsa/alsa-driver/usb/usx2y/usbusx2yaudio.c,v
retrieving revision 1.9
diff -u -r1.9 usbusx2yaudio.c
--- usb/usx2y/usbusx2yaudio.c 30 Mar 2004 08:27:16 -0000 1.9
+++ usb/usx2y/usbusx2yaudio.c 6 Apr 2004 21:32:08 -0000
@@ -1245,7 +1245,7 @@
snd_dma_continuous_data(GFP_KERNEL),
usX2Y_capt_substream->endpoints * 64*1024,
usX2Y_capt_substream->endpoints * 128*1024)) ||
- (usX2Y(card)->chip.dev->descriptor.idProduct == USB_ID_US428 &&
+ (usX2Y(card)->chip.dev->descriptor.idProduct != USB_ID_US122 &&
0 > (err = usX2Y_rate_set(usX2Y_stream, 44100)))) { // Lets us428 recognize output-volume settings, disturbs us122.
snd_usX2Y_audio_stream_free(usX2Y_stream);
return err;