diff options
author | Dave Airlie <airlied@redhat.com> | 2024-12-02 11:53:34 +1000 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2024-12-02 11:53:34 +1000 |
commit | 9ee603b619a6fcc030b46012a900b67e0041b90d (patch) | |
tree | 00bf3ba8d87c6720ba1f7de62ce6ef4dd0c5c371 /drivers/misc/apds990x.c | |
parent | 25961511c559ed13db76df3ae5ee0b7f43d209e8 (diff) | |
parent | 40384c840ea1944d7c5a392e8975ed088ecf0b37 (diff) |
Merge remote-tracking branch 'drm/drm-next' into drm-tip
Diffstat (limited to 'drivers/misc/apds990x.c')
-rw-r--r-- | drivers/misc/apds990x.c | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/drivers/misc/apds990x.c b/drivers/misc/apds990x.c index 6d4edd69db12..e7d73c972f65 100644 --- a/drivers/misc/apds990x.c +++ b/drivers/misc/apds990x.c @@ -1147,7 +1147,7 @@ static int apds990x_probe(struct i2c_client *client) err = chip->pdata->setup_resources(); if (err) { err = -EINVAL; - goto fail3; + goto fail4; } } @@ -1155,7 +1155,7 @@ static int apds990x_probe(struct i2c_client *client) apds990x_attribute_group); if (err < 0) { dev_err(&chip->client->dev, "Sysfs registration failed\n"); - goto fail4; + goto fail5; } err = request_threaded_irq(client->irq, NULL, @@ -1166,15 +1166,17 @@ static int apds990x_probe(struct i2c_client *client) if (err) { dev_err(&client->dev, "could not get IRQ %d\n", client->irq); - goto fail5; + goto fail6; } return err; -fail5: +fail6: sysfs_remove_group(&chip->client->dev.kobj, &apds990x_attribute_group[0]); -fail4: +fail5: if (chip->pdata && chip->pdata->release_resources) chip->pdata->release_resources(); +fail4: + pm_runtime_disable(&client->dev); fail3: regulator_bulk_disable(ARRAY_SIZE(chip->regs), chip->regs); fail2: |