Subject: TrackPoint II and NetBSD (pms driver)
To: None <port-i386@NetBSD.ORG>
From: Mathias Engan <engan@sm.luth.se>
List: port-i386
Date: 09/28/1995 19:29:23
Hi there!
We finally solved our problem...
There was a bug in the pms.c driver.
This diff fixed the problem for us:
/engan
----- BEGIN pms.c.diff -----
*** org/pms.c Thu Sep 28 18:26:48 1995
--- pms.c Thu Sep 28 18:27:18 1995
***************
*** 67,74 ****
/* controller commands */
#define PMS_INT_ENABLE 0x47 /* enable controller interrupts */
#define PMS_INT_DISABLE 0x65 /* disable controller interrupts */
! #define PMS_AUX_ENABLE 0xa7 /* enable auxiliary port */
! #define PMS_AUX_DISABLE 0xa8 /* disable auxiliary port */
#define PMS_MAGIC_1 0xa9 /* XXX */
#define PMS_8042_CMD 0x65
--- 67,74 ----
/* controller commands */
#define PMS_INT_ENABLE 0x47 /* enable controller interrupts */
#define PMS_INT_DISABLE 0x65 /* disable controller interrupts */
! #define PMS_AUX_ENABLE 0xa8 /* enable auxiliary port */
! #define PMS_AUX_DISABLE 0xa7 /* disable auxiliary port */
#define PMS_MAGIC_1 0xa9 /* XXX */
#define PMS_8042_CMD 0x65
***************
*** 116,122 ****
u_char c;
while (c = inb(PMS_STATUS) & 0x03)
! if ((c & PMS_OBUF_FULL) == PMS_OBUF_FULL) {
/* XXX - delay is needed to prevent some keyboards from
wedging when the system boots */
delay(6);
--- 116,122 ----
u_char c;
while (c = inb(PMS_STATUS) & 0x03)
! if ((c & PMS_IBUF_FULL) == PMS_IBUF_FULL) {
/* XXX - delay is needed to prevent some keyboards from
wedging when the system boots */
delay(6);
----- END pms.c.diff -----