diff options
author | Uwe Kleine-König <u.kleine-koenig@pengutronix.de> | 2011-04-20 07:44:42 (GMT) |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2011-04-23 00:09:11 (GMT) |
commit | 27a33f9e8fb203e71925257cf039fe6ec623c5d1 (patch) | |
tree | 4aa52696ba58a294c854ddc61422d6c47a1963d6 | |
parent | 7f100d1566d6ee353a43be92599511fc438ec281 (diff) | |
download | linux-27a33f9e8fb203e71925257cf039fe6ec623c5d1.tar.xz |
driver core/platform_device_add_data: set platform_data to NULL if !data
This makes the data = NULL case more consistent to the data != NULL case.
The functional change is that now
platform_device_add_data(somepdev, NULL, somesize)
sets pdev->dev.platform_data to NULL instead of not touching it.
Reviewed-by: Viresh Kumar <viresh.kumar@st.com>
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-rw-r--r-- | drivers/base/platform.c | 17 |
1 files changed, 8 insertions, 9 deletions
diff --git a/drivers/base/platform.c b/drivers/base/platform.c index 9e0e4fc..65cb4c3 100644 --- a/drivers/base/platform.c +++ b/drivers/base/platform.c @@ -220,17 +220,16 @@ EXPORT_SYMBOL_GPL(platform_device_add_resources); int platform_device_add_data(struct platform_device *pdev, const void *data, size_t size) { - void *d; + void *d = NULL; - if (!data) - return 0; - - d = kmemdup(data, size, GFP_KERNEL); - if (d) { - pdev->dev.platform_data = d; - return 0; + if (data) { + d = kmemdup(data, size, GFP_KERNEL); + if (!d) + return -ENOMEM; } - return -ENOMEM; + + pdev->dev.platform_data = d; + return 0; } EXPORT_SYMBOL_GPL(platform_device_add_data); |