| /linux/drivers/hid/i2c-hid/ |
| H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 3 tristate "I2C HID support" 5 depends on I2C 10 tristate "HID over I2C transport layer ACPI driver" 16 other HID based devices which is connected to your computer via I2C. 17 This driver supports ACPI-based systems. 22 will be called i2c-hid-acpi. It will also build/depend on the 23 module i2c-hid. 26 tristate "HID over I2C transport layer Open Firmware driver" 28 # (board-file) instantiated "hid-over-i2c" type i2c-clients. [all …]
|
| H A D | Makefile | 1 # SPDX-License-Identifier: GPL-2.0-only 3 # Makefile for the I2C input drivers 6 obj-$(CONFIG_I2C_HID_CORE) += i2c-hid.o 8 i2c-hid-objs = i2c-hid-core.o 9 i2c-hid-$(CONFIG_DMI) += i2c-hid-dmi-quirks.o 11 obj-$(CONFIG_I2C_HID_ACPI) += i2c-hid-acpi.o 12 obj-$(CONFIG_I2C_HID_OF) += i2c-hid-of.o 13 obj-$(CONFIG_I2C_HID_OF_ELAN) += i2c-hid-of-elan.o 14 obj-$(CONFIG_I2C_HID_OF_GOODIX) += i2c-hid-of-goodix.o
|
| H A D | i2c-hid-of-goodix.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Driver for Goodix touchscreens that use the i2c-hid protocol. 11 #include <linux/i2c.h> 18 #include "i2c-hid.h" 42 * We assert reset GPIO here (instead of during power-down) to ensure in goodix_i2c_hid_power_up() 46 if (ihid_goodix->no_reset_during_suspend) in goodix_i2c_hid_power_up() 47 gpiod_set_value_cansleep(ihid_goodix->reset_gpio, 1); in goodix_i2c_hid_power_up() 49 ret = regulator_enable(ihid_goodix->vdd); in goodix_i2c_hid_power_up() 53 ret = regulator_enable(ihid_goodix->vddio); in goodix_i2c_hid_power_up() 57 if (ihid_goodix->timings->post_power_delay_ms) in goodix_i2c_hid_power_up() [all …]
|
| /linux/Documentation/devicetree/bindings/input/ |
| H A D | hid-over-i2c.yaml | 1 # SPDX-License-Identifier: GPL-2.0-only 3 --- 4 $id: http://devicetree.org/schemas/input/hid-over-i2c.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: HID over I2C Devices 10 - Benjamin Tissoires <benjamin.tissoires@redhat.com> 11 - Jiri Kosina <jkosina@suse.cz> 14 HID over I2C provides support for various Human Interface Devices over the 15 I2C bus. These devices can be for example touchpads, keyboards, touch screens 19 https://msdn.microsoft.com/en-us/library/windows/hardware/hh852380.aspx [all …]
|
| H A D | elan,ekth6915.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Elan I2C-HID touchscreen controllers 10 - Douglas Anderson <dianders@chromium.org> 13 Supports the Elan eKTH6915 and other I2C-HID touchscreen controllers. 14 These touchscreen controller use the i2c-hid protocol with a reset GPIO. 17 - $ref: /schemas/input/touchscreen/touchscreen.yaml# 22 - items: 23 - enum: [all …]
|
| /linux/arch/arm64/boot/dts/mediatek/ |
| H A D | mt8173-elm-hana.dtsi | 1 // SPDX-License-Identifier: GPL-2.0-only 6 #include "mt8173-elm.dtsi" 9 clock-frequency = <200000>; 16 interrupts-extended = <&pio 88 IRQ_TYPE_LEVEL_LOW>; 17 status = "fail-needs-probe"; 22 * Gen (MTK) are using synaptics touchscreen (hid-over-i2c driver) as a 26 compatible = "hid-over-i2c"; 28 hid-descr-addr = <0x0020>; 29 interrupts-extended = <&pio 88 IRQ_TYPE_LEVEL_LOW>; 30 status = "fail-needs-probe"; [all …]
|
| H A D | mt8183-kukui-jacuzzi-pico.dts | 1 // SPDX-License-Identifier: (GPL-2.0 OR MIT) 6 /dts-v1/; 7 #include "mt8183-kukui-jacuzzi.dtsi" 8 #include "mt8183-kukui-audio-ts3a227e-max98357a.dtsi" 12 chassis-type = "convertible"; 13 compatible = "google,pico-sku1", "google,pico", "mediatek,mt8183"; 17 google,remote-bus = <0>; 21 i2c-scl-internal-delay-ns = <25000>; 24 compatible = "hid-over-i2c"; 26 hid-descr-addr = <0x20>; [all …]
|
| /linux/drivers/hid/ |
| H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 3 # HID driver configuration 6 bool "HID bus support" 10 This option adds core support for human interface device (HID). 15 config HID config 16 tristate "HID bus core support" 20 A human interface device (HID) is a type of computer device that 21 interacts directly with and takes input from humans. The term "HID" 22 most commonly used to refer to the USB-HID specification, but other 24 designed using HID specification (this involves certain keyboards, [all …]
|
| H A D | hid-ft260.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * hid-ft260.c - FTDI FT260 USB HID to I2C host bridge 11 #include "hid-ids.h" 13 #include <linux/i2c.h> 32 #define FT260_I2C_DATA_REPORT_ID(len) (FT260_I2C_REPORT_MIN + (len - 1) / 4) 39 * reports. To achieve better performance with the multi-report read data 41 * With a 100 kHz I2C clock, one 240 bytes read takes about 1/27 second, 43 * or optoe limit the i2c reads to 128 bytes. To not block other drivers out 44 * of I2C for potentially troublesome amounts of time, we select the maximum 53 * First implementes USB HID to I2C bridge function and [all …]
|
| H A D | hid-goodix-spi.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * Goodix GT7986U SPI Driver Code for HID. 9 #include <linux/hid.h> 96 struct hid_device *hid; member 103 /* lock for hid raw request operation */ 105 /* buffer used to store hid report event */ 115 struct spi_device *spi = to_spi_device(&ts->spi->dev); in goodix_get_event_report() 133 dev_err(ts->dev, "spi transfer error: %d", error); in goodix_get_event_report() 143 struct spi_device *spi = to_spi_device(&ts->spi->dev); in goodix_spi_read() 148 if (GOODIX_SPI_READ_PREFIX_LEN + len > sizeof(ts->xfer_buf)) { in goodix_spi_read() [all …]
|
| /linux/Documentation/hid/ |
| H A D | hid-transport.rst | 2 HID I/O Transport Drivers 5 The HID subsystem is independent of the underlying transport driver. Initially, 6 only USB was supported, but other specifications adopted the HID design and 8 Bluetooth, I2C and user-space I/O drivers. 10 1) HID Bus 13 The HID subsystem is designed as a bus. Any I/O subsystem may provide HID 14 devices and register them with the HID bus. HID core then loads generic device 16 transport and device setup/management. HID core is responsible for 17 report-parsing, report interpretation and the user-space API. Device specifics 22 +-----------+ +-----------+ +-----------+ +-----------+ [all …]
|
| H A D | intel-thc-hid.rst | 1 .. SPDX-License-Identifier: GPL-2.0 10 - A natively half-duplex Quad I/O capable SPI master 11 - Low latency I2C interface to support HIDI2C compliant devices 12 - A HW sequencer with RW DMA capability to system memory 16 bandwidth DMA services to the touch driver and transfers the HID report to host system main memory. 22 Unlike other common SPI/I2C controllers, THC handles the HID device data interrupt and reset 29 ------------------------------- 31 Below diagram illustrates the high-level architecture of THC software/hardware stack, which is fully 36 ---------------------------------------------- 37 | +-----------------------------------+ | [all …]
|
| H A D | hid-sensor.rst | 2 HID Sensors Framework 4 HID sensor framework provides necessary interfaces to implement sensor drivers, 5 which are connected to a sensor hub. The sensor hub is a HID device and it provides 6 a report descriptor conforming to HID 1.12 sensor usage tables. 8 Description from the HID 1.12 "HID Sensor Usages" specification: 9 "Standardization of HID usages for sensors would allow (but not require) sensor 26 Logical Minimum(-32767) 35 The report is indicating "sensor page (0x20)" contains an accelerometer-3D (0x73). 36 This accelerometer-3D has some fields. Here for example field 2 is motion intensity 37 (0x045f) with a logical minimum value of -32767 and logical maximum of 32767. The [all …]
|
| /linux/arch/arm64/boot/dts/qcom/ |
| H A D | msm8998-asus-novago-tp370ql.dts | 1 // SPDX-License-Identifier: GPL-2.0 4 /dts-v1/; 6 #include "msm8998-clamshell.dtsi" 10 compatible = "asus,novago-tp370ql", "qcom,msm8998"; 11 chassis-type = "convertible"; 18 compatible = "hid-over-i2c"; 20 pinctrl-names = "default"; 21 pinctrl-0 = <&touchpad>; 23 interrupt-parent = <&tlmm>; 26 hid-descr-addr = <0x0001>; [all …]
|
| H A D | msm8998-lenovo-miix-630.dts | 1 // SPDX-License-Identifier: GPL-2.0 4 /dts-v1/; 6 #include <dt-bindings/pinctrl/qcom,pmic-gpio.h> 7 #include "msm8998-clamshell.dtsi" 11 compatible = "lenovo,miix-630", "qcom,msm8998"; 12 chassis-type = "convertible"; 14 gpio-keys { 15 compatible = "gpio-keys"; 18 pinctrl-0 = <&vol_up_pin_a>; 19 pinctrl-names = "default"; [all …]
|
| H A D | sc7280-crd-r3.dts | 1 // SPDX-License-Identifier: BSD-3-Clause 8 /dts-v1/; 10 #include "sc7280-idp.dtsi" 11 #include "sc7280-idp-ec-h1.dtsi" 14 model = "Qualcomm Technologies, Inc. sc7280 CRD platform (rev3 - 4)"; 15 compatible = "qcom,sc7280-crd", 16 "google,hoglin-rev3", "google,hoglin-rev4", 17 "google,piglin-rev3", "google,piglin-rev4", 25 stdout-path = "serial0:115200n8"; 30 regulators-2 { [all …]
|
| /linux/drivers/iio/humidity/ |
| H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 9 depends on I2C 30 depends on I2C 41 depends on I2C 54 depends on I2C 64 depends on I2C 75 tristate "HID Environmental humidity sensor" 81 Say yes here to build support for the HID SENSOR 85 will be called hid-sensor-humidity. 89 depends on (I2C || SPI) [all …]
|
| /linux/drivers/hid/intel-thc-hid/ |
| H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0 4 menu "Intel THC HID Support" 13 is comprised of 3 key functional blocks: A natively half-duplex 14 Quad I/O capable SPI master; a low latency I2C interface to support 25 HIDSPI (HID over SPI) protocol. It configures THC to work at SPI 36 HIDI2C (HID over I2C) protocol. It configures THC to work in I2C
|
| /linux/drivers/iio/pressure/ |
| H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 11 depends on I2C 20 tristate "ROHM BM1390GLV-Z pressure sensor driver" 21 depends on I2C 26 Support for the ROHM BM1390 pressure sensor. The BM1390GLV-Z 33 depends on (I2C || SPI_MASTER) 35 select BMP280_I2C if (I2C) 45 will be called bmp280 and you will also get bmp280-i2c for I2C 46 and/or bmp280-spi for SPI support. 51 depends on I2C [all …]
|
| /linux/drivers/staging/greybus/ |
| H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0 12 will be called gb-audio.ko 20 bridge from an APB-I2S port to a Unipro network. 23 will be called gb-audio-codec.ko 33 will be called gb-bootrom.ko 43 will be called gb-camera.ko 53 will be called gb-firmware.ko 56 tristate "Greybus HID Class driver" 57 depends on HID && INPUT 60 Greybus HID Class specification. [all …]
|
| H A D | Makefile | 1 # SPDX-License-Identifier: GPL-2.0 3 ccflags-y += -I$(src) 6 gb-bootrom-y := bootrom.o 7 gb-camera-y := camera.o 8 gb-firmware-y := fw-core.o fw-download.o fw-management.o authentication.o 9 gb-spilib-y := spilib.o 10 gb-hid-y := hid.o 11 gb-light-y := light.o 12 gb-log-y := log.o 13 gb-loopback-y := loopback.o [all …]
|
| /linux/drivers/hid/intel-thc-hid/intel-quicki2c/ |
| H A D | quicki2c-dev.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 7 #include <linux/hid-over-i2c.h> 72 * struct quicki2c_subip_acpi_parameter - QuickI2C ACPI DSD parameters 73 * @device_address: I2C device slave address 74 * @connection_speed: I2C device expected connection speed 75 * @addressing_mode: I2C device slave address mode, 7bit or 10bit 88 * struct quicki2c_subip_acpi_config - QuickI2C ACPI DSD parameters 114 * I2C timing configure. 147 * struct quicki2c_ddata - Driver specific data for quicki2c device 163 * struct quicki2c_device - THC QuickI2C device struct [all …]
|
| /linux/Documentation/driver-api/ |
| H A D | ipmb.rst | 6 I2C bus that provides a standardized interconnection between 15 hot-swapping disk drivers in the system chassis, etc... 27 ---------------------------- 29 ipmb-dev-int - This is the driver needed on a Satellite MC to 31 This driver works with the I2C driver and a userspace 34 1) It is an I2C slave backend driver. So, it defines a callback 35 function to set the Satellite MC as an I2C slave. 43 -------------------- 55 Name (_HID, "<Vendor-Specific HID>") // Vendor-Specific HID 72 compatible = "ipmb-dev"; [all …]
|
| /linux/drivers/platform/chrome/ |
| H A D | chromeos_laptop.c | 1 // SPDX-License-Identifier: GPL-2.0+ 2 // Driver to instantiate Chromebook i2c/smbus devices. 11 #include <linux/i2c.h> 33 "Synopsys DesignWare I2C adapter", 61 char hid[ACPI_ID_LEN]; member 69 * i2c_new_scanned_device() changes passed in I2C board info, so. 85 const unsigned short addr_list[] = { info->addr, I2C_CLIENT_END }; in chromes_laptop_instantiate_i2c_device() 89 * Add the i2c device. If we can't detect it at the primary in chromes_laptop_instantiate_i2c_device() 96 I2C_BOARD_INFO("dummy", info->addr), in chromes_laptop_instantiate_i2c_device() 106 pr_debug("%d-%02x is probed at %02x\n", in chromes_laptop_instantiate_i2c_device() [all …]
|
| /linux/Documentation/driver-api/surface_aggregator/ |
| H A D | overview.rst | 1 .. SPDX-License-Identifier: GPL-2.0+ 10 its responsibilities and feature-set have since been expanded significantly 23 sensors (e.g. skin temperature) and cooling/performance-mode setting to the 27 and 2 it is required for keyboard HID input. This HID subsystem has been 29 Laptop 3 and Surface Book 3, is responsible for all major HID input (i.e. 36 SAN), translating ACPI generic serial bus write-/read-accesses to SAM 40 harder to discover and requiring us to hard-code a sort of device registry. 50 communicate via HID, specifically using a HID-over-I2C device, whereas on 55 SAM-over-SSH and SAM-over-HID. 57 Currently, this subsystem only supports SAM-over-SSH. The SSH communication [all …]
|