diff --git a/[refs] b/[refs] index 17546fba618c..5f211c8af625 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 1502cfe19bac2f8490e4167f2b7cb50b9759b273 +refs/heads/master: a22b41a31e5382792151f193d185a3cd39593cfd diff --git a/trunk/drivers/power/sbs-battery.c b/trunk/drivers/power/sbs-battery.c index a65e8f54157e..4146596d254b 100644 --- a/trunk/drivers/power/sbs-battery.c +++ b/trunk/drivers/power/sbs-battery.c @@ -759,6 +759,16 @@ static int __devinit sbs_probe(struct i2c_client *client, chip->irq = irq; skip_gpio: + /* + * Before we register, we need to make sure we can actually talk + * to the battery. + */ + rc = sbs_read_word_data(client, sbs_data[REG_STATUS].addr); + if (rc < 0) { + dev_err(&client->dev, "%s: Failed to get device status\n", + __func__); + goto exit_psupply; + } rc = power_supply_register(&client->dev, &chip->power_supply); if (rc) {