linux/drivers/media/platform/raspberrypi/pisp_be/pisp_be_formats.h

/* SPDX-License-Identifier: GPL-2.0 */
/*
 * PiSP Back End driver image format definitions.
 *
 * Copyright (c) 2021-2024 Raspberry Pi Ltd
 */

#ifndef _PISP_BE_FORMATS_
#define _PISP_BE_FORMATS_

#include <linux/bits.h>
#include <linux/videodev2.h>

#define PISPBE_MAX_PLANES
#define P3(x)

struct pisp_be_format {};

#define V4L2_COLORSPACE_MASK(colorspace)

#define V4L2_COLORSPACE_MASK_JPEG
#define V4L2_COLORSPACE_MASK_SMPTE170M
#define V4L2_COLORSPACE_MASK_REC709
#define V4L2_COLORSPACE_MASK_SRGB
#define V4L2_COLORSPACE_MASK_RAW

/*
 * All three colour spaces SRGB, SMPTE170M and REC709 are fundamentally sRGB
 * underneath (as near as makes no difference to us), just with different YCbCr
 * encodings. Therefore the ISP can generate sRGB on its main output and any of
 * the others on its low resolution output. Applications should, when using both
 * outputs, program the colour spaces on them to be the same, matching whatever
 * is requested for the low resolution output, even if the main output is
 * producing an RGB format. In turn this requires us to allow all these colour
 * spaces for every YUV/RGB output format.
 */
#define V4L2_COLORSPACE_MASK_ALL_SRGB

static const struct pisp_be_format supported_formats[] =;

static const struct pisp_be_format meta_out_supported_formats[] =;

#endif /* _PISP_BE_FORMATS_ */