[Armadeus-commitlog] armadeus branch, master, updated. release-3.3-152-gc0ff4d1
Brought to you by:
sszy
|
From: jscheer <js...@us...> - 2010-12-03 09:01:20
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "armadeus".
The branch, master has been updated
via c0ff4d1a914607a628db6bdd4caea35363c229f4 (commit)
from 34221c1c08a8b6cbdf2c7986eb663436cccea83f (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit c0ff4d1a914607a628db6bdd4caea35363c229f4
Author: Jeremie Scheer <jer...@ar...>
Date: Fri Dec 3 10:00:56 2010 +0100
[ROOTFS] Add the gpio init file S80gpios to the rootfs when compiling a PPS board. Corrects bugs with ethernet SMSC and WPA Supplicant
-----------------------------------------------------------------------
Summary of changes:
buildroot/package/armadeus/pps/pps.mk | 13 +++-
.../pps/configs/{ => wpa_supplicant}/networkConfig | 0
target/pps/init/S80gpios | 76 ++++++++++++++++++++
3 files changed, 85 insertions(+), 4 deletions(-)
rename target/pps/configs/{ => wpa_supplicant}/networkConfig (100%)
create mode 100755 target/pps/init/S80gpios
diff --git a/buildroot/package/armadeus/pps/pps.mk b/buildroot/package/armadeus/pps/pps.mk
index 7df17a4..2642e8e 100644
--- a/buildroot/package/armadeus/pps/pps.mk
+++ b/buildroot/package/armadeus/pps/pps.mk
@@ -9,7 +9,9 @@ ARMADEUS-PPS_TESTSCRIPTS_TARGET_DIR:=$(TARGET_DIR)/usr/local/pps/scripts
ARMADEUS-PPS_WWW_DIR:=$(TOPDIR)/../target/pps/www
ARMADEUS-PPS_WWW_TARGET_DIR:=$(TARGET_DIR)/var
ARMADEUS-PPS_CONFIGS_DIR:=$(TOPDIR)/../target/pps/configs
-ARMADEUS-PPS_CONFIGS_TARGET_DIR:=$(TARGET_DIR)/etc/wpa_supplicant
+ARMADEUS-PPS_CONFIGS_TARGET_DIR:=$(TARGET_DIR)/etc/
+ARMADEUS-PPS_INITS_DIR:=$(TOPDIR)/../target/pps/init
+ARMADEUS-PPS_INITS_TARGET_DIR:=$(ARMADEUS-PPS_CONFIGS_TARGET_DIR)/init.d
$(ARMADEUS-PPS_TESTSCRIPTS_TARGET_DIR)/init_boa.sh:
$(ARMADEUS-PPS_TESTSCRIPTS_SOURCE)/install.sh $(ARMADEUS-PPS_TESTSCRIPTS_TARGET_DIR)
@@ -17,11 +19,14 @@ $(ARMADEUS-PPS_TESTSCRIPTS_TARGET_DIR)/init_boa.sh:
$(ARMADEUS-PPS_WWW_TARGET_DIR)/www/index.html:
cp -Rf $(ARMADEUS-PPS_WWW_DIR) $(ARMADEUS-PPS_WWW_TARGET_DIR)
-$(ARMADEUS-PPS_CONFIGS_TARGET_DIR)/networkConfig:
+$(ARMADEUS-PPS_CONFIGS_TARGET_DIR)/wpa_supplicant/networkConfig:
mkdir -p $(ARMADEUS-PPS_CONFIGS_TARGET_DIR)
- cp -f $(ARMADEUS-PPS_CONFIGS_DIR)/* $(ARMADEUS-PPS_CONFIGS_TARGET_DIR)
+ cp -Rf $(ARMADEUS-PPS_CONFIGS_DIR)/* $(ARMADEUS-PPS_CONFIGS_TARGET_DIR)
-pps-testscripts: $(ARMADEUS-PPS_TESTSCRIPTS_TARGET_DIR)/init_boa.sh $(ARMADEUS-PPS_WWW_TARGET_DIR)/www/index.html $(ARMADEUS-PPS_CONFIGS_TARGET_DIR)/networkConfig
+$(ARMADEUS-PPS_INITS_TARGET_DIR)/S80gpios:
+ cp -Rf $(ARMADEUS-PPS_INITS_DIR)/* $(ARMADEUS-PPS_INITS_TARGET_DIR)
+
+pps-testscripts: $(ARMADEUS-PPS_TESTSCRIPTS_TARGET_DIR)/init_boa.sh $(ARMADEUS-PPS_WWW_TARGET_DIR)/www/index.html $(ARMADEUS-PPS_CONFIGS_TARGET_DIR)/wpa_supplicant/networkConfig $(ARMADEUS-PPS_INITS_TARGET_DIR)/S80gpios
armadeus-pps-testscripts-clean:
rm -rf $(ARMADEUS-PPS_TESTSCRIPTS_TARGET_DIR)
diff --git a/target/pps/configs/networkConfig b/target/pps/configs/wpa_supplicant/networkConfig
similarity index 100%
rename from target/pps/configs/networkConfig
rename to target/pps/configs/wpa_supplicant/networkConfig
diff --git a/target/pps/init/S80gpios b/target/pps/init/S80gpios
new file mode 100755
index 0000000..bf33950
--- /dev/null
+++ b/target/pps/init/S80gpios
@@ -0,0 +1,76 @@
+#!/bin/sh
+#
+# Script used to configure user space usable GPIOs on PPS
+#
+# Julien Boibessot <jul...@ar...>
+# Fabien Marteau <fab...@ar...>
+#
+
+GPIO_DEV_DIR=/dev/gpio
+
+setbit()
+{
+ PORT=$1
+ NB=$2
+ VAL=$3
+ cat $PORT | sed "s/[0-1]\([0-1]\{$NB\}\)$/$VAL\1/" > $PORT
+}
+
+gpio_set_value()
+{
+ GPIO=$1
+ VALUE=$2
+ if [ "$VALUE" == "1" ]; then
+ echo -ne "\x01" > $GPIO_DEV_DIR/$GPIO
+ else
+ echo -ne "\x00" > $GPIO_DEV_DIR/$GPIO
+ fi
+}
+
+# Sets $1 as GPIO; $2 == 1 -> outpout, 0 -> input
+gpio_mode()
+{
+ GPIO=`echo $1 | cut -c 3-4`
+ VALUE=$2
+ PORT=`echo $1 | cut -c 2`
+ PORT_DIR="/proc/driver/gpio/port"$PORT"dir"
+ PORT_MODE="/proc/driver/gpio/port"$PORT"mode"
+
+ setbit $PORT_MODE $GPIO 1
+ setbit $PORT_DIR $GPIO $VALUE
+}
+
+case "$1" in
+ start)
+ echo "Configuring PPS GPIOs"
+ /usr/bin/loadgpio.sh
+
+ # Status leds
+ gpio_mode PF16 1
+ gpio_set_value PF16 1 #STATUS_LED0 (green) on
+ # Status leds
+ gpio_mode PF17 1
+ gpio_set_value PF17 0 #STATUS_LED1 (red) off
+
+ # Second eth
+ gpio_mode PC15 1
+ gpio_set_value PC15 1 #LAN9500_RESETN
+
+ ;;
+ stop)
+ gpio_set_value PF16 0 #STATUS_LED0 (green) off
+ gpio_set_value PF17 1 #STATUS_LED1 (red) off
+ gpio_set_value PC15 0 #LAN9500_RESETN
+ ;;
+ restart)
+ $0 stop
+ $0 start
+ ;;
+ *)
+ echo "Usage: $0 {start|stop|restart}"
+ exit 1
+ ;;
+esac
+
+exit 0
+
hooks/post-receive
--
armadeus
|