[PATCH] iio: imu: st_lsm6dsx: limit variales scope reading hw FIFO

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Fix following cppcheck warnings reported by kbuild test robot

drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_buffer.c:313:15:
warning: The scope of the variable 'word_len' can be reduced. [variableScope]
                 ^
drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_buffer.c:314:6:
warning: The scope of the variable 'err' can be reduced. [variableScope]
        ^
drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_buffer.c:341:11:
warning: The scope of the variable 'sip' can be reduced. [variableScope]
             ^
drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_buffer.c:341:16:
warning: The scope of the variable 'acc_sip' can be reduced. [variableScope]
                  ^
drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_buffer.c:341:25:
warning: The scope of the variable 'gyro_sip' can be reduced. [variableScope]
                           ^
drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_buffer.c:341:35:
warning: The scope of the variable 'ts_sip' can be reduced. [variableScope]
                                     ^
drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_buffer.c:341:43:
warning: The scope of the variable 'ext_sip' can be reduced. [variableScope]
                                             ^
drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_buffer.c:341:62:
warning: The scope of the variable 'offset' can be reduced. [variableScope]

Reported-by: kbuild test robot <lkp@xxxxxxxxx>
Signed-off-by: Lorenzo Bianconi <lorenzo@xxxxxxxxxx>
---
 drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_buffer.c | 12 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)

diff --git a/drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_buffer.c b/drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_buffer.c
index afd00daeefb2..849f01fbe76c 100644
--- a/drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_buffer.c
+++ b/drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_buffer.c
@@ -310,10 +310,12 @@ static inline int st_lsm6dsx_read_block(struct st_lsm6dsx_hw *hw, u8 addr,
 					u8 *data, unsigned int data_len,
 					unsigned int max_word_len)
 {
-	unsigned int word_len, read_len = 0;
-	int err;
+	unsigned int read_len = 0;
 
 	while (read_len < data_len) {
+		unsigned int word_len;
+		int err;
+
 		word_len = min_t(unsigned int, data_len - read_len,
 				 max_word_len);
 		err = st_lsm6dsx_read_locked(hw, addr, data + read_len,
@@ -338,7 +340,6 @@ static inline int st_lsm6dsx_read_block(struct st_lsm6dsx_hw *hw, u8 addr,
 int st_lsm6dsx_read_fifo(struct st_lsm6dsx_hw *hw)
 {
 	struct st_lsm6dsx_sensor *acc_sensor, *gyro_sensor, *ext_sensor = NULL;
-	int err, sip, acc_sip, gyro_sip, ts_sip, ext_sip, read_len, offset;
 	u16 fifo_len, pattern_len = hw->sip * ST_LSM6DSX_SAMPLE_SIZE;
 	u16 fifo_diff_mask = hw->settings->fifo_ops.fifo_diff.mask;
 	u8 gyro_buff[ST_LSM6DSX_IIO_BUFF_SIZE];
@@ -346,6 +347,7 @@ int st_lsm6dsx_read_fifo(struct st_lsm6dsx_hw *hw)
 	u8 ext_buff[ST_LSM6DSX_IIO_BUFF_SIZE];
 	bool reset_ts = false;
 	__le16 fifo_status;
+	int err, read_len;
 	s64 ts = 0;
 
 	err = st_lsm6dsx_read_locked(hw,
@@ -370,6 +372,8 @@ int st_lsm6dsx_read_fifo(struct st_lsm6dsx_hw *hw)
 		ext_sensor = iio_priv(hw->iio_devs[ST_LSM6DSX_ID_EXT0]);
 
 	for (read_len = 0; read_len < fifo_len; read_len += pattern_len) {
+		int acc_sip, gyro_sip, ts_sip, ext_sip, offset = 0, sip = 0;
+
 		err = st_lsm6dsx_read_block(hw, ST_LSM6DSX_REG_FIFO_OUTL_ADDR,
 					    hw->buff, pattern_len,
 					    ST_LSM6DSX_MAX_WORD_LEN);
@@ -399,8 +403,6 @@ int st_lsm6dsx_read_fifo(struct st_lsm6dsx_hw *hw)
 		gyro_sip = gyro_sensor->sip;
 		acc_sip = acc_sensor->sip;
 		ts_sip = hw->ts_sip;
-		offset = 0;
-		sip = 0;
 
 		while (acc_sip > 0 || gyro_sip > 0 || ext_sip > 0) {
 			if (gyro_sip > 0 && !(sip % gyro_sensor->decimator)) {
-- 
2.25.2




[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Input]     [Linux Kernel]     [Linux SCSI]     [X.org]

  Powered by Linux