bcm63xx: remove memcpy from mac assignment
authorRosen Penev <rosenp@gmail.com>
Tue, 21 Sep 2021 02:23:58 +0000 (19:23 -0700)
committerPaul Spooren <mail@aparcar.org>
Wed, 22 Sep 2021 01:46:19 +0000 (15:46 -1000)
With GCC11, memcpy doesn't work here as it assumes a size of 0. Use
ioremap to avoid it.

Fixed parameter type to match board_get_mac_address.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
target/linux/bcm63xx/patches-5.10/532-MIPS-BCM63XX-add-inventel-Livebox-support.patch
target/linux/bcm63xx/patches-5.4/532-MIPS-BCM63XX-add-inventel-Livebox-support.patch

index 0035cee7e9fd910e4ca12b1d7c839f1053aafc29..24b8f68807017c4430b56c09237c07efdec0f0a6 100644 (file)
@@ -58,7 +58,7 @@ Subject: [PATCH] MIPS: BCM63XX: add inventel Livebox support
  #endif /* __BOARD_COMMON_H */
 --- /dev/null
 +++ b/arch/mips/bcm63xx/boards/board_livebox.c
-@@ -0,0 +1,153 @@
+@@ -0,0 +1,158 @@
 +/*
 + * This file is subject to the terms and conditions of the GNU General Public
 + * License. See the file "COPYING" in the main directory of this archive
@@ -130,12 +130,17 @@ Subject: [PATCH] MIPS: BCM63XX: add inventel Livebox support
 +/*
 + * register & return a new board mac address
 + */
-+static int livebox_get_mac_address(u8 *mac)
++static int livebox_get_mac_address(u8 mac[ETH_ALEN])
 +{
 +      u8 *p;
 +      int count;
++      void __iomem *volatile mmio;
 +
-+      memcpy(mac, (u8 *)0xBEBFF377, ETH_ALEN);
++      mmio = ioremap(0x1ebff377, 0x8);
++      if (!mmio)
++              return -EIO;
++      memcpy_fromio(mac, mmio, ETH_ALEN);
++      iounmap(mmio);
 +
 +      p = mac + ETH_ALEN - 1;
 +      count = mac_addr_used;
index 0035cee7e9fd910e4ca12b1d7c839f1053aafc29..24b8f68807017c4430b56c09237c07efdec0f0a6 100644 (file)
@@ -58,7 +58,7 @@ Subject: [PATCH] MIPS: BCM63XX: add inventel Livebox support
  #endif /* __BOARD_COMMON_H */
 --- /dev/null
 +++ b/arch/mips/bcm63xx/boards/board_livebox.c
-@@ -0,0 +1,153 @@
+@@ -0,0 +1,158 @@
 +/*
 + * This file is subject to the terms and conditions of the GNU General Public
 + * License. See the file "COPYING" in the main directory of this archive
@@ -130,12 +130,17 @@ Subject: [PATCH] MIPS: BCM63XX: add inventel Livebox support
 +/*
 + * register & return a new board mac address
 + */
-+static int livebox_get_mac_address(u8 *mac)
++static int livebox_get_mac_address(u8 mac[ETH_ALEN])
 +{
 +      u8 *p;
 +      int count;
++      void __iomem *volatile mmio;
 +
-+      memcpy(mac, (u8 *)0xBEBFF377, ETH_ALEN);
++      mmio = ioremap(0x1ebff377, 0x8);
++      if (!mmio)
++              return -EIO;
++      memcpy_fromio(mac, mmio, ETH_ALEN);
++      iounmap(mmio);
 +
 +      p = mac + ETH_ALEN - 1;
 +      count = mac_addr_used;