return -ENOMEM;
}
- if (device_get_mac_address(dev, ndev->dev_addr, ETH_ALEN))
+ if (device_get_mac_address(dev, ndev->dev_addr))
eth_hw_addr_random(ndev);
memcpy(ndev->perm_addr, ndev->dev_addr, ndev->addr_len);
xgene_get_port_id_acpi(dev, pdata);
#endif
- if (device_get_mac_address(dev, ndev->dev_addr, ETH_ALEN))
+ if (device_get_mac_address(dev, ndev->dev_addr))
eth_hw_addr_random(ndev);
memcpy(ndev->perm_addr, ndev->dev_addr, ndev->addr_len);
if (pd && !IS_ERR_OR_NULL(pd->mac_address))
eth_hw_addr_set(dev, pd->mac_address);
else
- if (device_get_mac_address(&pdev->dev, dev->dev_addr, ETH_ALEN))
+ if (device_get_mac_address(&pdev->dev, dev->dev_addr))
if (has_acpi_companion(&pdev->dev))
bcmgenet_get_hw_addr(priv, dev->dev_addr);
u8 mac[ETH_ALEN];
int ret;
- ret = fwnode_get_mac_address(acpi_fwnode_handle(adev), mac, ETH_ALEN);
+ ret = fwnode_get_mac_address(acpi_fwnode_handle(adev), mac);
if (ret) {
dev_err(dev, "MAC address invalid: %pM\n", mac);
return -EINVAL;
unsigned int m;
unsigned int l;
- if (!device_get_mac_address(priv->dev, mac, ETH_ALEN)) {
+ if (!device_get_mac_address(priv->dev, mac)) {
eth_hw_addr_set(priv->netdev, mac);
dev_info(priv->dev, "Read MAC address %pM from device tree\n",
mac);
{
struct hns_nic_priv *priv = netdev_priv(ndev);
- if (device_get_mac_address(priv->dev, ndev->dev_addr, ETH_ALEN)) {
+ if (device_get_mac_address(priv->dev, ndev->dev_addr)) {
eth_hw_addr_random(ndev);
dev_warn(priv->dev, "No valid mac, use random mac %pM",
ndev->dev_addr);
char hw_mac_addr[ETH_ALEN] = {0};
char fw_mac_addr[ETH_ALEN];
- if (!fwnode_get_mac_address(fwnode, fw_mac_addr, ETH_ALEN)) {
+ if (!fwnode_get_mac_address(fwnode, fw_mac_addr)) {
*mac_from = "firmware node";
eth_hw_addr_set(dev, fw_mac_addr);
return;
goto error_irq;
}
- if (!device_get_mac_address(&spi->dev, macaddr, sizeof(macaddr)))
+ if (!device_get_mac_address(&spi->dev, macaddr))
eth_hw_addr_set(dev, macaddr);
else
eth_hw_addr_random(dev);
int ret = 0;
/* get mac address */
- if (!device_get_mac_address(&pdev->dev, maddr, ETH_ALEN))
+ if (!device_get_mac_address(&pdev->dev, maddr))
eth_hw_addr_set(netdev, maddr);
else
eth_hw_addr_random(netdev);
phy_interface = PHY_INTERFACE_MODE_NA;
config->phy_interface = phy_interface;
- device_get_mac_address(dev, config->mac, ETH_ALEN);
+ device_get_mac_address(dev, config->mac);
err = device_property_read_u32(dev, "reg-io-width", &width);
if (err == -ENXIO)
goto free_ndev;
}
- ret = device_get_mac_address(&pdev->dev, macbuf, sizeof(macbuf));
+ ret = device_get_mac_address(&pdev->dev, macbuf);
if (!ret)
eth_hw_addr_set(ndev, macbuf);
ath10k_debug_print_board_info(ar);
}
- device_get_mac_address(ar->dev, ar->mac_addr, sizeof(ar->mac_addr));
+ device_get_mac_address(ar->dev, ar->mac_addr);
ret = ath10k_core_init_firmware_features(ar);
if (ret) {
int eth_platform_get_mac_address(struct device *dev, u8 *mac_addr);
unsigned char *arch_get_platform_mac_address(void);
int nvmem_get_mac_address(struct device *dev, void *addrbuf);
-int device_get_mac_address(struct device *dev, char *addr, int alen);
-int fwnode_get_mac_address(struct fwnode_handle *fwnode, char *addr, int alen);
+int device_get_mac_address(struct device *dev, char *addr);
+int fwnode_get_mac_address(struct fwnode_handle *fwnode, char *addr);
u32 eth_get_headlen(const struct net_device *dev, const void *data, u32 len);
__be16 eth_type_trans(struct sk_buff *skb, struct net_device *dev);
EXPORT_SYMBOL(nvmem_get_mac_address);
static int fwnode_get_mac_addr(struct fwnode_handle *fwnode,
- const char *name, char *addr, int alen)
+ const char *name, char *addr)
{
int ret;
- if (alen != ETH_ALEN)
- return -EINVAL;
-
- ret = fwnode_property_read_u8_array(fwnode, name, addr, alen);
+ ret = fwnode_property_read_u8_array(fwnode, name, addr, ETH_ALEN);
if (ret)
return ret;
* fwnode_get_mac_address - Get the MAC from the firmware node
* @fwnode: Pointer to the firmware node
* @addr: Address of buffer to store the MAC in
- * @alen: Length of the buffer pointed to by addr, should be ETH_ALEN
*
* Search the firmware node for the best MAC address to use. 'mac-address' is
* checked first, because that is supposed to contain to "most recent" MAC
* In this case, the real MAC is in 'local-mac-address', and 'mac-address'
* exists but is all zeros.
*/
-int fwnode_get_mac_address(struct fwnode_handle *fwnode, char *addr, int alen)
+int fwnode_get_mac_address(struct fwnode_handle *fwnode, char *addr)
{
- if (!fwnode_get_mac_addr(fwnode, "mac-address", addr, alen) ||
- !fwnode_get_mac_addr(fwnode, "local-mac-address", addr, alen) ||
- !fwnode_get_mac_addr(fwnode, "address", addr, alen))
+ if (!fwnode_get_mac_addr(fwnode, "mac-address", addr) ||
+ !fwnode_get_mac_addr(fwnode, "local-mac-address", addr) ||
+ !fwnode_get_mac_addr(fwnode, "address", addr))
return 0;
return -ENOENT;
* device_get_mac_address - Get the MAC for a given device
* @dev: Pointer to the device
* @addr: Address of buffer to store the MAC in
- * @alen: Length of the buffer pointed to by addr, should be ETH_ALEN
*/
-int device_get_mac_address(struct device *dev, char *addr, int alen)
+int device_get_mac_address(struct device *dev, char *addr)
{
- return fwnode_get_mac_address(dev_fwnode(dev), addr, alen);
+ return fwnode_get_mac_address(dev_fwnode(dev), addr);
}
EXPORT_SYMBOL(device_get_mac_address);