diff options
Diffstat (limited to 'drivers/media/platform/exynos4-is/fimc-is-errno.h')
| -rw-r--r-- | drivers/media/platform/exynos4-is/fimc-is-errno.h | 248 | 
1 files changed, 248 insertions, 0 deletions
diff --git a/drivers/media/platform/exynos4-is/fimc-is-errno.h b/drivers/media/platform/exynos4-is/fimc-is-errno.h new file mode 100644 index 00000000000..3de6f6da6f8 --- /dev/null +++ b/drivers/media/platform/exynos4-is/fimc-is-errno.h @@ -0,0 +1,248 @@ +/* + * Samsung Exynos4 SoC series FIMC-IS slave interface driver + * + * FIMC-IS error code definition + * + * Copyright (C) 2011 - 2013 Samsung Electronics Co., Ltd. + * + * Authors: Younghwan Joo <yhwan.joo@samsung.com> + *          Sylwester Nawrocki <s.nawrocki@samsung.com> + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. +*/ + +#ifndef FIMC_IS_ERR_H_ +#define FIMC_IS_ERR_H_ + +#define IS_ERROR_VER			011 /* IS ERROR VERSION 0.11 */ + +enum { +	IS_ERROR_NONE, + +	/* General 1 ~ 99 */ +	IS_ERROR_INVALID_COMMAND, +	IS_ERROR_REQUEST_FAIL, +	IS_ERROR_INVALID_SCENARIO, +	IS_ERROR_INVALID_SENSORID, +	IS_ERROR_INVALID_MODE_CHANGE, +	IS_ERROR_INVALID_MAGIC_NUMBER, +	IS_ERROR_INVALID_SETFILE_HDR, +	IS_ERROR_BUSY, +	IS_ERROR_SET_PARAMETER, +	IS_ERROR_INVALID_PATH, +	IS_ERROR_OPEN_SENSOR_FAIL, +	IS_ERROR_ENTRY_MSG_THREAD_DOWN, +	IS_ERROR_ISP_FRAME_END_NOT_DONE, +	IS_ERROR_DRC_FRAME_END_NOT_DONE, +	IS_ERROR_SCALERC_FRAME_END_NOT_DONE, +	IS_ERROR_ODC_FRAME_END_NOT_DONE, +	IS_ERROR_DIS_FRAME_END_NOT_DONE, +	IS_ERROR_TDNR_FRAME_END_NOT_DONE, +	IS_ERROR_SCALERP_FRAME_END_NOT_DONE, +	IS_ERROR_WAIT_STREAM_OFF_NOT_DONE, +	IS_ERROR_NO_MSG_IS_RECEIVED, +	IS_ERROR_SENSOR_MSG_FAIL, +	IS_ERROR_ISP_MSG_FAIL, +	IS_ERROR_DRC_MSG_FAIL, +	IS_ERROR_SCALERC_MSG_FAIL, +	IS_ERROR_ODC_MSG_FAIL, +	IS_ERROR_DIS_MSG_FAIL, +	IS_ERROR_TDNR_MSG_FAIL, +	IS_ERROR_SCALERP_MSG_FAIL, +	IS_ERROR_LHFD_MSG_FAIL, +	IS_ERROR_LHFD_INTERNAL_STOP, + +	/* Sensor 100 ~ 199 */ +	IS_ERROR_SENSOR_PWRDN_FAIL	= 100, +	IS_ERROR_SENSOR_STREAM_ON_FAIL, +	IS_ERROR_SENSOR_STREAM_OFF_FAIL, + +	/* ISP 200 ~ 299 */ +	IS_ERROR_ISP_PWRDN_FAIL		= 200, +	IS_ERROR_ISP_MULTIPLE_INPUT, +	IS_ERROR_ISP_ABSENT_INPUT, +	IS_ERROR_ISP_ABSENT_OUTPUT, +	IS_ERROR_ISP_NONADJACENT_OUTPUT, +	IS_ERROR_ISP_FORMAT_MISMATCH, +	IS_ERROR_ISP_WIDTH_MISMATCH, +	IS_ERROR_ISP_HEIGHT_MISMATCH, +	IS_ERROR_ISP_BITWIDTH_MISMATCH, +	IS_ERROR_ISP_FRAME_END_TIME_OUT, + +	/* DRC 300 ~ 399 */ +	IS_ERROR_DRC_PWRDN_FAIL		= 300, +	IS_ERROR_DRC_MULTIPLE_INPUT, +	IS_ERROR_DRC_ABSENT_INPUT, +	IS_ERROR_DRC_NONADJACENT_INPUT, +	IS_ERROR_DRC_ABSENT_OUTPUT, +	IS_ERROR_DRC_NONADJACENT_OUTPUT, +	IS_ERROR_DRC_FORMAT_MISMATCH, +	IS_ERROR_DRC_WIDTH_MISMATCH, +	IS_ERROR_DRC_HEIGHT_MISMATCH, +	IS_ERROR_DRC_BITWIDTH_MISMATCH, +	IS_ERROR_DRC_FRAME_END_TIME_OUT, + +	/* SCALERC 400 ~ 499 */ +	IS_ERROR_SCALERC_PWRDN_FAIL	= 400, + +	/* ODC 500 ~ 599 */ +	IS_ERROR_ODC_PWRDN_FAIL		= 500, + +	/* DIS 600 ~ 699 */ +	IS_ERROR_DIS_PWRDN_FAIL		= 600, + +	/* TDNR 700 ~ 799 */ +	IS_ERROR_TDNR_PWRDN_FAIL	= 700, + +	/* SCALERC 800 ~ 899 */ +	IS_ERROR_SCALERP_PWRDN_FAIL	= 800, + +	/* FD 900 ~ 999 */ +	IS_ERROR_FD_PWRDN_FAIL		= 900, +	IS_ERROR_FD_MULTIPLE_INPUT, +	IS_ERROR_FD_ABSENT_INPUT, +	IS_ERROR_FD_NONADJACENT_INPUT, +	IS_ERROR_LHFD_FRAME_END_TIME_OUT, + +	IS_ERROR_UNKNOWN		= 1000, +}; + +#define IS_ERROR_TIME_OUT_FLAG	0x80000000 + +/* Set parameter error enum */ +enum fimc_is_error { +	/* Common error (0~99) */ +	ERROR_COMMON_NONE		= 0, +	ERROR_COMMON_CMD		= 1,	/* Invalid command */ +	ERROR_COMMON_PARAMETER		= 2,	/* Invalid parameter */ +	/* setfile is not loaded before adjusting */ +	ERROR_COMMON_SETFILE_LOAD	= 3, +	/* setfile is not Adjusted before runnng. */ +	ERROR_COMMON_SETFILE_ADJUST	= 4, +	/* Index of setfile is not valid (0~MAX_SETFILE_NUM-1) */ +	ERROR_COMMON_SETFILE_INDEX	= 5, +	/* Input path can be changed in ready state(stop) */ +	ERROR_COMMON_INPUT_PATH		= 6, +	/* IP can not start if input path is not set */ +	ERROR_COMMON_INPUT_INIT		= 7, +	/* Output path can be changed in ready state (stop) */ +	ERROR_COMMON_OUTPUT_PATH	= 8, +	/* IP can not start if output path is not set */ +	ERROR_COMMON_OUTPUT_INIT	= 9, + +	ERROR_CONTROL_NONE		= ERROR_COMMON_NONE, +	ERROR_CONTROL_BYPASS		= 11,	/* Enable or Disable */ + +	ERROR_OTF_INPUT_NONE		= ERROR_COMMON_NONE, +	ERROR_OTF_INPUT_CMD		= 21, +	/* invalid format  (DRC: YUV444, FD: YUV444, 422, 420) */ +	ERROR_OTF_INPUT_FORMAT		= 22, +	/* invalid width (DRC: 128~8192, FD: 32~8190) */ +	ERROR_OTF_INPUT_WIDTH		= 23, +	/* invalid height (DRC: 64~8192, FD: 16~8190) */ +	ERROR_OTF_INPUT_HEIGHT		= 24, +	/* invalid bit-width (DRC: 8~12bits, FD: 8bit) */ +	ERROR_OTF_INPUT_BIT_WIDTH	= 25, +	/* invalid FrameTime for ISP */ +	ERROR_OTF_INPUT_USER_FRAMETIIME	= 26, + +	ERROR_DMA_INPUT_NONE		= ERROR_COMMON_NONE, +	/* invalid width (DRC: 128~8192, FD: 32~8190) */ +	ERROR_DMA_INPUT_WIDTH		= 31, +	/* invalid height (DRC: 64~8192, FD: 16~8190) */ +	ERROR_DMA_INPUT_HEIGHT		= 32, +	/* invalid format (DRC: YUV444 or YUV422, FD: YUV444, 422, 420) */ +	ERROR_DMA_INPUT_FORMAT		= 33, +	/* invalid bit-width (DRC: 8~12bit, FD: 8bit) */ +	ERROR_DMA_INPUT_BIT_WIDTH	= 34, +	/* invalid order(DRC: YYCbCrorYCbYCr, FD:NO,YYCbCr,YCbYCr,CbCr,CrCb) */ +	ERROR_DMA_INPUT_ORDER		= 35, +	/* invalid palne (DRC: 3, FD: 1, 2, 3) */ +	ERROR_DMA_INPUT_PLANE		= 36, + +	ERROR_OTF_OUTPUT_NONE		= ERROR_COMMON_NONE, +	/* invalid width (DRC: 128~8192) */ +	ERROR_OTF_OUTPUT_WIDTH		= 41, +	/* invalid height (DRC: 64~8192) */ +	ERROR_OTF_OUTPUT_HEIGHT		= 42, +	/* invalid format (DRC: YUV444) */ +	ERROR_OTF_OUTPUT_FORMAT		= 43, +	/* invalid bit-width (DRC: 8~12bits) */ +	ERROR_OTF_OUTPUT_BIT_WIDTH	= 44, + +	ERROR_DMA_OUTPUT_NONE		= ERROR_COMMON_NONE, +	ERROR_DMA_OUTPUT_WIDTH		= 51,	/* invalid width */ +	ERROR_DMA_OUTPUT_HEIGHT		= 52,	/* invalid height */ +	ERROR_DMA_OUTPUT_FORMAT		= 53,	/* invalid format */ +	ERROR_DMA_OUTPUT_BIT_WIDTH	= 54,	/* invalid bit-width */ +	ERROR_DMA_OUTPUT_PLANE		= 55,	/* invalid plane */ +	ERROR_DMA_OUTPUT_ORDER		= 56,	/* invalid order */ + +	ERROR_GLOBAL_SHOTMODE_NONE	= ERROR_COMMON_NONE, + +	/* SENSOR Error(100~199) */ +	ERROR_SENSOR_NONE		= ERROR_COMMON_NONE, +	ERROR_SENSOR_I2C_FAIL		= 101, +	ERROR_SENSOR_INVALID_FRAMERATE, +	ERROR_SENSOR_INVALID_EXPOSURETIME, +	ERROR_SENSOR_INVALID_SIZE, +	ERROR_SENSOR_INVALID_SETTING, +	ERROR_SENSOR_ACTURATOR_INIT_FAIL, +	ERROR_SENSOR_INVALID_AF_POS, +	ERROR_SENSOR_UNSUPPORT_FUNC, +	ERROR_SENSOR_UNSUPPORT_PERI, +	ERROR_SENSOR_UNSUPPORT_AF, + +	/* ISP Error (200~299) */ +	ERROR_ISP_AF_NONE		= ERROR_COMMON_NONE, +	ERROR_ISP_AF_BUSY		= 201, +	ERROR_ISP_AF_INVALID_COMMAND	= 202, +	ERROR_ISP_AF_INVALID_MODE	= 203, +	ERROR_ISP_FLASH_NONE		= ERROR_COMMON_NONE, +	ERROR_ISP_AWB_NONE		= ERROR_COMMON_NONE, +	ERROR_ISP_IMAGE_EFFECT_NONE	= ERROR_COMMON_NONE, +	ERROR_ISP_ISO_NONE		= ERROR_COMMON_NONE, +	ERROR_ISP_ADJUST_NONE		= ERROR_COMMON_NONE, +	ERROR_ISP_METERING_NONE		= ERROR_COMMON_NONE, +	ERROR_ISP_AFC_NONE		= ERROR_COMMON_NONE, + +	/* DRC Error (300~399) */ + +	/* FD Error  (400~499) */ +	ERROR_FD_NONE					= ERROR_COMMON_NONE, +	/* Invalid max number (1~16) */ +	ERROR_FD_CONFIG_MAX_NUMBER_STATE		= 401, +	ERROR_FD_CONFIG_MAX_NUMBER_INVALID		= 402, +	ERROR_FD_CONFIG_YAW_ANGLE_STATE			= 403, +	ERROR_FD_CONFIG_YAW_ANGLE_INVALID		= 404, +	ERROR_FD_CONFIG_ROLL_ANGLE_STATE		= 405, +	ERROR_FD_CONFIG_ROLL_ANGLE_INVALID		= 406, +	ERROR_FD_CONFIG_SMILE_MODE_INVALID		= 407, +	ERROR_FD_CONFIG_BLINK_MODE_INVALID		= 408, +	ERROR_FD_CONFIG_EYES_DETECT_INVALID		= 409, +	ERROR_FD_CONFIG_MOUTH_DETECT_INVALID		= 410, +	ERROR_FD_CONFIG_ORIENTATION_STATE		= 411, +	ERROR_FD_CONFIG_ORIENTATION_INVALID		= 412, +	ERROR_FD_CONFIG_ORIENTATION_VALUE_INVALID	= 413, +	/* PARAM_FdResultStr can be only applied in ready-state or stream off */ +	ERROR_FD_RESULT					= 414, +	/* PARAM_FdModeStr can be only applied in ready-state or stream off */ +	ERROR_FD_MODE					= 415, +	/* Scaler Error  (500 ~ 599) */ +	ERROR_SCALER_NO_NONE				= ERROR_COMMON_NONE, +	ERROR_SCALER_DMA_OUTSEL				= 501, +	ERROR_SCALER_H_RATIO				= 502, +	ERROR_SCALER_V_RATIO				= 503, + +	ERROR_SCALER_IMAGE_EFFECT			= 510, + +	ERROR_SCALER_ROTATE				= 520, +	ERROR_SCALER_FLIP				= 521, +}; + +const char * const fimc_is_strerr(unsigned int error); +const char * const fimc_is_param_strerr(unsigned int error); + +#endif /* FIMC_IS_ERR_H_ */  |