From: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Date: Wed, 30 Jul 2014 15:50:30 +0000 (+0300)
Subject: spi: topcliff-pch: don't hardcode PCI slot to get DMA device
X-Git-Tag: firefly_0821_release~176^2~3482^2^4
X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=a9082105b3ae682373e9aec2f2d87798f50e2a4f;p=firefly-linux-kernel-4.4.55.git

spi: topcliff-pch: don't hardcode PCI slot to get DMA device

The DMA is a function 0 of the multifunction device where SPI host is attached.
Thus, we may avoid to hardcode PCI slot number.

Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
---

diff --git a/drivers/spi/spi-topcliff-pch.c b/drivers/spi/spi-topcliff-pch.c
index af51d6a71cc8..0a87ec39f619 100644
--- a/drivers/spi/spi-topcliff-pch.c
+++ b/drivers/spi/spi-topcliff-pch.c
@@ -874,8 +874,8 @@ static void pch_spi_request_dma(struct pch_spi_data *data, int bpw)
 	dma_cap_set(DMA_SLAVE, mask);
 
 	/* Get DMA's dev information */
-	dma_dev = pci_get_bus_and_slot(data->board_dat->pdev->bus->number,
-				       PCI_DEVFN(12, 0));
+	dma_dev = pci_get_slot(data->board_dat->pdev->bus,
+			PCI_DEVFN(PCI_SLOT(data->board_dat->pdev->devfn), 0));
 
 	/* Set Tx DMA */
 	param = &dma->param_tx;