The Pedigree Project  0.1
Classes | Public Member Functions | Public Attributes | List of all members
Au1500Serial Class Reference

#include <Serial.h>

+ Inheritance diagram for Au1500Serial:
+ Collaboration diagram for Au1500Serial:

Classes

struct  serial
 

Public Member Functions

virtual void setBase (uintptr_t nBaseAddr)
 
virtual char read ()
 
virtual char readNonBlock ()
 
virtual void write (char c)
 
- Public Member Functions inherited from Serial
void write (const char *c)
 

Public Attributes

struct Au1500Serial::serial PACKED
 
volatile serialm_pRegs
 

Detailed Description

Implements a driver for the Serial connection of the malta's UART.

Base for UART registers: 0x11100000 Register offsets: RXDATA: 0x00 Receive char fifo. TXDATA: 0x04 Transmit char fifo. INTEN: 0x08 Interrupt enable. INTCAUSE: 0x0C Pending interrupt cause register. FIFOCTRL: 0x10 FIFO control register. LINECTRL: 0x14 Line control register. MDMCTRL: 0x18 Modem line control register (UART3 only). LINESTAT: 0x1C Line status register. MDMSTAT: 0x20 Modem status register (UART3 only). AUTOFLOW: 0x24 Automatic Hardware flow control (UART3 only). CLKDIV: 0x28 Baud rate clock divider. ENABLE: 0x100 Module Enable register.

Definition at line 43 of file kernel/machine/au1500/Serial.h.

Member Function Documentation

void Au1500Serial::setBase ( uintptr_t  nBaseAddr)
virtual
Todo:
make this generic for Mmaped and port IO.

Implements Serial.

Definition at line 28 of file au1500/Serial.cc.

Member Data Documentation

volatile serial* Au1500Serial::m_pRegs

The serial device's registers.

Definition at line 71 of file kernel/machine/au1500/Serial.h.


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