mirror of
https://github.com/torvalds/linux.git
synced 2024-12-06 11:01:43 +00:00
brcmsmac: fix DMA on SoCs
These extra offsets are only needed by PCIe devices and not when
running on an SoC.
This partly reverts commit:
commit 821e4e9317
Author: Roland Vossen <rvossen@broadcom.com>
Date: Mon Aug 8 15:58:58 2011 +0200
staging: brcm80211: removed unused bus code from softmac
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Acked-by: Arend van Spriel <arend@broadcom.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
parent
093cd33497
commit
ec5ab1dd73
@ -573,6 +573,7 @@ struct dma_pub *dma_attach(char *name, struct si_pub *sih,
|
||||
struct dma_info *di;
|
||||
u8 rev = core->id.rev;
|
||||
uint size;
|
||||
struct si_info *sii = container_of(sih, struct si_info, pub);
|
||||
|
||||
/* allocate private info structure */
|
||||
di = kzalloc(sizeof(struct dma_info), GFP_ATOMIC);
|
||||
@ -633,11 +634,15 @@ struct dma_pub *dma_attach(char *name, struct si_pub *sih,
|
||||
*/
|
||||
di->ddoffsetlow = 0;
|
||||
di->dataoffsetlow = 0;
|
||||
/* add offset for pcie with DMA64 bus */
|
||||
di->ddoffsetlow = 0;
|
||||
di->ddoffsethigh = SI_PCIE_DMA_H32;
|
||||
/* for pci bus, add offset */
|
||||
if (sii->icbus->hosttype == BCMA_HOSTTYPE_PCI) {
|
||||
/* add offset for pcie with DMA64 bus */
|
||||
di->ddoffsetlow = 0;
|
||||
di->ddoffsethigh = SI_PCIE_DMA_H32;
|
||||
}
|
||||
di->dataoffsetlow = di->ddoffsetlow;
|
||||
di->dataoffsethigh = di->ddoffsethigh;
|
||||
|
||||
/* WAR64450 : DMACtl.Addr ext fields are not supported in SDIOD core. */
|
||||
if ((core->id.id == BCMA_CORE_SDIO_DEV)
|
||||
&& ((rev > 0) && (rev <= 2)))
|
||||
|
Loading…
Reference in New Issue
Block a user