pvrusb2-dvb.h 893 B

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