Porting/Kernel
[edit] Upstream kernel with Maemo 5
1. Kernel patches from https://github.com/pali/linux-n900
2. CSSU-Devel from http://talk.maemo.org/showthread.php?t=84292
3. BME-Replacement from http://talk.maemo.org/showthread.php?t=93183
4. Fixup for wifi firmware:
mkdir -p /lib/firmware/ti-connectivity ln -s ../wl1251-fw.bin /lib/firmware/ti-connectivity/wl1251-fw.bin ln -s ../wl1251-nvs.bin /lib/firmware/ti-connectivity/wl1251-nvs.bin
5. Fixup for Dialer application (rtcom-call-ui):
Create new file /etc/event.d/userspace-fixes with content:
start on started hildon-desktop service console none script if ! hal-device /org/freedesktop/Hal/devices/platform_soc_audio_logicaldev_input 2> /dev/null; then hal-device --add /org/freedesktop/Hal/devices/platform_soc_audio_logicaldev_input < /dev/null hal-set-property --udi /org/freedesktop/Hal/devices/platform_soc_audio_logicaldev_input --key input.jack.type --strlist-pre "a" hal-set-property --udi /org/freedesktop/Hal/devices/platform_soc_audio_logicaldev_input --key input.jack.type --strlist-rem "a" fi end script
[edit] Porting
===================== bootreason, twl4030-adc (done) ===================== files: /sbin/preinit (done) /sbin/getbootstate (done) /sbin/bsi-read (not finished, not used) /etc/X11/Xsession.d/10hildon_welcome (done) /etc/init.d/fb-progress.sh (done) /usr/sbin/bme_RX-51 (done) old paths: /proc/bootreason /dev/twl4030-adc new paths: /proc/atags /sys/class/power_supply/rx51-battery/charge_full_design ===================== component_version ===================== files: /etc/event.d/sgx (not needed?) /etc/init.d/softupd.rcS /etc/init.d/rcS /sbin/preinit (done) /usr/bin/testserver (not used) /usr/lib/apt/methods/http (done) /usr/lib/apt/methods/https (done) /usr/lib/hildon-desktop/ham-notifier-status-menu-item.so (done) /usr/lib/hildon-desktop/ham-updates-status-menu-item.so (done) /usr/lib/libossoproductinfo.so.0.7.3 (done) /usr/lib/libsysinfo.so.0 /usr/lib/mce/modules/* (done) /usr/lib/microb-engine/libxul.so (done) /usr/sbin/hald old paths: /proc/component_version new paths: /proc/cpuinfo FIXME: bootmode is available only in raw /proc/atags when bootloader suppors OMAP atag table ===================== hal ===================== files: usr/lib/hildon-desktop/bluetooth_headset_status_menu_item.so usr/lib/librtcom-call-ui.so.0.0.0 usr/lib/mafw-plugin/mafw-gst-renderer.so usr/lib/telepathy/telepathy-stream-engine usr/sbin/fmtxd old paths: /org/freedesktop/Hal/devices/platform_soc_audio_logicaldev_input new paths: /org/freedesktop/Hal/devices/platform_rx51_audio_sound_card_0_logicaldev_input (FIXME: will above path not chaning??) ===================== gpio-switch ===================== files: /sbin/mce /etc/event.d/cmt-act-dead /usr/lib/mce/modules/libcamera.so /usr/sbin/softupd /usr/sbin/sscd /usr/share/hal/fdi/policy/10osvendor/10-omap-gpio.fdi /opt/lib/qt4/plugins/mediaservice/libqtmedia_v4lengine.so /sbin/preinit (done) /usr/bin/testserver /usr/lib/testserver/modules/handlers/* old paths: /sys/devices/platform/gpio-switch/ new paths: /sys/class/gpio/ FIXME: For sscd and softupd we need some LD_PRELOAD library ===================== musb_hdrc ===================== files: sbin/mce usr/lib/dsme/libstate.so.0.0.0 usr/lib/hal/hald-addon-usb-cable usr/lib/hildon-desktop/usb_plugin.so usr/sbin/fmtxd usr/lib/testserver/modules/handlers/sos_usb.so.0.0.0 usr/sbin/bme_RX-51 old paths: GADGETPATH='/sys/devices/platform/musb_hdrc/gadget' LUN0='gadget-lun0' LUN1='gadget-lun1' new paths: GADGETPATH='/sys/devices/platform/musb-omap2430/musb-hdrc.0.auto/gadget' LUN0='lun0' LUN1='lun1' looks like gadget path is changing, maybe /sys/bus is stable? GADGETPATH='/sys/bus/platform/devices/musb-hdrc.0.auto/gadget' ===================== twl4030_usb ===================== files: /etc/event.d/bme /sbin/mce /usr/sbin/bme_RX-51 /usr/sbin/fmtxd /usr/lib/hal/hald-addon-usb-cable /usr/lib/testserver/modules/handlers/sos_usb.so.0.0.0 old paths: /sys/class/i2c-adapter/i2c-1/1-0048/twl4030_usb/vbus new paths: /sys/class/i2c-adapter/i2c-1/1-0048/48070000.i2c:twl@48:twl4030-usb/vbus (FIXME: will above path not chaning??) ===================== hci_h4p ===================== files: etc/event.d/bluetooth-sysinfo etc/modprobe.d/maemo.conf usr/bin/testserver usr/lib/testserver/modules/handlers/phone_info.so.0.0.0 /sys/devices/platform/hci_h4p/bdaddr TODO: bluetooth subsystem has its own mechanism for setting mac address (need to backport new bluez tools) ===================== wl12xx ===================== * Renamed to wl1251 * Replace /usr/bin/wl1251-cal * Fix configuring bt coex * Fix process of configuring permament mac address (maybe request_firmware ?) * bt_coex_mode is used only in /usr/sbin/wlancond ===================== others ===================== /sys/kernel/reboot_mode (used by /usr/sbin/softupd) /proc/cpuinfo (board info not available when using DT boot) Upstream kernel should set reboot_mode so NOLO will know correct boot reason * touchscreen "disable" sysfs node is missing in upstream kernel * problem with default poll mask on sysfs (broke commit http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=1af3557abdef34ee036a6de4cb79e24468544b8d) hulda-child[2119]: setup_sysfs_poll:366: g_io_channel_new_file() for /sys/kernel/high_watermark failed: No such file or directory hulda-child[2119]: setup_sysfs_poll:366: g_io_channel_new_file() for /sys/kernel/low_watermark failed: No such file or directory See also N900 kernel usage audit: https://talk.maemo.org/showthread.php?t=93938