lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Tue, 31 Aug 2010 16:54:47 -0400
From:	Neil Leeder <nleeder@...eaurora.org>
To:	Dmitry Torokhov <dmitry.torokhov@...il.com>
CC:	"linux-input@...r.kernel.org" <linux-input@...r.kernel.org>,
	"linux-arm-msm@...r.kernel.org" <linux-arm-msm@...r.kernel.org>,
	"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
	Horace Fu <horace.fu@...ntatw.com>, Hsin.Wu@...ntatw.com,
	mcuos.com@...il.com
Subject: Re: [PATCH 0/1] input: keyboard: add qci keyboard driver

On 8/30/2010 5:55 PM, Dmitry Torokhov wrote:
> And still you are using only one GPIO in your driver? While WPCE775x
> does seem to have matrix keypad support I think that you are using one
> of the 3 PS/2 ports, like your touchpad does.

Hi Dmitry,

I can assure you that the keyboard is on the 8*18 GPIO matrix on the 
Nuvoton EC (only 8*16 being used in the current design). There certainly 
are 3 PS/2 ports on the EC, but in the board designs I have only one of 
those is used as a PS/2 port, and that is for the touchpad. The other 
two ports are muxed with GPIOs and the pins are being used as GPIOs for 
other functions, not PS/2 ports.

The firmware on the EC converts keypresses on the GPIO matrix to 
scancodes and sends them over I2C. The single GPIO used by the keyboard 
driver is an interrupt.

> The device is initialized with 0xf4; the device is supposed to respond
> with 0xfa; I wonder what scancodes the device reports... It smells
> strongly of PS/2.
>
> Also, it is not controller that supports PS/2 commands but rather the
> device itself so I am still hopeful that we could make use of the
> standard drivers.

We can speculate on the reasons that the firmware on the EC uses 0xF4 & 
0xFA for init and ack - my guess would be for a minimal amount of 
commonality with the PS/2 protocol - but it doesn't emulate the rest of 
the PS/2 protocol for the GPIO matrix device. I tried with atkbd. It 
issues reset, getid, setleds - all of which fail with no response from 
the EC. It only responds to F4.

The scancodes reported are whatever the firmware provides. A previous 
version of firmware had some non-standard values and the driver had to 
use a look-up table to convert them to something useful. With the change 
to the current keyboard layout Quanta changed the scancodes reported to 
match the KEY_* values in input.h, which is why there is no table in the 
current driver.

--
Neil
-- 
Sent by an employee of the Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