[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20221130174259.1591567-1-bmasney@redhat.com>
Date: Wed, 30 Nov 2022 12:42:59 -0500
From: Brian Masney <bmasney@...hat.com>
To: irusskikh@...vell.com, davem@...emloft.net, edumazet@...gle.com,
kuba@...nel.org, pabeni@...hat.com
Cc: netdev@...r.kernel.org, linux-kernel@...r.kernel.org,
cth451@...il.com
Subject: [PATCH] net: atlantic: fix check for invalid ethernet addresses
The Qualcomm sa8540p automotive development board (QDrive3) has an
Aquantia NIC wired over PCIe. The ethernet MAC address assigned to
all of the boards in our lab is 00:17:b6:00:00:00. The existing
check in aq_nic_is_valid_ether_addr() only checks for leading zeros
in the MAC address. Let's update the check to also check for trailing
zeros in the MAC address so that a random MAC address is assigned
in this case.
Signed-off-by: Brian Masney <bmasney@...hat.com>
---
drivers/net/ethernet/aquantia/atlantic/aq_nic.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/drivers/net/ethernet/aquantia/atlantic/aq_nic.c b/drivers/net/ethernet/aquantia/atlantic/aq_nic.c
index 06508eebb585..c9c850bbc805 100644
--- a/drivers/net/ethernet/aquantia/atlantic/aq_nic.c
+++ b/drivers/net/ethernet/aquantia/atlantic/aq_nic.c
@@ -293,7 +293,8 @@ static bool aq_nic_is_valid_ether_addr(const u8 *addr)
/* Some engineering samples of Aquantia NICs are provisioned with a
* partially populated MAC, which is still invalid.
*/
- return !(addr[0] == 0 && addr[1] == 0 && addr[2] == 0);
+ return !(addr[0] == 0 && addr[1] == 0 && addr[2] == 0) &&
+ !(addr[3] == 0 && addr[4] == 0 && addr[5] == 0);
}
int aq_nic_ndev_register(struct aq_nic_s *self)
--
2.38.1
Powered by blists - more mailing lists