|
@@ -78,6 +78,7 @@ static int __isl29003_read_reg(struct i2c_client *client,
|
|
|
u32 reg, u8 mask, u8 shift)
|
|
|
{
|
|
|
struct isl29003_data *data = i2c_get_clientdata(client);
|
|
|
+
|
|
|
return (data->reg_cache[reg] & mask) >> shift;
|
|
|
}
|
|
|
|
|
@@ -160,6 +161,7 @@ static int isl29003_get_power_state(struct i2c_client *client)
|
|
|
{
|
|
|
struct isl29003_data *data = i2c_get_clientdata(client);
|
|
|
u8 cmdreg = data->reg_cache[ISL29003_REG_COMMAND];
|
|
|
+
|
|
|
return ~cmdreg & ISL29003_ADC_PD;
|
|
|
}
|
|
|
|
|
@@ -196,6 +198,7 @@ static ssize_t isl29003_show_range(struct device *dev,
|
|
|
struct device_attribute *attr, char *buf)
|
|
|
{
|
|
|
struct i2c_client *client = to_i2c_client(dev);
|
|
|
+
|
|
|
return sprintf(buf, "%i\n", isl29003_get_range(client));
|
|
|
}
|
|
|
|
|
@@ -231,6 +234,7 @@ static ssize_t isl29003_show_resolution(struct device *dev,
|
|
|
char *buf)
|
|
|
{
|
|
|
struct i2c_client *client = to_i2c_client(dev);
|
|
|
+
|
|
|
return sprintf(buf, "%d\n", isl29003_get_resolution(client));
|
|
|
}
|
|
|
|
|
@@ -264,6 +268,7 @@ static ssize_t isl29003_show_mode(struct device *dev,
|
|
|
struct device_attribute *attr, char *buf)
|
|
|
{
|
|
|
struct i2c_client *client = to_i2c_client(dev);
|
|
|
+
|
|
|
return sprintf(buf, "%d\n", isl29003_get_mode(client));
|
|
|
}
|
|
|
|
|
@@ -298,6 +303,7 @@ static ssize_t isl29003_show_power_state(struct device *dev,
|
|
|
char *buf)
|
|
|
{
|
|
|
struct i2c_client *client = to_i2c_client(dev);
|
|
|
+
|
|
|
return sprintf(buf, "%d\n", isl29003_get_power_state(client));
|
|
|
}
|
|
|
|
|
@@ -361,6 +367,7 @@ static int isl29003_init_client(struct i2c_client *client)
|
|
|
* if one of the reads fails, we consider the init failed */
|
|
|
for (i = 0; i < ARRAY_SIZE(data->reg_cache); i++) {
|
|
|
int v = i2c_smbus_read_byte_data(client, i);
|
|
|
+
|
|
|
if (v < 0)
|
|
|
return -ENODEV;
|
|
|
|