From nobody Mon Feb 9 01:46:16 2026 Received: from mail-wm1-f53.google.com (mail-wm1-f53.google.com [209.85.128.53]) (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 323B03A7F40 for ; Wed, 21 Jan 2026 11:28:04 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.53 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768994890; cv=none; b=OIMzGopEBgHtfXvRLwS4OcplszWbO1YPFEZN7CCf1En8KH57nxFyOTEH9fdtHg/UJZZDP03CrdjGzBe3yPrRPnaNjOhTlpg/tAlnT8GzQFEJrIZt08akvKi0nKe78+3AkEutw8pRNUJGhn1I0taGoKfvio9KH1uofv5qXpXeHBQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768994890; c=relaxed/simple; bh=aBIjT8HJMfYZDveJouRj4sa520yQuhHwAmIb09eSjwY=; h=From:To:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=B2SQINZBtOJJrIy2llxBEJi2dgJQy6cpsK8OWP0njhsqWgnXHOobFYgtGkOCs34yFwbNMvaqhfEPcF8/g4FDCq5xGiWIOw3ZRbjEyj9/FzQLBfNMs8ov+QYo0fRZvurtAAmDfPf87ChxoizS3wYAXxVHNx72LuOJEFzN6YLlDyM= 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=KSl8BK9g; arc=none smtp.client-ip=209.85.128.53 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="KSl8BK9g" Received: by mail-wm1-f53.google.com with SMTP id 5b1f17b1804b1-4801d7c72a5so36431135e9.0 for ; Wed, 21 Jan 2026 03:28:03 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=baylibre-com.20230601.gappssmtp.com; s=20230601; t=1768994881; x=1769599681; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:from:to:cc:subject:date:message-id :reply-to; bh=RHmHZviAuhOhpKSUpCtTa1iFHF2rU7EWwgoioRxdGwg=; b=KSl8BK9gcJkSKmrqq3WFUUCtvw2Wtrsdh45wtM9NPfEfn57NEBqC14Y74HGLlsrcS1 wu2PbiFRMFUGni932D9hmzML30R4L9GTwzIWDDBfmJlF5zCrByfs9gMCUoaN29Tjo8I1 GqAyw3sxBp2lqquEZgej8U1CPCJlKHbAJIg1HfHEY1sHE7HyoX1YjWCps7PQBLkJBS1X q6M6yEAJ8D8kOF24ww2uzcUjSrw3ugZR4pQXruKks+q5zEJLvxiFOOq+E/lbuDyOfsKV fRH2TakQmYsuosM/YWtJtsnkQhW1bOwZo0MvdhQkxj8hiRUXnZPrBBS6aYWoKIIwCCZ4 uQDA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1768994881; x=1769599681; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=RHmHZviAuhOhpKSUpCtTa1iFHF2rU7EWwgoioRxdGwg=; b=bxrdNDpTvyb0yOpDd7pnKbTOFsH7aJi1cFiYFG9KXhbY98Emdj61t4y5grjecHMco0 ISqLlxSaerMtlKFnMYLHAMaSa9uHzCwuc4It/SoWj70rQqnYcH3RTWp3Ar0ZDDiI/0q2 iugYH19FxqhyFpFjreeuy1HFH21Va5Is9RbtLvU+AjJc4KmnFVZYbqqsccSjIIcgI4WY xq91Q6TWXCln/gM3tOdp4akKcEZIs4opdyQUoFS1kXGUy+ev2eGdMTKlfkiGK/bt2/WG nIJ7CtQ2WqkhnTed1yItQ74ZRa4BO2wzYT+/w9Egcv19u1VoyDpo8zN3w8YL700roZPZ 13CA== X-Forwarded-Encrypted: i=1; AJvYcCXYRZXysTdi/cxYzDFrdKErnVbWYTfJebWEsXxuhhKJ+pGefYgBgnisnvPkHeqlAX/n0+D5UxkMj3qxrdE=@vger.kernel.org X-Gm-Message-State: AOJu0YzmC6BRl17KtiKOJI1v9XNOHaqLhC0YbPO7pvCE697yKTtZdCIh cKKBoc6B9rOYIG7/f1KMZ0GQoPpHvRMRfZh1Q9Dz9MsPVErA2Acp9SRGqNQtfYmkzWk= X-Gm-Gg: AZuq6aJUoLK6KDMKAJPbSk8pEDWAAr1TnOFPNdebicXW0TgH683Z4b9RrNmZDkMqkJ0 53dgRl48dVAWduOZupbH6oQgKIq3W+J/LrUBY7NUgZ+H8hZaD8aE0u4dgnC39j/JeN8DwKXGGwm j/Gd72vX746S9CXUShNDs408Lylu+p1ogVVuHRPiMzIxxkv/Ptqerjpu7sYlnQfBk7oiO+DE1KZ Ad6x6YmeA98Od0xdFm5wopqnSNU0ENVyMyWVSPiEEPIrht+7c+WaRIFrlDutZVTYFHNsVqUgdrs 3kNjYxTi1npFgfvyM8gAtTRJ4hjm0R7/ZQKH2YtbwRZizrJd416a1Qqo+sD7tXHRsObCHu9sGlL IV40v9hZNBY87pQpJ/9Wvc6gx6AGAfvobekp3o6QgjIZQ+KCjZES2m+h3fyGWBpCpANZhXdr3Pg 16cw== X-Received: by 2002:a05:600c:46ce:b0:477:7b16:5f9f with SMTP id 5b1f17b1804b1-4801eb0efe0mr254560075e9.31.1768994881124; Wed, 21 Jan 2026 03:28:01 -0800 (PST) Received: from localhost ([151.44.214.137]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-48042bffa0bsm18954715e9.4.2026.01.21.03.28.00 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 21 Jan 2026 03:28:00 -0800 (PST) From: Francesco Lavra To: Lorenzo Bianconi , Jonathan Cameron , David Lechner , =?UTF-8?q?Nuno=20S=C3=A1?= , Andy Shevchenko , linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH v4 1/4] iio: imu: st_lsm6dsx: Set FIFO ODR for accelerometer and gyroscope only Date: Wed, 21 Jan 2026 12:27:55 +0100 Message-Id: <20260121112758.1831077-2-flavra@baylibre.com> X-Mailer: git-send-email 2.39.5 In-Reply-To: <20260121112758.1831077-1-flavra@baylibre.com> References: <20260121112758.1831077-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/pANAwAKAe3xO3POlDZfAcsmYgBpcLgjKHlBS2+YWZdjOWGvX/xqPbpahixKnyHdW ADRDgnr6CSJAbMEAAEKAB0WIQSGV4VPlTvcox7DFObt8TtzzpQ2XwUCaXC4IwAKCRDt8TtzzpQ2 X3AMC/9hgJMDUYxdaPmbp4yWgBAy3dxaVDE+5FfmjOXtxam3QSfObJFfYqMqQX0p9YWWN7Ot0ix 2pvqAJmHYilgiPaa5U/+KkSJkSynqL2oXqZPnD/uHDmRQQRU9lxGubE9bQ17Qxls8n9lYL6igHG 18Yz0y8cNTh1CFqSDVMNezvpKF5+p14RshaG+61tgSwIWDzvkITIfP9wv2phA3mUdI4O0VJ3SYI 2aG5vRQTJffY3rQ0tUv+/xNxKfXJpCtbh0s12ZA4UNd13MLBzqxDp09LN8it3mpBXxgPHgINM6e 5Qan/u4u/Qz2ZY4lcmgyCMjQc7SSQeR80ogvyBlPMSLzcWc54Eh4+kKa38kKAeUqI7eTn7tdcc1 0M5fegAX84tl9SlD3/xYlbcfDwH4TEqu9AMqvbU1lDgKfwdMycbBK145QDB4sis4T+cmfuh5xHJ VTI6GNlqVv5fmh29KUQRWK03BefclTaRPDzTYaJRMJyBDA9dvyES+hyaEwUruwuyy90Xk= 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