From eed8fbcd80ddf4a63eb4f5c30820083ffb7bd744 Mon Sep 17 00:00:00 2001 From: Julian Seward Date: Fri, 5 Jun 2015 11:23:35 +0000 Subject: [PATCH] Bug 348102 - Patch updating v4l2 API support (edit) Patch from Hans Verkuil (hverkuil@xs4all.nl) git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15313 --- coregrind/m_syswrap/syswrap-linux.c | 3 +++ include/vki/vki-linux.h | 13 ++++++++----- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/coregrind/m_syswrap/syswrap-linux.c b/coregrind/m_syswrap/syswrap-linux.c index 935d190a20..640f4023a9 100644 --- a/coregrind/m_syswrap/syswrap-linux.c +++ b/coregrind/m_syswrap/syswrap-linux.c @@ -8220,6 +8220,7 @@ PRE(sys_ioctl) PRE_FIELD_READ("ioctl(VKI_V4L2_SUBDEV_ENUM_MBUS_CODE).index", data->index); PRE_FIELD_READ("ioctl(VKI_V4L2_SUBDEV_ENUM_MBUS_CODE).pad", data->pad); PRE_FIELD_WRITE("ioctl(VKI_V4L2_SUBDEV_ENUM_MBUS_CODE).code", data->code); + PRE_FIELD_READ("ioctl(VKI_V4L2_SUBDEV_ENUM_MBUS_CODE).which", data->which); PRE_FIELD_READ("ioctl(VKI_V4L2_SUBDEV_ENUM_MBUS_CODE).reserved", data->reserved); break; } @@ -8228,6 +8229,7 @@ PRE(sys_ioctl) PRE_FIELD_READ("ioctl(VKI_V4L2_SUBDEV_ENUM_FRAME_SIZE).index", data->index); PRE_FIELD_READ("ioctl(VKI_V4L2_SUBDEV_ENUM_FRAME_SIZE).pad", data->pad); PRE_FIELD_READ("ioctl(VKI_V4L2_SUBDEV_ENUM_FRAME_SIZE).code", data->code); + PRE_FIELD_READ("ioctl(VKI_V4L2_SUBDEV_ENUM_FRAME_SIZE).which", data->which); PRE_FIELD_READ("ioctl(VKI_V4L2_SUBDEV_ENUM_FRAME_SIZE).reserved", data->reserved); PRE_FIELD_WRITE("ioctl(VKI_V4L2_SUBDEV_ENUM_FRAME_SIZE).min_width", data->min_width); PRE_FIELD_WRITE("ioctl(VKI_V4L2_SUBDEV_ENUM_FRAME_SIZE).min_height", data->min_height); @@ -8242,6 +8244,7 @@ PRE(sys_ioctl) PRE_FIELD_READ("ioctl(VKI_V4L2_SUBDEV_ENUM_FRAME_INTERVAL).code", data->code); PRE_FIELD_READ("ioctl(VKI_V4L2_SUBDEV_ENUM_FRAME_INTERVAL).width", data->width); PRE_FIELD_READ("ioctl(VKI_V4L2_SUBDEV_ENUM_FRAME_INTERVAL).height", data->height); + PRE_FIELD_READ("ioctl(VKI_V4L2_SUBDEV_ENUM_FRAME_INTERVAL).which", data->which); PRE_FIELD_READ("ioctl(VKI_V4L2_SUBDEV_ENUM_FRAME_INTERVAL).reserved", data->reserved); PRE_FIELD_WRITE("ioctl(VKI_V4L2_SUBDEV_ENUM_FRAME_INTERVAL).interval", data->interval); break; diff --git a/include/vki/vki-linux.h b/include/vki/vki-linux.h index 6db92dc89d..34f3fee7be 100644 --- a/include/vki/vki-linux.h +++ b/include/vki/vki-linux.h @@ -4223,8 +4223,8 @@ struct vki_v4l2_sliced_vbi_data { struct vki_v4l2_plane_pix_format { __vki_u32 sizeimage; - __vki_u16 bytesperline; - __vki_u16 reserved[7]; + __vki_u32 bytesperline; + __vki_u16 reserved[6]; } __attribute__ ((packed)); #define VKI_VIDEO_MAX_PLANES 8 @@ -4492,7 +4492,8 @@ struct vki_v4l2_subdev_mbus_code_enum { __vki_u32 pad; __vki_u32 index; __vki_u32 code; - __vki_u32 reserved[9]; + __vki_u32 which; + __vki_u32 reserved[8]; }; struct vki_v4l2_subdev_frame_size_enum { @@ -4503,7 +4504,8 @@ struct vki_v4l2_subdev_frame_size_enum { __vki_u32 max_width; __vki_u32 min_height; __vki_u32 max_height; - __vki_u32 reserved[9]; + __vki_u32 which; + __vki_u32 reserved[8]; }; struct vki_v4l2_subdev_frame_interval { @@ -4519,7 +4521,8 @@ struct vki_v4l2_subdev_frame_interval_enum { __vki_u32 width; __vki_u32 height; struct vki_v4l2_fract interval; - __vki_u32 reserved[9]; + __vki_u32 which; + __vki_u32 reserved[8]; }; struct vki_v4l2_subdev_selection { -- 2.47.3