1238c84f7SMauro Carvalho Chehab // SPDX-License-Identifier: GPL-2.0-only
2238c84f7SMauro Carvalho Chehab /*
3238c84f7SMauro Carvalho Chehab  * Samsung Exynos4 SoC series FIMC-IS slave interface driver
4238c84f7SMauro Carvalho Chehab  *
5238c84f7SMauro Carvalho Chehab  * Error log interface functions
6238c84f7SMauro Carvalho Chehab  *
7238c84f7SMauro Carvalho Chehab  * Copyright (C) 2011 - 2013 Samsung Electronics Co., Ltd.
8238c84f7SMauro Carvalho Chehab  *
9238c84f7SMauro Carvalho Chehab  * Authors: Younghwan Joo <yhwan.joo@samsung.com>
10238c84f7SMauro Carvalho Chehab  *          Sylwester Nawrocki <s.nawrocki@samsung.com>
11238c84f7SMauro Carvalho Chehab  */
12238c84f7SMauro Carvalho Chehab 
13238c84f7SMauro Carvalho Chehab #include "fimc-is-errno.h"
14238c84f7SMauro Carvalho Chehab 
fimc_is_param_strerr(unsigned int error)15238c84f7SMauro Carvalho Chehab const char *fimc_is_param_strerr(unsigned int error)
16238c84f7SMauro Carvalho Chehab {
17238c84f7SMauro Carvalho Chehab 	switch (error) {
18238c84f7SMauro Carvalho Chehab 	case ERROR_COMMON_CMD:
19238c84f7SMauro Carvalho Chehab 		return "ERROR_COMMON_CMD: Invalid Command";
20238c84f7SMauro Carvalho Chehab 	case ERROR_COMMON_PARAMETER:
21238c84f7SMauro Carvalho Chehab 		return "ERROR_COMMON_PARAMETER: Invalid Parameter";
22238c84f7SMauro Carvalho Chehab 	case ERROR_COMMON_SETFILE_LOAD:
23238c84f7SMauro Carvalho Chehab 		return "ERROR_COMMON_SETFILE_LOAD: Illegal Setfile Loading";
24238c84f7SMauro Carvalho Chehab 	case ERROR_COMMON_SETFILE_ADJUST:
25238c84f7SMauro Carvalho Chehab 		return "ERROR_COMMON_SETFILE_ADJUST: Setfile isn't adjusted";
26238c84f7SMauro Carvalho Chehab 	case ERROR_COMMON_SETFILE_INDEX:
27238c84f7SMauro Carvalho Chehab 		return "ERROR_COMMON_SETFILE_INDEX: Invalid setfile index";
28238c84f7SMauro Carvalho Chehab 	case ERROR_COMMON_INPUT_PATH:
29238c84f7SMauro Carvalho Chehab 		return "ERROR_COMMON_INPUT_PATH: Input path can be changed in ready state";
30238c84f7SMauro Carvalho Chehab 	case ERROR_COMMON_INPUT_INIT:
31238c84f7SMauro Carvalho Chehab 		return "ERROR_COMMON_INPUT_INIT: IP can not start if input path is not set";
32238c84f7SMauro Carvalho Chehab 	case ERROR_COMMON_OUTPUT_PATH:
33238c84f7SMauro Carvalho Chehab 		return "ERROR_COMMON_OUTPUT_PATH: Output path can be changed in ready state (stop)";
34238c84f7SMauro Carvalho Chehab 	case ERROR_COMMON_OUTPUT_INIT:
35238c84f7SMauro Carvalho Chehab 		return "ERROR_COMMON_OUTPUT_INIT: IP can not start if output path is not set";
36238c84f7SMauro Carvalho Chehab 	case ERROR_CONTROL_BYPASS:
37238c84f7SMauro Carvalho Chehab 		return "ERROR_CONTROL_BYPASS";
38238c84f7SMauro Carvalho Chehab 	case ERROR_OTF_INPUT_FORMAT:
39238c84f7SMauro Carvalho Chehab 		return "ERROR_OTF_INPUT_FORMAT: Invalid format  (DRC: YUV444, FD: YUV444, 422, 420)";
40238c84f7SMauro Carvalho Chehab 	case ERROR_OTF_INPUT_WIDTH:
41238c84f7SMauro Carvalho Chehab 		return "ERROR_OTF_INPUT_WIDTH: Invalid width (DRC: 128~8192, FD: 32~8190)";
42238c84f7SMauro Carvalho Chehab 	case ERROR_OTF_INPUT_HEIGHT:
43238c84f7SMauro Carvalho Chehab 		return "ERROR_OTF_INPUT_HEIGHT: Invalid bit-width (DRC: 8~12bits, FD: 8bit)";
44238c84f7SMauro Carvalho Chehab 	case ERROR_OTF_INPUT_BIT_WIDTH:
45238c84f7SMauro Carvalho Chehab 		return "ERROR_OTF_INPUT_BIT_WIDTH: Invalid bit-width (DRC: 8~12bits, FD: 8bit)";
46238c84f7SMauro Carvalho Chehab 	case ERROR_DMA_INPUT_WIDTH:
47238c84f7SMauro Carvalho Chehab 		return "ERROR_DMA_INPUT_WIDTH: Invalid width (DRC: 128~8192, FD: 32~8190)";
48238c84f7SMauro Carvalho Chehab 	case ERROR_DMA_INPUT_HEIGHT:
49238c84f7SMauro Carvalho Chehab 		return "ERROR_DMA_INPUT_HEIGHT: Invalid height (DRC: 64~8192, FD: 16~8190)";
50238c84f7SMauro Carvalho Chehab 	case ERROR_DMA_INPUT_FORMAT:
51238c84f7SMauro Carvalho Chehab 		return "ERROR_DMA_INPUT_FORMAT: Invalid format (DRC: YUV444 or YUV422, FD: YUV444,422,420)";
52238c84f7SMauro Carvalho Chehab 	case ERROR_DMA_INPUT_BIT_WIDTH:
53238c84f7SMauro Carvalho Chehab 		return "ERROR_DMA_INPUT_BIT_WIDTH: Invalid bit-width (DRC: 8~12bits, FD: 8bit)";
54238c84f7SMauro Carvalho Chehab 	case ERROR_DMA_INPUT_ORDER:
55238c84f7SMauro Carvalho Chehab 		return "ERROR_DMA_INPUT_ORDER: Invalid order(DRC: YYCbCr,YCbYCr,FD:NO,YYCbCr,YCbYCr,CbCr,CrCb)";
56238c84f7SMauro Carvalho Chehab 	case ERROR_DMA_INPUT_PLANE:
57*6262e802SColin Ian King 		return "ERROR_DMA_INPUT_PLANE: Invalid plane (DRC: 3, FD: 1, 2, 3)";
58238c84f7SMauro Carvalho Chehab 	case ERROR_OTF_OUTPUT_WIDTH:
59238c84f7SMauro Carvalho Chehab 		return "ERROR_OTF_OUTPUT_WIDTH: Invalid width (DRC: 128~8192)";
60238c84f7SMauro Carvalho Chehab 	case ERROR_OTF_OUTPUT_HEIGHT:
61238c84f7SMauro Carvalho Chehab 		return "ERROR_OTF_OUTPUT_HEIGHT: Invalid height (DRC: 64~8192)";
62238c84f7SMauro Carvalho Chehab 	case ERROR_OTF_OUTPUT_FORMAT:
63238c84f7SMauro Carvalho Chehab 		return "ERROR_OTF_OUTPUT_FORMAT: Invalid format (DRC: YUV444)";
64238c84f7SMauro Carvalho Chehab 	case ERROR_OTF_OUTPUT_BIT_WIDTH:
65238c84f7SMauro Carvalho Chehab 		return "ERROR_OTF_OUTPUT_BIT_WIDTH: Invalid bit-width (DRC: 8~12bits, FD: 8bit)";
66238c84f7SMauro Carvalho Chehab 	case ERROR_DMA_OUTPUT_WIDTH:
67238c84f7SMauro Carvalho Chehab 		return "ERROR_DMA_OUTPUT_WIDTH";
68238c84f7SMauro Carvalho Chehab 	case ERROR_DMA_OUTPUT_HEIGHT:
69238c84f7SMauro Carvalho Chehab 		return "ERROR_DMA_OUTPUT_HEIGHT";
70238c84f7SMauro Carvalho Chehab 	case ERROR_DMA_OUTPUT_FORMAT:
71238c84f7SMauro Carvalho Chehab 		return "ERROR_DMA_OUTPUT_FORMAT";
72238c84f7SMauro Carvalho Chehab 	case ERROR_DMA_OUTPUT_BIT_WIDTH:
73238c84f7SMauro Carvalho Chehab 		return "ERROR_DMA_OUTPUT_BIT_WIDTH";
74238c84f7SMauro Carvalho Chehab 	case ERROR_DMA_OUTPUT_PLANE:
75238c84f7SMauro Carvalho Chehab 		return "ERROR_DMA_OUTPUT_PLANE";
76238c84f7SMauro Carvalho Chehab 	case ERROR_DMA_OUTPUT_ORDER:
77238c84f7SMauro Carvalho Chehab 		return "ERROR_DMA_OUTPUT_ORDER";
78238c84f7SMauro Carvalho Chehab 
79238c84f7SMauro Carvalho Chehab 	/* Sensor Error(100~199) */
80238c84f7SMauro Carvalho Chehab 	case ERROR_SENSOR_I2C_FAIL:
81238c84f7SMauro Carvalho Chehab 		return "ERROR_SENSOR_I2C_FAIL";
82238c84f7SMauro Carvalho Chehab 	case ERROR_SENSOR_INVALID_FRAMERATE:
83238c84f7SMauro Carvalho Chehab 		return "ERROR_SENSOR_INVALID_FRAMERATE";
84238c84f7SMauro Carvalho Chehab 	case ERROR_SENSOR_INVALID_EXPOSURETIME:
85238c84f7SMauro Carvalho Chehab 		return "ERROR_SENSOR_INVALID_EXPOSURETIME";
86238c84f7SMauro Carvalho Chehab 	case ERROR_SENSOR_INVALID_SIZE:
87238c84f7SMauro Carvalho Chehab 		return "ERROR_SENSOR_INVALID_SIZE";
88238c84f7SMauro Carvalho Chehab 	case ERROR_SENSOR_INVALID_SETTING:
89238c84f7SMauro Carvalho Chehab 		return "ERROR_SENSOR_INVALID_SETTING";
90238c84f7SMauro Carvalho Chehab 	case ERROR_SENSOR_ACTUATOR_INIT_FAIL:
91238c84f7SMauro Carvalho Chehab 		return "ERROR_SENSOR_ACTUATOR_INIT_FAIL";
92238c84f7SMauro Carvalho Chehab 	case ERROR_SENSOR_INVALID_AF_POS:
93238c84f7SMauro Carvalho Chehab 		return "ERROR_SENSOR_INVALID_AF_POS";
94238c84f7SMauro Carvalho Chehab 	case ERROR_SENSOR_UNSUPPORT_FUNC:
95238c84f7SMauro Carvalho Chehab 		return "ERROR_SENSOR_UNSUPPORT_FUNC";
96238c84f7SMauro Carvalho Chehab 	case ERROR_SENSOR_UNSUPPORT_PERI:
97238c84f7SMauro Carvalho Chehab 		return "ERROR_SENSOR_UNSUPPORT_PERI";
98238c84f7SMauro Carvalho Chehab 	case ERROR_SENSOR_UNSUPPORT_AF:
99238c84f7SMauro Carvalho Chehab 		return "ERROR_SENSOR_UNSUPPORT_AF";
100238c84f7SMauro Carvalho Chehab 
101238c84f7SMauro Carvalho Chehab 	/* ISP Error (200~299) */
102238c84f7SMauro Carvalho Chehab 	case ERROR_ISP_AF_BUSY:
103238c84f7SMauro Carvalho Chehab 		return "ERROR_ISP_AF_BUSY";
104238c84f7SMauro Carvalho Chehab 	case ERROR_ISP_AF_INVALID_COMMAND:
105238c84f7SMauro Carvalho Chehab 		return "ERROR_ISP_AF_INVALID_COMMAND";
106238c84f7SMauro Carvalho Chehab 	case ERROR_ISP_AF_INVALID_MODE:
107238c84f7SMauro Carvalho Chehab 		return "ERROR_ISP_AF_INVALID_MODE";
108238c84f7SMauro Carvalho Chehab 
109238c84f7SMauro Carvalho Chehab 	/* DRC Error (300~399) */
110238c84f7SMauro Carvalho Chehab 	/* FD Error  (400~499) */
111238c84f7SMauro Carvalho Chehab 	case ERROR_FD_CONFIG_MAX_NUMBER_STATE:
112238c84f7SMauro Carvalho Chehab 		return "ERROR_FD_CONFIG_MAX_NUMBER_STATE";
113238c84f7SMauro Carvalho Chehab 	case ERROR_FD_CONFIG_MAX_NUMBER_INVALID:
114238c84f7SMauro Carvalho Chehab 		return "ERROR_FD_CONFIG_MAX_NUMBER_INVALID";
115238c84f7SMauro Carvalho Chehab 	case ERROR_FD_CONFIG_YAW_ANGLE_STATE:
116238c84f7SMauro Carvalho Chehab 		return "ERROR_FD_CONFIG_YAW_ANGLE_STATE";
117238c84f7SMauro Carvalho Chehab 	case ERROR_FD_CONFIG_YAW_ANGLE_INVALID:
118238c84f7SMauro Carvalho Chehab 		return "ERROR_FD_CONFIG_YAW_ANGLE_INVALID\n";
119238c84f7SMauro Carvalho Chehab 	case ERROR_FD_CONFIG_ROLL_ANGLE_STATE:
120238c84f7SMauro Carvalho Chehab 		return "ERROR_FD_CONFIG_ROLL_ANGLE_STATE";
121238c84f7SMauro Carvalho Chehab 	case ERROR_FD_CONFIG_ROLL_ANGLE_INVALID:
122238c84f7SMauro Carvalho Chehab 		return "ERROR_FD_CONFIG_ROLL_ANGLE_INVALID";
123238c84f7SMauro Carvalho Chehab 	case ERROR_FD_CONFIG_SMILE_MODE_INVALID:
124238c84f7SMauro Carvalho Chehab 		return "ERROR_FD_CONFIG_SMILE_MODE_INVALID";
125238c84f7SMauro Carvalho Chehab 	case ERROR_FD_CONFIG_BLINK_MODE_INVALID:
126238c84f7SMauro Carvalho Chehab 		return "ERROR_FD_CONFIG_BLINK_MODE_INVALID";
127238c84f7SMauro Carvalho Chehab 	case ERROR_FD_CONFIG_EYES_DETECT_INVALID:
128238c84f7SMauro Carvalho Chehab 		return "ERROR_FD_CONFIG_EYES_DETECT_INVALID";
129238c84f7SMauro Carvalho Chehab 	case ERROR_FD_CONFIG_MOUTH_DETECT_INVALID:
130238c84f7SMauro Carvalho Chehab 		return "ERROR_FD_CONFIG_MOUTH_DETECT_INVALID";
131238c84f7SMauro Carvalho Chehab 	case ERROR_FD_CONFIG_ORIENTATION_STATE:
132238c84f7SMauro Carvalho Chehab 		return "ERROR_FD_CONFIG_ORIENTATION_STATE";
133238c84f7SMauro Carvalho Chehab 	case ERROR_FD_CONFIG_ORIENTATION_INVALID:
134238c84f7SMauro Carvalho Chehab 		return "ERROR_FD_CONFIG_ORIENTATION_INVALID";
135238c84f7SMauro Carvalho Chehab 	case ERROR_FD_CONFIG_ORIENTATION_VALUE_INVALID:
136238c84f7SMauro Carvalho Chehab 		return "ERROR_FD_CONFIG_ORIENTATION_VALUE_INVALID";
137238c84f7SMauro Carvalho Chehab 	case ERROR_FD_RESULT:
138238c84f7SMauro Carvalho Chehab 		return "ERROR_FD_RESULT";
139238c84f7SMauro Carvalho Chehab 	case ERROR_FD_MODE:
140238c84f7SMauro Carvalho Chehab 		return "ERROR_FD_MODE";
141238c84f7SMauro Carvalho Chehab 	default:
142238c84f7SMauro Carvalho Chehab 		return "Unknown";
143238c84f7SMauro Carvalho Chehab 	}
144238c84f7SMauro Carvalho Chehab }
145238c84f7SMauro Carvalho Chehab 
fimc_is_strerr(unsigned int error)146238c84f7SMauro Carvalho Chehab const char *fimc_is_strerr(unsigned int error)
147238c84f7SMauro Carvalho Chehab {
148238c84f7SMauro Carvalho Chehab 	error &= ~IS_ERROR_TIME_OUT_FLAG;
149238c84f7SMauro Carvalho Chehab 
150238c84f7SMauro Carvalho Chehab 	switch (error) {
151238c84f7SMauro Carvalho Chehab 	/* General */
152238c84f7SMauro Carvalho Chehab 	case IS_ERROR_INVALID_COMMAND:
153238c84f7SMauro Carvalho Chehab 		return "IS_ERROR_INVALID_COMMAND";
154238c84f7SMauro Carvalho Chehab 	case IS_ERROR_REQUEST_FAIL:
155238c84f7SMauro Carvalho Chehab 		return "IS_ERROR_REQUEST_FAIL";
156238c84f7SMauro Carvalho Chehab 	case IS_ERROR_INVALID_SCENARIO:
157238c84f7SMauro Carvalho Chehab 		return "IS_ERROR_INVALID_SCENARIO";
158238c84f7SMauro Carvalho Chehab 	case IS_ERROR_INVALID_SENSORID:
159238c84f7SMauro Carvalho Chehab 		return "IS_ERROR_INVALID_SENSORID";
160238c84f7SMauro Carvalho Chehab 	case IS_ERROR_INVALID_MODE_CHANGE:
161238c84f7SMauro Carvalho Chehab 		return "IS_ERROR_INVALID_MODE_CHANGE";
162238c84f7SMauro Carvalho Chehab 	case IS_ERROR_INVALID_MAGIC_NUMBER:
163238c84f7SMauro Carvalho Chehab 		return "IS_ERROR_INVALID_MAGIC_NUMBER";
164238c84f7SMauro Carvalho Chehab 	case IS_ERROR_INVALID_SETFILE_HDR:
165238c84f7SMauro Carvalho Chehab 		return "IS_ERROR_INVALID_SETFILE_HDR";
166238c84f7SMauro Carvalho Chehab 	case IS_ERROR_BUSY:
167238c84f7SMauro Carvalho Chehab 		return "IS_ERROR_BUSY";
168238c84f7SMauro Carvalho Chehab 	case IS_ERROR_SET_PARAMETER:
169238c84f7SMauro Carvalho Chehab 		return "IS_ERROR_SET_PARAMETER";
170238c84f7SMauro Carvalho Chehab 	case IS_ERROR_INVALID_PATH:
171238c84f7SMauro Carvalho Chehab 		return "IS_ERROR_INVALID_PATH";
172238c84f7SMauro Carvalho Chehab 	case IS_ERROR_OPEN_SENSOR_FAIL:
173238c84f7SMauro Carvalho Chehab 		return "IS_ERROR_OPEN_SENSOR_FAIL";
174238c84f7SMauro Carvalho Chehab 	case IS_ERROR_ENTRY_MSG_THREAD_DOWN:
175238c84f7SMauro Carvalho Chehab 		return "IS_ERROR_ENTRY_MSG_THREAD_DOWN";
176238c84f7SMauro Carvalho Chehab 	case IS_ERROR_ISP_FRAME_END_NOT_DONE:
177238c84f7SMauro Carvalho Chehab 		return "IS_ERROR_ISP_FRAME_END_NOT_DONE";
178238c84f7SMauro Carvalho Chehab 	case IS_ERROR_DRC_FRAME_END_NOT_DONE:
179238c84f7SMauro Carvalho Chehab 		return "IS_ERROR_DRC_FRAME_END_NOT_DONE";
180238c84f7SMauro Carvalho Chehab 	case IS_ERROR_SCALERC_FRAME_END_NOT_DONE:
181238c84f7SMauro Carvalho Chehab 		return "IS_ERROR_SCALERC_FRAME_END_NOT_DONE";
182238c84f7SMauro Carvalho Chehab 	case IS_ERROR_ODC_FRAME_END_NOT_DONE:
183238c84f7SMauro Carvalho Chehab 		return "IS_ERROR_ODC_FRAME_END_NOT_DONE";
184238c84f7SMauro Carvalho Chehab 	case IS_ERROR_DIS_FRAME_END_NOT_DONE:
185238c84f7SMauro Carvalho Chehab 		return "IS_ERROR_DIS_FRAME_END_NOT_DONE";
186238c84f7SMauro Carvalho Chehab 	case IS_ERROR_TDNR_FRAME_END_NOT_DONE:
187238c84f7SMauro Carvalho Chehab 		return "IS_ERROR_TDNR_FRAME_END_NOT_DONE";
188238c84f7SMauro Carvalho Chehab 	case IS_ERROR_SCALERP_FRAME_END_NOT_DONE:
189238c84f7SMauro Carvalho Chehab 		return "IS_ERROR_SCALERP_FRAME_END_NOT_DONE";
190238c84f7SMauro Carvalho Chehab 	case IS_ERROR_WAIT_STREAM_OFF_NOT_DONE:
191238c84f7SMauro Carvalho Chehab 		return "IS_ERROR_WAIT_STREAM_OFF_NOT_DONE";
192238c84f7SMauro Carvalho Chehab 	case IS_ERROR_NO_MSG_IS_RECEIVED:
193238c84f7SMauro Carvalho Chehab 		return "IS_ERROR_NO_MSG_IS_RECEIVED";
194238c84f7SMauro Carvalho Chehab 	case IS_ERROR_SENSOR_MSG_FAIL:
195238c84f7SMauro Carvalho Chehab 		return "IS_ERROR_SENSOR_MSG_FAIL";
196238c84f7SMauro Carvalho Chehab 	case IS_ERROR_ISP_MSG_FAIL:
197238c84f7SMauro Carvalho Chehab 		return "IS_ERROR_ISP_MSG_FAIL";
198238c84f7SMauro Carvalho Chehab 	case IS_ERROR_DRC_MSG_FAIL:
199238c84f7SMauro Carvalho Chehab 		return "IS_ERROR_DRC_MSG_FAIL";
200238c84f7SMauro Carvalho Chehab 	case IS_ERROR_LHFD_MSG_FAIL:
201238c84f7SMauro Carvalho Chehab 		return "IS_ERROR_LHFD_MSG_FAIL";
202238c84f7SMauro Carvalho Chehab 	case IS_ERROR_UNKNOWN:
203238c84f7SMauro Carvalho Chehab 		return "IS_ERROR_UNKNOWN";
204238c84f7SMauro Carvalho Chehab 
205238c84f7SMauro Carvalho Chehab 	/* Sensor */
206238c84f7SMauro Carvalho Chehab 	case IS_ERROR_SENSOR_PWRDN_FAIL:
207238c84f7SMauro Carvalho Chehab 		return "IS_ERROR_SENSOR_PWRDN_FAIL";
208238c84f7SMauro Carvalho Chehab 
209238c84f7SMauro Carvalho Chehab 	/* ISP */
210238c84f7SMauro Carvalho Chehab 	case IS_ERROR_ISP_PWRDN_FAIL:
211238c84f7SMauro Carvalho Chehab 		return "IS_ERROR_ISP_PWRDN_FAIL";
212238c84f7SMauro Carvalho Chehab 	case IS_ERROR_ISP_MULTIPLE_INPUT:
213238c84f7SMauro Carvalho Chehab 		return "IS_ERROR_ISP_MULTIPLE_INPUT";
214238c84f7SMauro Carvalho Chehab 	case IS_ERROR_ISP_ABSENT_INPUT:
215238c84f7SMauro Carvalho Chehab 		return "IS_ERROR_ISP_ABSENT_INPUT";
216238c84f7SMauro Carvalho Chehab 	case IS_ERROR_ISP_ABSENT_OUTPUT:
217238c84f7SMauro Carvalho Chehab 		return "IS_ERROR_ISP_ABSENT_OUTPUT";
218238c84f7SMauro Carvalho Chehab 	case IS_ERROR_ISP_NONADJACENT_OUTPUT:
219238c84f7SMauro Carvalho Chehab 		return "IS_ERROR_ISP_NONADJACENT_OUTPUT";
220238c84f7SMauro Carvalho Chehab 	case IS_ERROR_ISP_FORMAT_MISMATCH:
221238c84f7SMauro Carvalho Chehab 		return "IS_ERROR_ISP_FORMAT_MISMATCH";
222238c84f7SMauro Carvalho Chehab 	case IS_ERROR_ISP_WIDTH_MISMATCH:
223238c84f7SMauro Carvalho Chehab 		return "IS_ERROR_ISP_WIDTH_MISMATCH";
224238c84f7SMauro Carvalho Chehab 	case IS_ERROR_ISP_HEIGHT_MISMATCH:
225238c84f7SMauro Carvalho Chehab 		return "IS_ERROR_ISP_HEIGHT_MISMATCH";
226238c84f7SMauro Carvalho Chehab 	case IS_ERROR_ISP_BITWIDTH_MISMATCH:
227238c84f7SMauro Carvalho Chehab 		return "IS_ERROR_ISP_BITWIDTH_MISMATCH";
228238c84f7SMauro Carvalho Chehab 	case IS_ERROR_ISP_FRAME_END_TIME_OUT:
229238c84f7SMauro Carvalho Chehab 		return "IS_ERROR_ISP_FRAME_END_TIME_OUT";
230238c84f7SMauro Carvalho Chehab 
231238c84f7SMauro Carvalho Chehab 	/* DRC */
232238c84f7SMauro Carvalho Chehab 	case IS_ERROR_DRC_PWRDN_FAIL:
233238c84f7SMauro Carvalho Chehab 		return "IS_ERROR_DRC_PWRDN_FAIL";
234238c84f7SMauro Carvalho Chehab 	case IS_ERROR_DRC_MULTIPLE_INPUT:
235238c84f7SMauro Carvalho Chehab 		return "IS_ERROR_DRC_MULTIPLE_INPUT";
236238c84f7SMauro Carvalho Chehab 	case IS_ERROR_DRC_ABSENT_INPUT:
237238c84f7SMauro Carvalho Chehab 		return "IS_ERROR_DRC_ABSENT_INPUT";
238238c84f7SMauro Carvalho Chehab 	case IS_ERROR_DRC_NONADJACENT_INPUT:
239238c84f7SMauro Carvalho Chehab 		return "IS_ERROR_DRC_NONADJACENT_INPUT";
240238c84f7SMauro Carvalho Chehab 	case IS_ERROR_DRC_ABSENT_OUTPUT:
241238c84f7SMauro Carvalho Chehab 		return "IS_ERROR_DRC_ABSENT_OUTPUT";
242238c84f7SMauro Carvalho Chehab 	case IS_ERROR_DRC_NONADJACENT_OUTPUT:
243238c84f7SMauro Carvalho Chehab 		return "IS_ERROR_DRC_NONADJACENT_OUTPUT";
244238c84f7SMauro Carvalho Chehab 	case IS_ERROR_DRC_FORMAT_MISMATCH:
245238c84f7SMauro Carvalho Chehab 		return "IS_ERROR_DRC_FORMAT_MISMATCH";
246238c84f7SMauro Carvalho Chehab 	case IS_ERROR_DRC_WIDTH_MISMATCH:
247238c84f7SMauro Carvalho Chehab 		return "IS_ERROR_DRC_WIDTH_MISMATCH";
248238c84f7SMauro Carvalho Chehab 	case IS_ERROR_DRC_HEIGHT_MISMATCH:
249238c84f7SMauro Carvalho Chehab 		return "IS_ERROR_DRC_HEIGHT_MISMATCH";
250238c84f7SMauro Carvalho Chehab 	case IS_ERROR_DRC_BITWIDTH_MISMATCH:
251238c84f7SMauro Carvalho Chehab 		return "IS_ERROR_DRC_BITWIDTH_MISMATCH";
252238c84f7SMauro Carvalho Chehab 	case IS_ERROR_DRC_FRAME_END_TIME_OUT:
253238c84f7SMauro Carvalho Chehab 		return "IS_ERROR_DRC_FRAME_END_TIME_OUT";
254238c84f7SMauro Carvalho Chehab 
255238c84f7SMauro Carvalho Chehab 	/* FD */
256238c84f7SMauro Carvalho Chehab 	case IS_ERROR_FD_PWRDN_FAIL:
257238c84f7SMauro Carvalho Chehab 		return "IS_ERROR_FD_PWRDN_FAIL";
258238c84f7SMauro Carvalho Chehab 	case IS_ERROR_FD_MULTIPLE_INPUT:
259238c84f7SMauro Carvalho Chehab 		return "IS_ERROR_FD_MULTIPLE_INPUT";
260238c84f7SMauro Carvalho Chehab 	case IS_ERROR_FD_ABSENT_INPUT:
261238c84f7SMauro Carvalho Chehab 		return "IS_ERROR_FD_ABSENT_INPUT";
262238c84f7SMauro Carvalho Chehab 	case IS_ERROR_FD_NONADJACENT_INPUT:
263238c84f7SMauro Carvalho Chehab 		return "IS_ERROR_FD_NONADJACENT_INPUT";
264238c84f7SMauro Carvalho Chehab 	case IS_ERROR_LHFD_FRAME_END_TIME_OUT:
265238c84f7SMauro Carvalho Chehab 		return "IS_ERROR_LHFD_FRAME_END_TIME_OUT";
266238c84f7SMauro Carvalho Chehab 	default:
267238c84f7SMauro Carvalho Chehab 		return "Unknown";
268238c84f7SMauro Carvalho Chehab 	}
269238c84f7SMauro Carvalho Chehab }
270