1 /*****************************************************************************
3 *****************************************************************************
4 * Copyright (C) 2008 VideoLAN
6 * Authors: Christophe Massiot <massiot@via.ecp.fr>
8 * This program is free software. It comes without any warranty, to
9 * the extent permitted by applicable law. You can redistribute it
10 * and/or modify it under the terms of the Do What The Fuck You Want
11 * To Public License, Version 2, as published by Sam Hocevar. See
12 * http://sam.zoy.org/wtfpl/COPYING for more details.
13 *****************************************************************************/
15 #ifdef HAVE_DVB_SUPPORT
16 /* DVB Card Drivers */
17 #include <linux/dvb/version.h>
18 #include <linux/dvb/dmx.h>
19 #include <linux/dvb/frontend.h>
20 #include <linux/dvb/ca.h>
23 #include <bitstream/mpeg/psi.h>
25 #define COMM_HEADER_SIZE 8
26 #define COMM_BUFFER_SIZE (COMM_HEADER_SIZE + ((PSI_PRIVATE_MAX_SIZE + PSI_HEADER_SIZE) * PSI_TABLE_MAX_SECTIONS))
27 #define COMM_HEADER_MAGIC 0x49
29 #define COMM_MAX_MSG_CHUNK 4096
35 CMD_FRONTEND_STATUS
= 3,
37 CMD_MMI_SLOT_STATUS
= 5, /* arg: slot */
38 CMD_MMI_OPEN
= 6, /* arg: slot */
39 CMD_MMI_CLOSE
= 7, /* arg: slot */
40 CMD_MMI_RECV
= 8, /* arg: slot */
45 CMD_GET_PMT
= 14, /* arg: service_id (uint16_t) */
47 CMD_GET_PID
= 16, /* arg: pid (uint16_t) */
48 CMD_MMI_SEND_TEXT
= 17, /* arg: slot, en50221_mmi_object_t */
49 CMD_MMI_SEND_CHOICE
= 18, /* arg: slot, en50221_mmi_object_t */
50 CMD_GET_EIT_PF
= 19, /* arg: service_id (uint16_t) */
51 CMD_GET_EIT_SCHEDULE
= 20, /* arg: service_id (uint16_t) */
57 RET_FRONTEND_STATUS
= 2,
59 RET_MMI_SLOT_STATUS
= 4,
71 RET_EIT_SCHEDULE
= 16,
75 #ifdef HAVE_DVB_SUPPORT
76 struct ret_frontend_status
78 struct dvb_frontend_info info
;
81 uint16_t i_strength
, i_snr
;
89 struct ret_mmi_slot_status
96 en50221_mmi_object_t object
;
102 en50221_mmi_object_t object
;
108 ts_pid_info_t pids
[MAX_PIDS
];