linux/drivers/media/usb/au0828/au0828-core.c

// SPDX-License-Identifier: GPL-2.0-or-later
/*
 *  Driver for the Auvitek USB bridge
 *
 *  Copyright (c) 2008 Steven Toth <[email protected]>
 */

#include "au0828.h"
#include "au8522.h"

#include <linux/module.h>
#include <linux/slab.h>
#include <linux/videodev2.h>
#include <media/v4l2-common.h>
#include <linux/mutex.h>

/* Due to enum tuner_pad_index */
#include <media/tuner.h>

/*
 * 1 = General debug messages
 * 2 = USB handling
 * 4 = I2C related
 * 8 = Bridge related
 * 16 = IR related
 */
int au0828_debug;
module_param_named(debug, au0828_debug, int, 0644);
MODULE_PARM_DESC();

static unsigned int disable_usb_speed_check;
module_param(disable_usb_speed_check, int, 0444);
MODULE_PARM_DESC();

#define _AU0828_BULKPIPE
#define _BULKPIPESIZE

static int send_control_msg(struct au0828_dev *dev, u16 request, u32 value,
			    u16 index);
static int recv_control_msg(struct au0828_dev *dev, u16 request, u32 value,
	u16 index, unsigned char *cp, u16 size);

/* USB Direction */
#define CMD_REQUEST_IN
#define CMD_REQUEST_OUT

u32 au0828_readreg(struct au0828_dev *dev, u16 reg)
{}

u32 au0828_writereg(struct au0828_dev *dev, u16 reg, u32 val)
{}

static int send_control_msg(struct au0828_dev *dev, u16 request, u32 value,
	u16 index)
{}

static int recv_control_msg(struct au0828_dev *dev, u16 request, u32 value,
	u16 index, unsigned char *cp, u16 size)
{}

#ifdef CONFIG_MEDIA_CONTROLLER
static void au0828_media_graph_notify(struct media_entity *new,
				      void *notify_data);
#endif

static void au0828_unregister_media_device(struct au0828_dev *dev)
{}

void au0828_usb_release(struct au0828_dev *dev)
{}

static void au0828_usb_disconnect(struct usb_interface *interface)
{}

static int au0828_media_device_init(struct au0828_dev *dev,
				    struct usb_device *udev)
{}

#ifdef CONFIG_MEDIA_CONTROLLER
static void au0828_media_graph_notify(struct media_entity *new,
				      void *notify_data)
{}

static bool au0828_is_link_shareable(struct media_entity *owner,
				     struct media_entity *entity)
{}

/* Callers should hold graph_mutex */
static int au0828_enable_source(struct media_entity *entity,
				struct media_pipeline *pipe)
{}

/* Callers should hold graph_mutex */
static void au0828_disable_source(struct media_entity *entity)
{}
#endif

static int au0828_media_device_register(struct au0828_dev *dev,
					struct usb_device *udev)
{}

static int au0828_usb_probe(struct usb_interface *interface,
	const struct usb_device_id *id)
{}

static int au0828_suspend(struct usb_interface *interface,
				pm_message_t message)
{}

static int au0828_resume(struct usb_interface *interface)
{}

static struct usb_driver au0828_usb_driver =;

static int __init au0828_init(void)
{}

static void __exit au0828_exit(void)
{}

module_init();
module_exit(au0828_exit);

MODULE_DESCRIPTION();
MODULE_AUTHOR();
MODULE_LICENSE();
MODULE_VERSION();