Message ID | 20191126081602.2264519-2-a.heider@gmail.com |
---|---|
State | Superseded |
Delegated to: | Jagannadha Sutradharudu Teki |
Headers | show |
Series | arm64: dts: sun50i: Add support for Orange Pi 3 | expand |
Hello, On Tue, Nov 26, 2019 at 09:15:59AM +0100, Andre Heider wrote: > That helper takes care of assembling the correct name and doesn't allow > overwriting existing env vars, so drop the checks here. > > Signed-off-by: Andre Heider <a.heider@gmail.com> > --- > board/sunxi/board.c | 10 +--------- > 1 file changed, 1 insertion(+), 9 deletions(-) > > diff --git a/board/sunxi/board.c b/board/sunxi/board.c > index e3b2d13892..bb35d6b66e 100644 > --- a/board/sunxi/board.c > +++ b/board/sunxi/board.c > @@ -807,14 +807,6 @@ static void setup_environment(const void *fdt) > if (!fdt_get_alias(fdt, ethaddr)) > continue; > > - if (i == 0) > - strcpy(ethaddr, "ethaddr"); > - else > - sprintf(ethaddr, "eth%daddr", i); > - > - if (env_get(ethaddr)) > - continue; > - > /* Non OUI / registered MAC address */ > mac_addr[0] = (i << 4) | 0x02; > mac_addr[1] = (sid[0] >> 0) & 0xff; > @@ -823,7 +815,7 @@ static void setup_environment(const void *fdt) > mac_addr[4] = (sid[3] >> 8) & 0xff; > mac_addr[5] = (sid[3] >> 0) & 0xff; > > - eth_env_set_enetaddr(ethaddr, mac_addr); > + eth_env_set_enetaddr_by_index("eth", i, mac_addr); This breaks the build with CONFIG_NET disabled in u-boot, since eth_env_set_enetaddr_by_index is only available in net/. arm-linux-musleabihf-ld.bfd: board/sunxi/built-in.o: in function `setup_environment': board/sunxi/board.c:835: undefined reference to `eth_env_set_enetaddr_by_index' See this thread for more info: https://www.mail-archive.com/u-boot@lists.denx.de/msg340785.html Use of eth_env_set_enetaddr is temporarily broken on master too, because this is still waiting to be merged: https://www.mail-archive.com/u-boot@lists.denx.de/msg340882.html regards, o. > } > > if (!env_get("serial#")) { > -- > 2.24.0 >
On 26/11/2019 11:22, Ondřej Jirman wrote: > Hello, > > On Tue, Nov 26, 2019 at 09:15:59AM +0100, Andre Heider wrote: >> That helper takes care of assembling the correct name and doesn't allow >> overwriting existing env vars, so drop the checks here. >> >> Signed-off-by: Andre Heider <a.heider@gmail.com> >> --- >> board/sunxi/board.c | 10 +--------- >> 1 file changed, 1 insertion(+), 9 deletions(-) >> >> diff --git a/board/sunxi/board.c b/board/sunxi/board.c >> index e3b2d13892..bb35d6b66e 100644 >> --- a/board/sunxi/board.c >> +++ b/board/sunxi/board.c >> @@ -807,14 +807,6 @@ static void setup_environment(const void *fdt) >> if (!fdt_get_alias(fdt, ethaddr)) >> continue; >> >> - if (i == 0) >> - strcpy(ethaddr, "ethaddr"); >> - else >> - sprintf(ethaddr, "eth%daddr", i); >> - >> - if (env_get(ethaddr)) >> - continue; >> - >> /* Non OUI / registered MAC address */ >> mac_addr[0] = (i << 4) | 0x02; >> mac_addr[1] = (sid[0] >> 0) & 0xff; >> @@ -823,7 +815,7 @@ static void setup_environment(const void *fdt) >> mac_addr[4] = (sid[3] >> 8) & 0xff; >> mac_addr[5] = (sid[3] >> 0) & 0xff; >> >> - eth_env_set_enetaddr(ethaddr, mac_addr); >> + eth_env_set_enetaddr_by_index("eth", i, mac_addr); > > This breaks the build with CONFIG_NET disabled in u-boot, since > eth_env_set_enetaddr_by_index is only available in net/. > > arm-linux-musleabihf-ld.bfd: board/sunxi/built-in.o: in function `setup_environment': > board/sunxi/board.c:835: undefined reference to `eth_env_set_enetaddr_by_index' > > See this thread for more info: > https://www.mail-archive.com/u-boot@lists.denx.de/msg340785.html > > Use of eth_env_set_enetaddr is temporarily broken on master too, because this > is still waiting to be merged: > > https://www.mail-archive.com/u-boot@lists.denx.de/msg340882.html Ok, I'll drop the patch then, it was just a possible cleanup I stumbled upon anyway. I applied the patch you linked to and it indeed fixes the build with CONFIG_NET=n. Thanks, Andre
diff --git a/board/sunxi/board.c b/board/sunxi/board.c index e3b2d13892..bb35d6b66e 100644 --- a/board/sunxi/board.c +++ b/board/sunxi/board.c @@ -807,14 +807,6 @@ static void setup_environment(const void *fdt) if (!fdt_get_alias(fdt, ethaddr)) continue; - if (i == 0) - strcpy(ethaddr, "ethaddr"); - else - sprintf(ethaddr, "eth%daddr", i); - - if (env_get(ethaddr)) - continue; - /* Non OUI / registered MAC address */ mac_addr[0] = (i << 4) | 0x02; mac_addr[1] = (sid[0] >> 0) & 0xff; @@ -823,7 +815,7 @@ static void setup_environment(const void *fdt) mac_addr[4] = (sid[3] >> 8) & 0xff; mac_addr[5] = (sid[3] >> 0) & 0xff; - eth_env_set_enetaddr(ethaddr, mac_addr); + eth_env_set_enetaddr_by_index("eth", i, mac_addr); } if (!env_get("serial#")) {
That helper takes care of assembling the correct name and doesn't allow overwriting existing env vars, so drop the checks here. Signed-off-by: Andre Heider <a.heider@gmail.com> --- board/sunxi/board.c | 10 +--------- 1 file changed, 1 insertion(+), 9 deletions(-)