usb: musb: implement (un)map_urb_for_dma hooks

MUSB controller cannot work in DMA mode with misaligned buffers,
switching in PIO mode.

HCD core has hooks that allow to override the default DMA
mapping and unmapping routines for host controllers that have
special DMA requirements, such as alignment contraints.

It is observed that work in PIO mode is slow and it's better
to align buffers properly before pass them to MUSB

Some ideas taken from ehci-tegra.c

Change-Id: Id6eeaa811063d408f121c79012aba921f26eb582
Signed-off-by: Ruslan Bilovol <ruslan.bilovol@ti.com>
OMAP4470: clock:  Fixed L3_set_rate on OMAP4470

CLKOUTX2_M7_DPLL_CORE, CLKOUTX2_M6_DPLL_PER might be used for PER_BB2D_FCLK
on OMAP4470. Therefore, those clocks must be controlled by BB2D driver,
not omap4_virt_l3_set_rate().

Change-Id: I8c930cf9d53203db45fe8ad348b61735b39256fa
Signed-off-by: Oleg Matcovschi <oleg.matcovschi@ti.com>
OMAP4470: gcx: Add device_scale, bandwith interface functions.

Extend device platform data to support device scaling and querying
L3 bandwidth.

Change-Id: I7e926767ba727bacc0f13543425d43225f815ccd
Signed-off-by: Oleg Matcovschi <oleg.matcovschi@ti.com>
OMAP4470: gcx: Use device scaling instead of L3 throughput.

Previously, L3 throughput affected BB2D clock frequency indirectly
due bug. Problem is fixed, so driver should use device scaling
mechanism to switch OPP's.

Change-Id: I1900fe1add7fd3ae597f2a7abf59d7231228125a
Signed-off-by: Oleg Matcovschi <oleg.matcovschi@ti.com>
Omap4: Tablet: Set correct physical dimensions of lo-res panel

Change-Id: Icbd28a0cd2e1a289361cea2b53ff570a8f04b962
Signed-off-by: Peter Nordström <nordstrom@ti.com>
gcx: mmu refactoring.

Switch to using cached memory for MMU.
MMU walking optimizied/simplified in map/unmap.
Slave allocation changed to allocate in chunks rather then one at time.
Moved global variables to gccorecontext structure.
Renamed MMU definitions.
Minor MMU cleanup.
Use standard list constructs.

Change-Id: I9eabc9d421ed0df7a9e2899e2a4a3e379bcf203d
Signed-off-by: Alexei Shlychkov <shlychkov@gmail.com>
gcx: debug logging.

Includes std linux logging and custom logging backends.

Change-Id: I8f93e87390f6473964407c21c8f243c186e2270f
Signed-off-by: Alexei Shlychkov <x0177296@ti.com>
gcx: removed iounmap from exit.

We don't explicitly map register space anymore so
we shouldn't unmap it explicitly either.

Change-Id: I20acf9510c60362069b929e77c06c887c02fde3a
Signed-off-by: Alexei Shlychkov <x0177296@ti.com>
gcx: mmu improvements.

Moved mmu shared object to the driver context;
Added mmu init/exit functions;
Memory alloc/free moved to gcmem.

Change-Id: I6475b839423377d80ff7fda50699a43012b7b6d7
Signed-off-by: Alexei Shlychkov <x0177296@ti.com>
OMAPDSS:DSS: Add mem2mem write back support.

Support for Memory-to-Memory writeback mode for capturing from pipes.

Change-Id: I8bc3b62f12aaafbfd0771ee6fe3d3ce84421a19e
Signed-off-by: Artem Rudenko <artemrudenko@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:DSS: 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: Idac2c5082fb60d68d996c15daf8a13080b1f068e
Signed-off-by: Mykola Ostrovskyy <mykola@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: Writeback channelout switching WA.

This is a workaround. According to TRM we should disable the manager
but it will cause blinking of panel. WA is to disable pipe which was
used as source of WB and do dummy enable and disable of WB.

Change-Id: Ie1834fcef10b1cee98522c4251e771447760b9f3
Signed-off-by: Artem Rudenko <artemrudenko@ti.com>
gpu: ion: check for input arguments in ion_free

ion_free is a public API and is directly dereferencing a
pointer without checking for NULL. A check has been
added for the same and throws a WARN in case of invalid
arguments.

Change-Id: Idcf72e4449f8cba2b8342d6fb0f64600c2c59c7e
Signed-off-by: Suman Anna <s-anna@ti.com>
gcx: added pulse skipping enable to power off case.

This allows to at least enter the less power consuming
mode if power off is not possible at the moment.

Change-Id: If684849f1149da2805db2841dd3ecfd55110f43f
Signed-off-by: Alexei Shlychkov <x0177296@ti.com>
gcx: added support for asynchronous operation.

Change-Id: I9eff91d89e9d9c5260805bd0ae54a3c324806144
Signed-off-by: Alexei Shlychkov <x0177296@ti.com>
gcx: debugging improvements.

Change-Id: I6d169956e0e3d70dd7ee7d619e39bb2101a25f2b
Signed-off-by: Alexei Shlychkov <x0177296@ti.com>
gcx: bltsville interface cleanup.

Change-Id: I320490bd637abe081838c0280ba1dc0f2fef92ad
Signed-off-by: Alexei Shlychkov <x0177296@ti.com>
gcx: nv12 source support using single source walker

Change-Id: I88924ea35d9395f985147119b54cee7e0e3fd1bd
Signed-off-by: Craig Stout <craig.stout@ti.com>