From f5b691fae5f418f4e1944d51930878f0af726d11 Mon Sep 17 00:00:00 2001 From: Markus Koch Date: Tue, 2 Sep 2025 12:46:28 +0200 Subject: [PATCH] Revert "eth+ipv4prot: Fix protocol arbitration" This reverts commit 9258edd0d97ebcf924d81e2db2b9bdae0b9e575a. We cannot just look at tx_en as there will be one more ack strobe after its deassertion, which needs to get through to the real source. Reopens #13. --- trashernet/trashernet_eth.vhd | 5 +---- trashernet/trashernet_ipv4prot.vhd | 5 +---- 2 files changed, 2 insertions(+), 8 deletions(-) diff --git a/trashernet/trashernet_eth.vhd b/trashernet/trashernet_eth.vhd index a0a3e7b..0827b90 100644 --- a/trashernet/trashernet_eth.vhd +++ b/trashernet/trashernet_eth.vhd @@ -141,10 +141,7 @@ begin end if; when TXD => - if (not mac_in.tx_mac_data_en or not mac_out.tx_active) then - state <= IDLE; - sel <= SEL_ETH_I; -- To avoid arbitration errors, always select the highest priority one by default - end if; + state <= IDLE when (not mac_in.tx_mac_data_en or not mac_out.tx_active); end case; end if; end process arb; diff --git a/trashernet/trashernet_ipv4prot.vhd b/trashernet/trashernet_ipv4prot.vhd index 974d452..77c2a30 100644 --- a/trashernet/trashernet_ipv4prot.vhd +++ b/trashernet/trashernet_ipv4prot.vhd @@ -105,10 +105,7 @@ begin end loop; when TXD => - if not ipv4_in.tx_en then - state <= IDLE; - tx_sel <= ipv4_protocol_in'left; -- To avoid arbitration errors, always select the highest priority one by default - end if; + state <= IDLE when (not ipv4_in.tx_en); end case; end if; end process arb;