aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/atm/eni.h
diff options
context:
space:
mode:
authorfrançois romieu <romieu@fr.zoreil.com>2012-03-16 01:52:04 +0000
committerDavid S. Miller <davem@davemloft.net>2012-03-16 23:13:20 -0700
commit126a3fd251b244eabd9ab9dcb32b8b6f999c1b91 (patch)
treedb496f9ba4536215e9be58745565a426c090aebb /drivers/atm/eni.h
parentnet/irda: add clk_prepare/clk_unprepare to pxaficp_ir (diff)
downloadlinux-dev-126a3fd251b244eabd9ab9dcb32b8b6f999c1b91.tar.xz
linux-dev-126a3fd251b244eabd9ab9dcb32b8b6f999c1b91.zip
eni: fix driver remove function and driver probe error path.
- add eni_do_release() to balance eni_do_init - turn the zeroes DMA area into a per device data Signed-off-by: Francois Romieu <romieu@fr.zoreil.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/atm/eni.h')
-rw-r--r--drivers/atm/eni.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/atm/eni.h b/drivers/atm/eni.h
index dc9a62cc2605..565e53a5cb78 100644
--- a/drivers/atm/eni.h
+++ b/drivers/atm/eni.h
@@ -72,6 +72,7 @@ struct eni_dev {
u32 events; /* pending events */
/*-------------------------------- base pointers into Midway address
space */
+ void __iomem *ioaddr;
void __iomem *phy; /* PHY interface chip registers */
void __iomem *reg; /* register base */
void __iomem *ram; /* RAM base */
@@ -86,6 +87,10 @@ struct eni_dev {
wait_queue_head_t tx_wait; /* for close */
int tx_bw; /* remaining bandwidth */
u32 dma[TX_DMA_BUF*2]; /* DMA request scratch area */
+ struct eni_zero { /* aligned "magic" zeroes */
+ u32 *addr;
+ dma_addr_t dma;
+ } zero;
int tx_mult; /* buffer size multiplier (percent) */
/*-------------------------------- RX part */
u32 serv_read; /* host service read index */