net/ncsi: Resource management
NCSI spec (DSP0222) defines several objects: package, channel, mode,
filter, version and statistics etc. This introduces the data structs
to represent those objects and implement functions to manage them.
Also, this introduces CONFIG_NET_NCSI for the newly implemented NCSI
stack.
* The user (e.g. netdev driver) dereference NCSI device by
"struct ncsi_dev", which is embedded to "struct ncsi_dev_priv".
The later one is used by NCSI stack internally.
* Every NCSI device can have multiple packages simultaneously, up
to 8 packages. It's represented by "struct ncsi_package" and
identified by 3-bits ID.
* Every NCSI package can have multiple channels, up to 32. It's
represented by "struct ncsi_channel" and identified by 5-bits ID.
* Every NCSI channel has version, statistics, various modes and
filters. They are represented by "struct ncsi_channel_version",
"struct ncsi_channel_stats", "struct ncsi_channel_mode" and
"struct ncsi_channel_filter" separately.
* Apart from AEN (Asynchronous Event Notification), the NCSI stack
works in terms of command and response. This introduces "struct
ncsi_req" to represent a complete NCSI transaction made of NCSI
request and response.
link: https://www.dmtf.org/sites/default/files/standards/documents/DSP0222_1.1.0.pdf
Signed-off-by: Gavin Shan <gwshan@linux.vnet.ibm.com>
Acked-by: Joel Stanley <joel@jms.id.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-07-19 08:54:16 +07:00
|
|
|
#
|
|
|
|
# Configuration for NCSI support
|
|
|
|
#
|
|
|
|
|
|
|
|
config NET_NCSI
|
|
|
|
bool "NCSI interface support"
|
|
|
|
depends on INET
|
|
|
|
---help---
|
|
|
|
This module provides NCSI (Network Controller Sideband Interface)
|
|
|
|
support. Enable this only if your system connects to a network
|
|
|
|
device via NCSI and the ethernet driver you're using supports
|
|
|
|
the protocol explicitly.
|
2018-10-17 02:13:19 +07:00
|
|
|
config NCSI_OEM_CMD_GET_MAC
|
|
|
|
bool "Get NCSI OEM MAC Address"
|
|
|
|
depends on NET_NCSI
|
|
|
|
---help---
|
|
|
|
This allows to get MAC address from NCSI firmware and set them back to
|
|
|
|
controller.
|