diff options
Diffstat (limited to 'scripts/ipmi.init.basic')
-rwxr-xr-x | scripts/ipmi.init.basic | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/scripts/ipmi.init.basic b/scripts/ipmi.init.basic index bff8e55..3321183 100755 --- a/scripts/ipmi.init.basic +++ b/scripts/ipmi.init.basic @@ -21,6 +21,8 @@ #===== # rv=0 +kver=`uname -r` +moddir=/lib/modules/$kver/kernel/drivers start() { lsmod |grep ipmi_dev >/dev/null @@ -29,14 +31,14 @@ start() { # load the ipmi modules, if not already loaded or builtin cat /proc/kallsyms |grep ipmi_init_msghandler >/dev/null 2>&1 if [ $? -ne 0 ]; then - modprobe ipmi_msghandler + modprobe ipmi_msghandler fi cat /proc/kallsyms |grep init_ipmi_si >/dev/null 2>&1 if [ $? -ne 0 ]; then modprobe ipmi_si rv=$? if [ $rv -ne 0 ]; then - modprobe ipmi_si_drv # try old module name + modprobe ipmi_si_drv # try old module name fi fi modprobe ipmi_devintf @@ -45,6 +47,10 @@ start() { if [ $? -ne 0 ]; then modprobe ipmi_watchdog 2>/dev/null fi + if [ -f $moddir/acpi/acpi_ipmi.ko ]; then + modprobe acpi_ipmi + modprobe power_meter + fi fi maj=$(cat /proc/devices | awk '/ipmidev/{print $1}') @@ -58,6 +64,8 @@ stop() { lsmod |grep ipmi_msghandler >/dev/null if [ $? -eq 0 ]; then echo "Stopping OpenIPMI driver ..." + rmmod power_meter 2>/dev/null + rmmod acpi_ipmi 2>/dev/null rmmod ipmi_poweroff 2>/dev/null rmmod ipmi_watchdog 2>/dev/null rmmod ipmi_devintf 2>/dev/null |