linux/sound/firewire/dice/dice-stream.c

// SPDX-License-Identifier: GPL-2.0-only
/*
 * dice_stream.c - a part of driver for DICE based devices
 *
 * Copyright (c) Clemens Ladisch <[email protected]>
 * Copyright (c) 2014 Takashi Sakamoto <[email protected]>
 */

#include "dice.h"

#define READY_TIMEOUT_MS
#define NOTIFICATION_TIMEOUT_MS

struct reg_params {};

const unsigned int snd_dice_rates[SND_DICE_RATES_COUNT] =;

int snd_dice_stream_get_rate_mode(struct snd_dice *dice, unsigned int rate,
				  enum snd_dice_rate_mode *mode)
{}

static int select_clock(struct snd_dice *dice, unsigned int rate)
{}

static int get_register_params(struct snd_dice *dice,
			       struct reg_params *tx_params,
			       struct reg_params *rx_params)
{}

static void release_resources(struct snd_dice *dice)
{}

static void stop_streams(struct snd_dice *dice, enum amdtp_stream_direction dir,
			 struct reg_params *params)
{}

static int keep_resources(struct snd_dice *dice, struct amdtp_stream *stream,
			  struct fw_iso_resources *resources, unsigned int rate,
			  unsigned int pcm_chs, unsigned int midi_ports)
{}

static int keep_dual_resources(struct snd_dice *dice, unsigned int rate,
			       enum amdtp_stream_direction dir,
			       struct reg_params *params)
{}

static void finish_session(struct snd_dice *dice, struct reg_params *tx_params,
			   struct reg_params *rx_params)
{}

int snd_dice_stream_reserve_duplex(struct snd_dice *dice, unsigned int rate,
				   unsigned int events_per_period,
				   unsigned int events_per_buffer)
{}

static int start_streams(struct snd_dice *dice, enum amdtp_stream_direction dir,
			 unsigned int rate, struct reg_params *params)
{}

/*
 * MEMO: After this function, there're two states of streams:
 *  - None streams are running.
 *  - All streams are running.
 */
int snd_dice_stream_start_duplex(struct snd_dice *dice)
{}

/*
 * MEMO: After this function, there're two states of streams:
 *  - None streams are running.
 *  - All streams are running.
 */
void snd_dice_stream_stop_duplex(struct snd_dice *dice)
{}

static int init_stream(struct snd_dice *dice, enum amdtp_stream_direction dir,
		       unsigned int index)
{}

/*
 * This function should be called before starting streams or after stopping
 * streams.
 */
static void destroy_stream(struct snd_dice *dice,
			   enum amdtp_stream_direction dir,
			   unsigned int index)
{}

int snd_dice_stream_init_duplex(struct snd_dice *dice)
{}

void snd_dice_stream_destroy_duplex(struct snd_dice *dice)
{}

void snd_dice_stream_update_duplex(struct snd_dice *dice)
{}

int snd_dice_stream_detect_current_formats(struct snd_dice *dice)
{}

static void dice_lock_changed(struct snd_dice *dice)
{}

int snd_dice_stream_lock_try(struct snd_dice *dice)
{}

void snd_dice_stream_lock_release(struct snd_dice *dice)
{}