* [PATCH] reenable MIDI for usx2y
@ 2005-03-27 12:00 karsten wiese
2005-03-30 13:00 ` Takashi Iwai
0 siblings, 1 reply; 5+ messages in thread
From: karsten wiese @ 2005-03-27 12:00 UTC (permalink / raw)
To: Clemens Ladisch; +Cc: Devel Alsa
[-- Attachment #1: Type: text/plain, Size: 807 bytes --]
Hi Clemens,
usx2y needs to specify exactly what usb-endpoints to use.
this feature got lost lately and is restored by attached
patch. Please apply!
rgds,
Karsten
Canonical Patch:
------------------------------------------------------
Don't detect MIDI usb-endpoint, if quirk specifies it
If for QUIRK_MIDI_FIXED_ENDPOINT a struct
snd_usb_midi_endpoint_info's
members out_ep or in_ep are != 0,
they shall be treated as exactly what usb-endpoints to use.
This rule was lost due to a recent change in usbmidi.c
and is reestablished by attached patch.
signed-of-by: Karsten Wiese <annabellesgarden@yahoo.de>
___________________________________________________________
Gesendet von Yahoo! Mail - Jetzt mit 250MB Speicher kostenlos - Hier anmelden: http://mail.yahoo.de
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: usbmidi.c.patch --]
[-- Type: text/x-diff; name="usbmidi.c.patch", Size: 703 bytes --]
Index: usbmidi.c
===================================================================
RCS file: /cvsroot/alsa/alsa-kernel/usb/usbmidi.c,v
retrieving revision 1.45
diff -U3 -r1.45 usbmidi.c
--- usbmidi.c 24 Mar 2005 07:17:17 -0000 1.45
+++ usbmidi.c 25 Mar 2005 13:46:50 -0000
@@ -1492,7 +1492,8 @@
case QUIRK_MIDI_FIXED_ENDPOINT:
memcpy(&endpoints[0], quirk->data,
sizeof(snd_usb_midi_endpoint_info_t));
- err = snd_usbmidi_detect_endpoints(umidi, &endpoints[0], 1);
+ err = (endpoints[0].in_ep || endpoints[0].out_ep) ? 0 :
+ snd_usbmidi_detect_endpoints(umidi, &endpoints[0], 1);
break;
case QUIRK_MIDI_YAMAHA:
err = snd_usbmidi_detect_yamaha(umidi, &endpoints[0]);
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH] reenable MIDI for usx2y
2005-03-27 12:00 [PATCH] reenable MIDI for usx2y karsten wiese
@ 2005-03-30 13:00 ` Takashi Iwai
0 siblings, 0 replies; 5+ messages in thread
From: Takashi Iwai @ 2005-03-30 13:00 UTC (permalink / raw)
To: karsten wiese; +Cc: Clemens Ladisch, Devel Alsa
At Sun, 27 Mar 2005 14:00:12 +0200 (CEST),
karsten wiese wrote:
>
> Hi Clemens,
>
> usx2y needs to specify exactly what usb-endpoints to use.
> this feature got lost lately and is restored by attached
> patch. Please apply!
IMO, it's better to fix snd_usbmidi_detect_endpoints() to check
in_ep and out_ep rather than its caller.
Takashi
>
> rgds,
> Karsten
>
> Canonical Patch:
> ------------------------------------------------------
> Don't detect MIDI usb-endpoint, if quirk specifies it
>
> If for QUIRK_MIDI_FIXED_ENDPOINT a struct
> snd_usb_midi_endpoint_info's
> members out_ep or in_ep are != 0,
> they shall be treated as exactly what usb-endpoints to use.
> This rule was lost due to a recent change in usbmidi.c
> and is reestablished by attached patch.
>
> signed-of-by: Karsten Wiese <annabellesgarden@yahoo.de>
>
>
>
>
>
>
> ___________________________________________________________
> Gesendet von Yahoo! Mail - Jetzt mit 250MB Speicher kostenlos - Hier anmelden: http://mail.yahoo.de
> [2 usbmidi.c.patch <text/x-diff (7bit)>]
> Index: usbmidi.c
> ===================================================================
> RCS file: /cvsroot/alsa/alsa-kernel/usb/usbmidi.c,v
> retrieving revision 1.45
> diff -U3 -r1.45 usbmidi.c
> --- usbmidi.c 24 Mar 2005 07:17:17 -0000 1.45
> +++ usbmidi.c 25 Mar 2005 13:46:50 -0000
> @@ -1492,7 +1492,8 @@
> case QUIRK_MIDI_FIXED_ENDPOINT:
> memcpy(&endpoints[0], quirk->data,
> sizeof(snd_usb_midi_endpoint_info_t));
> - err = snd_usbmidi_detect_endpoints(umidi, &endpoints[0], 1);
> + err = (endpoints[0].in_ep || endpoints[0].out_ep) ? 0 :
> + snd_usbmidi_detect_endpoints(umidi, &endpoints[0], 1);
> break;
> case QUIRK_MIDI_YAMAHA:
> err = snd_usbmidi_detect_yamaha(umidi, &endpoints[0]);
-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH] reenable MIDI for usx2y
@ 2005-03-30 13:49 karsten wiese
2005-03-30 13:54 ` Takashi Iwai
0 siblings, 1 reply; 5+ messages in thread
From: karsten wiese @ 2005-03-30 13:49 UTC (permalink / raw)
To: Takashi Iwai; +Cc: Clemens Ladisch, Devel Alsa
--- Takashi Iwai <tiwai@suse.de> wrote:
> At Sun, 27 Mar 2005 14:00:12 +0200 (CEST),
> karsten wiese wrote:
> >
> > Hi Clemens,
> >
> > usx2y needs to specify exactly what usb-endpoints to
> use.
> > this feature got lost lately and is restored by
> attached
> > patch. Please apply!
>
> IMO, it's better to fix snd_usbmidi_detect_endpoints() to
> check
> in_ep and out_ep rather than its caller.
I'd prefer a new function snd_usbmidi_check_endpoints()
then.
Caller would call snd_usbmidi_check_endpoints() if
ep_out/ep_in would be set by client and would call
snd_usbmidi_detect_endpoints() in the other case.
How about that?
Karsten
___________________________________________________________
Gesendet von Yahoo! Mail - Jetzt mit 250MB Speicher kostenlos - Hier anmelden: http://mail.yahoo.de
-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH] reenable MIDI for usx2y
2005-03-30 13:49 karsten wiese
@ 2005-03-30 13:54 ` Takashi Iwai
2005-03-30 15:22 ` Clemens Ladisch
0 siblings, 1 reply; 5+ messages in thread
From: Takashi Iwai @ 2005-03-30 13:54 UTC (permalink / raw)
To: karsten wiese; +Cc: Clemens Ladisch, Devel Alsa
At Wed, 30 Mar 2005 15:49:27 +0200 (CEST),
karsten wiese wrote:
>
>
> --- Takashi Iwai <tiwai@suse.de> wrote:
> > At Sun, 27 Mar 2005 14:00:12 +0200 (CEST),
> > karsten wiese wrote:
> > >
> > > Hi Clemens,
> > >
> > > usx2y needs to specify exactly what usb-endpoints to
> > use.
> > > this feature got lost lately and is restored by
> > attached
> > > patch. Please apply!
> >
> > IMO, it's better to fix snd_usbmidi_detect_endpoints() to
> > check
> > in_ep and out_ep rather than its caller.
>
> I'd prefer a new function snd_usbmidi_check_endpoints()
> then.
> Caller would call snd_usbmidi_check_endpoints() if
> ep_out/ep_in would be set by client and would call
> snd_usbmidi_detect_endpoints() in the other case.
> How about that?
Hmm, I thought the old code detects in/out endpoints if they are NULL.
That is, if out_ep == NULL and in_ep != NULL, out_ep is detected but
in_ep is used as it is.
If this isn't the case, checking in the caller side seems OK.
Takashi
-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH] reenable MIDI for usx2y
2005-03-30 13:54 ` Takashi Iwai
@ 2005-03-30 15:22 ` Clemens Ladisch
0 siblings, 0 replies; 5+ messages in thread
From: Clemens Ladisch @ 2005-03-30 15:22 UTC (permalink / raw)
To: Takashi Iwai; +Cc: karsten wiese, Mr. Devel Alsa
Takashi Iwai wrote:
> karsten wiese wrote:
> > --- Takashi Iwai <tiwai@suse.de> wrote:
> > > karsten wiese wrote:
> > > > usx2y needs to specify exactly what usb-endpoints to
> > > use.
> > > > this feature got lost lately and is restored by
> > > attached
> > > > patch. Please apply!
> > >
> > > IMO, it's better to fix snd_usbmidi_detect_endpoints() to
> > > check
> > > in_ep and out_ep rather than its caller.
> >
> > I'd prefer a new function snd_usbmidi_check_endpoints()
> > then.
> > Caller would call snd_usbmidi_check_endpoints() if
> > ep_out/ep_in would be set by client and would call
> > snd_usbmidi_detect_endpoints() in the other case.
> > How about that?
>
> Hmm, I thought the old code detects in/out endpoints if they are NULL.
> That is, if out_ep == NULL and in_ep != NULL, out_ep is detected but
> in_ep is used as it is.
The old code was designed so that quirks can optionally specify
endpoints.
However, if _any_ endpoint is set, it should be assumed that the quirk
knows what it does, and that no endpoint should be detected
automatically. (The old code didn't behave in this way.)
> If this isn't the case, checking in the caller side seems OK.
snd_usbmidi_detect_endpoints() is called in several places, and any of
them could theoretically use explicitly specified endpoints.
I've added the check inside the snd_usbmidi_detect_endpoints()
function.
Regards,
Clemens
-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2005-03-30 15:22 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-03-27 12:00 [PATCH] reenable MIDI for usx2y karsten wiese
2005-03-30 13:00 ` Takashi Iwai
-- strict thread matches above, loose matches on Subject: below --
2005-03-30 13:49 karsten wiese
2005-03-30 13:54 ` Takashi Iwai
2005-03-30 15:22 ` Clemens Ladisch
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.