All of lore.kernel.org
 help / color / mirror / Atom feed
From: Benjamin Herrenschmidt <benh@kernel.crashing.org>
To: Michael Hanselmann <linux-kernel@hansmi.ch>
Cc: linux-kernel@killerfox.forkbomb.ch, dtor_core@ameritech.net,
	linux-kernel@vger.kernel.org, linuxppc-dev@ozlabs.org,
	Vojtech Pavlik <vojtech@suse.cz>,
	linux-input@atrey.karlin.mff.cuni.cz
Subject: Re: [PATCH/RFC?] usb/input: Add support for fn key on Apple PowerBooks
Date: Thu, 12 Jan 2006 10:41:40 +1100	[thread overview]
Message-ID: <1137022900.5138.66.camel@localhost.localdomain> (raw)
In-Reply-To: <20060111232651.GI6617@hansmi.ch>

On Thu, 2006-01-12 at 00:26 +0100, Michael Hanselmann wrote:

>   * This is the global environment of the parser. This information is
> @@ -431,6 +433,14 @@ struct hid_device {							/* device repo
>  	void (*ff_exit)(struct hid_device*);                            /* Called by hid_exit_ff(hid) */
>  	int (*ff_event)(struct hid_device *hid, struct input_dev *input,
>  			unsigned int type, unsigned int code, int value);
> +
> +#ifdef CONFIG_USB_HIDINPUT_POWERBOOK
> +	/* We do this here because it's only relevant for the
> +	 * USB devices, not for all input_dev's.
> +	 */
> +	unsigned long pb_fn[NBITS(KEY_MAX)];
> +	unsigned long pb_numlock[NBITS(KEY_MAX)];
> +#endif
>  };

I don't understand the comment above ? You are adding this to all struct
hid_device ? There can be only one of those keyboards plugged at one
point in time, I don't think there is any problem having the above
static in the driver rather than in the hid_device structure.

  .../...

>  
> +	if ((hid->quirks & HID_QUIRK_POWERBOOK_HAS_FN) &&
> +	    hidinput_pb_event(hid, input, usage, value)) {
> +		return;
> +	}
> +

Dimitry might disagree but it's generally considered bad taste to have
{ and } for a single statement :)

>  	if (usage->hat_min < usage->hat_max || usage->hat_dir) {
>  		int hat_dir = usage->hat_dir;
>  		if (!hat_dir)
> diff -upr linux-2.6.15.orig/drivers/usb/input/Kconfig linux-2.6.15/drivers/usb/input/Kconfig
> --- linux-2.6.15.orig/drivers/usb/input/Kconfig	2006-01-11 23:59:40.000000000 +0100
> +++ linux-2.6.15/drivers/usb/input/Kconfig	2006-01-08 11:53:35.000000000 +0100
> @@ -37,6 +37,16 @@ config USB_HIDINPUT
>  
>  	  If unsure, say Y.
>  
> +config USB_HIDINPUT_POWERBOOK
> +	bool "Enable support for iBook/PowerBook special keys"
> +	default n
> +	depends on USB_HIDINPUT
> +	help
> +	  Say Y here if you want support for the special keys (Fn, Numlock) on
> +	  Apple iBooks and PowerBooks.
> +
> +	  If unsure, say N.
> +
>  config HID_FF
>  	bool "Force feedback support (EXPERIMENTAL)"
>  	depends on USB_HIDINPUT && EXPERIMENTAL

WARNING: multiple messages have this Message-ID (diff)
From: Benjamin Herrenschmidt <benh@kernel.crashing.org>
To: Michael Hanselmann <linux-kernel@hansmi.ch>
Cc: dtor_core@ameritech.net, linux-kernel@vger.kernel.org,
	linux-input@atrey.karlin.mff.cuni.cz, linuxppc-dev@ozlabs.org,
	linux-kernel@killerfox.forkbomb.ch,
	Vojtech Pavlik <vojtech@suse.cz>
Subject: Re: [PATCH/RFC?] usb/input: Add support for fn key on Apple PowerBooks
Date: Thu, 12 Jan 2006 10:41:40 +1100	[thread overview]
Message-ID: <1137022900.5138.66.camel@localhost.localdomain> (raw)
In-Reply-To: <20060111232651.GI6617@hansmi.ch>

On Thu, 2006-01-12 at 00:26 +0100, Michael Hanselmann wrote:

>   * This is the global environment of the parser. This information is
> @@ -431,6 +433,14 @@ struct hid_device {							/* device repo
>  	void (*ff_exit)(struct hid_device*);                            /* Called by hid_exit_ff(hid) */
>  	int (*ff_event)(struct hid_device *hid, struct input_dev *input,
>  			unsigned int type, unsigned int code, int value);
> +
> +#ifdef CONFIG_USB_HIDINPUT_POWERBOOK
> +	/* We do this here because it's only relevant for the
> +	 * USB devices, not for all input_dev's.
> +	 */
> +	unsigned long pb_fn[NBITS(KEY_MAX)];
> +	unsigned long pb_numlock[NBITS(KEY_MAX)];
> +#endif
>  };

I don't understand the comment above ? You are adding this to all struct
hid_device ? There can be only one of those keyboards plugged at one
point in time, I don't think there is any problem having the above
static in the driver rather than in the hid_device structure.

  .../...

>  
> +	if ((hid->quirks & HID_QUIRK_POWERBOOK_HAS_FN) &&
> +	    hidinput_pb_event(hid, input, usage, value)) {
> +		return;
> +	}
> +

Dimitry might disagree but it's generally considered bad taste to have
{ and } for a single statement :)

