Commit 3486eb77 authored by Michael Walle's avatar Michael Walle Committed by David S. Miller
Browse files

Revert "of: net: support NVMEM cells with MAC in text format"



This reverts commit 9ed319e4.

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: default avatarMichael Walle <michael@walle.cc>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent edcb501e
Loading
Loading
Loading
Loading
+11 −22
Original line number Diff line number Diff line
@@ -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);
	if (IS_ERR(mac))
		return PTR_ERR(mac);

	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 (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;
}

/**