linux/sound/firewire/motu/motu-protocol-v3.c

// SPDX-License-Identifier: GPL-2.0-only
/*
 * motu-protocol-v3.c - a part of driver for MOTU FireWire series
 *
 * Copyright (c) 2015-2017 Takashi Sakamoto <[email protected]>
 */

#include <linux/delay.h>
#include "motu.h"

#define V3_CLOCK_STATUS_OFFSET
#define V3_FETCH_PCM_FRAMES
#define V3_CLOCK_RATE_MASK
#define V3_CLOCK_RATE_SHIFT
#define V3_CLOCK_SOURCE_MASK
#define V3_CLOCK_SRC_INTERNAL
#define V3_CLOCK_SRC_WORD_ON_BNC
#define V3_CLOCK_SRC_SPH
#define V3_CLOCK_SRC_AESEBU_ON_XLR
#define V3_CLOCK_SRC_SPDIF_ON_COAX
#define V3_CLOCK_SRC_OPT_IFACE_A
#define V3_CLOCK_SRC_OPT_IFACE_B

#define V3_OPT_IFACE_MODE_OFFSET
#define V3_ENABLE_OPT_IN_IFACE_A
#define V3_ENABLE_OPT_IN_IFACE_B
#define V3_ENABLE_OPT_OUT_IFACE_A
#define V3_ENABLE_OPT_OUT_IFACE_B
#define V3_NO_ADAT_OPT_IN_IFACE_A
#define V3_NO_ADAT_OPT_IN_IFACE_B
#define V3_NO_ADAT_OPT_OUT_IFACE_A
#define V3_NO_ADAT_OPT_OUT_IFACE_B

#define V3_MSG_FLAG_CLK_CHANGED
#define V3_CLK_WAIT_MSEC

int snd_motu_protocol_v3_get_clock_rate(struct snd_motu *motu,
					unsigned int *rate)
{}

int snd_motu_protocol_v3_set_clock_rate(struct snd_motu *motu,
					unsigned int rate)
{}

int snd_motu_protocol_v3_get_clock_source(struct snd_motu *motu,
					  enum snd_motu_clock_source *src)
{}

int snd_motu_protocol_v3_switch_fetching_mode(struct snd_motu *motu,
					      bool enable)
{}

static int detect_packet_formats_with_opt_ifaces(struct snd_motu *motu, u32 data)
{}

int snd_motu_protocol_v3_cache_packet_formats(struct snd_motu *motu)
{}

const struct snd_motu_spec snd_motu_spec_828mk3_fw =;

const struct snd_motu_spec snd_motu_spec_828mk3_hybrid =;

const struct snd_motu_spec snd_motu_spec_896mk3 =;

const struct snd_motu_spec snd_motu_spec_traveler_mk3 =;

const struct snd_motu_spec snd_motu_spec_ultralite_mk3 =;

const struct snd_motu_spec snd_motu_spec_audio_express =;

const struct snd_motu_spec snd_motu_spec_track16 =;

const struct snd_motu_spec snd_motu_spec_4pre =;