/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-core.c | 2 * HID over I2C protocol implementation 8 * This code is partly based on "USB HID support for Linux": 11 * Copyright (c) 2000-2005 Vojtech Pavlik <vojtech@suse.cz> 12 * Copyright (c) 2005 Michael Haboustak <mike-@cinci.rr.com> for Concept2, Inc 13 * Copyright (c) 2007-2008 Oliver Neukum 14 * Copyright (c) 2006-2010 Jiri Kosina 22 #include <linux/i2c.h> 37 #include <linux/hid.h> 43 #include "../hid-ids.h" 44 #include "i2c-hid.h" [all …]
|
H A D | i2c-hid-acpi.c | 2 * HID over I2C ACPI Subclass 9 * "USB HID support for Linux": 12 * Copyright (c) 2000-2005 Vojtech Pavlik <vojtech@suse.cz> 13 * Copyright (c) 2005 Michael Haboustak <mike-@cinci.rr.com> for Concept2, Inc 14 * Copyright (c) 2007-2008 Oliver Neukum 15 * Copyright (c) 2006-2010 Jiri Kosina 24 #include <linux/i2c.h> 30 #include "i2c-hid.h" 40 * ICN8505 controller, has a _CID of PNP0C50 but is not HID compatible. 51 /* HID I²C Device: 3cdff6f7-4267-4555-ad05-b30a3d8938de */ [all …]
|
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 …]
|
H A D | i2c-hid-of-elan.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Driver for Elan touchscreens that use the i2c-hid protocol. 11 #include <linux/i2c.h> 18 #include "i2c-hid.h" 44 gpiod_set_value_cansleep(ihid_elan->reset_gpio, 1); in elan_i2c_hid_power_up() 46 if (ihid_elan->vcc33) { in elan_i2c_hid_power_up() 47 ret = regulator_enable(ihid_elan->vcc33); in elan_i2c_hid_power_up() 52 ret = regulator_enable(ihid_elan->vccio); in elan_i2c_hid_power_up() 56 if (ihid_elan->chip_data->post_power_delay_ms) in elan_i2c_hid_power_up() 57 msleep(ihid_elan->chip_data->post_power_delay_ms); in elan_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 …]
|
/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 …]
|
/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/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 | 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/drivers/platform/x86/ |
H A D | asus-tf103c-dock.c | 1 // SPDX-License-Identifier: GPL-2.0+ 4 * keyboard dock for the Asus TF103C 2-in-1 tablet. 6 * This keyboard dock has its own I2C attached embedded controller 7 * and the keyboard and touchpad are also connected over I2C, 19 #include <linux/hid.h> 20 #include <linux/i2c.h> 35 "can be pressed to change this to F1-F12. Set this to 1 to " 42 /*** Touchpad I2C device defines ***/ 45 /*** Keyboard I2C device defines **A*/ 57 /*** EC innterrupt data I2C device defines ***/ [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 | 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 …]
|
H A D | sdm850-lenovo-yoga-c630.dts | 1 // SPDX-License-Identifier: BSD-3-Clause 8 /dts-v1/; 10 #include <dt-bindings/input/gpio-keys.h> 11 #include <dt-bindings/input/input.h> 12 #include <dt-bindings/regulator/qcom,rpmh-regulator.h> 13 #include <dt-bindings/sound/qcom,q6afe.h> 14 #include <dt-bindings/sound/qcom,q6asm.h> 16 #include "sdm845-wcd9340.dtsi" 24 /delete-node/ &ipa_fw_mem; 25 /delete-node/ &ipa_gsi_mem; [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/acpi/x86/ |
H A D | utils.c | 1 // SPDX-License-Identifier: GPL-2.0-only 8 * Copyright (C) 2013-2015 Intel Corporation. All rights reserved. 18 #include <asm/intel-family.h> 22 * Some ACPI devices are hidden (status == 0x0) in recent BIOS-es because 26 * Some BIOS-es (temporarily) hide specific APCI devices to work around Windows 29 * Likewise sometimes some not-actually present devices are sometimes 38 * are re-used on different SoCs for completely different devices. 41 struct acpi_device_id hid[2]; member 49 #define ENTRY(status, hid, uid, path, cpu_vfm, dmi...) { \ argument 50 { { hid, }, {} }, \ [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/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/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 …]
|