>  	if (usage->hat_min < usage->hat_max || usage->hat_dir) {
>  		int hat_dir = usage->hat_dir;
>  		if (!hat_dir)
> diff -upr linux-2.6.15.orig/drivers/usb/input/Kconfig linux-2.6.15/drivers/usb/input/Kconfig
> --- linux-2.6.15.orig/drivers/usb/input/Kconfig	2006-01-11 23:59:40.000000000 +0100
> +++ linux-2.6.15/drivers/usb/input/Kconfig	2006-01-08 11:53:35.000000000 +0100
> @@ -37,6 +37,16 @@ config USB_HIDINPUT
>  
>  	  If unsure, say Y.
>  
> +config USB_HIDINPUT_POWERBOOK
> +	bool "Enable support for iBook/PowerBook special keys"
> +	default n
> +	depends on USB_HIDINPUT
> +	help
> +	  Say Y here if you want support for the special keys (Fn, Numlock) on
> +	  Apple iBooks and PowerBooks.
> +
> +	  If unsure, say N.
> +
>  config HID_FF
>  	bool "Force feedback support (EXPERIMENTAL)"
>  	depends on USB_HIDINPUT && EXPERIMENTAL


  reply	other threads:[~2006-01-11 23:42 UTC|newest]

Thread overview: 92+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-12-25 21:20 [PATCH/RFC?] usb/input: Add support for fn key on Apple PowerBooks Michael Hanselmann
2005-12-25 21:20 ` Michael Hanselmann
2005-12-25 21:57 ` Benjamin Herrenschmidt
2005-12-25 21:57   ` Benjamin Herrenschmidt
2005-12-26  4:04 ` Dmitry Torokhov
2005-12-26  4:04   ` Dmitry Torokhov
2005-12-26  5:46   ` Benjamin Herrenschmidt
2005-12-26  5:46     ` Benjamin Herrenschmidt
2006-01-11 21:07     ` Dmitry Torokhov
2006-01-11 21:07       ` Dmitry Torokhov
2006-01-11 21:20       ` Michael Hanselmann
2006-01-11 21:20         ` Michael Hanselmann
2006-01-11 21:34         ` Benjamin Herrenschmidt
2006-01-11 21:34           ` Benjamin Herrenschmidt
2006-01-11 21:38           ` Michael Hanselmann
2006-01-11 21:38             ` Michael Hanselmann
2006-01-11 21:41             ` Benjamin Herrenschmidt
2006-01-11 21:41               ` Benjamin Herrenschmidt
2006-01-11 21:43               ` Michael Hanselmann
2006-01-11 21:43                 ` Michael Hanselmann
2006-01-11 21:47                 ` Vojtech Pavlik
2006-01-11 21:47                   ` Vojtech Pavlik
2006-01-11 21:50                   ` Michael Hanselmann
2006-01-11 21:50                     ` Michael Hanselmann
2006-01-11 21:54                 ` Benjamin Herrenschmidt
2006-01-11 21:54                   ` Benjamin Herrenschmidt
2006-01-11 21:30       ` Benjamin Herrenschmidt
2006-01-11 21:30         ` Benjamin Herrenschmidt
2006-01-11 21:45         ` Vojtech Pavlik
2006-01-11 21:45           ` Vojtech Pavlik
2006-01-11 21:46         ` Michael Hanselmann
2006-01-11 21:46           ` Michael Hanselmann
2006-01-11 23:26       ` Michael Hanselmann
2006-01-11 23:26         ` Michael Hanselmann
2006-01-11 23:41         ` Benjamin Herrenschmidt [this message]
2006-01-11 23:41           ` Benjamin Herrenschmidt
2006-01-12  0:08           ` Michael Hanselmann
2006-01-12  0:08             ` Michael Hanselmann
2006-01-13  4:12             ` Dmitry Torokhov
2006-01-13  4:12               ` Dmitry Torokhov
2006-01-13  6:53               ` Michael Hanselmann
2006-01-13  6:53                 ` Michael Hanselmann
2006-01-13  7:47                 ` Vojtech Pavlik
2006-01-13  7:47                   ` Vojtech Pavlik
2006-01-13 22:02                   ` Michael Hanselmann
2006-01-13 22:02                     ` Michael Hanselmann
2006-01-14  4:58                     ` Dmitry Torokhov
2006-01-14  4:58                       ` Dmitry Torokhov
2006-01-14 10:41                       ` Vojtech Pavlik
2006-01-14 10:41                         ` Vojtech Pavlik
2006-01-14 10:57                       ` Michael Hanselmann
2006-01-14 10:57                         ` Michael Hanselmann
2006-01-13 21:55               ` Benjamin Herrenschmidt
2006-01-13 21:55                 ` Benjamin Herrenschmidt
2006-01-13 21:57                 ` Benjamin Herrenschmidt
2006-01-13 21:57                   ` Benjamin Herrenschmidt
2006-01-13 22:05                 ` Dmitry Torokhov
2006-01-13 22:05                   ` Dmitry Torokhov
2006-01-13 22:08                   ` Dmitry Torokhov
2006-01-13 22:08                     ` Dmitry Torokhov
2006-01-13 22:14                   ` Benjamin Herrenschmidt
2006-01-13 22:14                     ` Benjamin Herrenschmidt
2006-01-13 22:25                     ` Dmitry Torokhov
2006-01-13 22:25                       ` Dmitry Torokhov
2006-01-12  9:07           ` Vojtech Pavlik
2006-01-12  9:07             ` Vojtech Pavlik
2006-01-12 23:39             ` Michael Hanselmann
2006-01-12 23:39               ` Michael Hanselmann
2006-01-13  1:53               ` Benjamin Herrenschmidt
2006-01-13  1:53                 ` Benjamin Herrenschmidt
2005-12-31 23:51   ` Michael Hanselmann
2005-12-31 23:51     ` Michael Hanselmann
2006-01-01  1:33     ` Michael Hanselmann
2006-01-01  1:33       ` Michael Hanselmann
2006-01-01  2:56     ` Benjamin Herrenschmidt
2006-01-01  2:56       ` Benjamin Herrenschmidt
2006-01-01  3:03       ` Michael Hanselmann
2006-01-01  3:03         ` Michael Hanselmann
2006-01-01  6:09         ` Benjamin Herrenschmidt
2006-01-01  6:09           ` Benjamin Herrenschmidt
2006-01-02 22:46       ` Michael Hanselmann
2006-01-02 22:46         ` Michael Hanselmann
2006-01-03  2:29         ` Ben Collins
2006-01-03  2:29           ` Ben Collins
2006-01-03 19:14           ` Michael Hanselmann
2006-01-03 19:14             ` Michael Hanselmann
2006-01-03 19:18             ` Ben Collins
2006-01-03 19:18               ` Ben Collins
2006-01-03 19:25               ` Michael Hanselmann
2006-01-03 19:25                 ` Michael Hanselmann
2006-01-02 12:06     ` Stelian Pop
2006-01-02 12:06       ` Stelian Pop

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=1137022900.5138.66.camel@localhost.localdomain \
    --to=benh@kernel.crashing.org \
    --cc=dtor_core@ameritech.net \
    --cc=linux-input@atrey.karlin.mff.cuni.cz \
    --cc=linux-kernel@hansmi.ch \
    --cc=linux-kernel@killerfox.forkbomb.ch \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linuxppc-dev@ozlabs.org \
    --cc=vojtech@suse.cz \
    /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.