alsa-devel.alsa-project.org archive mirror
 help / color / mirror / Atom feed
* Alsa Support for Korg Pandora Mini, Vox ToneLab ST
@ 2011-04-19  7:39 Pawel Siemienski
  2011-04-23  8:52 ` Daniel Mack
  2011-05-12 16:01 ` Daniel Mack
  0 siblings, 2 replies; 23+ messages in thread
From: Pawel Siemienski @ 2011-04-19  7:39 UTC (permalink / raw)
  To: alsa-devel

Hi,

I am Ubuntu Studio user and I use also ALSA for driving my audio for
recording etc...
I have tested two devices with ALSA:
1. Vox Tonelab ST - works with ALSA out of the box as USB audio interface
with no need of modifications, provides complete functionalities needed for
recording and playing audio
2. Korg Pandora Mini - is detected as audio interface, but when selecting it
information that no controls are available is displayed, this device can not
work as audio interface in fact with Alsa.

Could you please advise what modifications in ALSA should be made to enable
Korg Pandora Mini as audio interface with ALSA, is there any patch for this
device?
If you would need any information on Korg Pandora Mini please let know.

Thanks
Pawel Siemienski

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: Alsa Support for Korg Pandora Mini, Vox ToneLab ST
  2011-04-19  7:39 Alsa Support for Korg Pandora Mini, Vox ToneLab ST Pawel Siemienski
@ 2011-04-23  8:52 ` Daniel Mack
  2011-05-12 16:01 ` Daniel Mack
  1 sibling, 0 replies; 23+ messages in thread
From: Daniel Mack @ 2011-04-23  8:52 UTC (permalink / raw)
  To: Pawel Siemienski; +Cc: alsa-devel

On Tue, Apr 19, 2011 at 9:39 AM, Pawel Siemienski
<pawel.siemienski@gmail.com> wrote:
> Hi,
>
> I am Ubuntu Studio user and I use also ALSA for driving my audio for
> recording etc...
> I have tested two devices with ALSA:
> 1. Vox Tonelab ST - works with ALSA out of the box as USB audio interface
> with no need of modifications, provides complete functionalities needed for
> recording and playing audio
> 2. Korg Pandora Mini - is detected as audio interface, but when selecting it
> information that no controls are available is displayed, this device can not
> work as audio interface in fact with Alsa.
>
> Could you please advise what modifications in ALSA should be made to enable
> Korg Pandora Mini as audio interface with ALSA, is there any patch for this
> device?
> If you would need any information on Korg Pandora Mini please let know.

Can you send a full "lsusb -v" output, please?

Daniel

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: Alsa Support for Korg Pandora Mini, Vox ToneLab ST
  2011-04-19  7:39 Alsa Support for Korg Pandora Mini, Vox ToneLab ST Pawel Siemienski
  2011-04-23  8:52 ` Daniel Mack
@ 2011-05-12 16:01 ` Daniel Mack
  2011-05-13  9:25   ` Pawel Siemienski
  2011-05-14 16:57   ` Frédéric Jaume
  1 sibling, 2 replies; 23+ messages in thread
From: Daniel Mack @ 2011-05-12 16:01 UTC (permalink / raw)
  To: Pawel Siemienski; +Cc: alsa-devel

Hi Pawel,

sorry for the long delay.

On Tue, Apr 19, 2011 at 9:39 AM, Pawel Siemienski
<pawel.siemienski@gmail.com> wrote:
> I am Ubuntu Studio user and I use also ALSA for driving my audio for
> recording etc...
> I have tested two devices with ALSA:
> 1. Vox Tonelab ST - works with ALSA out of the box as USB audio interface
> with no need of modifications, provides complete functionalities needed for
> recording and playing audio
> 2. Korg Pandora Mini - is detected as audio interface, but when selecting it
> information that no controls are available is displayed, this device can not
> work as audio interface in fact with Alsa.

The "Korg Pandora Mini" is no audio interface, according to both your
lsusb dump and the Korg website. The device is described as
"Ultra-compact pocket-size multi-effect designed for both guitar and
bass "[1] and exposes only a MIDI interface on USB, presumably for
controlling internal parameters, dumping the configuration etc. It
specifically not an USB audio interface, and hence it can not be used
in a way that you wanted to.

HTH,
Daniel

[1] http://www.korg.com/pandoramini

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: Alsa Support for Korg Pandora Mini, Vox ToneLab ST
  2011-05-12 16:01 ` Daniel Mack
@ 2011-05-13  9:25   ` Pawel Siemienski
  2011-05-13 12:13     ` Daniel Mack
  2011-05-14 16:57   ` Frédéric Jaume
  1 sibling, 1 reply; 23+ messages in thread
From: Pawel Siemienski @ 2011-05-13  9:25 UTC (permalink / raw)
  To: Daniel Mack; +Cc: alsa-devel

Hi,

Thanks for information.
Sorry for taking your time.
I thought device will be able to work as audio interface because of
following interview from NAMM 2011:
http://www.youtube.com/watch?v=AHlSrLYslbQ

Cheers
Pawel

2011/5/12 Daniel Mack <zonque@gmail.com>

> Hi Pawel,
>
> sorry for the long delay.
>
> On Tue, Apr 19, 2011 at 9:39 AM, Pawel Siemienski
> <pawel.siemienski@gmail.com> wrote:
> > I am Ubuntu Studio user and I use also ALSA for driving my audio for
> > recording etc...
> > I have tested two devices with ALSA:
> > 1. Vox Tonelab ST - works with ALSA out of the box as USB audio interface
> > with no need of modifications, provides complete functionalities needed
> for
> > recording and playing audio
> > 2. Korg Pandora Mini - is detected as audio interface, but when selecting
> it
> > information that no controls are available is displayed, this device can
> not
> > work as audio interface in fact with Alsa.
>
> The "Korg Pandora Mini" is no audio interface, according to both your
> lsusb dump and the Korg website. The device is described as
> "Ultra-compact pocket-size multi-effect designed for both guitar and
> bass "[1] and exposes only a MIDI interface on USB, presumably for
> controlling internal parameters, dumping the configuration etc. It
> specifically not an USB audio interface, and hence it can not be used
> in a way that you wanted to.
>
> HTH,
> Daniel
>
> [1] http://www.korg.com/pandoramini
>

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: Alsa Support for Korg Pandora Mini, Vox ToneLab ST
  2011-05-13  9:25   ` Pawel Siemienski
@ 2011-05-13 12:13     ` Daniel Mack
  0 siblings, 0 replies; 23+ messages in thread
From: Daniel Mack @ 2011-05-13 12:13 UTC (permalink / raw)
  To: Pawel Siemienski; +Cc: alsa-devel

On Fri, May 13, 2011 at 11:25 AM, Pawel Siemienski
<pawel.siemienski@gmail.com> wrote:
> Hi,
>
> Thanks for information.
> Sorry for taking your time.
> I thought device will be able to work as audio interface because of
> following interview from NAMM 2011:
> http://www.youtube.com/watch?v=AHlSrLYslbQ

That's very strange, and most probably misleading. Can you achive that
with any other OS, like Windows or Mac OS X? Is the device accessible
as audio device from there?


Daniel

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: Alsa Support for Korg Pandora Mini, Vox ToneLab ST
  2011-05-12 16:01 ` Daniel Mack
  2011-05-13  9:25   ` Pawel Siemienski
@ 2011-05-14 16:57   ` Frédéric Jaume
  2011-05-14 17:13     ` Grant Diffey
  1 sibling, 1 reply; 23+ messages in thread
From: Frédéric Jaume @ 2011-05-14 16:57 UTC (permalink / raw)
  To: alsa-devel

Daniel Mack <zonque <at> gmail.com> writes:

