From: Brian Harring <ferringb@gmail.com>
Date: Mon, 18 Oct 2010 23:21:06 +0000 (+0200)
Subject: mfd: Add devices platform data when the cell data size is not 0
X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=a28dbea0ad3bd8144f3348eb5c20fabc2f12b4b5;p=GitHub%2Fexynos8895%2Fandroid_kernel_samsung_universal8895.git

mfd: Add devices platform data when the cell data size is not 0

When the cell data_size is 0, the resulting platform_data pointer will be
set to ZERO_SIZE_PTR. That could be misleading for device drivers running
a NULL check on thei platform_data pointer before dereferencing it.

Signed-off-by: Brian Harring <ferringb@gmail.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
---

diff --git a/drivers/mfd/mfd-core.c b/drivers/mfd/mfd-core.c
index d1c8605d4ed4..ec99f681e773 100644
--- a/drivers/mfd/mfd-core.c
+++ b/drivers/mfd/mfd-core.c
@@ -38,10 +38,12 @@ static int mfd_add_device(struct device *parent, int id,
 	pdev->dev.parent = parent;
 	platform_set_drvdata(pdev, cell->driver_data);
 
-	ret = platform_device_add_data(pdev,
-			cell->platform_data, cell->data_size);
-	if (ret)
-		goto fail_res;
+	if (cell->data_size) {
+		ret = platform_device_add_data(pdev,
+					cell->platform_data, cell->data_size);
+		if (ret)
+			goto fail_res;
+	}
 
 	for (r = 0; r < cell->num_resources; r++) {
 		res[r].name = cell->resources[r].name;