[Trac #242] EC code in v20 does not work properly

Zarro Boogs per Child bugtracker at laptop.org
Sat Oct 28 21:05:19 EDT 2006


#242: EC code in v20 does not work properly
---------------------+------------------------------------------------------
 Reporter:  jg       |       Owner:  ray.tseng at quantatw.com
     Type:  defect   |      Status:  new                   
 Priority:  blocker  |   Milestone:  BTest-1               
Component:  distro   |    Keywords:                        
---------------------+------------------------------------------------------
 With the v20 EC code we are still hitting some PS/2 port issues.

 One appears to be a fried port, so it can hopefully be ignored for now.

 Another is intermittant, I still can't find it.

 The third is definite, and seems to be caused by the EC capturing events
 to do multiplexing.

 Specificly, the first time i8042 in the linux kernel attempts to detect
 the PS/2 ports it is unable to tell that the AUX port even exists.

 This is completely cleared up by setting the FC83h register in the EC to
 FFh, as we had in EC v19.  This also causes the multiplexer to go away.

 At this point, as far as I've been able to tell from all of the problems
 we have seen lately, the hardware is perfectly capiable of handling the
 two PS/2 ports itself with no problem at all, and every time we've had
 things set to have the EC code handle it we've had problems that go away
 when we tell the hardware to cope itself.

 We're out of time to keep messing with the EC code here, the hardware
 has been tested to function properly with that register set to FF, and
 we gain nothing at all from the multiplexer, due to the hardware
 involved.

 So, unless someone at Quanta understands this issue much better, and can
 explain why the EC code needs to handle this, I believe that we need to
 disable that handling and put it back in the hands of the hardware for
 the B1 build.

 Below is a log of what happens when we try and fail to probe the AUX
 port with the registers set to allow the EC code to handle the various
 commands.

 Zephaniah E. Hull.

 {{{
 PM: Adding info for platform:i8042
 drivers/input/serio/i8042.c: 20 -> i8042 (command) [1]
 drivers/input/serio/i8042.c: 70 <- i8042 (return) [1]
 drivers/input/serio/i8042.c: 60 -> i8042 (command) [1]
 drivers/input/serio/i8042.c: 70 -> i8042 (parameter) [1]
 drivers/input/serio/i8042.c: d3 -> i8042 (command) [1]
 drivers/input/serio/i8042.c: 5a -> i8042 (parameter) [1]
 drivers/input/serio/i8042.c:      -- i8042 (auxerr) [1]
 drivers/input/serio/i8042.c: a9 -> i8042 (command) [1]
 drivers/input/serio/i8042.c: aa <- i8042 (return) [1]
 drivers/input/serio/i8042.c: 60 -> i8042 (command) [1]
 drivers/input/serio/i8042.c: 61 -> i8042 (parameter) [1]
 serio: i8042 KBD port at 0x60,0x64 irq 1
 PM: Adding info for serio:serio0
 drivers/input/serio/i8042.c: 00 <- i8042 (interrupt, 0, 1) [2]
 drivers/input/serio/i8042.c: f2 -> i8042 (kbd-data) [20]
 drivers/input/serio/i8042.c: ed -> i8042 (kbd-data) [40]

 }}}

-- 
Ticket URL: <http://dev.laptop.org/ticket/242>
One Laptop Per Child <http://laptop.org/>



More information about the Bugs mailing list