diff options
author | phk <phk@FreeBSD.org> | 1995-09-20 07:23:51 +0000 |
---|---|---|
committer | phk <phk@FreeBSD.org> | 1995-09-20 07:23:51 +0000 |
commit | 4bf9078556fa07d9c81b958f52dbcaedbec1e9f9 (patch) | |
tree | aea4f010e38a48993b3c18894c611fdb13068b5f /sys/pccard | |
parent | 3acddf454398b4ef12c7ecb005043bef93a9634d (diff) | |
download | FreeBSD-src-4bf9078556fa07d9c81b958f52dbcaedbec1e9f9.zip FreeBSD-src-4bf9078556fa07d9c81b958f52dbcaedbec1e9f9.tar.gz |
Missed these changes to the pccard stuff. Sorry Martin!
Diffstat (limited to 'sys/pccard')
-rw-r--r-- | sys/pccard/card.h | 1 | ||||
-rw-r--r-- | sys/pccard/cardinfo.h | 1 | ||||
-rw-r--r-- | sys/pccard/pccard.c | 8 | ||||
-rw-r--r-- | sys/pccard/pcic.c | 2 | ||||
-rw-r--r-- | sys/pccard/slot.h | 1 |
5 files changed, 10 insertions, 3 deletions
diff --git a/sys/pccard/card.h b/sys/pccard/card.h index 30ee50e..a2e5642 100644 --- a/sys/pccard/card.h +++ b/sys/pccard/card.h @@ -97,6 +97,7 @@ struct drv_desc int iobase; /* base of I/O ports */ int irqmask; /* Interrupt number(s) to allocate */ int flags; /* Device flags */ + u_char misc[128]; /* For any random info */ }; struct pcic_reg diff --git a/sys/pccard/cardinfo.h b/sys/pccard/cardinfo.h index 30ee50e..a2e5642 100644 --- a/sys/pccard/cardinfo.h +++ b/sys/pccard/cardinfo.h @@ -97,6 +97,7 @@ struct drv_desc int iobase; /* base of I/O ports */ int irqmask; /* Interrupt number(s) to allocate */ int flags; /* Device flags */ + u_char misc[128]; /* For any random info */ }; struct pcic_reg diff --git a/sys/pccard/pccard.c b/sys/pccard/pccard.c index ed7f324..9f0af42 100644 --- a/sys/pccard/pccard.c +++ b/sys/pccard/pccard.c @@ -399,9 +399,12 @@ unsigned int mask; for (irq = 1; irq < 16; irq++) { mask = 1ul << irq; - if ((mask & imask) && - register_intr(irq, 0, 0, hand, maskp, unit)==0) + if (!(mask & imask)) + continue; +printf("IRQ=%d\n",irq); + if (register_intr(irq, 0, 0, hand, maskp, unit)==0) { +printf("IRQ=%d yes!\n",irq); if (maskp) INTRMASK (*maskp, mask); @@ -480,6 +483,7 @@ int err, irq = 0, s; devp->isahd.id_unit = drvp->unit; devp->isahd.id_msize = drvp->memsize; devp->isahd.id_iobase = drvp->iobase; + bcopy(drvp->misc, devp->misc, sizeof drvp->misc); if (irq) devp->isahd.id_irq = 1 << irq; devp->isahd.id_flags = drvp->flags; diff --git a/sys/pccard/pcic.c b/sys/pccard/pcic.c index b57e18e..d03e10b 100644 --- a/sys/pccard/pcic.c +++ b/sys/pccard/pcic.c @@ -291,7 +291,7 @@ int reg = mp->window * PCIC_MEMSIZE + PCIC_MEMBASE; putw (cp, reg, sys_addr & 0xFFF); putw (cp, reg+2, (sys_addr + (mp->size >> 12) - 1) & 0xFFF); putw (cp, reg+4, ((mp->card >> 12) - sys_addr) & 0x3FFF); -#if 0 +#if 1 printf("card offs = 0x%x, sys_addr = 0x%x\n", ((mp->card >> 12) - sys_addr) & 0x3FFF, sys_addr); #endif /* diff --git a/sys/pccard/slot.h b/sys/pccard/slot.h index fa29991..4ee0602 100644 --- a/sys/pccard/slot.h +++ b/sys/pccard/slot.h @@ -90,6 +90,7 @@ struct pccard_dev void *arg; /* Device argument */ struct slot *sp; /* Back pointer to slot */ int running; /* Current state of driver */ + u_char misc[128]; /* For any random info */ }; /* |