From patchwork Mon Feb 7 23:42:09 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sean Anderson X-Patchwork-Id: 1589625 X-Patchwork-Delegate: sjg@chromium.org Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: bilbo.ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=seco.com header.i=@seco.com header.a=rsa-sha256 header.s=selector1 header.b=qMCmy5R7; dkim-atps=neutral Authentication-Results: ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=lists.denx.de (client-ip=85.214.62.61; helo=phobos.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Received: from phobos.denx.de (phobos.denx.de [85.214.62.61]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by bilbo.ozlabs.org (Postfix) with ESMTPS id 4Jt2mv5pN4z9s09 for ; Tue, 8 Feb 2022 10:44:47 +1100 (AEDT) Received: from h2850616.stratoserver.net (localhost [IPv6:::1]) by phobos.denx.de (Postfix) with ESMTP id 029D783CAF; Tue, 8 Feb 2022 00:43:13 +0100 (CET) Authentication-Results: phobos.denx.de; dmarc=pass (p=reject dis=none) header.from=seco.com Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=u-boot-bounces@lists.denx.de Authentication-Results: phobos.denx.de; dkim=pass (2048-bit key; unprotected) header.d=seco.com header.i=@seco.com header.b="qMCmy5R7"; dkim-atps=neutral Received: by phobos.denx.de (Postfix, from userid 109) id CEE0083C0A; Tue, 8 Feb 2022 00:42:51 +0100 (CET) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on phobos.denx.de X-Spam-Level: X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,SPF_HELO_PASS,SPF_PASS, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.2 Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on2062a.outbound.protection.outlook.com [IPv6:2a01:111:f400:7e1a::62a]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by phobos.denx.de (Postfix) with ESMTPS id E08EF83C0D for ; Tue, 8 Feb 2022 00:42:39 +0100 (CET) Authentication-Results: phobos.denx.de; dmarc=pass (p=reject dis=none) header.from=seco.com Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=sean.anderson@seco.com ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=fYDGE+HU6UVuFisvnLF5LypDgbTNDNgnMU1TlBxI08laP74ORMLB+m82TKjod7n3Ky21lYY+VCibNZzCMiUjGJRwaYcQE4niPMfryY6weu29K0+POyVhu+g2iygKGeGHXM4OzJh9MZ19PVzeJLDrX3tEusKU0ujIQbecYldtr6BgH8E0GtSfHi2jtS1U7AI77bMGCzjivWhVCYsyC+NsGP0GKVfV2TCKHExxsowOPL5nDK7ZBt3Pb+aYX/UExUjhgH4yQmGMMZ+VgJfq4nGg0f/IDWxmeU0WyAUrgOARVfjrfq7O2nzlqlAFbGi4JlruaAU/VhFgqto3IQSnUUtSgw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=dg9y3SURFhNIhJysbXors48ET33fpSyrVYMnxwrJeNU=; b=FeMz//+o/EQv15I4EqXOQIXZYvLcXe2J05DZTFKrYyTjTbGtmAmDsO4/cpV5boekkU/uiMNXBi61O6v4BvX97NJdrtoTNvnj+K/hUVsVOkcxcdjMpu/L7a1EzULVaelCCarpBQI4QcKu3ltiwSi9SmiMXLveFaWOYI3V1vCpBlD55vShgxOOBZbN7SnO3npoIGufNa71pceZm+6IOEkbrwMGuEMS0xbed5Cd6mSCTqSV006dJTVbhOP7PtqAwgkrfy/2XRD4oYoyCIe6dSHNbWNYxeFy5ISxZSVlHZN74130curi8ft2NZIzvC7FYWtNMC9D7UaGJM94D2gI6oPtjw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=seco.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=dg9y3SURFhNIhJysbXors48ET33fpSyrVYMnxwrJeNU=; b=qMCmy5R7mIt9HYE0Id5k4DzCxQCYI6Df0vkHitIYXOgKnKC9zh1fiHXvovyfqR5K3HF+hN8V5c0AtK8OBUvYknCZiF+rm2+Hf3Yfau4gcOBseesp0Ol4JtlD9s7wZ0vrJNJrs+Yn6FPVNFJXO+DKVhMvIa/hVDadvG77lk8p7Xs9TG9J+FQC8AWEsM0u3QiruL5gPW3MELzj/Ys6eIjWeZfzb/oHciu0a07gpmJb4xBmG3NHyEiRmzktaMKm7RnYyEjbe8gEIl6cnJEGaddGXVm/bAb7ZqcajgeyO6nsejTcKeOBUB91ThSB7FXBmOq73br3h1dBbwZIAcYFK03zHw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=seco.com; Received: from DB7PR03MB4523.eurprd03.prod.outlook.com (2603:10a6:10:19::27) by AM9PR03MB7377.eurprd03.prod.outlook.com (2603:10a6:20b:26a::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4951.19; Mon, 7 Feb 2022 23:42:38 +0000 Received: from DB7PR03MB4523.eurprd03.prod.outlook.com ([fe80::ed45:f086:5e82:fccd]) by DB7PR03MB4523.eurprd03.prod.outlook.com ([fe80::ed45:f086:5e82:fccd%4]) with mapi id 15.20.4951.018; Mon, 7 Feb 2022 23:42:38 +0000 From: Sean Anderson To: u-boot@lists.denx.de, Simon Glass Cc: Ramon Fried , Joe Hershberger , Tom Rini , Heinrich Schuchardt , Mario Six , Sean Anderson Subject: [PATCH 11/14] net: Add support for reading mac addresses from nvmem cells Date: Mon, 7 Feb 2022 18:42:09 -0500 Message-Id: <20220207234212.685316-12-sean.anderson@seco.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20220207234212.685316-1-sean.anderson@seco.com> References: <20220207234212.685316-1-sean.anderson@seco.com> X-ClientProxiedBy: MN2PR13CA0024.namprd13.prod.outlook.com (2603:10b6:208:160::37) To DB7PR03MB4523.eurprd03.prod.outlook.com (2603:10a6:10:19::27) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: ff758244-74e4-4d9d-141d-08d9ea93865f X-MS-TrafficTypeDiagnostic: AM9PR03MB7377:EE_ X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:5797; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: o/7WWyy6p3UbKeaNugSe76r1ymJYJqt+d7/wVazpuJxFsopg5ED9Dmwhz+u5dfYF99td7UrvxYBhs4t2eO2SA5KPjdinj0jg7brxVAezPYdRFJ0x4QTC/cCxf6/Gr0359qDtFsm78KTVJnR+YmgT7MQX8wCutwLfdy+84IcE+iNDxnoZXmfnqwr5w6ARTors2iYVimiNRNmZC5HgW+Iq02GFWOqVYZALHH0ztu0blFKrZAkj7cLU6ohKXrWjnCR1ZxdM+4wxp43el5me8kcmJSjuMp6UU5CJYEPa6H6hj8cu+81gJ4Xq42FJX+mKy/+JT0wbbis0eTCOlwGU4He4OTOnSi3uFp/OJ0DRIF413OuFpEbdyYGVbTOwkqHbM0xT0PxuESGruVs+1eOkGU1gBalhPUpo3iLQR6mZZm+f0IphXlizCxaRBMSwvRtWBUGIZIGc+yZrKKggrYmvPUhXXWs4K3FqgygvxnQNFRPac/SRR/CO9ODnJFoEQuiyD2FTa4ivKcFcJNpxyYC3zrlSU+Ve9bbosLndjVEqOQhaEmQYgArxiIqeBd7d0pF+SBb4jR9HXXJ9Ov+XhJ2joSg1oukl10LTl1JU9IYWElNDiVywb1kX2FDHqu55Sp8yjdrv9HW0HJ0coXCyzKhVFMg4bSFLZEMrlX/qMC02LZNSK9cIBSmH7+RNGaJdPSdQJfzVmGus/o5CS26nHQN9H/ruXg== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DB7PR03MB4523.eurprd03.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230001)(366004)(8676002)(66476007)(66556008)(4326008)(66946007)(52116002)(36756003)(2906002)(6666004)(6506007)(83380400001)(8936002)(86362001)(44832011)(5660300002)(186003)(1076003)(26005)(6512007)(107886003)(38350700002)(508600001)(38100700002)(316002)(54906003)(6916009)(6486002)(2616005); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: jVQungPGSvWRUytFau9iWeBNIcyUAFZwLVbc9U8b1jAgc99GsZQs41WQCdvOhJF9GQBvNyIOmrI+rPD4trTwvMdYMi4V1KJdJ6hrVyTryCblJOomXW7N9FbosE+XZ9oYp4IXlp1JaRNBcycRntAYkayDh1sGu4BIBWLdS6opd3jnUr2LzsL/1FZOOtYTji36cs/Z83xfu2lNbJNRMytDePSEePFDWYRaBtunXqXgN1U1OJ0u4wGRP7gsnWqRQPw4DujWDTTDmFuiIHupcLIkhu3u4kAcakp2iS2tVdSvw/xlWlzQAa9kYnOi1nlJv/x/XoZ7LL13aRvLEC704J5PRXUEDqPItdhG0x94jTT4OTRfnf/7iB6AQzNbx8iluwe/xeD76oQOtfrnr16dubd2TgJ8NNdReygI68wzxMI0VXKFOLZzcFr0In/n29qLCKC6hAitD2w2KLciNrKAvFFtlRAdA7085C5UHDqSTjEApLxRwu0V4exdICZDV1gyEJQHtNETWlaDfAS4eWWh7d0YZBvdorjakSvZ8m7QDC78PjmdgIk9fXGE34BY5jjZ180NylgndPM1A4dusW9cDjWV3HI90l5ygZSnFyHvFpU0jdJml6ALs1gc/RCDnNmhc4ASvVpjPFvwfZz0/U5Jq1DeeGoHV14fCyJPCOkbC1sCkEotbO7jyOcxqQRjM1o7gXTHGxE7bD2iqEwCwUWGC7nZ+j0UfoaIR1fApb8nADAuNoLiOlq6RCa4MR38XwjlpmeMf/5z5eZSxPUo9agC0Fn2ntEqZ9Jq8MH5qd8j3QK5j4gUSxzGkymxr/W0s7dtB81xT2DV55ELzrGN3NPx0qS6yuQzowid7yh3F0dzz3G719UagpqIhmxvZCKQJ3NevZut4IYg4KPqy79VkpoCzbQvvXsHfHhn+rSDWauEz/pb1ronptnT5RqdrszdRZYa9RgHS42n/Bv4CKfVACh89wuyhdRstGnJ9N7KYpoldkb3gM4RccsvHf0JAO+Ncg2kekJCL8ISuZjPSzpd8bb4awBbyrZ9tTddKZBicPgHA2s9C84lbvbK1VABTM+IZ52ZL2Ax+fq1kZZEMfhGl7iwOusQeJTmQJckrng0ieJJRW6h9FJWhDvBnfUvLnxw8vHUeRnxFyIzQU0o//dTnIfoE8TWHMkR/WuJPFu7CXbkB7Zj5t3/lOyq49OHKJ+IxIRPkyTxncBaYLBF/SSwgoAds/Q2DnGk8C+oI27NcpsoxRyInQ7/R4JIhdi5R5Ahvv6+v59tziW6AKumFkLRA0FrB9JyawKz62R6SVOgScaE14ZkhJnyKiFbXSzpVc4VJiamHcFseaQ0QJ2EN1wxoEKX/LRiuWExuoLMfroV0fRgHVHkt5fIBGT/qy6I6OIn4VyXdGG543jfFVtkHvT2QCXx8Ajp4pG/XTMIPwHYrSwu7XcZ78gMg218KMjyQCVEDy6XQDrTcSPcGxol7+H7F9ZIFD3fPuPYbX7khjENu78FDJd10AgfGPAb2bI0aLigrt85f0UgtXLqXD/SyNHccvC1kAclpbivYfEjABpRp5v2QTiIkRzD/hg/hlRvUiSHStRdkMUmMSucaC5Q17lpw67VWV19+pHJDTpshNltZl1OfPbi+8E= X-OriginatorOrg: seco.com X-MS-Exchange-CrossTenant-Network-Message-Id: ff758244-74e4-4d9d-141d-08d9ea93865f X-MS-Exchange-CrossTenant-AuthSource: DB7PR03MB4523.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Feb 2022 23:42:38.6043 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: bebe97c3-6438-442e-ade3-ff17aa50e733 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: RJTMcJL+pXG4vzQMZDYhYbffFRxeAuy6ohn1jgB3wLFPYuKCv3J61rjGtcYlZBX+tiezxOADStb2NVuFnIsa1Q== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR03MB7377 X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.39 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" X-Virus-Scanned: clamav-milter 0.103.5 at phobos.denx.de X-Virus-Status: Clean This adds support for reading mac addresses from the "mac-address" nvmem cell. If there is no (local-)mac-address property, then we will try reading from an nvmem cell. For some existing examples of this property, refer to imx8mn.dtsi and imx8mp.dtsi. Unfortunately, fuse drivers have not yet been converted to DM. Signed-off-by: Sean Anderson Reviewed-by: Simon Glass --- net/eth-uclass.c | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/net/eth-uclass.c b/net/eth-uclass.c index 58c308f332..211e88fbbe 100644 --- a/net/eth-uclass.c +++ b/net/eth-uclass.c @@ -13,6 +13,7 @@ #include #include #include +#include #include #include #include @@ -499,17 +500,21 @@ static bool eth_dev_get_mac_address(struct udevice *dev, u8 mac[ARP_HLEN]) { #if CONFIG_IS_ENABLED(OF_CONTROL) const uint8_t *p; + struct nvmem_cell mac_cell; p = dev_read_u8_array_ptr(dev, "mac-address", ARP_HLEN); if (!p) p = dev_read_u8_array_ptr(dev, "local-mac-address", ARP_HLEN); - if (!p) + if (p) { + memcpy(mac, p, ARP_HLEN); + return true; + } + + if (nvmem_cell_get_by_name(dev, "mac-address", &mac_cell)) return false; - memcpy(mac, p, ARP_HLEN); - - return true; + return !nvmem_cell_read(&mac_cell, mac, ARP_HLEN); #else return false; #endif