12 #define NETMAN_NETIF_NAME_MAX_LEN 4
13 #define NETMAN_NETIF_FRAME_SIZE 1514
14 #define NETMAN_FRAME_GROUP_SIZE 8 // The actual number of DMA transfer tags is twice this. The total number presented to sceSifSetDma must never exceed 32.
18 void (*LinkStateUp)(void);
19 void (*LinkStateDown)(void);
20 void *(*AllocRxPacket)(
unsigned int size,
void **payload);
21 void (*FreeRxPacket)(
void *packet);
22 void (*EnQRxPacket)(
void *packet);
23 int (*NextTxPacket)(
void **payload);
24 void (*DeQTxPacket)(void);
25 int (*AfterTxPacket)(
void **payload);
26 void (*ReallocRxPacket)(
void *packet,
unsigned int size);
31 u32 RxDroppedFrameCount;
33 u16 RxFrameOverrunCount;
34 u16 RxFrameBadLengthCount;
35 u16 RxFrameBadFCSCount;
36 u16 RxFrameBadAlignmentCount;
37 u32 TxDroppedFrameCount;
39 u16 TxFrameLOSSCRCount;
40 u16 TxFrameEDEFERCount;
41 u16 TxFrameCollisionCount;
42 u16 TxFrameUnderrunCount;
48 u8 LinkStatus, LinkMode;
53 #define NETMAN_NETIF_ETH_LINK_DISABLE_PAUSE 0x40
67 NETMAN_NETIF_ETH_LINK_MODE_COUNT
70 enum NETMAN_NETIF_ETH_LINK_STATE {
71 NETMAN_NETIF_ETH_LINK_STATE_DOWN = 0,
72 NETMAN_NETIF_ETH_LINK_STATE_UP
80 NETMAN_NETIF_IOCTL_ETH_GET_LINK_MODE,
81 NETMAN_NETIF_IOCTL_ETH_GET_RX_EOVERRUN_CNT,
82 NETMAN_NETIF_IOCTL_ETH_GET_RX_EBADLEN_CNT,
83 NETMAN_NETIF_IOCTL_ETH_GET_RX_EBADFCS_CNT,
84 NETMAN_NETIF_IOCTL_ETH_GET_RX_EBADALIGN_CNT,
85 NETMAN_NETIF_IOCTL_ETH_GET_TX_ELOSSCR_CNT,
86 NETMAN_NETIF_IOCTL_ETH_GET_TX_EEDEFER_CNT,
87 NETMAN_NETIF_IOCTL_ETH_GET_TX_ECOLL_CNT,
88 NETMAN_NETIF_IOCTL_ETH_GET_TX_EUNDERRUN_CNT,
90 NETMAN_NETIF_IOCTL_ETH_GET_STATUS,
99 NETMAN_NETIF_IOCTL_GET_LINK_STATUS = 0x3000,
100 NETMAN_NETIF_IOCTL_GET_TX_DROPPED_COUNT,
101 NETMAN_NETIF_IOCTL_GET_RX_DROPPED_COUNT,
108 extern int NetManInit(
void);
109 extern void NetManDeinit(
void);
114 extern int NetManGetGlobalNetIFLinkState(
void);
115 extern int NetManSetMainIF(
const char *name);
116 extern int NetManQueryMainIF(
char *name);
121 extern void NetManUnregisterNetworkStack(
void);
124 extern int NetManIoctl(
unsigned int command,
void *args,
unsigned int args_len,
void *output,
unsigned int length);
125 extern int NetManSetLinkMode(
int mode);
128 extern void NetManNetIFXmit(
void);
131 extern void *NetManNetProtStackAllocRxPacket(
unsigned int length,
void **payload);
132 extern void NetManNetProtStackFreeRxPacket(
void *packet);
133 extern void NetManNetProtStackEnQRxPacket(
void *packet);
134 extern int NetManTxPacketNext(
void **payload);
135 extern void NetManTxPacketDeQ(
void);
137 extern int NetManTxPacketAfter(
void **payload);
138 extern void NetManNetProtStackReallocRxPacket(
void *packet,
unsigned int length);
142 #define NETMAN_NETIF_IN_USE 0x80
144 #define NETMAN_NETIF_ETHERNET 1
146 #define NETMAN_NETIF_DIALUP 2
148 #define NETMAN_NETIF_LINK_UP 4
152 char name[NETMAN_NETIF_NAME_MAX_LEN];
153 unsigned short int flags;
157 void (*deinit)(void);
159 int (*ioctl)(
unsigned int command,
void *args,
unsigned int args_len,
void *output,
unsigned int length);
164 #define NETMAN_NETIF_EVF_UP 0x01
165 #define NETMAN_NETIF_EVF_DOWN 0x02
167 #define NETMAN_MAX_NETIF_COUNT 2
171 extern void NetManUnregisterNetIF(
const char *name);
172 extern void NetManToggleNetIFLinkState(
int NetIFID,
unsigned char state);
176 #define netman_IMPORTS_start DECLARE_IMPORT_TABLE(netman, 3, 1)
177 #define netman_IMPORTS_end END_IMPORT_TABLE
179 #define I_NetManRegisterNetworkStack DECLARE_IMPORT(4, NetManRegisterNetworkStack)
180 #define I_NetManUnregisterNetworkStack DECLARE_IMPORT(5, NetManUnregisterNetworkStack)
182 #define I_NetManNetIFXmit DECLARE_IMPORT(6, NetManNetIFXmit)
183 #define I_NetManIoctl DECLARE_IMPORT(7, NetManIoctl)
185 #define I_NetManNetProtStackAllocPacket DECLARE_IMPORT(8, NetManNetProtStackAllocRxPacket)
186 #define I_NetManNetProtStackFreePacket DECLARE_IMPORT(9, NetManNetProtStackFreeRxPacket)
187 #define I_NetManNetProtStackEnQPacket DECLARE_IMPORT(10, NetManNetProtStackEnQRxPacket)
189 #define I_NetManRegisterNetIF DECLARE_IMPORT(11, NetManRegisterNetIF)
190 #define I_NetManUnregisterNetIF DECLARE_IMPORT(12, NetManUnregisterNetIF)
191 #define I_NetManToggleNetIFLinkState DECLARE_IMPORT(13, NetManToggleNetIFLinkState)
192 #define I_NetManGetGlobalNetIFLinkState DECLARE_IMPORT(14, NetManGetGlobalNetIFLinkState)
194 #define I_NetManSetMainIF DECLARE_IMPORT(15, NetManSetMainIF)
195 #define I_NetManQueryMainIF DECLARE_IMPORT(16, NetManQueryMainIF)
197 #define I_NetManSetLinkMode DECLARE_IMPORT(17, NetManSetLinkMode)
199 #define I_NetManTxPacketNext DECLARE_IMPORT(18, NetManTxPacketNext)
200 #define I_NetManTxPacketDeQ DECLARE_IMPORT(19, NetManTxPacketDeQ)