Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 30 Nov 2002 09:53:37 +0100
From:      Marcin Dalecki <mdcki@gmx.net>
To:        Daniel O'Connor <doconnor@gsoft.com.au>
Cc:        freebsd-hackers@FreeBSD.ORG
Subject:   Re: PS/2 Mice device - synaptics touch pad.
Message-ID:  <3DE87C91.70702@gmx.net>
References:  <3DE794AD.6000908@gmx.net> <1038632298.39254.16.camel@chowder.dons.net.au>

next in thread | previous in thread | raw e-mail | index | archive | help
Daniel O'Connor wrote:
> On Sat, 2002-11-30 at 02:54, Marcin Dalecki wrote:
> 
>>Looking further I discovered that the writing method is filled with a
>>global nowrite() function.
>>
>>What should I do about it:
>>
>>1. Just provide the trivial psmwrite() augmenting kernel level function, thus
>>presering the higher level driver for XFree?
>>
>>2. Move everything in to the kernel space?! (The driver isn't exactly
>>small due to many features like border detection and so on...)
> 
> 
> I think number 1 is probably best, IMHO it should go into moused, but
> given the way the moused code is written that is pretty tough :(

OK. I'm going for nr 1. augmented with moused. This will have
the advantage of making it globally abstracted on the system
no matter whatever XFree86 or not.

> Also if you follow step 1 you will have to provide some way of telling
> the psm device not to validate the input stream, because otherwise it
> will barf on the absolute packets.
> (I have done a little tinkering, but the moused/psm code makes my head
> explode)

Yes the psm code is a bit rotten. But it's nothing in comparision
to stuff I got used too under Linux ;-). I have looked at the 2 "other"
BSE systems as well. OpenBSD has a bit of nice code separation and
reordering but less functionality there. Where NetBSD did hide the
PS/2 mice code I couldn't find out.

Right now I have augmented the current psm.c with the device detection
code for Synaptics touch pads: one sends a magic command sequence
and gets a magic reply containing model info and stuff. Thus the
tinkering in psm.c will certainly not affect any other PS/2 device type.

psm0: current command byte:0045
HERE WE GO
psm0: found Synaptics touch pad
psm0: <PS/2 Mouse> irq 12 on atkbdc0
psm0: model Synaptics touch pad, device ID 0-00, 2 buttons
psm0: config:00000000, flags:00000000, packet size:3
psm0: syncmask:c0, syncbits:00
orm0: <Option ROM> at iomem 0xc0000-0xcbfff on isa0

Now it's time to elaborate on device type printing
and to write a psmwrite for this type of devices...


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3DE87C91.70702>