diff --git a/drivers/misc/cs40l2x.c b/drivers/misc/cs40l2x.c index 96140c0c08fd..21ba40369c0f 100644 --- a/drivers/misc/cs40l2x.c +++ b/drivers/misc/cs40l2x.c @@ -794,7 +794,7 @@ static ssize_t cs40l2x_comp_enable_show(struct device *dev, mutex_lock(&cs40l2x->lock); ret = regmap_read(cs40l2x->regmap, cs40l2x_dsp_reg(cs40l2x, "COMPENSATION_ENABLE", - CS40L2X_XM_UNPACKED_TYPE), &val); + CS40L2X_XM_UNPACKED_TYPE), &val); mutex_unlock(&cs40l2x->lock); if (ret) { @@ -820,7 +820,8 @@ static ssize_t cs40l2x_comp_enable_store(struct device *dev, mutex_lock(&cs40l2x->lock); ret = regmap_write(cs40l2x->regmap, cs40l2x_dsp_reg(cs40l2x, "COMPENSATION_ENABLE", - CS40L2X_XM_UNPACKED_TYPE), val); + CS40L2X_XM_UNPACKED_TYPE), + val ? CS40L2X_COMP_ENABLED : CS40L2X_COMP_DISABLED); mutex_unlock(&cs40l2x->lock); if (ret) { diff --git a/drivers/misc/cs40l2x.h b/drivers/misc/cs40l2x.h index c9373f839c8c..cff3c62af7a1 100644 --- a/drivers/misc/cs40l2x.h +++ b/drivers/misc/cs40l2x.h @@ -754,6 +754,9 @@ #define CS40L2X_GPIO1_ENABLED 1 #define CS40L2X_GPIO1_DISABLED 0 +#define CS40L2X_COMP_ENABLED 1 +#define CS40L2X_COMP_DISABLED 0 + bool cs40l2x_readable_reg(struct device *dev, unsigned int reg); bool cs40l2x_precious_reg(struct device *dev, unsigned int reg);