Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Macros | Functions | Variables
omap_dmm_tiler.c File Reference
#include <linux/init.h>
#include <linux/module.h>
#include <linux/platform_device.h>
#include <linux/errno.h>
#include <linux/sched.h>
#include <linux/wait.h>
#include <linux/interrupt.h>
#include <linux/dma-mapping.h>
#include <linux/slab.h>
#include <linux/vmalloc.h>
#include <linux/delay.h>
#include <linux/mm.h>
#include <linux/time.h>
#include <linux/list.h>
#include <linux/semaphore.h>
#include "omap_dmm_tiler.h"
#include "omap_dmm_priv.h"

Go to the source code of this file.

Macros

#define DMM_DRIVER_NAME   "dmm"
 
#define GEOM(xshift, yshift, bytes_per_pixel)
 

Functions

int tiler_pin (struct tiler_block *block, struct page **pages, uint32_t npages, uint32_t roll, bool wait)
 
int tiler_unpin (struct tiler_block *block)
 
struct tiler_blocktiler_reserve_2d (enum tiler_fmt fmt, uint16_t w, uint16_t h, uint16_t align)
 
struct tiler_blocktiler_reserve_1d (size_t size)
 
int tiler_release (struct tiler_block *block)
 
dma_addr_t tiler_ssptr (struct tiler_block *block)
 
dma_addr_t tiler_tsptr (struct tiler_block *block, uint32_t orient, uint32_t x, uint32_t y)
 
void tiler_align (enum tiler_fmt fmt, uint16_t *w, uint16_t *h)
 
uint32_t tiler_stride (enum tiler_fmt fmt, uint32_t orient)
 
size_t tiler_size (enum tiler_fmt fmt, uint16_t w, uint16_t h)
 
size_t tiler_vsize (enum tiler_fmt fmt, uint16_t w, uint16_t h)
 
bool dmm_is_initialized (void)
 
 MODULE_LICENSE ("GPL v2")
 
 MODULE_AUTHOR ("Andy Gross <[email protected]>")
 
 MODULE_DESCRIPTION ("OMAP DMM/Tiler Driver")
 
 MODULE_ALIAS ("platform:"DMM_DRIVER_NAME)
 

Variables

struct platform_driver omap_dmm_driver
 

Macro Definition Documentation

#define DMM_DRIVER_NAME   "dmm"

Definition at line 37 of file omap_dmm_tiler.c.

#define GEOM (   xshift,
  yshift,
  bytes_per_pixel 
)
Value:
{ \
.x_shft = (xshift), \
.y_shft = (yshift), \
.cpp = (bytes_per_pixel), \
.slot_w = 1 << (SLOT_WIDTH_BITS - (xshift)), \
.slot_h = 1 << (SLOT_HEIGHT_BITS - (yshift)), \
}

Definition at line 47 of file omap_dmm_tiler.c.

Function Documentation

bool dmm_is_initialized ( void  )

Definition at line 508 of file omap_dmm_tiler.c.

MODULE_ALIAS ( "platform:"  DMM_DRIVER_NAME)
MODULE_AUTHOR ( "Andy Gross <[email protected]>"  )
MODULE_DESCRIPTION ( "OMAP DMM/Tiler Driver"  )
MODULE_LICENSE ( "GPL v2 )
void tiler_align ( enum tiler_fmt  fmt,
uint16_t w,
uint16_t h 
)

Definition at line 479 of file omap_dmm_tiler.c.

int tiler_pin ( struct tiler_block block,
struct page **  pages,
uint32_t  npages,
uint32_t  roll,
bool  wait 
)

Definition at line 309 of file omap_dmm_tiler.c.

int tiler_release ( struct tiler_block block)

Definition at line 388 of file omap_dmm_tiler.c.

struct tiler_block* tiler_reserve_1d ( size_t  size)
read

Definition at line 364 of file omap_dmm_tiler.c.

struct tiler_block* tiler_reserve_2d ( enum tiler_fmt  fmt,
uint16_t  w,
uint16_t  h,
uint16_t  align 
)
read

Definition at line 330 of file omap_dmm_tiler.c.

size_t tiler_size ( enum tiler_fmt  fmt,
uint16_t  w,
uint16_t  h 
)

Definition at line 496 of file omap_dmm_tiler.c.

dma_addr_t tiler_ssptr ( struct tiler_block block)

Definition at line 459 of file omap_dmm_tiler.c.

uint32_t tiler_stride ( enum tiler_fmt  fmt,
uint32_t  orient 
)

Definition at line 486 of file omap_dmm_tiler.c.

dma_addr_t tiler_tsptr ( struct tiler_block block,
uint32_t  orient,
uint32_t  x,
uint32_t  y 
)

Definition at line 468 of file omap_dmm_tiler.c.

int tiler_unpin ( struct tiler_block block)

Definition at line 322 of file omap_dmm_tiler.c.

size_t tiler_vsize ( enum tiler_fmt  fmt,
uint16_t  w,
uint16_t  h 
)

Definition at line 502 of file omap_dmm_tiler.c.

Variable Documentation

uint32_t cpp

Definition at line 58 of file omap_dmm_tiler.c.

struct platform_driver omap_dmm_driver
Initial value:
= {
.probe = omap_dmm_probe,
.remove = omap_dmm_remove,
.driver = {
.owner = THIS_MODULE,
.name = DMM_DRIVER_NAME,
},
}

Definition at line 900 of file omap_dmm_tiler.c.

uint32_t slot_h

Definition at line 60 of file omap_dmm_tiler.c.

uint32_t slot_w

Definition at line 59 of file omap_dmm_tiler.c.

uint32_t x_shft

Definition at line 56 of file omap_dmm_tiler.c.

uint32_t y_shft

Definition at line 57 of file omap_dmm_tiler.c.