An error occurred fetching the project authors.
  1. 02 Oct, 2015 6 commits
    • Takashi Sakamoto's avatar
      ALSA: firewire-tascam: add hwdep interface · e5e0c3dd
      Takashi Sakamoto authored
      This commit adds hwdep interface so as the other IEEE 1394 sound devices
      has.
      
      This interface is designed for mixer/control applications. By using this
      interface, an application can get information about firewire node, can
      lock/unlock kernel streaming and can get notification at starting/stopping
      kernel streaming.
      Signed-off-by: default avatarTakashi Sakamoto <o-takashi@sakamocchi.jp>
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      e5e0c3dd
    • Takashi Sakamoto's avatar
      ALSA: firewire-tascam: add PCM functionality · e453df44
      Takashi Sakamoto authored
      This commit adds PCM functionality to transmit/receive PCM samples.
      
      When one of PCM substreams are running or external clock source is
      selected, current sampling rate is used. Else, the sampling rate is
      changed as an userspace application requests.
      Signed-off-by: default avatarTakashi Sakamoto <o-takashi@sakamocchi.jp>
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      e453df44
    • Takashi Sakamoto's avatar
      ALSA: firewire-tascam: add streaming functionality · 35efa5c4
      Takashi Sakamoto authored
      This commit adds streaming functionality for both direction. To utilize
      the sequence of the number of data blocks in packets, full duplex with
      synchronization is applied.
      
      Besides, TASCAM FireWire series allows drivers to decide which PCM data
      channels are enabled. For convenience, this driver always enable whole the
      data channels.
      Signed-off-by: default avatarTakashi Sakamoto <o-takashi@sakamocchi.jp>
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      35efa5c4
    • Takashi Sakamoto's avatar
      ALSA: firewire-tascam: add data block processing layer · 47faeea2
      Takashi Sakamoto authored
      TASCAM FireWire series uses non-blocking transmission for AMDTP packet
      streaming, while the format of data blocks is unique.
      
      The CIP headers includes specific value in FMT field and no SYT
      information.
      
      In transmitted packets, the first data channel represents event counter,
      and the last data channel has status and control information. The rest
      has 24bit PCM samples with right padding.
      
      In received packets, all of data channels include 16, 24, 32bit PCM
      samples. There's no other kind of information.
      
      This commit adds support for this protocol. For convenience, the size of
      PCM samples in outgoing packet is limited by 16 and 24bit. The status and
      control information will be supported in future commits.
      Signed-off-by: default avatarTakashi Sakamoto <o-takashi@sakamocchi.jp>
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      47faeea2
    • Takashi Sakamoto's avatar
      ALSA: firewire-tascam: add proc node to show firmware information · 96e5fbb0
      Takashi Sakamoto authored
      TASCAM FireWire series has certain registers for firmware information.
      
      This commit adds proc node to show the information.
      Signed-off-by: default avatarTakashi Sakamoto <o-takashi@sakamocchi.jp>
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      96e5fbb0
    • Takashi Sakamoto's avatar
      ALSA: firewire-tascam: add skeleton for TASCAM FireWire series · c0949b27
      Takashi Sakamoto authored
      This commit adds a new driver for TASCAM FireWire series. In this commit,
      this driver just creates/removes card instance according to bus event.
      More functionalities will be added in following commits.
      
      TASCAM FireWire series consists of:
       * PDI 1394P23 for IEEE 1394 PHY layer
       * PDI 1394L40 for IEEE 1394 LINK layer and IEC 61883 interface
       * XILINX XC9536XL
       * XILINX Spartan-II XC2S100
       * ATMEL AT91M42800A
      
      Ilya Zimnovich had investigated TASCAM FireWire series in 2011, and
      discover some features of his FW-1804. You can see a part of his research
      in FFADO project.
      http://subversion.ffado.org/wiki/Tascam
      
      A part of my work are based on Ilya's investigation, while this series
      doesn't support the FW-1804, because of a lack of config ROM
      information and its protocol detail, especially for PCM channels.
      
      I observed that FW-1884 and FW-1082 don't work properly with 1394 OHCI
      controller based on VT6315. The controller can actually communicate packets
      to these models, while these models generate no sounds. It may be due to
      the PHY/LINK layer issues. Using 1394 OHCI controller produced by the other
      vendors such as Texas Instruments may work. Or adding another node on the
      bus.
      Signed-off-by: default avatarTakashi Sakamoto <o-takashi@sakamocchi.jp>
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      c0949b27