diff options
author | Ron Mercer <ron.mercer@qlogic.com> | 2009-06-10 15:49:33 (GMT) |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2009-06-11 09:37:04 (GMT) |
commit | 88c55e3cbd1bd4e8f52dcda67456763710a025a5 (patch) | |
tree | d038c7d993f6d24baf6ba7928877b2e259f444a8 /drivers/net/qlge | |
parent | 0ed586d075ef65c0268982e5b7f36d0ffaa95547 (diff) | |
download | linux-88c55e3cbd1bd4e8f52dcda67456763710a025a5.tar.xz |
qlge: Relax alignment on TX harware queue.
The alignment was on size of queue boundary, but the hardware
only requires 4-byte alignment.
Signed-off-by: Ron Mercer <ron.mercer@qlogic.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/qlge')
-rw-r--r-- | drivers/net/qlge/qlge.h | 2 | ||||
-rw-r--r-- | drivers/net/qlge/qlge_main.c | 2 |
2 files changed, 3 insertions, 1 deletions
diff --git a/drivers/net/qlge/qlge.h b/drivers/net/qlge/qlge.h index 5eb52ca..b1ddfd1 100644 --- a/drivers/net/qlge/qlge.h +++ b/drivers/net/qlge/qlge.h @@ -27,6 +27,8 @@ "%s: " fmt, __func__, ##args); \ } while (0) +#define WQ_ADDR_ALIGN 0x3 /* 4 byte alignment */ + #define QLGE_VENDOR_ID 0x1077 #define QLGE_DEVICE_ID_8012 0x8012 #define QLGE_DEVICE_ID_8000 0x8000 diff --git a/drivers/net/qlge/qlge_main.c b/drivers/net/qlge/qlge_main.c index 024c734..17d512c 100644 --- a/drivers/net/qlge/qlge_main.c +++ b/drivers/net/qlge/qlge_main.c @@ -2237,7 +2237,7 @@ static int ql_alloc_tx_resources(struct ql_adapter *qdev, &tx_ring->wq_base_dma); if ((tx_ring->wq_base == NULL) - || tx_ring->wq_base_dma & (tx_ring->wq_size - 1)) { + || tx_ring->wq_base_dma & WQ_ADDR_ALIGN) { QPRINTK(qdev, IFUP, ERR, "tx_ring alloc failed.\n"); return -ENOMEM; } |