OpenWrt Forum Archive

Topic: Buffalo WHR-HP-AG108

The content of this topic has been archived on 15 Mar 2018. There are no obvious gaps in this topic, but there may still be some posts missing at the end.

I have a couple of Buffalos AG108 available for playing here.... The serial console is already attached and I have flashed <censored firmware>. It boots properly...

Now I'm trying to compile openwrt for it (buildroot-ng).

nbd wrote:

Basic support for the Buffalo WHR-HP-AG108 works. You have to change HAL from ap51 to ap30 in package/madwifi/Makefile, then wifi works as well.
One thing that's still untested is booting from flash, but theoretically that should work as well.

I'm at a loss here... how am I supposed to load the firmware ? Using redboot and load from a tftp server?

I also have an error building revision 6626 for atheros (make menuconfig, then select atheros and all defaults). It fails with the following error during kernel config/compile:

#
# configuration written to .config
#
scripts/kconfig/conf -s arch/mips/Kconfig
  CHK     include/linux/version.h
/bin/sh: -c: line 1: syntax error near unexpected token `('
/bin/sh: -c: line 1: `set -e; echo '  CHK     include/linux/utsrelease.h'; mkdir -p include/linux/;     if [ `echo -n "2.6.19.2 .file 1null .section.mdebug.abi32 .previous .ident GCC:(GNU)4.1.2" | wc -c ` -gt 64 ]; then echo '"2.6.19.2 .file 1null .section.mdebug.abi32 .previous .ident GCC:(GNU)4.1.2" exceeds 64 characters' >&2; exit 1; fi; (echo \#define UTS_RELEASE \"2.6.19.2 .file 1null .section.mdebug.abi32 .previous .ident GCC:(GNU)4.1.2\";) < include/config/kernel.release > include/linux/utsrelease.h.tmp; if [ -r include/linux/utsrelease.h ] && cmp -s include/linux/utsrelease.h include/linux/utsrelease.h.tmp; then rm -f include/linux/utsrelease.h.tmp; else echo '  UPD     include/linux/utsrelease.h'; mv -f include/linux/utsrelease.h.tmp include/linux/utsrelease.h; fi'
make[6]: *** [include/linux/utsrelease.h] Error 2
make[5]: *** [prepare] Error 2
make[5]: Leaving directory `/home/pg/openwrt/trunk/build_mips/linux-2.6-atheros/linux-2.6.19.2'
make[4]: *** [/home/pg/openwrt/trunk/build_mips/linux-2.6-atheros/linux-2.6.19.2/.configured] Error 2
make[4]: Leaving directory `/home/pg/openwrt/trunk/target/linux/atheros-2.6'
make[3]: *** [prepare] Error 2
make[3]: Leaving directory `/home/pg/openwrt/trunk/target/linux'
make[2]: *** [linux-prepare] Error 2
make[2]: Leaving directory `/home/pg/openwrt/trunk/target'
make[1]: *** [target/compile] Error 2
make[1]: Leaving directory `/home/pg/openwrt/trunk'
make: *** [world] Error 2

I found the cause in ./build_mips/linux-2.6-atheros/linux-2.6.19.2/Makefile

# KERNELRELEASE can change from a few different places, meaning version.h
# needs to be updated, so this check is forced on all builds

uts_len := 64
define filechk_utsrelease.h
        if [ `echo -n "$(KERNELRELEASE)" | wc -c ` -gt $(uts_len) ]; then \
          echo '"$(KERNELRELEASE)" exceeds $(uts_len) characters' >&2;    \
          exit 1;                                                         \
        fi;                                                               \
        (echo \#define UTS_RELEASE \"$(KERNELRELEASE)\";)
endef

And this is actually correct as "2.6.19.2 .file 1null .section.mdebug.abi32 .previous .ident GCC:(GNU)4.1.2" has 74 characters.... Now KERNELRELEASE is defined in ./build_mips/linux-2.6-atheros/linux-2.6.19.2/include/config/kernel.release and it contains the above string.... I tried to change it by hand but it obviously gets overwritten by the kernel Makefile.

This leads me to believe that I'm not using the correct "make" utility. Under debian there're many different make flavours. (nmake, pmake, cmake, tmake etc etc). I have installed the normal make which is used to compile everything. Shall I change it?

The problem code is the one dealing with the "localver" variable:

___localver = $(objtree)/localversion* $(srctree)/localversion*
__localver  = $(sort $(wildcard $(___localver)))
# skip backup files (containing '~')
_localver = $(foreach f, $(__localver), $(if $(findstring ~, $(f)),,$(f)))

localver = $(subst $(space),, \
           $(shell cat /dev/null $(_localver)) \
           $(patsubst "%",%,$(CONFIG_LOCALVERSION)))

At the end it contains junk (to my eyes at least). I have commented it out and compilation continues, but did I do right?
mesher

(Last edited by mesher on 21 Mar 2007, 11:03)

A quick update: It seems that my problems were due to the debian sarge system I used to compile: It won't work. I moved to etch and not it compiles properly. Perhaps a quick note on the wiki/buildroot-ng ?

The discussion might have continued from here.