Skip to content

Commit

Permalink
Merge tag 'mfd-fixes-3.14-1' of git://git.linaro.org/people/lee.jones…
Browse files Browse the repository at this point in the history
…/mfd

Pull MFD fixes from Lee Jones:
 "Couple of small issues solved:
   - Suspend/Resume call-backs require CONFIG_PM_SLEEP
   - Some drivers written for 32bit architectures fail when compiled
     with a 64bit compiler.  The fixes will future proof the drivers"

* tag 'mfd-fixes-3.14-1' of git://git.linaro.org/people/lee.jones/mfd:
  mfd: sec-core: sec_pmic_{suspend,resume}() should depend on CONFIG_PM_SLEEP
  mfd: max14577: max14577_{suspend,resume}() should depend on CONFIG_PM_SLEEP
  mfd: tps65217: Naturalise cross-architecture discrepancies
  mfd: wm8994-core: Naturalise cross-architecture discrepancies
  mfd: max8998: Naturalise cross-architecture discrepancies
  mfd: max8997: Naturalise cross-architecture discrepancies
  • Loading branch information
Linus Torvalds committed Feb 19, 2014
2 parents 960dfc4 + 8321bbf commit 981adac
Show file tree
Hide file tree
Showing 9 changed files with 17 additions and 13 deletions.
2 changes: 2 additions & 0 deletions drivers/mfd/max14577.c
Original file line number Diff line number Diff line change
Expand Up @@ -173,6 +173,7 @@ static const struct i2c_device_id max14577_i2c_id[] = {
};
MODULE_DEVICE_TABLE(i2c, max14577_i2c_id);

#ifdef CONFIG_PM_SLEEP
static int max14577_suspend(struct device *dev)
{
struct i2c_client *i2c = container_of(dev, struct i2c_client, dev);
Expand Down Expand Up @@ -208,6 +209,7 @@ static int max14577_resume(struct device *dev)

return 0;
}
#endif /* CONFIG_PM_SLEEP */

