X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=UDI%2Fdrivers%2Fnet_ne2000%2Fne2000_hw.h;h=883dd55eeb29ed43a48eefda54a73a66a733d761;hb=adf8e7862b8375ba1d9b281be50fd5f9938ee662;hp=422bdc0bab002cc7a42035cdabbb8e3949ff779a;hpb=c2d73940887401572e8fdf0444d11f6a88fef6f1;p=tpg%2Facess2.git diff --git a/UDI/drivers/net_ne2000/ne2000_hw.h b/UDI/drivers/net_ne2000/ne2000_hw.h index 422bdc0b..883dd55e 100644 --- a/UDI/drivers/net_ne2000/ne2000_hw.h +++ b/UDI/drivers/net_ne2000/ne2000_hw.h @@ -5,13 +5,57 @@ * ne2000_hw.h * - Hardware Definitions */ -#ifndef _NE2000_COMMON_H_ -#define _NE2000_COMMON_H_ +#ifndef _NE2000_HW_H_ +#define _NE2000_HW_H_ + +#define NE2K_MEM_START 0x40 +#define NE2K_MEM_END 0xC0 +#define NE2K_RX_FIRST_PG (NE2K_MEM_START) +#define NE2K_RX_LAST_PG (NE2K_MEM_START+NE2K_RX_BUF_SIZE-1) +#define NE2K_RX_BUF_SIZE 0x40 +#define NE2K_TX_FIRST_PG (NE2K_MEM_START+NE2K_RX_BUF_SIZE) +#define NE2K_TX_LAST_PG (NR2K_MEM_END) +#define NE2K_TX_BUF_SIZE 0x40 +#define NE2K_MAX_PACKET_QUEUE 10 enum eNe2k_Regs { NE2K_REG_CMD, -} + NE2K_REG_CLDA0, //!< Current Local DMA Address 0 + NE2K_REG_CLDA1, //!< Current Local DMA Address 1 + NE2K_REG_BNRY, //!< Boundary Pointer (for ringbuffer) + NE2K_REG_TSR, //!< Transmit Status Register + NE2K_REG_NCR, //!< collisions counter + NE2K_REG_FIFO, //!< (for what purpose ??) + NE2K_REG_ISR, //!< Interrupt Status Register + NE2K_REG_CRDA0, //!< Current Remote DMA Address 0 + NE2K_REG_CRDA1, //!< Current Remote DMA Address 1 + // 10: RBCR0 + // 11: RBCR1 + NE2K_REG_RSR = 12 //!< Receive Status Register +}; + +#define NE2K_REG_PSTART 1 //!< page start (init only) +#define NE2K_REG_PSTOP 2 //!< page stop (init only) +// 3: BNRY +#define NE2K_REG_TPSR 4 //!< transmit page start address +#define NE2K_REG_TBCR0 5 //!< transmit byte count (low) +#define NE2K_REG_TBCR1 6 //!< transmit byte count (high) +// 7: ISR +#define NE2K_REG_RSAR0 8 //!< remote start address (lo) +#define NE2K_REG_RSAR1 9 //!< remote start address (hi) +#define NE2K_REG_RBCR0 10 //!< remote byte count (lo) +#define NE2K_REG_RBCR1 11 //!< remote byte count (hi) +#define NE2K_REG_RCR 12 //!< receive config register +#define NE2K_REG_TCR 13 //!< transmit config register +#define NE2K_REG_DCR 14 //!< data config register (init) +#define NE2K_REG_IMR 15 //!< interrupt mask register (init) +// Page 1 +#define NE2K_REG_CURR 7 + +// Any page +#define NE2K_REG_MEM 0x10 +#define NE2K_REG_RESET 0x1F #endif