|
@@ -1526,13 +1526,15 @@ static int spi_imx_probe(struct platform_device *pdev)
|
|
|
/* Get number of chip selects, either platform data or OF */
|
|
|
if (mxc_platform_info) {
|
|
|
master->num_chipselect = mxc_platform_info->num_chipselect;
|
|
|
- master->cs_gpios = devm_kzalloc(&master->dev,
|
|
|
- sizeof(int) * master->num_chipselect, GFP_KERNEL);
|
|
|
- if (!master->cs_gpios)
|
|
|
- return -ENOMEM;
|
|
|
-
|
|
|
- for (i = 0; i < master->num_chipselect; i++)
|
|
|
- master->cs_gpios[i] = mxc_platform_info->chipselect[i];
|
|
|
+ if (mxc_platform_info->chipselect) {
|
|
|
+ master->cs_gpios = devm_kzalloc(&master->dev,
|
|
|
+ sizeof(int) * master->num_chipselect, GFP_KERNEL);
|
|
|
+ if (!master->cs_gpios)
|
|
|
+ return -ENOMEM;
|
|
|
+
|
|
|
+ for (i = 0; i < master->num_chipselect; i++)
|
|
|
+ master->cs_gpios[i] = mxc_platform_info->chipselect[i];
|
|
|
+ }
|
|
|
} else {
|
|
|
u32 num_cs;
|
|
|
|