DISCLAIMER:
If you brick your device following this instructions, it's NOT my fault!!!!!!
The Asus WL-520GU, WL-500GPv2, and probably other routers are built upon the BCM5354 SoC with built in LP PHY.
Thanks to Stefanik Gabor (Sorry if I messed your name), the Open Source b43 driver now has b43 support !
I compiled a patch to upgrade trunk to use compat-wireless-02-09-09, including LP PHY support.
Special Thanks also to Petr Kubin to fix a crash with this driver.
WHAT'S TESTED:
*) connecting to WPA2 PSK protected AP as STA
ISSUES:
*) Only 1 Mbit/s
*) I had massive issues with the configuration. now I used my own script (in openwrt), and it works.
here are the instructions:
mkdir openwrt
cd openwrt
# the patch is against trunk 17570
svn co svn://svn.openwrt.org/openwrt/trunk/ -r 17570 .
# check if patch applies clean
patch -p1 --dry-run < ../wl520gu.patch
# if no errors are shown, apply patch
patch -p1 < ../wl520gu.patch
# compile
make menuconfig
make
# now install: power-cycle your router while keeping the reset switch pressed, when it blinks w/ 1 Hz, do:
atftp --trace --option "timeout 1" --option "mode octet" --put --local-file bin/openwrt-brcm47xx-squashfs.trx 192.168.1.1
# you must set up your ethernet device to 192.168.1.x, where x > 1, and also connect the router on LAN1.
After some time, powercycle the router again.
Now LAN1 won't work any more (you have to mess w/ the switch cfg), so use LAN4
login to your router on 192.168.1.1 via telnet and configure
here is my config:
CONFIG_HAVE_DOT_CONFIG=y
CONFIG_TARGET_brcm47xx=y
CONFIG_TARGET_brcm47xx_None=y
CONFIG_TARGET_BOARD="brcm47xx"
CONFIG_DEFAULT_TARGET_OPTIMIZATION="-Os -pipe -mips32 -mtune=mips32 -funit-at-a-time"
CONFIG_LINUX_2_6_28=y
CONFIG_DEFAULT_base-files=y
CONFIG_DEFAULT_busybox=y
CONFIG_DEFAULT_dnsmasq=y
CONFIG_DEFAULT_dropbear=y
CONFIG_DEFAULT_firewall=y
CONFIG_DEFAULT_hotplug2=y
CONFIG_DEFAULT_iptables=y
CONFIG_DEFAULT_kmod-diag=y
CONFIG_DEFAULT_kmod-ipt-nathelper=y
CONFIG_DEFAULT_kmod-switch=y
CONFIG_DEFAULT_libc=y
CONFIG_DEFAULT_libgcc=y
CONFIG_DEFAULT_mtd=y
CONFIG_DEFAULT_nvram=y
CONFIG_DEFAULT_opkg=y
CONFIG_DEFAULT_ppp=y
CONFIG_DEFAULT_ppp-mod-pppoe=y
CONFIG_DEFAULT_uci=y
CONFIG_DEFAULT_ucitrigger=y
CONFIG_DEFAULT_udevtrigger=y
CONFIG_LINUX_2_6=y
CONFIG_GPIO_SUPPORT=y
CONFIG_PCI_SUPPORT=y
CONFIG_USB_SUPPORT=y
CONFIG_USES_SQUASHFS=y
CONFIG_mipsel=y
CONFIG_ARCH="mipsel"
CONFIG_TARGET_ROOTFS_SQUASHFS=y
CONFIG_OLPC_BOOTSCRIPT_ROOTPART="/dev/sda2"
CONFIG_X86_GRUB_ROOTPART="/dev/hda2"
CONFIG_X86_GRUB_BOOTOPTS=""
CONFIG_LARGEFILE=y
CONFIG_SHADOW_PASSWORDS=y
CONFIG_USE_SSTRIP=y
CONFIG_KERNEL_DEBUG_FS=y
CONFIG_DOWNLOAD_FOLDER=""
CONFIG_AUTOREBUILD=y
CONFIG_BUILD_SUFFIX=""
CONFIG_TARGET_ROOTFS_DIR=""
CONFIG_EXTERNAL_KERNEL_TREE=""
CONFIG_KERNEL_GIT_CLONE_URI=""
CONFIG_KERNEL_GIT_LOCAL_REPOSITORY=""
CONFIG_TARGET_OPTIMIZATION="-Os -pipe -mips32 -mtune=mips32 -funit-at-a-time"
CONFIG_SOFT_FLOAT=y
CONFIG_EXTRA_BINUTILS_CONFIG_OPTIONS=""
CONFIG_BINUTILS_VERSION="2.19.1"
CONFIG_EXTRA_GCC_CONFIG_OPTIONS=""
CONFIG_INSTALL_LIBSTDCPP=y
CONFIG_USE_UCLIBC=y
CONFIG_GCC_VERSION="4.1.2"
CONFIG_UCLIBC_VERSION="0.9.30.1"
CONFIG_LIBC="uClibc"
CONFIG_LIBC_VERSION="0.9.30.1"
CONFIG_TARGET_SUFFIX="uclibc"
CONFIG_UCI_PRECONFIG=y
CONFIG_UCI_PRECONFIG_network_lan_dns=""
CONFIG_UCI_PRECONFIG_network_lan_proto="static"
CONFIG_UCI_PRECONFIG_network_lan_gateway=""
CONFIG_UCI_PRECONFIG_network_lan_netmask="255.255.255.0"
CONFIG_UCI_PRECONFIG_network_lan_ipaddr="192.168.1.1"
CONFIG_PACKAGE_base-files=y
CONFIG_PACKAGE_busybox=y
CONFIG_BUSYBOX_CONFIG_FEATURE_2_6_MODULES=y
CONFIG_BUSYBOX_CONFIG_HAVE_DOT_CONFIG=y
CONFIG_BUSYBOX_CONFIG_FEATURE_BUFFERS_GO_ON_STACK=y
CONFIG_BUSYBOX_CONFIG_SHOW_USAGE=y
CONFIG_BUSYBOX_CONFIG_FEATURE_VERBOSE_USAGE=y
CONFIG_BUSYBOX_CONFIG_FEATURE_COMPRESS_USAGE=y
CONFIG_BUSYBOX_CONFIG_GETOPT_LONG=y
CONFIG_BUSYBOX_CONFIG_FEATURE_DEVPTS=y
CONFIG_BUSYBOX_CONFIG_FEATURE_PIDFILE=y
CONFIG_BUSYBOX_CONFIG_FEATURE_SUID=y
CONFIG_BUSYBOX_CONFIG_FEATURE_PREFER_APPLETS=y
CONFIG_BUSYBOX_CONFIG_BUSYBOX_EXEC_PATH="/proc/self/exe"
CONFIG_BUSYBOX_CONFIG_FEATURE_SYSLOG=y
CONFIG_BUSYBOX_CONFIG_FEATURE_HAVE_RPC=y
CONFIG_BUSYBOX_CONFIG_LFS=y
CONFIG_BUSYBOX_CONFIG_CROSS_COMPILER_PREFIX=""
CONFIG_BUSYBOX_CONFIG_NO_DEBUG_LIB=y
CONFIG_BUSYBOX_CONFIG_INCLUDE_SUSv2=y
CONFIG_BUSYBOX_CONFIG_INSTALL_APPLET_SYMLINKS=y
CONFIG_BUSYBOX_CONFIG_PREFIX="./_install"
CONFIG_BUSYBOX_CONFIG_PASSWORD_MINLEN=6
CONFIG_BUSYBOX_CONFIG_MD5_SIZE_VS_SPEED=2
CONFIG_BUSYBOX_CONFIG_FEATURE_FAST_TOP=y
CONFIG_BUSYBOX_CONFIG_FEATURE_EDITING=y
CONFIG_BUSYBOX_CONFIG_FEATURE_EDITING_MAX_LEN=512
CONFIG_BUSYBOX_CONFIG_FEATURE_EDITING_HISTORY=256
CONFIG_BUSYBOX_CONFIG_FEATURE_TAB_COMPLETION=y
CONFIG_BUSYBOX_CONFIG_FEATURE_EDITING_FANCY_PROMPT=y
CONFIG_BUSYBOX_CONFIG_FEATURE_COPYBUF_KB=4
CONFIG_BUSYBOX_CONFIG_IOCTL_HEX2STR_ERROR=y
CONFIG_BUSYBOX_CONFIG_FEATURE_SEAMLESS_GZ=y
CONFIG_BUSYBOX_CONFIG_BUNZIP2=y
CONFIG_BUSYBOX_CONFIG_GUNZIP=y
CONFIG_BUSYBOX_CONFIG_GZIP=y
CONFIG_BUSYBOX_CONFIG_TAR=y
CONFIG_BUSYBOX_CONFIG_FEATURE_TAR_CREATE=y
CONFIG_BUSYBOX_CONFIG_FEATURE_TAR_FROM=y
CONFIG_BUSYBOX_CONFIG_FEATURE_TAR_GNU_EXTENSIONS=y
CONFIG_BUSYBOX_CONFIG_BASENAME=y
CONFIG_BUSYBOX_CONFIG_CAT=y
CONFIG_BUSYBOX_CONFIG_CHGRP=y
CONFIG_BUSYBOX_CONFIG_CHMOD=y
CONFIG_BUSYBOX_CONFIG_CHOWN=y
CONFIG_BUSYBOX_CONFIG_CHROOT=y
CONFIG_BUSYBOX_CONFIG_CP=y
CONFIG_BUSYBOX_CONFIG_CUT=y
CONFIG_BUSYBOX_CONFIG_DATE=y
CONFIG_BUSYBOX_CONFIG_FEATURE_DATE_ISOFMT=y
CONFIG_BUSYBOX_CONFIG_DD=y
CONFIG_BUSYBOX_CONFIG_FEATURE_DD_SIGNAL_HANDLING=y
CONFIG_BUSYBOX_CONFIG_DF=y
CONFIG_BUSYBOX_CONFIG_DIRNAME=y
CONFIG_BUSYBOX_CONFIG_DU=y
CONFIG_BUSYBOX_CONFIG_FEATURE_DU_DEFAULT_BLOCKSIZE_1K=y
CONFIG_BUSYBOX_CONFIG_ECHO=y
CONFIG_BUSYBOX_CONFIG_FEATURE_FANCY_ECHO=y
CONFIG_BUSYBOX_CONFIG_ENV=y
CONFIG_BUSYBOX_CONFIG_EXPR=y
CONFIG_BUSYBOX_CONFIG_FALSE=y
CONFIG_BUSYBOX_CONFIG_HEAD=y
CONFIG_BUSYBOX_CONFIG_FEATURE_FANCY_HEAD=y
CONFIG_BUSYBOX_CONFIG_HOSTID=y
CONFIG_BUSYBOX_CONFIG_ID=y
CONFIG_BUSYBOX_CONFIG_LENGTH=y
CONFIG_BUSYBOX_CONFIG_LN=y
CONFIG_BUSYBOX_CONFIG_LS=y
CONFIG_BUSYBOX_CONFIG_FEATURE_LS_FILETYPES=y
CONFIG_BUSYBOX_CONFIG_FEATURE_LS_FOLLOWLINKS=y
CONFIG_BUSYBOX_CONFIG_FEATURE_LS_RECURSIVE=y
CONFIG_BUSYBOX_CONFIG_FEATURE_LS_SORTFILES=y
CONFIG_BUSYBOX_CONFIG_FEATURE_LS_TIMESTAMPS=y
CONFIG_BUSYBOX_CONFIG_FEATURE_LS_USERNAME=y
CONFIG_BUSYBOX_CONFIG_FEATURE_LS_COLOR=y
CONFIG_BUSYBOX_CONFIG_FEATURE_LS_COLOR_IS_DEFAULT=y
CONFIG_BUSYBOX_CONFIG_MD5SUM=y
CONFIG_BUSYBOX_CONFIG_MKDIR=y
CONFIG_BUSYBOX_CONFIG_MKFIFO=y
CONFIG_BUSYBOX_CONFIG_MKNOD=y
CONFIG_BUSYBOX_CONFIG_MV=y
CONFIG_BUSYBOX_CONFIG_NICE=y
CONFIG_BUSYBOX_CONFIG_PRINTF=y
CONFIG_BUSYBOX_CONFIG_PWD=y
CONFIG_BUSYBOX_CONFIG_RM=y
CONFIG_BUSYBOX_CONFIG_RMDIR=y
CONFIG_BUSYBOX_CONFIG_SEQ=y
CONFIG_BUSYBOX_CONFIG_SLEEP=y
CONFIG_BUSYBOX_CONFIG_FEATURE_FANCY_SLEEP=y
CONFIG_BUSYBOX_CONFIG_SORT=y
CONFIG_BUSYBOX_CONFIG_SYNC=y
CONFIG_BUSYBOX_CONFIG_TAIL=y
CONFIG_BUSYBOX_CONFIG_FEATURE_FANCY_TAIL=y
CONFIG_BUSYBOX_CONFIG_TEE=y
CONFIG_BUSYBOX_CONFIG_FEATURE_TEE_USE_BLOCK_IO=y
CONFIG_BUSYBOX_CONFIG_TEST=y
CONFIG_BUSYBOX_CONFIG_TOUCH=y
CONFIG_BUSYBOX_CONFIG_TR=y
CONFIG_BUSYBOX_CONFIG_TRUE=y
CONFIG_BUSYBOX_CONFIG_UNAME=y
CONFIG_BUSYBOX_CONFIG_UNIQ=y
CONFIG_BUSYBOX_CONFIG_WC=y
CONFIG_BUSYBOX_CONFIG_YES=y
CONFIG_BUSYBOX_CONFIG_FEATURE_PRESERVE_HARDLINKS=y
CONFIG_BUSYBOX_CONFIG_FEATURE_AUTOWIDTH=y
CONFIG_BUSYBOX_CONFIG_FEATURE_HUMAN_READABLE=y
CONFIG_BUSYBOX_CONFIG_FEATURE_MD5_SHA1_SUM_CHECK=y
CONFIG_BUSYBOX_CONFIG_CLEAR=y
CONFIG_BUSYBOX_CONFIG_RESET=y
CONFIG_BUSYBOX_CONFIG_MKTEMP=y
CONFIG_BUSYBOX_CONFIG_START_STOP_DAEMON=y
CONFIG_BUSYBOX_CONFIG_WHICH=y
CONFIG_BUSYBOX_CONFIG_AWK=y
CONFIG_BUSYBOX_CONFIG_FEATURE_AWK_LIBM=y
CONFIG_BUSYBOX_CONFIG_DIFF=y
CONFIG_BUSYBOX_CONFIG_SED=y
CONFIG_BUSYBOX_CONFIG_VI=y
CONFIG_BUSYBOX_CONFIG_FEATURE_VI_MAX_LEN=1024
CONFIG_BUSYBOX_CONFIG_FEATURE_VI_COLON=y
CONFIG_BUSYBOX_CONFIG_FEATURE_VI_YANKMARK=y
CONFIG_BUSYBOX_CONFIG_FEATURE_VI_SEARCH=y
CONFIG_BUSYBOX_CONFIG_FEATURE_VI_USE_SIGNALS=y
CONFIG_BUSYBOX_CONFIG_FEATURE_VI_DOT_CMD=y
CONFIG_BUSYBOX_CONFIG_FEATURE_VI_READONLY=y
CONFIG_BUSYBOX_CONFIG_FEATURE_VI_SETOPTS=y
CONFIG_BUSYBOX_CONFIG_FEATURE_VI_SET=y
CONFIG_BUSYBOX_CONFIG_FEATURE_VI_WIN_RESIZE=y
CONFIG_BUSYBOX_CONFIG_FEATURE_VI_OPTIMIZE_CURSOR=y
CONFIG_BUSYBOX_CONFIG_FEATURE_ALLOW_EXEC=y
CONFIG_BUSYBOX_CONFIG_FIND=y
CONFIG_BUSYBOX_CONFIG_FEATURE_FIND_PRINT0=y
CONFIG_BUSYBOX_CONFIG_FEATURE_FIND_PERM=y
CONFIG_BUSYBOX_CONFIG_FEATURE_FIND_TYPE=y
CONFIG_BUSYBOX_CONFIG_FEATURE_FIND_XDEV=y
CONFIG_BUSYBOX_CONFIG_FEATURE_FIND_MAXDEPTH=y
CONFIG_BUSYBOX_CONFIG_FEATURE_FIND_EXEC=y
CONFIG_BUSYBOX_CONFIG_FEATURE_FIND_USER=y
CONFIG_BUSYBOX_CONFIG_FEATURE_FIND_GROUP=y
CONFIG_BUSYBOX_CONFIG_FEATURE_FIND_NOT=y
CONFIG_BUSYBOX_CONFIG_FEATURE_FIND_DEPTH=y
CONFIG_BUSYBOX_CONFIG_FEATURE_FIND_PAREN=y
CONFIG_BUSYBOX_CONFIG_FEATURE_FIND_SIZE=y
CONFIG_BUSYBOX_CONFIG_FEATURE_FIND_PRUNE=y
CONFIG_BUSYBOX_CONFIG_FEATURE_FIND_PATH=y
CONFIG_BUSYBOX_CONFIG_FEATURE_FIND_REGEX=y
CONFIG_BUSYBOX_CONFIG_GREP=y
CONFIG_BUSYBOX_CONFIG_FEATURE_GREP_EGREP_ALIAS=y
CONFIG_BUSYBOX_CONFIG_FEATURE_GREP_FGREP_ALIAS=y
CONFIG_BUSYBOX_CONFIG_FEATURE_GREP_CONTEXT=y
CONFIG_BUSYBOX_CONFIG_XARGS=y
CONFIG_BUSYBOX_CONFIG_FEATURE_XARGS_SUPPORT_CONFIRMATION=y
CONFIG_BUSYBOX_CONFIG_FEATURE_XARGS_SUPPORT_QUOTES=y
CONFIG_BUSYBOX_CONFIG_FEATURE_XARGS_SUPPORT_TERMOPT=y
CONFIG_BUSYBOX_CONFIG_FEATURE_XARGS_SUPPORT_ZERO_TERM=y
CONFIG_BUSYBOX_CONFIG_INIT=y
CONFIG_BUSYBOX_CONFIG_FEATURE_USE_INITTAB=y
CONFIG_BUSYBOX_CONFIG_FEATURE_KILL_DELAY=0
CONFIG_BUSYBOX_CONFIG_FEATURE_INIT_SYSLOG=y
CONFIG_BUSYBOX_CONFIG_HALT=y
CONFIG_BUSYBOX_CONFIG_MESG=y
CONFIG_BUSYBOX_CONFIG_PASSWD=y
CONFIG_BUSYBOX_CONFIG_FEATURE_PASSWD_WEAK_CHECK=y
CONFIG_BUSYBOX_CONFIG_DEFAULT_MODULES_DIR="/lib/modules"
CONFIG_BUSYBOX_CONFIG_DEFAULT_DEPMOD_FILE="modules.dep"
CONFIG_BUSYBOX_CONFIG_INSMOD=y
CONFIG_BUSYBOX_CONFIG_RMMOD=y
CONFIG_BUSYBOX_CONFIG_LSMOD=y
CONFIG_BUSYBOX_CONFIG_FEATURE_LSMOD_PRETTY_2_6_OUTPUT=y
CONFIG_BUSYBOX_CONFIG_FEATURE_CHECK_TAINTED_MODULE=y
CONFIG_BUSYBOX_CONFIG_DMESG=y
CONFIG_BUSYBOX_CONFIG_FEATURE_DMESG_PRETTY=y
CONFIG_BUSYBOX_CONFIG_FDISK_SUPPORT_LARGE_DISKS=y
CONFIG_BUSYBOX_CONFIG_HEXDUMP=y
CONFIG_BUSYBOX_CONFIG_HWCLOCK=y
CONFIG_BUSYBOX_CONFIG_MOUNT=y
CONFIG_BUSYBOX_CONFIG_FEATURE_MOUNT_NFS=y
CONFIG_BUSYBOX_CONFIG_FEATURE_MOUNT_CIFS=y
CONFIG_BUSYBOX_CONFIG_FEATURE_MOUNT_FLAGS=y
CONFIG_BUSYBOX_CONFIG_FEATURE_MOUNT_FSTAB=y
CONFIG_BUSYBOX_CONFIG_PIVOT_ROOT=y
CONFIG_BUSYBOX_CONFIG_RDATE=y
CONFIG_BUSYBOX_CONFIG_SWITCH_ROOT=y
CONFIG_BUSYBOX_CONFIG_UMOUNT=y
CONFIG_BUSYBOX_CONFIG_FEATURE_UMOUNT_ALL=y
CONFIG_BUSYBOX_CONFIG_FEATURE_MOUNT_LOOP=y
CONFIG_BUSYBOX_CONFIG_CROND=y
CONFIG_BUSYBOX_CONFIG_CRONTAB=y
CONFIG_BUSYBOX_CONFIG_LESS=y
CONFIG_BUSYBOX_CONFIG_FEATURE_LESS_MAXLINES=9999999
CONFIG_BUSYBOX_CONFIG_LOCK=y
CONFIG_BUSYBOX_CONFIG_STRINGS=y
CONFIG_BUSYBOX_CONFIG_TIME=y
CONFIG_BUSYBOX_CONFIG_WATCHDOG=y
CONFIG_BUSYBOX_CONFIG_FEATURE_IPV6=y
CONFIG_BUSYBOX_CONFIG_FEATURE_PREFER_IPV4_ADDRESS=y
CONFIG_BUSYBOX_CONFIG_VERBOSE_RESOLUTION_ERRORS=y
CONFIG_BUSYBOX_CONFIG_ARPING=y
CONFIG_BUSYBOX_CONFIG_BRCTL=y
CONFIG_BUSYBOX_CONFIG_FEATURE_BRCTL_FANCY=y
CONFIG_BUSYBOX_CONFIG_FEATURE_BRCTL_SHOW=y
CONFIG_BUSYBOX_CONFIG_HTTPD=y
CONFIG_BUSYBOX_CONFIG_FEATURE_HTTPD_RANGES=y
CONFIG_BUSYBOX_CONFIG_FEATURE_HTTPD_RELOAD_CONFIG_SIGHUP=y
CONFIG_BUSYBOX_CONFIG_FEATURE_HTTPD_BASIC_AUTH=y
CONFIG_BUSYBOX_CONFIG_FEATURE_HTTPD_AUTH_MD5=y
CONFIG_BUSYBOX_CONFIG_FEATURE_HTTPD_CONFIG_WITH_MIME_TYPES=y
CONFIG_BUSYBOX_CONFIG_FEATURE_HTTPD_CGI=y
CONFIG_BUSYBOX_CONFIG_FEATURE_HTTPD_CONFIG_WITH_SCRIPT_INTERPR=y
CONFIG_BUSYBOX_CONFIG_FEATURE_HTTPD_SET_REMOTE_PORT_TO_ENV=y
CONFIG_BUSYBOX_CONFIG_FEATURE_HTTPD_ENCODE_URL_STR=y
CONFIG_BUSYBOX_CONFIG_FEATURE_HTTPD_ERROR_PAGES=y
CONFIG_BUSYBOX_CONFIG_FEATURE_HTTPD_PROXY=y
CONFIG_BUSYBOX_CONFIG_IFCONFIG=y
CONFIG_BUSYBOX_CONFIG_FEATURE_IFCONFIG_STATUS=y
CONFIG_BUSYBOX_CONFIG_FEATURE_IFCONFIG_HW=y
CONFIG_BUSYBOX_CONFIG_FEATURE_IFCONFIG_BROADCAST_PLUS=y
CONFIG_BUSYBOX_CONFIG_NC=y
CONFIG_BUSYBOX_CONFIG_NETMSG=y
CONFIG_BUSYBOX_CONFIG_NETSTAT=y
CONFIG_BUSYBOX_CONFIG_FEATURE_NETSTAT_WIDE=y
CONFIG_BUSYBOX_CONFIG_FEATURE_NETSTAT_PRG=y
CONFIG_BUSYBOX_CONFIG_NSLOOKUP=y
CONFIG_BUSYBOX_CONFIG_PING=y
CONFIG_BUSYBOX_CONFIG_PING6=y
CONFIG_BUSYBOX_CONFIG_FEATURE_FANCY_PING=y
CONFIG_BUSYBOX_CONFIG_ROUTE=y
CONFIG_BUSYBOX_CONFIG_TELNET=y
CONFIG_BUSYBOX_CONFIG_FEATURE_TELNET_TTYPE=y
CONFIG_BUSYBOX_CONFIG_TELNETD=y
CONFIG_BUSYBOX_CONFIG_FEATURE_TELNETD_STANDALONE=y
CONFIG_BUSYBOX_CONFIG_TRACEROUTE=y
CONFIG_BUSYBOX_CONFIG_FEATURE_TRACEROUTE_VERBOSE=y
CONFIG_BUSYBOX_CONFIG_APP_UDHCPC=y
CONFIG_BUSYBOX_CONFIG_FEATURE_UDHCP_RFC3397=y
CONFIG_BUSYBOX_CONFIG_UDHCPC_DEFAULT_SCRIPT="/usr/share/udhcpc/default.script"
CONFIG_BUSYBOX_CONFIG_UDHCPC_SLACK_FOR_BUGGY_SERVERS=80
CONFIG_BUSYBOX_CONFIG_VCONFIG=y
CONFIG_BUSYBOX_CONFIG_WGET=y
CONFIG_BUSYBOX_CONFIG_FEATURE_WGET_STATUSBAR=y
CONFIG_BUSYBOX_CONFIG_FEATURE_WGET_AUTHENTICATION=y
CONFIG_BUSYBOX_CONFIG_FEATURE_WGET_LONG_OPTIONS=y
CONFIG_BUSYBOX_CONFIG_FREE=y
CONFIG_BUSYBOX_CONFIG_KILL=y
CONFIG_BUSYBOX_CONFIG_KILLALL=y
CONFIG_BUSYBOX_CONFIG_KILLALL5=y
CONFIG_BUSYBOX_CONFIG_PGREP=y
CONFIG_BUSYBOX_CONFIG_PIDOF=y
CONFIG_BUSYBOX_CONFIG_PKILL=y
CONFIG_BUSYBOX_CONFIG_PS=y
CONFIG_BUSYBOX_CONFIG_BB_SYSCTL=y
CONFIG_BUSYBOX_CONFIG_TOP=y
CONFIG_BUSYBOX_CONFIG_FEATURE_TOP_CPU_USAGE_PERCENTAGE=y
CONFIG_BUSYBOX_CONFIG_FEATURE_TOP_CPU_GLOBAL_PERCENTS=y
CONFIG_BUSYBOX_CONFIG_UPTIME=y
CONFIG_BUSYBOX_CONFIG_FEATURE_SH_IS_ASH=y
CONFIG_BUSYBOX_CONFIG_ASH=y
CONFIG_BUSYBOX_CONFIG_ASH_BASH_COMPAT=y
CONFIG_BUSYBOX_CONFIG_ASH_JOB_CONTROL=y
CONFIG_BUSYBOX_CONFIG_ASH_READ_TIMEOUT=y
CONFIG_BUSYBOX_CONFIG_ASH_ALIAS=y
CONFIG_BUSYBOX_CONFIG_ASH_MATH_SUPPORT=y
CONFIG_BUSYBOX_CONFIG_ASH_MATH_SUPPORT_64=y
CONFIG_BUSYBOX_CONFIG_ASH_GETOPTS=y
CONFIG_BUSYBOX_CONFIG_ASH_BUILTIN_ECHO=y
CONFIG_BUSYBOX_CONFIG_ASH_BUILTIN_PRINTF=y
CONFIG_BUSYBOX_CONFIG_ASH_BUILTIN_TEST=y
CONFIG_BUSYBOX_CONFIG_ASH_CMDCMD=y
CONFIG_BUSYBOX_CONFIG_ASH_EXPAND_PRMT=y
CONFIG_BUSYBOX_CONFIG_SYSLOGD=y
CONFIG_BUSYBOX_CONFIG_FEATURE_ROTATE_LOGFILE=y
CONFIG_BUSYBOX_CONFIG_FEATURE_REMOTE_LOG=y
CONFIG_BUSYBOX_CONFIG_FEATURE_IPC_SYSLOG=y
CONFIG_BUSYBOX_CONFIG_FEATURE_IPC_SYSLOG_BUFFER_SIZE=16
CONFIG_BUSYBOX_CONFIG_LOGREAD=y
CONFIG_BUSYBOX_CONFIG_KLOGD=y
CONFIG_BUSYBOX_CONFIG_LOGGER=y
CONFIG_PACKAGE_dnsmasq=y
CONFIG_PACKAGE_dropbear=y
CONFIG_PACKAGE_firewall=y
CONFIG_PACKAGE_hotplug2=y
CONFIG_PACKAGE_iptables=y
CONFIG_PACKAGE_iptables-mod-conntrack=y
CONFIG_PACKAGE_iptables-mod-nat=y
CONFIG_PACKAGE_libc=y
CONFIG_PACKAGE_libgcc=y
CONFIG_PACKAGE_mtd=y
CONFIG_PACKAGE_nvram=y
CONFIG_PACKAGE_opkg=y
CONFIG_PACKAGE_uci=y
CONFIG_PACKAGE_ucitrigger=y
CONFIG_PACKAGE_udevtrigger=y
CONFIG_PACKAGE_wireless-tools=y
CONFIG_PACKAGE_libiptc=y
CONFIG_PACKAGE_libiw=y
CONFIG_PACKAGE_liblua=y
CONFIG_PACKAGE_libnl-tiny=y
CONFIG_PACKAGE_libuci=y
CONFIG_PACKAGE_libuci-lua=y
CONFIG_PACKAGE_libxtables=y
CONFIG_PACKAGE_crda=y
CONFIG_PACKAGE_iw=y
CONFIG_PACKAGE_wpa-supplicant=y
CONFIG_WPA_SUPPLICANT_INTERNAL=y
CONFIG_PACKAGE_kmod-crypto-aes=y
CONFIG_PACKAGE_kmod-crypto-arc4=y
CONFIG_PACKAGE_kmod-crypto-core=y
CONFIG_PACKAGE_kmod-ipt-core=y
CONFIG_PACKAGE_kmod-ipt-conntrack=y
CONFIG_PACKAGE_kmod-ipt-nat=y
CONFIG_PACKAGE_kmod-ipt-nathelper=y
CONFIG_PACKAGE_kmod-crc-ccitt=y
CONFIG_PACKAGE_kmod-diag=y
CONFIG_PACKAGE_kmod-switch=y
CONFIG_PACKAGE_kmod-usb-core=y
CONFIG_PACKAGE_kmod-usb-ohci=y
CONFIG_PACKAGE_kmod-usb2=y
CONFIG_PACKAGE_kmod-b43=y
CONFIG_B43_STABLE=y
CONFIG_PACKAGE_kmod-mac80211=y
CONFIG_KEXEC_TOOLS_TARGET_NAME="mipsel"
CONFIG_PACKAGE_robocfg=y
CONFIG_PACKAGE_lua=y
NOTE: use the "No wireless option !!!"
setup wireless manually later.
here is the dmesg output:
root@OpenWrt:~# dmesg
Linux version 2.6.28.10 (tom@note) (gcc version 4.1.2) #5 Sat Sep 12 12:57:21 CEST 2009
CPU revision is: 00029029 (Broadcom BCM3302)
ssb: Core 0 found: ChipCommon (cc 0x800, rev 0x14, vendor 0x4243)
ssb: Core 1 found: Fast Ethernet (cc 0x806, rev 0x09, vendor 0x4243)
ssb: Core 2 found: MIPS 3302 (cc 0x816, rev 0x08, vendor 0x4243)
ssb: Core 3 found: USB 2.0 Host (cc 0x819, rev 0x02, vendor 0x4243)
ssb: Core 4 found: MEMC SDRAM (cc 0x80F, rev 0x04, vendor 0x4243)
ssb: Core 5 found: IEEE 802.11 (cc 0x812, rev 0x0D, vendor 0x4243)
ssb: Core 6 found: Roboswitch (cc 0x81C, rev 0x02, vendor 0x4243)
ssb: Found rev 0 PMU (capabilities 0x04A63400)
ssb: Initializing MIPS core...
ssb: core 0x0800, irq : 2(S) 3* 4 5 6 D I
ssb: core 0x0806, irq : 2(S) 3 4* 5 6 D I
ssb: core 0x0816, irq : 2(S) 3 4 5* 6 D I
ssb: core 0x0819, irq : 2(S) 3 4 5 6* D I
ssb: core 0x080f, irq : 2(S) 3 4 5 6 D I*
ssb: core 0x0812, irq : 2(S)* 3 4 5 6 D I
ssb: core 0x081c, irq : 2(S) 3 4 5 6 D I*
ssb: set_irq: core 0x0806, irq 4 => 4
ssb: set_irq: core 0x0816, irq 5 => 2
ssb: set_irq: core 0x0812, irq 2 => 5
ssb: after irq reconfiguration
ssb: core 0x0800, irq : 2(S) 3* 4 5 6 D I
ssb: core 0x0806, irq : 2(S) 3 4* 5 6 D I
ssb: core 0x0816, irq : 2(S)* 3 4 5 6 D I
ssb: core 0x0819, irq : 2(S) 3 4 5 6* D I
ssb: core 0x080f, irq : 2(S) 3 4 5 6 D I*
ssb: core 0x0812, irq : 2(S) 3 4 5* 6 D I
ssb: core 0x081c, irq : 2(S) 3 4 5 6 D I*
ssb: Sonics Silicon Backplane found at address 0x18000000
Serial init done.
Determined physical RAM map:
memory: 01000000 @ 00000000 (usable)
Initrd not found or empty - disabling initrd
Zone PFN ranges:
Normal 0x00000000 -> 0x00001000
Movable zone start PFN for each node
early_node_map[1] active PFN ranges
0: 0x00000000 -> 0x00001000
On node 0 totalpages: 4096
free_area_init_node: node 0, pgdat 80268a00, node_mem_map 802b0000
Normal zone: 32 pages used for memmap
Normal zone: 0 pages reserved
Normal zone: 4064 pages, LIFO batch:0
Movable zone: 0 pages used for memmap
Built 1 zonelists in Zone order, mobility grouping off. Total pages: 4064
Kernel command line: root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200
Primary instruction cache 16kB, VIPT, 4-way, linesize 16 bytes.
Primary data cache 16kB, 2-way, VIPT, cache aliases, linesize 16 bytes
PID hash table entries: 64 (order: 6, 256 bytes)
console [ttyS0] enabled
Dentry cache hash table entries: 2048 (order: 1, 8192 bytes)
Inode-cache hash table entries: 1024 (order: 0, 4096 bytes)
Memory: 13488k/16384k available (2157k kernel code, 2896k reserved, 308k data, 136k init, 0k highmem)
Calibrating delay loop... 239.61 BogoMIPS (lpj=479232)
Mount-cache hash table entries: 512
net_namespace: 480 bytes
NET: Registered protocol family 16
Switched to high resolution mode on CPU 0
NET: Registered protocol family 2
IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
TCP established hash table entries: 512 (order: 0, 4096 bytes)
TCP bind hash table entries: 512 (order: -1, 2048 bytes)
TCP: Hash tables configured (established 512 bind 512)
TCP reno registered
NET: Registered protocol family 1
detected lzma initramfs
initramfs: LZMA lc=1,lp=2,pb=2,origSize=512
squashfs: version 3.0 (2006/03/15) Phillip Lougher
Registering mini_fo version $Id$
JFFS2 version 2.2. (NAND) (SUMMARY) © 2001-2006 Red Hat, Inc.
msgmni has been set to 26
io scheduler noop registered
io scheduler deadline registered (default)
Serial: 8250/16550 driver2 ports, IRQ sharing enabled
serial8250: ttyS0 at MMIO 0xb8000300 (irq = 3) is a 16550A
serial8250: ttyS1 at MMIO 0xb8000400 (irq = 3) is a 16550A
serial8250.0: ttyS0 at MMIO 0xb8000300 (irq = 3) is a 16550A
serial8250.0: ttyS1 at MMIO 0xb8000400 (irq = 3) is a 16550A
b44.c:v2.0
eth0: Broadcom 44xx/47xx 10/100BaseT Ethernet 00:1f:c6:7d:91:31
flash init: 0x1c000000 0x02000000
Physically mapped flash: Found 1 x16 devices at 0x0 in 16-bit bank
Physically mapped flash: Found an alias at 0x400000 for the chip at 0x0
Physically mapped flash: Found an alias at 0x800000 for the chip at 0x0
Physically mapped flash: Found an alias at 0xc00000 for the chip at 0x0
Physically mapped flash: Found an alias at 0x1000000 for the chip at 0x0
Physically mapped flash: Found an alias at 0x1400000 for the chip at 0x0
Physically mapped flash: Found an alias at 0x1800000 for the chip at 0x0
Physically mapped flash: Found an alias at 0x1c00000 for the chip at 0x0
Amd/Fujitsu Extended Query Table at 0x0040
number of CFI chips: 1
cfi_cmdset_0002: Disabling erase-suspend-program due to code brokenness.
Flash device: 0x400000 at 0x1fc00000
bootloader size: 131072
Creating 4 MTD partitions on "Physically mapped flash":
0x00000000-0x00020000 : "cfe"
0x00020000-0x003f0000 : "linux"
0x000edc00-0x003f0000 : "rootfs"
mtd: partition "rootfs" doesn't start on an erase block boundary -- force read-only
mtd: partition "rootfs" set to be root filesystem
mtd: partition "rootfs_data" created automatically, ofs=280000, len=170000
0x00280000-0x003f0000 : "rootfs_data"
0x003f0000-0x00400000 : "nvram"
BCM47xx Watchdog Timer enabled (30 seconds, nowayout)
TCP westwood registered
NET: Registered protocol family 17
802.1Q VLAN Support v1.8 Ben Greear <greearb@candelatech.com>
All bugs added by David S. Miller <davem@redhat.com>
VFS: Mounted root (squashfs filesystem) readonly.
Freeing unused kernel memory: 136k freed
Please be patient, while OpenWrt loads ...
diag: Detected 'ASUS WL-520gU'
b44: eth0: Link is up at 100 Mbps, full duplex.
b44: eth0: Flow control is off for TX and off for RX.
roboswitch: Probing device eth0: found!
b44: eth0: powering down PHY
mini_fo: using base directory: /
mini_fo: using storage directory: /jffs
b44: eth0: Link is up at 100 Mbps, full duplex.
b44: eth0: Flow control is off for TX and off for RX.
cfg80211: Calling CRDA to update world regulatory domain
cfg80211: World regulatory domain updated:
(start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp)
(2402000 KHz - 2472000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)
(2457000 KHz - 2482000 KHz @ 20000 KHz), (300 mBi, 2000 mBm)
(2474000 KHz - 2494000 KHz @ 20000 KHz), (300 mBi, 2000 mBm)
(5170000 KHz - 5250000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)
(5735000 KHz - 5835000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
b43-phy0: Broadcom 5354 WLAN found (core revision 13)
phy0: Selected rate control algorithm 'minstrel'
Broadcom 43xx driver loaded [ Features: PL, Firmware-ID: FW13 ]
ip_tables: (C) 2000-2006 Netfilter Core Team
ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
nf_conntrack version 0.5.0 (256 buckets, 1024 max)
ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
ohci_hcd ssb0:1: SSB OHCI Controller
ohci_hcd ssb0:1: new USB bus registered, assigned bus number 1
ohci_hcd ssb0:1: irq 6, io mem 0x18003000
usb usb1: configuration #1 chosen from 1 choice
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 2 ports detected
ohci_hcd ssb0:1: SSB EHCI Controller
ohci_hcd ssb0:1: new USB bus registered, assigned bus number 2
ohci_hcd ssb0:1: irq 6, io mem 0x18003800
ohci_hcd ssb0:1: USB 0.0 started, EHCI 1.00
usb usb2: configuration #1 chosen from 1 choice
hub 2-0:1.0: USB hub found
hub 2-0:1.0: 2 ports detected
b43 ssb0:3: firmware: requesting b43/ucode13.fw
b43 ssb0:3: firmware: requesting b43/lp0initvals13.fw
b43 ssb0:3: firmware: requesting b43/lp0bsinitvals13.fw
b43-phy0: Loading firmware version 410.2160 (2007-05-26 15:32:10)
Registered led device: b43-phy0::tx
Registered led device: b43-phy0::rx
wlan0: direct probe to AP 803d222c (try 1)
wlan0 direct probe responded
wlan0: authenticate with AP 803d222c (try 1)
wlan0: authenticated
wlan0: associate with AP 803d222c (try 1)
wlan0: RX AssocResp from 804b906e (capab=0x431 status=0 aid=2)
wlan0: associated
cfg80211: Calling CRDA for country: DE
cfg80211: Current regulatory domain updated by AP to: DE
(start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp)
(2402000 KHz - 2483500 KHz @ 40000 KHz), (N/A, 2000 mBm)
And here is the script that I needed to load the wireless:
#!/bin/sh /etc/rc.common
# Copyright (C) 2006 OpenWrt.org
START=40
STOP=40
boot() {
# step1: sleep
sleep 60
modprobe b43
#this will load the firmware
ifconfig wlan0 up
#enable wpa_supplicant
wpa_supplicant -iwlan0 -Dwext -c/etc/wpa_supplicant.conf -B
#should be sufficient
sleep 3
udhcpc -t 0 -i wlan0 -b -p /var/run/wlan0.pid -R -h OpenWRT
}
start() {
sleep 60
modprobe b43
ifconfig wlan0 up
wpa_supplicant -iwlan0 -Dwext -c/etc/wpa_supplicant.conf -B
sleep 3
udhcpc -t 0 -i wlan0 -b -p /var/run/wlan0.pid -R -h OpenWRT
}
restart() {
kill `cat /var/run/wlan0.pid`
killall wpa_supplicant
ifconfig wlan0 down
ifconfig wlan0 up
wpa_supplicant -iwlan0 -Dwext -c/etc/wpa_supplicant.conf -B
sleep 3
udhcpc -t 0 -i wlan0 -b -p /var/run/wlan0.pid -R -h OpenWRT
}
stop() {
kill `cat /var/run/wlan0.pid`
killall wpa_supplicant
ifdown -a
}
W/O the sleep statements, the b43 driver requires 3 trys to load the firmware (because the flash is accessed by other processes ?)
And finally, this is the patch (sorry for rapidshare):
http://rapidshare.com/files/279051949/w … patch.html