> 
> Hi Pawel,
> 
> sorry for the long delay.
> 
> On Tue, Apr 19, 2011 at 9:39 AM, Pawel Siemienski
> <pawel.siemienski <at> gmail.com> wrote:
> > I am Ubuntu Studio user and I use also ALSA for driving my audio for
> > recording etc...
> > I have tested two devices with ALSA:
> > 1. Vox Tonelab ST - works with ALSA out of the box as USB audio interface
> > with no need of modifications, provides complete functionalities needed for
> > recording and playing audio
> > 2. Korg Pandora Mini - is detected as audio interface, but when selecting it
> > information that no controls are available is displayed, this device can not
> > work as audio interface in fact with Alsa.
> 
> The "Korg Pandora Mini" is no audio interface, according to both your
> lsusb dump and the Korg website. The device is described as
> "Ultra-compact pocket-size multi-effect designed for both guitar and
> bass "[1] and exposes only a MIDI interface on USB, presumably for
> controlling internal parameters, dumping the configuration etc. It
> specifically not an USB audio interface, and hence it can not be used
> in a way that you wanted to.
> 
> HTH,
> Daniel
> 
> [1] http://www.korg.com/pandoramini
> 

Hello,

I own a Korg Pandora PX5D, which is the one released before the Pandora Mini. It
has a USB audio interface that works out of the box with Alsa, which is great!
But it's a composite device and also has USB Midi (it contains a drum machine
that can be triggered via midi, and I think the windows patch editor uses midi
to communicate with the device too), unfortunately it is not recognized by Alsa
(hence no midi or patch editor). From what I read on Korg forums, the Windows
driver for USB-Midi is the same as for other Korg devices which are supported
under Linux, so maybe it can work with Alsa too ? I'd be happy to help by
sending logs or other infos.

Fred.

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: Alsa Support for Korg Pandora Mini, Vox ToneLab ST
  2011-05-14 16:57   ` Frédéric Jaume
@ 2011-05-14 17:13     ` Grant Diffey
  2011-05-14 17:24       ` Daniel Mack
  0 siblings, 1 reply; 23+ messages in thread
From: Grant Diffey @ 2011-05-14 17:13 UTC (permalink / raw)
  To: Frédéric Jaume, Clemens Ladisch, Daniel Mack; +Cc: alsa-devel

HI everyone

Is this possibly related to the usb midi regression felix and members of
this list were discussing a while ago with the fast track ultra which is
another usb composite device?

Grant

2011/5/15 Frédéric Jaume <frederic.jaume@gmail.com>

> Daniel Mack <zonque <at> gmail.com> writes:
>
> >
> > Hi Pawel,
> >
> > sorry for the long delay.
> >
> > On Tue, Apr 19, 2011 at 9:39 AM, Pawel Siemienski
> > <pawel.siemienski <at> gmail.com> wrote:
> > > I am Ubuntu Studio user and I use also ALSA for driving my audio for
> > > recording etc...
> > > I have tested two devices with ALSA:
> > > 1. Vox Tonelab ST - works with ALSA out of the box as USB audio
> interface
> > > with no need of modifications, provides complete functionalities needed
> for
> > > recording and playing audio
> > > 2. Korg Pandora Mini - is detected as audio interface, but when
> selecting it
> > > information that no controls are available is displayed, this device
> can not
> > > work as audio interface in fact with Alsa.
> >
> > The "Korg Pandora Mini" is no audio interface, according to both your
> > lsusb dump and the Korg website. The device is described as
> > "Ultra-compact pocket-size multi-effect designed for both guitar and
> > bass "[1] and exposes only a MIDI interface on USB, presumably for
> > controlling internal parameters, dumping the configuration etc. It
> > specifically not an USB audio interface, and hence it can not be used
> > in a way that you wanted to.
> >
> > HTH,
> > Daniel
> >
> > [1] http://www.korg.com/pandoramini
> >
>
> Hello,
>
> I own a Korg Pandora PX5D, which is the one released before the Pandora
> Mini. It
> has a USB audio interface that works out of the box with Alsa, which is
> great!
> But it's a composite device and also has USB Midi (it contains a drum
> machine
> that can be triggered via midi, and I think the windows patch editor uses
> midi
> to communicate with the device too), unfortunately it is not recognized by
> Alsa
> (hence no midi or patch editor). From what I read on Korg forums, the
> Windows
> driver for USB-Midi is the same as for other Korg devices which are
> supported
> under Linux, so maybe it can work with Alsa too ? I'd be happy to help by
> sending logs or other infos.
>
> Fred.
>
>
> _______________________________________________
> Alsa-devel mailing list
> Alsa-devel@alsa-project.org
> http://mailman.alsa-project.org/mailman/listinfo/alsa-devel
>

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: Alsa Support for Korg Pandora Mini, Vox ToneLab ST
  2011-05-14 17:13     ` Grant Diffey
@ 2011-05-14 17:24       ` Daniel Mack
  2011-05-14 18:16         ` Daniel Mack
  0 siblings, 1 reply; 23+ messages in thread
From: Daniel Mack @ 2011-05-14 17:24 UTC (permalink / raw)
  To: Grant Diffey; +Cc: Frédéric Jaume, alsa-devel, Clemens Ladisch

2011/5/14 Grant Diffey <gdiffey@gmail.com>:
> HI everyone
>
> Is this possibly related to the usb midi regression felix and members of
> this list were discussing a while ago with the fast track ultra which is
> another usb composite device?

Possibly, yes. A dump generated by "lsusb -v" with this device
attached would help.

Thanks,
Daniel

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: Alsa Support for Korg Pandora Mini, Vox ToneLab ST
  2011-05-14 17:24       ` Daniel Mack
@ 2011-05-14 18:16         ` Daniel Mack
  2011-05-14 20:34           ` Frédéric Jaume
  2011-05-15 17:54           ` Grant Diffey
  0 siblings, 2 replies; 23+ messages in thread
From: Daniel Mack @ 2011-05-14 18:16 UTC (permalink / raw)
  To: Grant Diffey; +Cc: Frédéric Jaume, alsa-devel, Clemens Ladisch

On Sat, May 14, 2011 at 7:24 PM, Daniel Mack <zonque@gmail.com> wrote:
> 2011/5/14 Grant Diffey <gdiffey@gmail.com>:
>> HI everyone
>>
>> Is this possibly related to the usb midi regression felix and members of
>> this list were discussing a while ago with the fast track ultra which is
>> another usb composite device?
>
> Possibly, yes. A dump generated by "lsusb -v" with this device
> attached would help.

