Touchscreen

From WebOS Internals
Revision as of 18:40, 15 January 2010 by Morphis (talk | contribs) (first information; andoird driver, chipset etc.)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Touchscreen

Cypress CY8MRLN chipset

They are using the CY8MRLN chipset from Cypress in the Palm Pre which is connected over SPI to the core. The CY8MRLN provides some quite interesting features already included in the driver provided by the kernel source:

  • Wake-on-touch (configurable from userspace through ioctl's; see include/linux/spi/cy8mrln.h)
  • firmware loading (the CY8MRLN provide's a [[1]])
  • touchscreen data is forwarded from kernel to usermode interface on /dev/touchscreen

dump data from touchscreen

There are some userland tools from palm in /usr/bin which helps you to dump the data ariving on /dev/touchscreen.

ts-lib implementation

For using the touchscreen with a different os like SHR or FSO we have to implement a plugin for ts-lib which decodes the data from the touchscreen ariving through /dev/touchscreen. Palm uses therefore there own implementaton /usr/bin/hidd which also provides plugin for other input system like the keyboard or the system buttons.

Current problem with the ts-lib plugin is that the structure of the data arriving on /dev/touchsreen is not known. There is another driver for a different touchscreen chipset for android available on the cypress homepage (http://www.cypress.com/?rID=40085) which includes decoding of data from the touchscreen chipset. I assume that the data from the chipset used in the Palm Pre is nearly the same.