sndconfig 'stealing' modem IRQ(?)

sndconfig 'stealing' modem IRQ(?)

Post by Michael Stro » Fri, 15 Aug 2003 06:03:15


I'm trying to fix a soundcard (ESS 1868) and modem (vanilla
internal-hardware type) conflict.

Under Red Hat 7.x, if I used the modem-setup/PPP-connect script (see
end of message) first of all, setserial assigned /dev/ttyS2 (modem's
serial port) IRQ 5; using the soundcard after this resulted in it that
being assigned IRQ 10 and the whole setup working fine.

Unfortunately, if the soundcard was used first, it claimed IRQ 5
instead, and the modem didn't work.

The same thing seems to be happening under Red Hat 8.0, except that
sndcondig in the rc.sysinit seems to be forcing the soundcard's
IRQ-grab at boot-time.

How can I override this behavior?

The relevant part of /etc/rc.d/rc.sysinit (I hope) is

setserial /dev/ttyS2 irq 5
        cat /root/MODEM_FIX > /dev/ttyS2
        cat /proc/interrupts
        echo '******* PRESS ENTER ******'
        read foobar
# tweak isapnp settings if needed.
if [ -n "$PNP" -a  -f /proc/isapnp -a -x /sbin/sndconfig ]; then
    /sbin/sndconfig --mungepnp >/dev/null 2>&1

Lines 2 to 5 are intended to force the serial-port/modem to grab IRQ 5
first (i.e. my attempt at a kludgey solution) but this doesn't work.

Any help appreciated, thanks!

- Michael

= = = = = = = = = = = = = = = = =

# Script to initiate a ppp connection. This is the first part of the
# pair of scripts. This is not a secure pair of scripts as the codes
# are visible with the 'ps' command.  However, it is simple.
# These are the parameters. Change as needed.
LOCAL_IP=        # Local IP address if known. Dynamic =
REMOTE_IP=       # Remote IP address if desired. Normally
NETMASK=   # The proper netmask if needed

setserial /dev/ttyS2 irq 5
# Export them so that they will be available at 'ppp-on-dialer' time.
# This is the location of the script which dials the phone and logs
# in.  Please use the absolute file name as the $PATH variable is not
# used on the connect option.  (To do so on a 'root' account would be
# a security hole so don't ask.)
# Initiate the connection
# I put most of the common options on this command. Please, don't
# forget the 'lock' option or some programs such as mgetty will not
# work. The asyncmap and escape will permit the PPP link to work with
# a telnet or rlogin connection. You are welcome to make any changes
# as desired. Don't use the 'defaultroute' option if you currently
# have a default route to an ethernet gateway.
exec /usr/sbin/pppd debug lock modem crtscts /dev/ttyS2 115200 \
        asyncmap 20A0000 escape FF kdebug 0 \
        noipdefault netmask $NETMASK defaultroute connect