mirror of
https://git.FreeBSD.org/src.git
synced 2024-12-15 10:17:20 +00:00
Add SMC EtherEZ98 support to ed driver (PC-98).
Reviewed by: kato Submitted by: chi@bd.mbn.or.jp (Chiharu Shibata)
This commit is contained in:
parent
5baef6cd27
commit
bb168650e8
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=40068
@ -6,7 +6,7 @@
|
||||
* of this software, nor does the author assume any responsibility
|
||||
* for damages incurred with its use.
|
||||
*
|
||||
* $Id$
|
||||
* $Id: if_edreg.h,v 1.23 1997/02/22 09:36:21 peter Exp $
|
||||
*/
|
||||
/*
|
||||
* National Semiconductor DS8390 NIC register definitions
|
||||
@ -786,9 +786,22 @@ struct ed_ring {
|
||||
#define ED_WD_ROM_CHECKSUM_TOTAL 0xFF
|
||||
#endif
|
||||
|
||||
#ifdef PC98
|
||||
/*
|
||||
* SMC EtherEZ98(SMC8498BTA)
|
||||
*/
|
||||
#define ED_WD_NIC_OFFSET 0x100 /* I/O base offset to NIC */
|
||||
#define ED_WD_ASIC_OFFSET 0 /* I/O base offset to ASIC */
|
||||
/*
|
||||
* XXX - The I/O address range is fragmented in the EtherEZ98;
|
||||
* this is the number of regs at iobase.
|
||||
*/
|
||||
#define ED_WD_IO_PORTS 16 /* # of i/o addresses used */
|
||||
#else
|
||||
#define ED_WD_NIC_OFFSET 0x10 /* I/O base offset to NIC */
|
||||
#define ED_WD_ASIC_OFFSET 0 /* I/O base offset to ASIC */
|
||||
#define ED_WD_IO_PORTS 32 /* # of i/o addresses used */
|
||||
#endif /* PC98 */
|
||||
|
||||
#define ED_WD_PAGE_OFFSET 0 /* page offset for NIC access to mem */
|
||||
|
||||
|
@ -6,7 +6,7 @@
|
||||
* of this software, nor does the author assume any responsibility
|
||||
* for damages incurred with its use.
|
||||
*
|
||||
* $Id$
|
||||
* $Id: if_edreg.h,v 1.23 1997/02/22 09:36:21 peter Exp $
|
||||
*/
|
||||
/*
|
||||
* National Semiconductor DS8390 NIC register definitions
|
||||
@ -786,9 +786,22 @@ struct ed_ring {
|
||||
#define ED_WD_ROM_CHECKSUM_TOTAL 0xFF
|
||||
#endif
|
||||
|
||||
#ifdef PC98
|
||||
/*
|
||||
* SMC EtherEZ98(SMC8498BTA)
|
||||
*/
|
||||
#define ED_WD_NIC_OFFSET 0x100 /* I/O base offset to NIC */
|
||||
#define ED_WD_ASIC_OFFSET 0 /* I/O base offset to ASIC */
|
||||
/*
|
||||
* XXX - The I/O address range is fragmented in the EtherEZ98;
|
||||
* this is the number of regs at iobase.
|
||||
*/
|
||||
#define ED_WD_IO_PORTS 16 /* # of i/o addresses used */
|
||||
#else
|
||||
#define ED_WD_NIC_OFFSET 0x10 /* I/O base offset to NIC */
|
||||
#define ED_WD_ASIC_OFFSET 0 /* I/O base offset to ASIC */
|
||||
#define ED_WD_IO_PORTS 32 /* # of i/o addresses used */
|
||||
#endif /* PC98 */
|
||||
|
||||
#define ED_WD_PAGE_OFFSET 0 /* page offset for NIC access to mem */
|
||||
|
||||
|
@ -24,7 +24,7 @@
|
||||
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
* SUCH DAMAGE.
|
||||
*
|
||||
* $Id: if_ed.c,v 1.51 1998/08/28 12:47:44 kato Exp $
|
||||
* $Id: if_ed.c,v 1.52 1998/09/14 11:37:29 kato Exp $
|
||||
*/
|
||||
|
||||
/*
|
||||
@ -356,6 +356,16 @@ static unsigned short ed_intr_mask[] = {
|
||||
* Interrupt conversion table for 83C790
|
||||
*/
|
||||
static unsigned short ed_790_intr_mask[] = {
|
||||
#ifdef PC98
|
||||
0,
|
||||
IRQ3,
|
||||
IRQ5,
|
||||
IRQ6,
|
||||
0,
|
||||
IRQ9,
|
||||
IRQ12,
|
||||
IRQ13
|
||||
#else
|
||||
0,
|
||||
IRQ9,
|
||||
IRQ3,
|
||||
@ -364,6 +374,7 @@ static unsigned short ed_790_intr_mask[] = {
|
||||
IRQ10,
|
||||
IRQ11,
|
||||
IRQ15
|
||||
#endif
|
||||
};
|
||||
|
||||
/*
|
||||
|
@ -90,20 +90,20 @@ static int pc98_set_register_unit __P((struct ed_softc *sc, int type, int iobase
|
||||
* 0xa0 Contec C-NET(98).
|
||||
* 0xb0 Contec C-NET(98)E/L.
|
||||
*/
|
||||
#define ED_TYPE98_BASE 0x10
|
||||
#define ED_TYPE98_BASE 0x80
|
||||
|
||||
#define ED_TYPE98_GENERIC 0x10
|
||||
#define ED_TYPE98_LPC 0x11
|
||||
#define ED_TYPE98_BDN 0x12
|
||||
#define ED_TYPE98_EGY 0x13
|
||||
#define ED_TYPE98_LGY 0x14
|
||||
#define ED_TYPE98_ICM 0x15
|
||||
#define ED_TYPE98_SIC 0x16
|
||||
#define ED_TYPE98_108 0x18
|
||||
#define ED_TYPE98_LA98 0x19
|
||||
#define ED_TYPE98_CNET98 0x1a
|
||||
#define ED_TYPE98_CNET98EL 0x1b
|
||||
#define ED_TYPE98_UE2212 0x1c
|
||||
#define ED_TYPE98_GENERIC 0x80
|
||||
#define ED_TYPE98_LPC 0x81
|
||||
#define ED_TYPE98_BDN 0x82
|
||||
#define ED_TYPE98_EGY 0x83
|
||||
#define ED_TYPE98_LGY 0x84
|
||||
#define ED_TYPE98_ICM 0x85
|
||||
#define ED_TYPE98_SIC 0x86
|
||||
#define ED_TYPE98_108 0x88
|
||||
#define ED_TYPE98_LA98 0x89
|
||||
#define ED_TYPE98_CNET98 0x8a
|
||||
#define ED_TYPE98_CNET98EL 0x8b
|
||||
#define ED_TYPE98_UE2212 0x8c
|
||||
|
||||
#define ED_TYPE98(x) (((x & 0xffff0000) >> 20) | ED_TYPE98_BASE)
|
||||
#define ED_TYPE98SUB(x) ((x & 0xf0000) >> 16)
|
||||
|
Loading…
Reference in New Issue
Block a user