summaryrefslogtreecommitdiff
path: root/2003/i
diff options
context:
space:
mode:
Diffstat (limited to '2003/i')
-rw-r--r--2003/i/buzz/src/kernel/pbus.c10
-rw-r--r--2003/i/buzz/src/kernel/pbus.h2
2 files changed, 10 insertions, 2 deletions
diff --git a/2003/i/buzz/src/kernel/pbus.c b/2003/i/buzz/src/kernel/pbus.c
index 277428a..b1c7025 100644
--- a/2003/i/buzz/src/kernel/pbus.c
+++ b/2003/i/buzz/src/kernel/pbus.c
@@ -295,12 +295,18 @@ pbusioctl(dev, cmd, addr, flag, proc)
PBUS_WAIT;
PBUS_WRITE_4(8,(parm->addr<<8)|PBUS_CLK|PBUS_RnW|sc->pbusinten);
break;
+ case PBUS_INTDISABLE:
+ sc->pbusinten=0;
+ PBUS_WRITE_4(8,0|PBUS_CLK|PBUS_RnW|sc->pbusinten);
+ break;
case PBUS_INTENABLE:
- sc->pbusinten=1;
+ sc->pbusinten=PBUS_INTEN;
PBUS_WRITE_4(8,0|PBUS_CLK|PBUS_RnW|sc->pbusinten);
break;
+ case PBUS_INTREAD:
+ parm->ints=(~(PBUS_READ_4(8)>>16))&0x1F;
+ break;
}
- parm->ints=(~(PBUS_READ_4(8)>>16))&0x1F;
}
if (minor(dev)==0) /* CAM */
diff --git a/2003/i/buzz/src/kernel/pbus.h b/2003/i/buzz/src/kernel/pbus.h
index 7b11499..62bd460 100644
--- a/2003/i/buzz/src/kernel/pbus.h
+++ b/2003/i/buzz/src/kernel/pbus.h
@@ -19,6 +19,8 @@ struct pbus_io
#define PBUS_READ _IOWR('R', 1, struct pbus_io)
#define PBUS_WRITE _IOWR('R', 2, struct pbus_io)
#define PBUS_INTENABLE _IO('R', 3)
+#define PBUS_INTDISABLE _IO('R', 4)
+#define PBUS_INTREAD _IOWR('R', 5, struct pbus_io)
#define CAM_SETFRAMESIZE _IOW('R', 10, unsigned long)
#endif