All of lore.kernel.org
 help / color / mirror / Atom feed
* [U-Boot] [RESEND PATCH 1/2] net: rtl8169: Implement ->hwaddr_write() callback
@ 2019-04-16 16:20 Thierry Reding
  2019-04-16 16:20 ` [U-Boot] [RESEND PATCH 2/2] net: rtl8169: Support RTL-8168h/8111h Thierry Reding
                   ` (2 more replies)
  0 siblings, 3 replies; 9+ messages in thread
From: Thierry Reding @ 2019-04-16 16:20 UTC (permalink / raw)
  To: u-boot

From: Thierry Reding <treding@nvidia.com>

Implement this callback that allows the MAC address to be set for the
Ethernet card. This is necessary in order for the device to be able to
receive packets for the MAC address that U-Boot advertises.

Signed-off-by: Thierry Reding <treding@nvidia.com>
---
 drivers/net/rtl8169.c | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

diff --git a/drivers/net/rtl8169.c b/drivers/net/rtl8169.c
index a78f3d233f1a..27e27b34176b 100644
--- a/drivers/net/rtl8169.c
+++ b/drivers/net/rtl8169.c
@@ -941,6 +941,23 @@ static void rtl_halt(struct eth_device *dev)
 }
 #endif
 
+#ifdef CONFIG_DM_ETH
+static int rtl8169_write_hwaddr(struct udevice *dev)
+{
+	struct eth_pdata *plat = dev_get_platdata(dev);
+	unsigned int i;
+
+	RTL_W8(Cfg9346, Cfg9346_Unlock);
+
+	for (i = 0; i < MAC_ADDR_LEN; i++)
+		RTL_W8(MAC0 + i, plat->enetaddr[i]);
+
+	RTL_W8(Cfg9346, Cfg9346_Lock);
+
+	return 0;
+}
+#endif
+
 /**************************************************************************
 INIT - Look for an adapter, this routine's visible to the outside
 ***************************************************************************/
@@ -1195,6 +1212,7 @@ static const struct eth_ops rtl8169_eth_ops = {
 	.send	= rtl8169_eth_send,
 	.recv	= rtl8169_eth_recv,
 	.stop	= rtl8169_eth_stop,
+	.write_hwaddr = rtl8169_write_hwaddr,
 };
 
 static const struct udevice_id rtl8169_eth_ids[] = {
-- 
2.21.0

^ permalink raw reply related	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2019-05-14 20:03 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-04-16 16:20 [U-Boot] [RESEND PATCH 1/2] net: rtl8169: Implement ->hwaddr_write() callback Thierry Reding
2019-04-16 16:20 ` [U-Boot] [RESEND PATCH 2/2] net: rtl8169: Support RTL-8168h/8111h Thierry Reding
2019-04-16 16:36   ` Joe Hershberger
2019-05-14 20:03   ` [U-Boot] " Joe Hershberger
2019-04-16 16:36 ` [U-Boot] [RESEND PATCH 1/2] net: rtl8169: Implement ->hwaddr_write() callback Joe Hershberger
2019-04-25 13:31   ` Thierry Reding
2019-04-25 13:47     ` Joe Hershberger
2019-05-09 21:15     ` Joe Hershberger
2019-05-14 20:03 ` [U-Boot] " Joe Hershberger

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.