extres/regulator: Switch boot_on/always_on sysctl to uint8

These are represented as booleans on the kernel-side, but were being exposed
as int. This was causing some funky things to happen when read later with
sysctl(8), e.g. randomly reading super-high when the value was actually
'0'/false.

Reviewed by:	manu
This commit is contained in:
Kyle Evans 2018-06-15 17:29:32 +00:00
parent 2f9cfbc6f3
commit e937d05124

View File

@ -379,15 +379,15 @@ regnode_create(device_t pdev, regnode_class_t regnode_class,
OID_AUTO, "enable_cnt",
CTLFLAG_RD, &regnode->enable_cnt, 0,
"The regulator enable counter");
SYSCTL_ADD_INT(&regnode->sysctl_ctx,
SYSCTL_ADD_U8(&regnode->sysctl_ctx,
SYSCTL_CHILDREN(regnode_oid),
OID_AUTO, "boot_on",
CTLFLAG_RD, (int *) &regnode->std_param.boot_on, 0,
CTLFLAG_RD, (uint8_t *) &regnode->std_param.boot_on, 0,
"Is enabled on boot");
SYSCTL_ADD_INT(&regnode->sysctl_ctx,
SYSCTL_ADD_U8(&regnode->sysctl_ctx,
SYSCTL_CHILDREN(regnode_oid),
OID_AUTO, "always_on",
CTLFLAG_RD, (int *)&regnode->std_param.always_on, 0,
CTLFLAG_RD, (uint8_t *)&regnode->std_param.always_on, 0,
"Is always enabled");
SYSCTL_ADD_PROC(&regnode->sysctl_ctx,