OMAP: remove pvr services and omaplfb from kernel

These sources are now defunct

Change-Id: I06218925b9b6b2fceb3e4595c623448b74e5d397
Signed-off-by: Tony Lofthouse <a0741364@ti.com>

Conflicts:
	drivers/gpu/pvr/Kconfig
	drivers/gpu/pvr/Makefile
	drivers/gpu/pvr/bridged_pvr_bridge.c
	drivers/gpu/pvr/buffer_manager.c
	drivers/gpu/pvr/buffer_manager.h
	drivers/gpu/pvr/deviceclass.c
	drivers/gpu/pvr/devicemem.c
	drivers/gpu/pvr/ion.h
	drivers/gpu/pvr/kerneldisplay.h
	drivers/gpu/pvr/mm.c
	drivers/gpu/pvr/mm.h
	drivers/gpu/pvr/module.c
	drivers/gpu/pvr/omap4/sysconfig.c
	drivers/gpu/pvr/omap4/syslocal.h
	drivers/gpu/pvr/omaplfb/omaplfb.h
	drivers/gpu/pvr/omaplfb/omaplfb_displayclass.c
	drivers/gpu/pvr/osfunc.c
	drivers/gpu/pvr/osfunc.h
	drivers/gpu/pvr/pvr_bridge_k.c
	drivers/gpu/pvr/pvr_bridge_km.h
	drivers/gpu/pvr/pvrsrv.c
	drivers/gpu/pvr/pvrversion.h
	drivers/gpu/pvr/queue.c
	drivers/gpu/pvr/refcount.c
	drivers/gpu/pvr/refcount.h
	drivers/gpu/pvr/resman.c
	drivers/gpu/pvr/services.h
	drivers/gpu/pvr/servicesext.h
	drivers/gpu/pvr/servicesint.h
	drivers/gpu/pvr/sgx/bridged_sgx_bridge.c
	drivers/gpu/pvr/sgx/mmu.c
	drivers/gpu/pvr/sgx/mmu.h
	drivers/gpu/pvr/sgx/sgxinfokm.h
	drivers/gpu/pvr/sgx/sgxinit.c
	drivers/gpu/pvr/sgx/sgxkick.c
	drivers/gpu/pvr/sgx/sgxreset.c
	drivers/gpu/pvr/sgx/sgxtransfer.c
	drivers/gpu/pvr/sgx/sgxutils.c
	drivers/gpu/pvr/sgx/sgxutils.h
	drivers/gpu/pvr/sgx_mkif_km.h
	drivers/gpu/pvr/sgxapi_km.h
	drivers/gpu/pvr/sgxerrata.h
	drivers/gpu/pvr/sgxfeaturedefs.h
	drivers/gpu/pvr/sgxinfo.h
	drivers/gpu/pvr/ttrace_common.h
Remove the remaining pvr files
OMAP4: ion: remove hardcoded carveout sizes

These are no longer used as android-display is calculating the
carveout sizes.

Change-Id: I3dcaec56158da1a573cb8de9ec3761db94d1a698
Signed-off-by: Lajos Molnar <lajos@ti.com>
Singed-off-by: Dima Svetlov <svetlov@ti.com>

Conflicts:
	arch/arm/mach-omap2/include/mach/omap4_ion.h
omap: ion: define carveouts as per system memory configuration

Carveout address and sizes are hardcoded as per 1GB configuration.
512MB configuration will have reduced carveouts and needs
redifinition of carveouts. Static carveout parameters are made
dynamic and calclulated runtime as per system configuration.

Carveout address,size parameters,calculation are made more
easily readable and perceivable.
All carveout parameter initialization needs to happen at
the earliest possible, which is triggerd by board file.

Change-Id: I32bb9e04ef40f5d7d6f7548bba9ab5878bfcb56d
Signed-off-by: Devaraj Rangasamy <dev@ti.com>
sgx_omaplfb: Create omaplfb platform device file to permit device configuration

