some launcher script tweaks master
authornotaz <notasas@gmail.com>
Thu, 28 Jun 2012 21:24:32 +0000 (00:24 +0300)
committernotaz <notasas@gmail.com>
Thu, 28 Jun 2012 21:24:32 +0000 (00:24 +0300)
pnd/gingerbread.pxml
pnd/run_gingerbread.sh

index 462f595..6cb6759 100644 (file)
@@ -4,7 +4,7 @@
   <titles>
     <title lang="en_US">Android Gingerbread</title>
   </titles>
-  <version major="2" minor="3" release="7" build="5" type="beta"/>
+  <version major="2" minor="3" release="7" build="6" type="beta"/>
   <author name="Google" website="http://www.android.com/"/>
 </package>
 <application id="android_gingerbread" appdata="android_gingerbread">
@@ -23,7 +23,7 @@
 
   <author name="Google" website="http://www.android.com/"/>
 
-  <version major="2" minor="3" release="7" build="5" type="beta"/>
+  <version major="2" minor="3" release="7" build="6" type="beta"/>
 
   <licenses>
     <license name="Apache License 2.0" url="http://www.apache.org/licenses/LICENSE-2.0" sourcecodeurl="http://notaz.gp2x.de/cgi-bin/gitweb.cgi?p=android_pandora.git"/>
index 9d78fae..a8979e7 100755 (executable)
@@ -73,6 +73,12 @@ onexit()
     fi
   done
 
+  if ! pidof udevd > /dev/null; then
+    # don't use /etc/init.d/udev, it remounts /dev blindly
+    /sbin/udevd -d
+    /sbin/udevadm trigger
+  fi
+
   if ! pidof X > /dev/null; then
     # need to restore SGX, X and friends
     rmmod bufferclass_ti omaplfb pvrsrvkm
@@ -116,6 +122,10 @@ if ! test -e /dev/ashmem; then
   modprobe ashmem
   delay=0.5
 fi
+if ! test -e /sys/module/lowmemorykiller; then
+  # this one is optional
+  modprobe lowmemorykiller || true
+fi
 sleep $delay
 if test ! -e /dev/log_events -o ! -e /dev/binder -o ! -e /dev/ashmem; then
   err "could not load required Android modules,\n\
@@ -172,9 +182,8 @@ mkdir -p $root/vendor/
 # handle SGX
 mkdir -p $root/vendor/pvr
 echo "0 0 android" > $root/vendor/pvr/egl.cfg
-
-sgx_kernel_loaded=false
 rm -f $root/vendor/pvr/gralloc.omap3.so
+sgx_kernel_loaded=false
 
 # load the right SGX driver
 if ! grep -q '1.5.15.2766' /proc/pvr/version 2> /dev/null; then
@@ -249,18 +258,25 @@ chvt 2 & # may hang..
 sleep 1
 killall chvt 2> /dev/null || true
 ifconfig wlan0 down
-set -e
+killall udevd || true
 
-cp -v /etc/pointercal $root/vendor/
 cp -v /lib/modules/$kernel_ver/kernel/drivers/net/wireless/wl1251/wl1251_sdio.ko $root/vendor/
 mkdir -p $root/vendor/firmware
 cp -v /lib/firmware/brf6300.bin $root/vendor/firmware/
 
+set -e
+cp -v /etc/pointercal $root/vendor/
+
 # some cleanup
 rm -rf $root/acct/uid/*
 
 chroot $root /init &
 
+# revive udev when /init is done with uevents,
+# we'll need it to load firmwares and stuff
+sleep 10
+/sbin/udevd -d
+
 # wait for a message
 while true; do
   sleep 1