Merge tag 'mfd-lee-3.13-1' of git://git.linaro.org/people/ljones/mfd
authorSamuel Ortiz <sameo@linux.intel.com>
Fri, 25 Oct 2013 09:03:48 +0000 (11:03 +0200)
committerSamuel Ortiz <sameo@linux.intel.com>
Fri, 25 Oct 2013 09:03:48 +0000 (11:03 +0200)
mfd-lee-3.13-1

MFD patches due for v3.13.

1  2 
drivers/mfd/tps65910.c
drivers/mfd/twl6040.c

diff --combined drivers/mfd/tps65910.c
index 78ffe6e53eb802868738d0a909669ec45b32d5c7,72f2e789ab83bc49456768456df03cada8bf9c5c..c0f608e3ca9e5fc1fc0706666b8fcc4f89778567
@@@ -25,6 -25,7 +25,7 @@@
  #include <linux/mfd/core.h>
  #include <linux/regmap.h>
  #include <linux/mfd/tps65910.h>
+ #include <linux/of.h>
  #include <linux/of_device.h>
  
  static struct resource rtc_resources[] = {
@@@ -410,10 -411,14 +411,10 @@@ static struct tps65910_board *tps65910_
        ret = of_property_read_u32(np, "ti,vmbch-threshold", &prop);
        if (!ret)
                board_info->vmbch_threshold = prop;
 -      else if (*chip_id == TPS65911)
 -              dev_warn(&client->dev, "VMBCH-Threshold not specified");
  
        ret = of_property_read_u32(np, "ti,vmbch2-threshold", &prop);
        if (!ret)
                board_info->vmbch2_threshold = prop;
 -      else if (*chip_id == TPS65911)
 -              dev_warn(&client->dev, "VMBCH2-Threshold not specified");
  
        prop = of_property_read_bool(np, "ti,en-ck32k-xtal");
        board_info->en_ck32k_xtal = prop;
diff --combined drivers/mfd/twl6040.c
index 9d948af420db71ab7a8eb0406d807b40df2ae2f7,7361dbe96be8955e6bceba2a88e58e02274fe245..0779d5ab9ab1538631981aff4994743a5b96b008
@@@ -565,13 -565,13 +565,13 @@@ static int twl6040_probe(struct i2c_cli
                                      twl6040->supplies);
        if (ret != 0) {
                dev_err(&client->dev, "Failed to get supplies: %d\n", ret);
 -              goto regulator_get_err;
 +              return ret;
        }
  
        ret = regulator_bulk_enable(TWL6040_NUM_SUPPLIES, twl6040->supplies);
        if (ret != 0) {
                dev_err(&client->dev, "Failed to enable supplies: %d\n", ret);
 -              goto regulator_get_err;
 +              return ret;
        }
  
        twl6040->dev = &client->dev;
                                        "twl6040_irq_th", twl6040);
        if (ret) {
                dev_err(twl6040->dev, "Thermal IRQ request failed: %d\n", ret);
-               goto thirq_err;
+               goto readyirq_err;
        }
  
        /* dual-access registers controlled by I2C only */
        ret = mfd_add_devices(&client->dev, -1, twl6040->cells, children,
                              NULL, 0, NULL);
        if (ret)
-               goto mfd_err;
+               goto readyirq_err;
  
        return 0;
  
- mfd_err:
-       devm_free_irq(&client->dev, twl6040->irq_th, twl6040);
- thirq_err:
-       devm_free_irq(&client->dev, twl6040->irq_ready, twl6040);
  readyirq_err:
        regmap_del_irq_chip(twl6040->irq, twl6040->irq_data);
  gpio_err:
        regulator_bulk_disable(TWL6040_NUM_SUPPLIES, twl6040->supplies);
 -regulator_get_err:
 -      i2c_set_clientdata(client, NULL);
 -
        return ret;
  }
  
@@@ -681,11 -680,10 +677,9 @@@ static int twl6040_remove(struct i2c_cl
        if (twl6040->power_count)
                twl6040_power(twl6040, 0);
  
-       devm_free_irq(&client->dev, twl6040->irq_ready, twl6040);
-       devm_free_irq(&client->dev, twl6040->irq_th, twl6040);
        regmap_del_irq_chip(twl6040->irq, twl6040->irq_data);
  
        mfd_remove_devices(&client->dev);
 -      i2c_set_clientdata(client, NULL);
  
        regulator_bulk_disable(TWL6040_NUM_SUPPLIES, twl6040->supplies);