msm: display: fb blend setting via MSMFB_METADATA_SET ioctl

MSMFB_METADATA_SET ioctl is added for the fb user to pass
in additional infomation rather than using reserved
fields.
User can set pre-multiplied alpha for the frame buffer via this
ioctl, overlay blend setting will take this into account.

Change-Id: Ic2f6236d84691fb03174ec479874c6928489ea30
Signed-off-by: Ken Zhang <kenz@codeaurora.org>
msm_fb: display: check pipes queued before enter wait_for_completion

Timing generator will not be turned on if there are no pipes queued.
Therefore wait_for_completion may never be completed if there have
no pipes queued.

Change-Id: Iafba086e4ba20b31470c9fd385c4f5c474ecadcf
Signed-off-by: Kuogee Hsieh <khsieh@codeaurora.org>
Signed-off-by: Mayank Goyal <goyalm@codeaurora.org>
msm_fb: display: free borderfill pipe when ref_cnt reach 0

Borderfill pipe need to be kept as baselayer which is not
suppose to be freed at suspend. It only be freed when
ref_cnt reach 0 by "adb stop".

CRs-fixed: 429196
Change-Id: Ibffe7960cc194162d1ba71e8dc8636393938483f
Signed-off-by: Kuogee Hsieh <khsieh@codeaurora.org>
msm_fb: Fix blending logic for formats with per-pixel alpha

Currently if a layer with per-pixel alpha (eg. RGBA) is fed
for composition with z-order as zero (FG), per-pixel alpha
blending is applied along with the BG frame present on frame
buffer and hence we see the previous frame on the panel. Hence,
apply constant alpha blending if these formats are fed as FG.

CRs-fixed: 405802
CRs-fixed: 435800
Change-Id: I4e00743e7f13189b1830d4d0e655f186ffa590cd
Signed-off-by: Padmanabhan Komanduru <pkomandu@codeaurora.org>
Revert "Revert "msm_fb: Clear real pipe attributes in the pipe free""

This reverts commit 06a5cd870e8b0ac6080a20aa4ac8da2599020662.
video: msm: Fix bus bandwidth calculation for Samsung's panel

 * The panel device on D2 requires significantly larger MDP bandwidth in
   order for underrun not to occur. Raise the factor by 3x in order to
   get rid of flickering.
 * Thanks to noobnl for finding the root cause.

Change-Id: Iad68e7dae5896467340bbe9cc53901cf365b14d0
video: msm: Remove logspam

Change-Id: I02df48181ece375c7f24223c0a2cbe3aa8594003
check for skb headroom for packets out rmnet/bam interfaces

When packets destined out a rmnet/bam interface are sourced via the tun
interface, the skb has no headroom. This change checks for the no-headroom case
and uses skb_realloc_headroom

Without this patch, you get (panic+reboot):
[ 1522.386601] skb_under_panic: text:c0124e98 len:88 put:8 head:e077d800 data:e077d7f8 tail:0xe077d850 end:0xe077d880 dev:rmnet0
[ 1522.404028]I[0:          clatd: 7740] kernel BUG at /home/jenkins/android/workspace/android/jellybean/kernel/samsung/d2/net/core/skbuff.c:147!
...
[ 1524.974454]I[0:          clatd: 7740] Rebooting in 5 seconds..
[ 1529.990507]I[0:          clatd: 7740] Going down for restart now