diff options
author | Udayan Kumar | 2007-07-04 01:29:31 +0200 |
---|---|---|
committer | Udayan Kumar | 2007-07-15 03:08:05 +0200 |
commit | 0d4ecfa63c70e77e1755d490d3caa61e3453bf07 (patch) | |
tree | a058ba1aa53b11ed11e52723c56085072bb895c7 /src/drivers/net/natsemi.c | |
parent | added change log to natsemi.c (diff) | |
download | ipxe-0d4ecfa63c70e77e1755d490d3caa61e3453bf07.tar.gz ipxe-0d4ecfa63c70e77e1755d490d3caa61e3453bf07.tar.xz ipxe-0d4ecfa63c70e77e1755d490d3caa61e3453bf07.zip |
enabled interrupt in natsemi.c
Diffstat (limited to 'src/drivers/net/natsemi.c')
-rw-r--r-- | src/drivers/net/natsemi.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/src/drivers/net/natsemi.c b/src/drivers/net/natsemi.c index d658bb6a..67c18b8e 100644 --- a/src/drivers/net/natsemi.c +++ b/src/drivers/net/natsemi.c @@ -200,6 +200,14 @@ enum desc_status_bits { RxTooLong = 0x00400000 }; +/*Bits in Interrupt Mask register */ + +enum Intr_mask_register_bits { + RxOk = 0x001, + RxErr = 0x004, + TxOk = 0x040, + TxErr = 0x100 +}; /* EEPROM access , values are devices specific*/ @@ -407,6 +415,12 @@ static int nat_open ( struct net_device *netdev ) { /*start the receiver */ outl(RxOn, nat->ioaddr + ChipCmd); + /*enable interrupts*/ + outl((RxOk|RxErr|TxOk|TxErr),nat->ioaddr + IntrMask); + outl(1,nat->ioaddr +IntrEnable); + + + return 0; } @@ -430,6 +444,8 @@ static void nat_close ( struct net_device *netdev ) { free_iob( nat->iobuf[i] ); } + /* disable interrupts */ + outl(0,nat->ioaddr +IntrEnable); } /** |