#include <linux/freezer.h>
#include <linux/kernel.h>
#include <linux/kthread.h>
#include <linux/mutex.h>
#include <linux/module.h>
#include <linux/pci.h>
#include <linux/string.h>
#include <linux/sched/signal.h>
#include <media/dmxdev.h>
#include <media/dvbdev.h>
#include <media/dvb_demux.h>
#include <media/dvb_frontend.h>
#include "pt3.h"
DVB_DEFINE_MOD_OPT_ADAPTER_NR(adapter_nr);
static bool one_adapter;
module_param(one_adapter, bool, 0444);
MODULE_PARM_DESC(…) …;
static int num_bufs = …;
module_param(num_bufs, int, 0444);
MODULE_PARM_DESC(…) …;
static const struct i2c_algorithm pt3_i2c_algo = …;
static const struct pt3_adap_config adap_conf[PT3_NUM_FE] = …;
struct reg_val { … };
static int
pt3_demod_write(struct pt3_adapter *adap, const struct reg_val *data, int num)
{ … }
static inline void pt3_lnb_ctrl(struct pt3_board *pt3, bool on)
{ … }
static inline struct pt3_adapter *pt3_find_adapter(struct dvb_frontend *fe)
{ … }
static int
pt3_set_tuner_power(struct pt3_board *pt3, bool tuner_on, bool amp_on)
{ … }
static int pt3_set_lna(struct dvb_frontend *fe)
{ … }
static int pt3_set_voltage(struct dvb_frontend *fe, enum fe_sec_voltage volt)
{ … }
static const struct reg_val init0_sat[] = …;
static const struct reg_val init0_ter[] = …;
static const struct reg_val cfg_sat[] = …;
static const struct reg_val cfg_ter[] = …;
static int pt3_fe_init(struct pt3_board *pt3)
{ … }
static int pt3_attach_fe(struct pt3_board *pt3, int i)
{ … }
static int pt3_fetch_thread(void *data)
{ … }
static int pt3_start_streaming(struct pt3_adapter *adap)
{ … }
static int pt3_stop_streaming(struct pt3_adapter *adap)
{ … }
static int pt3_start_feed(struct dvb_demux_feed *feed)
{ … }
static int pt3_stop_feed(struct dvb_demux_feed *feed)
{ … }
static int pt3_alloc_adapter(struct pt3_board *pt3, int index)
{ … }
static void pt3_cleanup_adapter(struct pt3_board *pt3, int index)
{ … }
#ifdef CONFIG_PM_SLEEP
static int pt3_suspend(struct device *dev)
{ … }
static int pt3_resume(struct device *dev)
{ … }
#endif
static void pt3_remove(struct pci_dev *pdev)
{ … }
static int pt3_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
{ … }
static const struct pci_device_id pt3_id_table[] = …;
MODULE_DEVICE_TABLE(pci, pt3_id_table);
static SIMPLE_DEV_PM_OPS(pt3_pm_ops, pt3_suspend, pt3_resume);
static struct pci_driver pt3_driver = …;
module_pci_driver(…) …;
MODULE_DESCRIPTION(…) …;
MODULE_AUTHOR(…) …;
MODULE_LICENSE(…) …;