bebob: Add support for Focusrite Saffire/SaffirePro series

This commit allows this driver to support all of models which Focusrite
produces with BeBoB chipset. They are:
 - Saffire
 - Saffire LE
 - SaffirePro 10 I/O
 - SaffirePro 26 I/O

This commit adds Focusrite specific operations, quirks for its four
functionalities.

1. Switching source of clock
2. Change sampling frequency
3. Check clock synchronization
4. Get metering information

The driver uses these functionalities to read/write specific address by async
transaction.
bebob: Add support for Terratec PHASE series

This commit allows this driver to support all of models which Terratec produced
with BeBoB chipset. They are:
 - PHASE 24 FW
 - PHASE X24 FW
 - PHASE 88 Rack FW

This commit adds Terratec specific operations, quirks for three functionalities.

1. Switching source of clock
2. Change sampling frequency
3. Check clock synchronization

The driver uses these functionalities with AV/C vendor specific commands and
AV/C Audio Subunit commands.
bebob: Add support for Yamaha GO series

This commit allows this driver to support all of models which Yamaha produced
with BeBoB chipset. They are:
 - GO44
 - GO46

This commit adds Yamaha specific operations, quirks for three functionalities.

1. Switching source of clock
2. Detecting signal in digital input
3. Check clock synchronization

The driver uses these functionalities with AV/C vendor specific commands and
AV/C Audio Subunit commands.
bebob: Add support for Presonus FIREBOX/FIREPOD

This commit allows this driver to support FIREBOX/FIREPOD which PreSonus
produced with BeBoB chipset.

This commit adds FIREBOX specific operations for switching source of clock
with AV/C Signal Cource command. FIREPOD is not tested so use normal spec.
fireworks: Add skelton for Echo Audio Fireworks based devices

This commit add a new driver with no functionality. This driver just reacts to
Firewire bus events and create/remove card instance.

Current supported devices:
 - Mackie Onyx 400F/1200F
 - Echo AudioFire8(until 2009 July)/AudioFire12
 - Echo AudioFire2/4/8(since 2009 July)/Pre8
 - Echo Fireworks 8/HDMI
 - Gibson RIP/GoldTop
fireworks: add Echo Fireworks Command and Response

Fireworks uses its own system to command/response. Previously this is over
AV/C vendor dependent command but recent firmware don't use this type. Then
command to and response from specific addresses.

The address to receive response give us an issue. When this driver allocate its
own callback function into the address, the user-land implement cannot allocate
its own callback function via Juju interface. Currently this commit don't solve
this issue. This issue must be resolved in future.
fireworks: Add stream and connection management

Fireworks transmit/receive AMDTP stream with a few quirks and manage the
connection by CMP.
fireworks: Add proc interface for debugging

This commit add proc interface to output infomation for debugging.
 - hardware capabilities
 - clock
 - meters
fireworks: Add control interface

Currently supported controls are:
 - switching source of clock
 - change sampling rate
 - change S/PDIF format
 - change Digital interface mode

They are mainly for my debugging.
fireworks: Add MIDI interface

This commit adds the functionality to capture/playback MIDI message. MIDI
message is multiplexed/demultiplexed into AMDTP stream.
fireworks: Add PCM interface

This commit adds the functionality to capture/playback PCM samples.

PCM samples are multiplexed/demultiplexed into AMDTP stream safely with stream
helper functions.
fireworks: Add hwdep interface

This is for mixer/control application in user land. The application can
lock/unlock kernel streaming or get notification at starting kernel streaming
to use hwdep interface.