NOVA User-Level Environment  Version testbox/changed-memory-timing-317-g320d8b5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
PciDriver Class Reference

#include <jsdriver.h>

Inheritance diagram for PciDriver:
Host82573 Host82576 Host82576VF

Protected Types

enum  MessageLevel {
  INFO = 1<<0, DEBUG = 1<<1, PCI = 1<<2, IRQ = 1<<3,
  RX = 1<<4, TX = 1<<5, VF = 1<<6, WARN = 1<<7,
  ALL = ~0U
}

Protected Member Functions

void spin (unsigned micros)
bool wait (volatile uint32 &reg, uint32 mask, uint32 value, unsigned timeout_micros=1000000)
 __attribute__ ((format(printf, 3, 4))) void msg(unsigned level
const char mword addr2phys (void *ptr)
 Translate a virtual to a physical address.
bool assign_pci ()
 PciDriver (const char *name, DBus< MessageHostOp > &bus_hostop, Clock *clock, unsigned msg_level, uint16 bdf)

Protected Attributes

const char * _name
DBus< MessageHostOp > & _bus_hostop
bool _dmar
Clock_clock
unsigned _msg_level
 Logging.
uint16 _bdf
const char * msg

Member Enumeration Documentation

enum PciDriver::MessageLevel
protected
Enumerator:
INFO 
DEBUG 
PCI 
IRQ 
RX 
TX 
VF 
WARN 
ALL 

Constructor & Destructor Documentation

PciDriver::PciDriver ( const char *  name,
DBus< MessageHostOp > &  bus_hostop,
Clock clock,
unsigned  msg_level,
uint16  bdf 
)
inlineprotected

Member Function Documentation

PciDriver::__attribute__ ( (format(printf, 3, 4))  )
protected
mword PciDriver::addr2phys ( void *  ptr)
protected

Translate a virtual to a physical address.

bool PciDriver::assign_pci ( )
protected
void PciDriver::spin ( unsigned  micros)
protected
bool PciDriver::wait ( volatile uint32 reg,
uint32  mask,
uint32  value,
unsigned  timeout_micros = 1000000 
)
protected

Member Data Documentation

uint16 PciDriver::_bdf
protected
DBus<MessageHostOp>& PciDriver::_bus_hostop
protected
Clock* PciDriver::_clock
protected
bool PciDriver::_dmar
protected
unsigned PciDriver::_msg_level
protected
const char* PciDriver::_name
protected
void PciDriver::msg
protected

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