From e09b41010ba33a20a87472ee821fa407a5b8da36 Mon Sep 17 00:00:00 2001 From: José Pekkarinen Date: Mon, 11 Apr 2016 10:41:07 +0300 Subject: These changes are the raw update to linux-4.4.6-rt14. Kernel sources are taken from kernel.org, and rt patch from the rt wiki download page. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit During the rebasing, the following patch collided: Force tick interrupt and get rid of softirq magic(I70131fb85). Collisions have been removed because its logic was found on the source already. Change-Id: I7f57a4081d9deaa0d9ccfc41a6c8daccdee3b769 Signed-off-by: José Pekkarinen --- .../devicetree/bindings/input/ads7846.txt | 5 ++- .../devicetree/bindings/input/cap11xx.txt | 19 ++++++++++ .../devicetree/bindings/input/cypress,cyapa.txt | 44 ++++++++++++++++++++++ .../devicetree/bindings/input/da9062-onkey.txt | 32 ++++++++++++++++ .../devicetree/bindings/input/elants_i2c.txt | 3 ++ .../devicetree/bindings/input/gpio-keys-polled.txt | 12 +++++- .../devicetree/bindings/input/gpio-keys.txt | 3 +- .../bindings/input/gpio-matrix-keypad.txt | 3 +- .../devicetree/bindings/input/hid-over-i2c.txt | 28 ++++++++++++++ .../bindings/input/nvidia,tegra20-kbc.txt | 3 +- .../bindings/input/qcom,pm8xxx-keypad.txt | 3 +- .../devicetree/bindings/input/rotary-encoder.txt | 10 +++++ .../devicetree/bindings/input/samsung-keypad.txt | 7 +++- .../devicetree/bindings/input/snvs-pwrkey.txt | 1 + .../devicetree/bindings/input/sun4i-lradc-keys.txt | 2 +- .../devicetree/bindings/input/ti,drv2665.txt | 17 +++++++++ .../bindings/input/touchscreen/colibri-vf50-ts.txt | 36 ++++++++++++++++++ .../bindings/input/touchscreen/edt-ft5x06.txt | 8 ++-- .../input/touchscreen/focaltech-ft6236.txt | 35 +++++++++++++++++ .../bindings/input/touchscreen/imx6ul_tsc.txt | 36 ++++++++++++++++++ .../bindings/input/touchscreen/pixcir_i2c_ts.txt | 3 ++ .../bindings/input/touchscreen/ti-tsc-adc.txt | 24 ++++++++++++ .../bindings/input/touchscreen/tsc2005.txt | 34 ++++++++++++++--- .../bindings/input/touchscreen/zforce_ts.txt | 8 ++-- 24 files changed, 352 insertions(+), 24 deletions(-) create mode 100644 kernel/Documentation/devicetree/bindings/input/cypress,cyapa.txt create mode 100644 kernel/Documentation/devicetree/bindings/input/da9062-onkey.txt create mode 100644 kernel/Documentation/devicetree/bindings/input/hid-over-i2c.txt create mode 100644 kernel/Documentation/devicetree/bindings/input/snvs-pwrkey.txt create mode 100644 kernel/Documentation/devicetree/bindings/input/ti,drv2665.txt create mode 100644 kernel/Documentation/devicetree/bindings/input/touchscreen/colibri-vf50-ts.txt create mode 100644 kernel/Documentation/devicetree/bindings/input/touchscreen/focaltech-ft6236.txt create mode 100644 kernel/Documentation/devicetree/bindings/input/touchscreen/imx6ul_tsc.txt (limited to 'kernel/Documentation/devicetree/bindings/input') diff --git a/kernel/Documentation/devicetree/bindings/input/ads7846.txt b/kernel/Documentation/devicetree/bindings/input/ads7846.txt index 5f7619c22..33a1638b6 100644 --- a/kernel/Documentation/devicetree/bindings/input/ads7846.txt +++ b/kernel/Documentation/devicetree/bindings/input/ads7846.txt @@ -64,7 +64,8 @@ Optional properties: pendown-gpio (u32). pendown-gpio GPIO handle describing the pin the !PENIRQ line is connected to. - linux,wakeup use any event on touchscreen as wakeup event. + wakeup-source use any event on touchscreen as wakeup event. + (Legacy property support: "linux,wakeup") Example for a TSC2046 chip connected to an McSPI controller of an OMAP SoC:: @@ -86,6 +87,6 @@ Example for a TSC2046 chip connected to an McSPI controller of an OMAP SoC:: ti,x-plate-ohms = /bits/ 16 <40>; ti,pressure-max = /bits/ 16 <255>; - linux,wakeup; + wakeup-source; }; }; diff --git a/kernel/Documentation/devicetree/bindings/input/cap11xx.txt b/kernel/Documentation/devicetree/bindings/input/cap11xx.txt index 7d0a30097..8c67a0b50 100644 --- a/kernel/Documentation/devicetree/bindings/input/cap11xx.txt +++ b/kernel/Documentation/devicetree/bindings/input/cap11xx.txt @@ -55,5 +55,24 @@ i2c_controller { <105>, /* KEY_LEFT */ <109>, /* KEY_PAGEDOWN */ <104>; /* KEY_PAGEUP */ + + #address-cells = <1>; + #size-cells = <0>; + + usr@0 { + label = "cap11xx:green:usr0"; + reg = <0>; + }; + + usr@1 { + label = "cap11xx:green:usr1"; + reg = <1>; + }; + + alive@2 { + label = "cap11xx:green:alive"; + reg = <2>; + linux,default_trigger = "heartbeat"; + }; }; } diff --git a/kernel/Documentation/devicetree/bindings/input/cypress,cyapa.txt b/kernel/Documentation/devicetree/bindings/input/cypress,cyapa.txt new file mode 100644 index 000000000..8d91ba9ff --- /dev/null +++ b/kernel/Documentation/devicetree/bindings/input/cypress,cyapa.txt @@ -0,0 +1,44 @@ +Cypress I2C Touchpad + +Required properties: +- compatible: must be "cypress,cyapa". +- reg: I2C address of the chip. +- interrupt-parent: a phandle for the interrupt controller (see interrupt + binding[0]). +- interrupts: interrupt to which the chip is connected (see interrupt + binding[0]). + +Optional properties: +- wakeup-source: touchpad can be used as a wakeup source. +- pinctrl-names: should be "default" (see pinctrl binding [1]). +- pinctrl-0: a phandle pointing to the pin settings for the device (see + pinctrl binding [1]). +- vcc-supply: a phandle for the regulator supplying 3.3V power. + +[0]: Documentation/devicetree/bindings/interrupt-controller/interrupts.txt +[1]: Documentation/devicetree/bindings/pinctrl/pinctrl-bindings.txt + +Example: + &i2c0 { + /* ... */ + + /* Cypress Gen3 touchpad */ + touchpad@67 { + compatible = "cypress,cyapa"; + reg = <0x67>; + interrupt-parent = <&gpio>; + interrupts = <2 IRQ_TYPE_EDGE_FALLING>; /* GPIO 2 */ + wakeup-source; + }; + + /* Cypress Gen5 and later touchpad */ + touchpad@24 { + compatible = "cypress,cyapa"; + reg = <0x24>; + interrupt-parent = <&gpio>; + interrupts = <2 IRQ_TYPE_EDGE_FALLING>; /* GPIO 2 */ + wakeup-source; + }; + + /* ... */ + }; diff --git a/kernel/Documentation/devicetree/bindings/input/da9062-onkey.txt b/kernel/Documentation/devicetree/bindings/input/da9062-onkey.txt new file mode 100644 index 000000000..ab0e0488f --- /dev/null +++ b/kernel/Documentation/devicetree/bindings/input/da9062-onkey.txt @@ -0,0 +1,32 @@ +* Dialog DA9062/63 OnKey Module + +This module is part of the DA9062/DA9063. For more details about entire +chips see Documentation/devicetree/bindings/mfd/da9062.txt and +Documentation/devicetree/bindings/mfd/da9063.txt + +This module provides KEY_POWER, KEY_SLEEP and events. + +Required properties: + +- compatible: should be one of: + dlg,da9062-onkey + dlg,da9063-onkey + +Optional properties: + + - dlg,disable-key-power : Disable power-down using a long key-press. If this + entry exists the OnKey driver will remove support for the KEY_POWER key + press. If this entry does not exist then by default the key-press + triggered power down is enabled and the OnKey will support both KEY_POWER + and KEY_SLEEP. + +Example: + + pmic0: da9062@58 { + + onkey { + compatible = "dlg,da9063-onkey"; + dlg,disable-key-power; + }; + + }; diff --git a/kernel/Documentation/devicetree/bindings/input/elants_i2c.txt b/kernel/Documentation/devicetree/bindings/input/elants_i2c.txt index a765232e6..8a71038f3 100644 --- a/kernel/Documentation/devicetree/bindings/input/elants_i2c.txt +++ b/kernel/Documentation/devicetree/bindings/input/elants_i2c.txt @@ -13,6 +13,9 @@ Optional properties: - pinctrl-names: should be "default" (see pinctrl binding [1]). - pinctrl-0: a phandle pointing to the pin settings for the device (see pinctrl binding [1]). +- reset-gpios: reset gpio the chip is connected to. +- vcc33-supply: a phandle for the regulator supplying 3.3V power. +- vccio-supply: a phandle for the regulator supplying IO power. [0]: Documentation/devicetree/bindings/interrupt-controller/interrupts.txt [1]: Documentation/devicetree/bindings/pinctrl/pinctrl-bindings.txt diff --git a/kernel/Documentation/devicetree/bindings/input/gpio-keys-polled.txt b/kernel/Documentation/devicetree/bindings/input/gpio-keys-polled.txt index 313abefa3..95d0fb11a 100644 --- a/kernel/Documentation/devicetree/bindings/input/gpio-keys-polled.txt +++ b/kernel/Documentation/devicetree/bindings/input/gpio-keys-polled.txt @@ -13,14 +13,22 @@ Subnode properties: - gpios: OF device-tree gpio specification. - label: Descriptive name of the key. - - linux,code: Keycode to emit. + - linux,code: Key / Axis code to emit. Optional subnode-properties: - linux,input-type: Specify event type this button/key generates. If not specified defaults to <1> == EV_KEY. + - linux,input-value: If linux,input-type is EV_ABS or EV_REL then this + value is sent for events this button generates when pressed. + EV_ABS/EV_REL axis will generate an event with a value of 0 when + all buttons with linux,input-type == type and linux,code == axis + are released. This value is interpreted as a signed 32 bit value, + e.g. to make a button generate a value of -1 use: + linux,input-value = <0xffffffff>; /* -1 */ - debounce-interval: Debouncing interval time in milliseconds. If not specified defaults to 5. - - gpio-key,wakeup: Boolean, button can wake-up the system. + - wakeup-source: Boolean, button can wake-up the system. + (Legacy property supported: "gpio-key,wakeup") Example nodes: diff --git a/kernel/Documentation/devicetree/bindings/input/gpio-keys.txt b/kernel/Documentation/devicetree/bindings/input/gpio-keys.txt index 44b705767..cf1333d1d 100644 --- a/kernel/Documentation/devicetree/bindings/input/gpio-keys.txt +++ b/kernel/Documentation/devicetree/bindings/input/gpio-keys.txt @@ -23,7 +23,8 @@ Optional subnode-properties: If not specified defaults to <1> == EV_KEY. - debounce-interval: Debouncing interval time in milliseconds. If not specified defaults to 5. - - gpio-key,wakeup: Boolean, button can wake-up the system. + - wakeup-source: Boolean, button can wake-up the system. + (Legacy property supported: "gpio-key,wakeup") - linux,can-disable: Boolean, indicates that button is connected to dedicated (not shared) interrupt which can be disabled to suppress events from the button. diff --git a/kernel/Documentation/devicetree/bindings/input/gpio-matrix-keypad.txt b/kernel/Documentation/devicetree/bindings/input/gpio-matrix-keypad.txt index ead641c65..d0ea09ba2 100644 --- a/kernel/Documentation/devicetree/bindings/input/gpio-matrix-keypad.txt +++ b/kernel/Documentation/devicetree/bindings/input/gpio-matrix-keypad.txt @@ -19,7 +19,8 @@ Required Properties: Optional Properties: - linux,no-autorepeat: do no enable autorepeat feature. -- linux,wakeup: use any event on keypad as wakeup event. +- wakeup-source: use any event on keypad as wakeup event. + (Legacy property supported: "linux,wakeup") - debounce-delay-ms: debounce interval in milliseconds - col-scan-delay-us: delay, measured in microseconds, that is needed before we can scan keypad after activating column gpio diff --git a/kernel/Documentation/devicetree/bindings/input/hid-over-i2c.txt b/kernel/Documentation/devicetree/bindings/input/hid-over-i2c.txt new file mode 100644 index 000000000..488edcb26 --- /dev/null +++ b/kernel/Documentation/devicetree/bindings/input/hid-over-i2c.txt @@ -0,0 +1,28 @@ +* HID over I2C Device-Tree bindings + +HID over I2C provides support for various Human Interface Devices over the +I2C bus. These devices can be for example touchpads, keyboards, touch screens +or sensors. + +The specification has been written by Microsoft and is currently available here: +http://msdn.microsoft.com/en-us/library/windows/hardware/hh852380.aspx + +If this binding is used, the kernel module i2c-hid will handle the communication +with the device and the generic hid core layer will handle the protocol. + +Required properties: +- compatible: must be "hid-over-i2c" +- reg: i2c slave address +- hid-descr-addr: HID descriptor address +- interrupt-parent: the phandle for the interrupt controller +- interrupts: interrupt line + +Example: + + i2c-hid-dev@2c { + compatible = "hid-over-i2c"; + reg = <0x2c>; + hid-descr-addr = <0x0020>; + interrupt-parent = <&gpx3>; + interrupts = <3 2>; + }; diff --git a/kernel/Documentation/devicetree/bindings/input/nvidia,tegra20-kbc.txt b/kernel/Documentation/devicetree/bindings/input/nvidia,tegra20-kbc.txt index 0382b8bd6..1faa7292e 100644 --- a/kernel/Documentation/devicetree/bindings/input/nvidia,tegra20-kbc.txt +++ b/kernel/Documentation/devicetree/bindings/input/nvidia,tegra20-kbc.txt @@ -29,7 +29,8 @@ matrix-keyboard bindings: - nvidia,debounce-delay-ms: delay in milliseconds per row scan for debouncing - nvidia,repeat-delay-ms: delay in milliseconds before repeat starts - nvidia,ghost-filter: enable ghost filtering for this device -- nvidia,wakeup-source: configure keyboard as a wakeup source for suspend/resume +- wakeup-source: configure keyboard as a wakeup source for suspend/resume + (Legacy property supported: "nvidia,wakeup-source") Example: diff --git a/kernel/Documentation/devicetree/bindings/input/qcom,pm8xxx-keypad.txt b/kernel/Documentation/devicetree/bindings/input/qcom,pm8xxx-keypad.txt index 7d8cb9283..4a9dc6ba9 100644 --- a/kernel/Documentation/devicetree/bindings/input/qcom,pm8xxx-keypad.txt +++ b/kernel/Documentation/devicetree/bindings/input/qcom,pm8xxx-keypad.txt @@ -33,10 +33,11 @@ PROPERTIES Value type: Definition: don't enable autorepeat feature. -- linux,keypad-wakeup: +- wakeup-source: Usage: optional Value type: Definition: use any event on keypad as wakeup event. + (Legacy property supported: "linux,keypad-wakeup") - keypad,num-rows: Usage: required diff --git a/kernel/Documentation/devicetree/bindings/input/rotary-encoder.txt b/kernel/Documentation/devicetree/bindings/input/rotary-encoder.txt index 331549593..de99cbbbf 100644 --- a/kernel/Documentation/devicetree/bindings/input/rotary-encoder.txt +++ b/kernel/Documentation/devicetree/bindings/input/rotary-encoder.txt @@ -14,7 +14,17 @@ Optional properties: device, hence no steps need to be passed. - rotary-encoder,rollover: Automatic rollove when the rotary value becomes greater than the specified steps or smaller than 0. For absolute axis only. +- rotary-encoder,steps-per-period: Number of steps (stable states) per period. + The values have the following meaning: + 1: Full-period mode (default) + 2: Half-period mode + 4: Quarter-period mode +- wakeup-source: Boolean, rotary encoder can wake up the system. + +Deprecated properties: - rotary-encoder,half-period: Makes the driver work on half-period mode. + This property is deprecated. Instead, a 'steps-per-period ' value should + be used, such as "rotary-encoder,steps-per-period = <2>". See Documentation/input/rotary-encoder.txt for more information. diff --git a/kernel/Documentation/devicetree/bindings/input/samsung-keypad.txt b/kernel/Documentation/devicetree/bindings/input/samsung-keypad.txt index 942d071ba..5305e74e5 100644 --- a/kernel/Documentation/devicetree/bindings/input/samsung-keypad.txt +++ b/kernel/Documentation/devicetree/bindings/input/samsung-keypad.txt @@ -36,9 +36,12 @@ Required Board Specific Properties: - pinctrl-0: Should specify pin control groups used for this controller. - pinctrl-names: Should contain only one value - "default". +Optional Properties: +- wakeup-source: use any event on keypad as wakeup event. + (Legacy property supported: "linux,input-wakeup") + Optional Properties specific to linux: - linux,keypad-no-autorepeat: do no enable autorepeat feature. -- linux,keypad-wakeup: use any event on keypad as wakeup event. Example: @@ -49,7 +52,7 @@ Example: samsung,keypad-num-rows = <2>; samsung,keypad-num-columns = <8>; linux,input-no-autorepeat; - linux,input-wakeup; + wakeup-source; pinctrl-names = "default"; pinctrl-0 = <&keypad_rows &keypad_columns>; diff --git a/kernel/Documentation/devicetree/bindings/input/snvs-pwrkey.txt b/kernel/Documentation/devicetree/bindings/input/snvs-pwrkey.txt new file mode 100644 index 000000000..70c142503 --- /dev/null +++ b/kernel/Documentation/devicetree/bindings/input/snvs-pwrkey.txt @@ -0,0 +1 @@ +See Documentation/devicetree/bindings/crypto/fsl-sec4.txt diff --git a/kernel/Documentation/devicetree/bindings/input/sun4i-lradc-keys.txt b/kernel/Documentation/devicetree/bindings/input/sun4i-lradc-keys.txt index b9c32f6fd..4357e498e 100644 --- a/kernel/Documentation/devicetree/bindings/input/sun4i-lradc-keys.txt +++ b/kernel/Documentation/devicetree/bindings/input/sun4i-lradc-keys.txt @@ -12,7 +12,7 @@ Each key is represented as a sub-node of "allwinner,sun4i-a10-lradc-keys": Required subnode-properties: - label: Descriptive name of the key. - linux,code: Keycode to emit. - - channel: Channel this key is attached to, mut be 0 or 1. + - channel: Channel this key is attached to, must be 0 or 1. - voltage: Voltage in µV at lradc input when this key is pressed. Example: diff --git a/kernel/Documentation/devicetree/bindings/input/ti,drv2665.txt b/kernel/Documentation/devicetree/bindings/input/ti,drv2665.txt new file mode 100644 index 000000000..1ba97ac04 --- /dev/null +++ b/kernel/Documentation/devicetree/bindings/input/ti,drv2665.txt @@ -0,0 +1,17 @@ +* Texas Instruments - drv2665 Haptics driver + +Required properties: + - compatible - "ti,drv2665" - DRV2665 + - reg - I2C slave address + - vbat-supply - Required supply regulator + +Example: + +haptics: haptics@59 { + compatible = "ti,drv2665"; + reg = <0x59>; + vbat-supply = <&vbat>; +}; + +For more product information please see the link below: +http://www.ti.com/product/drv2665 diff --git a/kernel/Documentation/devicetree/bindings/input/touchscreen/colibri-vf50-ts.txt b/kernel/Documentation/devicetree/bindings/input/touchscreen/colibri-vf50-ts.txt new file mode 100644 index 000000000..9d9e930f3 --- /dev/null +++ b/kernel/Documentation/devicetree/bindings/input/touchscreen/colibri-vf50-ts.txt @@ -0,0 +1,36 @@ +* Toradex Colibri VF50 Touchscreen driver + +Required Properties: +- compatible must be toradex,vf50-touchscreen +- io-channels: adc channels being used by the Colibri VF50 module +- xp-gpios: FET gate driver for input of X+ +- xm-gpios: FET gate driver for input of X- +- yp-gpios: FET gate driver for input of Y+ +- ym-gpios: FET gate driver for input of Y- +- interrupt-parent: phandle for the interrupt controller +- interrupts: pen irq interrupt for touch detection +- pinctrl-names: "idle", "default", "gpios" +- pinctrl-0: pinctrl node for pen/touch detection state pinmux +- pinctrl-1: pinctrl node for X/Y and pressure measurement (ADC) state pinmux +- pinctrl-2: pinctrl node for gpios functioning as FET gate drivers +- vf50-ts-min-pressure: pressure level at which to stop measuring X/Y values + +Example: + + touchctrl: vf50_touchctrl { + compatible = "toradex,vf50-touchscreen"; + io-channels = <&adc1 0>,<&adc0 0>, + <&adc0 1>,<&adc1 2>; + xp-gpios = <&gpio0 13 GPIO_ACTIVE_LOW>; + xm-gpios = <&gpio2 29 GPIO_ACTIVE_HIGH>; + yp-gpios = <&gpio0 12 GPIO_ACTIVE_LOW>; + ym-gpios = <&gpio0 4 GPIO_ACTIVE_HIGH>; + interrupt-parent = <&gpio0>; + interrupts = <8 IRQ_TYPE_LEVEL_LOW>; + pinctrl-names = "idle","default","gpios"; + pinctrl-0 = <&pinctrl_touchctrl_idle>; + pinctrl-1 = <&pinctrl_touchctrl_default>; + pinctrl-2 = <&pinctrl_touchctrl_gpios>; + vf50-ts-min-pressure = <200>; + status = "disabled"; + }; diff --git a/kernel/Documentation/devicetree/bindings/input/touchscreen/edt-ft5x06.txt b/kernel/Documentation/devicetree/bindings/input/touchscreen/edt-ft5x06.txt index 76db96704..f99528da1 100644 --- a/kernel/Documentation/devicetree/bindings/input/touchscreen/edt-ft5x06.txt +++ b/kernel/Documentation/devicetree/bindings/input/touchscreen/edt-ft5x06.txt @@ -5,6 +5,7 @@ There are 3 variants of the chip for various touch panel sizes FT5206GE1 2.8" .. 3.8" FT5306DE4 4.3" .. 7" FT5406EE8 7" .. 8.9" +FT5506EEG 7" .. 8.9" The software interface is identical for all those chips, so that currently there is no need for the driver to distinguish between the @@ -17,6 +18,7 @@ Required properties: - compatible: "edt,edt-ft5206" or: "edt,edt-ft5306" or: "edt,edt-ft5406" + or: "edt,edt-ft5506" - reg: I2C slave address of the chip (0x38) - interrupt-parent: a phandle pointing to the interrupt controller @@ -49,7 +51,7 @@ Example: pinctrl-names = "default"; pinctrl-0 = <&edt_ft5x06_pins>; interrupt-parent = <&gpio2>; - interrupts = <5 0>; - reset-gpios = <&gpio2 6 1>; - wake-gpios = <&gpio4 9 0>; + interrupts = <5 IRQ_TYPE_EDGE_FALLING>; + reset-gpios = <&gpio2 6 GPIO_ACTIVE_LOW>; + wake-gpios = <&gpio4 9 GPIO_ACTIVE_HIGH>; }; diff --git a/kernel/Documentation/devicetree/bindings/input/touchscreen/focaltech-ft6236.txt b/kernel/Documentation/devicetree/bindings/input/touchscreen/focaltech-ft6236.txt new file mode 100644 index 000000000..777521da3 --- /dev/null +++ b/kernel/Documentation/devicetree/bindings/input/touchscreen/focaltech-ft6236.txt @@ -0,0 +1,35 @@ +* FocalTech FT6236 I2C touchscreen controller + +Required properties: + - compatible : "focaltech,ft6236" + - reg : I2C slave address of the chip (0x38) + - interrupt-parent : a phandle pointing to the interrupt controller + serving the interrupt for this chip + - interrupts : interrupt specification for the touch controller + interrupt + - reset-gpios : GPIO specification for the RSTN input + - touchscreen-size-x : horizontal resolution of touchscreen (in pixels) + - touchscreen-size-y : vertical resolution of touchscreen (in pixels) + +Optional properties: + - touchscreen-fuzz-x : horizontal noise value of the absolute input + device (in pixels) + - touchscreen-fuzz-y : vertical noise value of the absolute input + device (in pixels) + - touchscreen-inverted-x : X axis is inverted (boolean) + - touchscreen-inverted-y : Y axis is inverted (boolean) + - touchscreen-swapped-x-y: X and Y axis are swapped (boolean) + Swapping is done after inverting the axis + +Example: + + ft6x06@38 { + compatible = "focaltech,ft6236"; + reg = <0x38>; + interrupt-parent = <&gpio>; + interrupts = <23 2>; + touchscreen-size-x = <320>; + touchscreen-size-y = <480>; + touchscreen-inverted-x; + touchscreen-swapped-x-y; + }; diff --git a/kernel/Documentation/devicetree/bindings/input/touchscreen/imx6ul_tsc.txt b/kernel/Documentation/devicetree/bindings/input/touchscreen/imx6ul_tsc.txt new file mode 100644 index 000000000..853dff96d --- /dev/null +++ b/kernel/Documentation/devicetree/bindings/input/touchscreen/imx6ul_tsc.txt @@ -0,0 +1,36 @@ +* Freescale i.MX6UL Touch Controller + +Required properties: +- compatible: must be "fsl,imx6ul-tsc". +- reg: this touch controller address and the ADC2 address. +- interrupts: the interrupt of this touch controller and ADC2. +- clocks: the root clock of touch controller and ADC2. +- clock-names; must be "tsc" and "adc". +- xnur-gpio: the X- gpio this controller connect to. + This xnur-gpio returns to low once the finger leave the touch screen (The + last touch event the touch controller capture). + +Optional properties: +- measure-delay-time: the value of measure delay time. + Before X-axis or Y-axis measurement, the screen need some time before + even potential distribution ready. + This value depends on the touch screen. +- pre-charge-time: the touch screen need some time to precharge. + This value depends on the touch screen. + +Example: + tsc: tsc@02040000 { + compatible = "fsl,imx6ul-tsc"; + reg = <0x02040000 0x4000>, <0x0219c000 0x4000>; + interrupts = , + ; + clocks = <&clks IMX6UL_CLK_IPG>, + <&clks IMX6UL_CLK_ADC2>; + clock-names = "tsc", "adc"; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_tsc>; + xnur-gpio = <&gpio1 3 GPIO_ACTIVE_LOW>; + measure-delay-time = <0xfff>; + pre-charge-time = <0xffff>; + status = "okay"; + }; diff --git a/kernel/Documentation/devicetree/bindings/input/touchscreen/pixcir_i2c_ts.txt b/kernel/Documentation/devicetree/bindings/input/touchscreen/pixcir_i2c_ts.txt index 6e551090f..8eb240a28 100644 --- a/kernel/Documentation/devicetree/bindings/input/touchscreen/pixcir_i2c_ts.txt +++ b/kernel/Documentation/devicetree/bindings/input/touchscreen/pixcir_i2c_ts.txt @@ -8,6 +8,9 @@ Required properties: - touchscreen-size-x: horizontal resolution of touchscreen (in pixels) - touchscreen-size-y: vertical resolution of touchscreen (in pixels) +Optional properties: +- reset-gpio: GPIO connected to the RESET line of the chip + Example: i2c@00000000 { diff --git a/kernel/Documentation/devicetree/bindings/input/touchscreen/ti-tsc-adc.txt b/kernel/Documentation/devicetree/bindings/input/touchscreen/ti-tsc-adc.txt index 6c4fb3482..b1163bf97 100644 --- a/kernel/Documentation/devicetree/bindings/input/touchscreen/ti-tsc-adc.txt +++ b/kernel/Documentation/devicetree/bindings/input/touchscreen/ti-tsc-adc.txt @@ -42,6 +42,27 @@ Optional properties: hardware knob for adjusting the amount of "settling time". +- child "adc" + ti,chan-step-opendelay: List of open delays for each channel of + ADC in the order of ti,adc-channels. The + value corresponds to the number of ADC + clock cycles to wait after applying the + step configuration registers and before + sending the start of ADC conversion. + Maximum value is 0x3FFFF. + ti,chan-step-sampledelay: List of sample delays for each channel + of ADC in the order of ti,adc-channels. + The value corresponds to the number of + ADC clock cycles to sample (to hold + start of conversion high). + Maximum value is 0xFF. + ti,chan-step-avg: Number of averages to be performed for each + channel of ADC. If average is 16 then input + is sampled 16 times and averaged to get more + accurate value. This increases the time taken + by ADC to generate a sample. Valid range is 0 + average to 16 averages. Maximum value is 16. + Example: tscadc: tscadc@44e0d000 { compatible = "ti,am3359-tscadc"; @@ -55,5 +76,8 @@ Example: adc { ti,adc-channels = <4 5 6 7>; + ti,chan-step-opendelay = <0x098 0x3ffff 0x098 0x0>; + ti,chan-step-sampledelay = <0xff 0x0 0xf 0x0>; + ti,chan-step-avg = <16 2 4 8>; }; } diff --git a/kernel/Documentation/devicetree/bindings/input/touchscreen/tsc2005.txt b/kernel/Documentation/devicetree/bindings/input/touchscreen/tsc2005.txt index 09089a6d6..b80c04b0e 100644 --- a/kernel/Documentation/devicetree/bindings/input/touchscreen/tsc2005.txt +++ b/kernel/Documentation/devicetree/bindings/input/touchscreen/tsc2005.txt @@ -1,14 +1,15 @@ -* Texas Instruments tsc2005 touchscreen controller +* Texas Instruments tsc2004 and tsc2005 touchscreen controllers Required properties: - - compatible : "ti,tsc2005" - - reg : SPI device address - - spi-max-frequency : Maximal SPI speed + - compatible : "ti,tsc2004" or "ti,tsc2005" + - reg : Device address - interrupts : IRQ specifier - - reset-gpios : GPIO specifier - - vio-supply : Regulator specifier + - spi-max-frequency : Maximum SPI clocking speed of the device + (for tsc2005) Optional properties: + - vio-supply : Regulator specifier + - reset-gpios : GPIO specifier for the controller reset line - ti,x-plate-ohms : integer, resistance of the touchscreen's X plates in ohm (defaults to 280) - ti,esd-recovery-timeout-ms : integer, if the touchscreen does not respond after @@ -18,6 +19,27 @@ Optional properties: Example: +&i2c3 { + tsc2004@48 { + compatible = "ti,tsc2004"; + reg = <0x48>; + vio-supply = <&vio>; + + reset-gpios = <&gpio4 8 GPIO_ACTIVE_HIGH>; + interrupts-extended = <&gpio1 27 IRQ_TYPE_EDGE_RISING>; + + touchscreen-fuzz-x = <4>; + touchscreen-fuzz-y = <7>; + touchscreen-fuzz-pressure = <2>; + touchscreen-size-x = <4096>; + touchscreen-size-y = <4096>; + touchscreen-max-pressure = <2048>; + + ti,x-plate-ohms = <280>; + ti,esd-recovery-timeout-ms = <8000>; + }; +} + &mcspi1 { tsc2005@0 { compatible = "ti,tsc2005"; diff --git a/kernel/Documentation/devicetree/bindings/input/touchscreen/zforce_ts.txt b/kernel/Documentation/devicetree/bindings/input/touchscreen/zforce_ts.txt index 80c37df94..e3c27c4fd 100644 --- a/kernel/Documentation/devicetree/bindings/input/touchscreen/zforce_ts.txt +++ b/kernel/Documentation/devicetree/bindings/input/touchscreen/zforce_ts.txt @@ -4,12 +4,12 @@ Required properties: - compatible: must be "neonode,zforce" - reg: I2C address of the chip - interrupts: interrupt to which the chip is connected -- gpios: gpios the chip is connected to - first one is the interrupt gpio and second one the reset gpio +- reset-gpios: reset gpio the chip is connected to - x-size: horizontal resolution of touchscreen - y-size: vertical resolution of touchscreen Optional properties: +- irq-gpios : interrupt gpio the chip is connected to - vdd-supply: Regulator controlling the controller supply Example: @@ -23,8 +23,8 @@ Example: interrupts = <2 0>; vdd-supply = <®_zforce_vdd>; - gpios = <&gpio5 6 0>, /* INT */ - <&gpio5 9 0>; /* RST */ + reset-gpios = <&gpio5 9 0>; /* RST */ + irq-gpios = <&gpio5 6 0>; /* IRQ, optional */ x-size = <800>; y-size = <600>; -- cgit 1.2.3-korg