All of lore.kernel.org
 help / color / mirror / Atom feed
From: Benjamin Herrenschmidt <bh40@calva.net>
To: costabel@wanadoo.fr, linuxppc-dev@lists.linuxppc.org,
	cort@persephone.cs.nmt.edu
Subject: Re: pre8(vger) kills button 3 on 1-button mouse
Date: Fri, 22 Jan 1999 11:44:35 +0100	[thread overview]
Message-ID: <19990122114435.018460@mail.mipsys.com> (raw)
In-Reply-To: <36A733F6.79E148C7@univ-rennes1.fr>


Ok, I found the reason why the keyboard is no longer sending different
keycodes for left and right option key. In my patches, I was setting the
keyboard to the highest possible handler ID for a normal keyboard (that
is 3 or 5 instead of 1) but this is wrong: at handler 5, the Apple
Extended Keyboard will not send different codes.

The kernel fix is in mac_keyb.c, line 647, replace:

	/* Enable full feature set of the keyboard
	   ->get it to send separate codes for left and right shift,
	   control, option keys */
	for(i = 0;i < keyboard_ids.nids; i++) {
	    if (adb_try_handler_change(keyboard_ids.id[i], 5))
	    	printk("ADB keyboard at %d, handler set to 5\n", keyboard_ids.id[i]);
	    else if (adb_try_handler_change(keyboard_ids.id[i], 3))
	    	printk("ADB keyboard at %d, handler set to 3\n", keyboard_ids.id[i]);
	    else
	    	printk("ADB keyboard at %d, handler 1\n", keyboard_ids.id[i]);
	}

by

	/* Enable full feature set of the keyboard
	   ->get it to send separate codes for left and right shift,
	   control, option keys */
	for(i = 0;i < keyboard_ids.nids; i++) {
    if (adb_try_handler_change(keyboard_ids.id[i], 3))
	    	printk("ADB keyboard at %d, handler set to 3\n", keyboard_ids.id[i]);
	    else
	    	printk("ADB keyboard at %d, handler 1\n", keyboard_ids.id[i]);
	}


In the meantime, you can get back the previous behaviour from userland with:

mousemode 2 3

Sorry for the inconvenient !




[[ This message was sent via the linuxppc-dev mailing list. Replies are ]]
[[ not forced back to the list, so be sure to  Cc linuxppc-dev  if your ]]
[[ reply is of general interest. To unsubscribe from linuxppc-dev, send ]]
[[ the message 'unsubscribe' to linuxppc-dev-request@lists.linuxppc.org ]]

       reply	other threads:[~1999-01-22 10:44 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <36A733F6.79E148C7@univ-rennes1.fr>
1999-01-22 10:44 ` Benjamin Herrenschmidt [this message]
1999-01-22 18:30   ` pre8(vger) kills button 3 on 1-button mouse Martin Costabel
1999-01-21 11:58 Benjamin Herrenschmidt
  -- strict thread matches above, loose matches on Subject: below --
1999-01-20 22:20 3-button mouse Benjamin Herrenschmidt
1999-01-21  9:34 ` pre8(vger) kills button 3 on 1-button mouse Martin Costabel

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=19990122114435.018460@mail.mipsys.com \
    --to=bh40@calva.net \
    --cc=cort@persephone.cs.nmt.edu \
    --cc=costabel@wanadoo.fr \
    --cc=linuxppc-dev@lists.linuxppc.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.