The read_info_from_dirent does no longer rely on the regulators_info
global variable.

Signed-off-by: Daniel Lezcano <daniel.lezc...@free.fr>
---
 regulator.c |   33 ++++++++++++++++++---------------
 1 files changed, 18 insertions(+), 15 deletions(-)

diff --git a/regulator.c b/regulator.c
index ddbeea3..fc40f27 100644
--- a/regulator.c
+++ b/regulator.c
@@ -113,38 +113,39 @@ void regulator_print_info(struct regulator_info 
*reg_info, int verbose)
        printf("\n\n");
 }
 
-static void read_info_from_dirent(struct dirent *ritem, char *str, int idx)
+static void read_info_from_dirent(struct regulator_info *reg_info,
+                                 struct dirent *ritem, char *str, int idx)
 {
        if (!strcmp(ritem->d_name, "name"))
-               strcpy(regulators_info[idx].name, str);
+               strcpy(reg_info[idx].name, str);
        if (!strcmp(ritem->d_name, "state"))
-               strcpy(regulators_info[idx].state, str);
+               strcpy(reg_info[idx].state, str);
        if (!strcmp(ritem->d_name, "status"))
-               strcpy(regulators_info[idx].status, str);
+               strcpy(reg_info[idx].status, str);
 
        if (!strcmp(ritem->d_name, "type"))
-               strcpy(regulators_info[idx].type, str);
+               strcpy(reg_info[idx].type, str);
        if (!strcmp(ritem->d_name, "opmode"))
-               strcpy(regulators_info[idx].opmode, str);
+               strcpy(reg_info[idx].opmode, str);
 
        if (!strcmp(ritem->d_name, "microvolts"))
-               regulators_info[idx].microvolts = atoi(str);
+               reg_info[idx].microvolts = atoi(str);
        if (!strcmp(ritem->d_name, "min_microvolts"))
-               regulators_info[idx].min_microvolts = atoi(str);
+               reg_info[idx].min_microvolts = atoi(str);
        if (!strcmp(ritem->d_name, "max_microvolts"))
-               regulators_info[idx].max_microvolts = atoi(str);
+               reg_info[idx].max_microvolts = atoi(str);
 
        if (!strcmp(ritem->d_name, "microamps"))
-               regulators_info[idx].microamps = atoi(str);
+               reg_info[idx].microamps = atoi(str);
        if (!strcmp(ritem->d_name, "min_microamps"))
-               regulators_info[idx].min_microamps = atoi(str);
+               reg_info[idx].min_microamps = atoi(str);
        if (!strcmp(ritem->d_name, "max_microamps"))
-               regulators_info[idx].max_microamps = atoi(str);
+               reg_info[idx].max_microamps = atoi(str);
        if (!strcmp(ritem->d_name, "requested_microamps"))
-               regulators_info[idx].requested_microamps = atoi(str);
+               reg_info[idx].requested_microamps = atoi(str);
 
        if (!strcmp(ritem->d_name, "num_users"))
-               regulators_info[idx].num_users = atoi(str);
+               reg_info[idx].num_users = atoi(str);
 }
 
 int regulator_read_info(void)
@@ -192,7 +193,9 @@ int regulator_read_info(void)
                        fclose(file);
                        if (!fptr)
                                continue;
-                       read_info_from_dirent(ritem, fptr, count - 1);
+
+                       read_info_from_dirent(regulators_info, ritem,
+                                             fptr, count - 1);
                }
        exit:
                closedir(dir);
-- 
1.7.1


_______________________________________________
linaro-dev mailing list
linaro-dev@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-dev

Reply via email to