.. | .. |
---|
54 | 54 | |
---|
55 | 55 | #define MEDIA_DEVICE "/dev/media0" |
---|
56 | 56 | |
---|
| 57 | +unsigned int isp_lib_log_param = 0; |
---|
| 58 | + |
---|
57 | 59 | struct hw_isp_media_dev media_params; |
---|
58 | 60 | struct isp_lib_context isp_ctx[HW_ISP_DEVICE_NUM] = { |
---|
59 | 61 | [0] = { |
---|
.. | .. |
---|
414 | 416 | struct isp_lib_context *isp_gen = isp_dev_get_ctx(isp); |
---|
415 | 417 | HW_S32 iso_qmenu[] = { 100, 200, 400, 800, 1600, 3200, 6400}; |
---|
416 | 418 | HW_S32 exp_bias_qmenu[] = { -4, -3, -2, -1, 0, 1, 2, 3, 4, }; |
---|
| 419 | + |
---|
| 420 | +#if (ISP_VERSION == 522) |
---|
| 421 | + if (isp->id && isp_gen->sensor_info.sensor_width > 4000 && |
---|
| 422 | + isp_gen->sensor_info.sensor_height > 3000) { |
---|
| 423 | + isp_gen = &isp_ctx[0]; |
---|
| 424 | + } |
---|
| 425 | +#endif |
---|
417 | 426 | |
---|
418 | 427 | if (isp_gen == NULL) |
---|
419 | 428 | return; |
---|
.. | .. |
---|
1120 | 1129 | *i3a_length = |
---|
1121 | 1130 | sizeof(ae_result_t) + sizeof(ae_param_t)+ sizeof(struct isp_ae_stats_s) // ae info |
---|
1122 | 1131 | + sizeof(awb_result_t)+ sizeof(awb_param_t)+ sizeof(struct isp_awb_stats_s) // awb info |
---|
1123 | | - + sizeof(af_result_t)+ sizeof(af_param_t)+ sizeof(struct isp_af_stats_s) // af info |
---|
1124 | | - ; |
---|
| 1132 | + + sizeof(af_result_t)+ sizeof(af_param_t)+ sizeof(struct isp_af_stats_s); // af info |
---|
1125 | 1133 | |
---|
1126 | 1134 | *debug_length = |
---|
1127 | 1135 | sizeof(iso_result_t) |
---|
.. | .. |
---|
1131 | 1139 | +16*16*3*sizeof(unsigned short) // msc tbl |
---|
1132 | 1140 | +4*2*sizeof(unsigned short); // wb otp data |
---|
1133 | 1141 | |
---|
| 1142 | + data_len = *i3a_length + *debug_length; |
---|
1134 | 1143 | ISP_PRINT("i3a_length:%d, debug_length:%d.\n", *i3a_length, *debug_length); |
---|
1135 | 1144 | ISP_PRINT("af_result_t:%d, af_param_t:%d, isp_af_stats_s:%d.\n", sizeof(ae_result_t), sizeof(ae_param_t), sizeof(struct isp_ae_stats_s)); |
---|
1136 | 1145 | ISP_PRINT("af_result_t:%d, af_param_t:%d, isp_af_stats_s:%d.\n", sizeof(awb_result_t), sizeof(awb_param_t), sizeof(struct isp_awb_stats_s)); |
---|
1137 | 1146 | ISP_PRINT("af_result_t:%d, af_param_t:%d, isp_af_stats_s:%d.\n", sizeof(af_result_t), sizeof(af_param_t), sizeof(struct isp_af_stats_s)); |
---|
1138 | | - return 0; |
---|
| 1147 | + return data_len; |
---|
1139 | 1148 | } |
---|
1140 | 1149 | |
---|
1141 | 1150 | |
---|
.. | .. |
---|
1157 | 1166 | return -1; |
---|
1158 | 1167 | |
---|
1159 | 1168 | void * ptr = params; |
---|
| 1169 | + int isp_3a_size = 0; |
---|
1160 | 1170 | // ae info |
---|
1161 | 1171 | memcpy(ptr, &(isp_gen->ae_entity_ctx.ae_result), sizeof(ae_result_t)); |
---|
1162 | 1172 | ptr += sizeof(ae_result_t); |
---|
.. | .. |
---|
1187 | 1197 | memcpy(ptr, isp_gen->af_entity_ctx.af_stats.af_stats, sizeof(struct isp_af_stats_s)); |
---|
1188 | 1198 | ptr += sizeof(struct isp_af_stats_s); |
---|
1189 | 1199 | |
---|
| 1200 | + isp_3a_size = sizeof(ae_result_t) + sizeof(ae_param_t) + |
---|
| 1201 | + sizeof(struct isp_ae_stats_s) + sizeof(awb_result_t) + |
---|
| 1202 | + sizeof(awb_param_t) + sizeof(struct isp_awb_stats_s) + |
---|
| 1203 | + sizeof(af_result_t) + sizeof(af_param_t) + |
---|
| 1204 | + sizeof(struct isp_af_stats_s); |
---|
| 1205 | + |
---|
1190 | 1206 | ptr = NULL; |
---|
1191 | | - return 0; |
---|
| 1207 | + return isp_3a_size; |
---|
1192 | 1208 | } |
---|
1193 | 1209 | |
---|
1194 | 1210 | HW_S32 isp_get_debug_msg(int dev_id, void* msg) |
---|
.. | .. |
---|
1207 | 1223 | return -1; |
---|
1208 | 1224 | |
---|
1209 | 1225 | void * ptr = msg; |
---|
| 1226 | + int isp_debug_msg_size = 0; |
---|
1210 | 1227 | memcpy(ptr, &(isp_gen->iso_entity_ctx.iso_result), sizeof(iso_result_t)); |
---|
1211 | 1228 | ptr += sizeof(iso_result_t); |
---|
1212 | 1229 | |
---|
.. | .. |
---|
1227 | 1244 | memcpy(ptr, isp_gen->pwb_table, 4*2*sizeof(unsigned short)); |
---|
1228 | 1245 | ptr += 4*2*sizeof(unsigned short); |
---|
1229 | 1246 | |
---|
| 1247 | + isp_debug_msg_size = sizeof(iso_result_t) + |
---|
| 1248 | + sizeof(iso_param_t) + |
---|
| 1249 | + sizeof(struct isp_module_config) + |
---|
| 1250 | + sizeof(int) + |
---|
| 1251 | + 16*16*3*sizeof(unsigned short) + |
---|
| 1252 | + 4*2*sizeof(unsigned short); |
---|
| 1253 | + |
---|
1230 | 1254 | ptr = NULL; |
---|
1231 | | - return 0; |
---|
| 1255 | + return isp_debug_msg_size; |
---|
1232 | 1256 | } |
---|
1233 | 1257 | |
---|
1234 | 1258 | /*******************get isp version*********************/ |
---|