Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Macros | Functions | Variables
dnfb.c File Reference
#include <linux/kernel.h>
#include <linux/errno.h>
#include <linux/string.h>
#include <linux/mm.h>
#include <linux/delay.h>
#include <linux/interrupt.h>
#include <linux/platform_device.h>
#include <asm/setup.h>
#include <asm/irq.h>
#include <asm/amigahw.h>
#include <asm/amigaints.h>
#include <asm/apollohw.h>
#include <linux/fb.h>
#include <linux/module.h>

Go to the source code of this file.

Macros

#define AP_IOBASE   0x3b0 /* Base address of 1 plane board. */
 
#define AP_STATUS   isaIO2mem(AP_IOBASE+0) /* Status register. Read */
 
#define AP_WRITE_ENABLE   isaIO2mem(AP_IOBASE+0) /* Write Enable Register Write */
 
#define AP_DEVICE_ID   isaIO2mem(AP_IOBASE+1) /* Device ID Register. Read */
 
#define AP_ROP_1   isaIO2mem(AP_IOBASE+2) /* Raster Operation reg. Write Word */
 
#define AP_DIAG_MEM_REQ   isaIO2mem(AP_IOBASE+4) /* Diagnostic Memory Request. Write Word */
 
#define AP_CONTROL_0   isaIO2mem(AP_IOBASE+8) /* Control Register 0. Read/Write */
 
#define AP_CONTROL_1   isaIO2mem(AP_IOBASE+0xa) /* Control Register 1. Read/Write */
 
#define AP_CONTROL_3A   isaIO2mem(AP_IOBASE+0xe) /* Control Register 3a. Read/Write */
 
#define AP_CONTROL_2   isaIO2mem(AP_IOBASE+0xc) /* Control Register 2. Read/Write */
 
#define FRAME_BUFFER_START   0x0FA0000
 
#define FRAME_BUFFER_LEN   0x40000
 
#define VECTOR_MODE   0x40 /* 010x.xxxx */
 
#define DBLT_MODE   0x80 /* 100x.xxxx */
 
#define NORMAL_MODE   0xE0 /* 111x.xxxx */
 
#define SHIFT_BITS   0x1F /* xxx1.1111 */
 
#define AD_BLT   0x80 /* 1xxx.xxxx */
 
#define NORMAL   0x80 /* 1xxx.xxxx */ /* What is happening here ?? */
 
#define INVERSE   0x00 /* 0xxx.xxxx */ /* Clearing this reverses the screen */
 
#define PIX_BLT   0x00 /* 0xxx.xxxx */
 
#define AD_HIBIT   0x40 /* xIxx.xxxx */
 
#define ROP_EN   0x10 /* xxx1.xxxx */
 
#define DST_EQ_SRC   0x00 /* xxx0.xxxx */
 
#define nRESET_SYNC   0x08 /* xxxx.1xxx */
 
#define SYNC_ENAB   0x02 /* xxxx.xx1x */
 
#define BLANK_DISP   0x00 /* xxxx.xxx0 */
 
#define ENAB_DISP   0x01 /* xxxx.xxx1 */
 
#define NORM_CREG1   (nRESET_SYNC | SYNC_ENAB | ENAB_DISP) /* no reset sync */
 
#define S_DATA_1s   0x00 /* 00xx.xxxx */ /* set source to all 1's -- vector drawing */
 
#define S_DATA_PIX   0x40 /* 01xx.xxxx */ /* takes source from ls-bits and replicates over 16 bits */
 
#define S_DATA_PLN
 
#define RESET_CREG   0x80 /* 1000.0000 */
 
#define ROP(r2, r3, r0, r1)   ( (U_SHORT)((r0)|((r1)<<4)|((r2)<<8)|((r3)<<12)) )
 
#define DEST_ZERO   0x0
 
#define SRC_AND_DEST   0x1
 
#define SRC_AND_nDEST   0x2
 
#define SRC   0x3
 
#define nSRC_AND_DEST   0x4
 
#define DEST   0x5
 
#define SRC_XOR_DEST   0x6
 
#define SRC_OR_DEST   0x7
 
#define SRC_NOR_DEST   0x8
 
#define SRC_XNOR_DEST   0x9
 
#define nDEST   0xA
 
#define SRC_OR_nDEST   0xB
 
#define nSRC   0xC
 
#define nSRC_OR_DEST   0xD
 
#define SRC_NAND_DEST   0xE
 
#define DEST_ONE   0xF
 
#define SWAP(A)   ((A>>8) | ((A&0xff) <<8))
 

Functions

int __init dnfb_init (void)
 
 module_init (dnfb_init)
 
 MODULE_LICENSE ("GPL")
 

Variables

struct fb_var_screeninfo dnfb_var __devinitdata
 

Macro Definition Documentation

#define AD_BLT   0x80 /* 1xxx.xxxx */

Definition at line 52 of file dnfb.c.

#define AD_HIBIT   0x40 /* xIxx.xxxx */

Definition at line 57 of file dnfb.c.

#define AP_CONTROL_0   isaIO2mem(AP_IOBASE+8) /* Control Register 0. Read/Write */

Definition at line 35 of file dnfb.c.

#define AP_CONTROL_1   isaIO2mem(AP_IOBASE+0xa) /* Control Register 1. Read/Write */

Definition at line 36 of file dnfb.c.

#define AP_CONTROL_2   isaIO2mem(AP_IOBASE+0xc) /* Control Register 2. Read/Write */

Definition at line 38 of file dnfb.c.

#define AP_CONTROL_3A   isaIO2mem(AP_IOBASE+0xe) /* Control Register 3a. Read/Write */

Definition at line 37 of file dnfb.c.

