[alsa-devel] how to ask you to write a new ALSA driver
jean-noël chardron
rondrach at gmail.com
Fri May 22 12:04:55 CEST 2015
Thank you for your answer,
2015-05-22 11:10 GMT+02:00 Antonio Ospite <ao2 at ao2.it>:
> On Thu, 21 May 2015 12:28:00 +0200
> jean-noël chardron <rondrach at gmail.com> wrote:
>
> > hello,
> >
> > Last week I got a Komplet Audio 6 from Native intruments.
> > The driver exist in ALSA driver for this king of interface audio
> > (snd-usb-audio) (thanks for the team who write this) but for the model
> > where Id Vendor is 0x17cc and Id product is 0x1000.
> >
> > The KA6 that I got has not the same ID product (0x1001) therefore I don't
> > have any device capture even with the driver snd-usb-audio.
> >
> > The challenge is to write the modification for this new model.
> > Who could do that ?
>
> You can try yourself.
>
hum, it's indeed beyond my knowledge
>
> If you know or suspect that your device is similar to the supported ones
> look where the 0x17cc vendor id is used and try to follow the existing
> code, and try to come up with the _minimum_ amount of changes required to
> make the device work.
>
> For instance, after a "git grep 0x17cc -- sound/" I came up with this
> diff:
>
> diff --git a/sound/usb/quirks-table.h b/sound/usb/quirks-table.h
> index 2f6d3e9..d254b14 100644
> --- a/sound/usb/quirks-table.h
> +++ b/sound/usb/quirks-table.h
> @@ -2740,6 +2740,12 @@ YAMAHA_DEVICE(0x7010, "UB99"),
> .idProduct = 0x1000,
> },
> {
> + /* Komplete Audio 6 */
> + .match_flags = USB_DEVICE_ID_MATCH_DEVICE,
> + .idVendor = 0x17cc,
> + .idProduct = 0x1001,
> +},
> +{
> /* Traktor Audio 6 */
> .match_flags = USB_DEVICE_ID_MATCH_DEVICE,
> .idVendor = 0x17cc,
> diff --git a/sound/usb/quirks.c b/sound/usb/quirks.c
> index 7c5a701..2f9ee824 100644
> --- a/sound/usb/quirks.c
> +++ b/sound/usb/quirks.c
> @@ -1007,6 +1007,7 @@ int snd_usb_apply_boot_quirk(struct usb_device *dev,
> return snd_usb_accessmusic_boot_quirk(dev);
>
> case USB_ID(0x17cc, 0x1000): /* Komplete Audio 6 */
> + case USB_ID(0x17cc, 0x1001): /* Komplete Audio 6 */
> case USB_ID(0x17cc, 0x1010): /* Traktor Audio 6 */
> case USB_ID(0x17cc, 0x1020): /* Traktor Audio 10 */
> return snd_usb_nativeinstruments_boot_quirk(dev);
>
> However without knowing the device I am not sure if the second change is
> strictly necessary, or if the two are even enough.
>
> So please try to apply one of them at the time, recompile, test, and let
> us know.
>
> I have tried that you write in first with no luck.
I edit the files :
edit :quirks.c and | or quirks-table.h -> result
edit : yes and yes -> err = -11 in snd-usb-audio
edit : no yes -> driver not loading
edit : yes no -> err =-22
edit : no no -> driver load but no device capture
> > If necessary I could send log, compile kernel source and so on.
> > thanks,
>
> Keep logs before and after changes you make so that you can compare the
> result of the changes.
>
> Ciao,
> Antonio
>
> --
> Antonio Ospite
> http://ao2.it
>
> A: Because it messes up the order in which people normally read text.
> See http://en.wikipedia.org/wiki/Posting_style
> Q: Why is top-posting such a bad thing?
>
More information about the Alsa-devel
mailing list