Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Functions
pxa3xx-gcu.c File Reference
#include <linux/module.h>
#include <linux/platform_device.h>
#include <linux/dma-mapping.h>
#include <linux/miscdevice.h>
#include <linux/interrupt.h>
#include <linux/spinlock.h>
#include <linux/uaccess.h>
#include <linux/ioctl.h>
#include <linux/delay.h>
#include <linux/sched.h>
#include <linux/slab.h>
#include <linux/clk.h>
#include <linux/fs.h>
#include <linux/io.h>
#include "pxa3xx-gcu.h"

Go to the source code of this file.

Data Structures

struct  pxa3xx_gcu_batch
 
struct  pxa3xx_gcu_priv
 

Macros

#define DRV_NAME   "pxa3xx-gcu"
 
#define MISCDEV_MINOR   197
 
#define REG_GCCR   0x00
 
#define GCCR_SYNC_CLR   (1 << 9)
 
#define GCCR_BP_RST   (1 << 8)
 
#define GCCR_ABORT   (1 << 6)
 
#define GCCR_STOP   (1 << 4)
 
#define REG_GCISCR   0x04
 
#define REG_GCIECR   0x08
 
#define REG_GCRBBR   0x20
 
#define REG_GCRBLR   0x24
 
#define REG_GCRBHR   0x28
 
#define REG_GCRBTR   0x2C
 
#define REG_GCRBEXHR   0x30
 
#define IE_EOB   (1 << 0)
 
#define IE_EEOB   (1 << 5)
 
#define IE_ALL   0xff
 
#define SHARED_SIZE   PAGE_ALIGN(sizeof(struct pxa3xx_gcu_shared))
 
#define QDUMP(msg)   do {} while (0)
 
#define QERROR(msg)
 
#define QPRINT(priv, level, msg)
 

Functions

 module_platform_driver (pxa3xx_gcu_driver)
 
 MODULE_DESCRIPTION ("PXA3xx graphics controller unit driver")
 
 MODULE_LICENSE ("GPL")
 
 MODULE_ALIAS_MISCDEV (MISCDEV_MINOR)
 
 MODULE_AUTHOR ("Janine Kropp <[email protected]>, ""Denis Oliver Kropp <[email protected]>, ""Daniel Mack <[email protected]>")
 

Macro Definition Documentation

#define DRV_NAME   "pxa3xx-gcu"

Definition at line 50 of file pxa3xx-gcu.c.

#define GCCR_ABORT   (1 << 6)

Definition at line 56 of file pxa3xx-gcu.c.

#define GCCR_BP_RST   (1 << 8)

Definition at line 55 of file pxa3xx-gcu.c.

#define GCCR_STOP   (1 << 4)

Definition at line 57 of file pxa3xx-gcu.c.

#define GCCR_SYNC_CLR   (1 << 9)

Definition at line 54 of file pxa3xx-gcu.c.

#define IE_ALL   0xff

Definition at line 69 of file pxa3xx-gcu.c.

#define IE_EEOB   (1 << 5)

Definition at line 68 of file pxa3xx-gcu.c.

#define IE_EOB   (1 << 0)

Definition at line 67 of file pxa3xx-gcu.c.

#define MISCDEV_MINOR   197

Definition at line 51 of file pxa3xx-gcu.c.

#define QDUMP (   msg)    do {} while (0)

Definition at line 82 of file pxa3xx-gcu.c.

#define QERROR (   msg)
Value:
do { \
QPRINT(priv, KERN_ERR, msg); \
} while (0)

Definition at line 85 of file pxa3xx-gcu.c.

#define QPRINT (   priv,
  level,
  msg 
)
Value:
do { \
u32 base = gc_readl(priv, REG_GCRBBR); \
printk(level "%ld.%03ld.%03ld - %-17s: %-21s (%s, " \
"STATUS " \
"0x%02lx, B 0x%08lx [%ld], E %5ld, H %5ld, " \
"T %5ld)\n", \
tv.tv_sec - priv->base_time.tv_sec, \
tv.tv_usec / 1000, tv.tv_usec % 1000, \
__func__, msg, \
shared->hw_running ? "running" : " idle", \
gc_readl(priv, REG_GCISCR), \
gc_readl(priv, REG_GCRBBR), \
gc_readl(priv, REG_GCRBLR), \
(gc_readl(priv, REG_GCRBEXHR) - base) / 4, \
(gc_readl(priv, REG_GCRBHR) - base) / 4, \
(gc_readl(priv, REG_GCRBTR) - base) / 4); \
} while (0)

Definition at line 129 of file pxa3xx-gcu.c.

#define REG_GCCR   0x00

Definition at line 53 of file pxa3xx-gcu.c.

#define REG_GCIECR   0x08

Definition at line 60 of file pxa3xx-gcu.c.

#define REG_GCISCR   0x04

Definition at line 59 of file pxa3xx-gcu.c.

#define REG_GCRBBR   0x20

Definition at line 61 of file pxa3xx-gcu.c.

#define REG_GCRBEXHR   0x30

Definition at line 65 of file pxa3xx-gcu.c.

#define REG_GCRBHR   0x28

Definition at line 63 of file pxa3xx-gcu.c.

#define REG_GCRBLR   0x24

Definition at line 62 of file pxa3xx-gcu.c.

#define REG_GCRBTR   0x2C

Definition at line 64 of file pxa3xx-gcu.c.

#define SHARED_SIZE   PAGE_ALIGN(sizeof(struct pxa3xx_gcu_shared))

Definition at line 71 of file pxa3xx-gcu.c.

Function Documentation

MODULE_ALIAS_MISCDEV ( MISCDEV_MINOR  )
MODULE_AUTHOR ( "Janine Kropp <[email protected] ,
""Denis Oliver Kropp< dok @directfb.org >  ,
""Daniel Mack< daniel @caiaq.de >"   
)
MODULE_DESCRIPTION ( "PXA3xx graphics controller unit driver )
MODULE_LICENSE ( "GPL"  )
module_platform_driver ( pxa3xx_gcu_driver  )