1 /* linux/arch/arm/plat-s5p/include/plat/regs-mdnie.h
3 * Header file for Samsung SoC mDNIe device.
5 * Copyright (c) 2010 Samsung Electronics
7 * Author : Inki Dae <inki.dae@samsung.com>
9 * This program is free software; you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License version 2 as
11 * published by the Free Software Foundation.
17 #define MDNIE_REG(x) (x * 0x4)
19 #define MDNIE_R0 MDNIE_REG(0)
20 #define MDNIE_R1 MDNIE_REG(1)
21 #define MDNIE_R2 MDNIE_REG(2)
22 #define MDNIE_R3 MDNIE_REG(3)
23 #define MDNIE_R4 MDNIE_REG(4)
24 #define MDNIE_R5 MDNIE_REG(5)
25 #define MDNIE_R6 MDNIE_REG(6)
26 #define MDNIE_R26 MDNIE_REG(0x1a)
27 #define MDNIE_R34 MDNIE_REG(0x22)
28 #define MDNIE_R35 MDNIE_REG(0x23)
29 #define MDNIE_R40 MDNIE_REG(0x28)
30 #define MDNIE_R44 MDNIE_REG(0x2c)
31 #define MDNIE_R45 MDNIE_REG(0x2d)
32 #define MDNIE_R46 MDNIE_REG(0x2e)
33 #define MDNIE_R47 MDNIE_REG(0x2f)
34 #define MDNIE_R48 MDNIE_REG(0x30)
36 #define MDNIE_R58 MDNIE_REG(0x3a)
37 #define MDNIE_R59 MDNIE_REG(0x3b)
38 #define MDNIE_R60 MDNIE_REG(0x3c)
39 #define MDNIE_R61 MDNIE_REG(0x3d)
40 #define MDNIE_R62 MDNIE_REG(0x3e)
41 #define MDNIE_R63 MDNIE_REG(0x3f)
42 #define MDNIE_R64 MDNIE_REG(0x40)
43 #define MDNIE_R65 MDNIE_REG(0x41)
44 #define MDNIE_R66 MDNIE_REG(0x42)
46 #define MDNIE_R73 MDNIE_REG(0x49)
47 #define MDNIE_R74 MDNIE_REG(0x4a)
48 #define MDNIE_R75 MDNIE_REG(0x4b)
49 #define MDNIE_R76 MDNIE_REG(0x4c)
50 #define MDNIE_R77 MDNIE_REG(0x4d)
51 #define MDNIE_R78 MDNIE_REG(0x4e)
52 #define MDNIE_R79 MDNIE_REG(0x4f)
53 #define MDNIE_R80 MDNIE_REG(0x50)
54 #define MDNIE_R81 MDNIE_REG(0x51)
55 #define MDNIE_R82 MDNIE_REG(0x52)
57 #define MDNIE_R84 MDNIE_REG(0x54)
58 #define MDNIE_R85 MDNIE_REG(0x55)
59 #define MDNIE_R86 MDNIE_REG(0x56)
60 #define MDNIE_R87 MDNIE_REG(0x57)
61 #define MDNIE_R88 MDNIE_REG(0x58)
62 #define MDNIE_R89 MDNIE_REG(0x59)
63 #define MDNIE_R90 MDNIE_REG(0x5a)
65 #define MDNIE_R91 MDNIE_REG(0x5b)
66 #define MDNIE_R92 MDNIE_REG(0x5c)
67 #define MDNIE_R93 MDNIE_REG(0x5d)
68 #define MDNIE_R94 MDNIE_REG(0x5e)
69 #define MDNIE_R95 MDNIE_REG(0x5f)
70 #define MDNIE_R96 MDNIE_REG(0x60)
71 #define MDNIE_R97 MDNIE_REG(0x61)
72 #define MDNIE_R98 MDNIE_REG(0x62)
73 #define MDNIE_R99 MDNIE_REG(0x63)
74 #define MDNIE_R100 MDNIE_REG(0x64)
75 #define MDNIE_R101 MDNIE_REG(0x65)
76 #define MDNIE_R102 MDNIE_REG(0x66)
77 #define MDNIE_R103 MDNIE_REG(0x67)
78 #define MDNIE_R104 MDNIE_REG(0x68)
79 #define MDNIE_R105 MDNIE_REG(0x69)
80 #define MDNIE_R106 MDNIE_REG(0x6a)
81 #define MDNIE_R107 MDNIE_REG(0x6b)
83 #define MDNIE_R124 MDNIE_REG(0x7c)
84 #define MDNIE_R125 MDNIE_REG(0x7d)
85 #define MDNIE_R126 MDNIE_REG(0x7e)
86 #define MDNIE_R127 MDNIE_REG(0x7f)
87 #define MDNIE_R130 MDNIE_REG(0x82)
88 #define MDNIE_R179 MDNIE_REG(0xb3)
89 #define MDNIE_R180 MDNIE_REG(0xb4)
90 #define MDNIE_R238 MDNIE_REG(0xee)
91 #define MDNIE_R239 MDNIE_REG(0xef)
92 #define MDNIE_R240 MDNIE_REG(0xf0)
93 #define MDNIE_R241 MDNIE_REG(0xf1)
94 #define MDNIE_R253 MDNIE_REG(0xfd)
97 #define MDNIE_R1_MCM_BYPASS_MODE (1 << 2)
98 #define MDNIE_R1_ALG_DNR_HDTR_MASK (0x3 << 0)
99 #define MDNIE_R1_ALG_DNR_HDTR(x) (((x) & 0x3) << 0)
100 #define MDNIE_R1_ROI_PCA_OVE (1 << 10)
101 #define MDNIE_R1_ROI_HDTR (1 << 9)
102 #define MDNIE_R1_ROI_DNR (1 << 8)
103 #define MDNIE_R1_ROI_OUTSIDE (1 << 7)
104 #define MDNIE_R1_ABC_SEL_MASK (0x3 << 4)
105 #define MDNIE_R1_ABC_SEL(x) (((x) & 0x3) << 4)
108 #define MDNIE_R2_H_START_MASK (0x7ff << 0)
109 #define MDNIE_R2_H_START(x) (((x) & 0x7ff) << 0)
112 #define MDNIE_R3_H_END_MASK (0x7ff << 0)
113 #define MDNIE_R3_H_END(x) (((x) & 0x7ff) << 0)
116 #define MDNIE_R4_V_START_MASK (0x7ff << 0)
117 #define MDNIE_R4_V_START(x) (((x) & 0x7ff) << 0)
120 #define MDNIE_R5_V_END_MASK (0x7ff << 0)
121 #define MDNIE_R5_V_END(x) (((x) & 0x7ff) << 0)
124 #define MDNIE_R6_DITHER_ENABLE (1 << 4)
127 #define MDNIE_R34_WIDTH_MASK (0x7ff << 0)
128 #define MDNIE_R34_WIDTH(x) (((x) & 0x7ff) << 0)
131 #define MDNIE_R35_HEIGHT_MASK (0x7ff << 0)
132 #define MDNIE_R35_HEIGHT(x) (((x) & 0x7ff) << 0)
135 #define MDNIE_R44_DNR_BYPASS_MODE (1 << 14)
138 #define MDNIE_R58_HDTR_BYPASS_MODE (0x1f << 0)
141 #define MDNIE_R73_SN_LVL_MASK (0x3 << 10)
142 #define MDNIE_R73_SN_LVL(x) (((x) & 0x3) << 10)
143 #define MDNIE_R73_SY_LVL_MASK (0x3 << 8)
144 #define MDNIE_R73_SY_LVL(x) (((x) & 0x3) << 8)
145 #define MDNIE_R73_GR_LVL_MASK (0x3 << 6)
146 #define MDNIE_R73_GR_LVL(x) (((x) & 0x3) << 6)
147 #define MDNIE_R73_RD_LVL_MASK (0x3 << 4)
148 #define MDNIE_R73_RD_LVL(x) (((x) & 0x3) << 4)
149 #define MDNIE_R73_YE_LVL_MASK (0x3 << 2)
150 #define MDNIE_R73_YE_LVL(x) (((x) & 0x3) << 2)
151 #define MDNIE_R73_PU_LVL_MASK (0x3 << 0)
152 #define MDNIE_R73_PU_LVL(x) (((x) & 0x3) << 0)
155 #define MDNIE_R82_SN_CC_OFF (1 << 5)
156 #define MDNIE_R82_SY_CC_OFF (1 << 4)
157 #define MDNIE_R82_GR_CC_OFF (1 << 3)
158 #define MDNIE_R82_RD_CC_OFF (1 << 2)
159 #define MDNIE_R82_YE_CC_OFF (1 << 1)
160 #define MDNIE_R82_PU_CC_OFF (1 << 0)
163 #define MDNIE_R84_LIGHT_P_MASK (0xff << 8)
164 #define MDNIE_R84_LIGHT_P(x) (((x) & 0xff) << 8)
165 #define MDNIE_R84_CHROMA_P_MASK (0xff << 0)
166 #define MDNIE_R84_CHROMA_P(x) (((x) & 0xff) << 0)
169 #define MDNIE_R91_QUADRANT_ON (1 << 8)
170 #define MDNIE_R91_COLOR_TEMP_DEST_MASK (0xff << 0)
171 #define MDNIE_R91_COLOR_TEMP_DEST(x) (((x) & 0xff) << 0)
174 #define MDNIE_R106_QUADRANT_TMP1_MASK (0xff << 8)
175 #define MDNIE_R106_QUADRANT_TMP1(x) (((x) & 0xff) << 8)
176 #define MDNIE_R106_QUADRANT_TMP2_MASK (0xff << 0)
177 #define MDNIE_R106_QUADRANT_TMP2(x) (((x) & 0xff) << 0)
180 #define MDNIE_R107_QUADRANT_TMP3_MASK (0xff << 8)
181 #define MDNIE_R107_QUADRANT_TMP3(x) (((x) & 0xff) << 8)
182 #define MDNIE_R107_QUADRANT_TMP4_MASK (0xff << 0)
183 #define MDNIE_R107_QUADRANT_TMP4(x) (((x) & 0xff) << 0)
186 #define MDNIE_R124_CABC_BLU_ENABLE (1 << 1)
187 #define MDNIE_R124_DISPLAY_SEL_OLED (1 << 0)
190 #define MDNIE_R125_ALS_FLAG_UPDATED (1 << 0)
193 #define MDNIE_R126_ALS_DATA_MASK (0xffff << 0)
194 #define MDNIE_R126_ALS_DATA(x) (((x) & 0xffff) << 0)
197 #define MDNIE_R127_WIN_SIZE_MASK (0xf << 4)
198 #define MDNIE_R127_WIN_SIZE(x) (((x) & 0xf) << 4)
199 #define MDNIE_R127_ALS_MODE_MASK (0x3 << 0)
200 #define MDNIE_R127_ALS_MODE(x) (((x) & 0x3) << 0)
203 #define MDNIE_R130_AMB_LVL_MASK (0x4 << 0)
204 #define MDNIE_R130_AMB_LVL(x) (((x) & 0x4) << 0)
207 #define MDNIE_R179_UP_SL_MASK (0xff << 8)
208 #define MDNIE_R179_UP_SL(x) (((x) & 0xff) << 8)
209 #define MDNIE_R179_DOWN_SL_MASK (0xff << 0)
210 #define MDNIE_R179_DOWN_SL(x) (((x) & 0xff) << 0)
213 #define MDNIE_R180_PWM_CE_PWM_COEFF (1 << 15)
214 #define MDNIE_R180_POLARITY_HIGH_ACTIVE (1 << 14)
215 #define MDNIE_R180_LABC_MODE_MASK (0x3 << 12)
216 #define MDNIE_R180_LABC_MODE(x) (((x) & 0x3) << 12)
217 #define MDNIE_R180_ALC_EN (1 << 11)
218 #define MDNIE_R180_PWM_COEFF_COUNT_MASK (0x7ff << 0)
219 #define MDNIE_R180_PWM_COEFF_COUNT(x) (((x) & 0x7ff) << 0)
222 #define MDNIE_R238_ROI_DITHER (1 << 15)
223 #define MDNIE_R238_ROI_OUTSIDE (1 << 14)
224 #define MDNIE_R238_H_START_MASK (0x7ff << 0)
225 #define MDNIE_R238_H_START(x) (((x) & 0x7ff) << 0)
228 #define MDNIE_R239_H_END_MASK (0x7ff << 0)
229 #define MDNIE_R239_H_END(x) (((x) & 0x7ff) << 0)
232 #define MDNIE_R240_V_START_MASK (0x7ff << 0)
233 #define MDNIE_R240_V_START(x) (((x) & 0x7ff) << 0)
236 #define MDNIE_R241_V_END_MASK (0x7ff << 0)
237 #define MDNIE_R241_V_END(x) (((x) & 0x7ff) << 0)