diff options
| author | John Lee <john_lee@openmoko.org> | 2009-01-12 14:39:16 +0800 |
|---|---|---|
| committer | John Lee <john_lee@openmoko.org> | 2009-01-12 14:39:16 +0800 |
| commit | 366bf6043abfbbbfa98168548f42aa9aaf6c28b9 (patch) | |
| tree | ec24779b5ed382cbd3077595cd54a62fad4741c7 | |
| parent | b4e78908d6ed0b4a142dabc9e72b1a81b7f3c581 (diff) | |
| parent | 5c898f6e20d5d27a1cc0747746d35f706fd6dfff (diff) | |
Merge commit 'origin/john_lee/fastboot-devel' into org.openembedded.dev
58 files changed, 1159 insertions, 170 deletions
diff --git a/conf/distro/include/angstrom-2007-for-openmoko.inc b/conf/distro/include/angstrom-2007-for-openmoko.inc index 34fbc52cfe..5675e75723 100644 --- a/conf/distro/include/angstrom-2007-for-openmoko.inc +++ b/conf/distro/include/angstrom-2007-for-openmoko.inc @@ -230,8 +230,6 @@ DISTRO_EXTRA_RRECOMMENDS += " \ kernel-module-vfat \ kernel-module-ext2 \ kernel-module-af-packet \ - avahi-daemon \ - avahi-autoipd \ openssh-sftp-server \ " diff --git a/conf/distro/openmoko.conf b/conf/distro/openmoko.conf index 7e7aa1d022..844bb29e4b 100644 --- a/conf/distro/openmoko.conf +++ b/conf/distro/openmoko.conf @@ -30,6 +30,19 @@ DISTRO_FEED_URI ?= "http://downloads.openmoko.org/repository/testing" AB_DEPLOY_EXTRA ?= "" DEPLOY_DIR_IMAGE = "${DEPLOY_DIR}/images/${MACHINE_ARCH}/${AB_DEPLOY_EXTRA}" +DISTRO_INITSCRIPTS = "initscripts-openmoko" + +# We try to minimize the distro features in the default image. +DISTRO_FEATURES = "wifi ppp alsa ext2 vfat usbhost" + +# Some features (bluetooth, usbgadget) include packages we do not like. +# Pick some of the packages manually. +DISTRO_EXTRA_RDEPENDS += " \ + bluez-utils \ + bluez-utils-compat \ + kernel-module-g-ether \ + " + # 2.18 seems to break badly on 64-bit systems PREFERRED_VERSION_binutils ?= "2.17.50.0.12" PREFERRED_VERSION_binutils-cross ?= "2.17.50.0.12" diff --git a/conf/machine/om-gta02.conf b/conf/machine/om-gta02.conf index c7b06dc3cd..c31828aafe 100644 --- a/conf/machine/om-gta02.conf +++ b/conf/machine/om-gta02.conf @@ -24,6 +24,7 @@ MACHINE_EXTRA_RRECOMMENDS = "\ # no need to bypass this as in om-gta01, since this model is not using a multiplexed ttySAC0 SERIAL_CONSOLE = "115200 ttySAC2" +USE_VT = "0" # used by some images ROOT_FLASH_SIZE = "256" diff --git a/packages/alsa/alsa-state.bb b/packages/alsa/alsa-state.bb index ba030e4aab..9e7f157059 100644 --- a/packages/alsa/alsa-state.bb +++ b/packages/alsa/alsa-state.bb @@ -7,7 +7,7 @@ DESCRIPTION = "Alsa Scenario Files" LICENSE = "MIT" PV = "0.2.0" -PR = "r0" +PR = "r1" SRC_URI = "\ file://asound.conf \ @@ -19,7 +19,7 @@ SRC_URI = "\ inherit update-rc.d INITSCRIPT_NAME = "alsa-state" -INITSCRIPT_PARAMS = "defaults 10" +INITSCRIPT_PARAMS = "start 39 S ." do_install() { install -d ${D}${sysconfdir}/init.d @@ -50,5 +50,9 @@ pkg_postinst_${PN}() { then /usr/sbin/alsactl -f ${sysconfdir}/asound.state restore fi + # INITSCRIPT_PARAMS changed, so remove the old and + # install the new setting. + update-rc.d -f ${INITSCRIPT_NAME} remove + update-rc.d ${INITSCRIPT_NAME} ${INITSCRIPT_PARAMS} fi } diff --git a/packages/alsa/alsa-state/alsa-state b/packages/alsa/alsa-state/alsa-state index c6bc1fd494..84cdf03750 100755 --- a/packages/alsa/alsa-state/alsa-state +++ b/packages/alsa/alsa-state/alsa-state @@ -11,7 +11,7 @@ asound_restore(){ echo "ALSA: Restoring mixer settings..." if test -x /usr/sbin/alsactl -a -e /etc/asound.state then - /usr/sbin/alsactl -f /etc/asound.state restore + /usr/sbin/alsactl -f /etc/asound.state restore & fi } diff --git a/packages/base-files/base-files/om-gta01/fstab b/packages/base-files/base-files/om-gta01/fstab index e5acb6a1eb..426d83e4d8 100644 --- a/packages/base-files/base-files/om-gta01/fstab +++ b/packages/base-files/base-files/om-gta01/fstab @@ -1,16 +1,5 @@ -# Root and Pseudo -/dev/mtdblock4 / jffs2 rw,noatime 1 1 -proc /proc proc defaults 0 0 - -# devpts? -# usb? - -# Temporary -tmpfs /var/volatile tmpfs mode=0755 0 0 -tmpfs /dev/shm tmpfs mode=0777 0 0 +/dev/mtdblock4 / jffs2 rw,noatime 1 1 +proc /proc proc defaults 0 0 # microSD slot -/dev/mmcblk0p1 /media/card auto defaults,async,noauto 0 0 - -# USB Storage -/dev/sda1 /media/hdd vfat noauto,umask=000,noatime,iocharset=utf8,codepage=932 0 0 +/dev/mmcblk0p1 /media/card auto defaults,async 0 0 diff --git a/packages/base-files/base-files/om-gta02/fstab b/packages/base-files/base-files/om-gta02/fstab index e5acb6a1eb..61c7cdcafd 100644 --- a/packages/base-files/base-files/om-gta02/fstab +++ b/packages/base-files/base-files/om-gta02/fstab @@ -1,16 +1,5 @@ -# Root and Pseudo -/dev/mtdblock4 / jffs2 rw,noatime 1 1 -proc /proc proc defaults 0 0 - -# devpts? -# usb? - -# Temporary -tmpfs /var/volatile tmpfs mode=0755 0 0 -tmpfs /dev/shm tmpfs mode=0777 0 0 +/dev/mtdblock6 / jffs2 rw,noatime 1 1 +proc /proc proc defaults 0 0 # microSD slot -/dev/mmcblk0p1 /media/card auto defaults,async,noauto 0 0 - -# USB Storage -/dev/sda1 /media/hdd vfat noauto,umask=000,noatime,iocharset=utf8,codepage=932 0 0 +/dev/mmcblk0p1 /media/card auto defaults,async 0 0 diff --git a/packages/initscripts/initscripts-1.0/arm/alignment.sh b/packages/initscripts/files/arm/alignment.sh index 32a9eaace2..32a9eaace2 100644 --- a/packages/initscripts/initscripts-1.0/arm/alignment.sh +++ b/packages/initscripts/files/arm/alignment.sh diff --git a/packages/initscripts/initscripts-1.0/devpts b/packages/initscripts/files/devpts index 4a0978b404..e10e371662 100644 --- a/packages/initscripts/initscripts-1.0/devpts +++ b/packages/initscripts/files/devpts @@ -1,5 +1,5 @@ # GID of the `tty' group TTYGRP=5 - + # Set to 600 to have `mesg n' be the default TTYMODE=620 diff --git a/packages/initscripts/initscripts-1.0/finish b/packages/initscripts/files/finish.sh index 4f9f75f47c..4f9f75f47c 100755..100644 --- a/packages/initscripts/initscripts-1.0/finish +++ b/packages/initscripts/files/finish.sh diff --git a/packages/initscripts/initscripts-1.0/functions b/packages/initscripts/files/functions index fb9a914e4d..fb9a914e4d 100644 --- a/packages/initscripts/initscripts-1.0/functions +++ b/packages/initscripts/files/functions diff --git a/packages/initscripts/initscripts-1.0/halt b/packages/initscripts/files/halt index d8cab222ca..d8cab222ca 100755..100644 --- a/packages/initscripts/initscripts-1.0/halt +++ b/packages/initscripts/files/halt diff --git a/packages/initscripts/initscripts-1.0/hostname.sh b/packages/initscripts/files/hostname.sh index 0f3d374286..0f3d374286 100755..100644 --- a/packages/initscripts/initscripts-1.0/hostname.sh +++ b/packages/initscripts/files/hostname.sh diff --git a/packages/initscripts/initscripts-1.0/reboot b/packages/initscripts/files/reboot index 56278199be..56278199be 100755..100644 --- a/packages/initscripts/initscripts-1.0/reboot +++ b/packages/initscripts/files/reboot diff --git a/packages/initscripts/initscripts-1.0/rmnologin b/packages/initscripts/files/rmnologin index 444145a26a..444145a26a 100755..100644 --- a/packages/initscripts/initscripts-1.0/rmnologin +++ b/packages/initscripts/files/rmnologin diff --git a/packages/initscripts/initscripts-1.0/save-rtc.sh b/packages/initscripts/files/save-rtc.sh index e786073051..e786073051 100644 --- a/packages/initscripts/initscripts-1.0/save-rtc.sh +++ b/packages/initscripts/files/save-rtc.sh diff --git a/packages/initscripts/initscripts-1.0/sendsigs b/packages/initscripts/files/sendsigs index c62a5cd37d..c62a5cd37d 100755..100644 --- a/packages/initscripts/initscripts-1.0/sendsigs +++ b/packages/initscripts/files/sendsigs diff --git a/packages/initscripts/initscripts-1.0/umountfs b/packages/initscripts/files/umountfs index ec75b0c4a4..ec75b0c4a4 100755..100644 --- a/packages/initscripts/initscripts-1.0/umountfs +++ b/packages/initscripts/files/umountfs diff --git a/packages/initscripts/initscripts-1.0/umountnfs.sh b/packages/initscripts/files/umountnfs.sh index f5fe48aa74..f5fe48aa74 100755..100644 --- a/packages/initscripts/initscripts-1.0/umountnfs.sh +++ b/packages/initscripts/files/umountnfs.sh diff --git a/packages/initscripts/initscripts-1.0/volatiles b/packages/initscripts/files/volatiles index fbcc858226..fbcc858226 100644 --- a/packages/initscripts/initscripts-1.0/volatiles +++ b/packages/initscripts/files/volatiles diff --git a/packages/initscripts/initscripts-openmoko/bootmisc.sh b/packages/initscripts/initscripts-openmoko/bootmisc.sh new file mode 100644 index 0000000000..4511e12fc1 --- /dev/null +++ b/packages/initscripts/initscripts-openmoko/bootmisc.sh @@ -0,0 +1,47 @@ +# +# bootmisc.sh Miscellaneous things to be done during bootup. +# + +. /etc/default/rcS +# +# Put a nologin file in /etc to prevent people from logging in before +# system startup is complete. +# +if test "$DELAYLOGIN" = yes +then + echo "System bootup in progress - please wait" > /etc/nologin + cp /etc/nologin /etc/nologin.boot +fi + +# +# Update /etc/motd. +# +if test "$EDITMOTD" != no +then + uname -a > /etc/motd.tmp + sed 1d /etc/motd >> /etc/motd.tmp + mv /etc/motd.tmp /etc/motd +fi + +# +# Update dynamic library cache +# +#/sbin/ldconfig + +# Set the system clock from hardware clock +# If the timestamp is 1 day or more recent than the current time, +# use the timestamp instead. +[ "$UTC" = yes ] || /etc/init.d/hwclock.sh start + +if ! test -f /etc/.configured && test -e /etc/timestamp +then + SYSTEMDATE=`date "+%Y%m%d"` + TIMESTAMP=`cat /etc/timestamp | awk '{ print substr($0,9,4) substr($0,1,4);}'` + NEEDUPDATE=`expr \( $TIMESTAMP \> $SYSTEMDATE \)` + if [ $NEEDUPDATE -eq 1 ]; then + date `cat /etc/timestamp` + /etc/init.d/hwclock.sh stop + fi +fi + +: exit 0 diff --git a/packages/initscripts/initscripts-openmoko/campgsm b/packages/initscripts/initscripts-openmoko/campgsm new file mode 100644 index 0000000000..5be67086c2 --- /dev/null +++ b/packages/initscripts/initscripts-openmoko/campgsm @@ -0,0 +1,128 @@ +#!/bin/sh + +VERBOSE=no + +PIDS=`pidof -x "$0"` + +# make sure pidof sees us +if [ -z "$PIDS" ]; then + exec "$0" + exit 1 +fi + +GSM_DEVICE="/dev/ttySAC0" +GSM_POWER="/sys/devices/platform/neo1973-pm-gsm.0/power_on" +GSM_RESET="/sys/devices/platform/neo1973-pm-gsm.0/reset" + +GSM_COMMANDS="Z E0V1 +CFUN=1 +COPS=0" + +gsm_running () { + if [ "$PIDS" != "$$" ]; then + return 0 + else + return 1 + fi +} + +gsm_send () { + cmd="$1" + echo -ne "AT${cmd}\r" > "$GSM_DEVICE" +} + +# this function might block forever +gsm_wait () { + ret="UNKNOWN" + + while read status; do + case "$status" in + OK*) + ret="OK" + ;; + ERROR*) + ret="ERROR" + ;; + *) + ret="UNKNOWN" + ;; + esac + if [ "x$ret" != "xUNKNOWN" ]; then + break + fi + done < "$GSM_DEVICE" + + if [ "x$ret" != "xOK" ]; then + return 1 + fi + + return 0 +} + +gsm_setup () { + [ $VERBOSE == "yes" ] && echo -n "Powering up GSM modem..." + echo 0 > "$GSM_POWER"; sleep 1 + echo 1 > "$GSM_POWER"; sleep 1 + echo 1 > "$GSM_RESET"; sleep 1 + echo 0 > "$GSM_RESET"; sleep 4 + [ $VERBOSE == "yes" ] && echo "done" + + stty -F "$GSM_DEVICE" cooked -opost -echo crtscts 115200 +} + +gsm_wakeup () { + [ $VERBOSE == "yes" ] && echo "Waking up GSM modem" + + # there is at most one OK/ERROR even if we send multiple commands + gsm_send "" + gsm_send "" + gsm_send "" + + if gsm_wait; then + [ $VERBOSE == "yes" ] && echo "GSM modem awake" + return 0 + else + echo "failed to wake up GSM modem" + return 1 + fi +} + +start () { + gsm_setup + + if gsm_wakeup; then + for cmd in $GSM_COMMANDS + do + [ $VERBOSE == "yes" ] && echo "Sending AT$cmd" + gsm_send "$cmd" + + if ! gsm_wait; then + echo "AT$cmd failed" + break + fi + done + fi +} + +set -e + +case "$1" in + start) + if gsm_running; then + echo "Another instance is already running" + exit 1 + fi + + start & + ;; + stop) + if gsm_running; then + PIDS=`pidof -x -o "$$" "$0"` + echo -n "Stopping other instances..." + kill $PIDS + echo "done" + fi + ;; + *) + echo "Usage: $0 {start|stop}" + exit 1 + ;; +esac diff --git a/packages/initscripts/initscripts-openmoko/checkroot.sh b/packages/initscripts/initscripts-openmoko/checkroot.sh new file mode 100644 index 0000000000..029ae9b405 --- /dev/null +++ b/packages/initscripts/initscripts-openmoko/checkroot.sh @@ -0,0 +1,43 @@ +# +# checkroot.sh Check to root filesystem. +# +# Version: @(#)checkroot.sh 2.84 25-Jan-2002 miquels@cistron.nl +# + +. /etc/default/rcS + +# +# Set SULOGIN in /etc/default/rcS to yes if you want a sulogin to be spawned +# from this script *before anything else* with a timeout, like SCO does. +# +test "$SULOGIN" = yes && sulogin -t 30 $CONSOLE + +# +# If the root filesystem was not marked as read-only in /etc/fstab, +# remount the rootfs rw but do not try to change mtab because it +# is on a ro fs until the remount succeeded. Then clean up old mtabs +# and finally write the new mtab. +# This part is only needed if the rootfs was mounted ro. +# +ROOTFSDEV="/dev/root" +if grep -q "^$ROOTFSDEV .* rw" /proc/mounts; then + echo "Root filesystem already read-write, not remounting" +else + rootmode=rw + + echo "Remounting root file system..." + mount -n -o remount,noatime,$rootmode / + if test "$rootmode" = rw + then + if test ! -L /etc/mtab + then + rm -f /etc/mtab~ /etc/nologin + : > /etc/mtab + fi + mount -f -o remount / + mount -f /proc + test "$devfs" && grep -q '^devfs /dev' /proc/mounts && mount -f "$devfs" + fi +fi + +: exit 0 diff --git a/packages/initscripts/initscripts-openmoko/led-trigger.sh b/packages/initscripts/initscripts-openmoko/led-trigger.sh new file mode 100644 index 0000000000..9583ce9331 --- /dev/null +++ b/packages/initscripts/initscripts-openmoko/led-trigger.sh @@ -0,0 +1,6 @@ +#! /bin/sh +sys_led_trigger="/sys/devices/platform/gta02-led.0/leds/gta02-aux:red/trigger" +if test -e $sys_led_trigger ;then + echo bat-charging > $sys_led_trigger +fi + diff --git a/packages/initscripts/initscripts-openmoko/mountall.sh b/packages/initscripts/initscripts-openmoko/mountall.sh new file mode 100644 index 0000000000..4bd7bbb02c --- /dev/null +++ b/packages/initscripts/initscripts-openmoko/mountall.sh @@ -0,0 +1,52 @@ +# +# mountall.sh Mount all filesystems. +# +# Version: @(#)mountall.sh 2.83-2 01-Nov-2001 miquels@cistron.nl +# +. /etc/default/rcS +if test -f /etc/default/mountall; then + . /etc/default/mountall +fi + +# +# Mount local filesystems in /etc/fstab. For some reason, people +# might want to mount "proc" several times, and mount -v complains +# about this. So we mount "proc" filesystems without -v. +# +test "$VERBOSE" != no && echo "Mounting local filesystems..." +mount -a $MOUNTALL + +# +# We might have mounted something over /dev, see if /dev/initctl is there. +# +if test ! -p /dev/initctl +then + rm -f /dev/initctl + mknod -m 600 /dev/initctl p +fi +kill -USR1 1 + +# +# Execute swapon command again, in case we want to swap to +# a file on a now mounted filesystem. +# +doswap=yes +if test $doswap = yes +then + swapon -a 2> /dev/null +fi + +# A missing homedirectory for root can cause all sorts of problems. +# This can happen after user formats his /home partition for example + +if test -e /etc/passwd +then + ROOT_HOME="`grep root /etc/passwd | cut -d: -f6`" + + if test -n "$ROOT_HOME" + then + ! test -d "$ROOT_HOME" && mkdir -p "$ROOT_HOME" + fi +fi +: exit 0 + diff --git a/packages/initscripts/initscripts-openmoko/mountdevsubfs.sh b/packages/initscripts/initscripts-openmoko/mountdevsubfs.sh new file mode 100644 index 0000000000..c6cfb05af2 --- /dev/null +++ b/packages/initscripts/initscripts-openmoko/mountdevsubfs.sh @@ -0,0 +1,14 @@ +#!/bin/sh + +. /etc/default/devpts + +test -c /dev/ptmx || mknod -m 666 /dev/ptmx c 5 2 + +if [ -d /dev/pts ]; then + mount -n -t devpts devpts /dev/pts -ogid=${TTYGRP},mode=${TTYMODE} +fi + + +if [ -d /dev/shm ]; then + mount -n -t tmpfs shmfs /dev/shm -omode=0777 +fi diff --git a/packages/initscripts/initscripts-openmoko/mountkernfs.sh b/packages/initscripts/initscripts-openmoko/mountkernfs.sh new file mode 100644 index 0000000000..1ed09fcf05 --- /dev/null +++ b/packages/initscripts/initscripts-openmoko/mountkernfs.sh @@ -0,0 +1,33 @@ +#!/bin/sh |
