- 13 11月, 2019 3 次提交
-
-
由 Sven Van Asbroeck 提交于
Only show the 'calibrate' sysfs attribute on chip flavours which support calibration by writing to a calibration register. Do this by adding a flag to the chip operations structure. Signed-off-by: NSven Van Asbroeck <TheSven73@gmail.com> Link: https://lore.kernel.org/r/20191112210148.3535-2-TheSven73@gmail.comSigned-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Sven Van Asbroeck 提交于
Optionally allow the touch screen resolution to be set by adding it to the chip operations structure. If it is omitted (left zero), the resolution defaults to 64K. Which is the previously hard-coded value. Set the ili2117 resolution to 2048, as indicated in its datasheet. Signed-off-by: NSven Van Asbroeck <TheSven73@gmail.com> Link: https://lore.kernel.org/r/20191112210148.3535-1-TheSven73@gmail.comSigned-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Sven Van Asbroeck 提交于
The driver's method to retrieve the firmware version on ili2117/ ili2118 chip flavours is incorrect. The firmware version register address and layout are wrong. The firmware version is not actually used anywhere inside or outside this driver. There is a dev_dbg() print, but that is only visible when the developer explicitly compiles in debug support. Don't make the code more complicated to preserve a feature that no-one is using. Remove all code associated with chip firmware version. Signed-off-by: NSven Van Asbroeck <TheSven73@gmail.com> Link: https://lore.kernel.org/r/20191112164429.11225-1-TheSven73@gmail.comSigned-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 12 11月, 2019 9 次提交
-
-
由 Stephan Gerhold 提交于
device_get_match_data is available now, so we can replace the call to of_device_get_match_data and remove the FIXME comment. Signed-off-by: NStephan Gerhold <stephan@gerhold.net> Reviewed-by: NAndi Shyti <andi@etezian.org> Link: https://lore.kernel.org/r/20191007203343.101466-2-stephan@gerhold.netSigned-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Dmitry Torokhov 提交于
When I2C client is instantiated with I2C_CLIENT_WAKE flag (either via "wakeup-source" device property, or via board info flag), it will mark the main IRQ line as wakeup IRQ, which will ensure that it will be enabled for wakeup when system transitions to suspend state. Since our suspend/resume handlers were only managing IRQ wakeup state, they are no longer needed, and can be removed. Tested-by: Adam Ford <aford173@gmail.com> #imx6q-logicpd Tested-by: Sven Van Asbroeck <TheSven73@gmail.com> # ILI2118A variant Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Dmitry Torokhov 提交于
I2C devices that are supposed to be wakeup sources should be instantiated with I2C_CLIENT_WAKE flag (which can be either set by in board info, or retrieved from "wakeup-source" property); individual drivers should not be marking devices as wakeup sources unconditionally. Tested-by: Adam Ford <aford173@gmail.com> #imx6q-logicpd Tested-by: Sven Van Asbroeck <TheSven73@gmail.com> # ILI2118A variant Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Dmitry Torokhov 提交于
Instead of doing if/else if/else on the chip's model number let's define chip operations structure and use it to perform indirect calls. With number of protocols supported by the driver growing, this makes it better maintainable. This change includes fixes to checks whether the driver should continue polling the controller by Sven Van Asbroeck <thesven73@gmail.com>. Tested-by: Adam Ford <aford173@gmail.com> #imx6q-logicpd Tested-by: Sven Van Asbroeck <TheSven73@gmail.com> # ILI2118A variant Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Dmitry Torokhov 提交于
We are using devm_input_allocate_device() that set's up the parent for us, no need to do it ourselves. Tested-by: Adam Ford <aford173@gmail.com> #imx6q-logicpd Tested-by: Sven Van Asbroeck <TheSven73@gmail.com> # ILI2118A variant Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Dmitry Torokhov 提交于
input_mt_init_slots() may fail and we need to handle such failures. Tested-by: Adam Ford <aford173@gmail.com> #imx6q-logicpd Tested-by: Sven Van Asbroeck <TheSven73@gmail.com> # ILI2118A variant Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Dmitry Torokhov 提交于
Let's switch the driver to using threaded IRQ so that we do not need to manage the interrupt and work separately, and we do not acknowledge interrupt until we finished handling it completely. Tested-by: Adam Ford <aford173@gmail.com> #imx6q-logicpd Tested-by: Sven Van Asbroeck <TheSven73@gmail.com> # ILI2118A variant Tested-by: Marek Vasut <marex@denx.de> # ILI2117 Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Marek Vasut 提交于
Add support for ILI2117 touch controller. This controller is similar to the ILI210x and ILI251x, except for the following differences: - Reading out of touch data must happen at most 300 mS after the interrupt line was asserted. No command must be sent, the data are returned upon pure I2C read of 43 bytes long. - Supports 10 simultaneous touch inputs. - Touch data format is slightly different. Signed-off-by: NMarek Vasut <marex@denx.de> Reviewed-by: Rob Herring <robh@kernel.org> # for DT binding Tested-by: Adam Ford <aford173@gmail.com> #imx6q-logicpd Tested-by: Sven Van Asbroeck <TheSven73@gmail.com> # ILI2118A variant Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Flavio Suligoi 提交于
Fix spelling mistake. Signed-off-by: NFlavio Suligoi <f.suligoi@asem.it> Link: https://lore.kernel.org/r/1573211947-660-1-git-send-email-f.suligoi@asem.itSigned-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 30 10月, 2019 4 次提交
-
-
由 Dmitry Torokhov 提交于
We have added polled mode to the normal input devices with the intent of retiring input_polled_dev. This converts tsc6507x-ts driver to use the polling mode of standard input devices and removes dependency on INPUT_POLLDEV. Link: https://lore.kernel.org/r/20191017204217.106453-5-dmitry.torokhov@gmail.comSigned-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Dmitry Torokhov 提交于
We have added polled mode to the normal input devices with the intent of retiring input_polled_dev. This converts ts4800-ts driver to use the polling mode of standard input devices and removes dependency on INPUT_POLLDEV. Link: https://lore.kernel.org/r/20191017204217.106453-4-dmitry.torokhov@gmail.comSigned-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Dmitry Torokhov 提交于
We have added polled mode to the normal input devices with the intent of retiring input_polled_dev. This converts sur40 driver to use the polling mode of standard input devices and removes dependency on INPUT_POLLDEV. Link: https://lore.kernel.org/r/20191017204217.106453-3-dmitry.torokhov@gmail.comSigned-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Dmitry Torokhov 提交于
We have added polled mode to the normal input devices with the intent of retiring input_polled_dev. This converts raspberrypi-ts driver to use the polling mode of standard input devices and removes dependency on INPUT_POLLDEV. Link: https://lore.kernel.org/r/20191017204217.106453-2-dmitry.torokhov@gmail.comSigned-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 29 10月, 2019 9 次提交
-
-
由 Mylène Josserand 提交于
Add the support for enabling optional regulator that may be used as VCC source. Signed-off-by: NMylène Josserand <mylene.josserand@bootlin.com> Signed-off-by: NOndrej Jirman <megous@megous.com> Reviewed-by: Rob Herring <robh@kernel.org> # bindings Link: https://lore.kernel.org/r/20191029005806.3577376-2-megous@megous.comSigned-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Dmitry Torokhov 提交于
Switch the driver to the slotted variant of multitouch protocol (MT-B) with in-kernel tracking of the contacts. Tested-by: NMatthias Fend <Matthias.Fend@wolfvision.net> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Dmitry Torokhov 提交于
The receiving buffer is allocated separately from the main driver data structure, and is naturally DMA-safe, so mark it as such when building I2C transfer message. Tested-by: NMatthias Fend <Matthias.Fend@wolfvision.net> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Dmitry Torokhov 提交于
devm_input_allocate_device() already sets parent device for us. Tested-by: NMatthias Fend <Matthias.Fend@wolfvision.net> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Dmitry Torokhov 提交于
The finger structure size is quite small and allocating it together with the main driver structure will not increase likelyhood of allocation failing, but reduces number of objects needing to be tracked by the allocator and devm. Tested-by: NMatthias Fend <Matthias.Fend@wolfvision.net> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Dmitry Torokhov 提交于
We should not be putting the chip into reset while interrupts are enabled and ISR may be running. Fix this by installing a custom devm action and powering off the device/resetting GPIO line from there. This ensures proper ordering. Tested-by: NMatthias Fend <Matthias.Fend@wolfvision.net> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Dmitry Torokhov 提交于
When I2C client is created with I2C_CLIENT_WAKE flag (which happens either because we have "wakeup-source" device property or the flag was passed in when creating an I2C client manually), I2C core will take care of configuring interrupt as wakeup source on suspend. Tested-by: NMatthias Fend <Matthias.Fend@wolfvision.net> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Dmitry Torokhov 提交于
Do not unconditionally configure the touchscreen as wakeup source but rather rely on I2C core to do that when requested (either via "wakeup-source" device property, or when creating a client with I2C_CLIENT_WAKE flag). Tested-by: NMatthias Fend <Matthias.Fend@wolfvision.net> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Dmitry Torokhov 提交于
Avoid complex 2-variable loop when parsing touchscreen data to make the code clearer. Acked-by: NMartin Kepplinger <martink@posteo.de> Tested-by: NMatthias Fend <Matthias.Fend@wolfvision.net> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 28 10月, 2019 3 次提交
-
-
由 Fabio Estevam 提交于
There is no gpio functions used in the driver that is exported by the gpio.h header, so remove this unneeded header. Signed-off-by: NFabio Estevam <festevam@gmail.com> Link: https://lore.kernel.org/r/20191026185958.24158-3-festevam@gmail.comSigned-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Fabio Estevam 提交于
There is no gpio functions used in the driver that is exported by the gpio.h header, so remove this unneeded header. Signed-off-by: NFabio Estevam <festevam@gmail.com> Link: https://lore.kernel.org/r/20191026185958.24158-2-festevam@gmail.comSigned-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Fabio Estevam 提交于
The touchscreen device is a GPIO consumer, not a GPIO controller, so there is no need to include <linux/gpio.h>. Remove the unneeded header file. Signed-off-by: NFabio Estevam <festevam@gmail.com> Link: https://lore.kernel.org/r/20191026185958.24158-1-festevam@gmail.comSigned-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 22 10月, 2019 1 次提交
-
-
由 Dixit Parmar 提交于
For Sitronix st1633 multi-touch controller driver the coordinates reported for multiple fingers were wrong, as it was always taking LSB of coordinates from the first contact data. Signed-off-by: NDixit Parmar <dixitparmar19@gmail.com> Reviewed-by: NMartin Kepplinger <martink@posteo.de> Cc: stable@vger.kernel.org Fixes: 351e0592 ("Input: st1232 - add support for st1633") Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=204561 Link: https://lore.kernel.org/r/1566209314-21767-1-git-send-email-dixitparmar19@gmail.comSigned-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 10 10月, 2019 6 次提交
-
-
由 Dmitry Torokhov 提交于
Previous change moved platform data definition into the driver, making it unusable for users. Given that we want to move away from custom platform data structures, and always use device properties (DT, ACPI or static) to configure devices, let's complete the removal. Tested-by: NFabio Estevam <festevam@gmail.com> Tested-by: NMichal Vokáč <michal.vokac@ysoft.com> Reviewed-by: NRoger Quadros <rogerq@ti.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Fabio Estevam 提交于
In the case of defer probe we should not print an error message. This also aligns with how defer probe is handled in the other GPIOs used by this driver. Signed-off-by: NFabio Estevam <festevam@gmail.com> Reviewed-by: NRoger Quadros <rogerq@ti.com> Tested-by: NMichal Vokáč <michal.vokac@ysoft.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Fabio Estevam 提交于
The pixcir datasheet lists the registers addresses in decimal and so are PIXCIR_REG_POWER_MODE and PIXCIR_REG_INT_MODE defined in decimal. Change the error messages to print the register addresses in decimal instead of hexadecimal for better readability. Signed-off-by: NFabio Estevam <festevam@gmail.com> Reviewed-by: NRoger Quadros <rogerq@ti.com> Tested-by: NMichal Vokáč <michal.vokac@ysoft.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Fabio Estevam 提交于
Keep the header files in alphabetical order to keep it more organized. Signed-off-by: NFabio Estevam <festevam@gmail.com> Reviewed-by: NRoger Quadros <rogerq@ti.com> Tested-by: NMichal Vokáč <michal.vokac@ysoft.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Fabio Estevam 提交于
All the defined symbols from linux/platform_data/pixcir_i2c_ts.h are only used by the pixcir_i2c_ts driver, so move all the definitions locally and get rid of the pixcir_i2c_ts.h file. Signed-off-by: NFabio Estevam <festevam@gmail.com> Reviewed-by: NRoger Quadros <rogerq@ti.com> Tested-by: NMichal Vokáč <michal.vokac@ysoft.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Fabio Estevam 提交于
The touchscreen device is a GPIO consumer, not a GPIO controller, so there is no need to include <linux/gpio.h>. Remove the unneeded header file. Signed-off-by: NFabio Estevam <festevam@gmail.com> Reviewed-by: NRoger Quadros <rogerq@ti.com> Tested-by: NMichal Vokáč <michal.vokac@ysoft.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 03 10月, 2019 2 次提交
-
-
由 Yauhen Kharuzhy 提交于
Some variants of Goodix touchscreen firmwares use 9-bytes finger report format instead of common 8-bytes format. This report format may be present as: struct goodix_contact_data { uint8_t unknown1; uint8_t track_id; uint8_t unknown2; uint16_t x; uint16_t y; uint16_t w; }__attribute__((packed)); Add support for such format and use it for Lenovo Yoga Book notebook (which uses a Goodix touchpad as a touch keyboard). Signed-off-by: NYauhen Kharuzhy <jekhor@gmail.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Evan Green 提交于
Across suspend and resume, we are seeing error messages like the following: atmel_mxt_ts i2c-PRP0001:00: __mxt_read_reg: i2c transfer failed (-121) atmel_mxt_ts i2c-PRP0001:00: Failed to read T44 and T5 (-121) This occurs because the driver leaves its IRQ enabled. Upon resume, there is an IRQ pending, but the interrupt is serviced before both the driver and the underlying I2C bus have been resumed. This causes EREMOTEIO errors. Disable the IRQ in suspend, and re-enable it on resume. If there are cases where the driver enters suspend with interrupts disabled, that's a bug we should fix separately. Signed-off-by: NEvan Green <evgreen@chromium.org> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 03 9月, 2019 3 次提交
-
-
由 Dmitry Torokhov 提交于
This switches the driver over to the standard touchscreen properties for coordinate transformation, while keeping old bindings working as well. Tested-by: NLinus Walleij <linus.walleij@linaro.org> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Dmitry Torokhov 提交于
MT-B protocol is more efficient and everyone expects it. We use in-kernel tracking to identify contacts. Tested-by: NLinus Walleij <linus.walleij@linaro.org> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Dmitry Torokhov 提交于
If the touchscreen is configured as wakeup source we should not be cutting off power to it. Also, now that the driver relies on I2C client to supply IRQ, we do not need to explicitly enable and disable IRQ for wakeup: if device is created as wakeup source, I2C core will mark interrupt as wakeup one. Tested-by: NLinus Walleij <linus.walleij@linaro.org> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-