linux/drivers/media/pci/tw686x/tw686x-audio.c

// SPDX-License-Identifier: GPL-2.0-only
/*
 * Copyright (C) 2015 VanguardiaSur - www.vanguardiasur.com.ar
 *
 * Based on the audio support from the tw6869 driver:
 * Copyright 2015 www.starterkit.ru <[email protected]>
 *
 * Based on:
 * Driver for Intersil|Techwell TW6869 based DVR cards
 * (c) 2011-12 liran <[email protected]> [Intersil|Techwell China]
 */

#include <linux/types.h>
#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/init.h>
#include <linux/kmod.h>
#include <linux/mutex.h>
#include <linux/pci.h>
#include <linux/delay.h>

#include <sound/core.h>
#include <sound/initval.h>
#include <sound/pcm.h>
#include <sound/control.h>
#include "tw686x.h"
#include "tw686x-regs.h"

#define AUDIO_CHANNEL_OFFSET

void tw686x_audio_irq(struct tw686x_dev *dev, unsigned long requests,
		      unsigned int pb_status)
{}

/*
 * Audio parameters are global and shared among all
 * capture channels. The driver prevents changes to
 * the parameters if any audio channel is capturing.
 */
static const struct snd_pcm_hardware tw686x_capture_hw =;

static int tw686x_pcm_open(struct snd_pcm_substream *ss)
{}

static int tw686x_pcm_close(struct snd_pcm_substream *ss)
{}

static int tw686x_pcm_prepare(struct snd_pcm_substream *ss)
{}

static int tw686x_pcm_trigger(struct snd_pcm_substream *ss, int cmd)
{}

static snd_pcm_uframes_t tw686x_pcm_pointer(struct snd_pcm_substream *ss)
{}

static const struct snd_pcm_ops tw686x_pcm_ops =;

static int tw686x_snd_pcm_init(struct tw686x_dev *dev)
{}

static void tw686x_audio_dma_free(struct tw686x_dev *dev,
				  struct tw686x_audio_channel *ac)
{}

static int tw686x_audio_dma_alloc(struct tw686x_dev *dev,
				  struct tw686x_audio_channel *ac)
{}

void tw686x_audio_free(struct tw686x_dev *dev)
{}

int tw686x_audio_init(struct tw686x_dev *dev)
{}