[v8,14/16] media: cadence: csi2rx: Support RAW8 and RAW10 formats

Message ID 20230731-upstream_csi-v8-14-fb7d3661c2c9@ti.com (mailing list archive)
State Changes Requested
Headers
Series CSI2RX support on J721E and AM62 |

Commit Message

Jai Luthra July 31, 2023, 8:29 a.m. UTC
  Many CSI-2 sensors (specifically IMX219) send RAW bayer data instead of
processed YUV or RGB, so add support for 8-bit and 10-bit bayer formats.

Signed-off-by: Jai Luthra <j-luthra@ti.com>
---
New in v8

 drivers/media/platform/cadence/cdns-csi2rx.c | 32 ++++++++++++++++++++++++++++
 1 file changed, 32 insertions(+)
  

Comments

Tomi Valkeinen Aug. 2, 2023, 9:46 a.m. UTC | #1
On 31/07/2023 11:29, Jai Luthra wrote:
> Many CSI-2 sensors (specifically IMX219) send RAW bayer data instead of
> processed YUV or RGB, so add support for 8-bit and 10-bit bayer formats.
> 
> Signed-off-by: Jai Luthra <j-luthra@ti.com>
> ---
> New in v8
> 
>   drivers/media/platform/cadence/cdns-csi2rx.c | 32 ++++++++++++++++++++++++++++
>   1 file changed, 32 insertions(+)
> 
> diff --git a/drivers/media/platform/cadence/cdns-csi2rx.c b/drivers/media/platform/cadence/cdns-csi2rx.c
> index aec33d28a66f..bac74474841a 100644
> --- a/drivers/media/platform/cadence/cdns-csi2rx.c
> +++ b/drivers/media/platform/cadence/cdns-csi2rx.c
> @@ -122,6 +122,38 @@ static const struct csi2rx_fmt formats[] = {
>   		.code	= MEDIA_BUS_FMT_VYUY8_1X16,
>   		.bpp	= 16,
>   	},
> +	{
> +		.code	= MEDIA_BUS_FMT_SBGGR8_1X8,
> +		.bpp	= 8,
> +	},
> +	{
> +		.code	= MEDIA_BUS_FMT_SGBRG8_1X8,
> +		.bpp	= 8,
> +	},
> +	{
> +		.code	= MEDIA_BUS_FMT_SGRBG8_1X8,
> +		.bpp	= 8,
> +	},
> +	{
> +		.code	= MEDIA_BUS_FMT_SRGGB8_1X8,
> +		.bpp	= 8,
> +	},
> +	{
> +		.code	= MEDIA_BUS_FMT_SBGGR10_1X10,
> +		.bpp	= 10,
> +	},
> +	{
> +		.code	= MEDIA_BUS_FMT_SGBRG10_1X10,
> +		.bpp	= 10,
> +	},
> +	{
> +		.code	= MEDIA_BUS_FMT_SGRBG10_1X10,
> +		.bpp	= 10,
> +	},
> +	{
> +		.code	= MEDIA_BUS_FMT_SRGGB10_1X10,
> +		.bpp	= 10,
> +	},
>   };
>   
>   static const struct csi2rx_fmt *csi2rx_get_fmt_by_code(u32 code)
> 

Reviewed-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com>

  Tomi
  

Patch

diff --git a/drivers/media/platform/cadence/cdns-csi2rx.c b/drivers/media/platform/cadence/cdns-csi2rx.c
index aec33d28a66f..bac74474841a 100644
--- a/drivers/media/platform/cadence/cdns-csi2rx.c
+++ b/drivers/media/platform/cadence/cdns-csi2rx.c
@@ -122,6 +122,38 @@  static const struct csi2rx_fmt formats[] = {
 		.code	= MEDIA_BUS_FMT_VYUY8_1X16,
 		.bpp	= 16,
 	},
+	{
+		.code	= MEDIA_BUS_FMT_SBGGR8_1X8,
+		.bpp	= 8,
+	},
+	{
+		.code	= MEDIA_BUS_FMT_SGBRG8_1X8,
+		.bpp	= 8,
+	},
+	{
+		.code	= MEDIA_BUS_FMT_SGRBG8_1X8,
+		.bpp	= 8,
+	},
+	{
+		.code	= MEDIA_BUS_FMT_SRGGB8_1X8,
+		.bpp	= 8,
+	},
+	{
+		.code	= MEDIA_BUS_FMT_SBGGR10_1X10,
+		.bpp	= 10,
+	},
+	{
+		.code	= MEDIA_BUS_FMT_SGBRG10_1X10,
+		.bpp	= 10,
+	},
+	{
+		.code	= MEDIA_BUS_FMT_SGRBG10_1X10,
+		.bpp	= 10,
+	},
+	{
+		.code	= MEDIA_BUS_FMT_SRGGB10_1X10,
+		.bpp	= 10,
+	},
 };
 
 static const struct csi2rx_fmt *csi2rx_get_fmt_by_code(u32 code)