diff mbox series

[net-next] Revert "of: net: support NVMEM cells with MAC in text format"

Message ID 20220111081206.2393560-1-michael@walle.cc (mailing list archive)
State Accepted
Commit 3486eb774f9d6c2cafcfed31936c9a9b7adf8f05
Delegated to: Netdev Maintainers
Headers show
Series [net-next] Revert "of: net: support NVMEM cells with MAC in text format" | expand

Checks

Context Check Description
netdev/tree_selection success Clearly marked for net-next
netdev/fixes_present success Fixes tag not required for -next series
netdev/subject_prefix success Link
netdev/cover_letter success Single patches do not need cover letters
netdev/patch_count success Link
netdev/header_inline success No static functions without inline keyword in header files
netdev/build_32bit success Errors and warnings before: 2 this patch: 2
netdev/cc_maintainers success CCed 6 of 6 maintainers
netdev/build_clang success Errors and warnings before: 22 this patch: 22
netdev/module_param success Was 0 now: 0
netdev/verify_signedoff success Signed-off-by tag matches author and committer
netdev/verify_fixes success No Fixes tag
netdev/build_allmodconfig_warn success Errors and warnings before: 7 this patch: 7
netdev/checkpatch success total: 0 errors, 0 warnings, 0 checks, 50 lines checked
netdev/kdoc success Errors and warnings before: 0 this patch: 0
netdev/source_inline success Was 0 now: 0

Commit Message

Michael Walle Jan. 11, 2022, 8:12 a.m. UTC
This reverts commit 9ed319e411915e882bb4ed99be3ae78667a70022.

We can already post process a nvmem cell value in a particular driver.
Instead of having yet another place to convert the values, the post
processing hook of the nvmem provider should be used in this case.

Signed-off-by: Michael Walle <michael@walle.cc>
---

As mentioned in [1] I think we should discuss this a bit more and revert
the patch for now before there are any users of it.

[1] https://lore.kernel.org/netdev/20211229124047.1286965-1-michael@walle.cc/

btw, now with net-next closed, should this patch have net-next or net as
the queue in the subject?

 net/core/of_net.c | 33 +++++++++++----------------------
 1 file changed, 11 insertions(+), 22 deletions(-)

Comments

Jakub Kicinski Jan. 12, 2022, 2:28 a.m. UTC | #1
On Tue, 11 Jan 2022 09:12:06 +0100 Michael Walle wrote:
> This reverts commit 9ed319e411915e882bb4ed99be3ae78667a70022.
> 
> We can already post process a nvmem cell value in a particular driver.
> Instead of having yet another place to convert the values, the post
> processing hook of the nvmem provider should be used in this case.
> 
> Signed-off-by: Michael Walle <michael@walle.cc>
> ---
> As mentioned in [1] I think we should discuss this a bit more and revert
> the patch for now before there are any users of it.
> 
> [1] https://lore.kernel.org/netdev/20211229124047.1286965-1-michael@walle.cc/

Revert seems reasonable since there are two different proposals, 
but I won't pretend to understand the space so if anyone has opinions
please share them.

> btw, now with net-next closed, should this patch have net-next or net as
> the queue in the subject?

net, technically, although currently the trees are pretty much
identical.
patchwork-bot+netdevbpf@kernel.org Jan. 12, 2022, 2:20 p.m. UTC | #2
Hello:

This patch was applied to netdev/net.git (master)
by David S. Miller <davem@davemloft.net>:

On Tue, 11 Jan 2022 09:12:06 +0100 you wrote:
> This reverts commit 9ed319e411915e882bb4ed99be3ae78667a70022.
> 
> We can already post process a nvmem cell value in a particular driver.
> Instead of having yet another place to convert the values, the post
> processing hook of the nvmem provider should be used in this case.
> 
> Signed-off-by: Michael Walle <michael@walle.cc>
> 
> [...]

Here is the summary with links:
  - [net-next] Revert "of: net: support NVMEM cells with MAC in text format"
    https://git.kernel.org/netdev/net/c/3486eb774f9d

You are awesome, thank you!
diff mbox series

Patch

diff --git a/net/core/of_net.c b/net/core/of_net.c
index 95a64c813ae5..f1a9bf7578e7 100644
--- a/net/core/of_net.c
+++ b/net/core/of_net.c
@@ -61,7 +61,7 @@  static int of_get_mac_addr_nvmem(struct device_node *np, u8 *addr)
 {
 	struct platform_device *pdev = of_find_device_by_node(np);
 	struct nvmem_cell *cell;
-	const void *buf;
+	const void *mac;
 	size_t len;
 	int ret;
 
@@ -78,32 +78,21 @@  static int of_get_mac_addr_nvmem(struct device_node *np, u8 *addr)
 	if (IS_ERR(cell))
 		return PTR_ERR(cell);
 
-	buf = nvmem_cell_read(cell, &len);
+	mac = nvmem_cell_read(cell, &len);
 	nvmem_cell_put(cell);
 
-	if (IS_ERR(buf))
-		return PTR_ERR(buf);
-
-	ret = 0;
-	if (len == ETH_ALEN) {
-		if (is_valid_ether_addr(buf))
-			memcpy(addr, buf, ETH_ALEN);
-		else
-			ret = -EINVAL;
-	} else if (len == 3 * ETH_ALEN - 1) {
-		u8 mac[ETH_ALEN];
-
-		if (mac_pton(buf, mac))
-			memcpy(addr, mac, ETH_ALEN);
-		else
-			ret = -EINVAL;
-	} else {
-		ret = -EINVAL;
+	if (IS_ERR(mac))
+		return PTR_ERR(mac);
+
+	if (len != ETH_ALEN || !is_valid_ether_addr(mac)) {
+		kfree(mac);
+		return -EINVAL;
 	}
 
-	kfree(buf);
+	memcpy(addr, mac, ETH_ALEN);
+	kfree(mac);
 
-	return ret;
+	return 0;
 }
 
 /**