mirror of
https://github.com/followmsi/android_kernel_google_msm.git
synced 2024-11-06 23:17:41 +00:00
Vidc: Treat Non-IDR frame type error as bit stream error
Hardware error is being generated from driver when video core returns NON IDR frame type error during thumbnail decoding. This change handles this error by treating it as BIT_STREAM_ERR. Change-Id: I16a19eea679d42a22b336d6ebbd0bd1f57c0a8a4 CRs-fixed: 414858 Signed-off-by: Maheshwar Ajja <majja@codeaurora.org>
This commit is contained in:
parent
3ae57f76cd
commit
e576eb26d8
2 changed files with 8 additions and 4 deletions
|
@ -1,4 +1,4 @@
|
||||||
/* Copyright (c) 2010-2012, Code Aurora Forum. All rights reserved.
|
/* Copyright (c) 2010-2013, The Linux Foundation. All rights reserved.
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or modify
|
* This program is free software; you can redistribute it and/or modify
|
||||||
* it under the terms of the GNU General Public License version 2 and
|
* it under the terms of the GNU General Public License version 2 and
|
||||||
|
@ -219,6 +219,7 @@ static u32 ddl_handle_core_recoverable_errors(
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
case VIDC_1080P_ERROR_NON_IDR_FRAME_TYPE:
|
||||||
case VIDC_1080P_ERROR_BIT_STREAM_BUF_EXHAUST:
|
case VIDC_1080P_ERROR_BIT_STREAM_BUF_EXHAUST:
|
||||||
case VIDC_1080P_ERROR_DESCRIPTOR_TABLE_ENTRY_INVALID:
|
case VIDC_1080P_ERROR_DESCRIPTOR_TABLE_ENTRY_INVALID:
|
||||||
case VIDC_1080P_ERROR_MB_COEFF_NOT_DONE:
|
case VIDC_1080P_ERROR_MB_COEFF_NOT_DONE:
|
||||||
|
@ -243,14 +244,16 @@ static u32 ddl_handle_core_recoverable_errors(
|
||||||
case VIDC_1080P_ERROR_SLICE_PARSE_ERROR:
|
case VIDC_1080P_ERROR_SLICE_PARSE_ERROR:
|
||||||
case VIDC_1080P_ERROR_NON_PAIRED_FIELD_NOT_SUPPORTED:
|
case VIDC_1080P_ERROR_NON_PAIRED_FIELD_NOT_SUPPORTED:
|
||||||
vcd_status = VCD_ERR_BITSTREAM_ERR;
|
vcd_status = VCD_ERR_BITSTREAM_ERR;
|
||||||
DDL_MSG_ERROR("VIDC_BIT_STREAM_ERR");
|
DDL_MSG_ERROR("VIDC_BIT_STREAM_ERR (%u)",
|
||||||
|
(u32)ddl_context->cmd_err_status);
|
||||||
break;
|
break;
|
||||||
case VIDC_1080P_ERROR_B_FRAME_NOT_SUPPORTED:
|
case VIDC_1080P_ERROR_B_FRAME_NOT_SUPPORTED:
|
||||||
case VIDC_1080P_ERROR_UNSUPPORTED_FEATURE_IN_PROFILE:
|
case VIDC_1080P_ERROR_UNSUPPORTED_FEATURE_IN_PROFILE:
|
||||||
case VIDC_1080P_ERROR_RESOLUTION_NOT_SUPPORTED:
|
case VIDC_1080P_ERROR_RESOLUTION_NOT_SUPPORTED:
|
||||||
if (ddl->decoding) {
|
if (ddl->decoding) {
|
||||||
vcd_status = VCD_ERR_BITSTREAM_ERR;
|
vcd_status = VCD_ERR_BITSTREAM_ERR;
|
||||||
DDL_MSG_ERROR("VIDC_BIT_STREAM_ERR");
|
DDL_MSG_ERROR("VIDC_BIT_STREAM_ERR (%u)",
|
||||||
|
(u32)ddl_context->cmd_err_status);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
/* Copyright (c) 2010-2012, Code Aurora Forum. All rights reserved.
|
/* Copyright (c) 2010-2013, The Linux Foundation. All rights reserved.
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or modify
|
* This program is free software; you can redistribute it and/or modify
|
||||||
* it under the terms of the GNU General Public License version 2 and
|
* it under the terms of the GNU General Public License version 2 and
|
||||||
|
@ -103,6 +103,7 @@
|
||||||
#define VIDC_1080P_ERROR_SPS_PARSE_ERROR 129
|
#define VIDC_1080P_ERROR_SPS_PARSE_ERROR 129
|
||||||
#define VIDC_1080P_ERROR_PPS_PARSE_ERROR 130
|
#define VIDC_1080P_ERROR_PPS_PARSE_ERROR 130
|
||||||
#define VIDC_1080P_ERROR_SLICE_PARSE_ERROR 131
|
#define VIDC_1080P_ERROR_SLICE_PARSE_ERROR 131
|
||||||
|
#define VIDC_1080P_ERROR_NON_IDR_FRAME_TYPE 132
|
||||||
#define VIDC_1080P_ERROR_SYNC_POINT_NOT_RECEIVED 171
|
#define VIDC_1080P_ERROR_SYNC_POINT_NOT_RECEIVED 171
|
||||||
|
|
||||||
#define VIDC_1080P_WARN_COMMAND_FLUSHED 145
|
#define VIDC_1080P_WARN_COMMAND_FLUSHED 145
|
||||||
|
|
Loading…
Reference in a new issue