msm: vidc: Remove kernel mapping on input/output buffers

This change will remove the kernel mapping of input and
output buffers for both video encoder and decoder to
avoid the errors resulting from ion_map_kernel() for
high resolution video concurrency use cases due to the
limited vmalloc space. It also removed the metadata
processing in kerner video driver as kernel virtual
address is removed. The metadata processing can be
done in user space video component.

Change-Id: I3f2c9b7c13b3e09097ce07ca7b59154b97401052
CRs-fixed: 471135
Signed-off-by: Maheshwar Ajja <majja@codeaurora.org>

Conflicts:
	drivers/video/msm/vidc/1080p/ddl/vcd_ddl_helper.c
	drivers/video/msm/vidc/1080p/ddl/vcd_ddl_metadata.c
	drivers/video/msm/vidc/common/dec/vdec.c
	drivers/video/msm/vidc/common/init/vidc_init.c
vidc: Free shared memory when video core is in error.

When the video core is in error, the core times out.
At this instant, all the client buffers are freed,
but the shared memory is not freed. Free the shared
memory in this case.

CRs-Fixed: 357990
Change-Id: I8769356cab1b57fd39d7f1c2d4458cd7e263557f
Signed-off-by: Deepak Kotur <dkotur@codeaurora.org>
vidc: Send port reconfiguration for interlaced clips

Component is not getting port reconfiguration request
from driver for an interlaced clip. Fix it by
modifying the condition for triggering the
reconfiguration request.

CRs-Fixed: 352456
Change-Id: I65ce5987f31915f45a13767965918b61e32db7a7
Signed-off-by: Rajeshwar Kurapaty <rkurapat@codeaurora.org>
vidc: handle secure and non-secure session concurrency

Non-secure session should be rejected if a secure session is
running.

Change-Id: I13364a7bc4417a682728be333681278e7de8a1f7
Signed-off-by: Gopikrishnaiah Anandan <agopik@codeaurora.org>

Conflicts:
	drivers/video/msm/vidc/common/vcd/vcd_api.c
vidc: Correct start and stop sequence.

Video core stop should be called only if start is successful.

Change-Id: Ie2a8d970355387ee3fcdc34b62184972e89dd6cc
Signed-off-by: Gopikrishnaiah Anandan <agopik@codeaurora.org>
vidc: close instance if securing session fails.

Video driver will close the instance if secure call fails.

Change-Id: I39147272a9183f011529078fe8a18ac8cb2726fd
Signed-off-by: Gopikrishnaiah Anandan <agopik@codeaurora.org>
Signed-off-by: Ajay Dudani <adudani@codeaurora.org>
Signed-off-by: Iliyan Malchev <malchev@google.com>
vidc: Add required variables in platform data for content protection

Add, initialize variables for firmware addr & secure write back
buffers in vidc platform data.

Change-Id: Ibb1e464af2e0e9038c8d43d6756d5a8481c7f618
Signed-off-by: Riaz Ur Rahaman <riazr@codeaurora.org>

Conflicts:
	arch/arm/mach-msm/devices-8064.c
	arch/arm/mach-msm/devices-8930.c
	arch/arm/mach-msm/devices-8960.c
	arch/arm/mach-msm/devices-msm8x60.c
	arch/arm/mach-msm/include/mach/board.h
	drivers/video/msm/vidc/1080p/resource_tracker/vcd_res_tracker.c
vidc: Error handling for memory heap mapping.

Memory heap should be unsecured if secure call is successful.
This change will make sure that an unsecure will be called
only if securing of the memory heap went through fine.

CRs-Fixed: 393041
Change-Id: I49dd81d1846fc6936518c750a32921c8498ddb95
Signed-off-by: Gopikrishnaiah Anandan <agopik@codeaurora.org>
Signed-off-by: Riaz Ur Rahaman <riazr@codeaurora.org>
Signed-off-by: Ajay Dudani <adudani@codeaurora.org>
msm: vidc: unsecure heaps in the right order during error handling

Unsecure MM and CP heaps in the right order in case of failure
CRs-Fixed: 445400

Change-Id: I2b5d414c5d9f109740a931b75b0cfbdb196c465f
Signed-off-by: Praveen Chavan <pchava@codeaurora.org>