aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--drivers/staging/iio/Documentation/iio_utils.h31
1 files changed, 30 insertions, 1 deletions
diff --git a/drivers/staging/iio/Documentation/iio_utils.h b/drivers/staging/iio/Documentation/iio_utils.h
index 74d31247337..d24006aedd5 100644
--- a/drivers/staging/iio/Documentation/iio_utils.h
+++ b/drivers/staging/iio/Documentation/iio_utils.h
@@ -47,7 +47,7 @@ inline char *find_ring_subelement(const char *directory, const char *subelement)
char *find_type_by_name(const char *name, const char *type)
{
- const char *iio_dir = "/sys/class/iio/";
+ const char *iio_dir = "/sys/bus/iio/devices/";
const struct dirent *ent;
int cnt, pos, pos2;
@@ -112,6 +112,35 @@ int write_sysfs_int(char *filename, char *basedir, int val)
return 0;
}
+int write_sysfs_int_and_verify(char *filename, char *basedir, int val)
+{
+ int ret;
+ FILE *sysfsfp;
+ char temp[100];
+ int test;
+
+ sprintf(temp, "%s%s", basedir, filename);
+ sysfsfp = fopen(temp, "w");
+ if (sysfsfp == NULL)
+ return -1;
+ fprintf(sysfsfp, "%d", val);
+ fclose(sysfsfp);
+
+ sysfsfp = fopen(temp, "r");
+ if (sysfsfp == NULL)
+ return -1;
+ fscanf(sysfsfp, "%d", &test);
+ if (test != val) {
+ printf("Possible failure in int write %d to %s%s\n",
+ val,
+ basedir,
+ filename);
+ return -1;
+ }
+
+ return 0;
+}
+
/**
* write_sysfs_string_and_verify() - string write, readback and verify
* @filename: name of file to write to