1. 30 11月, 2014 1 次提交
    • T
      ALSA: dice: Split transaction functionality into a file · 7c2d4c0c
      Takashi Sakamoto 提交于
      This commit adds a file with some helper functions for transaction, and move
      some codes into the file with some arrangements.
      
      For Dice chipset, well-known FCP or AV/C commands are not used to control
      devices. It's achieved by read/write transactions into specific addresses.
      
      Dice's address area is split into 5 areas. Each area has its own role. The
      offset for each area can be got by reading head of the address area. By
      reading these areas, drivers can get to know device status. By writing these
      areas, drivers can change device status.
      
      Dice has a specific mechanism called as 'notification'. When device status is
      changed, Dice devices tells the event by sending transaction. This notification
      is sent to an address which drivers register in advance. But this causes an
      issue to drivers.
      
      To handle the notification, drivers need to allocate its own callback function
      to the address region in host controller. This region is exclusive. For the
      other applications, drivers must give a mechanism to read the received
      notification. For this purpose, Dice driver already implements hwdep interface.
      
      Dice chipset doesn't allow drivers to register several addresses. In this
      reason, when this driver is applied to a device, the other drivers should
      _not_ try to register its own address to the device.
      Signed-off-by: NTakashi Sakamoto <o-takashi@sakamocchi.jp>
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      7c2d4c0c