diff options
author | Eddie James <eajames@linux.ibm.com> | 2022-08-09 23:07:01 +0300 |
---|---|---|
committer | Joel Stanley <joel@jms.id.au> | 2022-09-28 14:40:57 +0300 |
commit | 89a286fb153643b9b0f6e78160857f86eef16ba5 (patch) | |
tree | d25cf737dd01c2d14350fca8b5a5f2af94386bb8 /drivers/hwmon/occ/common.c | |
parent | 0fead4fc926f000d2daee938f0d4886ac8da11d0 (diff) | |
download | linux-89a286fb153643b9b0f6e78160857f86eef16ba5.tar.xz |
hwmon: (occ) Check for device property for setting OCC active during probe
A previous commit changed the existing behavior of the driver to skip
attempting to communicate with the OCC during probe. Return to the
previous default behavior of automatically communicating with the OCC
and make it optional with a new device-tree property.
Signed-off-by: Eddie James <eajames@linux.ibm.com>
Acked-by: Guenter Roeck <linux@roeck-us.net>
Link: https://lore.kernel.org/r/20220809200701.218059-4-eajames@linux.ibm.com
Signed-off-by: Joel Stanley <joel@jms.id.au>
Diffstat (limited to 'drivers/hwmon/occ/common.c')
-rw-r--r-- | drivers/hwmon/occ/common.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/drivers/hwmon/occ/common.c b/drivers/hwmon/occ/common.c index 45407b12db4b..dd690f700d49 100644 --- a/drivers/hwmon/occ/common.c +++ b/drivers/hwmon/occ/common.c @@ -10,6 +10,7 @@ #include <linux/math64.h> #include <linux/module.h> #include <linux/mutex.h> +#include <linux/property.h> #include <linux/sysfs.h> #include <asm/unaligned.h> @@ -1216,8 +1217,16 @@ int occ_setup(struct occ *occ) occ->groups[0] = &occ->group; rc = occ_setup_sysfs(occ); - if (rc) + if (rc) { dev_err(occ->bus_dev, "failed to setup sysfs: %d\n", rc); + return rc; + } + + if (!device_property_read_bool(occ->bus_dev, "ibm,no-poll-on-init")) { + rc = occ_active(occ, true); + if (rc) + occ_shutdown_sysfs(occ); + } return rc; } |