1 #ifndef __PVRUSB2_DVB_H__ 2 #define __PVRUSB2_DVB_H__ 3 4 #include "dvb_frontend.h" 5 #include "dvb_demux.h" 6 #include "dvb_net.h" 7 #include "dmxdev.h" 8 #include "pvrusb2-context.h" 9 10 #define PVR2_DVB_BUFFER_COUNT 32 11 #define PVR2_DVB_BUFFER_SIZE PAGE_ALIGN(0x4000) 12 13 struct pvr2_dvb_adapter { 14 struct pvr2_channel channel; 15 16 struct dvb_adapter dvb_adap; 17 struct dmxdev dmxdev; 18 struct dvb_demux demux; 19 struct dvb_net dvb_net; 20 struct dvb_frontend *fe; 21 22 int feedcount; 23 int max_feed_count; 24 25 struct task_struct *thread; 26 struct mutex lock; 27 28 unsigned int stream_run:1; 29 30 wait_queue_head_t buffer_wait_data; 31 char *buffer_storage[PVR2_DVB_BUFFER_COUNT]; 32 }; 33 34 struct pvr2_dvb_props { 35 int (*frontend_attach) (struct pvr2_dvb_adapter *); 36 int (*tuner_attach) (struct pvr2_dvb_adapter *); 37 }; 38 39 struct pvr2_dvb_adapter *pvr2_dvb_create(struct pvr2_context *pvr); 40 41 #endif /* __PVRUSB2_DVB_H__ */ 42