From b42de34211d0e8b89c0b251dd6905e620f8b9d68 Mon Sep 17 00:00:00 2001 From: Par-Gunnar Hjalmdahl Date: Tue, 4 Oct 2011 10:32:36 +0200 Subject: cg2900: Use correct platform_data This patch fixes a bug in the CG2900 driver where platform data structure was overwritten during probe. ST-Ericsson ID: 364913 ST-Ericcson FOSS-OUT-ID: Trivial ST-Ericsson Linux next: 364913 Change-Id: Id6e6918814e01dbef0cd89eda0a034196a81454a Signed-off-by: Par-Gunnar Hjalmdahl Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/34065 Tested-by: Robert MARKLUND Reviewed-by: Philippe LANGLAIS --- drivers/staging/cg2900/bluetooth/btcg2900.c | 7 ++----- drivers/staging/cg2900/mfd/cg2900_char_devices.c | 5 +---- 2 files changed, 3 insertions(+), 9 deletions(-) diff --git a/drivers/staging/cg2900/bluetooth/btcg2900.c b/drivers/staging/cg2900/bluetooth/btcg2900.c index e1895c9ff70..ce1e5a4e3d5 100644 --- a/drivers/staging/cg2900/bluetooth/btcg2900.c +++ b/drivers/staging/cg2900/bluetooth/btcg2900.c @@ -913,14 +913,11 @@ static int probe_common(struct platform_device *pdev, dev_set_drvdata(dev, info); - pf_data = mfd_get_cell(pdev)->platform_data; + pf_data = dev_get_platdata(dev); pf_data->dev = dev; pf_data->read_cb = hci_read_cb; pf_data->reset_cb = hci_reset_cb; - /* Set platform data */ - dev->platform_data = pf_data; - /* Init and register hdev */ err = register_bluetooth(info); if (err) { @@ -1051,7 +1048,7 @@ static int remove_common(struct platform_device *pdev, struct cg2900_user_data *pf_data; struct dev_info *dev_info; - pf_data = mfd_get_cell(pdev)->platform_data; + pf_data = dev_get_platdata(&pdev->dev); dev_info = cg2900_get_usr(pf_data); kfree(dev_info); diff --git a/drivers/staging/cg2900/mfd/cg2900_char_devices.c b/drivers/staging/cg2900/mfd/cg2900_char_devices.c index 10f7d38d4a0..ae1659c4a5e 100644 --- a/drivers/staging/cg2900/mfd/cg2900_char_devices.c +++ b/drivers/staging/cg2900/mfd/cg2900_char_devices.c @@ -562,14 +562,11 @@ static int __devinit cg2900_char_probe(struct platform_device *pdev) dev_dbg(&pdev->dev, "cg2900_char_probe\n"); - user = mfd_get_cell(pdev)->platform_data; + user = dev_get_platdata(dev); user->dev = dev; user->read_cb = char_dev_read_cb; user->reset_cb = char_dev_reset_cb; - /* Set platform data */ - dev->platform_data = user; - dev_usr = kzalloc(sizeof(*dev_usr), GFP_KERNEL); if (!dev_usr) { dev_err(&pdev->dev, "Couldn't allocate dev_usr\n"); -- cgit v1.2.3