diff options
Diffstat (limited to 'include/uapi/linux/media.h')
-rw-r--r-- | include/uapi/linux/media.h | 52 |
1 files changed, 46 insertions, 6 deletions
diff --git a/include/uapi/linux/media.h b/include/uapi/linux/media.h index d847c760e8f0..4e816be3de39 100644 --- a/include/uapi/linux/media.h +++ b/include/uapi/linux/media.h | |||
@@ -50,7 +50,14 @@ struct media_device_info { | |||
50 | #define MEDIA_ENT_T_DEVNODE_V4L (MEDIA_ENT_T_DEVNODE + 1) | 50 | #define MEDIA_ENT_T_DEVNODE_V4L (MEDIA_ENT_T_DEVNODE + 1) |
51 | #define MEDIA_ENT_T_DEVNODE_FB (MEDIA_ENT_T_DEVNODE + 2) | 51 | #define MEDIA_ENT_T_DEVNODE_FB (MEDIA_ENT_T_DEVNODE + 2) |
52 | #define MEDIA_ENT_T_DEVNODE_ALSA (MEDIA_ENT_T_DEVNODE + 3) | 52 | #define MEDIA_ENT_T_DEVNODE_ALSA (MEDIA_ENT_T_DEVNODE + 3) |
53 | #define MEDIA_ENT_T_DEVNODE_DVB (MEDIA_ENT_T_DEVNODE + 4) | 53 | #define MEDIA_ENT_T_DEVNODE_DVB_FE (MEDIA_ENT_T_DEVNODE + 4) |
54 | #define MEDIA_ENT_T_DEVNODE_DVB_DEMUX (MEDIA_ENT_T_DEVNODE + 5) | ||
55 | #define MEDIA_ENT_T_DEVNODE_DVB_DVR (MEDIA_ENT_T_DEVNODE + 6) | ||
56 | #define MEDIA_ENT_T_DEVNODE_DVB_CA (MEDIA_ENT_T_DEVNODE + 7) | ||
57 | #define MEDIA_ENT_T_DEVNODE_DVB_NET (MEDIA_ENT_T_DEVNODE + 8) | ||
58 | |||
59 | /* Legacy symbol. Use it to avoid userspace compilation breakages */ | ||
60 | #define MEDIA_ENT_T_DEVNODE_DVB MEDIA_ENT_T_DEVNODE_DVB_FE | ||
54 | 61 | ||
55 | #define MEDIA_ENT_T_V4L2_SUBDEV (2 << MEDIA_ENT_TYPE_SHIFT) | 62 | #define MEDIA_ENT_T_V4L2_SUBDEV (2 << MEDIA_ENT_TYPE_SHIFT) |
56 | #define MEDIA_ENT_T_V4L2_SUBDEV_SENSOR (MEDIA_ENT_T_V4L2_SUBDEV + 1) | 63 | #define MEDIA_ENT_T_V4L2_SUBDEV_SENSOR (MEDIA_ENT_T_V4L2_SUBDEV + 1) |
@@ -59,6 +66,8 @@ struct media_device_info { | |||
59 | /* A converter of analogue video to its digital representation. */ | 66 | /* A converter of analogue video to its digital representation. */ |
60 | #define MEDIA_ENT_T_V4L2_SUBDEV_DECODER (MEDIA_ENT_T_V4L2_SUBDEV + 4) | 67 | #define MEDIA_ENT_T_V4L2_SUBDEV_DECODER (MEDIA_ENT_T_V4L2_SUBDEV + 4) |
61 | 68 | ||
69 | #define MEDIA_ENT_T_V4L2_SUBDEV_TUNER (MEDIA_ENT_T_V4L2_SUBDEV + 5) | ||
70 | |||
62 | #define MEDIA_ENT_FL_DEFAULT (1 << 0) | 71 | #define MEDIA_ENT_FL_DEFAULT (1 << 0) |
63 | 72 | ||
64 | struct media_entity_desc { | 73 | struct media_entity_desc { |
@@ -78,17 +87,48 @@ struct media_entity_desc { | |||
78 | struct { | 87 | struct { |
79 | __u32 major; | 88 | __u32 major; |
80 | __u32 minor; | 89 | __u32 minor; |
81 | } v4l; | 90 | } dev; |
82 | struct { | 91 | |
83 | __u32 major; | 92 | #if 1 |
84 | __u32 minor; | 93 | /* |
85 | } fb; | 94 | * TODO: this shouldn't have been added without |
95 | * actual drivers that use this. When the first real driver | ||
96 | * appears that sets this information, special attention | ||
97 | * should be given whether this information is 1) enough, and | ||
98 | * 2) can deal with udev rules that rename devices. The struct | ||
99 | * dev would not be sufficient for this since that does not | ||
100 | * contain the subdevice information. In addition, struct dev | ||
101 | * can only refer to a single device, and not to multiple (e.g. | ||
102 | * pcm and mixer devices). | ||
103 | * | ||
104 | * So for now mark this as a to do. | ||
105 | */ | ||
86 | struct { | 106 | struct { |
87 | __u32 card; | 107 | __u32 card; |
88 | __u32 device; | 108 | __u32 device; |
89 | __u32 subdevice; | 109 | __u32 subdevice; |
90 | } alsa; | 110 | } alsa; |
111 | #endif | ||
112 | |||
113 | #if 1 | ||
114 | /* | ||
115 | * DEPRECATED: previous node specifications. Kept just to | ||
116 | * avoid breaking compilation, but media_entity_desc.dev | ||
117 | * should be used instead. In particular, alsa and dvb | ||
118 | * fields below are wrong: for all devnodes, there should | ||
119 | * be just major/minor inside the struct, as this is enough | ||
120 | * to represent any devnode, no matter what type. | ||
121 | */ | ||
122 | struct { | ||
123 | __u32 major; | ||
124 | __u32 minor; | ||
125 | } v4l; | ||
126 | struct { | ||
127 | __u32 major; | ||
128 | __u32 minor; | ||
129 | } fb; | ||
91 | int dvb; | 130 | int dvb; |
131 | #endif | ||
92 | 132 | ||
93 | /* Sub-device specifications */ | 133 | /* Sub-device specifications */ |
94 | /* Nothing needed yet */ | 134 | /* Nothing needed yet */ |