openwrt

OpenWrt: Split Toolchain for faster Firmware Build Times

Sven Bachmann
At work we’re using Hudson to automatically build projects whenever something is changed in a SCM. For most projects you’ll get fast results if your checkin breaks something which you don’t mind because you not always rebuild the complete project. Now, OpenWrt brings its own toolchain, which compiles the complete local and cross-compiling stuff because the compiler on the host is normally a bit behind and does not contain latest fixes for ARM and other architectures.

arm: remove thumb instruction "bx lr" from EABI binary

Sven Bachmann
Today I had a strange error using the GCC version 4.4.1 with EABI support on a non thumb-ARMv4. Everytime I compiled something, with and w/o the -mno-thumb-interwork parameter it also contained the bx lr instruction which is only for later ARM processors with thumb support.The only solution seemed to be to patch the GCC. Urgs… not really a nice solution, because recompiling GCC takes 3 stages and much time. After lots of googling I finally found the solution in the Debian Wiki.

uClibc: "bx r6" compile error on ARM

Sven Bachmann
While compiling OpenWrt for an ARM compatible processor I got the following error: {standard input}: Assembler messages: {standard input}:39: Error: selected processor does not support `bx r6' I found the solution in the The definitive guide to GCC book from William Von Hagen (I don’t own it, I found it via Google Books). You have to disable the the USE_BX flag in the uClibc config file and everything will be fine.

OpenWrt 8.09: ssh freischalten

Sven Bachmann
Da sich bei OpenWrt 8.09 ein wenig geändert hat, ist nun ein etwas anderer Weg notwendig, um von aussen ssh zu nutzen. Freischalten über LuCI Administration Network->Firewall->Traffic Control Advanced Rules->Add Entry Additional Field->Protocol: Add Name: ssh Source: wan Destination: Device Protocol: TCP Destination Port: 22 Action: accept Save & Apply` Freischalten über uci uci add firewall rule uci set firewall.@rule[-1]._name=ssh uci set firewall.@rule[-1].src=wan uci set firewall.@rule[-1].target=ACCEPT uci set firewall.

Using a 56k modem with an Asus wl-500g premium router and OpenWrt Kamikaze 7.09

Sven Bachmann
Hi there, this (easter) weekend, I had to fiddle around with an Asus WLAN router, a 56k modem (yes, in Germany we have places without DSL or similar things) and OpenWrt. And what should I say? It works! Thanks to OpenWrt.First of all, you need some packages which you can install with ipkg on the router: chat, ppp, various usb modules (see openwrt wiki for details) and the usb-serial module.

Trying to port OpenWrt to the Siemens SE515

Sven Bachmann
Hi, currently, the following things are done, but I’m not sure if they all are necessary: changed kernel load-address to 0x80010000 enabled CFE and EARLY_PRINTK in Kconfig (EARLY_PRINTK was added from the opensourced old prom-Routines) disabled the mpi_init - does this device have a pci bus? So for now, the kernel spits out the following (the MPI-line is a fake ;-)): Linux version 2.6.24.2 (sven@lenni) (gcc version 4.1.2) #27 Thu Feb 21 03:36:16 CET 2008 Broadcom BCM963xx prom init Boot loader is : CFEv2 console [early0] enabled CPU revision is: 00028000 (Broadcom BCM6345) Broadcom BCM963xx MPI Determined physical RAM map: memory: 00fa0000 @ 00000000 (usable) Zone PFN ranges: Normal 0 -> 4000 Movable zone start PFN for each node early_node_map[1] active PFN ranges 0: 0 -> 4000 Built 1 zonelists in Zone order, mobility grouping off.