IBASE MRS-801-RE User Manual

Page 79

Advertising
background image

Copyright © 2013 IBASE Technology Inc. All Rights Reserved.

71

IBASE Technology Inc.

name = strrchr(s, '\t');

*(name++) = '\0';

len_name = rtrim(name);

type = strrchr(s, '\t');

*(type++) = '\0';

len_type = rtrim(type);

sscanf(s, "i2c-%d", &i2cbus);

if ((count + 1) % BUNCH == 0) {

/* We need more space */

adapters = more_adapters(adapters, count + 1);

if (!adapters)

return NULL;

}

all = malloc(len_name + len_type + len_algo);

if (all == NULL) {

free_adapters(adapters);

return NULL;

}

adapters[count].nr = i2cbus;

adapters[count].name = strcpy(all, name);

adapters[count].funcs = strcpy(all + len_name, type);

adapters[count].algo = strcpy(all + len_name + len_type,

algo);

count++;

}

fclose(f);

goto done;

}

/* look in sysfs */

/* First figure out where sysfs was mounted */

if ((f = fopen("/proc/mounts", "r")) == NULL) {

goto done;

Advertising