Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Macros | Functions | Variables
iommu.c File Reference
#include <linux/kernel.h>
#include <linux/init.h>
#include <linux/mm.h>
#include <linux/slab.h>
#include <linux/highmem.h>
#include <linux/scatterlist.h>
#include <linux/of.h>
#include <linux/of_device.h>
#include <asm/pgalloc.h>
#include <asm/pgtable.h>
#include <asm/io.h>
#include <asm/mxcc.h>
#include <asm/mbus.h>
#include <asm/cacheflush.h>
#include <asm/tlbflush.h>
#include <asm/bitext.h>
#include <asm/iommu.h>
#include <asm/dma.h>

Go to the source code of this file.

Macros

#define IOMMU_RNGE   IOMMU_RNGE_256MB
 
#define IOMMU_START   0xF0000000
 
#define IOMMU_WINSIZE   (256*1024*1024U)
 
#define IOMMU_NPTES   (IOMMU_WINSIZE/PAGE_SIZE) /* 64K PTEs, 265KB */
 
#define IOMMU_ORDER   6 /* 4096 * (1<<6) */
 
#define IOPERM   (IOPTE_CACHE | IOPTE_WRITE | IOPTE_VALID)
 
#define MKIOPTE(pfn, perm)   (((((pfn)<<8) & IOPTE_PAGE) | (perm)) & ~IOPTE_WAZ)
 

Functions

void viking_flush_page (unsigned long page)
 
void viking_mxcc_flush_page (unsigned long page)
 
 subsys_initcall (iommu_init)
 
void __init ld_mmu_iommu (void)
 

Variables

int viking_mxcc_present
 
int flush_page_for_dma_global
 

Macro Definition Documentation

#define IOMMU_NPTES   (IOMMU_WINSIZE/PAGE_SIZE) /* 64K PTEs, 265KB */

Definition at line 37 of file iommu.c.

#define IOMMU_ORDER   6 /* 4096 * (1<<6) */

Definition at line 38 of file iommu.c.

#define IOMMU_RNGE   IOMMU_RNGE_256MB

Definition at line 34 of file iommu.c.

#define IOMMU_START   0xF0000000

Definition at line 35 of file iommu.c.

#define IOMMU_WINSIZE   (256*1024*1024U)

Definition at line 36 of file iommu.c.

#define IOPERM   (IOPTE_CACHE | IOPTE_WRITE | IOPTE_VALID)

Definition at line 54 of file iommu.c.

#define MKIOPTE (   pfn,
  perm 
)    (((((pfn)<<8) & IOPTE_PAGE) | (perm)) & ~IOPTE_WAZ)

Definition at line 55 of file iommu.c.

Function Documentation

void __init ld_mmu_iommu ( void  )

Definition at line 430 of file iommu.c.

subsys_initcall ( iommu_init  )
void viking_flush_page ( unsigned long  page)
void viking_mxcc_flush_page ( unsigned long  page)

Variable Documentation

int flush_page_for_dma_global

Definition at line 76 of file srmmu.c.

int viking_mxcc_present

Definition at line 83 of file srmmu.c.