Fonera: again support little foneras

This adds support for the old and little foneras.

Signed-off-by: Tim Niemeyer <tim.niemeyer@mastersword.de>
This commit is contained in:
Tim Niemeyer 2012-11-18 21:18:16 +01:00
parent 138915a5b5
commit f83e49ca1d
6 changed files with 254 additions and 72 deletions

View File

@ -8,6 +8,7 @@ board_prepare() {
board_prebuild() {
cp ./bsp/$machine/.config $target/.config
cp ./bsp/$machine/kernel_config-3.3 $target/target/linux/atheros/config-3.3
cp -r ./bsp/$machine/root_file_system/* $target/files/
}
@ -22,57 +23,66 @@ board_flash() {
# i thought they are already there..
#svn export http://svn.freifunk-ol.de/firmware/Trunk/flash_tools
if [ "$1" = "" ]
then
echo "$0 flash <netdev>";
exit 1
fi
if [ ! "`whoami`" = "root" ]
then
echo "You need to be root to flash!"
exit 1
fi
echo "Do not plugin your router now, you will be asked to do this later!"
echo "Stopping Network manager and starting normal network and tftp server..."
if [ -f /etc/rc.d/networkmanager ];then
/etc/rc.d/networkmanager stop
/etc/rc.d/tftpd start
elif [ -f /etc/init.d/networkmanager ];then
/etc/init.d/networkmanager stop
/etc/init.d/tftpd start
elif [ -f /usr/sbin/invoke-rc.d ];then
invoke-rc.d tftpd-hpa start || invoke-rc.d tftpd-hpa start || invoke-rc.d tftpd-hpa start || echo "FAILED TO START TFTD"
invoke-rc.d network-manager stop
fi
ifconfig $1 up
echo "Clearing Firewall!"
iptables -F
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
# echo "Do not plugin your router now, you will be asked to do this later!"
# echo "Stopping Network manager and starting normal network and tftp server..."
# if [ -f /etc/rc.d/networkmanager ];then
# /etc/rc.d/networkmanager stop
# /etc/rc.d/tftpd start
# elif [ -f /etc/init.d/networkmanager ];then
# /etc/init.d/networkmanager stop
# /etc/init.d/tftpd start
# elif [ -f /usr/sbin/invoke-rc.d ];then
# invoke-rc.d tftpd-hpa start || invoke-rc.d tftpd-hpa start || invoke-rc.d tftpd-hpa start || echo "FAILED TO START TFTD"
# invoke-rc.d network-manager stop
# fi
#
# ifconfig $1 up
#
# echo "Clearing Firewall!"
# iptables -F
# iptables -P INPUT ACCEPT
# iptables -P OUTPUT ACCEPT
echo "Flashing now! Please plugin your router into the powerline now"
echo "In some cases you have to set a symlink to libpcap to make flashing work (Tim told me that it is evil if I do that for you):"
echo "ln -s /usr/lib/libpcap.so.1.1.1 /usr/lib/libpcap.so.0.8"
echo "better use \"aptitude install libpcap0.8:i386\""
cd ./flash_tools/fonera-flash/
./build_libpcap.sh
cd ../../
#cd ./flash_tools/fonera-flash/
#./build_libpcap.sh
#cd ../../
LD_LIBRARY_PATH=`pwd`flash_tools/fonera-flash/libpcap-0.8.1/
export LD_LIBRARY_PATH
#LD_LIBRARY_PATH=`pwd`flash_tools/fonera-flash/libpcap-0.8.1/
#export LD_LIBRARY_PATH
arch=`uname -m`
#arch=`uname -m`
arch=i686
./flash_tools/fonera-flash/ap51-flash-$arch $1 ./bin/openwrt-$machine-root.squashfs ./bin/openwrt-$machine-vmlinux.lzma freifunc
echo "Starting Networkmanager again"
sleep 5;
if [ -f /etc/rc.d/networkmanager ];then
/etc/rc.d/networkmanager start
elif [ -f /etc/init.d/networkmanager ];then
/etc/init.d/networkmanager start
elif [ -f /usr/sbin/invoke-rc.d ];then
invoke-rc.d tftpd-hpa stop
invoke-rc.d network-manager start
fi
#echo "Starting Networkmanager again"
#sleep 5;
#if [ -f /etc/rc.d/networkmanager ];then
# /etc/rc.d/networkmanager start
# elif [ -f /etc/init.d/networkmanager ];then
# /etc/init.d/networkmanager start
# elif [ -f /usr/sbin/invoke-rc.d ];then
# invoke-rc.d tftpd-hpa stop
# invoke-rc.d network-manager start
# fi
}
board_clean() {

View File

@ -1,7 +1,7 @@
#
# Automatically generated make config: don't edit
# OpenWrt version: Attitude Adjustment (r33502)
# Fri Sep 28 22:44:50 2012
# Sat Nov 17 22:50:09 2012
#
CONFIG_HAVE_DOT_CONFIG=y
# CONFIG_TARGET_ppc40x is not set
@ -883,7 +883,7 @@ CONFIG_BUSYBOX_CONFIG_MESG=y
#
# CONFIG_BUSYBOX_CONFIG_ADD_SHELL is not set
# CONFIG_BUSYBOX_CONFIG_REMOVE_SHELL is not set
# CONFIG_BUSYBOX_CONFIG_FEATURE_SHADOWPASSWDS is not set
CONFIG_BUSYBOX_CONFIG_FEATURE_SHADOWPASSWDS=y
# CONFIG_BUSYBOX_CONFIG_USE_BB_PWD_GRP is not set
# CONFIG_BUSYBOX_CONFIG_USE_BB_CRYPT is not set
# CONFIG_BUSYBOX_CONFIG_ADDUSER is not set
@ -1478,11 +1478,11 @@ CONFIG_PACKAGE_kmod-crypto-arc4=y
CONFIG_PACKAGE_kmod-leds-gpio=y
# CONFIG_PACKAGE_kmod-ledtrig-default-on is not set
# CONFIG_PACKAGE_kmod-ledtrig-gpio is not set
# CONFIG_PACKAGE_kmod-ledtrig-heartbeat is not set
CONFIG_PACKAGE_kmod-ledtrig-heartbeat=y
# CONFIG_PACKAGE_kmod-ledtrig-morse is not set
CONFIG_PACKAGE_kmod-ledtrig-netdev=y
# CONFIG_PACKAGE_kmod-ledtrig-netfilter is not set
# CONFIG_PACKAGE_kmod-ledtrig-timer is not set
CONFIG_PACKAGE_kmod-ledtrig-timer=y
# CONFIG_PACKAGE_kmod-ledtrig-usbdev is not set
#
@ -2372,7 +2372,7 @@ CONFIG_PACKAGE_fastd=y
# CONFIG_PACKAGE_strongswan-mod-xauth-generic is not set
# CONFIG_PACKAGE_strongswan-mod-xcbc is not set
# CONFIG_PACKAGE_strongswan-utils is not set
CONFIG_PACKAGE_tinc=y
# CONFIG_PACKAGE_tinc is not set
# CONFIG_PACKAGE_uanytun is not set
# CONFIG_PACKAGE_uanytun-nocrypt is not set
# CONFIG_PACKAGE_uanytun-sslcrypt is not set
@ -2495,7 +2495,7 @@ CONFIG_PACKAGE_wavemon=y
# CONFIG_PACKAGE_gpsd is not set
# CONFIG_PACKAGE_gpsd-clients is not set
# CONFIG_PACKAGE_hostapd is not set
CONFIG_PACKAGE_hostapd-mini=y
# CONFIG_PACKAGE_hostapd-mini is not set
# CONFIG_PACKAGE_hostapd-utils is not set
# CONFIG_PACKAGE_hpavcfg is not set
# CONFIG_PACKAGE_hping3 is not set
@ -2636,13 +2636,16 @@ CONFIG_PACKAGE_tc=y
# CONFIG_PACKAGE_whob is not set
# CONFIG_PACKAGE_wiviz is not set
# CONFIG_PACKAGE_wol is not set
# CONFIG_PACKAGE_wpa-cli is not set
# CONFIG_PACKAGE_wpa-supplicant is not set
# CONFIG_WPA_SUPPLICANT_NO_TIMESTAMP_CHECK is not set
# CONFIG_WPA_RFKILL_SUPPORT is not set
CONFIG_WPA_MSG_MIN_PRIORITY=3
# CONFIG_DRIVER_WEXT_SUPPORT is not set
# CONFIG_DRIVER_11N_SUPPORT is not set
# CONFIG_PACKAGE_wpa-supplicant-mini is not set
# CONFIG_PACKAGE_wpad is not set
# CONFIG_PACKAGE_wpad-mini is not set
CONFIG_PACKAGE_wpad-mini=y
# CONFIG_PACKAGE_wprobe-export is not set
# CONFIG_PACKAGE_wprobe-util is not set
# CONFIG_PACKAGE_wshaper is not set
@ -2682,12 +2685,7 @@ CONFIG_PACKAGE_libxtables=y
# CONFIG_PACKAGE_libgnutls-extra is not set
# CONFIG_PACKAGE_libgnutls-openssl is not set
# CONFIG_PACKAGE_libmatrixssl is not set
CONFIG_PACKAGE_libopenssl=y
#
# Configuration
#
# CONFIG_OPENSSL_ENGINE_CRYPTO is not set
# CONFIG_PACKAGE_libopenssl is not set
# CONFIG_PACKAGE_libpolarssl is not set
#

View File

@ -0,0 +1,115 @@
CONFIG_AR8216_PHY=y
CONFIG_ARCH_BINFMT_ELF_RANDOMIZE_PIE=y
CONFIG_ARCH_DISCARD_MEMBLOCK=y
CONFIG_ARCH_HIBERNATION_POSSIBLE=y
CONFIG_ARCH_REQUIRE_GPIOLIB=y
CONFIG_ARCH_SUSPEND_POSSIBLE=y
CONFIG_ATHEROS_AR2315=y
# CONFIG_ATHEROS_AR2315_PCI is not set
CONFIG_ATHEROS_AR231X=y
# CONFIG_ATHEROS_AR5312 is not set
CONFIG_ATHEROS_WDT=y
# CONFIG_BASE_FULL is not set
CONFIG_BASE_SMALL=1
CONFIG_BCMA_POSSIBLE=y
CONFIG_CC_OPTIMIZE_FOR_SIZE=y
CONFIG_CEVT_R4K=y
CONFIG_CEVT_R4K_LIB=y
CONFIG_CMDLINE="console=ttyS0,9600 rootfstype=squashfs,jffs2"
CONFIG_CMDLINE_BOOL=y
# CONFIG_CMDLINE_OVERRIDE is not set
CONFIG_CPU_BIG_ENDIAN=y
CONFIG_CPU_HAS_PREFETCH=y
CONFIG_CPU_HAS_SYNC=y
CONFIG_CPU_MIPS32=y
CONFIG_CPU_MIPS32_R1=y
CONFIG_CPU_MIPSR1=y
CONFIG_CPU_SUPPORTS_32BIT_KERNEL=y
CONFIG_CPU_SUPPORTS_HIGHMEM=y
CONFIG_CSRC_R4K=y
CONFIG_CSRC_R4K_LIB=y
CONFIG_DECOMPRESS_LZMA=y
CONFIG_DMA_NONCOHERENT=y
CONFIG_EARLY_PRINTK=y
CONFIG_ETHERNET_PACKET_MANGLE=y
CONFIG_GENERIC_ATOMIC64=y
CONFIG_GENERIC_CLOCKEVENTS=y
CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
CONFIG_GENERIC_CMOS_UPDATE=y
CONFIG_GENERIC_GPIO=y
CONFIG_GENERIC_IRQ_SHOW=y
CONFIG_GPIOLIB=y
CONFIG_GPIO_DEVICE=y
CONFIG_GPIO_SYSFS=y
# CONFIG_HAMRADIO is not set
CONFIG_HARDWARE_WATCHPOINTS=y
CONFIG_HAS_DMA=y
CONFIG_HAS_IOMEM=y
CONFIG_HAS_IOPORT=y
CONFIG_HAVE_ARCH_JUMP_LABEL=y
CONFIG_HAVE_ARCH_KGDB=y
CONFIG_HAVE_C_RECORDMCOUNT=y
CONFIG_HAVE_DMA_API_DEBUG=y
CONFIG_HAVE_DMA_ATTRS=y
CONFIG_HAVE_DYNAMIC_FTRACE=y
CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y
CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
CONFIG_HAVE_FUNCTION_TRACER=y
CONFIG_HAVE_FUNCTION_TRACE_MCOUNT_TEST=y
CONFIG_HAVE_GENERIC_DMA_COHERENT=y
CONFIG_HAVE_GENERIC_HARDIRQS=y
CONFIG_HAVE_IDE=y
CONFIG_HAVE_IRQ_WORK=y
CONFIG_HAVE_MEMBLOCK=y
CONFIG_HAVE_MEMBLOCK_NODE_MAP=y
CONFIG_HAVE_OPROFILE=y
CONFIG_HAVE_PERF_EVENTS=y
# CONFIG_HIGH_RES_TIMERS is not set
CONFIG_HW_RANDOM=y
CONFIG_IMAGE_CMDLINE_HACK=y
CONFIG_INITRAMFS_SOURCE=""
CONFIG_IP17XX_PHY=y
CONFIG_IRQ_CPU=y
CONFIG_IRQ_FORCED_THREADING=y
# CONFIG_ISDN is not set
# CONFIG_LBDAF is not set
CONFIG_LEDS_GPIO=y
CONFIG_LOG_BUF_SHIFT=12
CONFIG_MDIO_BOARDINFO=y
CONFIG_MIPS=y
CONFIG_MIPS_L1_CACHE_SHIFT=5
# CONFIG_MIPS_MACHINE is not set
CONFIG_MIPS_MT_DISABLED=y
# CONFIG_MODULE_UNLOAD is not set
CONFIG_MTD_AR2315=y
CONFIG_MTD_CFI_ADV_OPTIONS=y
# CONFIG_MTD_CFI_GEOMETRY is not set
# CONFIG_MTD_CFI_INTELEXT is not set
CONFIG_MTD_MYLOADER_PARTS=y
CONFIG_MTD_PHYSMAP=y
CONFIG_MTD_REDBOOT_DIRECTORY_BLOCK=-3
CONFIG_MTD_REDBOOT_PARTS=y
CONFIG_MVSWITCH_PHY=y
CONFIG_NEED_DMA_MAP_STATE=y
CONFIG_NEED_PER_CPU_KM=y
# CONFIG_NETWORK_FILESYSTEMS is not set
CONFIG_NET_VENDOR_AR231X=y
CONFIG_PAGEFLAGS_EXTENDED=y
# CONFIG_PARTITION_ADVANCED is not set
CONFIG_PERF_USE_VMALLOC=y
CONFIG_PHYLIB=y
# CONFIG_PREEMPT_RCU is not set
# CONFIG_SCSI_DMA is not set
CONFIG_SERIAL_8250_NR_UARTS=1
CONFIG_SERIAL_8250_RUNTIME_UARTS=1
# CONFIG_SHMEM is not set
# CONFIG_SLAB is not set
CONFIG_SLOB=y
CONFIG_SWCONFIG=y
CONFIG_SYS_HAS_CPU_MIPS32_R1=y
CONFIG_SYS_HAS_EARLY_PRINTK=y
CONFIG_SYS_SUPPORTS_32BIT_KERNEL=y
CONFIG_SYS_SUPPORTS_ARBIT_HZ=y
CONFIG_SYS_SUPPORTS_BIG_ENDIAN=y
CONFIG_XZ_DEC=y
CONFIG_ZONE_DMA_FLAG=0

View File

@ -4,19 +4,39 @@ config 'interface' 'loopback'
option 'ipaddr' '127.0.0.1'
option 'netmask' '255.0.0.0'
#config 'interface' 'lan'
# option 'proto' 'dhcp'
# option 'ifname' 'eth0.1'
config 'interface' 'wlanmesh'
option 'mtu' '1528'
config 'interface' 'mesh'
option 'type' 'bridge'
option 'ifname' 'bat0 tap0'
option 'auto' '1'
# this is for MESH on the Ethernet Port
#config 'interface' 'ethmesh1'
# option 'type' 'bridge'
# option 'ifname' 'eth0'
# option 'mtu' '1528'
#config 'interface' 'mesh'
# option 'type' 'bridge'
# option 'ifname' 'bat0 tap0'
# option 'auto' '1'
#END MESH
# this is for CLIENT on the Ethernet Port
#config 'interface' 'mesh'
# option 'type' 'bridge'
# option 'ifname' 'eth0 bat0 tap0'
# option 'auto' '1'
# END CLIENT
# this is for the WAN/VPN on the Ethernet Port
config 'interface' 'wan'
option 'ifname' 'eth0'
option 'proto' 'dhcp'
config 'interface' 'mesh'
option 'type' 'bridge'
option 'ifname' 'bat0 tap0'
option 'auto' '1'
# END WAN/VPN

View File

@ -1,22 +1,10 @@
*/5 * * * * killall klogd
*/5 * * * * killall syslogd
*/5 * * * * killall logger
*/5 * * * * sh /etc/fastdstart.sh; sh /etc/nodewatcher.sh; sh /etc/configurator.sh
*/5 * * * * sh /etc/tincstart.sh
*/5 * * * * sh /etc/nodewatcher.sh
*/5 * * * * sh /etc/configurator.sh
0 * * * * sh /etc/configurator.sh sync_hostname
15 01 * * * rdate -s time.fu-berlin.de > /dev/null
#15 01 * * * rdate -s time.fu-berlin.de > /dev/null
#Enable zapp script if you are running a gateway
#*/1 * * * * /etc/init.d/zapp
*/5 * * * * killall -HUP dnsmasq
#* * * * * /usr/sbin/ff_olsr_test_gw
#*/5 * * * * /usr/sbin/ff_olsr_watchdog
#0 */4 * * * /usr/sbin/ff_rdate
#17 * * * * /usr/sbin/ff_mapupdate
#Reboot dir300 every 3 days at 04:05
#5 4 */3 * * reboot
#Reboot fonera every 2 days at 04:05
5 4 */2 * * reboot

View File

@ -0,0 +1,51 @@
# Put your custom commands here that should be executed once
# the system init finished. By default this file does nothing.
batctl if add wlan0-1
toLower() {
echo $1 | sed -e "s/A/a/g" -e "s/B/b/g" -e "s/C/c/g" -e "s/D/d/g" -e "s/E/e/g" -e "s/F/f/g"
}
. /etc/firewall.user
/etc/init.d/qos disable
/etc/init.d/qos stop
#busybox-httpd for crawldata
mkdir /tmp/crawldata
httpd -h /tmp/crawldata
# todo: all devices or only dir300 ?
# fonera to slow?
sleep 10
if uci get network.mesh.macaddr
then
echo "MAC is set already"
else
BRMAC=`ip link | grep br-mesh -A1 | grep link | awk '{ print $2 }'`
BRMAC=`toLower $BRMAC`
WLMAC=`ip link | grep wlan0 -A1 | grep link | awk '{ print $2 }'`
WLMAC=`toLower $WLMAC`
ETMAC=`ip link | grep eth0 -A1 | grep link | awk '{ print $2 }'`
ETMAC=`toLower $ETMAC`
if [ "$WLMAC" != "" ] && [ "$BRMAC" != "" ] && [ "$BRMAC" != "$ETMAC" ]; then
echo "Fixing wrong MAC on br-mesh"
uci set network.mesh.macaddr=$ETMAC
uci commit
ifconfig br-mesh hw ether $ETMAC
ifconfig br-mesh down
ifconfig br-mesh up
#wait before reboot to generate tinc certificates and to be able
#to login over ssh bevore reboot in case of errors
fi
fi
# Starting NTP-Client Daemon
# uses to much ram
#ntpd -p "fe80::201:2ff:fe03:405%br-mesh"
exit 0