NOVA User-Level Environment  Version testbox/changed-memory-timing-317-g320d8b5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
service_per_cpu_timer.cc File Reference
#include <nul/motherboard.h>
#include <nul/compiler.h>
#include <nul/capalloc.h>
#include <nul/baseprogram.h>
#include <sys/semaphore.h>
#include <host/hpet.h>
#include <host/rtc.h>
#include <nul/topology.h>
#include <nul/generic_service.h>
#include <nul/service_timer.h>
#include <service/lifo.h>
#include <service/time.h>
#include <nul/timer.h>
#include "host/simplehwioout.h"

Classes

class  ClockSyncInfo
class  PerCpuTimerService
struct  PerCpuTimerService::Timer
struct  PerCpuTimerService::ClientData
struct  PerCpuTimerService::RemoteSlot
struct  PerCpuTimerService::PerCpu
struct  PerCpuTimerService::WorkerMessage

Macros

#define MIN_TICKS_BETWEEN_HPET_WRAP   4
#define CPT_RESOLUTION   /* 1 divided by */ (1U<<13) /* clocks per hpet tick */
#define CLIENTS   ((1 << Config::MAX_CLIENTS_ORDER) + 32 + 10)
#define PIT_FREQ   1193180ULL
#define PIT_DEFAULT_PERIOD   1000ULL /* us */
#define PIT_IRQ   2
#define PIT_PORT   0x40

Functions

 PARAM_HANDLER (timer_hpet_legacy)
 PARAM_HANDLER (timer_force_pit)
 PARAM_HANDLER (timer_verbose)
 PARAM_HANDLER (timer_slow_wallclock)
 PARAM_HANDLER (service_per_cpu_timer,"service_per_cpu_timer:[slow_wallclock=0][,hpet_force_legacy=0][,force_pit=0][,pit_period_us]")

Macro Definition Documentation

#define CLIENTS   ((1 << Config::MAX_CLIENTS_ORDER) + 32 + 10)
#define CPT_RESOLUTION   /* 1 divided by */ (1U<<13) /* clocks per hpet tick */
#define MIN_TICKS_BETWEEN_HPET_WRAP   4
#define PIT_DEFAULT_PERIOD   1000ULL /* us */
#define PIT_FREQ   1193180ULL
#define PIT_IRQ   2
#define PIT_PORT   0x40

Function Documentation

PARAM_HANDLER ( timer_hpet_legacy  )
PARAM_HANDLER ( timer_force_pit  )
PARAM_HANDLER ( timer_verbose  )
PARAM_HANDLER ( timer_slow_wallclock  )
PARAM_HANDLER ( service_per_cpu_timer  ,
"service_per_cpu_timer:"  [slow_wallclock=0][, hpet_force_legacy=0][, force_pit=0][, pit_period_us] 
)