Summary
When restarting hostapd, uap0
interface MAC changes to same MAC as mlan0
which renders WiFi unuable. See this post too.
Details
This is 100% reproducible by doing the following:
- Install latest BSP (6.4 upstream) reference image minimal on Colibri iMX6ULL 512MB Wi-Fi / BT installed in Iris carrier.
- Based on the instructions here, start the Toradex-supplied example hostapd:
systemctl start hostapd-example
- Now restart the Toradex-supplied example hostapd:
systemctl restart hostapd-example
- And now check your MAC addresses of wireless interfaces and they are the same which leads to unusable WiFi.
See console log below:
root@colibri-imx6ull-14938994:~# ip -c a | grep -A1 -e mlan0 -e uap0
5: mlan0: <NO-CARRIER,BROADCAST,MULTICAST,DYNAMIC,UP> mtu 1500 qdisc mq state DOWN group default qlen 1000
link/ether e8:fb:1c:80:2e:af brd ff:ff:ff:ff:ff:ff
6: uap0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq state DOWN group default qlen 1000
link/ether e8:fb:1c:80:2c:af brd ff:ff:ff:ff:ff:ff
root@colibri-imx6ull-14938994:~# systemctl start hostapd-example
[ 256.719760] IPv6: ADDRCONF(NETDEV_CHANGE): uap0: link becomes ready
root@colibri-imx6ull-14938994:~# ip -c a | grep -A1 -e mlan0 -e uap0
5: mlan0: <NO-CARRIER,BROADCAST,MULTICAST,DYNAMIC,UP> mtu 1500 qdisc mq state DOWN group default qlen 1000
link/ether e8:fb:1c:80:2e:af brd ff:ff:ff:ff:ff:ff
6: uap0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
link/ether e8:fb:1c:80:2c:af brd ff:ff:ff:ff:ff:ff
inet 192.168.8.1/24 brd 192.168.8.255 scope global uap0
valid_lft forever preferred_lft forever
root@colibri-imx6ull-14938994:~# systemctl stop hostapd-example
root@colibri-imx6ull-14938994:~# ip -c a | grep -A1 -e mlan0 -e uap0
5: mlan0: <NO-CARRIER,BROADCAST,MULTICAST,DYNAMIC,UP> mtu 1500 qdisc mq state DOWN group default qlen 1000
link/ether e8:fb:1c:80:2e:af brd ff:ff:ff:ff:ff:ff
6: uap0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq state DOWN group default qlen 1000
link/ether e8:fb:1c:80:2c:af brd ff:ff:ff:ff:ff:ff
root@colibri-imx6ull-14938994:~# systemctl start hostapd-example
root@colibri-imx6ull-14938994:~# ip -c a | grep -A1 -e mlan0 -e uap0
5: mlan0: <NO-CARRIER,BROADCAST,MULTICAST,DYNAMIC,UP> mtu 1500 qdisc mq state DOWN group default qlen 1000
link/ether e8:fb:1c:80:2e:af brd ff:ff:ff:ff:ff:ff
6: uap0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
link/ether e8:fb:1c:80:2e:af brd ff:ff:ff:ff:ff:ff permaddr e8:fb:1c:80:2c:af
inet 192.168.8.1/24 brd 192.168.8.255 scope global uap0
valid_lft forever preferred_lft forever
Hardware/Software Details:
HW Module: Colibri iMX6ULL 512MB Wi-Fi / Bluetooth IT (0040)
Carrier board: Iris V1.1B
SW: Reference Minimal Image, BSP 6.4 (UPSTREAM) installed via Toradex Easy Installer
Output of tdx-info:
root@colibri-imx6ull-14938994:~# tdx-info
Software summary
------------------------------------------------------------
Bootloader: U-Boot
Kernel version: 6.1.55-6.4.0+git.d23900f974e0 #1 SMP Sat Sep 23 09:11:13 UTC 2023
Kernel command line: user_debug=30 ubi.mtd=ubi root=ubi0:rootfs rw rootfstype=ubifs ubi.fm_autoconvert=1 console=tty1 console=ttymxc0
Distro name: NAME="TDX Wayland with XWayland Upstream"
Distro version: VERSION_ID=6.4.0-build.8
Hostname: colibri-imx6ull-14938994
------------------------------------------------------------
Hardware info
------------------------------------------------------------
HW model: Toradex Colibri iMX6ULL 512MB on Colibri Evaluation Board V3
Toradex version: 0040 V1.1A
Serial number: 14938994
Processor arch: armv7l
------------------------------------------------------------