diff --git a/meta-digi-dey/recipes-core/init-ifupdown/init-ifupdown-1.0/ccimx6qpsbc/interfaces.br0.example b/meta-digi-dey/recipes-core/init-ifupdown/init-ifupdown-1.0/ccimx6qpsbc/interfaces.br0.example new file mode 100644 index 000000000..60e05fe52 --- /dev/null +++ b/meta-digi-dey/recipes-core/init-ifupdown/init-ifupdown-1.0/ccimx6qpsbc/interfaces.br0.example @@ -0,0 +1,7 @@ + +## Example bridge between eth0 and wlan1 +#auto br0 +#iface br0 inet static +# bridge_ports eth0 wlan1 +# address 192.168.42.50 +# netmask 255.255.255.0 diff --git a/meta-digi-dey/recipes-core/init-ifupdown/init-ifupdown-1.0/ccimx6qpsbc/interfaces.wlan1.dhcp b/meta-digi-dey/recipes-core/init-ifupdown/init-ifupdown-1.0/ccimx6qpsbc/interfaces.wlan1.dhcp new file mode 100644 index 000000000..245b973f0 --- /dev/null +++ b/meta-digi-dey/recipes-core/init-ifupdown/init-ifupdown-1.0/ccimx6qpsbc/interfaces.wlan1.dhcp @@ -0,0 +1,6 @@ + +auto wlan1 +iface wlan1 inet dhcp + udhcpc_opts -S -b >/dev/null & + post-up /etc/init.d/hostapd start + pre-down /etc/init.d/hostapd stop diff --git a/meta-digi-dey/recipes-core/init-ifupdown/init-ifupdown-1.0/ccimx6qpsbc/interfaces.wlan1.static b/meta-digi-dey/recipes-core/init-ifupdown/init-ifupdown-1.0/ccimx6qpsbc/interfaces.wlan1.static new file mode 100644 index 000000000..664542efe --- /dev/null +++ b/meta-digi-dey/recipes-core/init-ifupdown/init-ifupdown-1.0/ccimx6qpsbc/interfaces.wlan1.static @@ -0,0 +1,9 @@ + +auto wlan1 +iface wlan1 inet static + address ##WLAN1_STATIC_IP## + netmask ##WLAN1_STATIC_NETMASK## + gateway ##WLAN1_STATIC_GATEWAY## + dns-nameservers ##WLAN1_STATIC_DNS## + post-up /etc/init.d/hostapd start + pre-down /etc/init.d/hostapd stop diff --git a/meta-digi-dey/recipes-core/init-ifupdown/init-ifupdown-1.0/ccimx6qpsbc/virtwlans.sh b/meta-digi-dey/recipes-core/init-ifupdown/init-ifupdown-1.0/ccimx6qpsbc/virtwlans.sh new file mode 100644 index 000000000..304c09fc5 --- /dev/null +++ b/meta-digi-dey/recipes-core/init-ifupdown/init-ifupdown-1.0/ccimx6qpsbc/virtwlans.sh @@ -0,0 +1,30 @@ +#!/bin/sh +# +# Copyright (c) 2017, Digi International Inc. +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, you can obtain one at http://mozilla.org/MPL/2.0/. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +# + +# This will create a second wireless network device +if [ -s "/proc/device-tree/wireless/mac-address1" ] && + [ -s "/proc/device-tree/wireless/mac-address2" ] && + [ -s "/proc/device-tree/wireless/mac-address3" ]; then + : +else + echo "[WARN] Using default MAC addresses for virtual interfaces, please program them referring to the Digi U-Boot Documentation" +fi + +if [ ! -d "/sys/class/net/wlan1" ]; then + # This will create a second wireless network device + iw dev wlan0 interface add wlan1 type managed +fi diff --git a/meta-digi-dey/recipes-core/init-ifupdown/init-ifupdown-1.0/ccimx6/interfaces.br0.example b/meta-digi-dey/recipes-core/init-ifupdown/init-ifupdown-1.0/ccimx6sbc/interfaces.br0.example similarity index 100% rename from meta-digi-dey/recipes-core/init-ifupdown/init-ifupdown-1.0/ccimx6/interfaces.br0.example rename to meta-digi-dey/recipes-core/init-ifupdown/init-ifupdown-1.0/ccimx6sbc/interfaces.br0.example diff --git a/meta-digi-dey/recipes-core/init-ifupdown/init-ifupdown_1.0.bbappend b/meta-digi-dey/recipes-core/init-ifupdown/init-ifupdown_1.0.bbappend index 388399008..97e1dccf4 100644 --- a/meta-digi-dey/recipes-core/init-ifupdown/init-ifupdown_1.0.bbappend +++ b/meta-digi-dey/recipes-core/init-ifupdown/init-ifupdown_1.0.bbappend @@ -11,6 +11,12 @@ SRC_URI_append = " \ file://resolv \ " +SRC_URI_append_ccimx6qpsbc = "\ + file://interfaces.wlan1.static \ + file://interfaces.wlan1.dhcp \ + file://virtwlans.sh \ +" + SRC_URI_append_ccimx6ul = "\ file://interfaces.wlan1.static \ file://interfaces.wlan1.dhcp \ @@ -49,6 +55,28 @@ do_install_append_ccimx6sbc() { cat ${WORKDIR}/interfaces.br0.example >> ${D}${sysconfdir}/network/interfaces } +do_install_append_ccimx6qpsbc() { + install -d ${D}${base_bindir} + install -m 0755 ${WORKDIR}/virtwlans.sh ${D}${base_bindir} + if [ -n "${HAVE_WIFI}" ]; then + cat ${WORKDIR}/interfaces.wlan1.${WLAN1_MODE} >> ${D}${sysconfdir}/network/interfaces + fi + + # Remove config entries if corresponding variable is not defined + [ -z "${WLAN1_STATIC_DNS}" ] && sed -i -e "/##WLAN1_STATIC_DNS##/d" ${D}${sysconfdir}/network/interfaces + [ -z "${WLAN1_STATIC_GATEWAY}" ] && sed -i -e "/##WLAN1_STATIC_GATEWAY##/d" ${D}${sysconfdir}/network/interfaces + [ -z "${WLAN1_STATIC_IP}" ] && sed -i -e "/##WLAN1_STATIC_IP##/d" ${D}${sysconfdir}/network/interfaces + [ -z "${WLAN1_STATIC_NETMASK}" ] && sed -i -e "/##WLAN1_STATIC_NETMASK##/d" ${D}${sysconfdir}/network/interfaces + + # Replace interface parameters + sed -i -e "s,##WLAN1_STATIC_IP##,${WLAN1_STATIC_IP},g" ${D}${sysconfdir}/network/interfaces + sed -i -e "s,##WLAN1_STATIC_NETMASK##,${WLAN1_STATIC_NETMASK},g" ${D}${sysconfdir}/network/interfaces + sed -i -e "s,##WLAN1_STATIC_GATEWAY##,${WLAN1_STATIC_GATEWAY},g" ${D}${sysconfdir}/network/interfaces + sed -i -e "s,##WLAN1_STATIC_DNS##,${WLAN1_STATIC_DNS},g" ${D}${sysconfdir}/network/interfaces + + cat ${WORKDIR}/interfaces.br0.example >> ${D}${sysconfdir}/network/interfaces +} + do_install_append_ccimx6ul() { install -d ${D}${base_bindir} install -m 0755 ${WORKDIR}/virtwlans.sh ${D}${base_bindir}