46 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			46 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| /* SPDX-License-Identifier: GPL-2.0 */
 | |
| #ifndef __PVRUSB2_DVB_H__
 | |
| #define __PVRUSB2_DVB_H__
 | |
| 
 | |
| #include <media/dvb_frontend.h>
 | |
| #include <media/dvb_demux.h>
 | |
| #include <media/dvb_net.h>
 | |
| #include <media/dmxdev.h>
 | |
| #include "pvrusb2-context.h"
 | |
| 
 | |
| #define PVR2_DVB_BUFFER_COUNT 32
 | |
| #define PVR2_DVB_BUFFER_SIZE PAGE_ALIGN(0x4000)
 | |
| 
 | |
| struct pvr2_dvb_adapter {
 | |
| 	struct pvr2_channel	channel;
 | |
| 
 | |
| 	struct dvb_adapter	dvb_adap;
 | |
| 	struct dmxdev		dmxdev;
 | |
| 	struct dvb_demux	demux;
 | |
| 	struct dvb_net		dvb_net;
 | |
| 	struct dvb_frontend	*fe[2];
 | |
| 
 | |
| 	struct i2c_client	*i2c_client_demod[2];
 | |
| 	struct i2c_client	*i2c_client_tuner;
 | |
| 
 | |
| 	int			feedcount;
 | |
| 	int			max_feed_count;
 | |
| 
 | |
| 	struct task_struct	*thread;
 | |
| 	struct mutex		lock;
 | |
| 
 | |
| 	unsigned int		stream_run:1;
 | |
| 
 | |
| 	wait_queue_head_t	buffer_wait_data;
 | |
| 	char			*buffer_storage[PVR2_DVB_BUFFER_COUNT];
 | |
| };
 | |
| 
 | |
| struct pvr2_dvb_props {
 | |
| 	int (*frontend_attach) (struct pvr2_dvb_adapter *);
 | |
| 	int (*tuner_attach) (struct pvr2_dvb_adapter *);
 | |
| };
 | |
| 
 | |
| struct pvr2_dvb_adapter *pvr2_dvb_create(struct pvr2_context *pvr);
 | |
| 
 | |
| #endif /* __PVRUSB2_DVB_H__ */
 |