[rtems-libbsd commit] if_atsam: Do not disable the Ethernet CRC
Sebastian Huber
sebh at rtems.org
Wed May 11 13:53:51 UTC 2022
Module: rtems-libbsd
Branch: 6-freebsd-12
Commit: adda3a5a6df1bdc1a1934ea5ba290f5b29cef0d0
Changeset: http://git.rtems.org/rtems-libbsd/commit/?id=adda3a5a6df1bdc1a1934ea5ba290f5b29cef0d0
Author: Sebastian Huber <sebastian.huber at embedded-brains.de>
Date: Wed May 4 15:31:45 2022 +0200
if_atsam: Do not disable the Ethernet CRC
The Ethernet CRC and padding must be always generated by the MAC.
Update #4652.
---
rtemsbsd/sys/dev/atsam/if_atsam.c | 9 +--------
1 file changed, 1 insertion(+), 8 deletions(-)
diff --git a/rtemsbsd/sys/dev/atsam/if_atsam.c b/rtemsbsd/sys/dev/atsam/if_atsam.c
index 21d639d1..4ac38e96 100644
--- a/rtemsbsd/sys/dev/atsam/if_atsam.c
+++ b/rtemsbsd/sys/dev/atsam/if_atsam.c
@@ -678,7 +678,6 @@ static bool if_atsam_send_packet(if_atsam_softc *sc, struct mbuf *m)
uint32_t tmp_val = 0;
Gmac *pHw = sc->Gmac_inst.gGmacd.pHw;
bool success;
- int csum_flags = m->m_pkthdr.csum_flags;
if_atsam_tx_bd_cleanup(sc);
/* Wait for interrupt in case no buffer descriptors are available */
@@ -725,15 +724,9 @@ static bool if_atsam_send_packet(if_atsam_softc *sc, struct mbuf *m)
* processed
*/
if (m == NULL) {
+ _ARM_Data_synchronization_barrier();
tmp_val |= GMAC_TX_SET_EOF;
tmp_val &= ~GMAC_TX_SET_USED;
- if ((csum_flags & (CSUM_IP | CSUM_TCP | CSUM_UDP |
- CSUM_TCP_IPV6 | CSUM_UDP_IPV6)) != 0) {
- start_packet_tx_bd->status.bm.bNoCRC = 0;
- } else {
- start_packet_tx_bd->status.bm.bNoCRC = 1;
- }
- _ARM_Data_synchronization_barrier();
cur->status.val = tmp_val;
start_packet_tx_bd->status.val &= ~GMAC_TX_SET_USED;
_ARM_Data_synchronization_barrier();
More information about the vc
mailing list