The Pedigree Project  0.1
Public Types | Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | Static Private Attributes | List of all members
X86IsaDma Class Reference

#include <X86IsaDma.h>

+ Inheritance diagram for X86IsaDma:
+ Collaboration diagram for X86IsaDma:

Public Types

enum  TransferModes {
  SelfTest = 0, Write = (1 << 2), Read = (2 << 2), Cascade = (3 << 2),
  AutoInit = (1 << 4), Increment = 0, Decrement = (1 << 5), OnDemand = 0,
  Single = (1 << 6), Block = (2 << 6)
}
 

Public Member Functions

virtual bool initTransfer (uint8_t channel, uint8_t mode, size_t length, uintptr_t addr)
 Initialises an operation. More...
 

Static Public Member Functions

static X86IsaDmainstance ()
 
- Static Public Member Functions inherited from IsaDma
static IsaDmainstance ()
 

Private Member Functions

void resetFlipFlop (uint8_t chan)
 
void resetHard (uint8_t chan)
 
void unmaskAll ()
 
bool internalSetup (uint8_t channel, size_t length, uintptr_t addr)
 

Private Attributes

IoPort m_Io
 

Static Private Attributes

static X86IsaDma m_Instance
 

Detailed Description

x86 ISA DMA implementations. It is assumed drivers will be notified by some other means that their data is ready. This class is merely designed to prepare operations on the DMA controller without requiring drivers to do it themselves.

Definition at line 111 of file X86IsaDma.h.

Member Function Documentation

bool X86IsaDma::initTransfer ( uint8_t  channel,
uint8_t  mode,
size_t  length,
uintptr_t  addr 
)
virtual

Initialises an operation.

Todo:
Extra flags to control modes and things

Implements IsaDma.

Definition at line 24 of file X86IsaDma.cc.

References FATAL, NOTICE, and IoPort::write8().


The documentation for this class was generated from the following files: