0001 # SPDX-License-Identifier: GPL-2.0-only
0002 #
0003 # RMI4 configuration
0004 #
0005 config RMI4_CORE
0006 tristate "Synaptics RMI4 bus support"
0007 select IRQ_DOMAIN
0008 help
0009 Say Y here if you want to support the Synaptics RMI4 bus. This is
0010 required for all RMI4 device support.
0011
0012 If unsure, say Y.
0013
0014 if RMI4_CORE
0015
0016 config RMI4_I2C
0017 tristate "RMI4 I2C Support"
0018 depends on I2C
0019 help
0020 Say Y here if you want to support RMI4 devices connected to an I2C
0021 bus.
0022
0023 If unsure, say Y.
0024
0025 config RMI4_SPI
0026 tristate "RMI4 SPI Support"
0027 depends on SPI
0028 help
0029 Say Y here if you want to support RMI4 devices connected to a SPI
0030 bus.
0031
0032 If unsure, say N.
0033
0034 config RMI4_SMB
0035 tristate "RMI4 SMB Support"
0036 depends on I2C
0037 help
0038 Say Y here if you want to support RMI4 devices connected to an SMB
0039 bus.
0040
0041 If unsure, say N.
0042
0043 To compile this driver as a module, choose M here: the module will be
0044 called rmi_smbus.
0045
0046 config RMI4_F03
0047 bool "RMI4 Function 03 (PS2 Guest)"
0048 depends on RMI4_CORE
0049 help
0050 Say Y here if you want to add support for RMI4 function 03.
0051
0052 Function 03 provides PS2 guest support for RMI4 devices. This
0053 includes support for TrackPoints on TouchPads.
0054
0055 config RMI4_F03_SERIO
0056 tristate
0057 depends on RMI4_CORE
0058 depends on RMI4_F03
0059 default RMI4_CORE
0060 select SERIO
0061
0062 config RMI4_2D_SENSOR
0063 bool
0064
0065 config RMI4_F11
0066 bool "RMI4 Function 11 (2D pointing)"
0067 select RMI4_2D_SENSOR
0068 help
0069 Say Y here if you want to add support for RMI4 function 11.
0070
0071 Function 11 provides 2D multifinger pointing for touchscreens and
0072 touchpads. For sensors that support relative pointing, F11 also
0073 provides mouse input.
0074
0075 config RMI4_F12
0076 bool "RMI4 Function 12 (2D pointing)"
0077 select RMI4_2D_SENSOR
0078 help
0079 Say Y here if you want to add support for RMI4 function 12.
0080
0081 Function 12 provides 2D multifinger pointing for touchscreens and
0082 touchpads. For sensors that support relative pointing, F12 also
0083 provides mouse input.
0084
0085 config RMI4_F30
0086 bool "RMI4 Function 30 (GPIO LED)"
0087 help
0088 Say Y here if you want to add support for RMI4 function 30.
0089
0090 Function 30 provides GPIO and LED support for RMI4 devices. This
0091 includes support for buttons on TouchPads and ClickPads.
0092
0093 config RMI4_F34
0094 bool "RMI4 Function 34 (Device reflash)"
0095 select FW_LOADER
0096 help
0097 Say Y here if you want to add support for RMI4 function 34.
0098
0099 Function 34 provides support for upgrading the firmware on the RMI4
0100 device via the firmware loader interface. This is triggered using a
0101 sysfs attribute.
0102
0103 config RMI4_F3A
0104 bool "RMI4 Function 3A (GPIO)"
0105 help
0106 Say Y here if you want to add support for RMI4 function 3A.
0107
0108 Function 3A provides GPIO support for RMI4 devices. This includes
0109 support for buttons on TouchPads and ClickPads.
0110
0111 config RMI4_F54
0112 bool "RMI4 Function 54 (Analog diagnostics)"
0113 depends on VIDEO_DEV=y || (RMI4_CORE=m && VIDEO_DEV=m)
0114 select VIDEOBUF2_VMALLOC
0115 select RMI4_F55
0116 help
0117 Say Y here if you want to add support for RMI4 function 54
0118
0119 Function 54 provides access to various diagnostic features in certain
0120 RMI4 touch sensors.
0121
0122 config RMI4_F55
0123 bool "RMI4 Function 55 (Sensor tuning)"
0124 help
0125 Say Y here if you want to add support for RMI4 function 55
0126
0127 Function 55 provides access to the RMI4 touch sensor tuning
0128 mechanism.
0129
0130 endif # RMI_CORE