diff options
| author | Jonathan Richardson <jonathar@broadcom.com> | 2015-03-22 00:04:59 -0400 |
|---|---|---|
| committer | Dmitry Torokhov <dmitry.torokhov@gmail.com> | 2015-03-23 14:04:48 -0400 |
| commit | d5ae685f15307c85c6267c5a2be9ba3d70eb3297 (patch) | |
| tree | 416649cd967241045d14bab40121ad9d7e51a5c8 /Documentation/devicetree/bindings/input | |
| parent | 188933ac139a6f8ab06cad369bd0200af947b00d (diff) | |
Input: add Broadcom iProc touchscreen driver
Add initial version of the Broadcom touchscreen driver.
Reviewed-by: Ray Jui <rjui@broadcom.com>
Reviewed-by: Scott Branden <sbranden@broadcom.com>
Tested-by: Scott Branden <sbranden@broadcom.com>
Signed-off-by: Jonathan Richardson <jonathar@broadcom.com>
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Diffstat (limited to 'Documentation/devicetree/bindings/input')
| -rw-r--r-- | Documentation/devicetree/bindings/input/touchscreen/brcm,iproc-touchscreen.txt | 76 |
1 files changed, 76 insertions, 0 deletions
diff --git a/Documentation/devicetree/bindings/input/touchscreen/brcm,iproc-touchscreen.txt b/Documentation/devicetree/bindings/input/touchscreen/brcm,iproc-touchscreen.txt new file mode 100644 index 000000000000..34e3382a0659 --- /dev/null +++ b/Documentation/devicetree/bindings/input/touchscreen/brcm,iproc-touchscreen.txt | |||
| @@ -0,0 +1,76 @@ | |||
| 1 | * Broadcom's IPROC Touchscreen Controller | ||
| 2 | |||
| 3 | Required properties: | ||
| 4 | - compatible: must be "brcm,iproc-touchscreen" | ||
| 5 | - reg: physical base address of the controller and length of memory mapped | ||
| 6 | region. | ||
| 7 | - clocks: The clock provided by the SOC to driver the tsc | ||
| 8 | - clock-name: name for the clock | ||
| 9 | - interrupts: The touchscreen controller's interrupt | ||
| 10 | |||
| 11 | Optional properties: | ||
| 12 | - scanning_period: Time between scans. Each step is 1024 us. Valid 1-256. | ||
| 13 | - debounce_timeout: Each step is 512 us. Valid 0-255 | ||
| 14 | - settling_timeout: The settling duration (in ms) is the amount of time | ||
| 15 | the tsc waits to allow the voltage to settle after | ||
| 16 | turning on the drivers in detection mode. | ||
| 17 | Valid values: 0-11 | ||
| 18 | 0 = 0.008 ms | ||
| 19 | 1 = 0.01 ms | ||
| 20 | 2 = 0.02 ms | ||
| 21 | 3 = 0.04 ms | ||
| 22 | 4 = 0.08 ms | ||
| 23 | 5 = 0.16 ms | ||
| 24 | 6 = 0.32 ms | ||
| 25 | 7 = 0.64 ms | ||
| 26 | 8 = 1.28 ms | ||
| 27 | 9 = 2.56 ms | ||
| 28 | 10 = 5.12 ms | ||
| 29 | 11 = 10.24 ms | ||
| 30 | - touch_timeout: The continuous number of scan periods in which touch is | ||
| 31 | not detected before the controller returns to idle state. | ||
| 32 | Valid values 0-255. | ||
| 33 | - average_data: Number of data samples which are averaged before a final | ||
| 34 | data point is placed into the FIFO | ||
| 35 | Valid values 0-7 | ||
| 36 | 0 = 1 sample | ||
| 37 | 1 = 2 samples | ||
| 38 | 2 = 4 samples | ||
| 39 | 3 = 8 samples | ||
| 40 | 4 = 16 samples | ||
| 41 | 5 = 32 samples | ||
| 42 | 6 = 64 samples | ||
| 43 | 7 = 128 samples | ||
| 44 | - fifo_threshold: Interrupt is generated whenever the number of fifo | ||
| 45 | entries exceeds this value | ||
| 46 | Valid values 0-31 | ||
| 47 | - touchscreen-size-x: horizontal resolution of touchscreen (in pixels) | ||
| 48 | - touchscreen-size-y: vertical resolution of touchscreen (in pixels) | ||
| 49 | - touchscreen-fuzz-x: horizontal noise value of the absolute input | ||
| 50 | device (in pixels) | ||
| 51 | - touchscreen-fuzz-y: vertical noise value of the absolute input | ||
| 52 | device (in pixels) | ||
| 53 | - touchscreen-inverted-x: X axis is inverted (boolean) | ||
| 54 | - touchscreen-inverted-y: Y axis is inverted (boolean) | ||
| 55 | |||
| 56 | Example: | ||
| 57 | |||
| 58 | touchscreen: tsc@0x180A6000 { | ||
| 59 | compatible = "brcm,iproc-touchscreen"; | ||
| 60 | #address-cells = <1>; | ||
| 61 | #size-cells = <1>; | ||
| 62 | reg = <0x180A6000 0x40>; | ||
| 63 | clocks = <&adc_clk>; | ||
| 64 | clock-names = "tsc_clk"; | ||
| 65 | interrupts = <GIC_SPI 164 IRQ_TYPE_LEVEL_HIGH>; | ||
| 66 | |||
| 67 | scanning_period = <5>; | ||
| 68 | debounce_timeout = <40>; | ||
| 69 | settling_timeout = <7>; | ||
| 70 | touch_timeout = <10>; | ||
| 71 | average_data = <5>; | ||
| 72 | fifo_threshold = <1>; | ||
| 73 | /* Touchscreen is rotated 180 degrees. */ | ||
| 74 | touchscreen-inverted-x; | ||
| 75 | touchscreen-inverted-y; | ||
| 76 | }; | ||
