Return to BSD News archive
Xref: sserve comp.os.386bsd.questions:9257 comp.os.386bsd.misc:2058
Path: sserve!newshost.anu.edu.au!munnari.oz.au!constellation!paladin.american.edu!europa.eng.gtefsd.com!emory!swrinde!sgiblab!cs.uoregon.edu!nntpserver!cogswell
From: cogswell@creampie.cs.uoregon.edu (Bryce Howard Cogswell)
Newsgroups: comp.os.386bsd.questions,comp.os.386bsd.misc
Subject: Re: problems with driver for a DEC pc mouse - help
Date: 10 Mar 94 16:36:57
Organization: /home/faculty/cogswell/.organization
Lines: 36
Message-ID: <COGSWELL.94Mar10163657@creampie.cs.uoregon.edu>
References: <CMCovn.18q@curia.ucc.ie>
NNTP-Posting-Host: creampie.cs.uoregon.edu
In-reply-to: dave@odyssey.ucc.ie's message of Tue, 8 Mar 1994 14:44:42 GMT
In article <CMCovn.18q@curia.ucc.ie> dave@odyssey.ucc.ie writes:
> Hi I am trying to get Xfree86 2.0 to work on a FreeBSD 1.02 box
> (a DEC PC LPv 466 d2).
> I am having problems with the mouse (a model PCXAS-AA - is this a logitech
> or microsoft ?).
>
> Anyway I downloaded a psmouse driver, but when I ran the new kernel
> it works ok (I had a problem with trying to use the reccomended
> line in the config file, as it seemed to have a conflict for the "IO_KBD"
> port.
>
> the line was
> device psm0 at isa? port "IO_KBD" tty irq 12 vector psmintr
> and it caused the message
> psm0 not probed due to i/o address conflict with sc0 at 0x60
You have to hack the kernel code. There is a small test that checks
if two devices are at the same address and ignores the second if so.
You need to disable this check for the IO_KBD address, since it really
is shared with between two drivers. Look in haveseen() in isa.c and
change the first block of code to something like:
if (tmpdvp->id_alive != -1) {
if ((dvp->id_iobase != IO_KBD) && /* <-- hack for mouse!! */
(dvp->id_iobase >= tmpdvp->id_iobase) &&
(dvp->id_iobase <=
(tmpdvp->id_iobase + tmpdvp->id_alive - 1))) {
conflict(dvp, tmpdvp, dvp->id_iobase,
"I/O address", "0x%x");
status = 1;
}
}
BTW: This really belongs in the FAQ.
-- Bryce