ISL3893 Source: Difference between revisions
No edit summary |
|||
(3 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
== Arco's source == | |||
I tried to create a smaller sourcetree that has the usb patch in it. At first the make dep in the kernel dir is still needed. | |||
* [http://appeltaart.mine.nu/isl3893/isl3893-source-20060403.tar.bz2 http://appeltaart.mine.nu/isl3893/isl3893-source-20060403.tar.bz2] (35MB) | |||
And now create it: | |||
tar xvjf isl3893-source-YYYYMMDD.tar.bz2 | |||
cd isl3893src | |||
make dep -C firmware/uClinux/kernel/ | |||
cd firmware/apfw | |||
make image | |||
#recovery Boot your AP | |||
EXPORT APIP=192.x.y.z | |||
./putfirmware.sh | |||
== Compiling the source == | == Compiling the source == | ||
=== the short version === | === the short version === | ||
Line 168: | Line 183: | ||
There may be trouble getting the webserver boa (/etc/init.d/boa and /bin/boa) running, and a webfilesystem has to be added later. | There may be trouble getting the webserver boa (/etc/init.d/boa and /bin/boa) running, and a webfilesystem has to be added later. | ||
== Known problems == | |||
* depmod fails for modules: change uClinux/kernel/Makefile DEPMOD=/bin/true |
Latest revision as of 12:51, 3 April 2006
Arco's source
I tried to create a smaller sourcetree that has the usb patch in it. At first the make dep in the kernel dir is still needed.
And now create it:
tar xvjf isl3893-source-YYYYMMDD.tar.bz2 cd isl3893src make dep -C firmware/uClinux/kernel/ cd firmware/apfw make image #recovery Boot your AP EXPORT APIP=192.x.y.z ./putfirmware.sh
Compiling the source
the short version
This example has been made with the medion source.
- download the gpl1010.tgz
- untar this
- cd v1010/Software/firmware/uClinux/kernel and do a "make dep"
- cd to v1010/Software/firmware/apfw and do a make image
- No error? then there is a recent apfirmware.img in the apfw dir.
The quality of the manufacturers source..
It seems to be a sport to create a sourcetree that cannot be compiled into something working. It sure is no advertising like "Our product is as reliable as the source we supply"
Here are the results of several sources:
Medion MD40900
This one compiles into a firmware
cd /v1010/Software/firmware/uClinux/kernel make dep cd /v1010/Software/firmware/apfw make image
Problems:
- the datastore gives an error and the AP reboots
- make clean removes al the proprietery stuff
Sitecom WL122 (v1)
apps-non-gpl is not included. So it won't even compile. You can copy the apps-non-gpl from another source.
Fujitsu Siemens AP600
This one compiles into a firmware
cd /v1010/Software/firmware/uClinux/kernel make dep cd /v1010/Software/firmware/apfw make image
Problems:
- the datastore gives an error and the AP reboots
- make clean removes al the proprietery stuff
Linksys Wet54G V2
There are two sources, 2.10 and 2.07 This asks for a smidump which understands IslSchema. changing the uClinux/apps-non-gpl/datastore/etc/Makefile
schema: $(MIBS) MIB-exceptions #$(SMIDUMP) -f IslSchema $(MIBS) -o schema -e MIB-exceptions $(SMIDUMP) -f smiv2 $(MIBS) -o schema
It compiles now but my guess is that it's very broken. This sourcetree then survises a make clean because the .o files are not removed.....
Linksys Wetgs5
See http://www.student.kuleuven.ac.be/~s0169612/isl3893.html for more info.
So what's next?
Probably the best option is to make a new base firmware to work with. All patches can be applied to this and it can distributed with all patches on it.
idea's:
- standard shelld
- network settings from make menuconfig
- apps for gpio
Wish:
- integration of uClinux or any other tree
- 2.6 kernel?
Building the firmware
Some steps may be unnecessary for the AP-600-sources, but can become necessary for other source-trees. They will not do any damage though.
The AP-600-sources were chosen because they are the easiest to build. They are not necessarily the best.
Also this HOWTO is not meant to be finished. You will have some basic functionality including shell-access. Then you can start making your own mods.
Get AP-600RP_GNU_source-code.zip. That should be the firmware-sources as released by Fujitsu-Siemens.
unzip AP-600RP_GNU_source-code.zip tar -xvzf Code.tgz cd v1010 chmod -Rv a+rwx * cd Software/firmware/uClinux/ make menuconfig # change flash-layout to 10000/200000/360000 # leave "Accesspoint Features" as they are # Development options: include shelld, additional command line tools, meminfo # exit + save cd kernel # Software/firmware/uClinux/kernel make menuconfig # no changes, exit + save make dep cd .. # Software/firmware cd ../apfw # Software/firmware/apfw make image # takes a few minutes. You should then have a new firmware-image in file 'apfirmware.img' # DO NOT UPLOAD THIS YET
Unfortunately there are a few bugs in the sources. I do not speculate on whether ZCom or Fujitsu-Siemens or whoever else might have planted these intentionally :-(
So now some patches:
cd ../uClinux/romfs/etc # Software/firmware/uClinux/romfs/etc/ vi startup.list # comment out datastore and paed, they are somehow corrupt # exit + save
# --- This part concerning /etc/passwd is only necessary for boa --- # # passwd is normally softlinked to /usr/etc, here we replace it by a file in /etc mv passwd passwd.old vi passwd # enter these lines: root::0:0:/:/bin/sh nobody::1234:1234::/:/bin/sh # exit + save
cd init.d # Software/firmware/uClinux/romfs/etc/init.d/ vi network # after the line 'ifconfig lo 127.0.0.1 up' add these lines a) for having the AP get its IP by dhcp: ifup eth0 autoip ifup eth1 autoip ifup br0 autoip ifup br0 dhcp # exit + save
b) Or for static IP: ifup eth0 autoip ifup eth1 autoip ifup br0 static 192.168.1.253 255.255.255.0 # exit + save
cd ../../.. # Software/firmware/uClinux/ cd ../apfw # Software/firmware/apfw make image # wait a while ...
Then you can hopefully upload apfirmware.img. This is also known as the "Load-And-Pray"-Mode :-)
To upload put your AP in safe mode by turning on the power with the reset-button pressed. The AP now has the IP 192.0.2.93 and no firmware. It responds only to tftp and ping.
Connect it to your PC and
ifconfig eth0 192.0.2.99 tftp 192.0.2.93 verbose trace bin put apfirmware.img quit # upload takes 1-2 minutes, led on AP flashes fast # the AP should then reboot automatically
# then: ifconfig eth0 192.168.1.99
The AP should come up and get an IP by dhcp or respond to ping 192.168.1.253. You can monitor what is happening if you start a sniffer on eth0.
You should be able to telnet 192.168.1.253
There may be trouble getting the webserver boa (/etc/init.d/boa and /bin/boa) running, and a webfilesystem has to be added later.
Known problems
- depmod fails for modules: change uClinux/kernel/Makefile DEPMOD=/bin/true