OLPC/Kernel

= Kernel =


 * power management
 * CPU frequency scaling (current GX2 does not support it)
 * suspend to RAM (when?)
 * at the drop of the hat
 * in ebook mode and allow the DCON ASIC to handle video refresh
 * shutdown particular unused devices
 * memory management
 * compressed caching
 * relocation of code/data, increasing page locality, thus decreasing memory footprint
 * out of memory conditions
 * current code just says score = heuristic(process) according to alan
 * probably easy to set, just requires a deviation from the normal kernel
 * Filesystem
 * Stable JFFS2 with xattr support
 * device drivers
 * Audio: AC97 codec (probably adding support for the AD1888)
 * Power management for this chip is critical - good amount of work to do here
 * Input devices: keyboard, trackpad (supporting pointing, scrolling, and possibly graphical input).
 * additional buttons adjacent to screen for use in E-Book/tablet mode
 * wireless: Marvell (usb version of the 8388 (google for 88w8388))
 * Status indicators, visible with lid closed:
 * Power
 * Battery status
 * Wifi active
 * need an fbdev driver because there will be no vesa mode on the video card
 * AMD Geode GX2 (CS5535)
 * Requires power management updates
 * AMD Claims that unused parts of the chipset will "turn themselves off automatically if they aren't used" but that needs investigation
 * ALSA driver on the website supports PM but we have to do investigations of the IP around it - did it come from the windows driver or not?


 * Video card (GX2 embedded): dealt with by X.org only?
 * DCON ASIC (bridge from CPU to display) is in the process of design.
 * note that this chip might also generate keyboard events off the display part of the laptop
 * also handles unswizzling for the display into a standard frame buffer
 * poor man's antialiasing
 * control of refresh speed
 * local frame buffer to allow the CPU to be put into S3 while the panel lives on
 * rotation (maybe)