Skip to content

Commit

Permalink
ALSA: dice: add cache of stream formats
Browse files Browse the repository at this point in the history
A previous commit 6f68826 ('ALSA: dice: purge generating channel
cache') purged cache of stream formats. DICE interface originally has
no feature to assist drivers to retrieve available formats for all of
supported sampling transmission frequencies, without changing the
frequency actually.

For later release of Dice ASICs such as TCD2210, Dice interface has
extended protocol and can support the feature. This assists drivers
to retrieve available stream formats.

This commit is a first step to regain the cache to generate PCM rules
for all of supported sampling transmission frequencies.

Signed-off-by: Takashi Sakamoto <o-takashi@sakamocchi.jp>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
  • Loading branch information
Takashi Sakamoto authored and Takashi Iwai committed May 2, 2018
1 parent 6a300dc commit 8feda7d
Showing 1 changed file with 11 additions and 0 deletions.
11 changes: 11 additions & 0 deletions sound/firewire/dice/dice.h
Original file line number Diff line number Diff line change
Expand Up @@ -63,6 +63,13 @@
*/
#define MAX_STREAMS 2

enum snd_dice_rate_mode {
SND_DICE_RATE_MODE_LOW = 0,
SND_DICE_RATE_MODE_MIDDLE,
SND_DICE_RATE_MODE_HIGH,
SND_DICE_RATE_MODE_COUNT,
};

struct snd_dice {
struct snd_card *card;
struct fw_unit *unit;
Expand All @@ -80,6 +87,10 @@ struct snd_dice {
unsigned int rsrv_offset;

unsigned int clock_caps;
unsigned int tx_pcm_chs[MAX_STREAMS][SND_DICE_RATE_MODE_COUNT];
unsigned int rx_pcm_chs[MAX_STREAMS][SND_DICE_RATE_MODE_COUNT];
unsigned int tx_midi_ports[MAX_STREAMS];
unsigned int rx_midi_ports[MAX_STREAMS];

struct fw_address_handler notification_handler;
int owner_generation;
Expand Down

0 comments on commit 8feda7d

Please sign in to comment.