Change-Id: Ic790a0440d19d862d981a230470523409b25b9a3
Signed-off-by: Tony Lofthouse <a0741364@ti.com>
Signed-off-by: Gustavo Diaz Prado <a0273371@ti.com>
OMAP2: generic Android display configuration setup

Added android_display methods to allow runtime configuration of
Android display resources, such as:

- FB0's vram is dynamically calculated from the number of
  buffers SGX requires in VRAM (swap chain and/or composition
  buffers), and the FB0 display size.
- OMAP VRAM is calculated from FB0's vram need + any other
  specified FB's vram.  (If command line is used to specify
  FB vrams, omap vram must also be specified.)
- TILER1D area reserved for use as DSS MMU by DSSCOMP is
  calculated from default display size.  It can be overriden
  by board file.
- TILER2D carveout size is reduced by TILER1D area (if coallocated
  with TILER2D) and by the TILER2D SGX buffers (swapchain and/or
  composition buffers)
- nonsecure TILER2D carveout size is set to the backpages needed
  by TILER2D SGX buffers.

All of this is coordinated by omap_android_display_setup.  It
takes pointers to the DSS board info, FB platform data, and
optionally to the ION, SGX and DSSCOMP platform data.  It should
be called in board_reserve before omap_ion_init.

If SGX data is provided, it is set as the SGX platform data for
FB0.  Similarly, if DSSCOMP platform data is provided it is
also set.  This can be used to set a preferred tiler1d slot size.
If ION platform data is provided, it is updated with the required
tiler2d carveout sizes.

NOTE:

To maximize TILER2D space, the TILER1D area reserved for android
display is not aligned to 1MB, but is aligned to 32 pages as the
smallest 2D allocation needs a 32-page band.  We further reduce
TILER2D space by the container space lost by the SGX buffers,
which may be larger than the actual backpages bneeded for the
SGX buffers.

Therefore the sum of secure + nonsecure + 1D tiler space may
be smaller than the available container space.

Ported to latest SGX DDK by Dima Svetlov.

Change-Id: I5d8858c38efd842452994e3a3476463083d200d7
Signed-off-by: Lajos Molnar <lajos@ti.com>
Signed-off-by: Dima Svetlov <svetlov@ti.com>
OMAP2: correction in early params functions for android-display

Correction in early params functions in android-display.c

Change-Id: I2bef7e62cc96f75ef23690e29213c8e6d4d545ea
Signed-off-by: Muralidhar Dixit <murali.dixit@ti.com>
plat-omap: android-display: Set min number of vram buffers

Omapfb requires at least one vram buffer

Change-Id: I7d719856e3360314f8bccfba8fcbd3b518496b8b
Signed-off-by: Peter Nordström <nordstrom@ti.com>
Signed-off-by: Lajos Molnar <lajos@ti.com>
Signed-off-by: Dima Svetlov <svetlov@ti.com>
plat-omap: android-display: add 2 extra VRAM buffers for gc320

2 extra VRAM buffers are needed to gc320 composition

Change-Id: I5e02392f32a93c2eb12314151cd3a72b44fd4ae9
Signed-off-by: Dima Svetlov <svetlov@ti.com>
ION : ION buffers caching support (ION, TILER 1D buffers)

ION map is enhanced to map ion buffers as cached pages
This patch also adds IOCTLs in ION to flush and invalidate
the cached buffers
Note: TILER 2D buffers cant be mapped as cached regions to
MPU due to DMM limitation

Complete list of feature patchset (cross project dependencies)
  http://review.omapzoom.org/18390  kernel/omap
  http://review.omapzoom.org/18391  external/kernel-headers
  http://review.omapzoom.org/18392  bionic
  http://review.omapzoom.org/18393  hardware/ti/omap4xxx
  http://review.omapzoom.org/18394  hardware/ti/domx

