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>
This commit is contained in:
Родитель
11c39c4bde
Коммит
a28dbea0ad
|
@ -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;
|
||||
|
|
Загрузка…
Ссылка в новой задаче