sdk-core v2026.11.05
PS2 SDK - core tier (build-critical EE/IOP modules)
Loading...
Searching...
No Matches
netman_rpc.h
Go to the documentation of this file.
1
6
7#ifndef __NETMAN_RPC_H__
8#define __NETMAN_RPC_H__
9
10#include <tamtypes.h>
11#include <netman.h>
12
13#define NETMAN_RPC_NUMBER 0x00004239
14#define NETMAN_SIFCMD_ID 0x8000000D
15
16enum NETMAN_EE_RPC_FUNC_NUMS {
17 NETMAN_EE_RPC_FUNC_INIT = 0x00,
18 NETMAN_EE_RPC_FUNC_DEINIT,
19 NETMAN_EE_RPC_FUNC_HANDLE_PACKETS,
20 NETMAN_EE_RPC_FUNC_HANDLE_LINK_STATUS_CHANGE,
21};
22
23enum NETMAN_IOP_RPC_FUNC_NUMS {
24 NETMAN_IOP_RPC_FUNC_INIT = 0x00,
25 NETMAN_IOP_RPC_FUNC_DEINIT,
26 NETMAN_IOP_RPC_FUNC_REG_NETWORK_STACK,
27 NETMAN_IOP_RPC_FUNC_UNREG_NETWORK_STACK,
28 NETMAN_IOP_RPC_FUNC_IOCTL,
29 NETMAN_IOP_RPC_FUNC_SET_MAIN_NETIF,
30 NETMAN_IOP_RPC_FUNC_QUERY_MAIN_NETIF,
31 NETMAN_IOP_RPC_FUNC_SET_LINK_MODE,
32};
33
35{
36 s32 result;
37 struct NetManBD *FrameBufferStatus;
38};
39
41{
42 struct NetManBD *FrameBufferStatus;
43};
44
46{
47 s32 result;
48 void *FrameBuffer;
49 struct NetManBD *FrameBufferStatus;
50};
51
53{
54 s32 result;
55 char name[NETMAN_NETIF_NAME_MAX_LEN];
56};
57
58#define NETMAN_MAX_FRAME_SIZE 1536 // Maximum 1518 bytes, rounded up to nearest multiple of 16-byte units + 16 (for alignment)
59#define NETMAN_RPC_BLOCK_SIZE 64 // Small sizes will result in poorer performance and perhaps stability issues (due to resource exhaustion).
60
62{
63 u32 command;
64 u8 args[64];
65 u32 args_len;
66 void *output;
67 u32 length;
68};
69
71{
72 s32 result;
73 u8 output[64];
74};
75
77{
78 u8 id;
79 u8 offset; // For alignment correction on the EE (unused for IOP->EE).
80 u16 length;
81};
82
84{
85 u16 length; // When set to 0, buffer is available for use by MAC driver.
86 u16 offset; // For alignment correction on the EE (unused for IOP->EE).
87 void *packet; // Unused for EE->IOP.
88 void *payload; // Pointer to the data section of the packet. Unused for EE->IOP.
89 u32 unused;
90};
91
92#endif /* __NETMAN_RPC_H__ */