5#ifdef BUILDING_SMAP_NETDEV
9int SMAPCommonTxPacketNext(
struct SmapDriverData *SmapDrivPrivData,
void **data,
void **
pbuf)
11#ifdef BUILDING_SMAP_MODULAR
15 HookTableAt0 = SmapDrivPrivData->HookTable[0];
16 if (HookTableAt0 != NULL && HookTableAt0->TxPacketNext != NULL) {
19 res = HookTableAt0->TxPacketNext(data);
26#if defined(BUILDING_SMAP_NETMAN)
27 (void)SmapDrivPrivData;
29 return NetManTxPacketNext(data);
30#elif defined(BUILDING_SMAP_PS2IP)
31 (void)SmapDrivPrivData;
33 return SMapTxPacketNext(data);
34#elif defined(BUILDING_SMAP_NETDEV)
39 pkt = sceInetPktDeQ(&SmapDrivPrivData->m_devops.sndq);
44 length = pkt->wp - rp;
45 if (length == 0 || ((uiptr)rp & 3) != 0) {
46 sceInetPrintf(
"smap: dropped\n");
47 SmapDrivPrivData->RuntimeStats_NetDev.m_Tx_Dropped += 1;
49#ifdef BUILDING_SMAP_NETDEV
50 SmapDrivPrivData->RuntimeStats_NetDev.m_Tx_Bytes += length;
51 SmapDrivPrivData->RuntimeStats_NetDev.m_Tx_Packets += 1;
54 sceInetFreePkt(&SmapDrivPrivData->m_devops, pkt);
62 (void)SmapDrivPrivData;
69void SMAPCommonTxPacketDeQ(
struct SmapDriverData *SmapDrivPrivData,
void **data,
void **
pbuf)
71#ifdef BUILDING_SMAP_MODULAR
75 HookTableAt0 = SmapDrivPrivData->HookTable[0];
76 if (HookTableAt0 != NULL && HookTableAt0->TxPacketDeQ != NULL) {
77 if (HookTableAt0->TxPacketDeQ(data)) {
85#if defined(BUILDING_SMAP_NETMAN)
86 (void)SmapDrivPrivData;
89#elif defined(BUILDING_SMAP_PS2IP)
90 (void)SmapDrivPrivData;
93#elif defined(BUILDING_SMAP_NETDEV)
94 sceInetFreePkt(&SmapDrivPrivData->m_devops, *
pbuf);
96 (void)SmapDrivPrivData;
101void SMapCommonLinkStateDown(
struct SmapDriverData *SmapDrivPrivData)
103#ifdef BUILDING_SMAP_MODULAR
107 HookTableAt0 = SmapDrivPrivData->HookTable[0];
108 if (HookTableAt0 != NULL && HookTableAt0->LinkStateDown != NULL) {
109 if (HookTableAt0->LinkStateDown()) {
115#if defined(BUILDING_SMAP_NETMAN)
116 NetManToggleNetIFLinkState(SmapDrivPrivData->NetIFID, NETMAN_NETIF_ETH_LINK_STATE_DOWN);
117#elif defined(BUILDING_SMAP_PS2IP)
118 (void)SmapDrivPrivData;
120 PS2IPLinkStateDown();
122 (void)SmapDrivPrivData;
126void SMapCommonLinkStateUp(
struct SmapDriverData *SmapDrivPrivData)
128#ifdef BUILDING_SMAP_MODULAR
132 HookTableAt0 = SmapDrivPrivData->HookTable[0];
133 if (HookTableAt0 != NULL && HookTableAt0->LinkStateUp != NULL) {
134 if (HookTableAt0->LinkStateUp()) {
140#if defined(BUILDING_SMAP_NETMAN)
141 NetManToggleNetIFLinkState(SmapDrivPrivData->NetIFID, NETMAN_NETIF_ETH_LINK_STATE_UP);
142#elif defined(BUILDING_SMAP_PS2IP)
143 (void)SmapDrivPrivData;
146#elif defined(BUILDING_SMAP_NETDEV)
147 SetEventFlag(SmapDrivPrivData->m_devops.evfid, sceInetDevEFP_StartDone);
149 (void)SmapDrivPrivData;
153void *SMapCommonStackAllocRxPacket(
struct SmapDriverData *SmapDrivPrivData, u16 LengthRounded,
void **payload)
156#ifdef BUILDING_SMAP_MODULAR
160 HookTableAt0 = SmapDrivPrivData->HookTable[0];
161 if (HookTableAt0 != NULL && HookTableAt0->StackAllocRxPacket != NULL) {
164 res = HookTableAt0->StackAllocRxPacket(LengthRounded, payload);
171#if defined(BUILDING_SMAP_NETMAN)
172 (void)SmapDrivPrivData;
173 pbuf = NetManNetProtStackAllocRxPacket(LengthRounded, payload);
174#elif defined(BUILDING_SMAP_PS2IP)
175 (void)SmapDrivPrivData;
176 struct pbuf *pbuf_struct;
179 pbuf = (
void *)pbuf_struct;
181 if (pbuf_struct != NULL &&
payload != NULL) {
184#elif defined(BUILDING_SMAP_NETDEV)
186 pkt = sceInetAllocPkt(&SmapDrivPrivData->m_devops, LengthRounded);
187 if (pkt != NULL &&
payload != NULL) {
192 (void)SmapDrivPrivData;
202void SMapStackEnQRxPacket(
struct SmapDriverData *SmapDrivPrivData,
void *
pbuf, u16 length)
204#ifdef BUILDING_SMAP_MODULAR
208 HookTableAt0 = SmapDrivPrivData->HookTable[0];
209 if (HookTableAt0 != NULL && HookTableAt0->EnQRxPacket != NULL) {
210 if (HookTableAt0->EnQRxPacket(
pbuf)) {
216#if defined(BUILDING_SMAP_NETMAN)
217 (void)SmapDrivPrivData;
219 NetManNetProtStackEnQRxPacket(
pbuf);
220#elif defined(BUILDING_SMAP_PS2IP)
221 (void)SmapDrivPrivData;
223 SMapLowLevelInput(
pbuf);
224#elif defined(BUILDING_SMAP_NETDEV)
229 pkt->wp = &pkt->rp[length];
230 sceInetPktEnQ(&SmapDrivPrivData->m_devops.rcvq, pkt);
233 (void)SmapDrivPrivData;