Linux Audio

Check our new training course

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