summaryrefslogtreecommitdiff
path: root/drivers/media/platform/atmel/atmel-isc.c
diff options
context:
space:
mode:
authorEugen Hristev <eugen.hristev@microchip.com>2019-03-29 10:38:31 +0300
committerMauro Carvalho Chehab <mchehab+samsung@kernel.org>2019-04-22 17:28:56 +0300
commitb063474e2130b6bab48ac20acd9b821dfc16c171 (patch)
treebac658c7d71d368f1160516fabecfed8d3bc1a58 /drivers/media/platform/atmel/atmel-isc.c
parent1e8f401474d6b7c2138521d38a73d829eba0138e (diff)
downloadlinux-b063474e2130b6bab48ac20acd9b821dfc16c171.tar.xz
media: atmel: atmel-isc: removed ARGB32 added ABGR32 and XBGR32
ISC will output the "ARGB32" configuration in byte order: B, G, R, Alpha. This is in fact the format BGRA, aka ABGR32. If alpha is missing, the same format is equivalent to XBGR32. Added both formats and removed ARGB32 which is wrong. Signed-off-by: Eugen Hristev <eugen.hristev@microchip.com> Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
Diffstat (limited to 'drivers/media/platform/atmel/atmel-isc.c')
-rw-r--r--drivers/media/platform/atmel/atmel-isc.c14
1 files changed, 10 insertions, 4 deletions
diff --git a/drivers/media/platform/atmel/atmel-isc.c b/drivers/media/platform/atmel/atmel-isc.c
index 61d927684183..4bba9da206e4 100644
--- a/drivers/media/platform/atmel/atmel-isc.c
+++ b/drivers/media/platform/atmel/atmel-isc.c
@@ -228,7 +228,10 @@ static struct isc_format controller_formats[] = {
.fourcc = V4L2_PIX_FMT_RGB565,
},
{
- .fourcc = V4L2_PIX_FMT_ARGB32,
+ .fourcc = V4L2_PIX_FMT_ABGR32,
+ },
+ {
+ .fourcc = V4L2_PIX_FMT_XBGR32,
},
{
.fourcc = V4L2_PIX_FMT_YUV420,
@@ -1100,7 +1103,8 @@ static int isc_try_validate_formats(struct isc_device *isc)
break;
case V4L2_PIX_FMT_RGB565:
- case V4L2_PIX_FMT_ARGB32:
+ case V4L2_PIX_FMT_ABGR32:
+ case V4L2_PIX_FMT_XBGR32:
case V4L2_PIX_FMT_ARGB444:
case V4L2_PIX_FMT_ARGB555:
ret = 0;
@@ -1188,7 +1192,8 @@ static int isc_try_configure_rlp_dma(struct isc_device *isc, bool direct_dump)
isc->try_config.dctrl_dview = ISC_DCTRL_DVIEW_PACKED;
isc->try_config.bpp = 16;
break;
- case V4L2_PIX_FMT_ARGB32:
+ case V4L2_PIX_FMT_ABGR32:
+ case V4L2_PIX_FMT_XBGR32:
isc->try_config.rlp_cfg_mode = ISC_RLP_CFG_MODE_ARGB32;
isc->try_config.dcfg_imode = ISC_DCFG_IMODE_PACKED32;
isc->try_config.dctrl_dview = ISC_DCTRL_DVIEW_PACKED;
@@ -1234,7 +1239,8 @@ static int isc_try_configure_pipeline(struct isc_device *isc)
case V4L2_PIX_FMT_RGB565:
case V4L2_PIX_FMT_ARGB555:
case V4L2_PIX_FMT_ARGB444:
- case V4L2_PIX_FMT_ARGB32:
+ case V4L2_PIX_FMT_ABGR32:
+ case V4L2_PIX_FMT_XBGR32:
/* if sensor format is RAW, we convert inside ISC */
if (ISC_IS_FORMAT_RAW(isc->try_config.sd_format->mbus_code)) {
isc->try_config.bits_pipeline = CFA_ENABLE |