[PATCH] b44: alternate allocation option for DMA descriptors
commit9f38c636ababfb41e58c9ec1e9719492ef7f0479
authorJohn W. Linville <linville@tuxdriver.com>
Wed, 19 Oct 2005 01:30:59 +0000 (18 21:30 -0400)
committerJeff Garzik <jgarzik@pobox.com>
Wed, 19 Oct 2005 02:27:13 +0000 (18 22:27 -0400)
tree52a0d64efd7a0f814dd327f2bd983a5c8260b1be
parentdf49898a47061e82219c991dfbe9ac6ddf7a866b
[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>
drivers/net/b44.c
drivers/net/b44.h