FIRMWARE: bcm47xx_nvram: Replace mac address parsing

Replace sscanf() with mac_pton().

Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Acked-by: Hauke Mehrtens <hauke@hauke-m.de>
Cc: David S. Miller <davem@davemloft.net>
Cc: linux-mips@linux-mips.org
Patchwork: https://patchwork.linux-mips.org/patch/17982/
Signed-off-by: James Hogan <jhogan@kernel.org>
This commit is contained in:
Andy Shevchenko 2017-12-21 16:40:55 +02:00 committed by James Hogan
parent b68c257581
commit 4d73b73ff7
No known key found for this signature in database
GPG Key ID: 6C0B6993DE38767A
2 changed files with 4 additions and 15 deletions

View File

@ -13,6 +13,7 @@ config BCM47XX_NVRAM
config BCM47XX_SPROM config BCM47XX_SPROM
bool "Broadcom SPROM driver" bool "Broadcom SPROM driver"
depends on BCM47XX_NVRAM depends on BCM47XX_NVRAM
select GENERIC_NET_UTILS
help help
Broadcom devices store configuration data in SPROM. Accessing it is Broadcom devices store configuration data in SPROM. Accessing it is
specific to the bus host type, e.g. PCI(e) devices have it mapped in specific to the bus host type, e.g. PCI(e) devices have it mapped in

View File

@ -137,20 +137,6 @@ static void nvram_read_leddc(const char *prefix, const char *name,
*leddc_off_time = (val >> 16) & 0xff; *leddc_off_time = (val >> 16) & 0xff;
} }
static void bcm47xx_nvram_parse_macaddr(char *buf, u8 macaddr[6])
{
if (strchr(buf, ':'))
sscanf(buf, "%hhx:%hhx:%hhx:%hhx:%hhx:%hhx", &macaddr[0],
&macaddr[1], &macaddr[2], &macaddr[3], &macaddr[4],
&macaddr[5]);
else if (strchr(buf, '-'))
sscanf(buf, "%hhx-%hhx-%hhx-%hhx-%hhx-%hhx", &macaddr[0],
&macaddr[1], &macaddr[2], &macaddr[3], &macaddr[4],
&macaddr[5]);
else
pr_warn("Can not parse mac address: %s\n", buf);
}
static void nvram_read_macaddr(const char *prefix, const char *name, static void nvram_read_macaddr(const char *prefix, const char *name,
u8 val[6], bool fallback) u8 val[6], bool fallback)
{ {
@ -161,7 +147,9 @@ static void nvram_read_macaddr(const char *prefix, const char *name,
if (err < 0) if (err < 0)
return; return;
bcm47xx_nvram_parse_macaddr(buf, val); strreplace(buf, '-', ':');
if (!mac_pton(buf, val))
pr_warn("Can not parse mac address: %s\n", buf);
} }
static void nvram_read_alpha2(const char *prefix, const char *name, static void nvram_read_alpha2(const char *prefix, const char *name,