summaryrefslogtreecommitdiffstats
path: root/drivers/net/b44.h
diff options
context:
space:
mode:
authorJohn W. Linville <linville@tuxdriver.com>2005-10-18 21:30:59 -0400
committerJeff Garzik <jgarzik@pobox.com>2005-10-18 22:27:13 -0400
commit9f38c636ababfb41e58c9ec1e9719492ef7f0479 (patch)
tree52a0d64efd7a0f814dd327f2bd983a5c8260b1be /drivers/net/b44.h
parentdf49898a47061e82219c991dfbe9ac6ddf7a866b (diff)
downloadkernel-crypto-9f38c636ababfb41e58c9ec1e9719492ef7f0479.tar.gz
kernel-crypto-9f38c636ababfb41e58c9ec1e9719492ef7f0479.tar.xz
kernel-crypto-9f38c636ababfb41e58c9ec1e9719492ef7f0479.zip
[PATCH] b44: alternate allocation option for DMA descriptors
This is a (final?) hack to support the odd DMA allocation requirements of the b44 hardware. The b44 hardware has a 30-bit DMA mask. On x86, anything less than a 32-bit DMA mask forces allocations into the 16MB GFP_DMA range. The memory there is somewhat limited, often resulting in an inability to initialize the b44 driver. This hack uses streaming DMA allocation APIs in order to provide an alternative in case the GFP_DMA allocation fails. It is somewhat ugly, but not much worse than the similar existing hacks to support SKB allocations in the same driver. FWIW, I have received positive feedback on this from several Fedora users. Signed-off-by: John W. Linville <linville@tuxdriver.com> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Diffstat (limited to 'drivers/net/b44.h')
-rw-r--r--drivers/net/b44.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/net/b44.h b/drivers/net/b44.h
index 11c40a2e71c..593cb0ad410 100644
--- a/drivers/net/b44.h
+++ b/drivers/net/b44.h
@@ -400,6 +400,8 @@ struct b44 {
#define B44_FLAG_ADV_100HALF 0x04000000
#define B44_FLAG_ADV_100FULL 0x08000000
#define B44_FLAG_INTERNAL_PHY 0x10000000
+#define B44_FLAG_RX_RING_HACK 0x20000000
+#define B44_FLAG_TX_RING_HACK 0x40000000
u32 rx_offset;