Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 5 May 1998 18:23:10 +0200 (MDT)
From:      Matthias.Apitz@SOFTCON.de
To:        nate@mt.sri.com (Nate Williams), mobile@FreeBSD.ORG
Subject:   PCMCIA support for AVM Fritz!Card (ISDN)
Message-ID:  <9805051823.AA04883@kant.SOFTCON.de>

next in thread | raw e-mail | index | archive | help

I wrote the low level driver routines to get the ISDN PCMCIA
AVM Fritz!Card working for the i4b subsystem. It's running
fine and dial on demand PPP works too over the ISDN PCMCIA.
Here are the lines for the /etc/pccard.conf:

# AVM Fritz!Card (ISDN)
card "AVM" "ISDN A"
        config  0x1 "isic0" 7
        insert  echo AVM Fritz!Card inserted
        remove  echo AVM Fritz!Card removed


To catch the first interrupt of the card I had to move the 
call to splx(s) a little bit down in allocate_driver() in
pccard/pccard.c:

allocate_driver(struct slot *slt, struct dev_desc *desc)
{
        ...
        err = drv->enable(devi);
        /* splx(s); ap: old location */
        /*
         *      If the enable functions returns no error, then the
         *      device has been successfully installed. If so, then
         *      attach it to the slot, otherwise free it and return
         *      the error.
         */
        if (err)
                remove_device(devi);
        else            
                devi->running = 1; 
        splx(s);        /* ap: moved down  to catch all IRQs */
        return(err);
}

Without this move the result is an "unfielded interrupt" for the
PCCARD irq in slot_irq_handler() because the devi->running isn't
set to 1. The card will not generate new interrupts because
the old one isn't handled.

        matthias
-- 
firm: matthias.apitz@sisis.de [voc:+49-89-61308-351, fax: +49-89-61308-188]
priv: guru@thias.muc.de
 PGP: Key fingerprint = 0C 01 F2 23 EC 17 A2 D5  46 2D 29 4C 0E 8B 7E 8F
 URL: http://www.sisis.de/~guru/         http://www.muc.de/~thias/

from USENET:
People who run servers understand that flashy interactive interfaces have
nothing to do with the underlying functionality and often get in the way.

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-mobile" in the body of the message



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?9805051823.AA04883>