Alsa-Devel Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: "Clemens Ladisch" <cladisch@fastmail.net>
To: James Courtier-Dutton <James@superbug.co.uk>,
	ALSA development <alsa-devel@alsa-project.org>
Cc: Aleksander <aleksander@krediidiinfo.ee>
Subject: Re: E-MU 0404/0202 USB implementation
Date: Tue, 18 Sep 2007 09:40:42 +0200	[thread overview]
Message-ID: <1190101242.19934.1211206975@webmail.messagingengine.com> (raw)
In-Reply-To: <46EEF2F1.7030404@superbug.co.uk>

James Courtier-Dutton wrote:
> I am looking to implement support for the E-Mu USB cards.
> The card is basically following a mix of USB 1.0 and USB 2.0 descriptors.
> 
> The bInterfaceClass field of the standard interface descriptors for the
> Audio Control, Audio Streaming, and MIDI Streaming interfaces are set to
> 0xFF (vendor-specific) instead of 0x01 (USB Audio).
> 
> Can I put in a quirk into the snd-usb-audio driver to handle this?

There are no class-specific descriptors, so you cannot simply use an
AUDIO_STANDARD_INTERFACE quirk.

It would be possible to hardcode a specfifc sample format with an
AUDIO_FIXED_ENDPOINT quirk, but this doesn't work when there is more
than one alternate setting.

I think you have to manually add several sample formats, like in the
UA-1000 quirk, but calling add_audio_endpoint() several times.

The asynchronous feedback of the output endpoints should work; it does
with the SB Audigy 2 NX in high speed mode.

Please note that the descriptors may be different in full speed mode.

QUIRK_MIDI_FIXED_ENDPOINT should work for interface 3.

> The card also has customised controls. Can one add those to
> snd-usb-audio, or would it be better to add those to a totally new
> driver?

usbmixer.c currently doesn't have a mechanism to add mixer controls that
are not listed in the descriptors, but it should be possible to create
the data structures to describe those.

A totally new driver might be a good idea if the core part of usbaudio.c
were in a library.  I always planned to do that when I'd find some time.


Regards,
Clemens

      reply	other threads:[~2007-09-18  7:40 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-09-17 21:34 E-MU 0404/0202 USB implementation James Courtier-Dutton
2007-09-18  7:40 ` Clemens Ladisch [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1190101242.19934.1211206975@webmail.messagingengine.com \
    --to=cladisch@fastmail.net \
    --cc=James@superbug.co.uk \
    --cc=aleksander@krediidiinfo.ee \
    --cc=alsa-devel@alsa-project.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox