cmd: Add ncsi command

Adds an "ncsi" command to manually start NC-SI configuration.

Signed-off-by: Samuel Mendoza-Jonas <sam@mendozajonas.com>
Signed-off-by: Joel Stanley <joel@jms.id.au>
Reviewed-by: Cédric Le Goater <clg@kaod.org>
This commit is contained in:
Samuel Mendoza-Jonas 2022-08-08 21:46:04 +09:30 committed by Tom Rini
parent 09bd3d0b0a
commit 4b290d4a75
3 changed files with 31 additions and 0 deletions

View file

@ -1842,6 +1842,14 @@ config CMD_LINK_LOCAL
help
Acquire a network IP address using the link-local protocol
config CMD_NCSI
bool "ncsi"
depends on PHY_NCSI
help
Manually configure the attached NIC via NC-SI.
Normally this happens automatically before other network
operations.
endif
config CMD_ETHSW

View file

@ -16,6 +16,7 @@
#include <net.h>
#include <net/udp.h>
#include <net/sntp.h>
#include <net/ncsi.h>
static int netboot_common(enum proto_t, struct cmd_tbl *, int, char * const []);
@ -566,3 +567,24 @@ U_BOOT_CMD(
"list - list available devices\n"
);
#endif // CONFIG_DM_ETH
#if defined(CONFIG_CMD_NCSI)
static int do_ncsi(struct cmd_tbl *cmdtp, int flag, int argc, char * const argv[])
{
if (!phy_interface_is_ncsi() || !ncsi_active()) {
printf("Device not configured for NC-SI\n");
return CMD_RET_FAILURE;
}
if (net_loop(NCSI) < 0)
return CMD_RET_FAILURE;
return CMD_RET_SUCCESS;
}
U_BOOT_CMD(
ncsi, 1, 1, do_ncsi,
"Configure attached NIC via NC-SI",
""
);
#endif /* CONFIG_CMD_NCSI */

View file

@ -434,6 +434,7 @@ int net_loop(enum proto_t protocol)
} else {
eth_init_state_only();
}
restart:
#ifdef CONFIG_USB_KEYBOARD
net_busy_flag = 0;