The FT260 is a USB device that implements USB to I2C/UART bridges through two USB HID class interfaces. The first - for I2C, and the second for UART. Each interface is independent, and the kernel detects it as a separate hidraw device.
This commit adds I2C host adapter support, enabling a wide range of standard userspace tools and applications that do not implement HID protocol, to access the I2C client devices via FT260 I2C controller. The driver was tested with different I2C client devices, Linux kernels, and Linux userspace tools. For data transfer, the FT260 implements one Interrupt IN and one Interrupt OUT pipes per interface. For configuration and control, the FT260 exposes the HID class commands through the Control pipe. Commands and responses are FT260 specific and documented in the AN_394_User_Guide_for_FT260.pdf on the https://www.ftdichip.com. Michael Zaidman (1): HID: ft260: add usb hid to i2c host bridge driver MAINTAINERS | 7 + drivers/hid/Kconfig | 11 + drivers/hid/Makefile | 2 + drivers/hid/hid-ft260.c | 1097 +++++++++++++++++++++++++++++++++++++++ drivers/hid/hid-ids.h | 1 + 5 files changed, 1118 insertions(+) create mode 100644 drivers/hid/hid-ft260.c base-commit: 07f7e57c63aaa2afb4ea31edef05e08699a63a00 -- 2.25.1