stagefright: OMXCodec: Re-enable OMX.TI.Video.encoder's quirks

These have been around since early stagefright, and were dropped for
JB. Unfortunately, they're still necessary with for this encoder to
work.

Change-Id: I8a251bf195a24b166db7464a90a822d6e69b644d

libstagefright: Add support for the 720P OMAP3 encoders

Bring back some more OMAP code that was removed by Google in JB,
and a couple of omapzoom patches.
This may stop being necessary if TI publishes JB-specific OMAP3
code, but as long as we're using the ICS domx, these need to
be here
Change-Id: Ia29f8c9f9ed769ba07b09c07260486f6502841d6

libstagefright: Unbreak OMAP4 encoders

The "manual" construction of the h264 codec data is only needed
on OMAP3. Execution of this code on OMAP4 breaks the mpeg4 header
generation

Change-Id: I3ae52f2e685e2d9097796685c98dffa93cfa6430
libstagefright: fix indefinate loop in QueryCodec

portFormat.nIndex is being incremented which is not
trustworthy since the nIndex value could be overriden
by the OMX Component,  which causes an indefinate loop
which inturn causes a memory leak and crashes the system.

OMX Component on encore and p970 exhibits this behaviour
(OMX.TI.720P.Decoder). This patch prevents stagefright
freezes when QueryCodec is called during Gallery Thumbnail
generation for videos and Adobe Flash playback.

Change-Id: I825c99ddecacbb927e22ac7d1a53facb26d95ff2
libstagefright: [Reworked] Fix incorrectness nPortIndex value for QueryCodec

http://review.cyanogenmod.org/#/c/32358/ was intended to fix
issues with OMX Components failing on ME722 (OMAP3).
This patch was working fine on OMAP3 devices and was required
to fix issues DSP MMU FAULTS. It has been reverted with patch
http://review.cyanogenmod.org/44486 which again broke OMX on
OMAP3.

Implement a Workaround for OMAP using OMAP_ENHANCEMENT

Log for this issue observed on P970 (OMAP3) during Gallery
Thumbnail Generation: http://pastebin.com/qRTpm7RN

DmmMap():1600 DSPProcessor_ReserveMemory() failed - error 0xfffffffb

Change-Id: Ifd0c784e354c6c00401686cc0f2188842df9496c
libstagefright: Fallback to software encoder for high resolutions

Add error check conditions to fallback to software encoder if
q6 encoder fails in configure codec. Q6 encoder fails
for resolutions greater than FWVGA

CRs-Fixed: 511608

Change-Id: I4d765f45cd3b9c128260e7c96f139b671950d0ce
Overlay for omap3 camera devices.
audio: Add compatibility bits to use legacy libaudio implementations

Enable with BOARD_USES_AUDIO_LEGACY, requires the use of the generic
legacy audio shim

Change-Id: I60407b48c2a8f3c9736805f31dcdef280c9aa485
fix for incoming audio crash on Motorola OMAP3/4 phones

Conflicts:
	services/audioflinger/Android.mk
	services/audioflinger/Threads.cpp
Add support old omap3 codecs, for 2.6.32 kernel

Change-Id: I6e97f5fb5ec1fbb098c954c41319221ddb86b08b

Conflicts:

	media/libstagefright/AwesomePlayer.cpp
	media/libstagefright/OMXCodec.cpp
fix video colors

Conflicts:

	media/libstagefright/colorconversion/SoftwareRenderer.cpp
fix video thumbnail generating
apply commit 192a939fd28162b987450a51722e984cdcd20955 for OMAP_COMPAT