On 08/09/2018 07:53 PM, Mauro Carvalho Chehab wrote: > Em Sat, 4 Aug 2018 14:44:54 +0200 > Hans Verkuil <hverkuil@xxxxxxxxx> escreveu: > >> From: Hans Verkuil <hans.verkuil@xxxxxxxxx> >> >> Define the public request API. >> >> This adds the new MEDIA_IOC_REQUEST_ALLOC ioctl to allocate a request >> and two ioctls that operate on a request in order to queue the >> contents of the request to the driver and to re-initialize the >> request. >> >> Signed-off-by: Hans Verkuil <hans.verkuil@xxxxxxxxx> >> Acked-by: Sakari Ailus <sakari.ailus@xxxxxxxxxxxxxxx> >> Reviewed-by: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx> >> --- >> include/uapi/linux/media.h | 12 ++++++++++++ >> 1 file changed, 12 insertions(+) >> >> diff --git a/include/uapi/linux/media.h b/include/uapi/linux/media.h >> index 36f76e777ef9..cf77f00a0f2d 100644 >> --- a/include/uapi/linux/media.h >> +++ b/include/uapi/linux/media.h >> @@ -364,11 +364,23 @@ struct media_v2_topology { >> >> /* ioctls */ >> >> +struct __attribute__ ((packed)) media_request_alloc { >> + __s32 fd; >> +}; >> + >> #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) >> #define MEDIA_IOC_G_TOPOLOGY _IOWR('|', 0x04, struct media_v2_topology) >> +#define MEDIA_IOC_REQUEST_ALLOC _IOWR('|', 0x05, struct media_request_alloc) > > Same comment as in patch 1: keep it simpler: just pass a s32 * as the > argument for this ioctl. Same comment as in patch 1: I have no strong opinion, but I want the input from others as well. Regards, Hans > >> + >> +/* >> + * These ioctls are called on the request file descriptor as returned >> + * by MEDIA_IOC_REQUEST_ALLOC. >> + */ >> +#define MEDIA_REQUEST_IOC_QUEUE _IO('|', 0x80) >> +#define MEDIA_REQUEST_IOC_REINIT _IO('|', 0x81) >> >> #ifndef __KERNEL__ >> > > > > Thanks, > Mauro >