[lm-sensors] [RFC PATCH v3 0/2] Add sensors config tool
Andre Prendel
andre.prendel at gmx.de
Tue Apr 13 21:32:50 CEST 2010
On Mon, Apr 12, 2010 at 09:25:16AM +0200, Hans de Goede wrote:
> Hi,
Hello Hans,
> Sounds fine (and the proposed code looks good), but IMHO it would be better to have
> a module statement rather then a module*s*, which specifies
> a single module, and then allow having this statement multiple times.
>
> This way we can (optionally) add module parameters. Unfortunately in some
> rare cases this is necessary see, for example:
> http://www.lm-sensors.org/wiki/Configurations/Abit/AN7
I've revised the install.sh script a bit (see patch below). Now we can
have the module statement multiple times along with parameters.
Regards,
Andre
---
Index: sensors/prog/detect/install.sh
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ sensors/prog/detect/install.sh 2010-04-13 20:59:26.931071291 +0200
@@ -0,0 +1,59 @@
+#!/bin/bash
+
+SYSFS_PATH=/sys/class/dmi/id
+CONF_PATH=/var/lib/sensors/conf
+INSTALL_FILE=/etc/sensors.d/automobo.conf
+
+BOARD_VENDOR=`cat $SYSFS_PATH/board_vendor`
+BOARD_NAME=`cat $SYSFS_PATH/board_name`
+BOARD_VERSION=`cat $SYSFS_PATH/board_version`
+SYS_VENDOR=`cat $SYSFS_PATH/sys_vendor`
+PRODUCT_NAME=`cat $SYSFS_PATH/product_name`
+PRODUCT_VERSION=`cat $SYSFS_PATH/product_version`
+
+# only for testing
+#BOARD_VENDOR=Fujitsu
+#BOARD_NAME=D2312C1
+#BOARD_VERSION=1.0
+#SYS_VENDOR=Fujitsu
+#PRODUCT_NAME=D2312D2
+#PRODUCT_VERSION=2.0
+
+SEARCH_BOARD_VERSION=$CONF_PATH"/"$BOARD_VENDOR"_"$BOARD_NAME"_"$BOARD_VERSION
+SEARCH_BOARD=$CONF_PATH"/"$BOARD_VENDOR"_"$BOARD_NAME
+SEARCH_SYS_VERSION=$CONF_PATH"/"$SYS_VENDOR"_"$PRODUCT_NAME"_"$PRODUCT_VERSION
+SEARCH_SYS=$CONF_PATH"/"$SYS_VENDOR"_"$PRODUCT_NAME
+
+load_drivers()
+{
+ while read a b c; do
+ if [ "$a" = "#" ]; then
+ if [ "$b" = "module:" ]; then
+ driver=`echo $c | tr -d '\r'`
+ echo "Loading driver: $driver"
+ modprobe $driver
+ fi
+ fi
+ done < $INSTALL_FILE
+}
+
+search_config()
+{
+ echo "Looking for config: $1"
+ if [ -h "$1" ]; then
+ echo "Found suitable config"
+ cp -f $1 $INSTALL_FILE
+ load_drivers
+ exit 0
+ fi
+}
+
+for search in "$SEARCH_BOARD_VERSION" "$SEARCH_BOARD" "$SEARCH_SYS_VERSION" "$SEARCH_SYS"
+do
+ search_config "$search"
+done
+
+echo "Could not find a suitable config"
+rm -f $INSTALL_FILE
+
+exit 1
More information about the lm-sensors
mailing list