diff options
author | Uwe Kleine-König <u.kleine-koenig@pengutronix.de> | 2011-04-20 09:44:42 +0200 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2011-04-23 02:09:11 +0200 |
commit | 27a33f9e8fb203e71925257cf039fe6ec623c5d1 (patch) | |
tree | 4aa52696ba58a294c854ddc61422d6c47a1963d6 /drivers/base | |
parent | drivers/base/core.c: Fixed brace coding style issue. (diff) | |
download | linux-27a33f9e8fb203e71925257cf039fe6ec623c5d1.tar.xz linux-27a33f9e8fb203e71925257cf039fe6ec623c5d1.zip |
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>
Diffstat (limited to 'drivers/base')
-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 9e0e4fc24c46..65cb4c397603 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); |