Messages in this thread | | | Date | Sat, 20 Jun 1998 15:07:40 +0200 (MET DST) | From | Geert Uytterhoeven <> | Subject | 2.0.34 psaux and Logitech Pilot |
| |
Hi,
This problem is only partly kernel related (kernel oops). Sorry for that.
I have two Logitech Pilot mice. They both have DB9 serial connectors and work fine as serial mice. The oldest was sold as a Pilot Serial, while the newest one was sold as a Pilot PS/2 and came with a DB9-to-PS/2 convertor. Both have the same model (M/N M-M35) and part (P/N 811313-01) numbers.
I wanted to free a serial port so I can use my terminal and modem at the same time. Since my motherboard (A/Open AP53) has a header for a PS/2 mouse connector cable, I got a bracket with PS/2 connector for it and moved the Pilot to the PS/2 connector, using the DB9-to-PS/2 connector that came with the Pilot PS/2. However, none of my two Logitech mice work when used as PS/2 mice.
I tried a Compaq native-PS/2 2-button (yup) mouse, and that works.
Problems:
- When I start gpm, it causes the following oops because the psaux.o module initialization (loaded by kerneld) fails. This is definitely a kernel bug.
-------------------------------------------------------------------------------- Unable to handle kernel paging request at virtual address c2829077 current->tss.cr3 = 00aea000, %cr3 = 00aea000 *pde = 0009e067 *pte = 00000000 Oops: 0000 CPU: 0 EIP: 0010:[<02829077>] EFLAGS: 00010216 eax: 000000ff ebx: 00b91f44 ecx: 00227bb0 edx: 00227000 esi: 00000001 edi: 00b91f54 ebp: 0137c7f8 esp: 00b91f1c ds: 0018 es: 0018 fs: 002b gs: 002b ss: 0018 Process gpm (pid: 467, process nr: 20, stackpage=00b91000) Stack: 00000002 80000000 0000000f 00b91f44 00000000 00000000 0137c7f8 009bc500 00000004 0012459e 72616863 6a616d2d 312d726f 00312d30 00190e34 001248d6 009bc500 0137c7f8 0137c7f8 00000000 01b7b000 00122b37 009bc500 0137c7f8 Call Trace: [<0012459e>] [<001248d6>] [<00122b37>] [<00122c4f>] [<0010a655>] Code: <1>Unable to handle kernel paging request at virtual address c2829077 current->tss.cr3 = 00aea000, %cr3 = 00aea000 *pde = 0009e067 *pte = 00000000 Oops: 0000 CPU: 0 EIP: 0010:[<0010abcc>] EFLAGS: 00010206 eax: 00000010 ebx: 0000002b ecx: 02829077 edx: 01c57018 esi: 00000000 edi: 00b92000 ebp: 00b91ee0 esp: 00b91e84 ds: 0018 es: 0018 fs: 0010 gs: 002b ss: 0018 Process gpm (pid: 467, process nr: 20, stackpage=00b91000) Stack: 0000002b 00000000 00029000 00b91ee0 016da018 02800000 03000000 02800000 016d0018 00111696 0017e1b5 00b91ee0 00000000 001113c8 00000001 00b91f54 0137c7f8 00227bb8 00f4e698 00000000 0010a7e0 00b91ee0 00000000 00b91f44 Call Trace: [<02800000>] [<03000000>] [<02800000>] [<00111696>] [<001113c8>] [<0010a7e0>] [<02829077>] [<0012459e>] [<001248d6>] [<00122b37>] [<00122c4f>] [<0010a655>] Code: 64 8a 04 0e 0f a1 88 c2 81 e2 ff 00 00 00 89 54 24 10 52 68 -------------------------------------------------------------------------------- Using `/usr/src/native-2.0.34/System.map' to map addresses to symbols.
Trace: 12459e <get_chrfops+1e/24> Trace: 1248d6 <chrdev_open+3e/4c> Trace: 122b37 <do_open+c7/124> Trace: 122c4f <sys_open+3f/78> Trace: 10a655 <system_call+55/80>
Code: -------------------------------------------------------------------------------- Using `/usr/src/native-2.0.34/System.map' to map addresses to symbols.
>>EIP: 10abcc <die_if_kernel+280/2c0> Trace: 2800000 Trace: 3000000 Trace: 2800000 Trace: 111696 <do_page_fault+2ce/2e0> Trace: 111696 <do_page_fault+2ce/2e0> Trace: 10a7e0 <error_code+40/50> Trace: 2829077 Trace: 12459e <get_chrfops+1e/24> Trace: 1248d6 <chrdev_open+3e/4c> Trace: 122b37 <do_open+c7/124> Trace: 122c4f <sys_open+3f/78> Trace: 10a655 <system_call+55/80>
Code: 10abcc <die_if_kernel+280/2c0> movb %fs:(%esi,%ecx,1),%al Code: 10abd0 <die_if_kernel+284/2c0> popl %fs Code: 10abd2 <die_if_kernel+286/2c0> movb %al,%dl Code: 10abd4 <die_if_kernel+288/2c0> andl $0xff,%edx Code: 10abda <die_if_kernel+28e/2c0> movl %edx,0x10(%esp,1) Code: 10abde <die_if_kernel+292/2c0> pushl %edx Code: 10abdf <die_if_kernel+293/2c0> pushl $0x90909000 --------------------------------------------------------------------------------
- psaux.o can't be initialized because the BIOS doesn't see the presence of a PS/2 mouse when I boot up without the Compaq mouse connected. I fooled the driver by setting `aux_device_present = 0xaa;' in psaux.c and then the driver loads, and the Compaq mouse works. But not the Logitech.
- Defining INITIALIZE_DEVICE in psaux.c doesn't make a difference.
Someone with a clue to solve this? Perhaps I got Logitech mices that don't support DB9-to-PS/2? Thx!
Greetings,
Geert
-- Geert Uytterhoeven Geert.Uytterhoeven@cs.kuleuven.ac.be Wavelets, Linux/{m68k~Amiga,PPC~CHRP} http://www.cs.kuleuven.ac.be/~geert/ Department of Computer Science -- Katholieke Universiteit Leuven -- Belgium
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu
| |