Source-Changes-HG archive

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

[src/trunk]: src/sys/dev/i2c get sensore names from properties, remove OF code



details:   https://anonhg.NetBSD.org/src/rev/da0bc1a5eaf9
branches:  trunk
changeset: 1013137:da0bc1a5eaf9
user:      macallan <macallan%NetBSD.org@localhost>
date:      Fri Aug 21 20:44:38 2020 +0000

description:
get sensore names from properties, remove OF code

diffstat:

 sys/dev/i2c/adm1021.c |  48 +++++++++++++++++-------------------------------
 1 files changed, 17 insertions(+), 31 deletions(-)

diffs (96 lines):

diff -r 323b16f116cf -r da0bc1a5eaf9 sys/dev/i2c/adm1021.c
--- a/sys/dev/i2c/adm1021.c     Fri Aug 21 20:41:43 2020 +0000
+++ b/sys/dev/i2c/adm1021.c     Fri Aug 21 20:44:38 2020 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: adm1021.c,v 1.19 2018/06/26 06:03:57 thorpej Exp $ */
+/*     $NetBSD: adm1021.c,v 1.20 2020/08/21 20:44:38 macallan Exp $ */
 /*     $OpenBSD: adm1021.c,v 1.27 2007/06/24 05:34:35 dlg Exp $        */
 
 /*
@@ -38,7 +38,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: adm1021.c,v 1.19 2018/06/26 06:03:57 thorpej Exp $");
+__KERNEL_RCSID(0, "$NetBSD: adm1021.c,v 1.20 2020/08/21 20:44:38 macallan Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -47,14 +47,6 @@
 
 #include <dev/i2c/i2cvar.h>
 
-#ifdef macppc
-#define HAVE_OF 1
-#endif
-
-#ifdef HAVE_OF
-#include <dev/ofw/openfirm.h>
-#endif
-
 /* Registers */
 #define ADM1021_INT_TEMP       0x00    /* Internal temperature value */
 #define ADM1021_EXT_TEMP       0x01    /* External temperature value */
@@ -118,6 +110,7 @@
 struct admtemp_softc {
        i2c_tag_t       sc_tag;
        i2c_addr_t      sc_addr;
+       prop_dictionary_t sc_prop;
 
        int             sc_flags;
        int             sc_noexternal, sc_noneg, sc_nolow;
@@ -320,12 +313,12 @@
        struct i2c_attach_args *ia = aux;
        uint8_t cmd, data, stat, comp, rev;
        char name[ADMTEMP_NAMELEN];
-#ifdef HAVE_OF
-       char ename[64], iname[64];
-       int ch;
-#endif
+       char ename[64] = "external", iname[64] = "internal";
+       const char *desc;
+
        sc->sc_tag = ia->ia_tag;
        sc->sc_addr = ia->ia_addr;
+       sc->sc_prop = ia->ia_prop;
 
        iic_acquire_bus(sc->sc_tag, 0);
        cmd = ADM1021_CONFIG_READ;
@@ -385,27 +378,20 @@
        sc->sc_sensor[ADMTEMP_EXT].units = ENVSYS_STEMP;
        sc->sc_sensor[ADMTEMP_INT].flags = ENVSYS_FMONLIMITS;
        sc->sc_sensor[ADMTEMP_EXT].flags = ENVSYS_FMONLIMITS;
-#ifdef HAVE_OF
-       strcpy(iname, "internal");
-       strcpy(ename, "external");
-       ch = OF_child(ia->ia_cookie);
-       if (ch != 0) {
-               OF_getprop(ch, "location", iname, 64);
-               ch = OF_peer(ch);
-               if (ch != 0) {
-                       OF_getprop(ch, "location", ename, 64);
-               }
-       }       
+
+       if (prop_dictionary_get_cstring_nocopy(sc->sc_prop, "s00", &desc)) {
+               strncpy(iname, desc, 64);
+       }
+
+       if (prop_dictionary_get_cstring_nocopy(sc->sc_prop, "s01", &desc)) {
+               strncpy(ename, desc, 64);
+       }
+
        strlcpy(sc->sc_sensor[ADMTEMP_INT].desc, iname,
            sizeof(sc->sc_sensor[ADMTEMP_INT].desc));
        strlcpy(sc->sc_sensor[ADMTEMP_EXT].desc, ename,
            sizeof(sc->sc_sensor[ADMTEMP_EXT].desc));
-#else
-       strlcpy(sc->sc_sensor[ADMTEMP_INT].desc, "internal",
-           sizeof(sc->sc_sensor[ADMTEMP_INT].desc));
-       strlcpy(sc->sc_sensor[ADMTEMP_EXT].desc, "external",
-           sizeof(sc->sc_sensor[ADMTEMP_EXT].desc));
-#endif
+
        sc->sc_sme = sysmon_envsys_create();
        if (sysmon_envsys_sensor_attach(
            sc->sc_sme, &sc->sc_sensor[ADMTEMP_INT])) {



Home | Main Index | Thread Index | Old Index