Accessing I2C-Bus via ELV USB-I2C
Date: Wed, 27 Apr 2022 21:08:11 UTC
Next journey starts: For the home2l project, I need a supported I2C interface via USB. I got this one: https://de.elv.com/elv-usb-ic-interface-usb-i2c-092255?fs=1805459039 Unfortunately it shows up as a serial device on FreeBSD: ugen0.2: <Silicon Labs ELV USB-I2C-Interface> at usbus0, cfg=0 md=HOST spd=FULL (12Mbps) pwr=ON (500mA) bLength = 0x0012 bDescriptorType = 0x0001 bcdUSB = 0x0110 bDeviceClass = 0x0000 <Probed by interface class> bDeviceSubClass = 0x0000 bDeviceProtocol = 0x0000 bMaxPacketSize0 = 0x0040 idVendor = 0x10c4 idProduct = 0xea60 bcdDevice = 0x0100 iManufacturer = 0x0001 <Silicon Labs> iProduct = 0x0002 <ELV USB-I2C-Interface> iSerialNumber = 0x0003 <B5AAP0EEUK6A3CIZ> bNumConfigurations = 0x0001 In loader.conf, I have: uslcom_load="YES" iic_load="YES" iicbus_loa But the i2c utility does not show a new bus. From dmesg: root@axels-bsdbox:~ # dmesg | grep iic ig4iic0: <Intel Sunrise Point-H I2C Controller-0> mem 0xdf230000-0xdf230fff irq 16 at device 21.0 on pci0 ig4iic0: Using MSI iicbus0: <Philips I2C bus (ACPI-hinted)> on ig4iic0 iic0: <I2C generic I/O> on iicbus0 ig4iic1: <Intel Sunrise Point-H I2C Controller-1> mem 0xdf22f000-0xdf22ffff irq 17 at device 21.1 on pci0 ig4iic1: Using MSI iicbus1: <Philips I2C bus (ACPI-hinted)> on ig4iic1 iic1: <I2C generic I/O> on iicbus1 root@axels-bsdbox:~ # dmesg | grep I2C ig4iic0: <Intel Sunrise Point-H I2C Controller-0> mem 0xdf230000-0xdf230fff irq 16 at device 21.0 on pci0 iicbus0: <Philips I2C bus (ACPI-hinted)> on ig4iic0 iic0: <I2C generic I/O> on iicbus0 ig4iic1: <Intel Sunrise Point-H I2C Controller-1> mem 0xdf22f000-0xdf22ffff irq 17 at device 21.1 on pci0 iicbus1: <Philips I2C bus (ACPI-hinted)> on ig4iic1 iic1: <I2C generic I/O> on iicbus1 ugen0.2: <Silicon Labs ELV USB-I2C-Interface> at usbus0 uslcom0: <ELV USB-I2C-Interface> on usbus0 They provide a (linux) driver ("Treiber") which seems to implement the I2C protocoll on top of the serial interface. Do we have such a driver on FreeBSD, or exist other supported I2C devices to be plugged into USB? Any help appreciated, Axel -- PGP-Key: CDE74120 ☀ computing @ chaos claudius