From nobody Tue Apr 7 13:47:49 2026 Received: from mail-wm1-f54.google.com (mail-wm1-f54.google.com [209.85.128.54]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 3F90F392821 for ; Wed, 25 Feb 2026 10:11:20 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.54 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772014285; cv=none; b=MoRlv9AOG3/ypSr+KQ3y+kZtaVdgkwWO3PVBnWdPT1K6pNaB73cx+ZkfKLV97QI7DeGRHmMgw6hvNzTgW/vfU1QQkITOfVwhApybTgqBgRrJM75eYb6EFbE/Hx5QidOjuAGtBr+VMd9aK4IBHUUcbiMOWe6riBvI3BSsB3sFeL4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772014285; c=relaxed/simple; bh=aBIjT8HJMfYZDveJouRj4sa520yQuhHwAmIb09eSjwY=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=QQoUZjFbhXh66MAJTTIaTZ/pl9jCIdX8YdkfiwT+ApH61POttvkZclQ4oaoZHdDVVzAsm5isZcxIoJIIc/9MfdrycVN0/q1Vh4F7Uha5BJtpLnk06QmOqRloNWZb9lWqleNZ4wJS8Vb1ip6Z2laYp8XiQlGjHQkFkfsFPQAZhy8= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=baylibre.com; spf=pass smtp.mailfrom=baylibre.com; dkim=pass (2048-bit key) header.d=baylibre-com.20230601.gappssmtp.com header.i=@baylibre-com.20230601.gappssmtp.com header.b=VcXXb2HA; arc=none smtp.client-ip=209.85.128.54 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=baylibre.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=baylibre.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=baylibre-com.20230601.gappssmtp.com header.i=@baylibre-com.20230601.gappssmtp.com header.b="VcXXb2HA" Received: by mail-wm1-f54.google.com with SMTP id 5b1f17b1804b1-483770e0b25so58061145e9.0 for ; Wed, 25 Feb 2026 02:11:20 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=baylibre-com.20230601.gappssmtp.com; s=20230601; t=1772014278; x=1772619078; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=RHmHZviAuhOhpKSUpCtTa1iFHF2rU7EWwgoioRxdGwg=; b=VcXXb2HA0DPZgV7hLbmEfIziBEz1bPQr4I/zaSvXo+4Hev6wtbLCnaKsNbzA5qKRps aT20Q81o83AJrNrvUc/K1pxNMjT2e+gfYUmrygBAIbqlzZtv8WcaVuqwjgT/ajPteOUp 3JLJG1DmSKEdVht37niVRDZzzgTUQ9sk1vJ8LgGEBnScJhCHDlLnH4BCwenYH7nGUxiY 7XE7zEXJnVWNZGdQPBjcZrEpNX07BZkeSy6NRFr/0JK8mJF2oQYefCfWOS8RlKlaVHYO hQEdMKPgQ3C+EG/hory5jqI/dzdyq/fmMYZPPq6P9YB2xcUYAheVUhKeoVNhC7KgOmWa 2PwA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1772014278; x=1772619078; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=RHmHZviAuhOhpKSUpCtTa1iFHF2rU7EWwgoioRxdGwg=; b=lV79IBe9s4nUc9RfUekOYaJTtkp6v+An9rR2pYVlptLWRqRMC+sYJgSc6RQUpiHaSu loi64gpaFRJp4B2FxdtHwhv2eEEFTDvKNMFR6rPo5x1s9KyLXCTol6O1aNpp2rXF4KJb epTQVYBlTLHM2x89JMVqVjHyD3pzOtwb/jkl0vI58YTGyX+3m9YHIVPRJtjow2PXa71+ X7hU3HBw+DQR6AI+zqoMMXHNZ3eWzIoBVWS0BCTwZi8ZSxAbsz8VPECp8BJwhTJh5kqJ h4Hw3GekxFBH9ZI0zHWx20aH2z6BHxGtKcgRCA7pjZMLqRxpv+kWQLzsPALzMYZ0KSv1 K6oQ== X-Forwarded-Encrypted: i=1; AJvYcCWGaqGuYGjchqyCn0NzItSQrGn5c69VL3lBaZ8hJYl0ddS4gmsXy4Fn8PtEwHlsQhvcLG3Zp6vTh2vK9pA=@vger.kernel.org X-Gm-Message-State: AOJu0YxliFbYhg3tIIJWYxub8SPKoMZtIAZsQxlMl3NmE7m0LJ2hZwOh P3gGEQwEd40kzTaSjF9EbnKPVrtWjHLKx/SSf0H8l6hw+VwK1FZsJz9wqXRuyBQuWNY= X-Gm-Gg: ATEYQzyMDT7AT+WQ/Ond7dZdBzrjlA5r9MLql+pEBKNGL2BUKV8j9Ih21VUd05G5IzU xR43WDmNV28/XIHakzpj0jRNQKFJt5lV8tg8MbgW9e7w5HfHjXh4mtZ1EPNgJdNqDnLoeiMp/0g TIMDx3io58Bys+JbqmSRKO4IPGMNtJ+bJalTVO0VrhAZhqlSzvd+nMQzJIVVIsFtr8Y+he/EeUM lyhAwLU7Ypa1jj3aEaYrb/Sj9hku2Koqea0E0f4TmheLc67leXPz5ycHiKV2KeKhqW6PZqCB8fd dfkswpkx6XiRNsntwXxSV5VPxBk/au0DkgyPFnWIO4bI8LpOhyTGIRBxqt+6cXFqMaf0qap98hu 6psr81uyptTWSPIAO62V5n7rL8mngExMvvfMV0pe+/U40P2Lhq8TNoSHyvkrryW1BxTHGGCLAdc 5ukV2j1eeybHH2Hw== X-Received: by 2002:a05:600c:6217:b0:471:14af:c715 with SMTP id 5b1f17b1804b1-483a95eb550mr234842935e9.3.1772014278402; Wed, 25 Feb 2026 02:11:18 -0800 (PST) Received: from localhost ([151.35.220.155]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-483bd6f19d6sm61115015e9.2.2026.02.25.02.11.17 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 25 Feb 2026 02:11:18 -0800 (PST) From: Francesco Lavra To: Lorenzo Bianconi , Jonathan Cameron , David Lechner , =?UTF-8?q?Nuno=20S=C3=A1?= , Andy Shevchenko Cc: Lorenzo Bianconi , Jonathan Cameron , linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH v6 1/7] iio: imu: st_lsm6dsx: Set FIFO ODR for accelerometer and gyroscope only Date: Wed, 25 Feb 2026 11:11:17 +0100 Message-Id: <20260225101117.2367725-1-flavra@baylibre.com> X-Mailer: git-send-email 2.39.5 In-Reply-To: <20260225100421.2366864-1-flavra@baylibre.com> References: <20260225100421.2366864-1-flavra@baylibre.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-Developer-Signature: v=1; a=openpgp-sha256; l=1747; i=flavra@baylibre.com; h=from:subject; bh=aBIjT8HJMfYZDveJouRj4sa520yQuhHwAmIb09eSjwY=; b=owEB7QES/pANAwAKAe3xO3POlDZfAcsmYgBpnsrEKHlBS2+YWZdjOWGvX/xqPbpahixKnyHdW ADRDgnr6CSJAbMEAAEKAB0WIQSGV4VPlTvcox7DFObt8TtzzpQ2XwUCaZ7KxAAKCRDt8TtzzpQ2 X4IdDACwcFakHxGhyeruPzOvOIecz8RZYgU0hftyD+MA7TKyz82erqakc376M0BnhZiY2DNJi+Q yeD8OzoDUFtsHVIRZvmv/o7+bA9CaOkYY/uIVQP71kD94kioSZVQdxV6KbjCozqEcrkWIckJFkJ 8LlLKm1sVmtp74Balkf8J5n2J1/Z4Ngg+mLjFXO0+/xnXQuqlmQFVViA0cWYYwtpXxZ+KZp77HT futRXa7FZ3xZCPUb9HoFUHjkPgf5jQC5dh/oz2xJGqfLwThuCpp3bq0RLawU5H/XE7U5DZ6RPjq ck4s+r9nKWDbZKRAofCUyA1EWoU6/t6pfxYUs5SNrF89/x6xvFG12f0hqRaugYD86XuU8mVT/Bk zXQprGqLGkjQLDxXwqteu/Mnvn/Td8wjUpwi7IDfFm5w2CxDfAXdF8qLp7UsvUP+wb147dLPejl qONm+TgDR+/CNbEahFEMuCGr8hbYvIsYJCCgZVAa/t62dZIHdKADSP4Q6NIOlJgG1EVKs= X-Developer-Key: i=flavra@baylibre.com; a=openpgp; fpr=8657854F953BDCA31EC314E6EDF13B73CE94365F Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" The st_lsm6dsx_set_fifo_odr() function, which is called when enabling and disabling the hardware FIFO, checks the contents of the hw->settings->batch array at index sensor->id, and then sets the current ODR value in sensor registers that depend on whether the register address is set in the above array element. This logic is valid for internal sensors only, i.e. the accelerometer and gyroscope; however, since commit c91c1c844ebd ("iio: imu: st_lsm6dsx: add i2c embedded controller support"), this function is called also when configuring the hardware FIFO for external sensors (i.e. sensors accessed through the sensor hub functionality), which can result in unrelated device registers being written. Add a check to the beginning of st_lsm6dsx_set_fifo_odr() so that it does not touch any registers unless it is called for internal sensors. Fixes: c91c1c844ebd ("iio: imu: st_lsm6dsx: add i2c embedded controller sup= port") Signed-off-by: Francesco Lavra --- drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_buffer.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_buffer.c b/drivers/iio/i= mu/st_lsm6dsx/st_lsm6dsx_buffer.c index 55d877745575..1ee2fc5f5f1f 100644 --- a/drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_buffer.c +++ b/drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_buffer.c @@ -225,6 +225,10 @@ static int st_lsm6dsx_set_fifo_odr(struct st_lsm6dsx_s= ensor *sensor, const struct st_lsm6dsx_reg *batch_reg; u8 data; =20 + /* Only internal sensors have a FIFO ODR configuration register. */ + if (sensor->id >=3D ARRAY_SIZE(hw->settings->batch)) + return 0; + batch_reg =3D &hw->settings->batch[sensor->id]; if (batch_reg->addr) { int val; --=20 2.39.5