[OpenWrt-Devel] [PATCH] axs10x: initilaze network for wireless access-point

Alexey Brodkin Alexey.Brodkin at synopsys.com
Mon Nov 23 03:28:28 EST 2015


ARC SDP board sports only 1 network interface - eth0,
so to operate as an access point it requires at least
another interface (preferably wireless),
so USB Wi-Fi dongle is what we want.

And with USB Wi-Fi dongle attached ARC SDP board could be
used as a "dumb" wireless access point.

Now with modified network setup script it is only required
to enable wireless radio on the first boot with
-------------->8------------
uci set wireless.radio0.disabled=0
uci commit wireless
wifi
-------------->8------------

Note if by the time initscripts are executed USB Wi-Fi
dongle not yet recognized and set up by Linux kernel
its autodetection by "wifi" tool may not happen
automatically. In that case before issuing command above
one needs to populate /etc/config/wireless config:
-------------->8------------
wifi detect > /etc/config/wireless
-------------->8------------

Signed-off-by: Alexey Brodkin <abrodkin at synopsys.com>
Cc: Felix Fietkau <nbd at openwrt.org>
Cc: Jo-Philipp Wich <jow at openwrt.org>
Cc: Jonas Gorski <jogo at openwrt.org>
---
 target/linux/arc770/base-files/etc/uci-defaults/02_network | 12 +++++++++++-
 1 file changed, 11 insertions(+), 1 deletion(-)

diff --git a/target/linux/arc770/base-files/etc/uci-defaults/02_network b/target/linux/arc770/base-files/etc/uci-defaults/02_network
index 87cfe81..7503f85 100644
--- a/target/linux/arc770/base-files/etc/uci-defaults/02_network
+++ b/target/linux/arc770/base-files/etc/uci-defaults/02_network
@@ -14,7 +14,17 @@ ucidef_set_interface_loopback
 
 case "$( arc_board_name )" in
 "arc-sdp"*)
-	ucidef_set_interface_raw "lan" "eth0" "dhcp"
+	uci set network.lan='interface'
+	uci set network.lan.type='bridge'
+	uci set network.lan.ifname='eth0 wlan0'
+	uci set network.lan.proto='dhcp'
+	# With multicast-to-unicast enabled kernel crashes
+	# on the first wireless client connection in
+	# br_multicast_add_group() -> br_port_group_equal() ->
+	# ether_addr_equal() due to misaligned read.
+	# For some reason "src" being "eth_hdr(skb)->h_source"
+	# is not 16-bit aligned as it is supposed to be.
+	uci set network.lan.multicast_to_unicast='0'
 	;;
 esac
 
-- 
2.5.0
_______________________________________________
openwrt-devel mailing list
openwrt-devel at lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel



More information about the openwrt-devel mailing list