Browse Source

staging: brcm80211: added clarification on softmac dma alignment

Descriptor ring can only start at 8KB alignment, this requirement
is dictated by DMA hardware.

Reported-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: Roland Vossen <rvossen@broadcom.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Roland Vossen 14 years ago
parent
commit
5b876618c0
1 changed files with 6 additions and 2 deletions
  1. 6 2
      drivers/staging/brcm80211/brcmsmac/dma.c

+ 6 - 2
drivers/staging/brcm80211/brcmsmac/dma.c

@@ -24,8 +24,8 @@
 #include "dma.h"
 
 /*
- * Each descriptor ring must be 8kB aligned, and fit within a
- * contiguous 8kB physical address.
+ * DMA hardware requires each descriptor ring to be 8kB aligned, and fit within
+ * a contiguous 8kB physical address.
  */
 #define D64RINGALIGN_BITS	13
 #define	D64MAXRINGSZ		(1 << D64RINGALIGN_BITS)
@@ -440,6 +440,10 @@ static bool _dma_descriptor_align(struct dma_info *di)
 	return true;
 }
 
+/*
+ * Descriptor table must start at the DMA hardware dictated alignment, so
+ * allocated memory must be large enough to support this requirement.
+ */
 static void *dma_alloc_consistent(struct pci_dev *pdev, uint size,
 				  u16 align_bits, uint *alloced,
 				  dma_addr_t *pap)