Messages in this thread Patch in this message | | | From | Haojian Zhuang <> | Subject | [PATCH 11/13] power_supply: max8925: use platform_data from cell | Date | Wed, 13 Apr 2011 22:51:02 +0800 |
| |
Avoid to get platform_data from parent device. Get it from mfd cell device instead.
Signed-off-by: Haojian Zhuang <haojian.zhuang@marvell.com> Cc: Anton Vorontsov <cbou@mail.ru> Cc: David Woodhouse <dwmw2@infradead.org> --- drivers/power/max8925_power.c | 16 +++++----------- 1 files changed, 5 insertions(+), 11 deletions(-)
diff --git a/drivers/power/max8925_power.c b/drivers/power/max8925_power.c index 8e5aec2..359c53c 100644 --- a/drivers/power/max8925_power.c +++ b/drivers/power/max8925_power.c @@ -425,21 +425,16 @@ static __devexit int max8925_deinit_charger(struct max8925_power_info *info) static __devinit int max8925_power_probe(struct platform_device *pdev) { struct max8925_chip *chip = dev_get_drvdata(pdev->dev.parent); - struct max8925_platform_data *max8925_pdata; struct max8925_power_pdata *pdata = NULL; struct max8925_power_info *info; - int ret; - - if (pdev->dev.parent->platform_data) { - max8925_pdata = pdev->dev.parent->platform_data; - pdata = max8925_pdata->power; - } + int ret = -EINVAL; - if (!pdata) { + pdata = pdev->dev.platform_data; + if (pdata == NULL) { dev_err(&pdev->dev, "platform data isn't assigned to " "power supply\n"); return -EINVAL; - } + }; info = kzalloc(sizeof(struct max8925_power_info), GFP_KERNEL); if (!info) @@ -447,6 +442,7 @@ static __devinit int max8925_power_probe(struct platform_device *pdev) info->chip = chip; info->gpm = chip->i2c; info->adc = chip->adc; + dev_set_drvdata(&pdev->dev, info); info->ac.name = "max8925-ac"; info->ac.type = POWER_SUPPLY_TYPE_MAINS; @@ -482,8 +478,6 @@ static __devinit int max8925_power_probe(struct platform_device *pdev) info->topoff_threshold = pdata->topoff_threshold; info->fast_charge = pdata->fast_charge; info->set_charger = pdata->set_charger; - dev_set_drvdata(&pdev->dev, info); - platform_set_drvdata(pdev, info); max8925_init_charger(chip, info); return 0; -- 1.5.6.5
| |