]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
Teach if_smsc to get MAC from bootargs.
authorRonald Klop <ronald@FreeBSD.org>
Sat, 4 Nov 2023 14:14:00 +0000 (15:14 +0100)
committerRonald Klop <ronald@FreeBSD.org>
Mon, 1 Jan 2024 09:13:13 +0000 (10:13 +0100)
commit3d96ee7c7dcc54995894985ef2beacc4c4f57956
tree7d537ae9e8601e1a64a0fbf676da37cd5cecf1f1
parenteefdc4a34875d7f5a4a4fcff637ca019641e2d14
Teach if_smsc to get MAC from bootargs.

Some Raspberry Pi pass smsc95xx.macaddr=XX:XX:XX:XX:XX:XX as bootargs.
Use this if no ethernet address is found in an EEPROM.
As last resort fall back to ether_gen_addr() instead of random MAC.

(cherry picked from commit 3878bbf1bb9e68f8579b57cde7d4e5c77de93320)

if_smsc: fix build on armv6 & armv7

compile error was:
/usr/src/sys/dev/usb/net/if_smsc.c:1597:40: error: format specifies type 'unsigned long' but the argument has type 'ssize_t' (aka 'int') [-Werror,-Wformat]
                                "failed alloc for bootargs (%lu)", len);
                                                            ~~~    ^~~
                                                            %zd

(cherry picked from commit 8a0ee306227a17a998bdc7af2275fd94b9164342)

PR: 274092
Reported by: Patrick M. Hausen (via ML)
Reviewed by: imp, karels, zlei
Tested by: Patrick M. Hausen
Approved by: karels
Relnotes: yes
Differential Revision: https://reviews.freebsd.org/D42463
sys/dev/usb/net/if_smsc.c
sys/net/ethernet.h
sys/net/if_ethersubr.c