vidc: 1080p: Removed check for comparing DPB Size

For best effort decoding we don't need to compare
the available DPB size with the decoded size and
throw error. So, removed the check that compares
them.

CRs-Fixed: 296211
Signed-off-by: Rajeshwar Kurapaty <rkurapat@codeaurora.org>
vidc: Stop using vcodec_axi_a_clk and vcodec_axi_b_clk directly

These two clock are now implicityly enabled and disabled as
dependencies of vcodec_clk (as was already the case for
vcodec_axi_clk).

Signed-off-by: Matt Wagantall <mattw@codeaurora.org>
vidc: add change to print MFC firmware version

CRs-Fixed: 296531
Signed-off-by: Ananda Kishore <kananda@codeaurora.org>
msm: vidc: Set Y and C size registers to allocated size.

Currently the Y and C sizes are set based on the
size of video being decoded. In case of smooth
streaming, decoded sizes are not the same as allocated
sizes. This change will set the Y and C sizes to
allocated sizes.

Signed-off-by: Deepika Pepakayala <deepikap@codeaurora.org>
vidc: vdec: Pass alignment flag to mapping api's.

Mapping api by default assumes 4K alignment.
Video core requires output buffer to be aligned
to 8K.This change will pass aligment information to
the mapper API.

Signed-off-by: Gopikrishnaiah Anandan <gopikr@codeaurora.org>

Conflicts:

	drivers/video/msm/vidc/common/init/vidc_init.c
vidc: vdec: Report bitstream errors to driver client.

When video core generates recoverable bitstream errors,
driver will report them to upper layer.

CRs-fixed: 290659
Signed-off-by: Gopikrishnaiah Anandan <gopikr@codeaurora.org>
vidc: 1080p: Set chroma address change in smooth streaming mode

If resolution change is detected in smooth streaming mode and
status indicates that video core can continue decoding, update
chroma address for new resolution instead of starting frame
realloc.

Signed-off-by: Pradnya Chaphekar <pradnyac@codeaurora.org>
vidc: vdec: Report dropped field for interlace clips.

For field based interlace clips, video core will generate
an error when one of field is missing in bitstream.
Driver will report this to upper layer, so that it can
take appropriate action.

CRs-fixed: 290659
Signed-off-by: Gopikrishnaiah Anandan <gopikr@codeaurora.org>
vidc: 720p: Add IDR Frame type support for H264 format

Read IDR frame type from 720p core register set and
propagate it to user space using new IDR frame type
enumeration added in api header file. The IDR frame
type info is used in SYNCFRAME logic for H264 format
in userspace.

CRs-Fixed: 296738
Signed-off-by: Maheshwar Ajja <majja@codeaurora.org>
vidc: vdec: Set correct divx codec type.

Added support in video driver to configure divx codecs 4/5/6.

Signed-off-by: Ashray Kulkarni <ashrayk@codeaurora.org>
CRs-fixed: 297558
vdec: 720p: deblocking filter enabled for Divx and XVID

Default deblocking filter is enabled for Divx 4,5,6 and XVID.

Signed-off-by: Ananda Kishore <kananda@codeaurora.org>
vidc: 720p: Memset MPEG-4 recon buffers to black

In the case of MPEG-4 decoding with clips which have
initial frames starting with P-VOPs, green macroblocks
are seen. This is because of recon buffers used for
MPEG-4 have 0 preset values. The default values are
changed to 0x10 & 0x80 for luma and chroma to get
default color as black.

CRs-Fixed: 303298
Signed-off-by: Rajeshwar Kurapaty <rkurapat@codeaurora.org>
vidc: 720p: Handle profile unknown as bitstream error.

For corrupted VOL header in the middle of playback
core is returning UNKNOWN PROFILE error and is being
treated as Fatal error and playback is getting aborted.
Now handling it as sequence header fail/recoverable
error.

CRs-Fixed: 302549
Signed-off-by: Rajeshwar Kurapaty <rkurapat@codeaurora.org>
vidc: 1080p: Override SP profile to ASP for MPEG4 decoding.

Always set profile to ASP for MPEG4 decoding. Core will
ignore the profile information from the sequence header
and continue to decode with profile set by driver.

Signed-off-by: Gopikrishnaiah Anandan <gopikr@codeaurora.org>
vidc: venc: Remove check for allocation of sequence buffer size.

Firmware requires non-zero sequence buffer size for H.263.

Signed-off-by: Ashray Kulkarni <ashrayk@codeaurora.org>
vidc: vdec: Update firmware memory size.

Firmware releases dated 07/30/11 and later require
800KB of firmware global context space.

Signed-off-by: Ashray Kulkarni <ashrayk@codeaurora.org>
msm: vidc: Fix H.263 30fps standard resolution encoding.

For H.263, when encoding standard resolutions(CIF/QCIF)
at 30fps, the encoded bitstream should not have the
Custom PCF flag set in the PlusPType header. This is
fixed by enabling the custom PCF for non-30fps encoding
only.

Signed-off-by: Deepika Pepakayala <deepikap@codeaurora.org>
CRs-Fixed: 300807
vidc: vdec: Copy the End of Sequence flag

To get End of Sequence flag in the output buffer
from the video driver, we need to copy the end of
sequence flag from the input buffer to the output
buffer in the driver. Added these changes as
needed for ISDB-Tmm EoSeq feature.

Signed-off-by: Rajeshwar Kurapaty <rkurapat@codeaurora.org>
msm: vidc: Fix performance level computation

The required performance level is rounded off to the incorrect
value due to the order of execution of the operations. Fixed
the issue by ensuring correct order of execution when computing
this value.

Signed-off-by: Deepika Pepakayala <deepikap@codeaurora.org>
msm: vidc: Fix GOB Header for H.263 encoding.

For H.263, enable the GOB header, when user space selects this option

Signed-off-by: Eduardo Carrasco <cecarras@codeaurora.org>
CRs-Fixed: 305978