linux/drivers/media/pci/cx23885/cimax2.c

// SPDX-License-Identifier: GPL-2.0-or-later
/*
 * cimax2.c
 *
 * CIMax2(R) SP2 driver in conjunction with NetUp Dual DVB-S2 CI card
 *
 * Copyright (C) 2009 NetUP Inc.
 * Copyright (C) 2009 Igor M. Liplianin <[email protected]>
 * Copyright (C) 2009 Abylay Ospan <[email protected]>
 */

#include "cx23885.h"
#include "cimax2.h"
#include <media/dvb_ca_en50221.h>

/* Max transfer size done by I2C transfer functions */
#define MAX_XFER_SIZE

/**** Bit definitions for MC417_RWD and MC417_OEN registers  ***
  bits 31-16
+-----------+
| Reserved  |
+-----------+
  bit 15  bit 14  bit 13 bit 12  bit 11  bit 10  bit 9   bit 8
+-------+-------+-------+-------+-------+-------+-------+-------+
|  WR#  |  RD#  |       |  ACK# |  ADHI |  ADLO |  CS1# |  CS0# |
+-------+-------+-------+-------+-------+-------+-------+-------+
 bit 7   bit 6   bit 5   bit 4   bit 3   bit 2   bit 1   bit 0
+-------+-------+-------+-------+-------+-------+-------+-------+
|  DATA7|  DATA6|  DATA5|  DATA4|  DATA3|  DATA2|  DATA1|  DATA0|
+-------+-------+-------+-------+-------+-------+-------+-------+
***/
/* MC417 */
#define NETUP_DATA
#define NETUP_WR
#define NETUP_RD
#define NETUP_ACK
#define NETUP_ADHI
#define NETUP_ADLO
#define NETUP_CS1
#define NETUP_CS0
#define NETUP_EN_ALL
#define NETUP_CTRL_OFF
#define NETUP_CI_CTL
#define NETUP_CI_RD

#define NETUP_IRQ_DETAM
#define NETUP_IRQ_IRQAM

static unsigned int ci_dbg;
module_param(ci_dbg, int, 0644);
MODULE_PARM_DESC();

static unsigned int ci_irq_enable;
module_param(ci_irq_enable, int, 0644);
MODULE_PARM_DESC();

#define ci_dbg_print(fmt, args...)

#define ci_irq_flags()

/* stores all private variables for communication with CI */
struct netup_ci_state {};


static int netup_read_i2c(struct i2c_adapter *i2c_adap, u8 addr, u8 reg,
						u8 *buf, int len)
{}

static int netup_write_i2c(struct i2c_adapter *i2c_adap, u8 addr, u8 reg,
						u8 *buf, int len)
{}

static int netup_ci_get_mem(struct cx23885_dev *dev)
{}

static int netup_ci_op_cam(struct dvb_ca_en50221 *en50221, int slot,
				u8 flag, u8 read, int addr, u8 data)
{}

int netup_ci_read_attribute_mem(struct dvb_ca_en50221 *en50221,
						int slot, int addr)
{}

int netup_ci_write_attribute_mem(struct dvb_ca_en50221 *en50221,
						int slot, int addr, u8 data)
{}

int netup_ci_read_cam_ctl(struct dvb_ca_en50221 *en50221, int slot,
				 u8 addr)
{}

int netup_ci_write_cam_ctl(struct dvb_ca_en50221 *en50221, int slot,
							u8 addr, u8 data)
{}

int netup_ci_slot_reset(struct dvb_ca_en50221 *en50221, int slot)
{}

int netup_ci_slot_shutdown(struct dvb_ca_en50221 *en50221, int slot)
{}

static int netup_ci_set_irq(struct dvb_ca_en50221 *en50221, u8 irq_mode)
{}

int netup_ci_slot_ts_ctl(struct dvb_ca_en50221 *en50221, int slot)
{}

/* work handler */
static void netup_read_ci_status(struct work_struct *work)
{}

/* CI irq handler */
int netup_ci_slot_status(struct cx23885_dev *dev, u32 pci_status)
{}

int netup_poll_ci_slot_status(struct dvb_ca_en50221 *en50221,
				     int slot, int open)
{}

int netup_ci_init(struct cx23885_tsport *port)
{}

void netup_ci_exit(struct cx23885_tsport *port)
{}