[U-Boot] [RESEND PATCH v2 2/5] net: pch_gbe: Fix rx descriptor buffer addresses

Daniel Schwierzeck daniel.schwierzeck at gmail.com
Sun Apr 30 19:57:06 UTC 2017


From: Paul Burton <paul.burton at imgtec.com>

The loop to set up buffer addresses in rx descriptors always operated on
descriptor 0, rather than on each descriptor sequentially. Fix this in
order to setup correct buffer addresses for each descriptor.

Signed-off-by: Paul Burton <paul.burton at imgtec.com>
Signed-off-by: Daniel Schwierzeck <daniel.schwierzeck at gmail.com>
Reviewed-by: Bin Meng <bmeng.cn at gmail.com>
Tested-by: Bin Meng <bmeng.cn at gmail.com>

---

Changes in v2:
- move the switch to dm_pci_virt_to_mem() in pch_gbe_rx_descs_init()
  to the next patch as suggested by Bin Meng

 drivers/net/pch_gbe.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/net/pch_gbe.c b/drivers/net/pch_gbe.c
index 4aac0f67a0..7d15616356 100644
--- a/drivers/net/pch_gbe.c
+++ b/drivers/net/pch_gbe.c
@@ -117,8 +117,8 @@ static void pch_gbe_rx_descs_init(struct udevice *dev)
 
 	memset(rx_desc, 0, sizeof(struct pch_gbe_rx_desc) * PCH_GBE_DESC_NUM);
 	for (i = 0; i < PCH_GBE_DESC_NUM; i++)
-		rx_desc->buffer_addr = dm_pci_phys_to_mem(priv->dev,
-			(ulong)(priv->rx_buff[i]));
+		rx_desc[i].buffer_addr = dm_pci_phys_to_mem(priv->dev,
+			priv->rx_buff[i]);
 
 	writel(dm_pci_phys_to_mem(priv->dev, (ulong)rx_desc),
 	       &mac_regs->rx_dsc_base);
-- 
2.11.0



More information about the U-Boot mailing list