Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Enumerations | Functions
ttm_page_alloc_dma.c File Reference
#include <linux/dma-mapping.h>
#include <linux/list.h>
#include <linux/seq_file.h>
#include <linux/slab.h>
#include <linux/spinlock.h>
#include <linux/highmem.h>
#include <linux/mm_types.h>
#include <linux/module.h>
#include <linux/mm.h>
#include <linux/atomic.h>
#include <linux/device.h>
#include <linux/kthread.h>
#include <drm/ttm/ttm_bo_driver.h>
#include <drm/ttm/ttm_page_alloc.h>

Go to the source code of this file.

Data Structures

struct  dma_pool
 
struct  dma_page
 
struct  ttm_pool_opts
 
struct  device_pools
 
struct  ttm_pool_manager
 

Macros

#define pr_fmt(fmt)   "[TTM] " fmt
 
#define NUM_PAGES_TO_ALLOC   (PAGE_SIZE/sizeof(struct page *))
 
#define SMALL_ALLOCATION   4
 
#define FREE_ALL_PAGES   (~0U)
 
#define IS_UNDEFINED   (0)
 
#define IS_WC   (1<<1)
 
#define IS_UC   (1<<2)
 
#define IS_CACHED   (1<<3)
 
#define IS_DMA32   (1<<4)
 

Enumerations

enum  pool_type {
  POOL_IS_UNDEFINED, POOL_IS_WC = IS_WC, POOL_IS_UC = IS_UC, POOL_IS_CACHED = IS_CACHED,
  POOL_IS_WC_DMA32 = IS_WC | IS_DMA32, POOL_IS_UC_DMA32 = IS_UC | IS_DMA32, POOL_IS_CACHED_DMA32 = IS_CACHED | IS_DMA32
}
 

Functions

int ttm_dma_populate (struct ttm_dma_tt *ttm_dma, struct device *dev)
 
 EXPORT_SYMBOL_GPL (ttm_dma_populate)
 
void ttm_dma_unpopulate (struct ttm_dma_tt *ttm_dma, struct device *dev)
 
 EXPORT_SYMBOL_GPL (ttm_dma_unpopulate)
 
int ttm_dma_page_alloc_init (struct ttm_mem_global *glob, unsigned max_pages)
 
void ttm_dma_page_alloc_fini (void)
 
int ttm_dma_page_alloc_debugfs (struct seq_file *m, void *data)
 
 EXPORT_SYMBOL_GPL (ttm_dma_page_alloc_debugfs)
 

Macro Definition Documentation

#define FREE_ALL_PAGES   (~0U)

Definition at line 58 of file ttm_page_alloc_dma.c.

#define IS_CACHED   (1<<3)

Definition at line 63 of file ttm_page_alloc_dma.c.

#define IS_DMA32   (1<<4)

Definition at line 64 of file ttm_page_alloc_dma.c.

#define IS_UC   (1<<2)

Definition at line 62 of file ttm_page_alloc_dma.c.

#define IS_UNDEFINED   (0)

Definition at line 60 of file ttm_page_alloc_dma.c.

#define IS_WC   (1<<1)

Definition at line 61 of file ttm_page_alloc_dma.c.

#define NUM_PAGES_TO_ALLOC   (PAGE_SIZE/sizeof(struct page *))

Definition at line 56 of file ttm_page_alloc_dma.c.

#define pr_fmt (   fmt)    "[TTM] " fmt

Definition at line 36 of file ttm_page_alloc_dma.c.

#define SMALL_ALLOCATION   4

Definition at line 57 of file ttm_page_alloc_dma.c.

Enumeration Type Documentation

enum pool_type
Enumerator:
POOL_IS_UNDEFINED 
POOL_IS_WC 
POOL_IS_UC 
POOL_IS_CACHED 
POOL_IS_WC_DMA32 
POOL_IS_UC_DMA32 
POOL_IS_CACHED_DMA32 

Definition at line 66 of file ttm_page_alloc_dma.c.

Function Documentation

EXPORT_SYMBOL_GPL ( ttm_dma_populate  )
EXPORT_SYMBOL_GPL ( ttm_dma_unpopulate  )
EXPORT_SYMBOL_GPL ( ttm_dma_page_alloc_debugfs  )
int ttm_dma_page_alloc_debugfs ( struct seq_file m,
void data 
)

Definition at line 1103 of file ttm_page_alloc_dma.c.

void ttm_dma_page_alloc_fini ( void  )

Definition at line 1085 of file ttm_page_alloc_dma.c.

int ttm_dma_page_alloc_init ( struct ttm_mem_global glob,
unsigned  max_pages 
)

Definition at line 1053 of file ttm_page_alloc_dma.c.

int ttm_dma_populate ( struct ttm_dma_tt ttm_dma,
struct device dev 
)

Definition at line 863 of file ttm_page_alloc_dma.c.

void ttm_dma_unpopulate ( struct ttm_dma_tt ttm_dma,
struct device dev 
)

Definition at line 935 of file ttm_page_alloc_dma.c.