SuSE Support-Datenbank
Titel: HiSax 2.0

Übersicht
Stichwortsuche
History
Versionen
Kategorien
Alle Artikel
English
HiSax 2.0
Bezieht sich auf
SuSE Linux: Version 4.4.1
Kernel-Version: 2.0.29
HiSax-Version: 2.0
Symptom:
SuSE Linux 4.4.1 ist auf den HiSax-Treiber in der Version 1.5
abgestimmt. Der Grund liegt in der zeitlichen Überschneidung der
SuSE Version 4.4.1 und der bis dahin noch instabilen
HiSax 2.0er Version.
Das Problem besteht darun, daß sich bei der 2.0er Version die
Modul-Parameter geändert haben (durchaus sinnvoll!), so daß das Script
/sbin/init.d/i4l_hardware
die Variablen aus
/etc/rc.config
nicht in der richtigen Syntax
an das Modul weiterleitet.
Lösung:
Hier ist ein modifiziertes Script /sbin/init.d/i4l_hardware
:
#!/bin/sh
# Copyright (c) 1996, 1997 SuSE Gmbh Fuerth, Germany. All rights reserved.
#
# Author:
# Klaus Franken, SuSE GmbH, Fuerth
#
# Version: pre-5.0-2 13.03.97 (kfr)
# for HiSax 2.0
#
# Maintainer: kfr@suse.de
#
# /sbin/init.d/i4l_hardware
#
# Dont't forget to edit /etc/rc.config!
# For more informatione see:
# /usr/doc/packages/i4l/* (especially README.SuSE)
# /usr/src/linux/Documentation/isdn/*
#
# This script is loading the needed ISDN-modules
# The net-confguration is done by /sbin/init.d/i4l
. /etc/rc.config
test "$I4L_START" = yes || exit 0
case "$1" in
start)
echo "Loading ISDN drivers ..."
#
# load modules
#
if test ! -z "$I4L_TELES_TYPE"; then
echo "Loading HiSax driver ..."
if test -z "$I4L_TELES_MODUL_OPTIONS"; then
HISAX_PAR1="id=$I4L_TELES_ID type=$I4L_TELES_TYPE protocol=$I4L_PROTOCOL"
case "$I4L_TELES_TYPE" in
1)
# Teles 16.0
HISAX_PAR2="irq=$I4L_TELES_IRQ mem=$I4L_TELES_MEMBASE io=$I4L_TELES_PORT"
;;
2)
# Teles 8.0
HISAX_PAR2="irq=$I4L_TELES_IRQ mem=$I4L_TELES_MEMBASE"
;;
3)
# Teles 16.3
HISAX_PAR2="irq=$I4L_TELES_IRQ io=$I4L_TELES_PORT"
;;
4)
# Creatix PNP
HISAX_PAR2="irq=$I4L_TELES_IRQ io0=$I4L_TELES_IO0 io1=$I4L_TELES_IO1"
;;
5)
# AVM A1 (Fritz)
HISAX_PAR2="irq=$I4L_TELES_IRQ io=$I4L_TELES_PORT"
;;
6)
# ELSA PCC16
if test -z "$I4L_TELES_PORT"; then
# Autoprobing
HISAX_PAR2=""
else
HISAX_PAR2="io=$I4L_TELES_PORT"
fi
;;
*)
echo "$0: unknown I4L_TELES_TYPE: $I4L_TELES_TYPE"
echo "$0: exiting!"
exit 1
;;
esac
if test -z "$HISAX_PAR2"; then
HISAX_PAR="${HISAX_PAR1}"
else
HISAX_PAR="${HISAX_PAR1} ${HISAX_PAR2}"
fi
else
HISAX_PAR=$I4L_TELES_MODUL_OPTIONS
fi
/sbin/modprobe -v hisax $HISAX_PAR
if test $? -ne 0; then
echo ""
echo "Initialization of HiSax failed!"
echo "Check /var/log/messages and /var/log/warn."
echo "Check that the values in '/etc/rc.config' are correct:"
echo "I4L_TELES_TYPE: ${I4L_TELES_TYPE}"
echo "I4L_TELES_MEMBASE: ${I4L_TELES_MEMBASE}"
echo "I4L_TELES_IRQ: ${I4L_TELES_IRQ}"
echo "I4L_TELES_PORT: ${I4L_TELES_PORT}"
echo "I4L_TELES_IO0: ${I4L_TELES_IO0}"
echo "I4L_TELES_IO1: ${I4L_TELES_IO1}"
echo "I4L_PROTOCOL: ${I4L_PROTOCOL}"
echo "I4L_TELES_MODUL_OPTIONS: ${I4L_TELES_MODUL_OPTIONS}"
echo ""
modprobe -r hisax
exit 1
echo "never here"
fi
fi
if test ! -z "$I4l_ICN_PORT"; then
echo "Loading ICN driver ..."
#/sbin/modprobe isdn.o
ICN_PAR="portbase=$I4l_ICN_PORT membase=$I4l_ICN_MEMBASE \
icn_id=$I4l_ICN_ID"
test -z "$I4l_ICN_ID2" ||
ICN_PAR="$ICN_PAR icn_id2=$I4l_ICN_ID2"
/sbin/modprobe -v icn "$ICN_PAR"
#/sbin/lsmod | grep icn > /dev/null
if test $? -ne 0; then
echo ""
echo "Initialization of the ICN-modul failed!"
echo "Check that the values in '/etc/rc.config' are correct:"
echo " and see /usr/src/linux/Documentation/README"
echo "I4L_ICN_ID: ${I4L_ICN_ID}"
echo "I4L_ICN_ID2: ${I4L_ICN_ID2}"
echo "I4L_ICN_PORT: ${I4L_ICN_PORT}"
echo "I4L_ICN_MEMBASE: ${I4L_ICN_MEMBASE}"
echo ""
modprobe -r hisax
exit 1
echo "never here"
fi
fi
# now start some tools:
# start isdnlog
#/sbin/isdnlog -v 7 -vw2 -m2048 -D /dev/isdnctrl0
/sbin/isdnlog -D -l1015 -x4087 -M -n -W80 /dev/isdnctrl0
# start iprofd
test "$I4L_IPROFD" = "yes" &&
/sbin/iprofd /etc/isdnlog/modemsettings
;;
stop)
# kill iprofd
test "$I4L_IPROFD" = "yes" &&
killall iprofd
# kill isdnlog
if [ -e /var/run/isdnlog.pid ] ; then
/bin/kill `/bin/cat /var/run/isdnlog.pid`
# sometimes 'isdnlog' have no fun to go away :-(
sleep 1 && bin/kill -9 `/bin/cat /var/run/isdnlog.pid` 2>/dev/null
rm -f /var/run/isdnlog.pid
fi
echo "Unloading ISDN drivers ..."
# unload modules
if test ! -z "$I4L_TELES_TYPE"; then
/sbin/modprobe -r hisax
fi
if test ! -z "$I4l_ICN_PORT"; then
/sbin/modprobe -r icn
fi
/sbin/modprobe -r slhc
;;
*)
echo "Usage: $0 {start|stop}"
exit 1
;;
esac
Credits:
Dank an
- Gerhard Fuellgrabe
für Hinweise auf HiSax 2.0
- Thomas Langen
für Bugfix

Siehe auch:

Stichwörter:

Übersicht
Stichwortsuche
History
Versionen
Kategorien
Alle Artikel
English
SDB-isdn_hisax, Copyright SuSE GmbH, Nuremberg, Germany
- Version: 13. Mar 1997
SuSE GmbH - Zuletzt generiert: 25. Nov 1999 11:35:43
by snbarth
with sdb_gen 1.00.0