regulator: pfuze100: REGULATOR_PFUZE100 needs to select REGMAP_I2C
PATCH 1/2 regulator: pfuze100: REGULATOR_PFUZE100 needs to select REGMAP_I2C
This fixes below build errors:
CC [M] drivers/regulator/pfuze100-regulator.odrivers/regulator/pfuze100-regulator.c:342:21: error: variable 'pfuze_regmap_config' has initializer but incomplete type drivers/regulator/pfuze100-regulator.c:343:2: error: unknown field 'reg_bits' specified in initializer drivers/regulator/pfuze100-regulator.c:343:2: warning: excess elements in struct initializer [enabled by default] drivers/regulator/pfuze100-regulator.c:343:2: warning: (near initialization for 'pfuze_regmap_config') [enabled by default] drivers/regulator/pfuze100-regulator.c:344:2: error: unknown field 'val_bits' specified in initializer drivers/regulator/pfuze100-regulator.c:344:2: warning: excess elements in struct initializer [enabled by default] drivers/regulator/pfuze100-regulator.c:344:2: warning: (near initialization for 'pfuze_regmap_config') [enabled by default] drivers/regulator/pfuze100-regulator.c:345:2: error: unknown field 'max_register' specified in initializer drivers/regulator/pfuze100-regulator.c:345:2: warning: excess elements in struct initializer [enabled by default] drivers/regulator/pfuze100-regulator.c:345:2: warning: (near initialization for 'pfuze_regmap_config') [enabled by default] drivers/regulator/pfuze100-regulator.c:346:2: error: unknown field 'cache_type' specified in initializer drivers/regulator/pfuze100-regulator.c:346:2: warning: excess elements in struct initializer [enabled by default] drivers/regulator/pfuze100-regulator.c:346:2: warning: (near initialization for 'pfuze_regmap_config') [enabled by default] drivers/regulator/pfuze100-regulator.c: In function 'pfuze100_regulator_probe':drivers/regulator/pfuze100-regulator.c:370:2: error: implicit declaration of function 'devm_regmap_init_i2c' [-Werror=implicit-function-declaration] drivers/regulator/pfuze100-regulator.c:370:21: warning: assignment makes pointer from integer without a cast [enabled by default]
cc1: some warnings being treated as errors
make[2]: *** [drivers/regulator/pfuze100-regulator.o] Error 1
make[1]: *** [drivers/regulator] Error 2
make: *** [drivers] Error 2
--- drivers/regulator/Kconfig | 1 + 1 file changed, 1 insertion(+)
drivers/regulator/Kconfig +1 -0
@@ -368,6 +368,7 @@ config REGULATOR_PCF50633 config REGULATOR_PFUZE100 tristate "Support regulators on Freescale PFUZE100 PMIC" depends on I2C + select REGMAP_I2C help Say y here to support the regulators found on the Freescale PFUZE100 PMIC.
Signature · 1 line
1.8.1.2
PATCH 2/2 regulator: pfuze100: Use i2c_[set|get]_clientdata
Since this is a i2c driver, use i2c_[set|get]_clientdata instead of dev_[set|get]_drvdata.
--- drivers/regulator/pfuze100-regulator.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
drivers/regulator/pfuze100-regulator.c +2 -2
@@ -360,7 +360,7 @@ static int pfuze100_regulator_probe(struct i2c_client *client,if (!pfuze_chip)return -ENOMEM ; -dev_set_drvdata (&client->dev, pfuze_chip); +i2c_set_clientdata (client, pfuze_chip);memcpy (pfuze_chip->regulator_descs, pfuze100_regulators,sizeof (pfuze_chip->regulator_descs));
@@ -429,7 +429,7 @@ static int pfuze100_regulator_probe(struct i2c_client *client,static int pfuze100_regulator_remove (struct i2c_client *client) {int i; -struct pfuze_chip *pfuze_chip =dev_get_drvdata (&client->dev); +struct pfuze_chip *pfuze_chip =i2c_get_clientdata (client);for (i =0 ; i <PFUZE100_MAX_REGULATOR ; i++)regulator_unregister (pfuze_chip->regulators[i]);
Signature · 1 line
1.8.1.2
Quoted 1 line · Axel Lin
This fixes below build errors:
Applied, thanks.