On Mon, Mar 22, 2021 at 06:19:14PM +0100, Mark Kettenis wrote:
> > @@ -167,7 +167,7 @@ cwfg_attach(struct device *parent, struc
> > free(batinfo, M_TEMP, len);
> >
> > sc->sc_monitor_interval = OF_getpropint(sc->sc_node,
> > - "cellwise,monitor-interval", CWFG_MONITOR_INTERVAL_DEFAULT);
> > + "cellwise,monitor-interval-ms", CWFG_MONITOR_INTERVAL_DEFAULT);
>
> I think the old property specified the interval in seconds. So you
> should adjust the default value as well. The minimum allowed value is
> 250 so the current 8 makes no sense. You could make it 8000, but
> maybe using 5000 is better as this is whatis used for the pinebook pro.
Right, missed that.
Feedback? OK?
Index: cwfg.c
===================================================================
RCS file: /cvs/src/sys/dev/fdt/cwfg.c,v
retrieving revision 1.1
diff -u -p -r1.1 cwfg.c
--- cwfg.c 10 Jun 2020 17:51:21 -0000 1.1
+++ cwfg.c 22 Mar 2021 18:05:35 -0000
@@ -96,7 +96,7 @@ struct cwfg_softc {
struct ksensordev sc_sensordev;
};
-#define CWFG_MONITOR_INTERVAL_DEFAULT 8
+#define CWFG_MONITOR_INTERVAL_DEFAULT 5000
#define CWFG_DESIGN_CAPACITY_DEFAULT 2000
#define CWFG_ALERT_LEVEL_DEFAULT 0
@@ -124,7 +124,7 @@ cwfg_match(struct device *parent, void *
{
struct i2c_attach_args *ia = aux;
- if (strcmp(ia->ia_name, "cellwise,cw201x") == 0)
+ if (strcmp(ia->ia_name, "cellwise,cw2015") == 0)
return 1;
return 0;
@@ -143,14 +143,14 @@ cwfg_attach(struct device *parent, struc
sc->sc_addr = ia->ia_addr;
sc->sc_node = *(int *)ia->ia_cookie;
- len = OF_getproplen(sc->sc_node, "cellwise,bat-config-info");
+ len = OF_getproplen(sc->sc_node, "cellwise,battery-profile");
if (len <= 0) {
printf(": missing or invalid battery info\n");
return;
}
batinfo = malloc(len, M_TEMP, M_WAITOK);
- OF_getprop(sc->sc_node, "cellwise,bat-config-info", batinfo, len);
+ OF_getprop(sc->sc_node, "cellwise,battery-profile", batinfo, len);
switch (len) {
case BATINFO_SIZE:
memcpy(sc->sc_batinfo, batinfo, BATINFO_SIZE);
@@ -167,7 +167,7 @@ cwfg_attach(struct device *parent, struc
free(batinfo, M_TEMP, len);
sc->sc_monitor_interval = OF_getpropint(sc->sc_node,
- "cellwise,monitor-interval", CWFG_MONITOR_INTERVAL_DEFAULT);
+ "cellwise,monitor-interval-ms", CWFG_MONITOR_INTERVAL_DEFAULT);
sc->sc_design_capacity = OF_getpropint(sc->sc_node,
"cellwise,design-capacity", CWFG_DESIGN_CAPACITY_DEFAULT);
sc->sc_alert_level = OF_getpropint(sc->sc_node,