diff options
Diffstat (limited to 'drivers/leds/leds-lp5521.c')
-rw-r--r-- | drivers/leds/leds-lp5521.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/drivers/leds/leds-lp5521.c b/drivers/leds/leds-lp5521.c index 8505afe4b52e..ddc431529157 100644 --- a/drivers/leds/leds-lp5521.c +++ b/drivers/leds/leds-lp5521.c | |||
@@ -788,10 +788,17 @@ static int __devinit lp5521_probe(struct i2c_client *client, | |||
788 | * LP5521_REG_ENABLE register will not have any effect - strange! | 788 | * LP5521_REG_ENABLE register will not have any effect - strange! |
789 | */ | 789 | */ |
790 | ret = lp5521_read(client, LP5521_REG_R_CURRENT, &buf); | 790 | ret = lp5521_read(client, LP5521_REG_R_CURRENT, &buf); |
791 | if (ret || buf != LP5521_REG_R_CURR_DEFAULT) { | 791 | if (ret) { |
792 | dev_err(&client->dev, "error in resetting chip\n"); | 792 | dev_err(&client->dev, "error in resetting chip\n"); |
793 | goto fail2; | 793 | goto fail2; |
794 | } | 794 | } |
795 | if (buf != LP5521_REG_R_CURR_DEFAULT) { | ||
796 | dev_err(&client->dev, | ||
797 | "unexpected data in register (expected 0x%x got 0x%x)\n", | ||
798 | LP5521_REG_R_CURR_DEFAULT, buf); | ||
799 | ret = -EINVAL; | ||
800 | goto fail2; | ||
801 | } | ||
795 | usleep_range(10000, 20000); | 802 | usleep_range(10000, 20000); |
796 | 803 | ||
797 | ret = lp5521_detect(client); | 804 | ret = lp5521_detect(client); |