main.c File Reference

#include <libc.h>
#include <core.h>
#include "libdma.h"
#include "dmavar.h"
#include "dmareg.h"

Defines

#define MAXDMA   8
#define DMA_SIZE   (64*1024)
#define LOW_BYTE(x)   (x & 0x00FF)
#define HI_BYTE(x)   ((x & 0xFF00) >> 8)

Functions

void dma_start (t_dma *dmas, u_char channel, u_char mode)
void dma_stop (u_char channel)
u_int dma_remain (u_char channel)
void sys_dma_register (t_tcb *caller)
void sys_dma_unregister (t_tcb *caller)
void sys_dma_reset (t_tcb *caller)
void sys_dma_dump (t_tcb *caller)
void do_dmasrv_syscall ()
void dmasrv_syscall ()
void create_dmasrv ()
int main (int argc, char **argv)

Variables

t_dma_info info
t_dma dmas [MAXDMA]
u_char mask_reg [MAXDMA] = {0x0A, 0x0A, 0x0A, 0x0A, 0xD4, 0xD4, 0xD4, 0xD4}
u_char mode_reg [MAXDMA] = {0x0B, 0x0B, 0x0B, 0x0B, 0xD6, 0xD6, 0xD6, 0xD6}
u_char clear_reg [MAXDMA] = {0x0C, 0x0C, 0x0C, 0x0C, 0xD8, 0xD8, 0xD8, 0xD8}
u_char page_port [MAXDMA] = {0x87, 0x83, 0x81, 0x82, 0x8F, 0x8B, 0x89, 0x8A}
u_char addr_port [MAXDMA] = {0x00, 0x02, 0x04, 0x06, 0xC0, 0xC4, 0xC8, 0xCC}
u_char count_port [MAXDMA] = {0x01, 0x03, 0x05, 0x07, 0xC2, 0xC6, 0xCA, 0xCE}

Define Documentation

#define DMA_SIZE   (64*1024)
 

#define HI_BYTE  )     ((x & 0xFF00) >> 8)
 

#define LOW_BYTE  )     (x & 0x00FF)
 

#define MAXDMA   8
 


Function Documentation

void create_dmasrv  ) 
 

allocate a task for dma server

u_int dma_remain u_char  channel  ) 
 

void dma_start t_dma dmas,
u_char  channel,
u_char  mode
 

void dma_stop u_char  channel  ) 
 

void dmasrv_syscall  ) 
 

void do_dmasrv_syscall  ) 
 

int main int  argc,
char **  argv
 

void sys_dma_dump t_tcb caller  ) 
 

void sys_dma_register t_tcb caller  ) 
 

void sys_dma_reset t_tcb caller  ) 
 

void sys_dma_unregister t_tcb caller  ) 
 


Variable Documentation

u_char addr_port[MAXDMA] = {0x00, 0x02, 0x04, 0x06, 0xC0, 0xC4, 0xC8, 0xCC}
 

u_char clear_reg[MAXDMA] = {0x0C, 0x0C, 0x0C, 0x0C, 0xD8, 0xD8, 0xD8, 0xD8}
 

u_char count_port[MAXDMA] = {0x01, 0x03, 0x05, 0x07, 0xC2, 0xC6, 0xCA, 0xCE}
 

t_dma dmas[MAXDMA]
 

t_dma_info info
 

u_char mask_reg[MAXDMA] = {0x0A, 0x0A, 0x0A, 0x0A, 0xD4, 0xD4, 0xD4, 0xD4}
 

u_char mode_reg[MAXDMA] = {0x0B, 0x0B, 0x0B, 0x0B, 0xD6, 0xD6, 0xD6, 0xD6}
 

u_char page_port[MAXDMA] = {0x87, 0x83, 0x81, 0x82, 0x8F, 0x8B, 0x89, 0x8A}
 


Generated on Wed May 24 23:06:01 2006 for LSE/OS by  doxygen 1.4.6