diff options
Diffstat (limited to 'kernel/drivers/mfd/twl6040.c')
-rw-r--r-- | kernel/drivers/mfd/twl6040.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/kernel/drivers/mfd/twl6040.c b/kernel/drivers/mfd/twl6040.c index c5265c126..08a693cd3 100644 --- a/kernel/drivers/mfd/twl6040.c +++ b/kernel/drivers/mfd/twl6040.c @@ -86,7 +86,7 @@ static const struct reg_default twl6040_defaults[] = { { 0x2E, 0x00 }, /* REG_STATUS (ro) */ }; -static struct reg_default twl6040_patch[] = { +static struct reg_sequence twl6040_patch[] = { /* * Select I2C bus access to dual access registers * Interrupt register is cleared on read @@ -647,6 +647,8 @@ static int twl6040_probe(struct i2c_client *client, twl6040->clk32k = devm_clk_get(&client->dev, "clk32k"); if (IS_ERR(twl6040->clk32k)) { + if (PTR_ERR(twl6040->clk32k) == -EPROBE_DEFER) + return -EPROBE_DEFER; dev_info(&client->dev, "clk32k is not handled\n"); twl6040->clk32k = NULL; } @@ -801,7 +803,6 @@ MODULE_DEVICE_TABLE(i2c, twl6040_i2c_id); static struct i2c_driver twl6040_driver = { .driver = { .name = "twl6040", - .owner = THIS_MODULE, }, .probe = twl6040_probe, .remove = twl6040_remove, |