And just guessing, but does reverting 7b6717e ("ALSA: usb-audio:
Assume first control interface is for audio") help such devices?


Daniel

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: Alsa Support for Korg Pandora Mini, Vox ToneLab ST
  2011-05-14 18:16         ` Daniel Mack
@ 2011-05-14 20:34           ` Frédéric Jaume
  2011-05-15 13:12             ` Daniel Mack
  2011-05-15 17:54           ` Grant Diffey
  1 sibling, 1 reply; 23+ messages in thread
From: Frédéric Jaume @ 2011-05-14 20:34 UTC (permalink / raw)
  To: Daniel Mack; +Cc: Grant Diffey, Clemens Ladisch, alsa-devel

[-- Attachment #1: Type: text/plain, Size: 712 bytes --]

Hi!

Here's the "lsusb -v" for the Korg Pandora PX5D, attached. Hope this helps.

Fred.

2011/5/14 Daniel Mack <zonque@gmail.com>

> On Sat, May 14, 2011 at 7:24 PM, Daniel Mack <zonque@gmail.com> wrote:
> > 2011/5/14 Grant Diffey <gdiffey@gmail.com>:
> >> HI everyone
> >>
> >> Is this possibly related to the usb midi regression felix and members of
> >> this list were discussing a while ago with the fast track ultra which is
> >> another usb composite device?
> >
> > Possibly, yes. A dump generated by "lsusb -v" with this device
> > attached would help.
>
> And just guessing, but does reverting 7b6717e ("ALSA: usb-audio:
> Assume first control interface is for audio") help such devices?
>
>
> Daniel
>

[-- Attachment #2: Korg Pandora PX5D usb.log --]
[-- Type: text/x-log, Size: 8759 bytes --]


Bus 003 Device 007: ID 0944:0200 KORG, Inc. 
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               1.10
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0         8
  idVendor           0x0944 KORG, Inc.
  idProduct          0x0200 
  bcdDevice            1.00
  iManufacturer           1 KORG INC.
  iProduct                2 PANDORA PX5D
  iSerial                 0 
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength          248
    bNumInterfaces          4
    bConfigurationValue     1
    iConfiguration          0 
    bmAttributes         0x80
      (Bus Powered)
    MaxPower              250mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           0
      bInterfaceClass         1 Audio
      bInterfaceSubClass      1 Control Device
      bInterfaceProtocol      0 
      iInterface              0 
      AudioControl Interface Descriptor:
        bLength                10
        bDescriptorType        36
        bDescriptorSubtype      1 (HEADER)
        bcdADC               1.00
        wTotalLength           52
        bInCollection           2
        baInterfaceNr( 0)       1
        baInterfaceNr( 1)       2
      AudioControl Interface Descriptor:
        bLength                12
        bDescriptorType        36
        bDescriptorSubtype      2 (INPUT_TERMINAL)
        bTerminalID             1
        wTerminalType      0x0101 USB Streaming
        bAssocTerminal          0
        bNrChannels             2
        wChannelConfig     0x0003
          Left Front (L)
          Right Front (R)
        iChannelNames           0 
        iTerminal               0 
      AudioControl Interface Descriptor:
        bLength                 9
        bDescriptorType        36
        bDescriptorSubtype      3 (OUTPUT_TERMINAL)
        bTerminalID             2
        wTerminalType      0x0302 Headphones
        bAssocTerminal          0
        bSourceID               1
        iTerminal               0 
      AudioControl Interface Descriptor:
        bLength                12
        bDescriptorType        36
        bDescriptorSubtype      2 (INPUT_TERMINAL)
        bTerminalID             3
        wTerminalType      0x0601 Analog Connector
        bAssocTerminal          0
        bNrChannels             2
        wChannelConfig     0x0003
          Left Front (L)
          Right Front (R)
        iChannelNames           0 
        iTerminal               0 
      AudioControl Interface Descriptor:
        bLength                 9
        bDescriptorType        36
        bDescriptorSubtype      3 (OUTPUT_TERMINAL)
        bTerminalID             4
        wTerminalType      0x0101 USB Streaming
        bAssocTerminal          0
        bSourceID               3
        iTerminal               0 
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       0
      bNumEndpoints           0
      bInterfaceClass         1 Audio
      bInterfaceSubClass      2 Streaming
      bInterfaceProtocol      0 
      iInterface              0 
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       1
      bNumEndpoints           1
      bInterfaceClass         1 Audio
      bInterfaceSubClass      2 Streaming
      bInterfaceProtocol      0 
      iInterface              0 
      AudioStreaming Interface Descriptor:
        bLength                 7
        bDescriptorType        36
        bDescriptorSubtype      1 (AS_GENERAL)
        bTerminalLink           1
        bDelay                  1 frames
        wFormatTag              1 PCM
      AudioStreaming Interface Descriptor:
        bLength                11
        bDescriptorType        36
        bDescriptorSubtype      2 (FORMAT_TYPE)
        bFormatType             1 (FORMAT_TYPE_I)
        bNrChannels             2
        bSubframeSize           2
        bBitResolution         16
        bSamFreqType            1 Discrete
        tSamFreq[ 0]        44100
      Endpoint Descriptor:
        bLength                 9
        bDescriptorType         5
        bEndpointAddress     0x01  EP 1 OUT
        bmAttributes            9
          Transfer Type            Isochronous
          Synch Type               Adaptive
          Usage Type               Data
        wMaxPacketSize     0x00c0  1x 192 bytes
        bInterval               1
        bRefresh                0
        bSynchAddress           0
        AudioControl Endpoint Descriptor:
          bLength                 7
          bDescriptorType        37
          bDescriptorSubtype      1 (EP_GENERAL)
          bmAttributes         0x00
          bLockDelayUnits         1 Milliseconds
          wLockDelay              1 Milliseconds
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        2
      bAlternateSetting       0
      bNumEndpoints           0
      bInterfaceClass         1 Audio
      bInterfaceSubClass      2 Streaming
      bInterfaceProtocol      0 
      iInterface              0 
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        2
      bAlternateSetting       1
      bNumEndpoints           1
      bInterfaceClass         1 Audio
      bInterfaceSubClass      2 Streaming
      bInterfaceProtocol      0 
      iInterface              0 
      AudioStreaming Interface Descriptor:
        bLength                 7
        bDescriptorType        36
        bDescriptorSubtype      1 (AS_GENERAL)
        bTerminalLink           4
        bDelay                  1 frames
        wFormatTag              1 PCM
      AudioStreaming Interface Descriptor:
        bLength                11
        bDescriptorType        36
        bDescriptorSubtype      2 (FORMAT_TYPE)
        bFormatType             1 (FORMAT_TYPE_I)
        bNrChannels             2
        bSubframeSize           2
        bBitResolution         16
        bSamFreqType            1 Discrete
        tSamFreq[ 0]        44100
      Endpoint Descriptor:
        bLength                 9
        bDescriptorType         5
        bEndpointAddress     0x82  EP 2 IN
        bmAttributes            5
          Transfer Type            Isochronous
          Synch Type               Asynchronous
          Usage Type               Data
        wMaxPacketSize     0x00c0  1x 192 bytes
        bInterval               1
        bRefresh                0
        bSynchAddress           0
        AudioControl Endpoint Descriptor:
          bLength                 7
          bDescriptorType        37
          bDescriptorSubtype      1 (EP_GENERAL)
          bmAttributes         0x00
          bLockDelayUnits         0 Undefined
          wLockDelay              0 Undefined
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        3
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass    255 Vendor Specific Subclass
      bInterfaceProtocol      0 
      iInterface              0 
      ** UNRECOGNIZED:  07 24 01 00 01 25 00
      ** UNRECOGNIZED:  06 24 02 01 10 03
      ** UNRECOGNIZED:  09 24 03 02 40 01 10 01 00
      ** UNRECOGNIZED:  09 24 03 01 30 01 20 01 04
      ** UNRECOGNIZED:  06 24 02 02 20 00
      Endpoint Descriptor:
        bLength                 9
        bDescriptorType         5
        bEndpointAddress     0x04  EP 4 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               0
        bRefresh                0
        bSynchAddress           0
      Endpoint Descriptor:
        bLength                 9
        bDescriptorType         5
        bEndpointAddress     0x85  EP 5 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               0
        bRefresh                0
        bSynchAddress           0
Device Status:     0x0001
  Self Powered

[-- Attachment #3: Type: text/plain, Size: 0 bytes --]



^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: Alsa Support for Korg Pandora Mini, Vox ToneLab ST
  2011-05-14 20:34           ` Frédéric Jaume
@ 2011-05-15 13:12             ` Daniel Mack
  2011-05-16  6:56               ` Daniel Mack
  0 siblings, 1 reply; 23+ messages in thread
From: Daniel Mack @ 2011-05-15 13:12 UTC (permalink / raw)
  To: Frédéric Jaume; +Cc: Grant Diffey, Clemens Ladisch, alsa-devel

[-- Attachment #1: Type: text/plain, Size: 423 bytes --]

2011/5/14 Frédéric Jaume <frederic.jaume@gmail.com>:
> Hi!
>
> Here's the "lsusb -v" for the Korg Pandora PX5D, attached. Hope this helps.

The MIDI part of the descriptors is clearly marked as vendor specific,
so there is nothing the driver can do about this, except for adding a
quirk.

Assuming the MIDI interface is class compliant, the following patch
should help. Can you give it a try?

Thanks,
Daniel

[-- Attachment #2: 0001-ALSA-usb-audio-Add-quirk-for-KORG-PANDORA-PX5D-MIDI-.patch --]
[-- Type: application/octet-stream, Size: 925 bytes --]

From 048833d02925c4378f9138e6765653a4bfd07265 Mon Sep 17 00:00:00 2001
From: Daniel Mack <zonque@gmail.com>
Date: Sun, 15 May 2011 15:08:17 +0200
Subject: [PATCH] ALSA: usb-audio: Add quirk for KORG PANDORA PX5D MIDI interface

Signed-off-by: Daniel Mack <zonque@gmail.com>
---
 sound/usb/quirks-table.h |   11 +++++++++++
 1 files changed, 11 insertions(+), 0 deletions(-)

diff --git a/sound/usb/quirks-table.h b/sound/usb/quirks-table.h
index 5c1a176..779e8ad 100644
--- a/sound/usb/quirks-table.h
+++ b/sound/usb/quirks-table.h
@@ -2179,6 +2179,17 @@ YAMAHA_DEVICE(0x7010, "UB99"),
 	}
 },
 
+/* KORG devices */
+{
+	USB_DEVICE(0x0944, 0x0200),
+	.driver_info = (unsigned long) & (const struct snd_usb_audio_quirk) {
+		.vendor_name = "KORG, Inc.",
+		/* .product_name = "PANDORA PX5D", */
+		.ifnum = 3,
+		.type = QUIRK_MIDI_STANDARD_INTERFACE,
+	}
+},
+
 /* AKAI devices */
 {
 	USB_DEVICE(0x09e8, 0x0062),
-- 
1.7.1


[-- Attachment #3: Type: text/plain, Size: 0 bytes --]



^ permalink raw reply related	[flat|nested] 23+ messages in thread

* Re: Alsa Support for Korg Pandora Mini, Vox ToneLab ST
  2011-05-14 18:16         ` Daniel Mack
  2011-05-14 20:34           ` Frédéric Jaume
@ 2011-05-15 17:54           ` Grant Diffey
  2011-05-15 20:43             ` Daniel Mack
  1 sibling, 1 reply; 23+ messages in thread
From: Grant Diffey @ 2011-05-15 17:54 UTC (permalink / raw)
  To: Daniel Mack; +Cc: Frédéric Jaume, alsa-devel, Clemens Ladisch

On Sun, May 15, 2011 at 4:16 AM, Daniel Mack <zonque@gmail.com> wrote:

> On Sat, May 14, 2011 at 7:24 PM, Daniel Mack <zonque@gmail.com> wrote:
> > 2011/5/14 Grant Diffey <gdiffey@gmail.com>:
> >> HI everyone
> >>
> >> Is this possibly related to the usb midi regression felix and members of
> >> this list were discussing a while ago with the fast track ultra which is
> >> another usb composite device?
> >
> > Possibly, yes. A dump generated by "lsusb -v" with this device
> > attached would help.
>
> And just guessing, but does reverting 7b6717e ("ALSA: usb-audio:
> Assume first control interface is for audio") help such devices?
>
>
> Daniel
>
So I reverted  7b6717e and... Nope. still no midi ports.


Kernel messages are:

[  131.484053] usb 3-1: new high speed USB device using ehci_hcd and address
3
[  131.617753] usb 3-1: config 1 interface 3 altsetting 0 bulk endpoint 0x7
has invalid maxpacket 8
[  131.617760] usb 3-1: config 1 interface 3 altsetting 0 bulk endpoint 0x87
has invalid maxpacket 8
[  131.618750] usb 3-1: New USB device found, idVendor=0763, idProduct=2080
[  131.618754] usb 3-1: New USB device strings: Mfr=1, Product=2,
SerialNumber=0
[  131.618756] usb 3-1: Product: Fast Track Ultra
[  131.618758] usb 3-1: Manufacturer: M-Audio
[  132.767312] usbcore: registered new interface driver snd-usb-audio

And amidi -l reports

nevyn@cetacea:~/linux$ amidi -l
Dir Device    Name

the hack mentioned earlier of setting the quirk STANDARD_MIDI_INTERFACE that
clemens suggested does work but I'm not sure it's the "right" answer to the
problem.

Grant

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: Alsa Support for Korg Pandora Mini, Vox ToneLab ST
  2011-05-15 17:54           ` Grant Diffey
@ 2011-05-15 20:43             ` Daniel Mack
  2011-05-15 21:30               ` Daniel Mack
  2011-05-15 23:22               ` Grant Diffey
  0 siblings, 2 replies; 23+ messages in thread
From: Daniel Mack @ 2011-05-15 20:43 UTC (permalink / raw)
  To: Grant Diffey; +Cc: Frédéric Jaume, alsa-devel, Clemens Ladisch

On Sun, May 15, 2011 at 7:54 PM, Grant Diffey <gdiffey@gmail.com> wrote:
> So I reverted  7b6717e and... Nope. still no midi ports.
>
>
> Kernel messages are:
>
> [  131.484053] usb 3-1: new high speed USB device using ehci_hcd and address
> 3
> [  131.617753] usb 3-1: config 1 interface 3 altsetting 0 bulk endpoint 0x7
> has invalid maxpacket 8
> [  131.617760] usb 3-1: config 1 interface 3 altsetting 0 bulk endpoint 0x87
> has invalid maxpacket 8
> [  131.618750] usb 3-1: New USB device found, idVendor=0763, idProduct=2080
> [  131.618754] usb 3-1: New USB device strings: Mfr=1, Product=2,
> SerialNumber=0
> [  131.618756] usb 3-1: Product: Fast Track Ultra
> [  131.618758] usb 3-1: Manufacturer: M-Audio
> [  132.767312] usbcore: registered new interface driver snd-usb-audio
>
> And amidi -l reports
>
> nevyn@cetacea:~/linux$ amidi -l
> Dir Device    Name
>
> the hack mentioned earlier of setting the quirk STANDARD_MIDI_INTERFACE that
> clemens suggested does work but I'm not sure it's the "right" answer to the
> problem.

For the Fasttrack, this shouldn't be necessary, no. Can you send the
full output of "lsusb -v", please? The sniplet you posted in your
orignial message only contained the interface.

For the Korg Pandora interface though, a quirk is certainly needed, as
the interface is marked as vendor specific (0xff).


Daniel

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: Alsa Support for Korg Pandora Mini, Vox ToneLab ST
  2011-05-15 20:43             ` Daniel Mack
@ 2011-05-15 21:30               ` Daniel Mack
  2011-05-16  2:55                 ` Grant Diffey
  2011-05-15 23:22               ` Grant Diffey
  1 sibling, 1 reply; 23+ messages in thread
From: Daniel Mack @ 2011-05-15 21:30 UTC (permalink / raw)
  To: Grant Diffey; +Cc: Frédéric Jaume, alsa-devel, Clemens Ladisch

[-- Attachment #1: Type: text/plain, Size: 1157 bytes --]

On Sun, May 15, 2011 at 10:43 PM, Daniel Mack <zonque@gmail.com> wrote:
> On Sun, May 15, 2011 at 7:54 PM, Grant Diffey <gdiffey@gmail.com> wrote:
>> So I reverted  7b6717e and... Nope. still no midi ports.
>>
>>
>> Kernel messages are:
>>
>> [  131.484053] usb 3-1: new high speed USB device using ehci_hcd and address
>> 3
>> [  131.617753] usb 3-1: config 1 interface 3 altsetting 0 bulk endpoint 0x7
>> has invalid maxpacket 8
>> [  131.617760] usb 3-1: config 1 interface 3 altsetting 0 bulk endpoint 0x87
>> has invalid maxpacket 8
>> [  131.618750] usb 3-1: New USB device found, idVendor=0763, idProduct=2080
>> [  131.618754] usb 3-1: New USB device strings: Mfr=1, Product=2,
>> SerialNumber=0
>> [  131.618756] usb 3-1: Product: Fast Track Ultra
>> [  131.618758] usb 3-1: Manufacturer: M-Audio
>> [  132.767312] usbcore: registered new interface driver snd-usb-audio
>>
>> And amidi -l reports
>>
>> nevyn@cetacea:~/linux$ amidi -l

Attached is a patch that adds some debug output. If you could apply
that and report what the kernel logs during the probe of the device,
that would be appreciated.


Thanks,
Daniel

[-- Attachment #2: snd-usb-midi-debug.diff --]
[-- Type: application/octet-stream, Size: 1698 bytes --]

diff --git a/sound/usb/card.c b/sound/usb/card.c
index a90662a..1a5b620 100644
--- a/sound/usb/card.c
+++ b/sound/usb/card.c
@@ -141,6 +141,8 @@ static int snd_usb_create_stream(struct snd_usb_audio *chip, int ctrlif, int int
 	struct usb_interface_descriptor *altsd;
 	struct usb_interface *iface = usb_ifnum_to_if(dev, interface);
 
+printk(KERN_ERR "%s() interface %d\n", __func__, interface);
+
 	if (!iface) {
 		snd_printk(KERN_ERR "%d:%u:%d : does not exist\n",
 			   dev->devnum, ctrlif, interface);
@@ -148,16 +150,18 @@ static int snd_usb_create_stream(struct snd_usb_audio *chip, int ctrlif, int int
 	}
 
 	if (usb_interface_claimed(iface)) {
-		snd_printdd(KERN_INFO "%d:%d:%d: skipping, already claimed\n",
+		snd_printk(KERN_ERR "%d:%d:%d: skipping, already claimed\n",
 						dev->devnum, ctrlif, interface);
 		return -EINVAL;
 	}
 
 	alts = &iface->altsetting[0];
 	altsd = get_iface_desc(alts);
+printk(KERN_ERR "%s() .. bInterfaceClass %d bInterfaceSubClass %d\n", __func__, altsd->bInterfaceClass, altsd->bInterfaceSubClass);
 	if ((altsd->bInterfaceClass == USB_CLASS_AUDIO ||
 	     altsd->bInterfaceClass == USB_CLASS_VENDOR_SPEC) &&
 	    altsd->bInterfaceSubClass == USB_SUBCLASS_MIDISTREAMING) {
+printk(KERN_ERR "%s(): creating MIDI interface\n", __func__);
 		int err = snd_usbmidi_create(chip->card, iface,
 					     &chip->midi_list, NULL);
 		if (err < 0) {
@@ -236,6 +240,7 @@ static int snd_usb_create_streams(struct snd_usb_audio *chip, int ctrlif)
 			return -EINVAL;
 		}
 
+printk(KERN_ERR "%s() .. bInCollection %d\n", __func__, h1->bInCollection);
 		for (i = 0; i < h1->bInCollection; i++)
 			snd_usb_create_stream(chip, ctrlif, h1->baInterfaceNr[i]);
 

[-- Attachment #3: Type: text/plain, Size: 0 bytes --]



^ permalink raw reply related	[flat|nested] 23+ messages in thread

* Re: Alsa Support for Korg Pandora Mini, Vox ToneLab ST
  2011-05-15 20:43             ` Daniel Mack
  2011-05-15 21:30               ` Daniel Mack
@ 2011-05-15 23:22               ` Grant Diffey
  1 sibling, 0 replies; 23+ messages in thread
From: Grant Diffey @ 2011-05-15 23:22 UTC (permalink / raw)
  To: Daniel Mack; +Cc: Frédéric Jaume, alsa-devel, Clemens Ladisch

[-- Attachment #1: Type: text/plain, Size: 724 bytes --]

On Mon, May 16, 2011 at 6:43 AM, Daniel Mack <zonque@gmail.com> wrote:

> On Sun, May 15, 2011 at 7:54 PM, Grant Diffey <gdiffey@gmail.com> wrote:
> > So I reverted  7b6717e and... Nope. still no midi ports.
> >
> > the hack mentioned earlier of setting the quirk STANDARD_MIDI_INTERFACE
> that
> > clemens suggested does work but I'm not sure it's the "right" answer to
> the
> > problem.
>
> For the Fasttrack, this shouldn't be necessary, no. Can you send the
> full output of "lsusb -v", please? The sniplet you posted in your
> orignial message only contained the interface.
>
>
Attached is a full lsusb -v of the fast track ultra.

I'm currently building a kernel with the usb-midi logging patch you attached


Grant.

[-- Attachment #2: m-audio-fasttrack --]
[-- Type: application/octet-stream, Size: 9767 bytes --]


Bus 007 Device 003: ID 0763:2080 Midiman M-Audio RunTime DFU
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0        64
  idVendor           0x0763 Midiman
  idProduct          0x2080 M-Audio RunTime DFU
  bcdDevice            1.51
  iManufacturer           1 M-Audio
  iProduct                2 Fast Track Ultra
  iSerial                 0 
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength          340
    bNumInterfaces          5
    bConfigurationValue     1
    iConfiguration          0 
    bmAttributes         0xc0
      Self Powered
    MaxPower                0mA
    Interface Association:
      bLength                 8
      bDescriptorType        11
      bFirstInterface         0
      bInterfaceCount         5
      bFunctionClass        255 Vendor Specific Class
      bFunctionSubClass       1 
      bFunctionProtocol       0 
      iFunction               2 Fast Track Ultra
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           0
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass      1 
      bInterfaceProtocol      0 
      iInterface              2 Fast Track Ultra
      ** UNRECOGNIZED:  0b 24 01 00 01 34 00 03 01 02 03
      ** UNRECOGNIZED:  0c 24 02 01 03 06 00 08 03 00 00 00
      ** UNRECOGNIZED:  09 24 03 02 01 01 00 01 00
      ** UNRECOGNIZED:  0c 24 02 03 01 01 00 08 03 00 00 00
      ** UNRECOGNIZED:  09 24 03 04 03 06 00 03 00
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       0
      bNumEndpoints           0
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass      2 
      bInterfaceProtocol      0 
      iInterface              0 
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       1
      bNumEndpoints           2
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass      2 
      bInterfaceProtocol      0 
      iInterface              0 
      ** UNRECOGNIZED:  07 24 01 03 01 01 00
      ** UNRECOGNIZED:  14 24 02 01 08 03 18 04 44 ac 00 80 bb 00 88 58 01 00 77 01
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x01  EP 1 OUT
        bmAttributes            5
          Transfer Type            Isochronous
          Synch Type               Asynchronous
          Usage Type               Data
        wMaxPacketSize     0x0138  1x 312 bytes
        bInterval               1
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x82  EP 2 IN
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0003  1x 3 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        2
      bAlternateSetting       0
      bNumEndpoints           0
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass      2 
      bInterfaceProtocol      0 
      iInterface              0 
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        2
      bAlternateSetting       1
      bNumEndpoints           1
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass      2 
      bInterfaceProtocol      0 
      iInterface              0 
      ** UNRECOGNIZED:  07 24 01 02 01 01 00
      ** UNRECOGNIZED:  14 24 02 01 08 03 18 04 44 ac 00 80 bb 00 88 58 01 00 77 01
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            5
          Transfer Type            Isochronous
          Synch Type               Asynchronous
          Usage Type               Data
        wMaxPacketSize     0x0138  1x 312 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        2
      bAlternateSetting       2
      bNumEndpoints           1
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass      2 
      bInterfaceProtocol      0 
      iInterface              0 
      ** UNRECOGNIZED:  07 24 01 02 01 01 00
      ** UNRECOGNIZED:  14 24 02 01 08 03 18 04 44 ac 00 80 bb 00 88 58 01 00 77 01
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            5
          Transfer Type            Isochronous
          Synch Type               Asynchronous
          Usage Type               Data
        wMaxPacketSize     0x0138  1x 312 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        3
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass         1 Audio
      bInterfaceSubClass      3 MIDI Streaming
      bInterfaceProtocol      0 
      iInterface              5 Fast Track Ultra
      MIDIStreaming Interface Descriptor:
        bLength                 7
        bDescriptorType        36
        bDescriptorSubtype      1 (HEADER)
        bcdADC               1.00
        wTotalLength           63
      MIDIStreaming Interface Descriptor:
        bLength                 6
        bDescriptorType        36
        bDescriptorSubtype      2 (MIDI_IN_JACK)
        bJackType               1 Embedded
        bJackID                 1
        iJack                   0 
      MIDIStreaming Interface Descriptor:
        bLength                 6
        bDescriptorType        36
        bDescriptorSubtype      2 (MIDI_IN_JACK)
        bJackType               2 External
        bJackID                 2
        iJack                   0 
      MIDIStreaming Interface Descriptor:
        bLength                 8
        bDescriptorType        36
        bDescriptorSubtype      3 (MIDI_OUT_JACK)
      Warning: Descriptor too short
        bJackType               1 Embedded
        bJackID                 3
        bNrInputPins            1
        baSourceID( 0)          2
        BaSourcePin( 0)         1
        iJack                   8 
      MIDIStreaming Interface Descriptor:
        bLength                 8
        bDescriptorType        36
        bDescriptorSubtype      3 (MIDI_OUT_JACK)
      Warning: Descriptor too short
        bJackType               2 External
        bJackID                 4
        bNrInputPins            1
        baSourceID( 0)          1
        BaSourcePin( 0)         1
        iJack                  97 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x07  EP 7 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0008  1x 8 bytes
        bInterval               8
        MIDIStreaming Endpoint Descriptor:
          bLength                 5
          bDescriptorType        37
          bDescriptorSubtype      1 (GENERAL)
          bNumEmbMIDIJack         1
          baAssocJackID( 0)       1
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x87  EP 7 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0008  1x 8 bytes
        bInterval               0
        MIDIStreaming Endpoint Descriptor:
          bLength                 5
          bDescriptorType        37
          bDescriptorSubtype      1 (GENERAL)
          bNumEmbMIDIJack         1
          baAssocJackID( 0)       3
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        4
      bAlternateSetting       0
      bNumEndpoints           0
      bInterfaceClass       254 Application Specific Interface
      bInterfaceSubClass      1 Device Firmware Update
      bInterfaceProtocol      0 
      iInterface              7 M-Audio DFU
      Device Firmware Upgrade Interface Descriptor:
        bLength                             9
        bDescriptorType                    33
        bmAttributes                        1
          Will Not Detach
          Manifestation Intolerant
          Upload Unsupported
          Download Supported
        wDetachTimeout                   2000 milliseconds
        wTransferSize                    1024 bytes
        bcdDFUVersion                   1.10
Device Qualifier (for other device speed):
  bLength                10
  bDescriptorType         6
  bcdUSB               2.00
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0        64
  bNumConfigurations      1
Device Status:     0x0001
  Self Powered

[-- Attachment #3: Type: text/plain, Size: 0 bytes --]



^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: Alsa Support for Korg Pandora Mini, Vox ToneLab ST
  2011-05-15 21:30               ` Daniel Mack
@ 2011-05-16  2:55                 ` Grant Diffey
  2011-05-16  6:48                   ` Daniel Mack
  0 siblings, 1 reply; 23+ messages in thread
From: Grant Diffey @ 2011-05-16  2:55 UTC (permalink / raw)
  To: Daniel Mack; +Cc: alsa-devel, Clemens Ladisch

On Mon, May 16, 2011 at 7:30 AM, Daniel Mack <zonque@gmail.com> wrote:

> On Sun, May 15, 2011 at 10:43 PM, Daniel Mack <zonque@gmail.com> wrote:
> > On Sun, May 15, 2011 at 7:54 PM, Grant Diffey <gdiffey@gmail.com> wrote:
> >> So I reverted  7b6717e and... Nope. still no midi ports.
> >>
> >>
> >> Kernel messages are:
> >>
> >> [  131.484053] usb 3-1: new high speed USB device using ehci_hcd and
> address
> >> 3
> >> [  131.617753] usb 3-1: config 1 interface 3 altsetting 0 bulk endpoint
> 0x7
> >> has invalid maxpacket 8
> >> [  131.617760] usb 3-1: config 1 interface 3 altsetting 0 bulk endpoint
> 0x87
> >> has invalid maxpacket 8
> >> [  131.618750] usb 3-1: New USB device found, idVendor=0763,
> idProduct=2080
> >> [  131.618754] usb 3-1: New USB device strings: Mfr=1, Product=2,
> >> SerialNumber=0
> >> [  131.618756] usb 3-1: Product: Fast Track Ultra
> >> [  131.618758] usb 3-1: Manufacturer: M-Audio
> >> [  132.767312] usbcore: registered new interface driver snd-usb-audio
> >>
> >> And amidi -l reports
> >>
> >> nevyn@cetacea:~/linux$ amidi -l
>
> Attached is a patch that adds some debug output. If you could apply
> that and report what the kernel logs during the probe of the device,
> that would be appreciated.
>
>
> Nothing is leaping out at me after building with he patch above...

[ 1025.380150] usb 4-1: new high speed USB device using ehci_hcd and address
4
[ 1025.513756] usb 4-1: config 1 interface 3 altsetting 0 bulk endpoint 0x7
has invalid maxpacket 8
[ 1025.513771] usb 4-1: config 1 interface 3 altsetting 0 bulk endpoint 0x87
has invalid maxpacket 8
[ 1025.514863] usb 4-1: New USB device found, idVendor=0763, idProduct=2080
[ 1025.514873] usb 4-1: New USB device strings: Mfr=1, Product=2,
SerialNumber=0
[ 1025.514881] usb 4-1: Product: Fast Track Ultra
[ 1025.514886] usb 4-1: Manufacturer: M-Audio
[ 1025.751285] usbcore: registered new interface driver snd-usb-audio


Grant

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: Alsa Support for Korg Pandora Mini, Vox ToneLab ST
  2011-05-16  2:55                 ` Grant Diffey
@ 2011-05-16  6:48                   ` Daniel Mack
  2011-05-17 13:44                     ` Felix Homann
  0 siblings, 1 reply; 23+ messages in thread
From: Daniel Mack @ 2011-05-16  6:48 UTC (permalink / raw)
  To: Grant Diffey; +Cc: alsa-devel, Clemens Ladisch

[-- Attachment #1: Type: text/plain, Size: 1800 bytes --]

On Mon, May 16, 2011 at 4:55 AM, Grant Diffey <gdiffey@gmail.com> wrote:
> On Mon, May 16, 2011 at 7:30 AM, Daniel Mack <zonque@gmail.com> wrote:
>> Attached is a patch that adds some debug output. If you could apply
>> that and report what the kernel logs during the probe of the device,
>> that would be appreciated.
>>
>>
> Nothing is leaping out at me after building with he patch above...

Ok, so the reason is clear now to me and it has to do with the way the
device is matched by the driver. Basically, the only thing the drivers
matches on is a standard audio control interface. If that is found,
the USB core calls it to handle that specific interface. Once a
control header is found, it is iterated and MIDI devices are created
when a specific interface associated to the control header is found.

The problem in your case is that the device is matched with a
USB_DEVICE() macro now with no further hints in the quirks table,
which makes the USB core hand over the whole device to the driver, and
not individual interfaces. Because the assumption is that if a driver
announces to handle the whole thing, it knows what it's doing.

In the USB audio driver though, we handle that case by defining a fix
behaviour, which is that only interfaces listed in the quirk are
actually being looked at.

In earlier versions of the driver, the whole quirk for this device was
missing, and hence the last, more generic quirk to look for
MIDI_STREAMING interfaces was applied (the last one in
quirks-table.h). Hence it worked back then but not today.

The solution is most probably rather simple by handling the Fasttrack
as composite device that has non-standard and standard interfaces
mixed. There is a macro for that which we just need to use.

Can you give the attached patch a change?

HTH,
Daniel

[-- Attachment #2: fasttrack-composite.diff --]
[-- Type: application/octet-stream, Size: 445 bytes --]

diff --git a/sound/usb/quirks-table.h b/sound/usb/quirks-table.h
index a56fbd8..d8c47f2 100644
--- a/sound/usb/quirks-table.h
+++ b/sound/usb/quirks-table.h
@@ -1979,7 +1979,7 @@ YAMAHA_DEVICE(0x7010, "UB99"),
 	}
 },
 {
-	USB_DEVICE(0x0763, 0x2080),
+	USB_DEVICE_VENDOR_SPEC(0x0763, 0x2080),
 	.driver_info = (unsigned long) & (const struct snd_usb_audio_quirk) {
 		/* .vendor_name = "M-Audio", */
 		/* .product_name = "Fast Track Ultra", */

[-- Attachment #3: Type: text/plain, Size: 0 bytes --]



^ permalink raw reply related	[flat|nested] 23+ messages in thread

* Re: Alsa Support for Korg Pandora Mini, Vox ToneLab ST
  2011-05-15 13:12             ` Daniel Mack
@ 2011-05-16  6:56               ` Daniel Mack
  2011-05-16 12:57                 ` Felix Homann
  2011-05-16 15:20                 ` Grant Diffey
  0 siblings, 2 replies; 23+ messages in thread
From: Daniel Mack @ 2011-05-16  6:56 UTC (permalink / raw)
  To: Frédéric Jaume; +Cc: Grant Diffey, Clemens Ladisch, alsa-devel

[-- Attachment #1: Type: text/plain, Size: 632 bytes --]

2011/5/15 Daniel Mack <zonque@gmail.com>:
> 2011/5/14 Frédéric Jaume <frederic.jaume@gmail.com>:
>> Hi!
>>
>> Here's the "lsusb -v" for the Korg Pandora PX5D, attached. Hope this helps.
>
> The MIDI part of the descriptors is clearly marked as vendor specific,
> so there is nothing the driver can do about this, except for adding a
> quirk.
>
> Assuming the MIDI interface is class compliant, the following patch
> should help. Can you give it a try?

For the Pandora PX5D, we also have to use the USB_DEVICE_VENDOR_SPEC
macro, so the class compliant audio interfaces are not ignored by
adding the quirk.

Daniel

[-- Attachment #2: 0001-ALSA-usb-audio-Add-quirk-for-KORG-PANDORA-PX5D-MIDI-.patch --]
[-- Type: application/octet-stream, Size: 940 bytes --]

From 7e8ad2e68a10621bb0dbcfc06e6afd661e291ad8 Mon Sep 17 00:00:00 2001
From: Daniel Mack <zonque@gmail.com>
Date: Sun, 15 May 2011 15:08:17 +0200
Subject: [PATCH] ALSA: usb-audio: Add quirk for KORG PANDORA PX5D MIDI
 interface

Signed-off-by: Daniel Mack <zonque@gmail.com>
---
 sound/usb/quirks-table.h |   11 +++++++++++
 1 files changed, 11 insertions(+), 0 deletions(-)

diff --git a/sound/usb/quirks-table.h b/sound/usb/quirks-table.h
index 5c1a176..78c3e8d 100644
--- a/sound/usb/quirks-table.h
+++ b/sound/usb/quirks-table.h
@@ -2179,6 +2179,17 @@ YAMAHA_DEVICE(0x7010, "UB99"),
 	}
 },
 
+/* KORG devices */
+{
+	USB_DEVICE_VENDOR_SPEC(0x0944, 0x0200),
+	.driver_info = (unsigned long) & (const struct snd_usb_audio_quirk) {
+		.vendor_name = "KORG, Inc.",
+		/* .product_name = "PANDORA PX5D", */
+		.ifnum = 3,
+		.type = QUIRK_MIDI_STANDARD_INTERFACE,
+	}
+},
+
 /* AKAI devices */
 {
 	USB_DEVICE(0x09e8, 0x0062),
-- 
1.7.5.1


[-- Attachment #3: Type: text/plain, Size: 0 bytes --]



^ permalink raw reply related	[flat|nested] 23+ messages in thread

* Re: Alsa Support for Korg Pandora Mini, Vox ToneLab ST
  2011-05-16  6:56               ` Daniel Mack
@ 2011-05-16 12:57                 ` Felix Homann
  2011-05-16 15:20                 ` Grant Diffey
  1 sibling, 0 replies; 23+ messages in thread
From: Felix Homann @ 2011-05-16 12:57 UTC (permalink / raw)
  To: alsa-devel

Hi Daniel,

I've just stumbled across this thread and saw that it relates to the 
Fast Track Ultra devices. I wanted to give your patch a try but the 
combination of alsa-driver/alsa-kernel from git won't build at the 
moment (error: implicit declaration of function 
'fw_iso_resource_manage'). I let you know about the patch when this 
issue is resolved!

Regards,

Felix

Am 16.05.2011 08:56, schrieb Daniel Mack:
> 2011/5/15 Daniel Mack<zonque@gmail.com>:
>> 2011/5/14 Frédéric Jaume<frederic.jaume@gmail.com>:
>>> Hi!
>>>
>>> Here's the "lsusb -v" for the Korg Pandora PX5D, attached. Hope this helps.
>> The MIDI part of the descriptors is clearly marked as vendor specific,
>> so there is nothing the driver can do about this, except for adding a
>> quirk.
>>
>> Assuming the MIDI interface is class compliant, the following patch
>> should help. Can you give it a try?
> For the Pandora PX5D, we also have to use the USB_DEVICE_VENDOR_SPEC
> macro, so the class compliant audio interfaces are not ignored by
> adding the quirk.
>
> Daniel
>
>
> _______________________________________________
> Alsa-devel mailing list
> Alsa-devel@alsa-project.org
> http://mailman.alsa-project.org/mailman/listinfo/alsa-devel

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: Alsa Support for Korg Pandora Mini, Vox ToneLab ST
  2011-05-16  6:56               ` Daniel Mack
  2011-05-16 12:57                 ` Felix Homann
@ 2011-05-16 15:20                 ` Grant Diffey
  2011-05-16 15:25                   ` Daniel Mack
  1 sibling, 1 reply; 23+ messages in thread
From: Grant Diffey @ 2011-05-16 15:20 UTC (permalink / raw)
  To: Daniel Mack
  Cc: Frédéric Jaume, alsa-devel, Clemens Ladisch,
	Felix Homann

2011/5/16 Daniel Mack <zonque@gmail.com>

> 2011/5/15 Daniel Mack <zonque@gmail.com>:
> > 2011/5/14 Frédéric Jaume <frederic.jaume@gmail.com>:
> >> Hi!
> >>
> >> Here's the "lsusb -v" for the Korg Pandora PX5D, attached. Hope this
> helps.
> >
> > The MIDI part of the descriptors is clearly marked as vendor specific,
> > so there is nothing the driver can do about this, except for adding a
> > quirk.
> >
> > Assuming the MIDI interface is class compliant, the following patch
> > should help. Can you give it a try?
>
> For the Pandora PX5D, we also have to use the USB_DEVICE_VENDOR_SPEC
> macro, so the class compliant audio interfaces are not ignored by
> adding the quirk.
>
> Daniel
>

A winner.

[  115.420064] usb 4-1: new high speed USB device using ehci_hcd and address
3
[  115.553783] usb 4-1: config 1 interface 3 altsetting 0 bulk endpoint 0x7
has invalid maxpacket 8
[  115.553789] usb 4-1: config 1 interface 3 altsetting 0 bulk endpoint 0x87
has invalid maxpacket 8
[  115.554896] usb 4-1: New USB device found, idVendor=0763, idProduct=2080
[  115.554898] usb 4-1: New USB device strings: Mfr=1, Product=2,
SerialNumber=0
[  115.554901] usb 4-1: Product: Fast Track Ultra
[  115.554903] usb 4-1: Manufacturer: M-Audio
nevyn@cetacea:~/linux$ amidi -l
Dir Device    Name
IO  hw:1,0,0  Fast Track Ultra MIDI 1

Huzzah! Please commit. your 8 character diff ;) oh. and you probably should
change the 8R at the same time given it's essentially the same hardware with
different analog bits. (8 pre's instead of 4)

diff --git a/sound/usb/quirks-table.h b/sound/usb/quirks-table.h
index 196c753..6d7b357 100644
--- a/sound/usb/quirks-table.h
+++ b/sound/usb/quirks-table.h
@@ -1926,7 +1926,7 @@ YAMAHA_DEVICE(0x7010, "UB99"),
        }
 },
 {
-       USB_DEVICE(0x0763, 0x2080),
+       USB_DEVICE_VENDOR_SPEC(0x0763, 0x2080),
        .driver_info = (unsigned long) & (const struct snd_usb_audio_quirk)
{
                /* .vendor_name = "M-Audio", */
                /* .product_name = "Fast Track Ultra", */
@@ -1993,7 +1993,7 @@ YAMAHA_DEVICE(0x7010, "UB99"),
        }
 },
 {
-       USB_DEVICE(0x0763, 0x2081),
+       USB_DEVICE_VENDOR_SPEC(0x0763, 0x2081),
        .driver_info = (unsigned long) & (const struct snd_usb_audio_quirk)
{
                /* .vendor_name = "M-Audio", */
                /* .product_name = "Fast Track Ultra 8R", */



Grant

^ permalink raw reply related	[flat|nested] 23+ messages in thread

* Re: Alsa Support for Korg Pandora Mini, Vox ToneLab ST
  2011-05-16 15:20                 ` Grant Diffey
@ 2011-05-16 15:25                   ` Daniel Mack
  2011-05-16 18:39                     ` Frédéric Jaume
  0 siblings, 1 reply; 23+ messages in thread
From: Daniel Mack @ 2011-05-16 15:25 UTC (permalink / raw)
  To: Grant Diffey
  Cc: Frédéric Jaume, alsa-devel, Clemens Ladisch,
	Felix Homann

On Mon, May 16, 2011 at 5:20 PM, Grant Diffey <gdiffey@gmail.com> wrote:
> A winner.
>
> [  115.420064] usb 4-1: new high speed USB device using ehci_hcd and address
> 3
> [  115.553783] usb 4-1: config 1 interface 3 altsetting 0 bulk endpoint 0x7
> has invalid maxpacket 8
> [  115.553789] usb 4-1: config 1 interface 3 altsetting 0 bulk endpoint 0x87
> has invalid maxpacket 8
> [  115.554896] usb 4-1: New USB device found, idVendor=0763, idProduct=2080
> [  115.554898] usb 4-1: New USB device strings: Mfr=1, Product=2,
> SerialNumber=0
> [  115.554901] usb 4-1: Product: Fast Track Ultra
> [  115.554903] usb 4-1: Manufacturer: M-Audio
> nevyn@cetacea:~/linux$ amidi -l
> Dir Device    Name
> IO  hw:1,0,0  Fast Track Ultra MIDI 1
>
> Huzzah! Please commit. your 8 character diff ;) oh. and you probably should
> change the 8R at the same time given it's essentially the same hardware with
> different analog bits. (8 pre's instead of 4)

Nice, thank for testing :)

Takashi, I'm currently collecting some patches and will send them in
one go soonish.

And Frédéric, if you could report that the Pandora works with the
patch I sent this morning, it will also be part of this series.


Daniel

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: Alsa Support for Korg Pandora Mini, Vox ToneLab ST
  2011-05-16 15:25                   ` Daniel Mack
@ 2011-05-16 18:39                     ` Frédéric Jaume
  0 siblings, 0 replies; 23+ messages in thread
From: Frédéric Jaume @ 2011-05-16 18:39 UTC (permalink / raw)
  To: Daniel Mack; +Cc: Grant Diffey, Clemens Ladisch, alsa-devel, Felix Homann

Hi everyone!

Daniel, I successfully applied the patch for the Korg Pandora PX5D
(USB_DEVICE_VENDOR_SPEC), and got both working USB Audio and USB Midi from
the Pandora! Got audio from the Pandora and was able to send midi notes to
it and get sound back. It's a winner!

Fred.

2011/5/16 Daniel Mack <zonque@gmail.com>

> On Mon, May 16, 2011 at 5:20 PM, Grant Diffey <gdiffey@gmail.com> wrote:
> > A winner.
> >
> > [  115.420064] usb 4-1: new high speed USB device using ehci_hcd and
> address
> > 3
> > [  115.553783] usb 4-1: config 1 interface 3 altsetting 0 bulk endpoint
> 0x7
> > has invalid maxpacket 8
> > [  115.553789] usb 4-1: config 1 interface 3 altsetting 0 bulk endpoint
> 0x87
> > has invalid maxpacket 8
> > [  115.554896] usb 4-1: New USB device found, idVendor=0763,
> idProduct=2080
> > [  115.554898] usb 4-1: New USB device strings: Mfr=1, Product=2,
> > SerialNumber=0
> > [  115.554901] usb 4-1: Product: Fast Track Ultra
> > [  115.554903] usb 4-1: Manufacturer: M-Audio
> > nevyn@cetacea:~/linux$ amidi -l
> > Dir Device    Name
> > IO  hw:1,0,0  Fast Track Ultra MIDI 1
> >
> > Huzzah! Please commit. your 8 character diff ;) oh. and you probably
> should
> > change the 8R at the same time given it's essentially the same hardware
> with
> > different analog bits. (8 pre's instead of 4)
>
> Nice, thank for testing :)
>
> Takashi, I'm currently collecting some patches and will send them in
> one go soonish.
>
> And Frédéric, if you could report that the Pandora works with the
> patch I sent this morning, it will also be part of this series.
>
>
> Daniel
>

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: Alsa Support for Korg Pandora Mini, Vox ToneLab ST
  2011-05-16  6:48                   ` Daniel Mack
@ 2011-05-17 13:44                     ` Felix Homann
  0 siblings, 0 replies; 23+ messages in thread
From: Felix Homann @ 2011-05-17 13:44 UTC (permalink / raw)
  To: Daniel Mack; +Cc: alsa-devel, Clemens Ladisch

Hi Daniel,

Am 16.05.2011 08:48, schrieb Daniel Mack:
> The solution is most probably rather simple by handling the Fasttrack
> as composite device that has non-standard and standard interfaces
> mixed. There is a macro for that which we just need to use.
>
> Can you give the attached patch a change?
>
> HTH,
> Daniel
>

as expected, the patch works for the Fast Track Ultra 8R (0x0763, 
0x2081), too.

Thanks,

Felix

^ permalink raw reply	[flat|nested] 23+ messages in thread

end of thread, other threads:[~2011-05-17 13:44 UTC | newest]

Thread overview: 23+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-04-19  7:39 Alsa Support for Korg Pandora Mini, Vox ToneLab ST Pawel Siemienski
2011-04-23  8:52 ` Daniel Mack
2011-05-12 16:01 ` Daniel Mack
2011-05-13  9:25   ` Pawel Siemienski
2011-05-13 12:13     ` Daniel Mack
2011-05-14 16:57   ` Frédéric Jaume
2011-05-14 17:13     ` Grant Diffey
2011-05-14 17:24       ` Daniel Mack
2011-05-14 18:16         ` Daniel Mack
2011-05-14 20:34           ` Frédéric Jaume
2011-05-15 13:12             ` Daniel Mack
2011-05-16  6:56               ` Daniel Mack
2011-05-16 12:57                 ` Felix Homann
2011-05-16 15:20                 ` Grant Diffey
2011-05-16 15:25                   ` Daniel Mack
2011-05-16 18:39                     ` Frédéric Jaume
2011-05-15 17:54           ` Grant Diffey
2011-05-15 20:43             ` Daniel Mack
2011-05-15 21:30               ` Daniel Mack
2011-05-16  2:55                 ` Grant Diffey
2011-05-16  6:48                   ` Daniel Mack
2011-05-17 13:44                     ` Felix Homann
2011-05-15 23:22               ` Grant Diffey

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).