spi: cadence: Init HW after reading devicetree attributes
authorPaul Cercueil <paul.cercueil@analog.com>
Thu, 27 Nov 2014 15:12:17 +0000 (16:12 +0100)
committerMark Brown <broonie@kernel.org>
Fri, 28 Nov 2014 11:41:13 +0000 (11:41 +0000)
This will make it possible to use the settings specified in the devicetree
to configure the hardware.

Signed-off-by: Paul Cercueil <paul.cercueil@analog.com>
Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Reviewed-by: Michal Simek <michal.simek@xilinx.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
drivers/spi/spi-cadence.c

index 7b811e3..2404937 100644 (file)
@@ -516,6 +516,17 @@ static int cdns_spi_probe(struct platform_device *pdev)
                goto clk_dis_apb;
        }
 
+       ret = of_property_read_u32(pdev->dev.of_node, "num-cs", &num_cs);
+       if (ret < 0)
+               master->num_chipselect = CDNS_SPI_DEFAULT_NUM_CS;
+       else
+               master->num_chipselect = num_cs;
+
+       ret = of_property_read_u32(pdev->dev.of_node, "is-decoded-cs",
+                                  &xspi->is_decoded_cs);
+       if (ret < 0)
+               xspi->is_decoded_cs = 0;
+
        /* SPI controller initializations */
        cdns_spi_init_hw(xspi);
 
@@ -534,19 +545,6 @@ static int cdns_spi_probe(struct platform_device *pdev)
                goto remove_master;
        }
 
-       ret = of_property_read_u32(pdev->dev.of_node, "num-cs", &num_cs);
-
-       if (ret < 0)
-               master->num_chipselect = CDNS_SPI_DEFAULT_NUM_CS;
-       else
-               master->num_chipselect = num_cs;
-
-       ret = of_property_read_u32(pdev->dev.of_node, "is-decoded-cs",
-                                  &xspi->is_decoded_cs);
-
-       if (ret < 0)
-               xspi->is_decoded_cs = 0;
-
        master->prepare_transfer_hardware = cdns_prepare_transfer_hardware;
        master->prepare_message = cdns_prepare_message;
        master->transfer_one = cdns_transfer_one;