1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifndef __PVRUSB2_DVB_H__
3 #define __PVRUSB2_DVB_H__
5 #include "dvb_frontend.h"
9 #include "pvrusb2-context.h"
11 #define PVR2_DVB_BUFFER_COUNT 32
12 #define PVR2_DVB_BUFFER_SIZE PAGE_ALIGN(0x4000)
14 struct pvr2_dvb_adapter {
15 struct pvr2_channel channel;
17 struct dvb_adapter dvb_adap;
19 struct dvb_demux demux;
20 struct dvb_net dvb_net;
21 struct dvb_frontend *fe;
26 struct task_struct *thread;
29 unsigned int stream_run:1;
31 wait_queue_head_t buffer_wait_data;
32 char *buffer_storage[PVR2_DVB_BUFFER_COUNT];
35 struct pvr2_dvb_props {
36 int (*frontend_attach) (struct pvr2_dvb_adapter *);
37 int (*tuner_attach) (struct pvr2_dvb_adapter *);
40 struct pvr2_dvb_adapter *pvr2_dvb_create(struct pvr2_context *pvr);
42 #endif /* __PVRUSB2_DVB_H__ */