Input: pixcir_i2c_ts: Add register definitions

Add power and interrupt register definitions.

Signed-off-by: Roger Quadros <rogerq@ti.com>
Input: pixcir_i2c_ts: Initialize interrupt mode and power mode

Introduce helper functions to configure power and interrupt
registers. Default to SLEEP mode on probe. Device will be
put into ACTIVE mode only when device is opened.

Configure interrupt mode and polarity on start up.

Signed-off-by: Roger Quadros <rogerq@ti.com>
Input: pixcir_i2c_ts: Use devres managed resource allocations

Use devm_() and friends for allocating memory, input device
and IRQ.

Signed-off-by: Roger Quadros <rogerq@ti.com>
Input: pixcir_i2c_ts: Get rid of pdata->attb_read_val()

Get rid of the attb_read_val() platform hook. Instead,
read the ATTB gpio directly from the driver.

Fail if valid ATTB gpio is not provided by patform data.

Signed-off-by: Roger Quadros <rogerq@ti.com>
Input: pixcir_i2c_ts: Add chip specific data structure

This is the data that differentiates different pixcir
chips.

Signed-off-by: Roger Quadros <rogerq@ti.com>
Input: pixcir_i2c_ts: Implement Type B Multi Touch reporting

Some pixcir controllers e.g. tangoC family report finger IDs with
the co-ordinates and are more suitable for Type-B MT protocol.

Signed-off-by: Roger Quadros <rogerq@ti.com>
Input: pixcir_i2c_ts: Add support for TangoC family

Signed-off-by: Roger Quadros <rogerq@ti.com>