]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
media: stm32: dcmipp: Add RGB888 format support overall
authorAlain Volmat <alain.volmat@foss.st.com>
Fri, 19 Dec 2025 14:30:37 +0000 (15:30 +0100)
committerHans Verkuil <hverkuil+cisco@kernel.org>
Fri, 16 Jan 2026 13:08:52 +0000 (14:08 +0100)
Add entries within several subdevs in order to handle RGB888 format.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Hans Verkuil <hverkuil+cisco@kernel.org>
drivers/media/platform/st/stm32/stm32-dcmipp/dcmipp-bytecap.c
drivers/media/platform/st/stm32/stm32-dcmipp/dcmipp-byteproc.c
drivers/media/platform/st/stm32/stm32-dcmipp/dcmipp-input.c

index b18e273ef4a3e6e8339f5d4d2c01899594e46d5b..6d42517817fd0a5a903c1a87acc211fba1d4c2ef 100644 (file)
@@ -57,6 +57,7 @@ struct dcmipp_bytecap_pix_map {
 static const struct dcmipp_bytecap_pix_map dcmipp_bytecap_pix_map_list[] = {
        PIXMAP_MBUS_PFMT(RGB565_2X8_LE, RGB565),
        PIXMAP_MBUS_PFMT(RGB565_1X16, RGB565),
+       PIXMAP_MBUS_PFMT(RGB888_1X24, RGB24),
        PIXMAP_MBUS_PFMT(YUYV8_2X8, YUYV),
        PIXMAP_MBUS_PFMT(YUYV8_1X16, YUYV),
        PIXMAP_MBUS_PFMT(YVYU8_2X8, YVYU),
index ec1d773d5ad123eac4930b7a451e25c5bf0d1892..dde28ed288cd4b02cdc4a1a7033f394ab50e7f90 100644 (file)
@@ -49,6 +49,8 @@ struct dcmipp_byteproc_pix_map {
 static const struct dcmipp_byteproc_pix_map dcmipp_byteproc_pix_map_list[] = {
        PIXMAP_MBUS_BPP(RGB565_2X8_LE, 2),
        PIXMAP_MBUS_BPP(RGB565_1X16, 2),
+       PIXMAP_MBUS_BPP(RGB888_3X8, 3),
+       PIXMAP_MBUS_BPP(RGB888_1X24, 3),
        PIXMAP_MBUS_BPP(YUYV8_2X8, 2),
        PIXMAP_MBUS_BPP(YUYV8_1X16, 2),
        PIXMAP_MBUS_BPP(YVYU8_2X8, 2),
index 7e5311b67d7ea4e84dec1456c58491153d69ef17..c44d664f6a0bc5c43ff8eda7fb037ec06414cec7 100644 (file)
@@ -19,6 +19,7 @@
 #define DCMIPP_PRCR_FORMAT_SHIFT       16
 #define DCMIPP_PRCR_FORMAT_YUV422      0x1e
 #define DCMIPP_PRCR_FORMAT_RGB565      0x22
+#define DCMIPP_PRCR_FORMAT_RGB888      0x24
 #define DCMIPP_PRCR_FORMAT_RAW8                0x2a
 #define DCMIPP_PRCR_FORMAT_RAW10       0x2b
 #define DCMIPP_PRCR_FORMAT_RAW12       0x2c
@@ -72,6 +73,9 @@ static const struct dcmipp_inp_pix_map dcmipp_inp_pix_map_list[] = {
        PIXMAP_SINK_SRC_PRCR_SWAP(RGB565_2X8_LE, RGB565_2X8_LE, RGB565, 1, MIPI_CSI2_DT_RGB565),
        PIXMAP_SINK_SRC_PRCR_SWAP(RGB565_2X8_BE, RGB565_2X8_LE, RGB565, 0, MIPI_CSI2_DT_RGB565),
        PIXMAP_SINK_SRC_PRCR_SWAP(RGB565_1X16, RGB565_1X16, RGB565, 0, MIPI_CSI2_DT_RGB565),
+       /* RGB888 */
+       PIXMAP_SINK_SRC_PRCR_SWAP(RGB888_3X8, RGB888_3X8, RGB888, 0, MIPI_CSI2_DT_RGB888),
+       PIXMAP_SINK_SRC_PRCR_SWAP(RGB888_1X24, RGB888_1X24, RGB888, 0, MIPI_CSI2_DT_RGB888),
        /* YUV422 */
        PIXMAP_SINK_SRC_PRCR_SWAP(YUYV8_2X8, YUYV8_2X8, YUV422, 1, MIPI_CSI2_DT_YUV422_8B),
        PIXMAP_SINK_SRC_PRCR_SWAP(YUYV8_1X16, YUYV8_1X16, YUV422, 0, MIPI_CSI2_DT_YUV422_8B),