[v4,10/10,media] v4l: Forbid usage of V4L2_MBUS_FMT definitions inside the kernel
Commit Message
Place v4l2_mbus_pixelcode in a #ifndef __KERNEL__ section so that kernel
users don't have access to these definitions.
We have to keep this definition for user-space users even though they're
encouraged to move to the new media_bus_format enum.
Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com>
---
include/uapi/linux/v4l2-mediabus.h | 12 ++++++++++++
1 file changed, 12 insertions(+)
Comments
Hi Boris,
Boris Brezillon wrote:
> @@ -102,6 +113,7 @@ enum v4l2_mbus_pixelcode {
>
> V4L2_MBUS_FROM_MEDIA_BUS_FMT(AHSV8888_1X32),
> };
> +#endif /* __KERNEL__ */
>
> /**
> * struct v4l2_mbus_framefmt - frame format on the media bus
Was it intended to be this way, or did I miss something? I'd put this to
beginning of the file, as Hans suggested.
With this matter sorted out, for the set:
Acked-by: Sakari Ailus <sakari.ailus@linux.intel.com>
On Sat, 08 Nov 2014 00:47:25 +0200
Sakari Ailus <sakari.ailus@iki.fi> wrote:
> Hi Boris,
>
> Boris Brezillon wrote:
> > @@ -102,6 +113,7 @@ enum v4l2_mbus_pixelcode {
> >
> > V4L2_MBUS_FROM_MEDIA_BUS_FMT(AHSV8888_1X32),
> > };
> > +#endif /* __KERNEL__ */
> >
> > /**
> > * struct v4l2_mbus_framefmt - frame format on the media bus
>
> Was it intended to be this way, or did I miss something? I'd put this to
> beginning of the file, as Hans suggested.
Oops, I forgot to move the struct.
>
> With this matter sorted out, for the set:
>
> Acked-by: Sakari Ailus <sakari.ailus@linux.intel.com>
>
@@ -15,6 +15,17 @@
#include <linux/types.h>
#include <linux/videodev2.h>
+#ifndef __KERNEL__
+
+/*
+ * enum v4l2_mbus_pixelcode and its definitions are now deprecated, and
+ * MEDIA_BUS_FMT_ definitions (defined in media-bus-format.h) should be
+ * used instead.
+ *
+ * New defines should only be added to media-bus-format.h. The
+ * v4l2_mbus_pixelcode enum is frozen.
+ */
+
#define V4L2_MBUS_FROM_MEDIA_BUS_FMT(name) \
MEDIA_BUS_FMT_ ## name = V4L2_MBUS_FMT_ ## name
@@ -102,6 +113,7 @@ enum v4l2_mbus_pixelcode {
V4L2_MBUS_FROM_MEDIA_BUS_FMT(AHSV8888_1X32),
};
+#endif /* __KERNEL__ */
/**
* struct v4l2_mbus_framefmt - frame format on the media bus