BPicture: Fix archive constructor.
[haiku.git] / src / add-ons / kernel / drivers / network / usb_asix / ASIXVendorRequests.h
blob535a60216dee4ca83628ea368c9299ac96afe771
1 /*
2 * ASIX AX88172/AX88772/AX88178 USB 2.0 Ethernet Driver.
3 * Copyright (c) 2011 S.Zharski <imker@gmx.li>
4 * Distributed under the terms of the MIT license.
6 */
7 #ifndef _ASIX_VENDOR_REQUESTS_H_
8 #define _ASIX_VENDOR_REQUESTS_H_
11 // USB Vendor Requests used by all chip types
12 // For chip-spercific information look into
13 // corresponding AX88***Device.cpp files.
14 enum ASIXVendorRequests {
15 READ_RXTX_SRAM = 0x02,
16 WRITE_RXTX_SRAM = 0x03, // AX88178-772
17 WRITE_RX_SRAM = 0x03, // AX88172
18 WRITE_TX_SRAM = 0x04, // AX88172
19 SW_MII_OP = 0x06,
20 READ_MII = 0x07,
21 WRITE_MII = 0x08,
22 READ_MII_OP_MODE = 0x09, // AX88172-772
23 READ_MII_STATUS = 0x09, // AX88178
24 HW_MII_OP = 0x0A,
25 READ_SROM = 0x0B,
26 WRITE_SROM = 0x0C,
27 WRITE_SROM_ENABLE = 0x0D,
28 WRITE_SROM_DISABLE = 0x0E,
29 READ_RX_CONTROL = 0x0F,
30 WRITE_RX_CONTROL = 0x10,
31 READ_IPGS = 0x11,
32 WRITE_IPGS = 0x12, // AX88178-772
33 WRITE_IPG0 = 0x12, // AX88172
34 WRITE_IPG1 = 0x13, // AX88172
35 WRITE_IPG2 = 0x14, // AX88172
36 READ_NODEID = 0x13, // AX88178-772
37 WRITE_NODEID = 0x14, // AX88178-772
38 READ_MF_ARRAY = 0x15,
39 WRITE_MF_ARRAY = 0x16,
40 READ_TEST = 0x17, // AX88178-772
41 READ_NODEID_AX88172 = 0x17, // AX88172
42 WRITE_NODEID_AX88172 = 0x18, // AX88172
43 READ_PHYID = 0x19,
44 READ_MEDIUM_STATUS = 0x1A,
45 WRITE_MEDIUM_MODE = 0x1B,
46 GET_MONITOR_MODE = 0x1C,
47 SET_MONITOR_MODE = 0x1D,
48 READ_GPIOS = 0x1E,
49 WRITE_GPIOS = 0x1F,
50 WRITE_SOFT_RESET = 0x20, // AX88178-772
51 READ_PHY_SEL_STATE = 0x21, // AX88772
52 WRITE_PHY_SEL = 0x22, // AX88772
53 READ_MIIS_IF_STATE = 0x21, // AX88178
54 WRITE_MIIS_IF_STATE = 0x22, // AX88178
55 WRITE_RXCONTROL_CFG = 0x2A // AX88772B
59 // RX Control Register bits
60 enum ASIXRXControl {
61 RXCTL_PROMISCUOUS = 0x0001,
62 RXCTL_ALL_MULTICAT = 0x0002,
63 RXCTL_UNICAST = 0x0004, // AX88172
64 RXCTL_SEP = 0x0004, // AX88772-178
65 RXCTL_BROADCAST = 0x0008,
66 RXCTL_MULTICAST = 0x0010,
67 RXCTL_AP = 0x0020, // AX88772-178
68 RXCTL_START = 0x0080,
69 RXCTL_USB_MFB_2048 = 0x0000, // AX88772-178
70 RXCTL_USB_MFB_4096 = 0x0100, // AX88772-178
71 RXCTL_USB_MFB_8192 = 0x0200, // AX88772-178
72 RXCTL_USB_MFB_MAX = 0x0300, // aka 16384 + mask AX88772-178
73 RXCTL_LOOPBACK = 0x1000, // AX88772A / AX88772B
77 #endif // _ASIX_VENDOR_REQUESTS_H_