aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPaul Cercueil <paul.cercueil@analog.com>2014-11-27 10:12:17 -0500
committerMark Brown <broonie@kernel.org>2014-11-28 06:41:13 -0500
commit3cc291061ce542edff7a0f7127a654e9d05ee559 (patch)
tree4d400723dd00243be7c3af2d8f7ed14d9dd417db
parentf114040e3ea6e07372334ade75d1ee0775c355e1 (diff)
spi: cadence: Init HW after reading devicetree attributes
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>
-rw-r--r--drivers/spi/spi-cadence.c24
1 files changed, 11 insertions, 13 deletions
diff --git a/drivers/spi/spi-cadence.c b/drivers/spi/spi-cadence.c
index 7b811e38c7ad..240493706c36 100644
--- a/drivers/spi/spi-cadence.c
+++ b/drivers/spi/spi-cadence.c
@@ -516,6 +516,17 @@ static int cdns_spi_probe(struct platform_device *pdev)
516 goto clk_dis_apb; 516 goto clk_dis_apb;
517 } 517 }
518 518
519 ret = of_property_read_u32(pdev->dev.of_node, "num-cs", &num_cs);
520 if (ret < 0)
521 master->num_chipselect = CDNS_SPI_DEFAULT_NUM_CS;
522 else
523 master->num_chipselect = num_cs;
524
525 ret = of_property_read_u32(pdev->dev.of_node, "is-decoded-cs",
526 &xspi->is_decoded_cs);
527 if (ret < 0)
528 xspi->is_decoded_cs = 0;
529
519 /* SPI controller initializations */ 530 /* SPI controller initializations */
520 cdns_spi_init_hw(xspi); 531 cdns_spi_init_hw(xspi);
521 532
@@ -534,19 +545,6 @@ static int cdns_spi_probe(struct platform_device *pdev)
534 goto remove_master; 545 goto remove_master;
535 } 546 }
536 547
537 ret = of_property_read_u32(pdev->dev.of_node, "num-cs", &num_cs);
538
539 if (ret < 0)
540 master->num_chipselect = CDNS_SPI_DEFAULT_NUM_CS;
541 else
542 master->num_chipselect = num_cs;
543
544 ret = of_property_read_u32(pdev->dev.of_node, "is-decoded-cs",
545 &xspi->is_decoded_cs);
546
547 if (ret < 0)
548 xspi->is_decoded_cs = 0;
549
550 master->prepare_transfer_hardware = cdns_prepare_transfer_hardware; 548 master->prepare_transfer_hardware = cdns_prepare_transfer_hardware;
551 master->prepare_message = cdns_prepare_message; 549 master->prepare_message = cdns_prepare_message;
552 master->transfer_one = cdns_transfer_one; 550 master->transfer_one = cdns_transfer_one;