Merge commit '840f5b0572ea' into v4l_for_linus
* commit '840f5b0572ea': (381 commits) media: au0828 disable tuner to demod link in au0828_media_device_register() [media] touptek: cast char types on %x printk [media] touptek: don't DMA at the stack [media] mceusb: use %*ph for small buffer dumps [media] v4l: exynos4-is: Drop unneeded check when setting up fimc-lite links [media] v4l: vsp1: Check if an entity is a subdev with the right function [media] hide unused functions for !MEDIA_CONTROLLER [media] em28xx: fix Terratec Grabby AC97 codec detection [media] media: add prefixes to interface types [media] media: rc: nuvoton: switch attribute wakeup_data to text [media] v4l2-ioctl: fix YUV422P pixel format description [media] media: fix null pointer dereference in v4l_vb2q_enable_media_source() [media] v4l2-mc.h: fix yet more compiler errors [media] staging/media: add missing TODO files [media] media.h: always start with 1 for the audio entities [media] sound/usb: Use meaninful names for goto labels [media] v4l2-mc.h: fix compiler warnings [media] media: au0828 audio mixer isn't connected to decoder [media] sound/usb: Use Media Controller API to share media resources [media] dw2102: add support for TeVii S662 ...
This commit is contained in:
+33
-12
@@ -78,6 +78,22 @@ struct media_device_info {
|
||||
#define MEDIA_ENT_F_IO_VBI (MEDIA_ENT_F_BASE + 0x01002)
|
||||
#define MEDIA_ENT_F_IO_SWRADIO (MEDIA_ENT_F_BASE + 0x01003)
|
||||
|
||||
/*
|
||||
* Analog TV IF-PLL decoders
|
||||
*
|
||||
* It is a responsibility of the master/bridge drivers to create links
|
||||
* for MEDIA_ENT_F_IF_VID_DECODER and MEDIA_ENT_F_IF_AUD_DECODER.
|
||||
*/
|
||||
#define MEDIA_ENT_F_IF_VID_DECODER (MEDIA_ENT_F_BASE + 0x02001)
|
||||
#define MEDIA_ENT_F_IF_AUD_DECODER (MEDIA_ENT_F_BASE + 0x02002)
|
||||
|
||||
/*
|
||||
* Audio Entity Functions
|
||||
*/
|
||||
#define MEDIA_ENT_F_AUDIO_CAPTURE (MEDIA_ENT_F_BASE + 0x03001)
|
||||
#define MEDIA_ENT_F_AUDIO_PLAYBACK (MEDIA_ENT_F_BASE + 0x03002)
|
||||
#define MEDIA_ENT_F_AUDIO_MIXER (MEDIA_ENT_F_BASE + 0x03003)
|
||||
|
||||
/*
|
||||
* Connectors
|
||||
*/
|
||||
@@ -113,8 +129,12 @@ struct media_device_info {
|
||||
#define MEDIA_ENT_F_LENS (MEDIA_ENT_F_OLD_SUBDEV_BASE + 3)
|
||||
#define MEDIA_ENT_F_ATV_DECODER (MEDIA_ENT_F_OLD_SUBDEV_BASE + 4)
|
||||
/*
|
||||
* It is a responsibility of the entity drivers to add connectors and links
|
||||
* for the tuner entities.
|
||||
* It is a responsibility of the master/bridge drivers to add connectors
|
||||
* and links for MEDIA_ENT_F_TUNER. Please notice that some old tuners
|
||||
* may require the usage of separate I2C chips to decode analog TV signals,
|
||||
* when the master/bridge chipset doesn't have its own TV standard decoder.
|
||||
* On such cases, the IF-PLL staging is mapped via one or two entities:
|
||||
* MEDIA_ENT_F_IF_VID_DECODER and/or MEDIA_ENT_F_IF_AUD_DECODER.
|
||||
*/
|
||||
#define MEDIA_ENT_F_TUNER (MEDIA_ENT_F_OLD_SUBDEV_BASE + 5)
|
||||
|
||||
@@ -262,6 +282,7 @@ struct media_links_enum {
|
||||
|
||||
#define MEDIA_INTF_T_DVB_BASE 0x00000100
|
||||
#define MEDIA_INTF_T_V4L_BASE 0x00000200
|
||||
#define MEDIA_INTF_T_ALSA_BASE 0x00000300
|
||||
|
||||
/* Interface types */
|
||||
|
||||
@@ -277,6 +298,15 @@ struct media_links_enum {
|
||||
#define MEDIA_INTF_T_V4L_SUBDEV (MEDIA_INTF_T_V4L_BASE + 3)
|
||||
#define MEDIA_INTF_T_V4L_SWRADIO (MEDIA_INTF_T_V4L_BASE + 4)
|
||||
|
||||
#define MEDIA_INTF_T_ALSA_PCM_CAPTURE (MEDIA_INTF_T_ALSA_BASE)
|
||||
#define MEDIA_INTF_T_ALSA_PCM_PLAYBACK (MEDIA_INTF_T_ALSA_BASE + 1)
|
||||
#define MEDIA_INTF_T_ALSA_CONTROL (MEDIA_INTF_T_ALSA_BASE + 2)
|
||||
#define MEDIA_INTF_T_ALSA_COMPRESS (MEDIA_INTF_T_ALSA_BASE + 3)
|
||||
#define MEDIA_INTF_T_ALSA_RAWMIDI (MEDIA_INTF_T_ALSA_BASE + 4)
|
||||
#define MEDIA_INTF_T_ALSA_HWDEP (MEDIA_INTF_T_ALSA_BASE + 5)
|
||||
#define MEDIA_INTF_T_ALSA_SEQUENCER (MEDIA_INTF_T_ALSA_BASE + 6)
|
||||
#define MEDIA_INTF_T_ALSA_TIMER (MEDIA_INTF_T_ALSA_BASE + 7)
|
||||
|
||||
/*
|
||||
* MC next gen API definitions
|
||||
*
|
||||
@@ -296,7 +326,7 @@ struct media_links_enum {
|
||||
* later, before the adding this API upstream.
|
||||
*/
|
||||
|
||||
#if 0 /* Let's postpone it to Kernel 4.6 */
|
||||
|
||||
struct media_v2_entity {
|
||||
__u32 id;
|
||||
char name[64]; /* FIXME: move to a property? (RFC says so) */
|
||||
@@ -357,21 +387,12 @@ struct media_v2_topology {
|
||||
__u64 ptr_links;
|
||||
} __attribute__ ((packed));
|
||||
|
||||
static inline void __user *media_get_uptr(__u64 arg)
|
||||
{
|
||||
return (void __user *)(uintptr_t)arg;
|
||||
}
|
||||
#endif
|
||||
|
||||
/* ioctls */
|
||||
|
||||
#define MEDIA_IOC_DEVICE_INFO _IOWR('|', 0x00, struct media_device_info)
|
||||
#define MEDIA_IOC_ENUM_ENTITIES _IOWR('|', 0x01, struct media_entity_desc)
|
||||
#define MEDIA_IOC_ENUM_LINKS _IOWR('|', 0x02, struct media_links_enum)
|
||||
#define MEDIA_IOC_SETUP_LINK _IOWR('|', 0x03, struct media_link_desc)
|
||||
|
||||
#if 0 /* Let's postpone it to Kernel 4.6 */
|
||||
#define MEDIA_IOC_G_TOPOLOGY _IOWR('|', 0x04, struct media_v2_topology)
|
||||
#endif
|
||||
|
||||
#endif /* __LINUX_MEDIA_H */
|
||||
|
||||
Reference in New Issue
Block a user