Source-Changes-HG archive

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

[src/trunk]: src/sys/dev/ofw Add of_getprop_uint64



details:   https://anonhg.NetBSD.org/src/rev/81715aa6a236
branches:  trunk
changeset: 365602:81715aa6a236
user:      jmcneill <jmcneill%NetBSD.org@localhost>
date:      Thu Aug 23 13:24:44 2018 +0000

description:
Add of_getprop_uint64

diffstat:

 sys/dev/ofw/ofw_subr.c |  22 ++++++++++++++++++++--
 sys/dev/ofw/openfirm.h |   3 ++-
 2 files changed, 22 insertions(+), 3 deletions(-)

diffs (56 lines):

diff -r a2a27a27ccd5 -r 81715aa6a236 sys/dev/ofw/ofw_subr.c
--- a/sys/dev/ofw/ofw_subr.c    Thu Aug 23 12:18:02 2018 +0000
+++ b/sys/dev/ofw/ofw_subr.c    Thu Aug 23 13:24:44 2018 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: ofw_subr.c,v 1.31 2018/06/26 06:24:52 thorpej Exp $    */
+/*     $NetBSD: ofw_subr.c,v 1.32 2018/08/23 13:24:44 jmcneill Exp $   */
 
 /*
  * Copyright 1998
@@ -34,7 +34,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: ofw_subr.c,v 1.31 2018/06/26 06:24:52 thorpej Exp $");
+__KERNEL_RCSID(0, "$NetBSD: ofw_subr.c,v 1.32 2018/08/23 13:24:44 jmcneill Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -531,3 +531,21 @@
        *val = be32toh(v);
        return 0;
 }
+
+/*
+ * Get the value of a uint64 property, compensating for host byte order.
+ * Returns 0 on success, non-zero on failure.
+ */
+int
+of_getprop_uint64(int node, const char *prop, uint64_t *val)
+{
+       uint64_t v;
+       int len;
+
+       len = OF_getprop(node, prop, &v, sizeof(v));
+       if (len != sizeof(v))
+               return -1;
+
+       *val = be64toh(v);
+       return 0;
+}
diff -r a2a27a27ccd5 -r 81715aa6a236 sys/dev/ofw/openfirm.h
--- a/sys/dev/ofw/openfirm.h    Thu Aug 23 12:18:02 2018 +0000
+++ b/sys/dev/ofw/openfirm.h    Thu Aug 23 13:24:44 2018 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: openfirm.h,v 1.36 2017/07/03 00:47:34 jmcneill Exp $   */
+/*     $NetBSD: openfirm.h,v 1.37 2018/08/23 13:24:44 jmcneill Exp $   */
 
 /*
  * Copyright (C) 1995, 1996 Wolfgang Solfrank.
@@ -130,5 +130,6 @@
 bool   of_hasprop(int, const char *);
 #define of_getprop_bool        of_hasprop
 int    of_getprop_uint32(int, const char *, uint32_t *);
+int    of_getprop_uint64(int, const char *, uint64_t *);
 
 #endif /*_OPENFIRM_H_*/



Home | Main Index | Thread Index | Old Index