#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/platform_device.h>
#include <linux/regulator/driver.h>
#define ISL6271A_VOLTAGE_MIN 850000
#define ISL6271A_VOLTAGE_MAX 1600000
#define ISL6271A_VOLTAGE_STEP 50000
struct i2c_client *client;
static int isl6271a_get_voltage_sel(struct regulator_dev *dev)
struct isl_pmic *pmic = rdev_get_drvdata(dev);
idx = i2c_smbus_read_byte(pmic->client);
dev_err(&pmic->client->dev, "Error getting voltage\n");
mutex_unlock(&pmic->mtx);
static int isl6271a_set_voltage_sel(struct regulator_dev *dev,
struct isl_pmic *pmic = rdev_get_drvdata(dev);
err = i2c_smbus_write_byte(pmic->client, selector);
dev_err(&pmic->client->dev, "Error setting voltage\n");