mbox series

[0/3] Input: touchscreen - Allow setting touchscreen properties with module options

Message ID 20210613102158.16886-1-hdegoede@redhat.com
Headers show
Series Input: touchscreen - Allow setting touchscreen properties with module options | expand

Message

Hans de Goede June 13, 2021, 10:21 a.m. UTC
Hi all,

On x86/ACPI platforms touchscreens mostly just work without needing any
device/model specific configuration. But in some cases (mostly with Silead
and Goodix touchscreens) it is still necessary to manually specify various
touchscreen-properties on a per model basis.

This is handled by drivers/platform/x86/touchscreen_dmi.c which contains
a large list of per-model touchscreen properties which it attaches to the
(i2c)device before the touchscreen driver's probe() method gets called.
This means that ATM changing these settings requires recompiling the
kernel. This makes figuring out what settings/properties a specific
touchscreen needs very hard for normal users to do.

This series adds a new "settings" module parameter to the silead and
goodix touchscreen drivers which allows setting touch-screen properties
without needing a kernel re-compile.

Regards,

Hans


Hans de Goede (3):
  Input: touchscreen - Extend touchscreen_parse_properties() to allow
    overriding settings with a module option
  Input: silead - add a settings module-parameter
  Input: goodix - add a settings module-parameter

 drivers/input/misc/iqs626a.c                  |  2 +-
 drivers/input/touchscreen.c                   | 96 +++++++++++++++++--
 drivers/input/touchscreen/ad7879.c            |  2 +-
 drivers/input/touchscreen/ads7846.c           |  2 +-
 drivers/input/touchscreen/bu21013_ts.c        |  2 +-
 drivers/input/touchscreen/bu21029_ts.c        |  2 +-
 drivers/input/touchscreen/chipone_icn8318.c   |  2 +-
 drivers/input/touchscreen/chipone_icn8505.c   |  2 +-
 drivers/input/touchscreen/cy8ctma140.c        |  2 +-
 drivers/input/touchscreen/cyttsp_core.c       |  2 +-
 drivers/input/touchscreen/edt-ft5x06.c        |  2 +-
 drivers/input/touchscreen/eeti_ts.c           |  2 +-
 drivers/input/touchscreen/ektf2127.c          |  2 +-
 drivers/input/touchscreen/elants_i2c.c        |  2 +-
 drivers/input/touchscreen/exc3000.c           |  2 +-
 drivers/input/touchscreen/goodix.c            |  6 +-
 drivers/input/touchscreen/hideep.c            |  2 +-
 drivers/input/touchscreen/hycon-hy46xx.c      |  2 +-
 drivers/input/touchscreen/ili210x.c           |  2 +-
 drivers/input/touchscreen/ilitek_ts_i2c.c     |  2 +-
 drivers/input/touchscreen/iqs5xx.c            |  2 +-
 drivers/input/touchscreen/mms114.c            |  2 +-
 drivers/input/touchscreen/msg2638.c           |  2 +-
 drivers/input/touchscreen/pixcir_i2c_ts.c     |  2 +-
 drivers/input/touchscreen/raspberrypi-ts.c    |  2 +-
 .../input/touchscreen/resistive-adc-touch.c   |  2 +-
 drivers/input/touchscreen/s6sy761.c           |  2 +-
 drivers/input/touchscreen/silead.c            | 16 ++--
 drivers/input/touchscreen/st1232.c            |  2 +-
 drivers/input/touchscreen/stmfts.c            |  2 +-
 drivers/input/touchscreen/stmpe-ts.c          |  2 +-
 drivers/input/touchscreen/sx8654.c            |  2 +-
 drivers/input/touchscreen/tsc200x-core.c      |  2 +-
 drivers/input/touchscreen/zet6223.c           |  2 +-
 drivers/input/touchscreen/zinitix.c           |  2 +-
 include/linux/input/touchscreen.h             |  9 +-
 36 files changed, 143 insertions(+), 48 deletions(-)