[aadk-commits] dbailey: uClinux/trunk r496 - /uClinux/trunk/uClinux-dist/vendors/Digium/S800I/

SVN commits to the AADK repository aadk-commits at lists.digium.com
Thu Jun 28 15:54:52 CDT 2007


Author: dbailey
Date: Thu Jun 28 15:54:52 2007
New Revision: 496

URL: http://svn.digium.com/view/aadk?view=rev&rev=496
Log:
Added watchdog call to prevent lock ups
Added a mechanism to FLASH units during execuion of the rc script
Added a call to display the configuration of the aadk board. 
Added a call to set up fxotune parameters 

Modified:
    uClinux/trunk/uClinux-dist/vendors/Digium/S800I/rc

Modified: uClinux/trunk/uClinux-dist/vendors/Digium/S800I/rc
URL: http://svn.digium.com/view/aadk/uClinux/trunk/uClinux-dist/vendors/Digium/S800I/rc?view=diff&rev=496&r1=495&r2=496
==============================================================================
--- uClinux/trunk/uClinux-dist/vendors/Digium/S800I/rc (original)
+++ uClinux/trunk/uClinux-dist/vendors/Digium/S800I/rc Thu Jun 28 15:54:52 2007
@@ -20,6 +20,21 @@
 echo $CAPABILITY
 if [ "" != "$CAPABILITY" ]; then 
 	export $CAPABILITY
+fi
+
+modprobe blackfin_wd
+procwatch -t 6000 -w 27 -p asterisk -c 10000 &
+
+# mount sysfs to get access to i2c devices
+mount -t sysfs none /sys
+
+modprobe i2c-bfin-twi
+modprobe i2c-dev
+
+if [ "$boardrev" != "A" ]; then
+	echo "Attempting to communicate to I2C Devices"
+	modprobe hwmon
+	modprobe lm75
 fi
 
 modprobe sx00i_cfgswx
@@ -47,12 +62,46 @@
 modprobe bfin_cf_pcmcia
 modprobe orinoco_cs
 modprobe ide-cs
-modprobe blackfin_wd
-
-# mount sysfs to get access to i2c devices
-mount -t sysfs none /sys
+		
 #mount devpts to allow for use of UNIX98 pty's
 mount -t devpts none /dev/pts
+
+sleep 3 # For some reason needs a delay before mount CF
+mount -t ext3 /dev/hda1 /var/lib/asterisk/sounds
+
+##### Following looks for an image to burn into FLASH before starting asterisk.
+echo "Checking for upload image to program"
+if [ -d "/var/lib/asterisk/sounds/imageupdate" ]; then 
+	if [ -f "/var/lib/asterisk/sounds/imageupdate/uImage" ]; then
+		echo 3 > /proc/sys/vm/drop_caches 	# Force cache memory cleanup 
+		flashupdate file /var/lib/asterisk/sounds/imageupdate/uImage 
+		if [ "$?" = "0" ] ; then
+			rm -f /var/lib/asterisk/sounds/imageupdate/uImage >/dev/null 2>/dev/null
+			date > /var/lib/asterisk/sounds/imageupdate/flashresult
+			echo "**************************************" >> /var/lib/asterisk/sounds/imageupdate/flashresult
+			echo "**************************************" >> /var/lib/asterisk/sounds/imageupdate/flashresult
+			echo "SUCCESS - updating binary image success" >> /var/lib/asterisk/sounds/imageupdate/flashresult
+			echo "**************************************" >> /var/lib/asterisk/sounds/imageupdate/flashresult
+			echo "**************************************" >> /var/lib/asterisk/sounds/imageupdate/flashresult
+			cat /var/lib/asterisk/sounds/imageupdate/flashresult
+			sleep 2 
+			reboot
+		else
+			date > /var/lib/asterisk/sounds/imageupdate/flashresult
+			echo "??????????????????????????????????????" >> /var/lib/asterisk/sounds/imageupdate/flashresult
+			echo "ERROR - updating binary image uImage " >> /var/lib/asterisk/sounds/imageupdate/flashresult
+			echo "??????????????????????????????????????" >> /var/lib/asterisk/sounds/imageupdate/flashresult
+			cat /var/lib/asterisk/sounds/imageupdate/flashresult
+			sleep 5
+		fi
+	else
+		echo "DEBUG The uIMAGE is not there"
+	fi
+else
+	mkdir -p /var/lib/asterisk/sounds/imageupdate
+fi
+### Guarantee that image file does not exist on the compact flash
+rm -f /var/lib/asterisk/sounds/imageupdate/uImage >/dev/null 2>/dev/null
 
 # Start inetd with no services at all.  Let networking script handle turning them on.
 echo "" > /etc/inetd.conf
@@ -81,9 +130,12 @@
 	cat /etc/fxotune.conf
 	fxotune -s 
 fi
-mount -t ext3 /dev/hda1 /var/lib/asterisk/sounds
+
+s800iconfig
+
 echo "Starting Asterisk..."
 asterisk -f >/dev/null 2>/dev/null &
+
 if [ ! -f /etc/dropbear/dropbear_rsa_host_key ]; then
 	mkdir -p /etc/dropbear/
 	dropbearkey -t rsa -f /etc/dropbear/dropbear_rsa_host_key
@@ -93,14 +145,4 @@
 	. /etc/config/rc.local
 fi
 
-modprobe i2c-bfin-twi
-modprobe i2c-dev
-
-if [ "$boardrev" != "A" ]; then
-	echo "Attempting to communicate to I2C Devices"
-	modprobe hwmon
-	modprobe lm75
-	s800iconfig
-fi
-
 cat /etc/motd




More information about the aadk-commits mailing list