android_kernel_xiaomi_sm8350/arch/arm/plat-omap/include/mach
Hiroshi DOYU 69d3a84a64 omap iommu: simple virtual address space management
This patch provides a device drivers, which has a omap iommu, with
address mapping APIs between device virtual address(iommu), physical
address and MPU virtual address.

There are 4 possible patterns for iommu virtual address(iova/da) mapping.

    |iova/			  mapping		iommu_		page
    | da	pa	va	(d)-(p)-(v)		function	type
  ---------------------------------------------------------------------------
  1 | c		c	c	 1 - 1 - 1	  _kmap() / _kunmap()	s
  2 | c		c,a	c	 1 - 1 - 1	_kmalloc()/ _kfree()	s
  3 | c		d	c	 1 - n - 1	  _vmap() / _vunmap()	s
  4 | c		d,a	c	 1 - n - 1	_vmalloc()/ _vfree()	n*

    'iova':	device iommu virtual address
    'da':	alias of 'iova'
    'pa':	physical address
    'va':	mpu virtual address

    'c':	contiguous memory area
    'd':	dicontiguous memory area
    'a':	anonymous memory allocation
    '()':	optional feature

    'n':	a normal page(4KB) size is used.
    's':	multiple iommu superpage(16MB, 1MB, 64KB, 4KB) size is used.

    '*':	not yet, but feasible.

Signed-off-by: Hiroshi DOYU <Hiroshi.DOYU@nokia.com>
2009-05-19 08:23:49 +03:00
..
blizzard.h
board-ams-delta.h
board-sx1.h
board-voiceblue.h ARM: OMAP: Remove remaining board-*.h includes from hardware.h 2009-03-23 18:07:39 -07:00
board.h ARM: OMAP: get rid of OMAP_TAG_USB, v2 2009-03-23 18:51:20 -07:00
clkdev.h [ARM] omap: convert OMAP1 to use clkdev 2009-02-08 17:50:13 +00:00
clock.h [ARM] omap: add support for bypassing DPLLs 2009-02-19 17:28:30 +00:00
clockdomain.h [ARM] OMAP2/3 clockdomains: combine pwrdm, pwrdm_name into union in struct clockdomain 2009-02-08 17:50:28 +00:00
common.h Merge branch 'master' of git://git.marvell.com/orion into devel 2009-03-19 23:10:40 +00:00
control.h omap mmc: Add low-level initialization for hsmmc controller 2008-12-10 17:37:17 -08:00
cpu.h Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6 into devel 2009-03-25 18:31:35 +00:00
debug-macro.S ARM: OMAP3: Add minimal omap3430 support 2008-10-09 17:51:41 +03:00
dma.h
dmtimer.h
dsp_common.h
eac.h
entry-macro.S ARM: OMAP: Fix get_irqnr_and_base to clear spurious interrupt bits 2008-11-04 13:35:07 -08:00
fpga.h
gpio-switch.h
gpio.h [OMAP850] Changes to base IO subsystem, v2 2009-03-23 18:07:40 -07:00
gpioexpander.h
gpmc.h [ARM] OMAP2 SDRC: move mach-omap2/memory.h into mach/sdrc.h 2009-02-08 17:50:38 +00:00
hardware.h ARM: OMAP: Remove remaining board-*.h includes from hardware.h 2009-03-23 18:07:39 -07:00
hwa742.h
io.h [ARM] OMAP2 SDRC: add SDRAM timing parameter infrastructure 2009-02-08 17:50:39 +00:00
iommu2.h omap iommu: omap2 architecture specific functions 2009-05-05 14:52:39 +03:00
iommu.h omap iommu: tlb and pagetable primitives 2009-05-05 14:52:39 +03:00
iovmm.h omap iommu: simple virtual address space management 2009-05-19 08:23:49 +03:00
irda.h
irqs.h [OMAP850] IRQ related changes 2009-03-23 18:51:19 -07:00
keypad.h
lcd_mipid.h
led.h
mailbox.h omap mailbox: add save_/restore_ctx() for PM 2009-03-23 18:07:26 -07:00
mcbsp.h [ARM] omap: mcbsp: convert to use fck/ick clocks directly 2009-02-08 17:50:19 +00:00
mcspi.h
memory.h [ARM] make page_to_dma() highmem aware 2009-03-15 21:01:21 -04:00
menelaus.h
mmc.h ARM: OMAP3: mmc-twl4030 init passes device nodes back, v2 2009-03-23 18:51:22 -07:00
mtd-xip.h ALSA: Correct Vladimir Barinov's e-mail address 2008-10-10 13:41:45 +02:00
mux.h ARM: OMAP3: Add more GPIO mux options 2009-03-23 18:51:21 -07:00
nand.h
omap16xx.h ARM: OMAP2: Misc updates from linux-omap tree 2008-10-06 15:49:36 +03:00
omap24xx.h ARM: OMAP3: Add minimal omap3430 support 2008-10-09 17:51:41 +03:00
omap34xx.h [ARM] 5434/1: ARM: OMAP: Fix mailbox compile for 24xx 2009-03-28 19:35:02 +00:00
omap730.h
omap850.h [OMAP850] Add base support for omap850 cpu 2009-03-23 18:07:39 -07:00
omap1510.h ARM: OMAP2: Misc updates from linux-omap tree 2008-10-06 15:49:36 +03:00
omap-alsa.h
omapfb.h [ARM] omap: fix a pile of issues 2008-12-01 17:40:54 +00:00
onenand.h
param.h
pm.h Merge branch 'master' of git://git.marvell.com/orion into devel 2009-03-19 23:10:40 +00:00
powerdomain.h [ARM] OMAP2/3 clockdomains: add CM and PRM clkdms 2009-02-08 17:50:29 +00:00
prcm.h [ARM] OMAP: Fix sparse, checkpatch warnings in OMAP2/3 PRCM/PM code 2009-02-08 17:50:24 +00:00
sdrc.h [ARM] OMAP2 SDRC: add SDRAM timing parameter infrastructure 2009-02-08 17:50:39 +00:00
serial.h ARM: OMAP2 Provide function to enable/disable uart clocks 2008-10-06 15:49:15 +03:00
sram.h ARM: OMAP3: Add minimal omap3430 support 2008-10-09 17:51:41 +03:00
system.h Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6 into devel 2009-03-25 18:31:35 +00:00
tc.h
timex.h
uncompress.h
usb.h ARM: OMAP3: MUSB initialization for omap hw, v2 2009-03-23 18:51:24 -07:00
vmalloc.h