bug-hurd
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH 4/4] Add a monotonic time device


From: Pino Toscano
Subject: [PATCH 4/4] Add a monotonic time device
Date: Fri, 26 Aug 2011 20:29:43 +0200

* i386/i386at/conf.c (dev_name_list): Add a new `monotonic' device.

* i386/i386at/model_dep.c (monotonicmmap): New function to map `mmonotonic'.
---
 i386/i386at/conf.c      |    8 ++++++++
 i386/i386at/model_dep.c |   15 +++++++++++++++
 2 files changed, 23 insertions(+), 0 deletions(-)

diff --git a/i386/i386at/conf.c b/i386/i386at/conf.c
index 83c8dbf..e5aff33 100644
--- a/i386/i386at/conf.c
+++ b/i386/i386at/conf.c
@@ -74,6 +74,9 @@ extern int    hypcngetstat(), hypcnsetstat(), 
hypcnportdeath();
 #define hypcnname              "hyp"
 #endif /* MACH_HYP */
 
+extern vm_offset_t monotonicmmap();
+#define        monotonicname           "monotonic"
+
 /*
  * List of devices - console must be at slot 0
  */
@@ -149,6 +152,11 @@ struct dev_ops     dev_name_list[] =
          nodev },
 #endif /* MACH_HYP */
 
+       { monotonicname,        timeopen,       timeclose,      nulldev,
+         nulldev,              nulldev,        nulldev,        monotonicmmap,
+         nodev,                nulldev,        nulldev,        0,
+         nodev },
+
 };
 int    dev_name_count = sizeof(dev_name_list)/sizeof(dev_name_list[0]);
 
diff --git a/i386/i386at/model_dep.c b/i386/i386at/model_dep.c
index 04b8228..e929d22 100644
--- a/i386/i386at/model_dep.c
+++ b/i386/i386at/model_dep.c
@@ -586,6 +586,21 @@ timemmap(dev,off,prot)
        return (i386_btop(pmap_extract(pmap_kernel(), (vm_offset_t) mtime)));
 }
 
+int
+monotonicmmap(dev,off,prot)
+       vm_prot_t prot;
+{
+       extern time_value_t *mmonotonic;
+
+#ifdef lint
+       dev++; off++;
+#endif /* lint */
+
+       if (prot & VM_PROT_WRITE) return (-1);
+
+       return (i386_btop(pmap_extract(pmap_kernel(), (vm_offset_t) 
mmonotonic)));
+}
+
 void
 startrtclock(void)
 {
-- 
1.7.5.4




reply via email to

[Prev in Thread] Current Thread [Next in Thread]