hello,
i am new on this list and somehow a newbee in all this deep kernel
crosscompiling and toolchain stuff as well, but working for a longer
time on a armnommu cpu based wireless accesspoint from good old
intersil (which is now conexant).
the device what i am talking about, is called isl3893 and is found
somehow in the uclinux patched 2.4 kernel sources, what surprised me,
but anyway, this way of bulding a new kernel fails.

the project homepage can be found under isl3893.sf.net. i need to
update the status on the page, because many new things happend.
so, as i told, this cpu has no mmu but a mpu mechanism in the kernel.
at that time intersil started this device plattform, they took a
2.4.19 cvs checkout from the kerneltree, put a lot of stuff into the
kernel, very dirty (many ifdevs) and did not updated the cvs back.
based on my knowledge i am at the moment not able to patch newer
kernel with the intersil changes. as i know jet, in between the linux
kernel and the cpu a so called MVC is managing the net devices like
wireless and ethernet.
this is the reason why the kernel is so specific.
my three questions now:
first, does anybody know something about this device/cpu?
second, is it possible to use pthread functions in software i want to
compile/use in this  enviroment? my old uclibc does not have this, and
it is not easy to just take an other uclibc, because intersil changed
some code there as well. as i know for example, to run programms in
daemon mode is not possible under uclibc, so maybe it is the same with
pthread.
an other problem i figured out, is the dprintf syntax which is not
known by the uclibc and is used in debug output funktions.
my last questions is somehow based on a very strange behavior.
my final goal is to use this device as an wireless mesh router. the
routing daemon is olsr (http://olsr.org) or batman
(http://open-mesh.net/batman).i dont know if you heard about freifunk
and our meshnetwork with more then 500 nodes in berlin germany. at the
time the net was very small, like 50 nodes the olsrd was running well
on this device. now with this large number of routing entries, olsrd
crashed because of running out of memory, and here is the problem
about the nommu architecture and the software based mpu.
under /proc i have a mpucount which is now counting up.
my research for any solutions ends up on this document about how to
allocate memory for special softwaresolutions like routing, here the
link:
http://www.cyberguard.info/snapgear/tb20020530.html
i tried to change the way of malloc in uClibc/Config from
malloc-simple to malloc-smart and i turnd on the MPU suff in the
Kernel config, with no success. does anybody know if this MPU is only
used in this special intersil device, or is it used on other nommu
plattforms?

if somebody is familiar with this plattform, or is willing to look
into the code, i can send a clean kernel patch to 2.4.19-uc1 what i am
using right now. it could also be, that routing stuff is not working
in this way on this device anyway, so i have to quit with it. at the
moment, i figured out, routing entries are made but can not delete,
maybe of the difficult memory behavior. but i dont know jet, if this
is a kernel or mvc bug.
maybe someone has a goot idea, that would help me,
regards ulf kypke
_______________________________________________
uClinux-dev mailing list
uClinux-dev@uclinux.org
http://mailman.uclinux.org/mailman/listinfo/uclinux-dev
This message was resent by uclinux-dev@uclinux.org
To unsubscribe see:
http://mailman.uclinux.org/mailman/options/uclinux-dev

Reply via email to