Commit | Line | Data |
---|---|---|
9a761e43 SN |
1 | /* |
2 | * Samsung Exynos4 SoC series FIMC-IS slave interface driver | |
3 | * | |
4 | * Error log interface functions | |
5 | * | |
6 | * Copyright (C) 2011 - 2013 Samsung Electronics Co., Ltd. | |
7 | * | |
8 | * Authors: Younghwan Joo <yhwan.joo@samsung.com> | |
9 | * Sylwester Nawrocki <s.nawrocki@samsung.com> | |
10 | * | |
11 | * This program is free software; you can redistribute it and/or modify | |
12 | * it under the terms of the GNU General Public License version 2 as | |
13 | * published by the Free Software Foundation. | |
14 | */ | |
15 | ||
16 | #include "fimc-is-errno.h" | |
17 | ||
2ff1d4c1 | 18 | const char *fimc_is_param_strerr(unsigned int error) |
9a761e43 SN |
19 | { |
20 | switch (error) { | |
21 | case ERROR_COMMON_CMD: | |
22 | return "ERROR_COMMON_CMD: Invalid Command"; | |
23 | case ERROR_COMMON_PARAMETER: | |
24 | return "ERROR_COMMON_PARAMETER: Invalid Parameter"; | |
25 | case ERROR_COMMON_SETFILE_LOAD: | |
26 | return "ERROR_COMMON_SETFILE_LOAD: Illegal Setfile Loading"; | |
27 | case ERROR_COMMON_SETFILE_ADJUST: | |
28 | return "ERROR_COMMON_SETFILE_ADJUST: Setfile isn't adjusted"; | |
29 | case ERROR_COMMON_SETFILE_INDEX: | |
30 | return "ERROR_COMMON_SETFILE_INDEX: Invalid setfile index"; | |
31 | case ERROR_COMMON_INPUT_PATH: | |
32 | return "ERROR_COMMON_INPUT_PATH: Input path can be changed in ready state"; | |
33 | case ERROR_COMMON_INPUT_INIT: | |
34 | return "ERROR_COMMON_INPUT_INIT: IP can not start if input path is not set"; | |
35 | case ERROR_COMMON_OUTPUT_PATH: | |
36 | return "ERROR_COMMON_OUTPUT_PATH: Output path can be changed in ready state (stop)"; | |
37 | case ERROR_COMMON_OUTPUT_INIT: | |
38 | return "ERROR_COMMON_OUTPUT_INIT: IP can not start if output path is not set"; | |
39 | case ERROR_CONTROL_BYPASS: | |
40 | return "ERROR_CONTROL_BYPASS"; | |
41 | case ERROR_OTF_INPUT_FORMAT: | |
42 | return "ERROR_OTF_INPUT_FORMAT: Invalid format (DRC: YUV444, FD: YUV444, 422, 420)"; | |
43 | case ERROR_OTF_INPUT_WIDTH: | |
44 | return "ERROR_OTF_INPUT_WIDTH: Invalid width (DRC: 128~8192, FD: 32~8190)"; | |
45 | case ERROR_OTF_INPUT_HEIGHT: | |
46 | return "ERROR_OTF_INPUT_HEIGHT: Invalid bit-width (DRC: 8~12bits, FD: 8bit)"; | |
47 | case ERROR_OTF_INPUT_BIT_WIDTH: | |
48 | return "ERROR_OTF_INPUT_BIT_WIDTH: Invalid bit-width (DRC: 8~12bits, FD: 8bit)"; | |
49 | case ERROR_DMA_INPUT_WIDTH: | |
50 | return "ERROR_DMA_INPUT_WIDTH: Invalid width (DRC: 128~8192, FD: 32~8190)"; | |
51 | case ERROR_DMA_INPUT_HEIGHT: | |
52 | return "ERROR_DMA_INPUT_HEIGHT: Invalid height (DRC: 64~8192, FD: 16~8190)"; | |
53 | case ERROR_DMA_INPUT_FORMAT: | |
54 | return "ERROR_DMA_INPUT_FORMAT: Invalid format (DRC: YUV444 or YUV422, FD: YUV444,422,420)"; | |
55 | case ERROR_DMA_INPUT_BIT_WIDTH: | |
56 | return "ERROR_DMA_INPUT_BIT_WIDTH: Invalid bit-width (DRC: 8~12bits, FD: 8bit)"; | |
57 | case ERROR_DMA_INPUT_ORDER: | |
58 | return "ERROR_DMA_INPUT_ORDER: Invalid order(DRC: YYCbCr,YCbYCr,FD:NO,YYCbCr,YCbYCr,CbCr,CrCb)"; | |
59 | case ERROR_DMA_INPUT_PLANE: | |
60 | return "ERROR_DMA_INPUT_PLANE: Invalid palne (DRC: 3, FD: 1, 2, 3)"; | |
61 | case ERROR_OTF_OUTPUT_WIDTH: | |
62 | return "ERROR_OTF_OUTPUT_WIDTH: Invalid width (DRC: 128~8192)"; | |
63 | case ERROR_OTF_OUTPUT_HEIGHT: | |
64 | return "ERROR_OTF_OUTPUT_HEIGHT: Invalid height (DRC: 64~8192)"; | |
65 | case ERROR_OTF_OUTPUT_FORMAT: | |
66 | return "ERROR_OTF_OUTPUT_FORMAT: Invalid format (DRC: YUV444)"; | |
67 | case ERROR_OTF_OUTPUT_BIT_WIDTH: | |
68 | return "ERROR_OTF_OUTPUT_BIT_WIDTH: Invalid bit-width (DRC: 8~12bits, FD: 8bit)"; | |
69 | case ERROR_DMA_OUTPUT_WIDTH: | |
70 | return "ERROR_DMA_OUTPUT_WIDTH"; | |
71 | case ERROR_DMA_OUTPUT_HEIGHT: | |
72 | return "ERROR_DMA_OUTPUT_HEIGHT"; | |
73 | case ERROR_DMA_OUTPUT_FORMAT: | |
74 | return "ERROR_DMA_OUTPUT_FORMAT"; | |
75 | case ERROR_DMA_OUTPUT_BIT_WIDTH: | |
76 | return "ERROR_DMA_OUTPUT_BIT_WIDTH"; | |
77 | case ERROR_DMA_OUTPUT_PLANE: | |
78 | return "ERROR_DMA_OUTPUT_PLANE"; | |
79 | case ERROR_DMA_OUTPUT_ORDER: | |
80 | return "ERROR_DMA_OUTPUT_ORDER"; | |
81 | ||
82 | /* Sensor Error(100~199) */ | |
83 | case ERROR_SENSOR_I2C_FAIL: | |
84 | return "ERROR_SENSOR_I2C_FAIL"; | |
85 | case ERROR_SENSOR_INVALID_FRAMERATE: | |
86 | return "ERROR_SENSOR_INVALID_FRAMERATE"; | |
87 | case ERROR_SENSOR_INVALID_EXPOSURETIME: | |
88 | return "ERROR_SENSOR_INVALID_EXPOSURETIME"; | |
89 | case ERROR_SENSOR_INVALID_SIZE: | |
90 | return "ERROR_SENSOR_INVALID_SIZE"; | |
91 | case ERROR_SENSOR_INVALID_SETTING: | |
92 | return "ERROR_SENSOR_INVALID_SETTING"; | |
93 | case ERROR_SENSOR_ACTURATOR_INIT_FAIL: | |
94 | return "ERROR_SENSOR_ACTURATOR_INIT_FAIL"; | |
95 | case ERROR_SENSOR_INVALID_AF_POS: | |
96 | return "ERROR_SENSOR_INVALID_AF_POS"; | |
97 | case ERROR_SENSOR_UNSUPPORT_FUNC: | |
98 | return "ERROR_SENSOR_UNSUPPORT_FUNC"; | |
99 | case ERROR_SENSOR_UNSUPPORT_PERI: | |
100 | return "ERROR_SENSOR_UNSUPPORT_PERI"; | |
101 | case ERROR_SENSOR_UNSUPPORT_AF: | |
102 | return "ERROR_SENSOR_UNSUPPORT_AF"; | |
103 | ||
104 | /* ISP Error (200~299) */ | |
105 | case ERROR_ISP_AF_BUSY: | |
106 | return "ERROR_ISP_AF_BUSY"; | |
107 | case ERROR_ISP_AF_INVALID_COMMAND: | |
108 | return "ERROR_ISP_AF_INVALID_COMMAND"; | |
109 | case ERROR_ISP_AF_INVALID_MODE: | |
110 | return "ERROR_ISP_AF_INVALID_MODE"; | |
111 | ||
112 | /* DRC Error (300~399) */ | |
113 | /* FD Error (400~499) */ | |
114 | case ERROR_FD_CONFIG_MAX_NUMBER_STATE: | |
115 | return "ERROR_FD_CONFIG_MAX_NUMBER_STATE"; | |
116 | case ERROR_FD_CONFIG_MAX_NUMBER_INVALID: | |
117 | return "ERROR_FD_CONFIG_MAX_NUMBER_INVALID"; | |
118 | case ERROR_FD_CONFIG_YAW_ANGLE_STATE: | |
119 | return "ERROR_FD_CONFIG_YAW_ANGLE_STATE"; | |
120 | case ERROR_FD_CONFIG_YAW_ANGLE_INVALID: | |
121 | return "ERROR_FD_CONFIG_YAW_ANGLE_INVALID\n"; | |
122 | case ERROR_FD_CONFIG_ROLL_ANGLE_STATE: | |
123 | return "ERROR_FD_CONFIG_ROLL_ANGLE_STATE"; | |
124 | case ERROR_FD_CONFIG_ROLL_ANGLE_INVALID: | |
125 | return "ERROR_FD_CONFIG_ROLL_ANGLE_INVALID"; | |
126 | case ERROR_FD_CONFIG_SMILE_MODE_INVALID: | |
127 | return "ERROR_FD_CONFIG_SMILE_MODE_INVALID"; | |
128 | case ERROR_FD_CONFIG_BLINK_MODE_INVALID: | |
129 | return "ERROR_FD_CONFIG_BLINK_MODE_INVALID"; | |
130 | case ERROR_FD_CONFIG_EYES_DETECT_INVALID: | |
131 | return "ERROR_FD_CONFIG_EYES_DETECT_INVALID"; | |
132 | case ERROR_FD_CONFIG_MOUTH_DETECT_INVALID: | |
133 | return "ERROR_FD_CONFIG_MOUTH_DETECT_INVALID"; | |
134 | case ERROR_FD_CONFIG_ORIENTATION_STATE: | |
135 | return "ERROR_FD_CONFIG_ORIENTATION_STATE"; | |
136 | case ERROR_FD_CONFIG_ORIENTATION_INVALID: | |
137 | return "ERROR_FD_CONFIG_ORIENTATION_INVALID"; | |
138 | case ERROR_FD_CONFIG_ORIENTATION_VALUE_INVALID: | |
139 | return "ERROR_FD_CONFIG_ORIENTATION_VALUE_INVALID"; | |
140 | case ERROR_FD_RESULT: | |
141 | return "ERROR_FD_RESULT"; | |
142 | case ERROR_FD_MODE: | |
143 | return "ERROR_FD_MODE"; | |
144 | default: | |
145 | return "Unknown"; | |
146 | } | |
147 | } | |
148 | ||
2ff1d4c1 | 149 | const char *fimc_is_strerr(unsigned int error) |
9a761e43 SN |
150 | { |
151 | error &= ~IS_ERROR_TIME_OUT_FLAG; | |
152 | ||
153 | switch (error) { | |
154 | /* General */ | |
155 | case IS_ERROR_INVALID_COMMAND: | |
156 | return "IS_ERROR_INVALID_COMMAND"; | |
157 | case IS_ERROR_REQUEST_FAIL: | |
158 | return "IS_ERROR_REQUEST_FAIL"; | |
159 | case IS_ERROR_INVALID_SCENARIO: | |
160 | return "IS_ERROR_INVALID_SCENARIO"; | |
161 | case IS_ERROR_INVALID_SENSORID: | |
162 | return "IS_ERROR_INVALID_SENSORID"; | |
163 | case IS_ERROR_INVALID_MODE_CHANGE: | |
164 | return "IS_ERROR_INVALID_MODE_CHANGE"; | |
165 | case IS_ERROR_INVALID_MAGIC_NUMBER: | |
166 | return "IS_ERROR_INVALID_MAGIC_NUMBER"; | |
167 | case IS_ERROR_INVALID_SETFILE_HDR: | |
168 | return "IS_ERROR_INVALID_SETFILE_HDR"; | |
169 | case IS_ERROR_BUSY: | |
170 | return "IS_ERROR_BUSY"; | |
171 | case IS_ERROR_SET_PARAMETER: | |
172 | return "IS_ERROR_SET_PARAMETER"; | |
173 | case IS_ERROR_INVALID_PATH: | |
174 | return "IS_ERROR_INVALID_PATH"; | |
175 | case IS_ERROR_OPEN_SENSOR_FAIL: | |
176 | return "IS_ERROR_OPEN_SENSOR_FAIL"; | |
177 | case IS_ERROR_ENTRY_MSG_THREAD_DOWN: | |
178 | return "IS_ERROR_ENTRY_MSG_THREAD_DOWN"; | |
179 | case IS_ERROR_ISP_FRAME_END_NOT_DONE: | |
180 | return "IS_ERROR_ISP_FRAME_END_NOT_DONE"; | |
181 | case IS_ERROR_DRC_FRAME_END_NOT_DONE: | |
182 | return "IS_ERROR_DRC_FRAME_END_NOT_DONE"; | |
183 | case IS_ERROR_SCALERC_FRAME_END_NOT_DONE: | |
184 | return "IS_ERROR_SCALERC_FRAME_END_NOT_DONE"; | |
185 | case IS_ERROR_ODC_FRAME_END_NOT_DONE: | |
186 | return "IS_ERROR_ODC_FRAME_END_NOT_DONE"; | |
187 | case IS_ERROR_DIS_FRAME_END_NOT_DONE: | |
188 | return "IS_ERROR_DIS_FRAME_END_NOT_DONE"; | |
189 | case IS_ERROR_TDNR_FRAME_END_NOT_DONE: | |
190 | return "IS_ERROR_TDNR_FRAME_END_NOT_DONE"; | |
191 | case IS_ERROR_SCALERP_FRAME_END_NOT_DONE: | |
192 | return "IS_ERROR_SCALERP_FRAME_END_NOT_DONE"; | |
193 | case IS_ERROR_WAIT_STREAM_OFF_NOT_DONE: | |
194 | return "IS_ERROR_WAIT_STREAM_OFF_NOT_DONE"; | |
195 | case IS_ERROR_NO_MSG_IS_RECEIVED: | |
196 | return "IS_ERROR_NO_MSG_IS_RECEIVED"; | |
197 | case IS_ERROR_SENSOR_MSG_FAIL: | |
198 | return "IS_ERROR_SENSOR_MSG_FAIL"; | |
199 | case IS_ERROR_ISP_MSG_FAIL: | |
200 | return "IS_ERROR_ISP_MSG_FAIL"; | |
201 | case IS_ERROR_DRC_MSG_FAIL: | |
202 | return "IS_ERROR_DRC_MSG_FAIL"; | |
203 | case IS_ERROR_LHFD_MSG_FAIL: | |
204 | return "IS_ERROR_LHFD_MSG_FAIL"; | |
205 | case IS_ERROR_UNKNOWN: | |
206 | return "IS_ERROR_UNKNOWN"; | |
207 | ||
208 | /* Sensor */ | |
209 | case IS_ERROR_SENSOR_PWRDN_FAIL: | |
210 | return "IS_ERROR_SENSOR_PWRDN_FAIL"; | |
211 | ||
212 | /* ISP */ | |
213 | case IS_ERROR_ISP_PWRDN_FAIL: | |
214 | return "IS_ERROR_ISP_PWRDN_FAIL"; | |
215 | case IS_ERROR_ISP_MULTIPLE_INPUT: | |
216 | return "IS_ERROR_ISP_MULTIPLE_INPUT"; | |
217 | case IS_ERROR_ISP_ABSENT_INPUT: | |
218 | return "IS_ERROR_ISP_ABSENT_INPUT"; | |
219 | case IS_ERROR_ISP_ABSENT_OUTPUT: | |
220 | return "IS_ERROR_ISP_ABSENT_OUTPUT"; | |
221 | case IS_ERROR_ISP_NONADJACENT_OUTPUT: | |
222 | return "IS_ERROR_ISP_NONADJACENT_OUTPUT"; | |
223 | case IS_ERROR_ISP_FORMAT_MISMATCH: | |
224 | return "IS_ERROR_ISP_FORMAT_MISMATCH"; | |
225 | case IS_ERROR_ISP_WIDTH_MISMATCH: | |
226 | return "IS_ERROR_ISP_WIDTH_MISMATCH"; | |
227 | case IS_ERROR_ISP_HEIGHT_MISMATCH: | |
228 | return "IS_ERROR_ISP_HEIGHT_MISMATCH"; | |
229 | case IS_ERROR_ISP_BITWIDTH_MISMATCH: | |
230 | return "IS_ERROR_ISP_BITWIDTH_MISMATCH"; | |
231 | case IS_ERROR_ISP_FRAME_END_TIME_OUT: | |
232 | return "IS_ERROR_ISP_FRAME_END_TIME_OUT"; | |
233 | ||
234 | /* DRC */ | |
235 | case IS_ERROR_DRC_PWRDN_FAIL: | |
236 | return "IS_ERROR_DRC_PWRDN_FAIL"; | |
237 | case IS_ERROR_DRC_MULTIPLE_INPUT: | |
238 | return "IS_ERROR_DRC_MULTIPLE_INPUT"; | |
239 | case IS_ERROR_DRC_ABSENT_INPUT: | |
240 | return "IS_ERROR_DRC_ABSENT_INPUT"; | |
241 | case IS_ERROR_DRC_NONADJACENT_INPUT: | |
242 | return "IS_ERROR_DRC_NONADJACENT_INPUT"; | |
243 | case IS_ERROR_DRC_ABSENT_OUTPUT: | |
244 | return "IS_ERROR_DRC_ABSENT_OUTPUT"; | |
245 | case IS_ERROR_DRC_NONADJACENT_OUTPUT: | |
246 | return "IS_ERROR_DRC_NONADJACENT_OUTPUT"; | |
247 | case IS_ERROR_DRC_FORMAT_MISMATCH: | |
248 | return "IS_ERROR_DRC_FORMAT_MISMATCH"; | |
249 | case IS_ERROR_DRC_WIDTH_MISMATCH: | |
250 | return "IS_ERROR_DRC_WIDTH_MISMATCH"; | |
251 | case IS_ERROR_DRC_HEIGHT_MISMATCH: | |
252 | return "IS_ERROR_DRC_HEIGHT_MISMATCH"; | |
253 | case IS_ERROR_DRC_BITWIDTH_MISMATCH: | |
254 | return "IS_ERROR_DRC_BITWIDTH_MISMATCH"; | |
255 | case IS_ERROR_DRC_FRAME_END_TIME_OUT: | |
256 | return "IS_ERROR_DRC_FRAME_END_TIME_OUT"; | |
257 | ||
258 | /* FD */ | |
259 | case IS_ERROR_FD_PWRDN_FAIL: | |
260 | return "IS_ERROR_FD_PWRDN_FAIL"; | |
261 | case IS_ERROR_FD_MULTIPLE_INPUT: | |
262 | return "IS_ERROR_FD_MULTIPLE_INPUT"; | |
263 | case IS_ERROR_FD_ABSENT_INPUT: | |
264 | return "IS_ERROR_FD_ABSENT_INPUT"; | |
265 | case IS_ERROR_FD_NONADJACENT_INPUT: | |
266 | return "IS_ERROR_FD_NONADJACENT_INPUT"; | |
267 | case IS_ERROR_LHFD_FRAME_END_TIME_OUT: | |
268 | return "IS_ERROR_LHFD_FRAME_END_TIME_OUT"; | |
269 | default: | |
270 | return "Unknown"; | |
271 | } | |
272 | } |