18c2ecf20Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0-only
28c2ecf20Sopenharmony_ci#
38c2ecf20Sopenharmony_ci# RMI4 configuration
48c2ecf20Sopenharmony_ci#
58c2ecf20Sopenharmony_ciconfig RMI4_CORE
68c2ecf20Sopenharmony_ci	tristate "Synaptics RMI4 bus support"
78c2ecf20Sopenharmony_ci	select IRQ_DOMAIN
88c2ecf20Sopenharmony_ci	help
98c2ecf20Sopenharmony_ci	  Say Y here if you want to support the Synaptics RMI4 bus.  This is
108c2ecf20Sopenharmony_ci	  required for all RMI4 device support.
118c2ecf20Sopenharmony_ci
128c2ecf20Sopenharmony_ci	  If unsure, say Y.
138c2ecf20Sopenharmony_ci
148c2ecf20Sopenharmony_ciif RMI4_CORE
158c2ecf20Sopenharmony_ci
168c2ecf20Sopenharmony_ciconfig RMI4_I2C
178c2ecf20Sopenharmony_ci	tristate "RMI4 I2C Support"
188c2ecf20Sopenharmony_ci	depends on I2C
198c2ecf20Sopenharmony_ci	help
208c2ecf20Sopenharmony_ci	  Say Y here if you want to support RMI4 devices connected to an I2C
218c2ecf20Sopenharmony_ci	  bus.
228c2ecf20Sopenharmony_ci
238c2ecf20Sopenharmony_ci	  If unsure, say Y.
248c2ecf20Sopenharmony_ci
258c2ecf20Sopenharmony_ciconfig RMI4_SPI
268c2ecf20Sopenharmony_ci	tristate "RMI4 SPI Support"
278c2ecf20Sopenharmony_ci	depends on SPI
288c2ecf20Sopenharmony_ci	help
298c2ecf20Sopenharmony_ci	  Say Y here if you want to support RMI4 devices connected to a SPI
308c2ecf20Sopenharmony_ci	  bus.
318c2ecf20Sopenharmony_ci
328c2ecf20Sopenharmony_ci	  If unsure, say N.
338c2ecf20Sopenharmony_ci
348c2ecf20Sopenharmony_ciconfig RMI4_SMB
358c2ecf20Sopenharmony_ci	tristate "RMI4 SMB Support"
368c2ecf20Sopenharmony_ci	depends on I2C
378c2ecf20Sopenharmony_ci	help
388c2ecf20Sopenharmony_ci	  Say Y here if you want to support RMI4 devices connected to an SMB
398c2ecf20Sopenharmony_ci	  bus.
408c2ecf20Sopenharmony_ci
418c2ecf20Sopenharmony_ci	  If unsure, say N.
428c2ecf20Sopenharmony_ci
438c2ecf20Sopenharmony_ci	  To compile this driver as a module, choose M here: the module will be
448c2ecf20Sopenharmony_ci	  called rmi_smbus.
458c2ecf20Sopenharmony_ci
468c2ecf20Sopenharmony_ciconfig RMI4_F03
478c2ecf20Sopenharmony_ci	bool "RMI4 Function 03 (PS2 Guest)"
488c2ecf20Sopenharmony_ci	depends on RMI4_CORE
498c2ecf20Sopenharmony_ci	help
508c2ecf20Sopenharmony_ci	  Say Y here if you want to add support for RMI4 function 03.
518c2ecf20Sopenharmony_ci
528c2ecf20Sopenharmony_ci	  Function 03 provides PS2 guest support for RMI4 devices. This
538c2ecf20Sopenharmony_ci	  includes support for TrackPoints on TouchPads.
548c2ecf20Sopenharmony_ci
558c2ecf20Sopenharmony_ciconfig RMI4_F03_SERIO
568c2ecf20Sopenharmony_ci	tristate
578c2ecf20Sopenharmony_ci	depends on RMI4_CORE
588c2ecf20Sopenharmony_ci	depends on RMI4_F03
598c2ecf20Sopenharmony_ci	default RMI4_CORE
608c2ecf20Sopenharmony_ci	select SERIO
618c2ecf20Sopenharmony_ci
628c2ecf20Sopenharmony_ciconfig RMI4_2D_SENSOR
638c2ecf20Sopenharmony_ci	bool
648c2ecf20Sopenharmony_ci
658c2ecf20Sopenharmony_ciconfig RMI4_F11
668c2ecf20Sopenharmony_ci	bool "RMI4 Function 11 (2D pointing)"
678c2ecf20Sopenharmony_ci	select RMI4_2D_SENSOR
688c2ecf20Sopenharmony_ci	help
698c2ecf20Sopenharmony_ci	  Say Y here if you want to add support for RMI4 function 11.
708c2ecf20Sopenharmony_ci
718c2ecf20Sopenharmony_ci	  Function 11 provides 2D multifinger pointing for touchscreens and
728c2ecf20Sopenharmony_ci	  touchpads. For sensors that support relative pointing, F11 also
738c2ecf20Sopenharmony_ci	  provides mouse input.
748c2ecf20Sopenharmony_ci
758c2ecf20Sopenharmony_ciconfig RMI4_F12
768c2ecf20Sopenharmony_ci	bool "RMI4 Function 12 (2D pointing)"
778c2ecf20Sopenharmony_ci	select RMI4_2D_SENSOR
788c2ecf20Sopenharmony_ci	help
798c2ecf20Sopenharmony_ci	  Say Y here if you want to add support for RMI4 function 12.
808c2ecf20Sopenharmony_ci
818c2ecf20Sopenharmony_ci	  Function 12 provides 2D multifinger pointing for touchscreens and
828c2ecf20Sopenharmony_ci	  touchpads. For sensors that support relative pointing, F12 also
838c2ecf20Sopenharmony_ci	  provides mouse input.
848c2ecf20Sopenharmony_ci
858c2ecf20Sopenharmony_ciconfig RMI4_F30
868c2ecf20Sopenharmony_ci	bool "RMI4 Function 30 (GPIO LED)"
878c2ecf20Sopenharmony_ci	help
888c2ecf20Sopenharmony_ci	  Say Y here if you want to add support for RMI4 function 30.
898c2ecf20Sopenharmony_ci
908c2ecf20Sopenharmony_ci	  Function 30 provides GPIO and LED support for RMI4 devices. This
918c2ecf20Sopenharmony_ci	  includes support for buttons on TouchPads and ClickPads.
928c2ecf20Sopenharmony_ci
938c2ecf20Sopenharmony_ciconfig RMI4_F34
948c2ecf20Sopenharmony_ci	bool "RMI4 Function 34 (Device reflash)"
958c2ecf20Sopenharmony_ci	select FW_LOADER
968c2ecf20Sopenharmony_ci	help
978c2ecf20Sopenharmony_ci	  Say Y here if you want to add support for RMI4 function 34.
988c2ecf20Sopenharmony_ci
998c2ecf20Sopenharmony_ci	  Function 34 provides support for upgrading the firmware on the RMI4
1008c2ecf20Sopenharmony_ci	  device via the firmware loader interface. This is triggered using a
1018c2ecf20Sopenharmony_ci	  sysfs attribute.
1028c2ecf20Sopenharmony_ci
1038c2ecf20Sopenharmony_ciconfig RMI4_F3A
1048c2ecf20Sopenharmony_ci	bool "RMI4 Function 3A (GPIO)"
1058c2ecf20Sopenharmony_ci	help
1068c2ecf20Sopenharmony_ci	  Say Y here if you want to add support for RMI4 function 3A.
1078c2ecf20Sopenharmony_ci
1088c2ecf20Sopenharmony_ci	  Function 3A provides GPIO support for RMI4 devices. This includes
1098c2ecf20Sopenharmony_ci	  support for buttons on TouchPads and ClickPads.
1108c2ecf20Sopenharmony_ci
1118c2ecf20Sopenharmony_ciconfig RMI4_F54
1128c2ecf20Sopenharmony_ci	bool "RMI4 Function 54 (Analog diagnostics)"
1138c2ecf20Sopenharmony_ci	depends on VIDEO_V4L2=y || (RMI4_CORE=m && VIDEO_V4L2=m)
1148c2ecf20Sopenharmony_ci	select VIDEOBUF2_VMALLOC
1158c2ecf20Sopenharmony_ci	select RMI4_F55
1168c2ecf20Sopenharmony_ci	help
1178c2ecf20Sopenharmony_ci	  Say Y here if you want to add support for RMI4 function 54
1188c2ecf20Sopenharmony_ci
1198c2ecf20Sopenharmony_ci	  Function 54 provides access to various diagnostic features in certain
1208c2ecf20Sopenharmony_ci	  RMI4 touch sensors.
1218c2ecf20Sopenharmony_ci
1228c2ecf20Sopenharmony_ciconfig RMI4_F55
1238c2ecf20Sopenharmony_ci	bool "RMI4 Function 55 (Sensor tuning)"
1248c2ecf20Sopenharmony_ci	help
1258c2ecf20Sopenharmony_ci	  Say Y here if you want to add support for RMI4 function 55
1268c2ecf20Sopenharmony_ci
1278c2ecf20Sopenharmony_ci	  Function 55 provides access to the RMI4 touch sensor tuning
1288c2ecf20Sopenharmony_ci	  mechanism.
1298c2ecf20Sopenharmony_ci
1308c2ecf20Sopenharmony_ciendif # RMI_CORE
131