From: Matt Sealey <matt@genesi-usa.com>
To: Segher Boessenkool <segher@kernel.crashing.org>
Cc: linuxppc-dev@ozlabs.org, Alan Curry <pacman@theworld.com>,
linux-kernel@vger.kernel.org
Subject: Re: [PATCH] powerpc: Pegasos keyboard detection
Date: Wed, 01 Aug 2007 08:25:21 +0100 [thread overview]
Message-ID: <46B03561.9090800@genesi-usa.com> (raw)
In-Reply-To: <3a538bd3f5db759abb55a661e6e94c7a@kernel.crashing.org>
Yeah please do a fixup for the boot wrapper.
Or, if you have trouble, go into the firmware and type "nvedit", add
these lines;
" /isa/8042" find-device
" 8042" encode-string device-type
(then ctrl-c to exit and nvstore to run it on next reboot. Try it without
the patch first, on the firmware console, just to be sure I got it right,
because I can't test it here)
You don't need to patch Linux at all. In fact for silly things like this
I would recommend against it :)
--
Matt Sealey <matt@genesi-usa.com>
Genesi, Manager, Developer Relations
Segher Boessenkool wrote:
>> As of 2.6.22 the kernel doesn't recognize the i8042 keyboard/mouse
>> controller
>> on the PegasosPPC. This is because of a feature/bug in the OF device
>> tree:
>> the "device_type" attribute is an empty string instead of "8042" as the
>> kernel expects. This patch (against 2.6.22.1) adds a secondary
>> detection
>> which looks for a device whose *name* is "8042" if there is no device
>> whose
>> *type* is "8042".
>>
>> Signed-off-by: Alan Curry <pacman@world.std.com>
>>
>> --- arch/powerpc/kernel/setup-common.c.orig 2007-07-24
>> 19:04:17.000000000 -0500
>> +++ arch/powerpc/kernel/setup-common.c 2007-07-24 19:06:36.000000000
>> -0500
>> @@ -487,6 +487,10 @@ int check_legacy_ioport(unsigned long ba
>> switch(base_port) {
>> case I8042_DATA_REG:
>> np = of_find_node_by_type(NULL, "8042");
>> + /* Pegasos has no device_type on its 8042 node, look for the
>> + * name instead */
>> + if (!np)
>> + np = of_find_node_by_name(NULL, "8042");
>
> [I know it already got merged, I'm behind on mail, but anyway...]
>
> Could board-specific quirks like this please always include a
> check for that board? Or, even better, do a fixup in the
> bootwrapper.
>
> In this case the workaround won't likely trigger on the wrong
> boards, but "just a little bit" more dangerous workarounds
> _will_, and the law of big numbers works against us...
>
>
> Segher
>
> _______________________________________________
> Linuxppc-dev mailing list
> Linuxppc-dev@ozlabs.org
> https://ozlabs.org/mailman/listinfo/linuxppc-dev
WARNING: multiple messages have this Message-ID (diff)
From: Matt Sealey <matt@genesi-usa.com>
To: Segher Boessenkool <segher@kernel.crashing.org>
Cc: Alan Curry <pacman@theworld.com>,
linuxppc-dev@ozlabs.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH] powerpc: Pegasos keyboard detection
Date: Wed, 01 Aug 2007 08:25:21 +0100 [thread overview]
Message-ID: <46B03561.9090800@genesi-usa.com> (raw)
In-Reply-To: <3a538bd3f5db759abb55a661e6e94c7a@kernel.crashing.org>
Yeah please do a fixup for the boot wrapper.
Or, if you have trouble, go into the firmware and type "nvedit", add
these lines;
" /isa/8042" find-device
" 8042" encode-string device-type
(then ctrl-c to exit and nvstore to run it on next reboot. Try it without
the patch first, on the firmware console, just to be sure I got it right,
because I can't test it here)
You don't need to patch Linux at all. In fact for silly things like this
I would recommend against it :)
--
Matt Sealey <matt@genesi-usa.com>
Genesi, Manager, Developer Relations
Segher Boessenkool wrote:
>> As of 2.6.22 the kernel doesn't recognize the i8042 keyboard/mouse
>> controller
>> on the PegasosPPC. This is because of a feature/bug in the OF device
>> tree:
>> the "device_type" attribute is an empty string instead of "8042" as the
>> kernel expects. This patch (against 2.6.22.1) adds a secondary
>> detection
>> which looks for a device whose *name* is "8042" if there is no device
>> whose
>> *type* is "8042".
>>
>> Signed-off-by: Alan Curry <pacman@world.std.com>
>>
>> --- arch/powerpc/kernel/setup-common.c.orig 2007-07-24
>> 19:04:17.000000000 -0500
>> +++ arch/powerpc/kernel/setup-common.c 2007-07-24 19:06:36.000000000
>> -0500
>> @@ -487,6 +487,10 @@ int check_legacy_ioport(unsigned long ba
>> switch(base_port) {
>> case I8042_DATA_REG:
>> np = of_find_node_by_type(NULL, "8042");
>> + /* Pegasos has no device_type on its 8042 node, look for the
>> + * name instead */
>> + if (!np)
>> + np = of_find_node_by_name(NULL, "8042");
>
> [I know it already got merged, I'm behind on mail, but anyway...]
>
> Could board-specific quirks like this please always include a
> check for that board? Or, even better, do a fixup in the
> bootwrapper.
>
> In this case the workaround won't likely trigger on the wrong
> boards, but "just a little bit" more dangerous workarounds
> _will_, and the law of big numbers works against us...
>
>
> Segher
>
> _______________________________________________
> Linuxppc-dev mailing list
> Linuxppc-dev@ozlabs.org
> https://ozlabs.org/mailman/listinfo/linuxppc-dev
next prev parent reply other threads:[~2007-08-01 7:24 UTC|newest]
Thread overview: 36+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-07-23 6:16 keyboard not found in 2.6.22.1 Alan Curry
2007-07-25 1:28 ` [PATCH] powerpc: Pegasos keyboard detection Alan Curry
2007-07-25 6:22 ` Benjamin Herrenschmidt
2007-07-25 6:22 ` Benjamin Herrenschmidt
2007-07-25 6:45 ` Alan Curry
2007-07-25 6:45 ` Alan Curry
2007-07-25 7:12 ` Benjamin Herrenschmidt
2007-07-25 7:12 ` Benjamin Herrenschmidt
2007-07-27 1:48 ` Andrew Morton
2007-07-27 1:48 ` Andrew Morton
2007-07-27 3:00 ` Benjamin Herrenschmidt
2007-07-27 3:00 ` Benjamin Herrenschmidt
2007-07-27 4:22 ` Andrew Morton
2007-07-27 4:22 ` Andrew Morton
2007-07-27 4:48 ` Alan Curry
2007-07-27 4:48 ` Alan Curry
2007-07-27 7:15 ` Benjamin Herrenschmidt
2007-07-27 7:15 ` Benjamin Herrenschmidt
2007-07-31 21:26 ` Segher Boessenkool
2007-08-01 7:25 ` Matt Sealey [this message]
2007-08-01 7:25 ` Matt Sealey
2007-08-01 7:28 ` Matt Sealey
2007-08-02 4:40 ` Alan Curry
2007-08-02 4:40 ` Alan Curry
2007-08-06 18:45 ` Segher Boessenkool
2007-08-06 18:45 ` Segher Boessenkool
2007-08-06 21:40 ` Matt Sealey
2007-08-06 21:40 ` Matt Sealey
2007-08-06 21:57 ` Segher Boessenkool
2007-08-07 16:21 ` Matt Sealey
2007-08-09 16:30 ` Segher Boessenkool
2007-08-09 16:46 ` Matt Sealey
2007-08-07 4:16 ` Alan Curry
2007-08-07 4:16 ` Alan Curry
2007-08-07 16:27 ` Matt Sealey
2007-08-07 16:27 ` Matt Sealey
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=46B03561.9090800@genesi-usa.com \
--to=matt@genesi-usa.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linuxppc-dev@ozlabs.org \
--cc=pacman@theworld.com \
--cc=segher@kernel.crashing.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.