fixes

Change-Id: I2677eca45a9779afb608ba898f00a10fcf5099b7
msm: mdss: Enable fixed MMBs support for RGB pipes

RGB pipes in some of the chip-sets are statically tied to dedicated
Memory Macro Blocks (MMBs) out of common shared memory pool. These MMBs
cannot be used by other pipes. Enable support for this fixed MMBs by
parsing indexes from device tree and reserving fixed MMBs first before
general pool is used.

Change-Id: Ic4bc7fa790f430a2853719fec7fd849149bc6976
Signed-off-by: Ujwal Patel <ujwalp@codeaurora.org>
msm: mdss: Allow smp change during composition switch

The composition fallback mechanism might not ensure unsetting of
the pipe whose prepare call failed due to smp configuration change,
typically in the cases where change in composition requests same
pipe. This scenario is a deadlock where composition switch does
not happen, due to these pipe failures.

To handle such cases, for changed SMP request for a pipe doing
non backend composition, allow smp configuration to happen, so
that the composition could be successfully switched, thereby
preventing the deadlock.

Change-Id: I2d29ac6591671494abc7c4caf7c6c53f058d12f6
Signed-off-by: Justin Philip <jphili@codeaurora.org>
fix2

Change-Id: Ie50e3bc10277e703cc2ba60a8fb1c85223f90581
mdss: Add MDP_SMP_FORCE_ALLOC mdp flag

MDP_SMP_FORCE_ALLOC flag is used to allow SMP
allocations even when there is mismatch between
allocated and requested SMPs for a pipe.
User space can make use of this flag in extreme scenarios
where SMP allocations need to pass like GPU composition
and playback of protected  or secure videos.

Change-Id: I369b4361e7e2bbfc8150add467678c4ef8d5cfb6
Signed-off-by: Justin Philip <jphili@codeaurora.org>

Conflicts:
	drivers/video/msm/mdss/mdss_mdp_pipe.c
fix3

Change-Id: I085c7be6297627b5297b39583d81f27669c70a50
msm: mdss: add property to set from device tree the overlap BW fudge factor

Current calculations apply one fudge factor to the final bandwidth
regardless if this is a result from the overlap or prefill calculation.
With this change the final bandwidth can be tuned up to apply a different
fudge factor when the bandwidth depends on the overlap calculation.

CRs-Fixed: 635005
Change-Id: Iaa9718bda3264a47bf70a2facba0d23e4b2414f3
Signed-off-by: Ingrid Gallardo <ingridg@codeaurora.org>

Conflicts:
	drivers/video/msm/mdss/mdss_mdp_ctl.c
msm: mdss: Fix check for highest of overlap and prefill bw calc

This check is supposed to be used to get the max between overlap and
prefill bandwidth value. This value is used when calculating the ib
bandwidth value to request when bus bandwidth is updated. Having a value
that is too low results in mdp underrun.

Change-Id: Ie1302737f004d8e030f8d61c75d4301fe99b1069
Signed-off-by: Terence Hampson <thampson@codeaurora.org>
msm: mdss: apply BW fudge factor to all controllers when video mode present

If there is a video mode controller enabled and other
controllers non-video mode, current display driver apply
the bw fudge factor only to the controller that it is
video mode.
This change will apply the fudge factor to all the
controllers enabled if any of those it is video mode to
fix some of the underruns observed in the video interfaces.

Change-Id: I0d01477dc45edbef2a25ccd540aa06b3c43073a4
Signed-off-by: Ingrid Gallardo <ingridg@codeaurora.org>
Signed-off-by: Siddhartha Agrawal <agrawals@codeaurora.org>
fix

Change-Id: Id44748eb95ed51ef9cd9f825b5eee5696e4d1c2d
msm8974: Reserve memory for ramconsole

 * Samsung's implementation of ramconsole depends on the device
   being at DEBUG_LEVEL_HIGH, which makes collecting crash logs
   from devices in the wild impossible.
 * Enable the standard ramconsole by reserving persistent ram.

Change-Id: If59e08be09db7ebba97e4dc66f2167395032d807

Conflicts:
	arch/arm/mach-msm/board-8974.c