linux/sound/firewire
Takashi Sakamoto 82755abfe8 ALSA: firewire-lib: fix wrong value for FDF field as an empty packet
This commit fix out of specification about the value of FDF field in out packet
with 'no data'. This affects blocking mode.

According to IEC 61883-6, there is two way to generate AMDTP packets include no
data in blocking mode.

Way 1. an empty packet defined in IEC 61883-1
 - Size of packet is 2 quadlets.
 - The value of FDF is sfc.
 - The packet includes only CIP headers

Way 2. a special non-empty packet defined in IEC 61883-6
 - Size of packet is following to blocking mode
 - The value of FDF is 0xff. This value is 'NO-DATA'. This means 'The receiver'
   must ignore all the data in a CIP with this FDF code'.
 - The packet includes dummy data.

But current implementation is a combination of them.
 - Size of packet is 2 (way 1)
 - FDF = 0xff (way 2)
This causes BeBoB chipset cannot sound.

This patch applies Way 1.

Signed-off-by: Takashi Sakamoto <o-takashi@sakamocchi.jp>
Cc: Acked-by: Clemens Ladisch <clemens@ladisch.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2013-11-22 15:30:46 +01:00
..
amdtp.c ALSA: firewire-lib: fix wrong value for FDF field as an empty packet 2013-11-22 15:30:46 +01:00
amdtp.h ALSA: firewire-lib: include sound/asound.h to refer to snd_pcm_format_t 2013-11-19 08:07:20 +01:00
cmp.c ALSA: firewire: extend snd_fw_transaction() 2013-10-20 22:07:57 +02:00
cmp.h ALSA: add LaCie FireWire Speakers/Griffin FireWave Surround driver 2011-03-15 08:42:22 +01:00
dice-interface.h ALSA: dice: document quadlet alignment 2013-10-20 22:07:57 +02:00
dice.c ALSA: dice: restrict the driver to playback-only devices 2013-10-20 22:07:57 +02:00
fcp.c ALSA: firewire: extend snd_fw_transaction() 2013-10-20 22:07:57 +02:00
fcp.h ALSA: add LaCie FireWire Speakers/Griffin FireWave Surround driver 2011-03-15 08:42:22 +01:00
isight.c ALSA: firewire: extend snd_fw_transaction() 2013-10-20 22:07:57 +02:00
iso-resources.c sound: Add export.h for THIS_MODULE/EXPORT_SYMBOL where needed 2011-10-31 19:31:22 -04:00
iso-resources.h firewire: octlet AT payloads can be stack-allocated 2011-05-10 22:53:44 +02:00
Kconfig ALSA: dice: restrict the driver to playback-only devices 2013-10-20 22:07:57 +02:00
lib.c ALSA: firewire: extend snd_fw_transaction() 2013-10-20 22:07:57 +02:00
lib.h ALSA: firewire: extend snd_fw_transaction() 2013-10-20 22:07:57 +02:00
Makefile ALSA: add DICE driver 2013-10-17 21:18:32 +02:00
packets-buffer.c sound: Add export.h for THIS_MODULE/EXPORT_SYMBOL where needed 2011-10-31 19:31:22 -04:00
packets-buffer.h ALSA: add LaCie FireWire Speakers/Griffin FireWave Surround driver 2011-03-15 08:42:22 +01:00
scs1x.c ALSA: firewire: extend snd_fw_transaction() 2013-10-20 22:07:57 +02:00
speakers.c Merge branch 'dice-driver-playback-only' of git://git.alsa-project.org/alsa-kprivate into for-next 2013-10-22 10:02:57 +02:00