diff options
author | Andy Shevchenko <andriy.shevchenko@linux.intel.com> | 2014-09-12 08:12:00 -0400 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2014-09-13 12:01:57 -0400 |
commit | b89e9c87dd3b118f0b953d349e5bede1505e3bc5 (patch) | |
tree | 05c8929d83e4218de5b54bf28cce60f39b2eba10 | |
parent | ea092455d713d28c0b74a2ebe022524025d97491 (diff) |
spi: dw-mid: remove redundant dmac member
Instead of using that member we prefer to use dma_dev which represents actual
struct device of the DMA device.
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
-rw-r--r-- | drivers/spi/spi-dw-mid.c | 12 | ||||
-rw-r--r-- | drivers/spi/spi-dw.h | 1 |
2 files changed, 8 insertions, 5 deletions
diff --git a/drivers/spi/spi-dw-mid.c b/drivers/spi/spi-dw-mid.c index deba3c459d68..9ae2eaa228fd 100644 --- a/drivers/spi/spi-dw-mid.c +++ b/drivers/spi/spi-dw-mid.c | |||
@@ -39,12 +39,13 @@ static bool mid_spi_dma_chan_filter(struct dma_chan *chan, void *param) | |||
39 | { | 39 | { |
40 | struct dw_spi *dws = param; | 40 | struct dw_spi *dws = param; |
41 | 41 | ||
42 | return dws->dmac && (&dws->dmac->dev == chan->device->dev); | 42 | return dws->dma_dev == chan->device->dev; |
43 | } | 43 | } |
44 | 44 | ||
45 | static int mid_spi_dma_init(struct dw_spi *dws) | 45 | static int mid_spi_dma_init(struct dw_spi *dws) |
46 | { | 46 | { |
47 | struct mid_dma *dw_dma = dws->dma_priv; | 47 | struct mid_dma *dw_dma = dws->dma_priv; |
48 | struct pci_dev *dma_dev; | ||
48 | struct intel_mid_dma_slave *rxs, *txs; | 49 | struct intel_mid_dma_slave *rxs, *txs; |
49 | dma_cap_mask_t mask; | 50 | dma_cap_mask_t mask; |
50 | 51 | ||
@@ -52,7 +53,11 @@ static int mid_spi_dma_init(struct dw_spi *dws) | |||
52 | * Get pci device for DMA controller, currently it could only | 53 | * Get pci device for DMA controller, currently it could only |
53 | * be the DMA controller of Medfield | 54 | * be the DMA controller of Medfield |
54 | */ | 55 | */ |
55 | dws->dmac = pci_get_device(PCI_VENDOR_ID_INTEL, 0x0827, NULL); | 56 | dma_dev = pci_get_device(PCI_VENDOR_ID_INTEL, 0x0827, NULL); |
57 | if (!dma_dev) | ||
58 | return -ENODEV; | ||
59 | |||
60 | dws->dma_dev = &dma_dev->dev; | ||
56 | 61 | ||
57 | dma_cap_zero(mask); | 62 | dma_cap_zero(mask); |
58 | dma_cap_set(DMA_SLAVE, mask); | 63 | dma_cap_set(DMA_SLAVE, mask); |
@@ -81,8 +86,7 @@ static int mid_spi_dma_init(struct dw_spi *dws) | |||
81 | free_rxchan: | 86 | free_rxchan: |
82 | dma_release_channel(dws->rxchan); | 87 | dma_release_channel(dws->rxchan); |
83 | err_exit: | 88 | err_exit: |
84 | return -1; | 89 | return -EBUSY; |
85 | |||
86 | } | 90 | } |
87 | 91 | ||
88 | static void mid_spi_dma_exit(struct dw_spi *dws) | 92 | static void mid_spi_dma_exit(struct dw_spi *dws) |
diff --git a/drivers/spi/spi-dw.h b/drivers/spi/spi-dw.h index fcd12b6b4697..089fc4ba3ace 100644 --- a/drivers/spi/spi-dw.h +++ b/drivers/spi/spi-dw.h | |||
@@ -140,7 +140,6 @@ struct dw_spi { | |||
140 | dma_addr_t dma_addr; /* phy address of the Data register */ | 140 | dma_addr_t dma_addr; /* phy address of the Data register */ |
141 | struct dw_spi_dma_ops *dma_ops; | 141 | struct dw_spi_dma_ops *dma_ops; |
142 | void *dma_priv; /* platform relate info */ | 142 | void *dma_priv; /* platform relate info */ |
143 | struct pci_dev *dmac; | ||
144 | 143 | ||
145 | /* Bus interface info */ | 144 | /* Bus interface info */ |
146 | void *priv; | 145 | void *priv; |