
Here goes the porting guide of Android to real ARM device.
1) Frame Buffer
Android using "fb0" in following order.
1. /dev/graphics/fb0
2. /dev/fb0
You need to tune following factors
* frame buffer size
* use double buffer to "memory mapped files"
* you have to span virtual resolution 2x times in driver inside.
* xres_virtual = xres
* yres_virtual = yres * 2
* double buffering
* using IOCTL command, exchange coordination of yres to y 0
2) Touch Screen
* Android opens input device directly, and returns the absolute coordination of the screen.
* Porting TS-lib to driver and do normarlization of the coordination.
* Do auto calibration using "sysfs" in booting procedure
3) Network
* Android using OS (eg, Linux) network directly, but handle DNS directly.
* DNS lookup order follows
1. /system/etc/hosts lookup
2. system_property [net.eth0.dns1]
* system_property is provided android init process using unix domain socket @property_service
* You should run "init" process for network management.
* You should set up DNS 'net.eth0.dns1' using "/system/bin/setprop", "/etc/default.prop", "/data/local.prob"
4) Init process
Android init do make "device file" and...
1. /data and it's subdir.
2. execute /etc/init.rc
3. make /tmp/eventlog
4. provide system property using unix domain socket @property_service
load following order,
/etc/default.prop
/system/build.prop
/system/default.prop
/data/local.prop
* You shoud start "init" process for proper network/application setting.
* Init opens "/system_properties" and do memory mapping of it.
* JFFS2 filesystem does not support "write" operation of memory mapped I/O
* For device bootstrap, use it's own init program