ARM: fix executability of CMA mappings

The CMA region was being marked executable:

0xdc04e000-0xdc050000           8K     RW x      MEM/CACHED/WBRA
0xdc060000-0xdc100000         640K     RW x      MEM/CACHED/WBRA
0xdc4f5000-0xdc500000          44K     RW x      MEM/CACHED/WBRA
0xdcce9000-0xe0000000       52316K     RW x      MEM/CACHED/WBRA

This is mainly due to the badly worded MT_MEMORY_DMA_READY symbol, but
there are also a few other places in dma-mapping which should be
corrected to use the right constant.  Fix all these places:

0xdc04e000-0xdc050000           8K     RW NX     MEM/CACHED/WBRA
0xdc060000-0xdc100000         640K     RW NX     MEM/CACHED/WBRA
0xdc280000-0xdc300000         512K     RW NX     MEM/CACHED/WBRA
0xdc6fc000-0xe0000000       58384K     RW NX     MEM/CACHED/WBRA

Change-Id: I044360a8f08b1a4ae3e3e9e623fb77af2b427c51
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Git-commit: 71b55663c5d0a6f8473045db1c8b376803780191
Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
[lauraa@codeaurora.org: Context fixups due to __dma_remap signature change]
Signed-off-by: Laura Abbott <lauraa@codeaurora.org>
ARM: dma-mapping: don't allow DMA mappings to be marked executable

DMA mapping permissions were being derived from pgprot_kernel directly
without using PAGE_KERNEL.  This causes them to be marked with executable
permission, which is not what we want.  Fix this.

Change-Id: Ib40f59f3c569f82409943cf8f9a86a9869d922cc
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Git-commit: 0ea1ec713f04bdfac343c9702b21cd3a7c711826
Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
[lauraa@codeaurora.org: dropped functions not in older builds]
Signed-off-by: Laura Abbott <lauraa@codeaurora.org>
Merge "Merge "ASoc: msm: qdsp6v2: Fix for NULL check""
Merge "ARM: fix executability of CMA mappings"
Merge "ARM: dma-mapping: don't allow DMA mappings to be marked executable"
Merge "Merge "Merge "ASoc: msm: qdsp6v2: Fix for NULL check"""
Merge "Merge "ARM: dma-mapping: don't allow DMA mappings to be marked executable""
Merge "Merge "Merge "ARM: dma-mapping: don't allow DMA mappings to be marked executable"""
Merge "Merge "ARM: dma-mapping: don't allow DMA mappings to be marked executable""
Merge "Merge "Merge "ARM: dma-mapping: don't allow DMA mappings to be marked executable"""
msm: Reimport qDSP5v2 audio driver from jb_2.5.3.
Initial 8x55 MR1 Display Bringup

Change-Id: I8e7f813955279f8185da49a91a43e77d95dd10fa
Signed-off-by: Srivalli Oguri <oguri@codeaurora.org>
msm_fb: display: Initial commit for MDDI on MR1

Display comes up fine with this change but there are stability
issues during boot up

Change-Id: I58e002fba80d94811ab579ae23426f54ffab01ce
Signed-off-by: Jeevan Shriram <jshriram@codeaurora.org>
msm: Kconfig: Select ARM_HAS_SG_CHAIN for 7630/8x55

ION allocations in SYSTEM_HEAP now uses alloc_pages() and not
vmalloc(). This will add one entry into sg_table for each page
of allocation. With this, sg_table may over-cross the limit
of fitting into one page for bigger sized allocations. So,
accommodate extended sg_table entries by chaining more pages.

ARCH_HAS_SG_CHAIN will enable this chain of pages. Enable
ARM_HAS_SG_CHAIN to select ARCH_HAS_SG_CHAIN.

(cherry picked from commit 62a2f7c52ab959868f5350695897932846099784)

(cherry picked from commit 9ca7a19f891b4eecb2fa93ac0a428bedd5a197d9)

Change-Id: If627a56be47100342ea7f62f6ca8387ab6bc17a9
Signed-off-by: Chintan Pandya <cpandya@codeaurora.org>
Signed-off-by: Gopal Goberu <ggober@codeaurora.org>
msm: camera: Enable V4L2 based camera for 8x55 target

Enable the v4l2 based camera solution for 8x55 target on the MR1 branch.

Change-Id: I8eae06e9a5dee4d32b5e87a1277028a62d25e68b
Signed-off-by: Roja Rani Yarubandi <rojay@codeaurora.org>
msm: camera: Initial camera bring-up on 8x55 for JB-MR1

Change-Id: I90ed65e878e504aab303e7fd3d6c82d32e5020ef
Signed-off-by: Roja Rani Yarubandi <rojay@codeaurora.org>
USB: msm72k_udc: set QMULT for ISO endpoints

Currently not setting QMULT for ISO endpoints. Set this
value to indicate to the USB controller the number
of transactions to be done in microframe.

Change-Id: I529e6624e592df54bafc9cef30f6b28eca050360
Signed-off-by: Vijayavardhan Vennapusa <vvreddy@codeaurora.org>
msm_fb: Add support for writeback on 7x30

Add support for writeback on 7x30 to avoid under runs
during video playback of high resolution clips.

Change-Id: I3781097b894b21d7d7c4b4f29fdd8ff9435517cc
CRs-fixed: 440174
Signed-off-by: Jeevan Shriram <jshriram@codeaurora.org>
Signed-off-by: Srivalli Oguri <oguri@codeaurora.org>
msm: board7630: Add an ION heap for WRITEBACK

To avoid under-runs during high resolution video clips
playback, we provide Write-back support. Allocate a heap
and required memory for the same.

CRs-fixed: 440174

Change-Id: I53b96821ac2c78bf82b8cc0ce92e30490939662c
Signed-off-by: Chintan Pandya <cpandya@codeaurora.org>
Signed-off-by: Srivalli Oguri <oguri@codeaurora.org>
msm: pm2: Use different API to get the next timer expiration

Use different API to get the next timer expiration. Replace
the existing API "tick_nohz_get_sleep_length" with
"msm_timer_enter_idle". Sometimes existing APIs giving less
timer expiration than what is required when the system decide
to enter into PC. This time is not sufficient for the system
to enter and coming out of the PC.

Signed-off-by: Murali Nalajala <mnalajal@codeaurora.org>
(cherry picked from commit 8dc6ff4d47fceff2b11ab1de7336b659ee10cb19)

Change-Id: Iae2ede92e06f8a16c8f43558d2766b746c6d453a
Signed-off-by: Srivalli Oguri <oguri@codeaurora.org>