Ethernet services: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
No edit summary |
||
(One intermediate revision by the same user not shown) | |||
Line 14: | Line 14: | ||
== CreateDriverService == | == CreateDriverService == | ||
No input. Returns an [[#ISfDriverService]]. | No input. Returns an [[#ISfDriverService]]. | ||
Line 27: | Line 25: | ||
! Cmd || Name | ! Cmd || Name | ||
|- | |- | ||
| 0 || [[# | | 0 || [[#OpenNetworkInterface]] | ||
|- | |- | ||
| 128 || | | 128 || GetDriverInfo | ||
|- | |- | ||
| 129 || | | 129 || GetNetworkInterfaceList | ||
|- | |- | ||
| 130 || | | 130 || GetStateChangedEvent | ||
|- | |- | ||
| 131 || | | 131 || GetNetworkInterfaceListUpdatedEvent | ||
|- | |- | ||
| 384 || | | 384 || Ioctl | ||
|- | |- | ||
| 385 || | | 385 || IoctlRead | ||
|- | |- | ||
| 386 || | | 386 || IoctlWrite | ||
|- | |- | ||
| 387 || | | 387 || IoctlReadWrite | ||
|- | |- | ||
| 388 || | | 388 || IoctlSetHandle | ||
|- | |- | ||
| 389 || | | 389 || IoctlGetHandle | ||
|} | |} | ||
=== | === OpenNetworkInterface === | ||
Takes a type-0x21 input buffer. Returns an [[#ISfNetworkInterfaceService]]. | Takes a type-0x21 input buffer. Returns an [[#ISfNetworkInterfaceService]]. | ||
Line 64: | Line 60: | ||
! Cmd || Name | ! Cmd || Name | ||
|- | |- | ||
| 0 || | | 0 || Duplicate | ||
|- | |- | ||
| 1 || | | 1 || BringUp | ||
|- | |- | ||
| 2 || | | 2 || BringDown | ||
|- | |- | ||
| 3 || | | 3 || StartCommunication | ||
|- | |- | ||
| 4 || | | 4 || StopCommunication | ||
|- | |- | ||
| 5 || | | 5 || CreateSharedMemory | ||
|- | |- | ||
| 6 || | | 6 || DestroySharedMemory | ||
|- | |- | ||
| 128 || | | 128 || GetNetworkInterfaceInfo | ||
|- | |- | ||
| 129 || | | 129 || GetStateChangedEvent | ||
|- | |- | ||
| 130 || | | 130 || GetRxQueue | ||
|- | |- | ||
| 131 || | | 131 || GetTxQueue | ||
|- | |- | ||
| 256 || | | 256 || SetMacAddress | ||
|- | |- | ||
| 257 || | | 257 || SetMru | ||
|- | |- | ||
| 258 || | | 258 || SetMtu | ||
|- | |- | ||
| 259 || | | 259 || SetFeatures | ||
|- | |- | ||
| 260 || | | 260 || SetMulticastFilter | ||
|- | |- | ||
| 261 || | | 261 || SetRxBufferSize | ||
|- | |- | ||
| 262 || | | 262 || SetTxBufferSize | ||
|- | |- | ||
| 384 || | | 384 || Ioctl | ||
|- | |- | ||
| 385 || | | 385 || IoctlRead | ||
|- | |- | ||
| 386 || | | 386 || IoctlWrite | ||
|- | |- | ||
| 387 || | | 387 || IoctlReadWrite | ||
|- | |- | ||
| 388 || | | 388 || IoctlSetHandle | ||
|- | |- | ||
| 389 || | | 389 || IoctlGetHandle | ||
|} | |} | ||
Line 120: | Line 116: | ||
! System Version || VendorId || ProductId || Description | ! System Version || VendorId || ProductId || Description | ||
|- | |- | ||
| || 0x057E || 0x201B || | | || 0x057E || 0x201B || RTL8154B CrdA NIC | ||
|- | |- | ||
| || 0x0B95 || 0x1790 || AX88179 Gigabit Ethernet | | || 0x0B95 || 0x1790 || AX88179 Gigabit Ethernet |
Latest revision as of 20:50, 12 April 2024
This is a refactored sysmodule added with [15.0.0+] for handling ethernet communication.
eth:nd
This is "nn::anif::detail::ISfDriverServiceCreator".
This was added with [15.0.0+].
Cmd | Name |
---|---|
0 | #CreateDriverService |
CreateDriverService
No input. Returns an #ISfDriverService.
ISfDriverService
This is "nn::anif::detail::ISfDriverService".
This was added with [15.0.0+].
Cmd | Name |
---|---|
0 | #OpenNetworkInterface |
128 | GetDriverInfo |
129 | GetNetworkInterfaceList |
130 | GetStateChangedEvent |
131 | GetNetworkInterfaceListUpdatedEvent |
384 | Ioctl |
385 | IoctlRead |
386 | IoctlWrite |
387 | IoctlReadWrite |
388 | IoctlSetHandle |
389 | IoctlGetHandle |
OpenNetworkInterface
Takes a type-0x21 input buffer. Returns an #ISfNetworkInterfaceService.
ISfNetworkInterfaceService
This is "nn::anif::detail::ISfNetworkInterfaceService".
This was added with [15.0.0+].
Cmd | Name |
---|---|
0 | Duplicate |
1 | BringUp |
2 | BringDown |
3 | StartCommunication |
4 | StopCommunication |
5 | CreateSharedMemory |
6 | DestroySharedMemory |
128 | GetNetworkInterfaceInfo |
129 | GetStateChangedEvent |
130 | GetRxQueue |
131 | GetTxQueue |
256 | SetMacAddress |
257 | SetMru |
258 | SetMtu |
259 | SetFeatures |
260 | SetMulticastFilter |
261 | SetRxBufferSize |
262 | SetTxBufferSize |
384 | Ioctl |
385 | IoctlRead |
386 | IoctlWrite |
387 | IoctlReadWrite |
388 | IoctlSetHandle |
389 | IoctlGetHandle |
Notes
CreateInterfaceAvailableEvent is used with an all-zero DeviceFilter. QueryAvailableInterfaces is used multiple times, each time with flags=0x3. The used filters include at least the following:
System Version | VendorId | ProductId | Description |
---|---|---|---|
0x057E | 0x201B | RTL8154B CrdA NIC | |
0x0B95 | 0x1790 | AX88179 Gigabit Ethernet | |
0x0B95 | 0x7720 | AX88772 | |
0x2001 | 0x4A00 | DUB-1312 Gigabit Ethernet Adapter | |
0x0BDA | 0x8153 | RTL8153 Gigabit Ethernet Adapter |