[Nut-upsdev] [PATCH] Support for ASEM UPS on Linux/i2c

Charles Lepple clepple at gmail.com
Mon Jul 7 23:02:43 UTC 2014

On Jul 7, 2014, at 10:10 AM, Giuseppe Corbelli <giuseppe.corbelli at copanitalia.com> wrote:

> On 07/07/2014 15:03, Charles Lepple wrote:
>> Giuseppe Corbelli <giuseppe.corbelli <at> copanitalia.com> writes:
>>> Nevermind, please try the one attached, just created by
>>> git diff -p 80d9534 configure.ac data/driver.list.in drivers/Makefile.am
>>> drivers/asem.c > asem.patch
>>> Just applied it on current master (80d9534a133da170cade150700407920450a9753)
>>> and seems ok.
>> Sorry I did not test this sooner - this went to Gmane but not to my email.
>> If you have time, could you please write up a quick man page for this driver?
>> Also, there seem to be some missing symbols and include files:
>> http://buildbot.networkupstools.org/public/nut/waterfall?branch=asem_i2c
> The problem is that linux/i2c-dev.h must come from libi2c-dev to define the required functions. Same header is part of the kernel, but without required functions. Changed the configure.ac check to look for the functions, not just the header.
> To build the driver you'll need libi2c-dev package (part of i2c-tools) on debian.

libi2c-dev is now installed on the ubuntu-trusty builder.

configure:10067: checking whether i2c_smbus_read_word_data is declared
configure:10067: gcc -c -g -O2 -Wall -Wsign-compare  conftest.c >&5
In file included from conftest.c:72:0:
/usr/include/linux/i2c-dev.h: In function 'i2c_smbus_write_quick':
/usr/include/linux/i2c-dev.h:176:55: error: 'NULL' undeclared (first use in this function)
  return i2c_smbus_access(file,value,0,I2C_SMBUS_QUICK,NULL);
/usr/include/linux/i2c-dev.h:176:55: note: each undeclared identifier is reported only once for each function it appears in
/usr/include/linux/i2c-dev.h: In function 'i2c_smbus_write_byte':
/usr/include/linux/i2c-dev.h:191:41: error: 'NULL' undeclared (first use in this function)


Charles Lepple
clepple at gmail

More information about the Nut-upsdev mailing list