Change-Id: I8c7c3f0375a4b3fae13f46a657d0c2eec703f72b
Signed-off-by: Kalpesh Patil <kalpeshpatil@ti.com>
Signed-off-by: Devaraj Rangasamy <dev@ti.com>

Conflicts:
	drivers/gpu/ion/omap/omap_tiler_heap.c
omaplfb: Add omaplfb to the kernel tree

omaplfb has dependencies on several kernel components and it will
be easier to maintain it in the kernel tree.

Sync'd to DDK omaplfb patch:
omaplfb: Allocate a clear buffer with 8 pixel stride per GC requirement

Change-Id: I0c781007350fea724aa498f7f8d328db66f9d41c
Signed-off-by: Hemant Hariyani <hemanthariyani@ti.com>
Signed-off-by: Tony Lofthouse <a0741364@ti.com>
[Blaze] omap: dss: dsi: add manual update

Add manual update to the DSI driver.

Signed-off-by: Lajos Molnar <molnar@ti.com>
Signed-off-by: Gustavo Diaz Prado <gusdp@ti.com>
Signed-off-by: Dan Murphy <dmurphy@ti.com>
omaplfb: add rotation check to pass the correct stride

Currently omaplfb_bv does calculate stride correctly for NV12.
This patch fixed the stride calculation based on rotation angle.

Change-Id: Icf4b099b2b6780a9e8743c8e712e00d580d1acf4
Signed-off-by: Jack Yen <jyen@ti.com>
omaplfb: Adds missing length assignment to clear buffer

Adds missing length assignment to the buffdesc used to clear
(fill) the framebuffer. This was leading to problems in the GC
driver buffer geometry validation.

Change-Id: Ie75c48b530539f27cb977d3b7eda6fe2dd56901f
Signed-off-by: Gustavo Diaz Prado <a0273371@ti.com>
OMAPLFB: Dont foward compositions to DSSCOMP if overlay is Zero

Do not foward compositions to DSSCOMP in case overlay number
passed by HWC is zero. The dsscomp->num_overlay = 0 means
that there is no primary display and no rendering is required.

Change-Id: If7b582efeb55ce84878d0bfbd19eabd2ebd3afaa
Signed-off-by: Tony Lofthouse <a0741364@ti.com>
Signed-off-by: Dandawate Saket <dsaket@ti.com>
OMAPDSS:DSSCOMP: Add mem2mem write back support.

Added mem2mem wb mode. Patch supports capturing from pipes.

Change-Id: Ia4f30e3e163023832b3b9e91d5d67ffe8ffd7365
Signed-off-by: Artem Rudenko <artemrudenko@ti.com>
OMAPDSS:DSSCOMP: Ignore display resolution for WB source overlay

When WB captures from an overlay in MEM2MEM mode, the captured
image may be up-scaled beyond the size of the display.

Change-Id: If5a8faf3206923a5f218d711527cc3ff2b54a7f7
Signed-off-by: Artem Rudenko <artemrudenko@ti.com>
OMAPDSS: DSS: Wait for wb interrupt

This patch prevents skipping of frames in case we setup
a new composition until WB finishes the previous one.

Change-Id: I5793dec7f0856ce94674f326383de59f935a2f07
Signed-off-by: Artem Rudenko <artemrudenko@ti.com>
OMAPDSS: DSSCOMP: Add MEM2MEM with manager mode

This change adds code for maintain MEM2MEM with manager mode
at DSSCOMP level.

Change-Id: Id14bc0c4884310250b6709436d815c9102a9d72e
Signed-off-by: Mykhailo Denysiuk <x0172934@ti.com>
OMAPDSS: DSSCOMP: Added platform_info and getter

Get platform information from dss2 driver and android_display,
instead of it being hardcoded in dsscomp clients.

Change-Id: Icc23245ec93d93dd0d9b9fcd791e546720699dcc
Signed-off-by: Lajos Molnar <lajos@ti.com>
Signed-off-by: Dima Svetlov <svetlov@ti.com>