if ((ret = dvb_generic_open (inode, file)) < 0)
return ret;
+ if (fe->ops.ts_bus_ctrl) {
+ if ((ret = fe->ops.ts_bus_ctrl (fe, 1)) < 0) {
+ dvb_generic_release (inode, file);
+ return ret;
+ }
+ }
+
if ((file->f_flags & O_ACCMODE) != O_RDONLY) {
/* normal tune mode when opened R/W */
if ((file->f_flags & O_ACCMODE) != O_RDONLY)
fepriv->release_jiffies = jiffies;
+ if (fe->ops.ts_bus_ctrl)
+ fe->ops.ts_bus_ctrl (fe, 0);
+
return dvb_generic_release (inode, file);
}
int (*enable_high_lnb_voltage)(struct dvb_frontend* fe, long arg);
int (*dishnetwork_send_legacy_command)(struct dvb_frontend* fe, unsigned long cmd);
int (*i2c_gate_ctrl)(struct dvb_frontend* fe, int enable);
+ int (*ts_bus_ctrl)(struct dvb_frontend* fe, int acquire);
struct dvb_tuner_ops tuner_ops;
};