1/* SPDX-License-Identifier: GPL-2.0 */
2/* dvb-usb-common.h is part of the DVB USB library.
3 *
4 * Copyright (C) 2004-5 Patrick Boettcher (patrick.boettcher@posteo.de)
5 * see dvb-usb-init.c for copyright information.
6 *
7 * a header file containing prototypes and types for internal use of the dvb-usb-lib
8 */
9#ifndef _DVB_USB_COMMON_H_
10#define _DVB_USB_COMMON_H_
11
12#define DVB_USB_LOG_PREFIX "dvb-usb"
13#include "dvb-usb.h"
14
15extern int dvb_usb_debug;
16extern int dvb_usb_disable_rc_polling;
17
18#define deb_info(args...)  dprintk(dvb_usb_debug,0x001,args)
19#define deb_xfer(args...)  dprintk(dvb_usb_debug,0x002,args)
20#define deb_pll(args...)   dprintk(dvb_usb_debug,0x004,args)
21#define deb_ts(args...)    dprintk(dvb_usb_debug,0x008,args)
22#define deb_err(args...)   dprintk(dvb_usb_debug,0x010,args)
23#define deb_rc(args...)    dprintk(dvb_usb_debug,0x020,args)
24#define deb_fw(args...)    dprintk(dvb_usb_debug,0x040,args)
25#define deb_mem(args...)   dprintk(dvb_usb_debug,0x080,args)
26#define deb_uxfer(args...) dprintk(dvb_usb_debug,0x100,args)
27
28/* commonly used  methods */
29int dvb_usb_download_firmware(struct usb_device *udev,
30			      const struct dvb_usb_device_properties *props);
31
32extern int dvb_usb_device_power_ctrl(struct dvb_usb_device *d, int onoff);
33
34extern int usb_urb_init(struct usb_data_stream *stream, struct usb_data_stream_properties *props);
35extern int usb_urb_exit(struct usb_data_stream *stream);
36extern int usb_urb_submit(struct usb_data_stream *stream);
37extern int usb_urb_kill(struct usb_data_stream *stream);
38
39extern int dvb_usb_adapter_stream_init(struct dvb_usb_adapter *adap);
40extern int dvb_usb_adapter_stream_exit(struct dvb_usb_adapter *adap);
41
42extern int dvb_usb_i2c_init(struct dvb_usb_device *);
43extern int dvb_usb_i2c_exit(struct dvb_usb_device *);
44
45extern int dvb_usb_adapter_dvb_init(struct dvb_usb_adapter *adap,
46				    short *adapter_nums);
47extern int dvb_usb_adapter_dvb_exit(struct dvb_usb_adapter *adap);
48extern int dvb_usb_adapter_frontend_init(struct dvb_usb_adapter *adap);
49extern int dvb_usb_adapter_frontend_exit(struct dvb_usb_adapter *adap);
50
51extern int dvb_usb_remote_init(struct dvb_usb_device *);
52extern int dvb_usb_remote_exit(struct dvb_usb_device *);
53
54#endif
55