[gpm]Re: PROBLEM: mousedev.c in 2.4.10 not working

Jan D. Jan.Djarv@mbox200.swipnet.se
Thu, 27 Sep 2001 21:21:09 +0200 (CEST)


> On Thu, Sep 27, 2001 at 06:53:06PM +0200, Jan D. wrote:
> > 
> > I downgraded gpm to 1.19.3 from 1.19.4 and then it worked OK.
> > Sorry about that.  I will now go bug the gpm people instead.
> 
> 1.19.4 has new intelligent PS/2 code. It may be imperfect emulation on
> mousedev's side still. GPM should be able to print its debugging
> information somewhere. Most likely the ImPS/2 init succeeds on the
> mousedev side, but GPM is thinking it failed for some reason.

Cc:ing the gpm list.

Gpm complains about this:
/home/jhd/gpm-1.19.4/gpm[4970]: imps2: Auto-detected unknown mouse type 4,
 assuming standard PS/2

This explains the "wrong protocol" behaviour.
If type 4 should be taken care of by gpm or 4 is a bad value from mousedev
seems to be the question.

The "old" initialization was just
write(1, "\363\310\363d\363P", 6)
 (AUX_SET_SAMPLE 200, AUX_SET_SAMPLE 100, AUX_SET_SAMPLE 80)
a nanosleep and
write(1, "\366\346\364\363d\350\3", 7)
 (0xF6 AUX_SET_SCALE11, AUX_ENABLE_DEV, AUX_SET_SAMPLE, 100, AUX_SET_RES, 3)


The new one is more elaborate and reads type 4 from the mousedev.
 (AUX_ENABLE_DEV, AUX_SET_SAMPLE, 100,
  AUX_ENABLE_DEV, AUX_SET_SAMPLE, 100,
  AUX_SET_SAMPLE, 200, AUX_SET_SAMPLE, 100, AUX_SET_SAMPLE, 80,
  AUX_SEND_ID,
  AUX_SET_SCALE11, AUX_ENABLE_DEV, AUX_SET_SAMPLE, 100, AUX_SET_RES, 3)

(probably a lot of unnecessary info again :-):

4970  write(1, "\364", 1)               = 1
4970  read(1, "\372", 1)                = 1
4970  write(1, "\363", 1)               = 1
4970  read(1, "\372", 1)                = 1
4970  write(1, "d", 1)                  = 1
4970  read(1, "\372", 1)                = 1
4970  nanosleep({0, 30000000},  <unfinished ...>
4969  _exit(0)                          = ?
4970  <... nanosleep resumed> NULL)     = 0
4970  ioctl(1, 0x540b, 0)               = -1 ENOTTY (Inappropriate ioctl for device)
4970  write(1, "\364", 1)               = 1
4970  read(1, "\372", 1)                = 1
4970  write(1, "\363", 1)               = 1
4970  read(1, "\372", 1)                = 1
4970  write(1, "d", 1)                  = 1
4970  read(1, "\372", 1)                = 1
4970  nanosleep({0, 30000000}, NULL)    = 0
4970  ioctl(1, 0x540b, 0)               = -1 ENOTTY (Inappropriate ioctl for device)
4970  write(1, "\363", 1)               = 1
4970  read(1, "\372", 1)                = 1
4970  write(1, "\310", 1)               = 1
4970  read(1, "\372", 1)                = 1
4970  write(1, "\363", 1)               = 1
4970  read(1, "\372", 1)                = 1
4970  write(1, "d", 1)                  = 1
4970  read(1, "\372", 1)                = 1
4970  write(1, "\363", 1)               = 1
4970  read(1, "\372", 1)                = 1
4970  write(1, "P", 1)                  = 1
4970  read(1, "\372", 1)                = 1
4970  nanosleep({0, 30000000}, NULL)    = 0
4970  ioctl(1, 0x540b, 0)               = -1 ENOTTY (Inappropriate ioctl for device)
4970  write(1, "\362", 1)               = 1
4970  read(1, "\372", 1)                = 1
4970  read(1, "\4", 1)                  = 1
4970  write(1, "\346", 1)               = 1
4970  read(1, "\372", 1)                = 1
4970  write(1, "\364", 1)               = 1
4970  read(1, "\372", 1)                = 1
4970  write(1, "\363", 1)               = 1
4970  read(1, "\372", 1)                = 1
4970  write(1, "d", 1)                  = 1
4970  read(1, "\372", 1)                = 1
4970  write(1, "\350", 1)               = 1
4970  read(1, "\372", 1)                = 1
4970  write(1, "\3", 1)                 = 1
4970  read(1, "\372", 1)                = 1
4970  nanosleep({0, 30000000}, NULL)    = 0

	Jan D.