linux/drivers/media/firewire/firedtv-fw.c

// SPDX-License-Identifier: GPL-2.0-only
/*
 * FireDTV driver -- firewire I/O backend
 */

#include <linux/device.h>
#include <linux/errno.h>
#include <linux/firewire.h>
#include <linux/firewire-constants.h>
#include <linux/kernel.h>
#include <linux/list.h>
#include <linux/mm.h>
#include <linux/mod_devicetable.h>
#include <linux/module.h>
#include <linux/mutex.h>
#include <linux/slab.h>
#include <linux/spinlock.h>
#include <linux/string.h>
#include <linux/types.h>
#include <linux/wait.h>
#include <linux/workqueue.h>

#include <asm/page.h>

#include <media/dvb_demux.h>

#include "firedtv.h"

static LIST_HEAD(node_list);
static DEFINE_SPINLOCK(node_list_lock);

static inline struct fw_device *device_of(struct firedtv *fdtv)
{}

static int node_req(struct firedtv *fdtv, u64 addr, void *data, size_t len,
		    int tcode)
{}

int fdtv_lock(struct firedtv *fdtv, u64 addr, void *data)
{}

int fdtv_read(struct firedtv *fdtv, u64 addr, void *data)
{}

int fdtv_write(struct firedtv *fdtv, u64 addr, void *data, size_t len)
{}

#define ISO_HEADER_SIZE
#define CIP_HEADER_SIZE
#define MPEG2_TS_HEADER_SIZE
#define MPEG2_TS_SOURCE_PACKET_SIZE

#define MAX_PACKET_SIZE
#define PACKETS_PER_PAGE
#define N_PACKETS
#define N_PAGES
#define IRQ_INTERVAL

struct fdtv_ir_context {};

static int queue_iso(struct fdtv_ir_context *ctx, int index)
{}

static void handle_iso(struct fw_iso_context *context, u32 cycle,
		       size_t header_length, void *header, void *data)
{}

int fdtv_start_iso(struct firedtv *fdtv)
{}

void fdtv_stop_iso(struct firedtv *fdtv)
{}

static void handle_fcp(struct fw_card *card, struct fw_request *request,
		       int tcode, int destination, int source, int generation,
		       unsigned long long offset, void *payload, size_t length,
		       void *callback_data)
{}

static struct fw_address_handler fcp_handler =;

static const struct fw_address_region fcp_region =;

static const char * const model_names[] =;

/* Adjust the template string if models with longer names appear. */
#define MAX_MODEL_NAME_LEN

static int node_probe(struct fw_unit *unit, const struct ieee1394_device_id *id)
{}

static void node_remove(struct fw_unit *unit)
{}

static void node_update(struct fw_unit *unit)
{}

#define MATCH_FLAGS

#define DIGITAL_EVERYWHERE_OUI
#define AVC_UNIT_SPEC_ID_ENTRY
#define AVC_SW_VERSION_ENTRY

static const struct ieee1394_device_id fdtv_id_table[] =;
MODULE_DEVICE_TABLE(ieee1394, fdtv_id_table);

static struct fw_driver fdtv_driver =;

static int __init fdtv_init(void)
{}

static void __exit fdtv_exit(void)
{}

module_init();
module_exit(fdtv_exit);

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