Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input
[sfrench/cifs-2.6.git] / include / media / v4l2-tpg-colors.h
1 /*
2  * v4l2-tpg-colors.h - Color definitions for the test pattern generator
3  *
4  * Copyright 2014 Cisco Systems, Inc. and/or its affiliates. All rights reserved.
5  *
6  * This program is free software; you may redistribute it and/or modify
7  * it under the terms of the GNU General Public License as published by
8  * the Free Software Foundation; version 2 of the License.
9  *
10  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
11  * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
12  * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
13  * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
14  * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
15  * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
16  * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
17  * SOFTWARE.
18  */
19
20 #ifndef _V4L2_TPG_COLORS_H_
21 #define _V4L2_TPG_COLORS_H_
22
23 struct color {
24         unsigned char r, g, b;
25 };
26
27 struct color16 {
28         int r, g, b;
29 };
30
31 enum tpg_color {
32         TPG_COLOR_CSC_WHITE,
33         TPG_COLOR_CSC_YELLOW,
34         TPG_COLOR_CSC_CYAN,
35         TPG_COLOR_CSC_GREEN,
36         TPG_COLOR_CSC_MAGENTA,
37         TPG_COLOR_CSC_RED,
38         TPG_COLOR_CSC_BLUE,
39         TPG_COLOR_CSC_BLACK,
40         TPG_COLOR_75_YELLOW,
41         TPG_COLOR_75_CYAN,
42         TPG_COLOR_75_GREEN,
43         TPG_COLOR_75_MAGENTA,
44         TPG_COLOR_75_RED,
45         TPG_COLOR_75_BLUE,
46         TPG_COLOR_100_WHITE,
47         TPG_COLOR_100_YELLOW,
48         TPG_COLOR_100_CYAN,
49         TPG_COLOR_100_GREEN,
50         TPG_COLOR_100_MAGENTA,
51         TPG_COLOR_100_RED,
52         TPG_COLOR_100_BLUE,
53         TPG_COLOR_100_BLACK,
54         TPG_COLOR_TEXTFG,
55         TPG_COLOR_TEXTBG,
56         TPG_COLOR_RANDOM,
57         TPG_COLOR_RAMP,
58         TPG_COLOR_MAX = TPG_COLOR_RAMP + 256
59 };
60
61 extern const struct color tpg_colors[TPG_COLOR_MAX];
62 extern const unsigned short tpg_rec709_to_linear[255 * 16 + 1];
63 extern const unsigned short tpg_linear_to_rec709[255 * 16 + 1];
64 extern const struct color16 tpg_csc_colors[V4L2_COLORSPACE_DCI_P3 + 1]
65                                           [V4L2_XFER_FUNC_SMPTE2084 + 1]
66                                           [TPG_COLOR_CSC_BLACK + 1];
67
68 #endif