diff options
author | Oleksij Rempel <o.rempel@pengutronix.de> | 2022-04-13 10:22:05 +0200 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2022-04-19 09:11:04 +0200 |
commit | 2bf8244b52438479f6d3c082252e36094c7cd548 (patch) | |
tree | 7ee9fa100f7b87098a231166f3f4dd8d93959cdb /net | |
parent | f50be0f9b97774191fef73585a4454f73b2ded67 (diff) | |
download | barebox-2bf8244b52438479f6d3c082252e36094c7cd548.tar.gz barebox-2bf8244b52438479f6d3c082252e36094c7cd548.tar.xz |
add ethlog command
It is kind of tcpdump or tshark for barebox. Instead of starting
application it will let barebox dump everything to the console by still
allowing to use other application.
Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de>
Link: https://lore.barebox.org/20220413082205.429509-15-o.rempel@pengutronix.de
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'net')
-rw-r--r-- | net/eth.c | 4 | ||||
-rw-r--r-- | net/net.c | 3 |
2 files changed, 5 insertions, 2 deletions
@@ -245,7 +245,7 @@ int eth_send(struct eth_device *edev, void *packet, int length) led_trigger_network(LED_TRIGGER_NET_TX); - ret = edev->send(edev, packet, length); + ret = eth_send_raw(edev, packet, length); slice_release(eth_device_slice(edev)); @@ -272,7 +272,7 @@ static void eth_do_work(struct eth_device *edev) list_for_each_entry_safe(q, tmp, &edev->send_queue, list) { led_trigger_network(LED_TRIGGER_NET_TX); - edev->send(edev, q->data, q->length); + eth_send_raw(edev, q->data, q->length); list_del(&q->list); free(q->data); free(q); @@ -708,6 +708,9 @@ int net_receive(struct eth_device *edev, unsigned char *pkt, int len) goto out; } + if (edev->rx_monitor) + edev->rx_monitor(edev, pkt, len); + if (edev->rx_preprocessor) { ret = edev->rx_preprocessor(edev, &pkt, &len); if (ret == -ENOMSG) |