#define AP_DEVICE_ID   isaIO2mem(AP_IOBASE+1) /* Device ID Register. Read */

Definition at line 32 of file dnfb.c.

#define AP_DIAG_MEM_REQ   isaIO2mem(AP_IOBASE+4) /* Diagnostic Memory Request. Write Word */

Definition at line 34 of file dnfb.c.

#define AP_IOBASE   0x3b0 /* Base address of 1 plane board. */

Definition at line 29 of file dnfb.c.

#define AP_ROP_1   isaIO2mem(AP_IOBASE+2) /* Raster Operation reg. Write Word */

Definition at line 33 of file dnfb.c.

#define AP_STATUS   isaIO2mem(AP_IOBASE+0) /* Status register. Read */

Definition at line 30 of file dnfb.c.

#define AP_WRITE_ENABLE   isaIO2mem(AP_IOBASE+0) /* Write Enable Register Write */

Definition at line 31 of file dnfb.c.

#define BLANK_DISP   0x00 /* xxxx.xxx0 */

Definition at line 64 of file dnfb.c.

#define DBLT_MODE   0x80 /* 100x.xxxx */

Definition at line 46 of file dnfb.c.

#define DEST   0x5

Definition at line 90 of file dnfb.c.

#define DEST_ONE   0xF

Definition at line 100 of file dnfb.c.

#define DEST_ZERO   0x0

Definition at line 85 of file dnfb.c.

#define DST_EQ_SRC   0x00 /* xxx0.xxxx */

Definition at line 60 of file dnfb.c.

#define ENAB_DISP   0x01 /* xxxx.xxx1 */

Definition at line 65 of file dnfb.c.

#define FRAME_BUFFER_LEN   0x40000

Definition at line 42 of file dnfb.c.

#define FRAME_BUFFER_START   0x0FA0000

Definition at line 41 of file dnfb.c.

#define INVERSE   0x00 /* 0xxx.xxxx */ /* Clearing this reverses the screen */

Definition at line 54 of file dnfb.c.

#define nDEST   0xA

Definition at line 95 of file dnfb.c.

#define NORM_CREG1   (nRESET_SYNC | SYNC_ENAB | ENAB_DISP) /* no reset sync */

Definition at line 67 of file dnfb.c.

#define NORMAL   0x80 /* 1xxx.xxxx */ /* What is happening here ?? */

Definition at line 53 of file dnfb.c.

#define NORMAL_MODE   0xE0 /* 111x.xxxx */

Definition at line 47 of file dnfb.c.

#define nRESET_SYNC   0x08 /* xxxx.1xxx */

Definition at line 61 of file dnfb.c.

#define nSRC   0xC

Definition at line 97 of file dnfb.c.

#define nSRC_AND_DEST   0x4

Definition at line 89 of file dnfb.c.

#define nSRC_OR_DEST   0xD

Definition at line 98 of file dnfb.c.

#define PIX_BLT   0x00 /* 0xxx.xxxx */

Definition at line 55 of file dnfb.c.

#define RESET_CREG   0x80 /* 1000.0000 */

Definition at line 80 of file dnfb.c.

#define ROP (   r2,
  r3,
  r0,
  r1 
)    ( (U_SHORT)((r0)|((r1)<<4)|((r2)<<8)|((r3)<<12)) )

Definition at line 84 of file dnfb.c.

#define ROP_EN   0x10 /* xxx1.xxxx */

Definition at line 59 of file dnfb.c.

#define S_DATA_1s   0x00 /* 00xx.xxxx */ /* set source to all 1's -- vector drawing */

Definition at line 75 of file dnfb.c.

#define S_DATA_PIX   0x40 /* 01xx.xxxx */ /* takes source from ls-bits and replicates over 16 bits */

Definition at line 76 of file dnfb.c.

#define S_DATA_PLN
Value:
0xC0 /* 11xx.xxxx */ /* normal, each data access =16-bits in
one plane of image mem */

Definition at line 77 of file dnfb.c.

#define SHIFT_BITS   0x1F /* xxx1.1111 */

Definition at line 48 of file dnfb.c.

#define SRC   0x3

Definition at line 88 of file dnfb.c.

#define SRC_AND_DEST   0x1

Definition at line 86 of file dnfb.c.

#define SRC_AND_nDEST   0x2

Definition at line 87 of file dnfb.c.

#define SRC_NAND_DEST   0xE

Definition at line 99 of file dnfb.c.

#define SRC_NOR_DEST   0x8

Definition at line 93 of file dnfb.c.

#define SRC_OR_DEST   0x7

Definition at line 92 of file dnfb.c.

#define SRC_OR_nDEST   0xB

Definition at line 96 of file dnfb.c.

#define SRC_XNOR_DEST   0x9

Definition at line 94 of file dnfb.c.

#define SRC_XOR_DEST   0x6

Definition at line 91 of file dnfb.c.

#define SWAP (   A)    ((A>>8) | ((A&0xff) <<8))

Definition at line 102 of file dnfb.c.

#define SYNC_ENAB   0x02 /* xxxx.xx1x */

Definition at line 62 of file dnfb.c.

#define VECTOR_MODE   0x40 /* 010x.xxxx */

Definition at line 45 of file dnfb.c.

Function Documentation

int __init dnfb_init ( void  )

Definition at line 280 of file dnfb.c.

module_init ( dnfb_init  )
MODULE_LICENSE ( "GPL"  )

Variable Documentation

struct fb_fix_screeninfo dnfb_fix __devinitdata
Initial value:
= {
.xres = 1280,
.yres = 1024,
.xres_virtual = 2048,
.yres_virtual = 1024,
.bits_per_pixel = 1,
.height = -1,
.width = -1,
}

Definition at line 117 of file dnfb.c.