#include "smipcie.h"
#include "m88ds3103.h"
#include "ts2020.h"
#include "m88rs6000t.h"
#include "si2168.h"
#include "si2157.h"
DVB_DEFINE_MOD_OPT_ADAPTER_NR(adapter_nr);
static int smi_hw_init(struct smi_dev *dev)
{ … }
static void smi_i2c_cfg(struct smi_dev *dev, u32 sw_ctl)
{ … }
static void smi_i2c_setsda(struct smi_dev *dev, int state, u32 sw_ctl)
{ … }
static void smi_i2c_setscl(void *data, int state, u32 sw_ctl)
{ … }
static int smi_i2c_getsda(void *data, u32 sw_ctl)
{ … }
static int smi_i2c_getscl(void *data, u32 sw_ctl)
{ … }
static void smi_i2c0_setsda(void *data, int state)
{ … }
static void smi_i2c0_setscl(void *data, int state)
{ … }
static int smi_i2c0_getsda(void *data)
{ … }
static int smi_i2c0_getscl(void *data)
{ … }
static void smi_i2c1_setsda(void *data, int state)
{ … }
static void smi_i2c1_setscl(void *data, int state)
{ … }
static int smi_i2c1_getsda(void *data)
{ … }
static int smi_i2c1_getscl(void *data)
{ … }
static int smi_i2c_init(struct smi_dev *dev)
{ … }
static void smi_i2c_exit(struct smi_dev *dev)
{ … }
static int smi_read_eeprom(struct i2c_adapter *i2c, u16 reg, u8 *data, u16 size)
{ … }
static void smi_port_disableInterrupt(struct smi_port *port)
{ … }
static void smi_port_enableInterrupt(struct smi_port *port)
{ … }
static void smi_port_clearInterrupt(struct smi_port *port)
{ … }
static void smi_dma_xfer(struct work_struct *t)
{ … }
static void smi_port_dma_free(struct smi_port *port)
{ … }
static int smi_port_init(struct smi_port *port, int dmaChanUsed)
{ … }
static void smi_port_exit(struct smi_port *port)
{ … }
static int smi_port_irq(struct smi_port *port, u32 int_status)
{ … }
static irqreturn_t smi_irq_handler(int irq, void *dev_id)
{ … }
static struct i2c_client *smi_add_i2c_client(struct i2c_adapter *adapter,
struct i2c_board_info *info)
{ … }
static void smi_del_i2c_client(struct i2c_client *client)
{ … }
static const struct m88ds3103_config smi_dvbsky_m88ds3103_cfg = …;
static int smi_dvbsky_m88ds3103_fe_attach(struct smi_port *port)
{ … }
static const struct m88ds3103_config smi_dvbsky_m88rs6000_cfg = …;
static int smi_dvbsky_m88rs6000_fe_attach(struct smi_port *port)
{ … }
static int smi_dvbsky_sit2_fe_attach(struct smi_port *port)
{ … }
static int smi_fe_init(struct smi_port *port)
{ … }
static void smi_fe_exit(struct smi_port *port)
{ … }
static int my_dvb_dmx_ts_card_init(struct dvb_demux *dvbdemux, char *id,
int (*start_feed)(struct dvb_demux_feed *),
int (*stop_feed)(struct dvb_demux_feed *),
void *priv)
{ … }
static int my_dvb_dmxdev_ts_card_init(struct dmxdev *dmxdev,
struct dvb_demux *dvbdemux,
struct dmx_frontend *hw_frontend,
struct dmx_frontend *mem_frontend,
struct dvb_adapter *dvb_adapter)
{ … }
static u32 smi_config_DMA(struct smi_port *port)
{ … }
static int smi_start_feed(struct dvb_demux_feed *dvbdmxfeed)
{ … }
static int smi_stop_feed(struct dvb_demux_feed *dvbdmxfeed)
{ … }
static int smi_dvb_init(struct smi_port *port)
{ … }
static void smi_dvb_exit(struct smi_port *port)
{ … }
static int smi_port_attach(struct smi_dev *dev,
struct smi_port *port, int index)
{ … }
static void smi_port_detach(struct smi_port *port)
{ … }
static int smi_probe(struct pci_dev *pdev, const struct pci_device_id *id)
{ … }
static void smi_remove(struct pci_dev *pdev)
{ … }
static const struct smi_cfg_info dvbsky_s950_cfg = …;
static const struct smi_cfg_info dvbsky_s952_cfg = …;
static const struct smi_cfg_info dvbsky_t9580_cfg = …;
static const struct smi_cfg_info technotrend_s2_4200_cfg = …;
#define SMI_ID(_subvend, _subdev, _driverdata) …
static const struct pci_device_id smi_id_table[] = …;
MODULE_DEVICE_TABLE(pci, smi_id_table);
static struct pci_driver smipcie_driver = …;
module_pci_driver(…) …;
MODULE_AUTHOR(…) …;
MODULE_DESCRIPTION(…) …;
MODULE_LICENSE(…) …;