|
@@ -890,19 +890,35 @@ struct v4l2_subdev_fh {
|
|
|
container_of(fh, struct v4l2_subdev_fh, vfh)
|
|
|
|
|
|
#if defined(CONFIG_VIDEO_V4L2_SUBDEV_API)
|
|
|
-#define __V4L2_SUBDEV_MK_GET_TRY(rtype, fun_name, field_name) \
|
|
|
- static inline struct rtype * \
|
|
|
- fun_name(struct v4l2_subdev *sd, \
|
|
|
- struct v4l2_subdev_pad_config *cfg, \
|
|
|
- unsigned int pad) \
|
|
|
- { \
|
|
|
- BUG_ON(pad >= sd->entity.num_pads); \
|
|
|
- return &cfg[pad].field_name; \
|
|
|
- }
|
|
|
+static inline struct v4l2_mbus_framefmt
|
|
|
+*v4l2_subdev_get_try_format(struct v4l2_subdev *sd,
|
|
|
+ struct v4l2_subdev_pad_config *cfg,
|
|
|
+ unsigned int pad)
|
|
|
+{
|
|
|
+ if (WARN_ON(pad >= sd->entity.num_pads))
|
|
|
+ pad = 0;
|
|
|
+ return &cfg[pad].try_fmt;
|
|
|
+}
|
|
|
+
|
|
|
+static inline struct v4l2_rect
|
|
|
+*v4l2_subdev_get_try_crop(struct v4l2_subdev *sd,
|
|
|
+ struct v4l2_subdev_pad_config *cfg,
|
|
|
+ unsigned int pad)
|
|
|
+{
|
|
|
+ if (WARN_ON(pad >= sd->entity.num_pads))
|
|
|
+ pad = 0;
|
|
|
+ return &cfg[pad].try_crop;
|
|
|
+}
|
|
|
|
|
|
-__V4L2_SUBDEV_MK_GET_TRY(v4l2_mbus_framefmt, v4l2_subdev_get_try_format, try_fmt)
|
|
|
-__V4L2_SUBDEV_MK_GET_TRY(v4l2_rect, v4l2_subdev_get_try_crop, try_crop)
|
|
|
-__V4L2_SUBDEV_MK_GET_TRY(v4l2_rect, v4l2_subdev_get_try_compose, try_compose)
|
|
|
+static inline struct v4l2_rect
|
|
|
+*v4l2_subdev_get_try_compose(struct v4l2_subdev *sd,
|
|
|
+ struct v4l2_subdev_pad_config *cfg,
|
|
|
+ unsigned int pad)
|
|
|
+{
|
|
|
+ if (WARN_ON(pad >= sd->entity.num_pads))
|
|
|
+ pad = 0;
|
|
|
+ return &cfg[pad].try_compose;
|
|
|
+}
|
|
|
#endif
|
|
|
|
|
|
extern const struct v4l2_file_operations v4l2_subdev_fops;
|