Hi,

here is the updated status. If you are interested in working on any of them, 
reply to this message on the list :)

KERNEL AND LOW LEVEL DEVELOPMENT
* Implement a proper FDPIC loader with shared libraries support. Nico from 
OpenWrt is working on this and has already written untested code that should 
support statically linked binaries (can you put that online somewhere, even if 
you didn't test?).
Once this code works, a possible technique is to use a statically linked FDPIC 
GDB server from which shared library support will be debugged.
=> still open. This problem is tedious to tackle and pretty important.

* Find out why kernel 2.6.33 freezes when running Busybox init (and fix).
The symptom is the printing of the message:
"mount: mounting /dev/root on / failed: Invalid argument"
followed by a complete system lock-up. If this message is related to the 
crash, it suggests the mount API might have been changed between 2.6.26 (which 
works) and 2.6.33.
=> fixed by Takeshi

* Fix SLUB and SLOB memory allocators, which cause this error when enabled:
BUG: failure at mm/nommu.c:114/kobjsize()!
Kernel panic - not syncing: BUG!
If we choose to ignore these problems and keep SLAB, then we should find a way 
to handle allocations of large memory blocks (would be nice to run Qt4 apps ;)

* Fix poll() system call
=> fixed by Takeshi

* Fix /proc/self/exe
=> fixed by Takeshi

* Fix kernel modules
=> fixed by Richard

* Develop an ALSA driver for the AC'97 controller
=> I have started working on this but there are still major bugs. It could be 
useful to have a QEMU model of the AC'97 controller to track those down.
http://github.com/tmatsuya/linux-2.6/tree/master/sound/soc/milkymist/

* Develop a driver for the TMU2 accelerator
* Develop a driver for the PFPU accelerator (low-level, VLIW instruction 
scheduling etc. should be done in userspace, see below).
* Develop a driver for Minimac (the new Ethernet MAC). Takeshi, are you 
working on this?

LIBRARIES
* Develop an userspace library to use the TMU2. This should be 
straightforward. We won't use DirectFB. In case the library is running on 
systems where the TMU2 is not available (e.g. a PC, for tests), a software or, 
better, OpenGL implementation should be used.
* Develop a userspace library to use the PFPU. This is a more complex task. 
The library should have a high-level interface that hides the gory details of 
using the PFPU (e.g. the library must include a compiler and VLIW scheduler). 
The API should be clean and well-designed and the PFPU should be emulated on 
systems where it is not available.
Basically, we want a floating point numeric computation library that is able 
to use PFPU acceleration where it is available.
* Support TMU2 acceleration (via the library) in Genode FX for 
scaling images and blitting/moving windows.

RENDERER
* Port the existing rendering code (in the SoC demo firmware, which was shown 
on video) to Linux, using SDL and the TMU2 and PFPU libraries plus ALSA for 
audio input.
* Implement more MilkDrop features (wave modes, per-pixel equations, ...).
* Test presets and, when they don't match the original, find out why.

VJ APPLICATION
* Develop a neat user-friendly interface using Genode FX. This is for high 
level programmers and usability experts :)
* Integrate the renderer into the Genode FX-based code.
=> I have started developing the app (but it's only a start):
http://github.com/lekernel/flickernoise

RESOURCES
* TMU2, PFPU and AC97 cores docs:
http://www.milkymist.org/doc/ac97.pdf
http://www.milkymist.org/doc/tmu2.pdf
http://www.milkymist.org/doc/pfpu.pdf
* Genode FX
http://www.genode-labs.com/products/fpga-graphics
* SDL
http://www.libsdl.org/
* Writing an ALSA driver
http://www.alsa-project.org/~tiwai/writing-an-alsa-driver

Thanks,
Sébastien
_______________________________________________
http://lists.milkymist.org/listinfo.cgi/devel-milkymist.org
IRC: #milkym...@freenode
Webchat: www.milkymist.org/irc.html
Wiki: www.milkymist.org/wiki

Reply via email to