Merge tag 'backlight-for-linus-4.8' of git://git.kernel.org/pub/scm/linux/kernel...
[deliverable/linux.git] / Documentation / devicetree / bindings / input / touchscreen / brcm,iproc-touchscreen.txt
CommitLineData
d5ae685f
JR
1* Broadcom's IPROC Touchscreen Controller
2
3Required properties:
4- compatible: must be "brcm,iproc-touchscreen"
74813ceb
RP
5- ts_syscon: handler of syscon node defining physical base
6 address of the controller and length of memory mapped region.
7 If this property is selected please make sure MFD_SYSCON config
8 is enabled in the defconfig file.
d5ae685f 9- clocks: The clock provided by the SOC to driver the tsc
2d077d9f 10- clock-names: name for the clock
d5ae685f 11- interrupts: The touchscreen controller's interrupt
74813ceb
RP
12- address-cells: Specify the number of u32 entries needed in child nodes.
13 Should set to 1.
14- size-cells: Specify number of u32 entries needed to specify child nodes size
15 in reg property. Should set to 1.
d5ae685f
JR
16
17Optional properties:
18- scanning_period: Time between scans. Each step is 1024 us. Valid 1-256.
19- debounce_timeout: Each step is 512 us. Valid 0-255
20- settling_timeout: The settling duration (in ms) is the amount of time
21 the tsc waits to allow the voltage to settle after
22 turning on the drivers in detection mode.
23 Valid values: 0-11
24 0 = 0.008 ms
25 1 = 0.01 ms
26 2 = 0.02 ms
27 3 = 0.04 ms
28 4 = 0.08 ms
29 5 = 0.16 ms
30 6 = 0.32 ms
31 7 = 0.64 ms
32 8 = 1.28 ms
33 9 = 2.56 ms
34 10 = 5.12 ms
35 11 = 10.24 ms
36- touch_timeout: The continuous number of scan periods in which touch is
37 not detected before the controller returns to idle state.
38 Valid values 0-255.
39- average_data: Number of data samples which are averaged before a final
40 data point is placed into the FIFO
41 Valid values 0-7
42 0 = 1 sample
43 1 = 2 samples
44 2 = 4 samples
45 3 = 8 samples
46 4 = 16 samples
47 5 = 32 samples
48 6 = 64 samples
49 7 = 128 samples
50- fifo_threshold: Interrupt is generated whenever the number of fifo
51 entries exceeds this value
52 Valid values 0-31
53- touchscreen-size-x: horizontal resolution of touchscreen (in pixels)
54- touchscreen-size-y: vertical resolution of touchscreen (in pixels)
55- touchscreen-fuzz-x: horizontal noise value of the absolute input
56 device (in pixels)
57- touchscreen-fuzz-y: vertical noise value of the absolute input
58 device (in pixels)
59- touchscreen-inverted-x: X axis is inverted (boolean)
60- touchscreen-inverted-y: Y axis is inverted (boolean)
61
74813ceb 62Example: An example of touchscreen node
d5ae685f 63
74813ceb
RP
64 ts_adc_syscon: ts_adc_syscon@180a6000 {
65 compatible = "brcm,iproc-ts-adc-syscon","syscon";
66 reg = <0x180a6000 0xc30>;
67 };
68
69 touchscreen: touchscreen@180A6000 {
d5ae685f
JR
70 compatible = "brcm,iproc-touchscreen";
71 #address-cells = <1>;
72 #size-cells = <1>;
74813ceb 73 ts_syscon = <&ts_adc_syscon>;
d5ae685f
JR
74 clocks = <&adc_clk>;
75 clock-names = "tsc_clk";
76 interrupts = <GIC_SPI 164 IRQ_TYPE_LEVEL_HIGH>;
77
78 scanning_period = <5>;
79 debounce_timeout = <40>;
80 settling_timeout = <7>;
81 touch_timeout = <10>;
82 average_data = <5>;
83 fifo_threshold = <1>;
84 /* Touchscreen is rotated 180 degrees. */
85 touchscreen-inverted-x;
86 touchscreen-inverted-y;
87 };
This page took 0.046891 seconds and 5 git commands to generate.