]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/blobdiff - drivers/spi/spi-imx.c
spi: imx: Don't require platform data chipselect array
[mirror_ubuntu-bionic-kernel.git] / drivers / spi / spi-imx.c
index fdbbdac66839eafc3b3165c413f9a3afc7a8c416..79ddefe4180d6ccd643afd36e003af8997a8fa39 100644 (file)
@@ -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;