#9453 BLOC Not Tri: Keyboard not present after boot
Zarro Boogs per Child
bugtracker at laptop.org
Wed Sep 23 01:49:38 EDT 2009
#9453: Keyboard not present after boot
-------------------------------------------+--------------------------------
Reporter: wad | Owner: rsmith
Type: defect | Status: new
Priority: blocker | Milestone: Not Triaged
Component: embedded controller | Version: not specified
Resolution: | Keywords:
Next_action: never set | Verified: 0
Deployment_affected: | Blockedby:
Blocking: |
-------------------------------------------+--------------------------------
Comment(by rsmith):
Replying to [comment:4 wad]:
> I've seen it on three different laptops, with an approximate frequency
of one in twenty bots. The one laptop that showed a much higher frequency
turned out to have a faulty keyboard controller or wiring.
Attempting to reproduce this on my A2's I spent a fair amount of time
power cycling using the power button and watching the EC serial port.
Unable to reproduce.
I got sick of pressing the power button and added a ec-cmd66 command 0xd7
that duplicates a power off/power on via the power button. I didn't want
to use 'reboot' because that does a EC watchdog reset and thus resets the
EC every time.
I then modified /boot/olpc.fth such so it delayed 500 ms and then issued
the d7 command. Ran that and logged the EC output. On a machine with a
new touchpad the EC will show "EnE KBC" when openfirmware tells the EC to
switch keymapping.
I let this run and then came back later. I then processed the log file.
The EC outputs a "System Booted" message when its happy all the power
rails are up and PCI reset is deasserted. So I did a grep and a wc -l for
the strings "System Booted" and then "EnE KBC" if the new keyboard was
detected properly every time then these numbers should match. After over
400 cycles they matched perfectly.
I then put a heavy object over the Enter key and continued to let the test
run. I let that test run till over 1000 cycles had happened and they
still matched.
While that was running I set up a 2nd test on my other A2 that has a ALPS
controller in it. There is no message output for an ALPS keyboard so
instead I modified olpc.fth so that it looks for a 0x0d from the keyboard
and if its not 0x0d then it aborts otherwise it issues the d7 powercyle
command. If there is not a key in the buffer then the the 'key' word will
hang so if its not the correct key or if there is no key then the test
would stop.
This test ran for over an hour without fail. I don't know how many cycles
but way more than 20.
Then I modified the keycheck test so that rather than a d7 reboot it did a
'reboot' cmd which will cause the EC to reset. This test also ran for
many, many cycles without a problem.
I'm giving up on trying to make this happen on my A2's. Next I'll load
the proper connectors on one of the B2's wad brought back and re-run the
tests.
--
Ticket URL: <http://dev.laptop.org/ticket/9453#comment:6>
One Laptop Per Child <http://laptop.org/>
OLPC bug tracking system
More information about the Bugs
mailing list