Message ID | 20191014001615.2865301-2-niklas.soderlund+renesas@ragnatech.se (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | rcar-vin: Add support for outputting NV12 | expand |
Hi Niklas, Thank you for the patch. On Mon, Oct 14, 2019 at 02:16:14AM +0200, Niklas Söderlund wrote: > Most but not all Gen3 hardware support outputting NV12, add a flag to > indicate which SoCs do support it. > > Signed-off-by: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> > --- > drivers/media/platform/rcar-vin/rcar-core.c | 6 ++++++ > drivers/media/platform/rcar-vin/rcar-vin.h | 2 ++ > 2 files changed, 8 insertions(+) > > diff --git a/drivers/media/platform/rcar-vin/rcar-core.c b/drivers/media/platform/rcar-vin/rcar-core.c > index 334c62805959cc8a..dcb539711151a3b5 100644 > --- a/drivers/media/platform/rcar-vin/rcar-core.c > +++ b/drivers/media/platform/rcar-vin/rcar-core.c > @@ -983,6 +983,7 @@ static const struct rvin_group_route rcar_info_r8a7795_routes[] = { > static const struct rvin_info rcar_info_r8a7795 = { > .model = RCAR_GEN3, > .use_mc = true, > + .nv12 = true, > .max_width = 4096, > .max_height = 4096, > .routes = rcar_info_r8a7795_routes, > @@ -1077,6 +1078,7 @@ static const struct rvin_group_route rcar_info_r8a7796_routes[] = { > static const struct rvin_info rcar_info_r8a7796 = { > .model = RCAR_GEN3, > .use_mc = true, > + .nv12 = true, > .max_width = 4096, > .max_height = 4096, > .routes = rcar_info_r8a7796_routes, > @@ -1121,6 +1123,7 @@ static const struct rvin_group_route rcar_info_r8a77965_routes[] = { > static const struct rvin_info rcar_info_r8a77965 = { > .model = RCAR_GEN3, > .use_mc = true, > + .nv12 = true, > .max_width = 4096, > .max_height = 4096, > .routes = rcar_info_r8a77965_routes, > @@ -1168,6 +1171,7 @@ static const struct rvin_group_route rcar_info_r8a77980_routes[] = { > static const struct rvin_info rcar_info_r8a77980 = { > .model = RCAR_GEN3, > .use_mc = true, > + .nv12 = true, > .max_width = 4096, > .max_height = 4096, > .routes = rcar_info_r8a77980_routes, > @@ -1184,6 +1188,7 @@ static const struct rvin_group_route rcar_info_r8a77990_routes[] = { > static const struct rvin_info rcar_info_r8a77990 = { > .model = RCAR_GEN3, > .use_mc = true, > + .nv12 = true, > .max_width = 4096, > .max_height = 4096, > .routes = rcar_info_r8a77990_routes, > @@ -1196,6 +1201,7 @@ static const struct rvin_group_route rcar_info_r8a77995_routes[] = { > static const struct rvin_info rcar_info_r8a77995 = { > .model = RCAR_GEN3, > .use_mc = true, > + .nv12 = true, > .max_width = 4096, > .max_height = 4096, > .routes = rcar_info_r8a77995_routes, > diff --git a/drivers/media/platform/rcar-vin/rcar-vin.h b/drivers/media/platform/rcar-vin/rcar-vin.h > index 86e9bad44484092c..a36b0824f81d171d 100644 > --- a/drivers/media/platform/rcar-vin/rcar-vin.h > +++ b/drivers/media/platform/rcar-vin/rcar-vin.h > @@ -126,6 +126,7 @@ struct rvin_group_route { > * struct rvin_info - Information about the particular VIN implementation > * @model: VIN model > * @use_mc: use media controller instead of controlling subdevice > + * @nv12: support outputing NV12 pixel format > * @max_width: max input width the VIN supports > * @max_height: max input height the VIN supports > * @routes: list of possible routes from the CSI-2 recivers to > @@ -134,6 +135,7 @@ struct rvin_group_route { > struct rvin_info { > enum model_id model; > bool use_mc; > + bool nv12; > > unsigned int max_width; > unsigned int max_height;
diff --git a/drivers/media/platform/rcar-vin/rcar-core.c b/drivers/media/platform/rcar-vin/rcar-core.c index 334c62805959cc8a..dcb539711151a3b5 100644 --- a/drivers/media/platform/rcar-vin/rcar-core.c +++ b/drivers/media/platform/rcar-vin/rcar-core.c @@ -983,6 +983,7 @@ static const struct rvin_group_route rcar_info_r8a7795_routes[] = { static const struct rvin_info rcar_info_r8a7795 = { .model = RCAR_GEN3, .use_mc = true, + .nv12 = true, .max_width = 4096, .max_height = 4096, .routes = rcar_info_r8a7795_routes, @@ -1077,6 +1078,7 @@ static const struct rvin_group_route rcar_info_r8a7796_routes[] = { static const struct rvin_info rcar_info_r8a7796 = { .model = RCAR_GEN3, .use_mc = true, + .nv12 = true, .max_width = 4096, .max_height = 4096, .routes = rcar_info_r8a7796_routes, @@ -1121,6 +1123,7 @@ static const struct rvin_group_route rcar_info_r8a77965_routes[] = { static const struct rvin_info rcar_info_r8a77965 = { .model = RCAR_GEN3, .use_mc = true, + .nv12 = true, .max_width = 4096, .max_height = 4096, .routes = rcar_info_r8a77965_routes, @@ -1168,6 +1171,7 @@ static const struct rvin_group_route rcar_info_r8a77980_routes[] = { static const struct rvin_info rcar_info_r8a77980 = { .model = RCAR_GEN3, .use_mc = true, + .nv12 = true, .max_width = 4096, .max_height = 4096, .routes = rcar_info_r8a77980_routes, @@ -1184,6 +1188,7 @@ static const struct rvin_group_route rcar_info_r8a77990_routes[] = { static const struct rvin_info rcar_info_r8a77990 = { .model = RCAR_GEN3, .use_mc = true, + .nv12 = true, .max_width = 4096, .max_height = 4096, .routes = rcar_info_r8a77990_routes, @@ -1196,6 +1201,7 @@ static const struct rvin_group_route rcar_info_r8a77995_routes[] = { static const struct rvin_info rcar_info_r8a77995 = { .model = RCAR_GEN3, .use_mc = true, + .nv12 = true, .max_width = 4096, .max_height = 4096, .routes = rcar_info_r8a77995_routes, diff --git a/drivers/media/platform/rcar-vin/rcar-vin.h b/drivers/media/platform/rcar-vin/rcar-vin.h index 86e9bad44484092c..a36b0824f81d171d 100644 --- a/drivers/media/platform/rcar-vin/rcar-vin.h +++ b/drivers/media/platform/rcar-vin/rcar-vin.h @@ -126,6 +126,7 @@ struct rvin_group_route { * struct rvin_info - Information about the particular VIN implementation * @model: VIN model * @use_mc: use media controller instead of controlling subdevice + * @nv12: support outputing NV12 pixel format * @max_width: max input width the VIN supports * @max_height: max input height the VIN supports * @routes: list of possible routes from the CSI-2 recivers to @@ -134,6 +135,7 @@ struct rvin_group_route { struct rvin_info { enum model_id model; bool use_mc; + bool nv12; unsigned int max_width; unsigned int max_height;
Most but not all Gen3 hardware support outputting NV12, add a flag to indicate which SoCs do support it. Signed-off-by: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se> --- drivers/media/platform/rcar-vin/rcar-core.c | 6 ++++++ drivers/media/platform/rcar-vin/rcar-vin.h | 2 ++ 2 files changed, 8 insertions(+)