]> git.ipfire.org Git - thirdparty/u-boot.git/commitdiff
net: rswitch: Initialize RX DMA descriptor .die_dt field to DT_FEMPTY
authorMarek Vasut <marek.vasut+renesas@mailbox.org>
Mon, 27 Oct 2025 16:45:33 +0000 (17:45 +0100)
committerMarek Vasut <marek.vasut+renesas@mailbox.org>
Thu, 6 Nov 2025 19:08:37 +0000 (20:08 +0100)
Empty RX DMA descriptor must contain .die_dt field set to DT_FEMPTY,
because hardware DMA overwrites this field to non-DT_FEMPTY when data
are received, and the .recv callback tests the content of RX descriptor
.die_dt field to determine whether hardware did receive any data and
updated the .die_dt field, and based on that information, receives a
packet or not. Fix the incorrect RX DMA descriptor initialization to
assure the .recv callback always works correctly.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
drivers/net/rswitch.c

index 3f9052e0a8999f00ea8d8232d0b9d5e668d2bdce..f787aa4180dddeddac1623941e42d42266ba9aec 100644 (file)
@@ -601,7 +601,7 @@ static void rswitch_rx_desc_init(struct rswitch_port_priv *priv)
        priv->rx_desc_index = 0;
 
        for (i = 0; i < RSWITCH_NUM_RX_DESC; i++) {
-               priv->rx_desc[i].data.die_dt = DT_EEMPTY;
+               priv->rx_desc[i].data.die_dt = DT_FEMPTY;
                priv->rx_desc[i].data.info_ds = PKTSIZE_ALIGN;
                packet_addr = (uintptr_t)priv->rx_desc[i].packet;
                priv->rx_desc[i].data.dptrl = lower_32_bits(packet_addr);