The header <linux/i2c.h> is provided by glibc and is needed from user-space
because it contains the definitions of e.g. I2C_TENBIT, I2C_SLAVE, ... However,
it contains many declarations and definitions that only make sense when included
from within the kernel, and that make no sense in user-space (e.g.
i2c_master_send(), struct i2c_driver). Additionally, user-space C source files
that include <linux/i2c.h> do not compile.
Summary: linux/i2c.h header contains kernel-only definitions
AssignedTo: drepper at redhat dot com
ReportedBy: bart dot vanassche at gmail dot com
CC: glibc-bugs at sources dot redhat dot com
GCC build triplet: x86_64-unknown-linux-gnu
GCC host triplet: x86_64-unknown-linux-gnu
GCC target triplet: x86_64-unknown-linux-gnu