linux/drivers/media/rc/iguanair.c

// SPDX-License-Identifier: GPL-2.0-or-later
/*
 * IguanaWorks USB IR Transceiver support
 *
 * Copyright (C) 2012 Sean Young <[email protected]>
 */

#include <linux/device.h>
#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/usb.h>
#include <linux/usb/input.h>
#include <linux/slab.h>
#include <linux/completion.h>
#include <media/rc-core.h>

#define BUF_SIZE

struct iguanair {};

#define CMD_NOP
#define CMD_GET_VERSION
#define CMD_GET_BUFSIZE
#define CMD_GET_FEATURES
#define CMD_SEND
#define CMD_EXECUTE
#define CMD_RX_OVERFLOW
#define CMD_TX_OVERFLOW
#define CMD_RECEIVER_ON
#define CMD_RECEIVER_OFF

#define DIR_IN
#define DIR_OUT

#define MAX_IN_PACKET
#define MAX_OUT_PACKET
#define TIMEOUT
#define RX_RESOLUTION

struct packet {};

struct send_packet {};

static void process_ir_data(struct iguanair *ir, unsigned len)
{}

static void iguanair_rx(struct urb *urb)
{}

static void iguanair_irq_out(struct urb *urb)
{}

static int iguanair_send(struct iguanair *ir, unsigned size)
{}

static int iguanair_get_features(struct iguanair *ir)
{}

static int iguanair_receiver(struct iguanair *ir, bool enable)
{}

/*
 * The iguanair creates the carrier by busy spinning after each half period.
 * This is counted in CPU cycles, with the CPU running at 24MHz. It is
 * broken down into 7-cycles and 4-cyles delays, with a preference for
 * 4-cycle delays, minus the overhead of the loop itself (cycle_overhead).
 */
static int iguanair_set_tx_carrier(struct rc_dev *dev, uint32_t carrier)
{}

static int iguanair_set_tx_mask(struct rc_dev *dev, uint32_t mask)
{}

static int iguanair_tx(struct rc_dev *dev, unsigned *txbuf, unsigned count)
{}

static int iguanair_open(struct rc_dev *rdev)
{}

static void iguanair_close(struct rc_dev *rdev)
{}

static int iguanair_probe(struct usb_interface *intf,
			  const struct usb_device_id *id)
{}

static void iguanair_disconnect(struct usb_interface *intf)
{}

static int iguanair_suspend(struct usb_interface *intf, pm_message_t message)
{}

static int iguanair_resume(struct usb_interface *intf)
{}

static const struct usb_device_id iguanair_table[] =;

static struct usb_driver iguanair_driver =;

module_usb_driver();

MODULE_DESCRIPTION();
MODULE_AUTHOR();
MODULE_LICENSE();
MODULE_DEVICE_TABLE(usb, iguanair_table);