summaryrefslogtreecommitdiffstats
path: root/sys/pccard
diff options
context:
space:
mode:
authorphk <phk@FreeBSD.org>1995-09-20 07:23:51 +0000
committerphk <phk@FreeBSD.org>1995-09-20 07:23:51 +0000
commit4bf9078556fa07d9c81b958f52dbcaedbec1e9f9 (patch)
treeaea4f010e38a48993b3c18894c611fdb13068b5f /sys/pccard
parent3acddf454398b4ef12c7ecb005043bef93a9634d (diff)
downloadFreeBSD-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.h1
-rw-r--r--sys/pccard/cardinfo.h1
-rw-r--r--sys/pccard/pccard.c8
-rw-r--r--sys/pccard/pcic.c2
-rw-r--r--sys/pccard/slot.h1
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 */
};
/*
OpenPOWER on IntegriCloud