Porting/Kernel
(Created page with "===================== bootreason, twl4030-adc ===================== files: /sbin/preinit /sbin/getbootstate /sbin/bsi-read TODO: finish new version of package getbootstate in cā¦") |
(āPorting: Add jonwil's N900 kernel usage audit) |
||
(5 intermediate revisions not shown) | |||
Line 1: | Line 1: | ||
- | == | + | == 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 | |
- | hal | + | 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 | ||
- | + | == Porting == | |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | old paths: | + | ===================== |
- | /org/freedesktop/Hal/devices/platform_soc_audio_logicaldev_input | + | bootreason, twl4030-adc (done) |
- | + | ===================== | |
- | new paths: | + | |
- | /org/freedesktop/Hal/devices/platform_rx51_audio_sound_card_0_logicaldev_input | + | files: |
- | (FIXME: will above path not chaning??) | + | /sbin/preinit (done) |
- | + | /sbin/getbootstate (done) | |
- | ===================== | + | /sbin/bsi-read (not finished, not used) |
- | gpio-switch | + | /etc/X11/Xsession.d/10hildon_welcome (done) |
- | ===================== | + | /etc/init.d/fb-progress.sh (done) |
- | + | /usr/sbin/bme_RX-51 (done) | |
- | files: | + | |
- | /sbin/mce | + | old paths: |
- | /etc/event.d/cmt-act-dead | + | /proc/bootreason |
- | /usr/lib/mce/modules/libcamera.so | + | /dev/twl4030-adc |
- | /usr/sbin/softupd | + | |
- | /usr/sbin/sscd | + | new paths: |
- | /usr/share/hal/fdi/policy/10osvendor/10-omap-gpio.fdi | + | /proc/atags |
- | + | /sys/class/power_supply/rx51-battery/charge_full_design | |
- | old paths: | + | |
- | /sys/devices/platform/gpio-switch/ | + | ===================== |
- | + | component_version | |
- | new paths: | + | ===================== |
- | /sys/class/gpio/ | + | |
- | + | files: | |
- | FIXME: For sscd and softupd we need some LD_PRELOAD library | + | /etc/event.d/sgx (not needed?) |
- | + | /etc/init.d/softupd.rcS | |
- | ===================== | + | /etc/init.d/rcS |
- | musb_hdrc | + | /sbin/preinit (done) |
- | ===================== | + | /usr/bin/testserver (not used) |
- | + | /usr/lib/apt/methods/http (done) | |
- | files: | + | /usr/lib/apt/methods/https (done) |
- | sbin/mce | + | /usr/lib/hildon-desktop/ham-notifier-status-menu-item.so (done) |
- | usr/lib/dsme/libstate.so.0.0.0 | + | /usr/lib/hildon-desktop/ham-updates-status-menu-item.so (done) |
- | usr/lib/hal/hald-addon-usb-cable | + | /usr/lib/libossoproductinfo.so.0.7.3 (done) |
- | usr/lib/hildon-desktop/usb_plugin.so | + | /usr/lib/libsysinfo.so.0 |
- | usr/sbin/fmtxd | + | /usr/lib/mce/modules/* (done) |
- | + | /usr/lib/microb-engine/libxul.so (done) | |
- | old paths: | + | /usr/sbin/hald |
- | GADGETPATH='/sys/devices/platform/musb_hdrc/gadget' | + | |
- | LUN0='gadget-lun0' | + | old paths: |
- | LUN1='gadget-lun1' | + | /proc/component_version |
- | + | ||
- | new paths: | + | new paths: |
- | GADGETPATH='/sys/devices/platform/musb-omap2430/musb-hdrc.0.auto/gadget' | + | /proc/cpuinfo |
- | LUN0='lun0' | + | |
- | LUN1='lun1' | + | 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 | |
- | files: | + | usr/lib/librtcom-call-ui.so.0.0.0 |
- | etc/event.d/ | + | usr/lib/mafw-plugin/mafw-gst-renderer.so |
- | etc/event | + | usr/lib/telepathy/telepathy-stream-engine |
- | etc/modprobe.d/maemo.conf | + | usr/sbin/fmtxd |
- | + | ||
- | /sys/devices/platform/hci_h4p/bdaddr | + | old paths: |
- | + | /org/freedesktop/Hal/devices/platform_soc_audio_logicaldev_input | |
- | TODO: | + | |
- | + | new paths: | |
- | + | /org/freedesktop/Hal/devices/platform_rx51_audio_sound_card_0_logicaldev_input | |
- | ===================== | + | (FIXME: will above path not chaning??) |
- | wl12xx | + | |
- | ===================== | + | ===================== |
- | + | gpio-switch | |
- | * Renamed to wl1251 | + | ===================== |
- | * Replace /usr/bin/wl1251-cal | + | |
- | * Fix configuring bt coex | + | files: |
- | * Fix process of configuring permament mac address (maybe request_firmware ?) | + | /sbin/mce |
- | + | /etc/event.d/cmt-act-dead | |
- | ===================== | + | /usr/lib/mce/modules/libcamera.so |
- | others | + | /usr/sbin/softupd |
- | ===================== | + | /usr/sbin/sscd |
- | + | /usr/share/hal/fdi/policy/10osvendor/10-omap-gpio.fdi | |
- | /sys/kernel/reboot_mode | + | /opt/lib/qt4/plugins/mediaservice/libqtmedia_v4lengine.so |
- | /proc/cpuinfo (board info not available when using DT boot) | + | /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 |
Latest revision as of 22:45, 15 January 2017
[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
- This page was last modified on 15 January 2017, at 22:45.
- This page has been accessed 4,997 times.