summaryrefslogtreecommitdiffstats
path: root/libsensors_iio/software/core/mllite/linux/ml_sysfs_helper.c
diff options
context:
space:
mode:
Diffstat (limited to 'libsensors_iio/software/core/mllite/linux/ml_sysfs_helper.c')
-rw-r--r--libsensors_iio/software/core/mllite/linux/ml_sysfs_helper.c17
1 files changed, 12 insertions, 5 deletions
diff --git a/libsensors_iio/software/core/mllite/linux/ml_sysfs_helper.c b/libsensors_iio/software/core/mllite/linux/ml_sysfs_helper.c
index 5636a02..eca57c3 100644
--- a/libsensors_iio/software/core/mllite/linux/ml_sysfs_helper.c
+++ b/libsensors_iio/software/core/mllite/linux/ml_sysfs_helper.c
@@ -5,7 +5,6 @@
#include <ctype.h>
#define MPU_SYSFS_ABS_PATH "/sys/class/invensense/mpu"
-#define CHIP_NUM 4
enum PROC_SYSFS_CMD {
CMD_GET_SYSFS_PATH,
CMD_GET_DMP_PATH,
@@ -15,7 +14,13 @@ enum PROC_SYSFS_CMD {
CMD_GET_DEVICE_NODE
};
static char sysfs_path[100];
-static char *chip_name[CHIP_NUM] = {"ITG3500", "MPU6050", "MPU9150", "MPU3050"};
+static char *chip_name[] = {
+ "ITG3500",
+ "MPU6050",
+ "MPU9150",
+ "MPU3050",
+ "MPU6500"
+};
static int chip_ind;
static int initialized =0;
static int status = 0;
@@ -27,6 +32,8 @@ static int iio_dev_num = 0;
#define FORMAT_SCAN_ELEMENTS_DIR "%s/scan_elements"
#define FORMAT_TYPE_FILE "%s_type"
+#define CHIP_NUM ARRAY_SIZE(chip_name)
+
static const char *iio_dir = "/sys/bus/iio/devices/";
/**
@@ -93,7 +100,7 @@ int find_type_by_name(const char *name, const char *type)
*/
static int parsing_proc_input(int mode, char *name){
const char input[] = "/proc/bus/input/devices";
- char line[100], d;
+ char line[4096], d;
char tmp[100];
FILE *fp;
int i, j, result, find_flag;
@@ -394,7 +401,7 @@ inv_error_t inv_get_input_number(const char *name, int *num)
*/
inv_error_t inv_get_iio_trigger_path(const char *name)
{
- if (process_sysfs_request(CMD_GET_TRIGGER_PATH, name) < 0)
+ if (process_sysfs_request(CMD_GET_TRIGGER_PATH, (char *)name) < 0)
return INV_ERROR_NOT_OPENED;
else
return INV_SUCCESS;
@@ -409,7 +416,7 @@ inv_error_t inv_get_iio_trigger_path(const char *name)
*/
inv_error_t inv_get_iio_device_node(const char *name)
{
- if (process_sysfs_request(CMD_GET_DEVICE_NODE, name) < 0)
+ if (process_sysfs_request(CMD_GET_DEVICE_NODE, (char *)name) < 0)
return INV_ERROR_NOT_OPENED;
else
return INV_SUCCESS;