xref: /linux/drivers/net/usb/pegasus.h (revision 75bf465f0bc33e9b776a46d6a1b9b990f5fb7c37)
1*d2912cb1SThomas Gleixner /* SPDX-License-Identifier: GPL-2.0-only */
25b2fc499SJeff Garzik /*
3323b3496SPetko Manolov  * Copyright (c) 1999-2013 Petko Manolov (petkan@nucleusys.com)
45b2fc499SJeff Garzik  */
55b2fc499SJeff Garzik 
65b2fc499SJeff Garzik 
75b2fc499SJeff Garzik #ifndef	PEGASUS_DEV
85b2fc499SJeff Garzik 
95b2fc499SJeff Garzik #define	PEGASUS_II		0x80000000
105b2fc499SJeff Garzik #define	HAS_HOME_PNA		0x40000000
115b2fc499SJeff Garzik 
125b2fc499SJeff Garzik #define	PEGASUS_MTU		1536
135b2fc499SJeff Garzik 
145b2fc499SJeff Garzik #define	EPROM_WRITE		0x01
155b2fc499SJeff Garzik #define	EPROM_READ		0x02
165b2fc499SJeff Garzik #define	EPROM_DONE		0x04
175b2fc499SJeff Garzik #define	EPROM_WR_ENABLE		0x10
185b2fc499SJeff Garzik #define	EPROM_LOAD		0x20
195b2fc499SJeff Garzik 
205b2fc499SJeff Garzik #define	PHY_DONE		0x80
215b2fc499SJeff Garzik #define	PHY_READ		0x40
225b2fc499SJeff Garzik #define	PHY_WRITE		0x20
235b2fc499SJeff Garzik #define	DEFAULT_GPIO_RESET	0x24
245b2fc499SJeff Garzik #define	DEFAULT_GPIO_SET	0x26
255b2fc499SJeff Garzik 
265b2fc499SJeff Garzik #define	PEGASUS_PRESENT		0x00000001
275b2fc499SJeff Garzik #define	PEGASUS_TX_BUSY		0x00000004
285b2fc499SJeff Garzik #define	PEGASUS_RX_BUSY		0x00000008
295b2fc499SJeff Garzik #define	CTRL_URB_RUNNING	0x00000010
305b2fc499SJeff Garzik #define	CTRL_URB_SLEEP		0x00000020
315b2fc499SJeff Garzik #define	PEGASUS_UNPLUG		0x00000040
325b2fc499SJeff Garzik #define	PEGASUS_RX_URB_FAIL	0x00000080
335b2fc499SJeff Garzik 
345b2fc499SJeff Garzik #define	RX_MULTICAST		2
355b2fc499SJeff Garzik #define	RX_PROMISCUOUS		4
365b2fc499SJeff Garzik 
375b2fc499SJeff Garzik #define	REG_TIMEOUT		(HZ)
385b2fc499SJeff Garzik #define	PEGASUS_TX_TIMEOUT	(HZ*10)
395b2fc499SJeff Garzik 
405b2fc499SJeff Garzik #define	TX_UNDERRUN		0x80
415b2fc499SJeff Garzik #define	EXCESSIVE_COL		0x40
425b2fc499SJeff Garzik #define	LATE_COL		0x20
435b2fc499SJeff Garzik #define	NO_CARRIER		0x10
445b2fc499SJeff Garzik #define	LOSS_CARRIER		0x08
455b2fc499SJeff Garzik #define	JABBER_TIMEOUT		0x04
465b2fc499SJeff Garzik 
475b2fc499SJeff Garzik #define	LINK_STATUS		0x01
485b2fc499SJeff Garzik 
495b2fc499SJeff Garzik #define	PEGASUS_REQT_READ	0xc0
505b2fc499SJeff Garzik #define	PEGASUS_REQT_WRITE	0x40
515b2fc499SJeff Garzik #define	PEGASUS_REQ_GET_REGS	0xf0
525b2fc499SJeff Garzik #define	PEGASUS_REQ_SET_REGS	0xf1
535b2fc499SJeff Garzik #define	PEGASUS_REQ_SET_REG	PEGASUS_REQ_SET_REGS
545b2fc499SJeff Garzik 
555b2fc499SJeff Garzik enum pegasus_registers {
565b2fc499SJeff Garzik 	EthCtrl0 = 0,
575b2fc499SJeff Garzik 	EthCtrl1 = 1,
585b2fc499SJeff Garzik 	EthCtrl2 = 2,
595b2fc499SJeff Garzik 	EthID = 0x10,
605b2fc499SJeff Garzik 	Reg1d = 0x1d,
615b2fc499SJeff Garzik 	EpromOffset = 0x20,
625b2fc499SJeff Garzik 	EpromData = 0x21,	/* 0x21 low, 0x22 high byte */
635b2fc499SJeff Garzik 	EpromCtrl = 0x23,
645b2fc499SJeff Garzik 	PhyAddr = 0x25,
655b2fc499SJeff Garzik 	PhyData = 0x26,		/* 0x26 low, 0x27 high byte */
665b2fc499SJeff Garzik 	PhyCtrl = 0x28,
675b2fc499SJeff Garzik 	UsbStst = 0x2a,
685b2fc499SJeff Garzik 	EthTxStat0 = 0x2b,
695b2fc499SJeff Garzik 	EthTxStat1 = 0x2c,
705b2fc499SJeff Garzik 	EthRxStat = 0x2d,
715b2fc499SJeff Garzik 	WakeupControl = 0x78,
725b2fc499SJeff Garzik 	Reg7b = 0x7b,
735b2fc499SJeff Garzik 	Gpio0 = 0x7e,
745b2fc499SJeff Garzik 	Gpio1 = 0x7f,
755b2fc499SJeff Garzik 	Reg81 = 0x81,
765b2fc499SJeff Garzik };
775b2fc499SJeff Garzik 
785b2fc499SJeff Garzik 
795b2fc499SJeff Garzik typedef struct pegasus {
805b2fc499SJeff Garzik 	struct usb_device	*usb;
815b2fc499SJeff Garzik 	struct usb_interface	*intf;
825b2fc499SJeff Garzik 	struct net_device	*net;
835b2fc499SJeff Garzik 	struct mii_if_info	mii;
845b2fc499SJeff Garzik 	unsigned		flags;
855b2fc499SJeff Garzik 	unsigned		features;
865b2fc499SJeff Garzik 	u32			msg_enable;
875b2fc499SJeff Garzik 	u32			wolopts;
885b2fc499SJeff Garzik 	int			dev_index;
895b2fc499SJeff Garzik 	int			intr_interval;
905b2fc499SJeff Garzik 	struct tasklet_struct	rx_tl;
915b2fc499SJeff Garzik 	struct delayed_work	carrier_check;
92323b3496SPetko Manolov 	struct urb		*rx_urb, *tx_urb, *intr_urb;
935b2fc499SJeff Garzik 	struct sk_buff		*rx_skb;
945b2fc499SJeff Garzik 	int			chip;
955b2fc499SJeff Garzik 	unsigned char		intr_buff[8];
965b2fc499SJeff Garzik 	__u8			tx_buff[PEGASUS_MTU];
975b2fc499SJeff Garzik 	__u8			eth_regs[4];
985b2fc499SJeff Garzik 	__u8			phy;
995b2fc499SJeff Garzik 	__u8			gpio_res;
1005b2fc499SJeff Garzik } pegasus_t;
1015b2fc499SJeff Garzik 
1025b2fc499SJeff Garzik 
1035b2fc499SJeff Garzik struct usb_eth_dev {
1045b2fc499SJeff Garzik 	char	*name;
1055b2fc499SJeff Garzik 	__u16	vendor;
1065b2fc499SJeff Garzik 	__u16	device;
1075b2fc499SJeff Garzik 	__u32	private; /* LSB is gpio reset value */
1085b2fc499SJeff Garzik };
1095b2fc499SJeff Garzik 
1105b2fc499SJeff Garzik #define	VENDOR_3COM		0x0506
1115b2fc499SJeff Garzik #define	VENDOR_ABOCOM		0x07b8
1125b2fc499SJeff Garzik #define	VENDOR_ACCTON		0x083a
1135b2fc499SJeff Garzik #define	VENDOR_ADMTEK		0x07a6
1145b2fc499SJeff Garzik #define	VENDOR_AEILAB		0x3334
1155b2fc499SJeff Garzik #define	VENDOR_ALLIEDTEL	0x07c9
1165b2fc499SJeff Garzik #define	VENDOR_ATEN		0x0557
1175b2fc499SJeff Garzik #define	VENDOR_BELKIN		0x050d
1185b2fc499SJeff Garzik #define	VENDOR_BILLIONTON	0x08dd
1195b2fc499SJeff Garzik #define	VENDOR_COMPAQ		0x049f
1205b2fc499SJeff Garzik #define	VENDOR_COREGA		0x07aa
1215b2fc499SJeff Garzik #define	VENDOR_DLINK		0x2001
1225b2fc499SJeff Garzik #define	VENDOR_ELCON		0x0db7
1235b2fc499SJeff Garzik #define	VENDOR_ELECOM		0x056e
1245b2fc499SJeff Garzik #define	VENDOR_ELSA		0x05cc
1255b2fc499SJeff Garzik #define	VENDOR_GIGABYTE		0x1044
1265b2fc499SJeff Garzik #define	VENDOR_HAWKING		0x0e66
1275b2fc499SJeff Garzik #define	VENDOR_HP		0x03f0
1285b2fc499SJeff Garzik #define	VENDOR_IODATA		0x04bb
1295b2fc499SJeff Garzik #define	VENDOR_KINGSTON		0x0951
1305b2fc499SJeff Garzik #define	VENDOR_LANEED		0x056e
1315b2fc499SJeff Garzik #define	VENDOR_LINKSYS		0x066b
1325b2fc499SJeff Garzik #define	VENDOR_LINKSYS2		0x077b
1335b2fc499SJeff Garzik #define	VENDOR_MELCO		0x0411
1345b2fc499SJeff Garzik #define	VENDOR_MICROSOFT	0x045e
1355b2fc499SJeff Garzik #define	VENDOR_MOBILITY		0x1342
1365b2fc499SJeff Garzik #define	VENDOR_NETGEAR		0x0846
1375b2fc499SJeff Garzik #define	VENDOR_OCT		0x0b39
1385b2fc499SJeff Garzik #define	VENDOR_SMARTBRIDGES	0x08d1
1395b2fc499SJeff Garzik #define	VENDOR_SMC		0x0707
1405b2fc499SJeff Garzik #define	VENDOR_SOHOWARE		0x15e8
1415b2fc499SJeff Garzik #define	VENDOR_SIEMENS		0x067c
1425b2fc499SJeff Garzik 
1435b2fc499SJeff Garzik 
1445b2fc499SJeff Garzik #else	/* PEGASUS_DEV */
1455b2fc499SJeff Garzik 
1465b2fc499SJeff Garzik PEGASUS_DEV("3Com USB Ethernet 3C460B", VENDOR_3COM, 0x4601,
1475b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET | PEGASUS_II)
1485b2fc499SJeff Garzik PEGASUS_DEV("ATEN USB Ethernet UC-110T", VENDOR_ATEN, 0x2007,
1495b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET | PEGASUS_II)
1505b2fc499SJeff Garzik PEGASUS_DEV("USB HPNA/Ethernet", VENDOR_ABOCOM, 0x110c,
1515b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET | PEGASUS_II | HAS_HOME_PNA)
1525b2fc499SJeff Garzik PEGASUS_DEV("USB HPNA/Ethernet", VENDOR_ABOCOM, 0x4104,
1535b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET | HAS_HOME_PNA)
1545b2fc499SJeff Garzik PEGASUS_DEV("USB HPNA/Ethernet", VENDOR_ABOCOM, 0x4004,
1555b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET | HAS_HOME_PNA)
1565b2fc499SJeff Garzik PEGASUS_DEV("USB HPNA/Ethernet", VENDOR_ABOCOM, 0x4007,
1575b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET | HAS_HOME_PNA)
1585b2fc499SJeff Garzik PEGASUS_DEV("USB 10/100 Fast Ethernet", VENDOR_ABOCOM, 0x4102,
1595b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET | PEGASUS_II)
1605b2fc499SJeff Garzik PEGASUS_DEV("USB 10/100 Fast Ethernet", VENDOR_ABOCOM, 0x4002,
1615b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET)
1625b2fc499SJeff Garzik PEGASUS_DEV("USB 10/100 Fast Ethernet", VENDOR_ABOCOM, 0x400b,
1635b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET | PEGASUS_II)
1645b2fc499SJeff Garzik PEGASUS_DEV("USB 10/100 Fast Ethernet", VENDOR_ABOCOM, 0x400c,
1655b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET | PEGASUS_II)
1665b2fc499SJeff Garzik PEGASUS_DEV("USB 10/100 Fast Ethernet", VENDOR_ABOCOM, 0xabc1,
1675b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET)
1685b2fc499SJeff Garzik PEGASUS_DEV("USB 10/100 Fast Ethernet", VENDOR_ABOCOM, 0x200c,
1695b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET | PEGASUS_II)
1705b2fc499SJeff Garzik PEGASUS_DEV("Accton USB 10/100 Ethernet Adapter", VENDOR_ACCTON, 0x1046,
1715b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET)
1725b2fc499SJeff Garzik PEGASUS_DEV("SpeedStream USB 10/100 Ethernet", VENDOR_ACCTON, 0x5046,
1735b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET | PEGASUS_II)
1745b2fc499SJeff Garzik PEGASUS_DEV("Philips USB 10/100 Ethernet", VENDOR_ACCTON, 0xb004,
1755b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET | PEGASUS_II)
1765b2fc499SJeff Garzik PEGASUS_DEV("ADMtek ADM8511 \"Pegasus II\" USB Ethernet",
1775b2fc499SJeff Garzik 		VENDOR_ADMTEK, 0x8511,
1785b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET | PEGASUS_II | HAS_HOME_PNA)
1795b2fc499SJeff Garzik PEGASUS_DEV("ADMtek ADM8513 \"Pegasus II\" USB Ethernet",
1805b2fc499SJeff Garzik 		VENDOR_ADMTEK, 0x8513,
1815b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET | PEGASUS_II)
1825b2fc499SJeff Garzik PEGASUS_DEV("ADMtek ADM8515 \"Pegasus II\" USB-2.0 Ethernet",
1835b2fc499SJeff Garzik 		VENDOR_ADMTEK, 0x8515,
1845b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET | PEGASUS_II)
1855b2fc499SJeff Garzik PEGASUS_DEV("ADMtek AN986 \"Pegasus\" USB Ethernet (evaluation board)",
1865b2fc499SJeff Garzik 		VENDOR_ADMTEK, 0x0986,
1875b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET | HAS_HOME_PNA)
1885b2fc499SJeff Garzik PEGASUS_DEV("AN986A USB MAC", VENDOR_ADMTEK, 1986,
1895b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET | PEGASUS_II)
1905b2fc499SJeff Garzik PEGASUS_DEV("AEI USB Fast Ethernet Adapter", VENDOR_AEILAB, 0x1701,
1915b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET | PEGASUS_II)
1925b2fc499SJeff Garzik PEGASUS_DEV("Allied Telesyn Int. AT-USB100", VENDOR_ALLIEDTEL, 0xb100,
1935b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET | PEGASUS_II)
194ab854b24SChris Rankin /*
195ab854b24SChris Rankin  * Distinguish between this Belkin adaptor and the Belkin bluetooth adaptors
196ab854b24SChris Rankin  * with the same product IDs by checking the device class too.
197ab854b24SChris Rankin  */
198ab854b24SChris Rankin PEGASUS_DEV_CLASS("Belkin F5D5050 USB Ethernet", VENDOR_BELKIN, 0x0121, 0x00,
1995b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET | PEGASUS_II)
200e7111eacSPetko Manolov PEGASUS_DEV("Belkin F5U122 10/100 USB Ethernet", VENDOR_BELKIN, 0x0122,
201e7111eacSPetko Manolov 		DEFAULT_GPIO_RESET | PEGASUS_II)
2025b2fc499SJeff Garzik PEGASUS_DEV("Billionton USB-100", VENDOR_BILLIONTON, 0x0986,
2035b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET)
2045b2fc499SJeff Garzik PEGASUS_DEV("Billionton USBLP-100", VENDOR_BILLIONTON, 0x0987,
2055b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET | HAS_HOME_PNA)
2065b2fc499SJeff Garzik PEGASUS_DEV("iPAQ Networking 10/100 USB", VENDOR_COMPAQ, 0x8511,
2075b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET | PEGASUS_II)
2085b2fc499SJeff Garzik PEGASUS_DEV("Billionton USBEL-100", VENDOR_BILLIONTON, 0x0988,
2095b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET)
2105b2fc499SJeff Garzik PEGASUS_DEV("Billionton USBE-100", VENDOR_BILLIONTON, 0x8511,
2115b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET | PEGASUS_II)
2125b2fc499SJeff Garzik PEGASUS_DEV("Corega FEther USB-TX", VENDOR_COREGA, 0x0004,
2135b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET)
2145b2fc499SJeff Garzik PEGASUS_DEV("Corega FEther USB-TXS", VENDOR_COREGA, 0x000d,
2155b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET | PEGASUS_II)
2165b2fc499SJeff Garzik PEGASUS_DEV("D-Link DSB-650TX", VENDOR_DLINK, 0x4001,
2175b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET)
2185b2fc499SJeff Garzik PEGASUS_DEV("D-Link DSB-650TX", VENDOR_DLINK, 0x4002,
2195b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET)
2205b2fc499SJeff Garzik PEGASUS_DEV("D-Link DSB-650TX", VENDOR_DLINK, 0x4102,
2215b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET | PEGASUS_II)
2225b2fc499SJeff Garzik PEGASUS_DEV("D-Link DSB-650TX", VENDOR_DLINK, 0x400b,
2235b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET | PEGASUS_II)
2245b2fc499SJeff Garzik PEGASUS_DEV("D-Link DSB-650TX", VENDOR_DLINK, 0x200c,
2255b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET | PEGASUS_II)
2265b2fc499SJeff Garzik PEGASUS_DEV("D-Link DSB-650TX(PNA)", VENDOR_DLINK, 0x4003,
2275b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET | HAS_HOME_PNA)
2285b2fc499SJeff Garzik PEGASUS_DEV("D-Link DSB-650", VENDOR_DLINK, 0xabc1,
2295b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET)
2305b2fc499SJeff Garzik PEGASUS_DEV("GOLDPFEIL USB Adapter", VENDOR_ELCON, 0x0002,
2315b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET | PEGASUS_II | HAS_HOME_PNA)
2325b2fc499SJeff Garzik PEGASUS_DEV("ELECOM USB Ethernet LD-USB20", VENDOR_ELECOM,  0x4010,
2335b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET  | PEGASUS_II)
2345b2fc499SJeff Garzik PEGASUS_DEV("EasiDock Ethernet", VENDOR_MOBILITY, 0x0304,
2355b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET)
2365b2fc499SJeff Garzik PEGASUS_DEV("Elsa Micolink USB2Ethernet", VENDOR_ELSA, 0x3000,
2375b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET)
2385b2fc499SJeff Garzik PEGASUS_DEV("GIGABYTE GN-BR402W Wireless Router", VENDOR_GIGABYTE, 0x8002,
2395b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET)
2405b2fc499SJeff Garzik PEGASUS_DEV("Hawking UF100 10/100 Ethernet", VENDOR_HAWKING, 0x400c,
2415b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET | PEGASUS_II)
2425b2fc499SJeff Garzik PEGASUS_DEV("HP hn210c Ethernet USB", VENDOR_HP, 0x811c,
2435b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET | PEGASUS_II)
2445b2fc499SJeff Garzik PEGASUS_DEV("IO DATA USB ET/TX", VENDOR_IODATA, 0x0904,
2455b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET)
2465b2fc499SJeff Garzik PEGASUS_DEV("IO DATA USB ET/TX-S", VENDOR_IODATA, 0x0913,
2475b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET | PEGASUS_II)
24895718c1cSTadashi Abe PEGASUS_DEV("IO DATA USB ETX-US2", VENDOR_IODATA, 0x093a,
2497c1d15d7SPetko Manolov 		DEFAULT_GPIO_RESET | PEGASUS_II)
2505b2fc499SJeff Garzik PEGASUS_DEV("Kingston KNU101TX Ethernet", VENDOR_KINGSTON, 0x000a,
2515b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET)
2525b2fc499SJeff Garzik PEGASUS_DEV("LANEED USB Ethernet LD-USB/TX", VENDOR_LANEED, 0x4002,
2535b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET)
2545b2fc499SJeff Garzik PEGASUS_DEV("LANEED USB Ethernet LD-USBL/TX", VENDOR_LANEED, 0x4005,
2555b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET | PEGASUS_II)
2565b2fc499SJeff Garzik PEGASUS_DEV("LANEED USB Ethernet LD-USB/TX", VENDOR_LANEED, 0x400b,
2575b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET | PEGASUS_II)
2585b2fc499SJeff Garzik PEGASUS_DEV("LANEED USB Ethernet LD-USB/T", VENDOR_LANEED, 0xabc1,
2595b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET)
2605b2fc499SJeff Garzik PEGASUS_DEV("LANEED USB Ethernet LD-USB/TX", VENDOR_LANEED, 0x200c,
2615b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET | PEGASUS_II)
2625b2fc499SJeff Garzik PEGASUS_DEV("Linksys USB10TX", VENDOR_LINKSYS, 0x2202,
2635b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET)
2645b2fc499SJeff Garzik PEGASUS_DEV("Linksys USB100TX", VENDOR_LINKSYS, 0x2203,
2655b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET)
2665b2fc499SJeff Garzik PEGASUS_DEV("Linksys USB100TX", VENDOR_LINKSYS, 0x2204,
2675b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET | HAS_HOME_PNA)
2685b2fc499SJeff Garzik PEGASUS_DEV("Linksys USB10T Ethernet Adapter", VENDOR_LINKSYS, 0x2206,
2695b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET | PEGASUS_II)
2705b2fc499SJeff Garzik PEGASUS_DEV("Linksys USBVPN1", VENDOR_LINKSYS2, 0x08b4,
2715b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET)
2725b2fc499SJeff Garzik PEGASUS_DEV("Linksys USB USB100TX", VENDOR_LINKSYS, 0x400b,
2735b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET | PEGASUS_II)
2745b2fc499SJeff Garzik PEGASUS_DEV("Linksys USB10TX", VENDOR_LINKSYS, 0x200c,
2755b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET | PEGASUS_II)
2765b2fc499SJeff Garzik PEGASUS_DEV("MELCO/BUFFALO LUA-TX", VENDOR_MELCO, 0x0001,
2775b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET)
2785b2fc499SJeff Garzik PEGASUS_DEV("MELCO/BUFFALO LUA-TX", VENDOR_MELCO, 0x0005,
2795b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET)
2805b2fc499SJeff Garzik PEGASUS_DEV("MELCO/BUFFALO LUA2-TX", VENDOR_MELCO, 0x0009,
2815b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET | PEGASUS_II)
2825b2fc499SJeff Garzik PEGASUS_DEV("Microsoft MN-110", VENDOR_MICROSOFT, 0x007a,
2835b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET | PEGASUS_II)
2845b2fc499SJeff Garzik PEGASUS_DEV("NETGEAR FA101", VENDOR_NETGEAR, 0x1020,
2855b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET | PEGASUS_II)
2865b2fc499SJeff Garzik PEGASUS_DEV("OCT Inc.", VENDOR_OCT, 0x0109,
2875b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET | PEGASUS_II)
2885b2fc499SJeff Garzik PEGASUS_DEV("OCT USB TO Ethernet", VENDOR_OCT, 0x0901,
2895b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET | PEGASUS_II)
2905b2fc499SJeff Garzik PEGASUS_DEV("smartNIC 2 PnP Adapter", VENDOR_SMARTBRIDGES, 0x0003,
2915b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET | PEGASUS_II)
2925b2fc499SJeff Garzik PEGASUS_DEV("SMC 202 USB Ethernet", VENDOR_SMC, 0x0200,
2935b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET)
2945b2fc499SJeff Garzik PEGASUS_DEV("SMC 2206 USB Ethernet", VENDOR_SMC, 0x0201,
2955b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET | PEGASUS_II)
2965b2fc499SJeff Garzik PEGASUS_DEV("SOHOware NUB100 Ethernet", VENDOR_SOHOWARE, 0x9100,
2975b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET)
2985b2fc499SJeff Garzik PEGASUS_DEV("SOHOware NUB110 Ethernet", VENDOR_SOHOWARE, 0x9110,
2995b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET | PEGASUS_II)
3005b2fc499SJeff Garzik PEGASUS_DEV("SpeedStream USB 10/100 Ethernet", VENDOR_SIEMENS, 0x1001,
3015b2fc499SJeff Garzik 		DEFAULT_GPIO_RESET | PEGASUS_II)
3025b2fc499SJeff Garzik 
3035b2fc499SJeff Garzik 
3045b2fc499SJeff Garzik #endif	/* PEGASUS_DEV */
305