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'
# 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'
config 'interface' 'wan'
option 'ifname' 'eth0'
option 'proto' 'dhcp'
# 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