Introducing libi2cd

Steven Stallion
2021-09-21T01:39:08Z

All,

Over the years, I've had the (mis)fortune of needing to write various
I2C userspace drivers. I've long enjoyed working with the i2c-dev uAPI,
but it does lead to a bit of repetitive code between projects and
testing system calls is cumbersome at best. I had some extra time this
summer to put together a small library in a similar vein to libgpiod to
help with these issues.

I was curious if there was any appetite for having these sources hosted
on kernel.org to reach a wider audience? I'd appreciate any feedback the
list may have!

If you're still interested, here is the introductory bit from the
README:

libi2cd provides a simple and straightforward API for accessing I2C
devices from userspace. It relies on the i2c-dev Linux kernel module and
is intended to complement existing tools and libraries, such as those
provided by i2c-tools. The design for libi2cd was inspired by libgpiod;
it provides both high- and low-level access to the underlying ioctl
requests and has no dependencies apart from the standard C library.

The project is licensed under the LGPL-2.1 and can be found on GitHub:
https://github.com/sstallion/libi2cd

API documentation can also be found on GitHub Pages:
https://sstallion.github.io/libi2cd/

Cheers,
Steve