
On 18/06/2019 03:37, Samuel Mendoza-Jonas wrote:
This series introduces support for the NC-SI protocol to u-boot, functionality which so far has only been available in vendor trees.
Would it be complex to add a romulus DT and config file ?
Thanks,
C.
NC-SI (Network Controller Sideband Interface) is a protocol to manage a sideband connection to a proper network interface, for example a BMC (Baseboard Management Controller) sharing the NIC of the host system. Probing and configuration occurs by communicating with the "remote" NIC via NC-SI control frames (Ethernet header 0x88f8).
Since the RFC[0] the changes have been split out into a few different patches to make the overall changes more obvious. Additionally a few small improvements have been added including adding a check to see if NC-SI is already configured, and marking the PHY bus "reset" as invalid since it does not define a bus.
An example of NC-SI setup before a normal network command:
=> dhcp net_loop: configuring NCSI first ethernet@1e660000: link up, 100 Mbps full-duplex mac:0c:c4:7a:d5:48:43 NCSI: probing channels NCSI: configuring channel 0 NCSI: configuration done! BOOTP broadcast 1 BOOTP broadcast 2 DHCP client bound to address 10.61.161.188 (255 ms)
Changes in v2:
- Fix endianess issue when setting MAC address
- Make checksum offsets easier to read
- Instantiate per-phy ncsi_priv structures
- Update ncsi command help text
- Used update ncsi-pkt.h version to include SPDX header
Samuel Mendoza-Jonas (4): phy: Add support for the NC-SI protocol phy: Include NC-SI in phy setup net/ftgmac100: Add NC-SI mode support net: NC-SI setup and handling
cmd/Kconfig | 8 + cmd/net.c | 18 + drivers/net/ftgmac100.c | 39 +- drivers/net/phy/Kconfig | 4 + drivers/net/phy/Makefile | 1 + drivers/net/phy/ncsi.c | 896 +++++++++++++++++++++++++++++++++++++++ drivers/net/phy/phy.c | 7 + include/net.h | 3 +- include/net/ncsi-pkt.h | 442 +++++++++++++++++++ include/net/ncsi.h | 14 + include/phy.h | 12 + include/phy_interface.h | 2 + net/net.c | 27 +- 13 files changed, 1461 insertions(+), 12 deletions(-) create mode 100644 drivers/net/phy/ncsi.c create mode 100644 include/net/ncsi-pkt.h create mode 100644 include/net/ncsi.h