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

#include <rtc.h>

Inheritance diagram for BasicRtc:
HostRtc

Public Member Functions

void rtc_sync (Clock *clock)
timevalue rtc_wallclock ()
 Return seconds*FREQUENCY since epoch.
 BasicRtc (DBus< MessageHwIOIn > &bus_hwioin, DBus< MessageHwIOOut > &bus_hwioout, unsigned iobase)

Protected Types

enum  { MS_TIMEOUT = 2000 }

Protected Member Functions

unsigned char rtc_read (unsigned index)

Protected Attributes

unsigned _iobase

Member Enumeration Documentation

anonymous enum
protected
Enumerator:
MS_TIMEOUT 

Constructor & Destructor Documentation

BasicRtc::BasicRtc ( DBus< MessageHwIOIn > &  bus_hwioin,
DBus< MessageHwIOOut > &  bus_hwioout,
unsigned  iobase 
)
inline

Member Function Documentation

unsigned char BasicRtc::rtc_read ( unsigned  index)
inlineprotected
void BasicRtc::rtc_sync ( Clock clock)
inline

We wait for an update to happen to get a more accurate timing.

Instead of triggering on the UIP flag, which is typically enabled for less than 2ms, we wait on the Update-Ended-Flag which is set on the falling edge of the UIP flag and sticky until read out.

timevalue BasicRtc::rtc_wallclock ( )
inline

Return seconds*FREQUENCY since epoch.

Member Data Documentation

unsigned BasicRtc::_iobase
protected

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