static struct of_device_id max14577_dt_match[] = {
{ .compatible = "maxim,max14577", },
Expand Down
6 changes: 3 additions & 3 deletions drivers/mfd/max8997.c
Original file line number Diff line number Diff line change
Expand Up @@ -164,15 +164,15 @@ static struct max8997_platform_data *max8997_i2c_parse_dt_pdata(
return pd;
}

static inline int max8997_i2c_get_driver_data(struct i2c_client *i2c,
static inline unsigned long max8997_i2c_get_driver_data(struct i2c_client *i2c,
const struct i2c_device_id *id)
{
if (IS_ENABLED(CONFIG_OF) && i2c->dev.of_node) {
const struct of_device_id *match;
match = of_match_node(max8997_pmic_dt_match, i2c->dev.of_node);
return (int)match->data;
return (unsigned long)match->data;
}
return (int)id->driver_data;
return id->driver_data;
}

static int max8997_i2c_probe(struct i2c_client *i2c,
Expand Down
6 changes: 3 additions & 3 deletions drivers/mfd/max8998.c
Original file line number Diff line number Diff line change
Expand Up @@ -169,16 +169,16 @@ static struct max8998_platform_data *max8998_i2c_parse_dt_pdata(
return pd;
}

static inline int max8998_i2c_get_driver_data(struct i2c_client *i2c,
static inline unsigned long max8998_i2c_get_driver_data(struct i2c_client *i2c,
const struct i2c_device_id *id)
{
if (IS_ENABLED(CONFIG_OF) && i2c->dev.of_node) {
const struct of_device_id *match;
match = of_match_node(max8998_dt_match, i2c->dev.of_node);
return (int)(long)match->data;
return (unsigned long)match->data;
}

return (int)id->driver_data;
return id->driver_data;
}

static int max8998_i2c_probe(struct i2c_client *i2c,
Expand Down
2 changes: 2 additions & 0 deletions drivers/mfd/sec-core.c
Original file line number Diff line number Diff line change
Expand Up @@ -315,6 +315,7 @@ static int sec_pmic_remove(struct i2c_client *i2c)
return 0;
}

#ifdef CONFIG_PM_SLEEP
static int sec_pmic_suspend(struct device *dev)
{
struct i2c_client *i2c = container_of(dev, struct i2c_client, dev);
Expand Down Expand Up @@ -349,6 +350,7 @@ static int sec_pmic_resume(struct device *dev)

return 0;
}
#endif /* CONFIG_PM_SLEEP */

static SIMPLE_DEV_PM_OPS(sec_pmic_pm_ops, sec_pmic_suspend, sec_pmic_resume);

Expand Down
4 changes: 2 additions & 2 deletions drivers/mfd/tps65217.c
Original file line number Diff line number Diff line change
Expand Up @@ -158,7 +158,7 @@ static int tps65217_probe(struct i2c_client *client,
{
struct tps65217 *tps;
unsigned int version;
unsigned int chip_id = ids->driver_data;
unsigned long chip_id = ids->driver_data;
const struct of_device_id *match;
bool status_off = false;
int ret;
Expand All @@ -170,7 +170,7 @@ static int tps65217_probe(struct i2c_client *client,
"Failed to find matching dt id\n");
return -EINVAL;
}
chip_id = (unsigned int)(unsigned long)match->data;
chip_id = (unsigned long)match->data;
status_off = of_property_read_bool(client->dev.of_node,
"ti,pmic-shutdown-controller");
}
Expand Down
2 changes: 1 addition & 1 deletion drivers/mfd/wm8994-core.c
Original file line number Diff line number Diff line change
Expand Up @@ -636,7 +636,7 @@ static int wm8994_i2c_probe(struct i2c_client *i2c,
if (i2c->dev.of_node) {
of_id = of_match_device(wm8994_of_match, &i2c->dev);
if (of_id)
wm8994->type = (int)of_id->data;
wm8994->type = (enum wm8994_type)of_id->data;
} else {
wm8994->type = id->driver_data;
}
Expand Down
2 changes: 1 addition & 1 deletion include/linux/mfd/max8997-private.h
Original file line number Diff line number Diff line change
Expand Up @@ -387,7 +387,7 @@ struct max8997_dev {
struct i2c_client *muic; /* slave addr 0x4a */
struct mutex iolock;

int type;
unsigned long type;
struct platform_device *battery; /* battery control (not fuel gauge) */

int irq;
Expand Down
2 changes: 1 addition & 1 deletion include/linux/mfd/max8998-private.h
Original file line number Diff line number Diff line change
Expand Up @@ -163,7 +163,7 @@ struct max8998_dev {
int ono;
u8 irq_masks_cur[MAX8998_NUM_IRQ_REGS];
u8 irq_masks_cache[MAX8998_NUM_IRQ_REGS];
int type;
unsigned long type;
bool wakeup;
};

Expand Down
4 changes: 2 additions & 2 deletions include/linux/mfd/tps65217.h
Original file line number Diff line number Diff line change
Expand Up @@ -252,7 +252,7 @@ struct tps65217_board {
struct tps65217 {
struct device *dev;
struct tps65217_board *pdata;
unsigned int id;
unsigned long id;
struct regulator_desc desc[TPS65217_NUM_REGULATOR];
struct regulator_dev *rdev[TPS65217_NUM_REGULATOR];
struct regmap *regmap;
Expand All @@ -263,7 +263,7 @@ static inline struct tps65217 *dev_to_tps65217(struct device *dev)
return dev_get_drvdata(dev);
}

static inline int tps65217_chip_id(struct tps65217 *tps65217)
static inline unsigned long tps65217_chip_id(struct tps65217 *tps65217)
{
return tps65217->id;
}
Expand Down

0 comments on commit 981adac

Please sign in to comment.