diff options
author | Hans Verkuil <hans.verkuil@cisco.com> | 2015-03-07 17:01:53 +0100 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@osg.samsung.com> | 2015-04-03 01:35:37 +0200 |
commit | 06d1f0c2eaaebe04fa3ea780ca37dcd6e05ade16 (patch) | |
tree | 330cc399696cf6a97ab18451d4e595c18441bd6e | |
parent | [media] vivid: do not allow video loopback for SEQ_TB/BT (diff) | |
download | linux-06d1f0c2eaaebe04fa3ea780ca37dcd6e05ade16.tar.xz linux-06d1f0c2eaaebe04fa3ea780ca37dcd6e05ade16.zip |
[media] vivid-tpg: separate planes and buffers
Add a new field that contains the number of buffers. This may be
less than the number of planes in case multiple planes are combined
into one buffer.
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
-rw-r--r-- | drivers/media/platform/vivid/vivid-tpg.c | 3 | ||||
-rw-r--r-- | drivers/media/platform/vivid/vivid-tpg.h | 6 |
2 files changed, 9 insertions, 0 deletions
diff --git a/drivers/media/platform/vivid/vivid-tpg.c b/drivers/media/platform/vivid/vivid-tpg.c index 145b6ff2f816..d7f55d437f91 100644 --- a/drivers/media/platform/vivid/vivid-tpg.c +++ b/drivers/media/platform/vivid/vivid-tpg.c @@ -170,7 +170,9 @@ bool tpg_s_fourcc(struct tpg_data *tpg, u32 fourcc) { tpg->fourcc = fourcc; tpg->planes = 1; + tpg->buffers = 1; tpg->recalc_colors = true; + switch (fourcc) { case V4L2_PIX_FMT_RGB565: case V4L2_PIX_FMT_RGB565X: @@ -190,6 +192,7 @@ bool tpg_s_fourcc(struct tpg_data *tpg, u32 fourcc) break; case V4L2_PIX_FMT_NV16M: case V4L2_PIX_FMT_NV61M: + tpg->buffers = 2; tpg->planes = 2; /* fall-through */ case V4L2_PIX_FMT_YUYV: diff --git a/drivers/media/platform/vivid/vivid-tpg.h b/drivers/media/platform/vivid/vivid-tpg.h index e796a54e6c9f..9ce2d015a322 100644 --- a/drivers/media/platform/vivid/vivid-tpg.h +++ b/drivers/media/platform/vivid/vivid-tpg.h @@ -138,6 +138,7 @@ struct tpg_data { enum tpg_pixel_aspect pix_aspect; unsigned rgb_range; unsigned real_rgb_range; + unsigned buffers; unsigned planes; /* Used to store the colors in native format, either RGB or YUV */ u8 colors[TPG_COLOR_MAX][3]; @@ -327,6 +328,11 @@ static inline u32 tpg_g_quantization(const struct tpg_data *tpg) return tpg->quantization; } +static inline unsigned tpg_g_buffers(const struct tpg_data *tpg) +{ + return tpg->buffers; +} + static inline unsigned tpg_g_planes(const struct tpg_data *tpg) { return tpg->planes; |