media: ti: j721e-csi2rx: add support for RGB formats
authorJai Luthra <j-luthra@ti.com>
Fri, 5 Jan 2024 09:00:25 +0000 (10:00 +0100)
committerHans Verkuil <hverkuil-cisco@xs4all.nl>
Mon, 22 Jan 2024 16:23:59 +0000 (17:23 +0100)
commit5eb0ad467cb0cf8f9a6621d079a1f7ecd804153f
tree3d1ea8e74a62246c6bb3e0bd107577e84893f416
parent77759eb0b895e6be7ab1fbbfdf064b6fea62b406
media: ti: j721e-csi2rx: add support for RGB formats

Add support for RGB565, RGB888 and BGR888 media bus formats.

The pixel formats for these have a different byte-order than the MIPI
bus formats, given the SHIM IP [1] unpacks them into memory as follows:

MIPI RGB888 unpacks to:
BYTE3 BYTE2 BYTE1 BYTE0
00000000 RRRRRRRR GGGGGGGG BBBBBBBB

MIPI RGB565 unpacks to:
BIT 15-11 BIT 10-5 BIT 4-0
RRRRR GGGGGG BBBBB

[1]: AM62x TRM: 12.6.1.4.5 "CSI_RX_IF Data Memory Organization Details"

Link: https://www.ti.com/lit/pdf/spruiv7
Signed-off-by: Jai Luthra <j-luthra@ti.com>
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
drivers/media/platform/ti/j721e-csi2rx/j721e-csi2rx.c