The CSI-2 spec defines format identifier for Data Type (DT), and how the Decode Format (DF) & Encode Format (EF) are implemented. The spec does however not define the DF, EF or Plain Format (PF) identifiers, as those are vendor specific. Plain formats describe the size of the pixels written by the RDI units to memory. PLAIN8 for example has the size 8 bits, and PLAIN32 32 bits. The appropriate Plain Format is determined by the Decode Format used. The smallest Plain Format that is able to contain a pixel of the used Decode Format is the appropriate one to use. As the vendor specific identifiers differ between hardware generations, split them out into separate headers. Signed-off-by: Robert Foss <robert.foss@linaro.org> Reviewed-by: Andrey Konovalov <andrey.konovalov@linaro.org> Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
40 lines
1.3 KiB
C
40 lines
1.3 KiB
C
/* SPDX-License-Identifier: GPL-2.0 */
|
|
/*
|
|
* camss-csid-gen1.h
|
|
*
|
|
* Qualcomm MSM Camera Subsystem - CSID (CSI Decoder) Module Generation 1
|
|
*
|
|
* Copyright (C) 2021 Linaro Ltd.
|
|
*/
|
|
#ifndef QC_MSM_CAMSS_CSID_GEN2_H
|
|
#define QC_MSM_CAMSS_CSID_GEN2_H
|
|
|
|
#define DECODE_FORMAT_UNCOMPRESSED_6_BIT 0x0
|
|
#define DECODE_FORMAT_UNCOMPRESSED_8_BIT 0x1
|
|
#define DECODE_FORMAT_UNCOMPRESSED_10_BIT 0x2
|
|
#define DECODE_FORMAT_UNCOMPRESSED_12_BIT 0x3
|
|
#define DECODE_FORMAT_UNCOMPRESSED_14_BIT 0x4
|
|
#define DECODE_FORMAT_UNCOMPRESSED_16_BIT 0x5
|
|
#define DECODE_FORMAT_UNCOMPRESSED_20_BIT 0x6
|
|
#define DECODE_FORMAT_DPCM_10_6_10 0x7
|
|
#define DECODE_FORMAT_DPCM_10_8_10 0x8
|
|
#define DECODE_FORMAT_DPCM_12_6_12 0x9
|
|
#define DECODE_FORMAT_DPCM_12_8_12 0xa
|
|
#define DECODE_FORMAT_DPCM_14_8_14 0xb
|
|
#define DECODE_FORMAT_DPCM_14_10_14 0xc
|
|
#define DECODE_FORMAT_DPCM_12_10_12 0xd
|
|
#define DECODE_FORMAT_USER_DEFINED 0xe
|
|
#define DECODE_FORMAT_PAYLOAD_ONLY 0xf
|
|
|
|
#define ENCODE_FORMAT_RAW_8_BIT 0x1
|
|
#define ENCODE_FORMAT_RAW_10_BIT 0x2
|
|
#define ENCODE_FORMAT_RAW_12_BIT 0x3
|
|
#define ENCODE_FORMAT_RAW_14_BIT 0x4
|
|
#define ENCODE_FORMAT_RAW_16_BIT 0x5
|
|
|
|
#define PLAIN_FORMAT_PLAIN8 0x0 /* supports DPCM, UNCOMPRESSED_6/8_BIT */
|
|
#define PLAIN_FORMAT_PLAIN16 0x1 /* supports DPCM, UNCOMPRESSED_10/16_BIT */
|
|
#define PLAIN_FORMAT_PLAIN32 0x2 /* supports UNCOMPRESSED_20_BIT */
|
|
|
|
#endif /* QC_MSM_CAMSS_CSID_GEN2_H */
|