From nobody Mon Sep 28 23:06:40 2026 Received: from mail-pj1-f54.google.com (mail-pj1-f54.google.com [209.85.216.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 E5382421247 for ; Sat, 15 Aug 2026 17:57:42 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.216.54 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1786816664; cv=none; b=htfc/h0XPgOpqQih1v4te0Vc6O0Q2Et+udjW8S8Vv4I5l/rDkCJAPqaD/wHyns3Bi3Fh3lexJptUA6sb4I1zM4fWpHvloCtg4Eb6lhGSfk5zwghLrHGB8B2hGq61PpSVYzYQj6EWM9emfz8jMvcl2tnTcSwQKFFB23b43L6Dop8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1786816664; c=relaxed/simple; bh=nKxgDH4TdWB2d36OnxpU2PoAKG4hTH5rCToucuzyeXI=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=csIdqsHO5e2eEhwwnF5UMfkaYcYM/BwkhD1Pc5/6WNjvqm58TX/EaYYCGAXbURfSj65hcB07baGpD1LpIZlblAlYBcFgWQ5JjbxVD93Ae0xLcB7gOWXCS9vlp1IGOs6Skf1MBdKh1lVpUgKY54slLBRBpd8mrpG2tmz6fVOjta8= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=k+rh51rz; arc=none smtp.client-ip=209.85.216.54 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="k+rh51rz" Received: by mail-pj1-f54.google.com with SMTP id 98e67ed59e1d1-38e347638adso2503393a91.0 for ; Sat, 15 Aug 2026 10:57:42 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1786816662; x=1787421462; 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:content-type; bh=nrr+5GeNkVo/Yg6tMxCd6vMnt7MSIfXEc0j1vvogzWg=; b=k+rh51rzE32Bq73aUo4Rjg0fi7JkiB95JMKrmz9wSpvVKMaFkYeHIraikrlCpkq+Qd bBxzSZJII5hs1UaLo0m17ZXUQgaKbbvm+O0fJ8iuEYJMNl2jzSPw00WbFB9Fp6+7I2sO +iy2LhhX8APHRqRHKn4z1AJ8r/lNHafw4ITPolwR+orAarrFnm1/ZemSs93sWFFBUHPS lbsbOPl+kdb0+N28+uVhjpGbK+79YmHakCkee+y8nO6ZUkqajEA9yimxqiwz7gDjAWoA PeMS0l5ZPplK/ASdEUVkJ5xUlqZrAY6+lZKA3lzgcpomL4njZVRf3kWSA98tFiDDY7aj dKHw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1786816662; x=1787421462; 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:content-type; bh=nrr+5GeNkVo/Yg6tMxCd6vMnt7MSIfXEc0j1vvogzWg=; b=qV190EYG2W7ESpB5rGl+rVsoVOBM6Nx7e7bqAw3+3ONaAgFG/oUxn14aK61bO7dIy+ If2sF/ciLRTn6Nn5Rqm5FSXfm35N1pj3YlpNqz6tsXDUX7QNpnn9T8ijayslR9yjTHrL JUVCKjVIPqyIJQ0TZJcEIdsp4kE2wmk2R2ZjUlPNaRpYhsaVPiOzXM+HvH32/2nfMhsg Uf54Fv10ecBsl7C7K0h+FWEkH3hmUngSXQ4GMGWXzPgvDcWzxgv7PVLZJofn2PxoGLWO 4/aV6ygoxWFh/oWxt5eJOKFozWJOPaQufBPvkrsMARQSc5Hx3/3YfywbMPl7xFuVBELc LNPA== X-Forwarded-Encrypted: i=1; AHgh+RrKy0ZZXgcaRcTVEsm2jQZao2NwB4C3fx+66QDjFEENCgwDWkj7SLPmYmxBvcU9eeOrePWZBChYjbpvjQE=@vger.kernel.org X-Gm-Message-State: AOJu0Ywf8RLLyZU25ZfPRWOc8G3ENddr8RipYFsQs1Jn4NoPHGtvTTT9 RSklyNFGXSdb57mp9c1QGDrSp8aCsA9T8+UeoE9mY4bgNJ4baqocUBrD X-Gm-Gg: AR+sD13+cUnzudWreqNnIRUAOCcI6Y9ef0r3sD9Rzak8V0u2eTRx8OGpkSewn8qmOtD mK0k29w24JZkpLhetKo8zfUzR+2R9/+r9oa0yW9K5Cck7eAiaTrLWu3af3T38cJ+5KNYy9Q69sB TYztH4NyOPvUQEVpT3h2jNK4h0cLjfnvsAydHet+oUsiJjXkiodPsLD9FOpgmpVyxBE22/8S8DT uoARgDx41GHXLNlI2e1dJVOEUq4a/JXoI+TVp64/QTnviwDZAOf6VAUFsSkBERh4t/pGoaoObZO CXXwYWJBa895N8YSw/smuxCJlvVoEjYHdTuoCUoO8XxyF+sMPdMcyTVJwIs8kPES/W29+F01IBV CEF7Xi7ZDI54hcYgzXOxtW/LuEWOrm0CyWI48exPChBt+hYPMJTTLa7nQS44L4BO4N+qwMy2BKs Awzl6bZdGC9EnY/EwwSD9si4N+EaUyDBbssR6o7AwE2v8kieJswivz+XRNG+jcFHAl5ORj5denL rzMExsF X-Received: by 2002:a17:90b:39b0:b0:38e:659b:f366 with SMTP id 98e67ed59e1d1-3933b500d17mr14996336a91.0.1786816662102; Sat, 15 Aug 2026 10:57:42 -0700 (PDT) Received: from yash-Bravo-15-B5DD.. ([2409:40d4:1248:1816:fcb7:1765:17f9:b9a5]) by smtp.gmail.com with ESMTPSA id 5a478bee46e88-320ea2fcfb8sm17305163eec.21.2026.08.15.10.57.36 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 15 Aug 2026 10:57:41 -0700 (PDT) From: Yash Suthar To: jic23@kernel.org Cc: dlechner@baylibre.com, nuno.sa@analog.com, andy@kernel.org, andriy.shevchenko@intel.com, yashsuthar983@gmail.com, grondon@gmail.com, linusw@kernel.org, hexlabsecurity@proton.me, sakari.ailus@linux.intel.com, srinivas.pandruvada@linux.intel.com, linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH v2 1/3] iio: accel: bmc150: use aligned scan buffer for both trigger and fifo Date: Sat, 15 Aug 2026 23:27:26 +0530 Message-ID: <20260815175728.99541-2-yashsuthar983@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260815175728.99541-1-yashsuthar983@gmail.com> References: <20260815175728.99541-1-yashsuthar983@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Drop buffer as duplicate and s16 is not correct we needed __le16 as little endian, keep scan at the end of the bmc150_accel_data struct with IIO_DMA_MINALIGN, and use it for both paths. Fixes: bd7fe5b71918 ("iio: accel: BMC150 accel support") Suggested-by: Jonathan Cameron Signed-off-by: Yash Suthar Reviewed-by: Linus Walleij --- drivers/iio/accel/bmc150-accel-core.c | 4 ++-- drivers/iio/accel/bmc150-accel.h | 14 +++++--------- 2 files changed, 7 insertions(+), 11 deletions(-) diff --git a/drivers/iio/accel/bmc150-accel-core.c b/drivers/iio/accel/bmc1= 50-accel-core.c index dc8a6285cf3d..89a475ef9a9b 100644 --- a/drivers/iio/accel/bmc150-accel-core.c +++ b/drivers/iio/accel/bmc150-accel-core.c @@ -1191,12 +1191,12 @@ static irqreturn_t bmc150_accel_trigger_handler(int= irq, void *p) =20 mutex_lock(&data->mutex); ret =3D regmap_bulk_read(data->regmap, BMC150_ACCEL_REG_XOUT_L, - data->buffer, AXIS_MAX * 2); + data->scan.channels, AXIS_MAX * 2); mutex_unlock(&data->mutex); if (ret < 0) goto err_read; =20 - iio_push_to_buffers_with_timestamp(indio_dev, data->buffer, + iio_push_to_buffers_with_timestamp(indio_dev, &data->scan, pf->timestamp); err_read: iio_trigger_notify_done(indio_dev->trig); diff --git a/drivers/iio/accel/bmc150-accel.h b/drivers/iio/accel/bmc150-ac= cel.h index e8f26198359f..9deff256aed5 100644 --- a/drivers/iio/accel/bmc150-accel.h +++ b/drivers/iio/accel/bmc150-accel.h @@ -64,15 +64,6 @@ struct bmc150_accel_data { struct bmc150_accel_trigger triggers[BMC150_ACCEL_TRIGGERS]; struct mutex mutex; u8 fifo_mode, watermark; - s16 buffer[8]; - /* - * Ensure there is sufficient space and correct alignment for - * the timestamp if enabled - */ - struct { - __le16 channels[3]; - aligned_s64 ts; - } scan; u8 bw_bits; u32 slope_dur; u32 slope_thres; @@ -85,6 +76,11 @@ struct bmc150_accel_data { void (*resume_callback)(struct device *dev); struct delayed_work resume_work; struct iio_mount_matrix orientation; + /* Ensure correct alignment of timestamp and DMA safety */ + struct { + __le16 channels[3]; + aligned_s64 ts; + } scan __aligned(IIO_DMA_MINALIGN); }; =20 int bmc150_accel_core_probe(struct device *dev, struct regmap *regmap, int= irq, --=20 2.43.0 From nobody Mon Sep 28 23:06:40 2026 Received: from mail-pl1-f171.google.com (mail-pl1-f171.google.com [209.85.214.171]) (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 6A6E1425887 for ; Sat, 15 Aug 2026 17:57:48 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.171 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1786816669; cv=none; b=Ufx52qX1UiP02+PiRwj2ZPg7wXWqOJn4ToDCwxQcy5lDl5O5yII/AmpbgLwXVtxgFzTZAO/EoX376tfPk1cqYC4i2J9sZJyAFbKz9rLN8nw46I7+f4i1tIQ+Q2Dy/AAr7xyv38/RaG0gQJfsIh1h2Ed96jlRtLkDXieaZ4ne7FM= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1786816669; c=relaxed/simple; bh=nDPGlDwlnm9kRZGhwhrLqboq0/TEPJOiY31oDryGZyk=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=izmZ0azKJ6Qhw/FP/FkHZ+S3yuBAVPxdPfYu0k7asSJhrmG8YTtq2OltcfgnLggnB18yXyl9aUejGgBPV5v1N/dA7ntnvKaDgnV7GaV2QMJd+JV3gBk3UCeJBJnvV5pBcRfes4nZleMEjeeTdbylWCth18IFv/4E7RXQz94OZlk= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=JszdG18N; arc=none smtp.client-ip=209.85.214.171 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="JszdG18N" Received: by mail-pl1-f171.google.com with SMTP id d9443c01a7336-2ceaf8a1265so30841115ad.2 for ; Sat, 15 Aug 2026 10:57:48 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1786816668; x=1787421468; 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:content-type; bh=gIlktj+wxmAUkq3OHJvtiyHqtwOwmYETQ46YaPY3Vxk=; b=JszdG18NzayTkhgLJ6wngugMo34fHp2p+RUzreOx5Iw3r5GI2zaEoLWUUIRkUv9fk5 aaxRKvALG/9KQm/n3Jl2J885wkGxlh3A9V23yoHitoYRHqIJYV43rdzvPmKeYAXjP055 TlsVQ1n1Kgyi/wYWrrGcG+R4GI5j1N4OEkHRb7SUh6gR+9Jzw+sjunCXcAM4xBf0LDFB rcv8h+w9wUeCdHrqMnPBAASeRTUeGBtQr8MFVAIF6ElFDRsAje0nnr2w9+Hk37Ht74oh VJqpus9A3SBhwsihNoB4aSNhANX42eBUc6Wkx/t4WVfOL8Py0cJm0f9k4M0q76CW9BOx u3xg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1786816668; x=1787421468; 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:content-type; bh=gIlktj+wxmAUkq3OHJvtiyHqtwOwmYETQ46YaPY3Vxk=; b=kCjV+aeg5068tUjn0+n63bE5kjqb6sCc9iGsgz5p08WeBiP1k9g+t2xemVkaMHULCA ctHXfFWy6BUiZS80HbUBD7GeRojt3vA8R69EHm5yI52X9ZPHQ382HFqlmTwsxqMik77v ZLiINPq1SyACAuN31ZWUP7SCfho80j0PLB6lN3HhBkhs+ldKULQbhKzFp6a0+Ebibd3Q VmSuPLwVAWvaJKzpGRsrSzk06GFVFYZ/ZtbRnHzeQCLi5F5uiyDjjOVI2pNv5b8FOM/+ X8CsONGSNOgKaZrq1o0ojFt8B7gXrPrsyIh8bVG7tJ/iq6qre14MFVPU5ICa9sJiXlc0 cmYw== X-Forwarded-Encrypted: i=1; AHgh+RrBUED/t/oEtiM0yG6cxyzcKYxwpXiSpus5hBFENnZSN9lXOuNH5wgxZ4nf6OZBv/1Qa+CJyuR2D0dtUyE=@vger.kernel.org X-Gm-Message-State: AOJu0Yx5h9CgTffNX/KF5dJNsfB3brd780vFCz4ezN9jIDZoJc0Mndpm 1zrC9EGUUATNoABbYWt33O47F+XIu08Oq7CoJ0Z7hpaOB8ko17l3+g9I X-Gm-Gg: AR+sD12aypDxcK1gQHoaibCkrGMXII47ZZjM8u3qluBeWKSUrX64oBW6VtKtS8jjDNV 5yDpSRUgBGNl98AqBXI5rp3i4TFpWsJ0DNlOeee493Q8ND+JcNl7hEcnW7qVWEBkWU58ocGaXIo gmfTf1M94LNYJ9aX7BTHNB9aGucNd/JYO1OFt+KcN8fK582C4CShx38q0BCH80z4Jw8hAk28X9P NN7lQbtLs2peZwr6RHvEX6EHumgviyNPjMZUu+eq1Dw7WAHGJ53W23N+ddRDzuad3RQv1a3DsnA vFSti53d6cIZQZlxNRGaCApDhd1zVpgpLJ34me/fVz9Z9/ABqbPW60uEccobj9yyiacNLkpI4pE 7lOEZz8MJpNhU4Xtpj97HU0DqpiICWOkWlLlrViWjZSrh8SA94qqaQSrfxVx5++sHETnrULZn4W A6KYhrNKHqXlydZh/QTsIHJC80R3VhZZcXIIdMo8WUL8iUV957Pl6Z1HTRgBCSphhoLIHruvqJ7 14XFf22 X-Received: by 2002:a05:6a21:e8b:b0:3cb:eb06:ce09 with SMTP id adf61e73a8af0-3cc71de3b98mr15980190637.25.1786816667768; Sat, 15 Aug 2026 10:57:47 -0700 (PDT) Received: from yash-Bravo-15-B5DD.. ([2409:40d4:1248:1816:fcb7:1765:17f9:b9a5]) by smtp.gmail.com with ESMTPSA id 5a478bee46e88-320ea2fcfb8sm17305163eec.21.2026.08.15.10.57.42 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 15 Aug 2026 10:57:47 -0700 (PDT) From: Yash Suthar To: jic23@kernel.org Cc: dlechner@baylibre.com, nuno.sa@analog.com, andy@kernel.org, andriy.shevchenko@intel.com, yashsuthar983@gmail.com, grondon@gmail.com, linusw@kernel.org, hexlabsecurity@proton.me, sakari.ailus@linux.intel.com, srinivas.pandruvada@linux.intel.com, linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH v2 2/3] iio: accel: bmc150: use DMA-safe buffers for regmap bulk reads Date: Sat, 15 Aug 2026 23:27:27 +0530 Message-ID: <20260815175728.99541-3-yashsuthar983@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260815175728.99541-1-yashsuthar983@gmail.com> References: <20260815175728.99541-1-yashsuthar983@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" The FIFO and read_raw buffers are passed to regmap bulk/raw reads ,which is not DMA-safe.Moved them into struct bmc150_accel_data after scan, each aligned to IIO_DMA_MINALIGN. Suggested-by: Jonathan Cameron Signed-off-by: Yash Suthar Reviewed-by: Linus Walleij --- drivers/iio/accel/bmc150-accel-core.c | 14 ++++++-------- drivers/iio/accel/bmc150-accel.h | 5 +++++ 2 files changed, 11 insertions(+), 8 deletions(-) diff --git a/drivers/iio/accel/bmc150-accel-core.c b/drivers/iio/accel/bmc1= 50-accel-core.c index 89a475ef9a9b..e8d27fd1be3f 100644 --- a/drivers/iio/accel/bmc150-accel-core.c +++ b/drivers/iio/accel/bmc150-accel-core.c @@ -125,7 +125,6 @@ #define BMC150_ACCEL_REG_FIFO_CONFIG0 0x30 #define BMC150_ACCEL_REG_FIFO_CONFIG1 0x3E #define BMC150_ACCEL_REG_FIFO_DATA 0x3F -#define BMC150_ACCEL_FIFO_LENGTH 32 =20 enum bmc150_accel_axis { AXIS_X, @@ -622,7 +621,6 @@ static int bmc150_accel_get_axis(struct bmc150_accel_da= ta *data, struct device *dev =3D regmap_get_device(data->regmap); int ret; int axis =3D chan->scan_index; - __le16 raw_val; =20 mutex_lock(&data->mutex); ret =3D bmc150_accel_set_power_state(data, true); @@ -632,14 +630,14 @@ static int bmc150_accel_get_axis(struct bmc150_accel_= data *data, } =20 ret =3D regmap_bulk_read(data->regmap, BMC150_ACCEL_AXIS_TO_REG(axis), - &raw_val, sizeof(raw_val)); + &data->regval, sizeof(data->regval)); if (ret < 0) { dev_err(dev, "Error reading axis %d\n", axis); bmc150_accel_set_power_state(data, false); mutex_unlock(&data->mutex); return ret; } - *val =3D sign_extend32(le16_to_cpu(raw_val) >> chan->scan_type.shift, + *val =3D sign_extend32(le16_to_cpu(data->regval) >> chan->scan_type.shift, chan->scan_type.realbits - 1); ret =3D bmc150_accel_set_power_state(data, false); mutex_unlock(&data->mutex); @@ -918,7 +916,7 @@ static int bmc150_accel_set_watermark(struct iio_dev *i= ndio_dev, unsigned val) * frame data is discarded. */ static int bmc150_accel_fifo_transfer(struct bmc150_accel_data *data, - char *buffer, int samples) + void *buffer, int samples) { struct device *dev =3D regmap_get_device(data->regmap); int sample_length =3D 3 * 2; @@ -941,7 +939,6 @@ static int __bmc150_accel_fifo_flush(struct iio_dev *in= dio_dev, struct device *dev =3D regmap_get_device(data->regmap); int ret, i; u8 count; - u16 buffer[BMC150_ACCEL_FIFO_LENGTH * 3]; int64_t tstamp; uint64_t sample_period; unsigned int val; @@ -993,7 +990,7 @@ static int __bmc150_accel_fifo_flush(struct iio_dev *in= dio_dev, =20 count =3D min_t(u8, count, BMC150_ACCEL_FIFO_LENGTH); =20 - ret =3D bmc150_accel_fifo_transfer(data, (u8 *)buffer, count); + ret =3D bmc150_accel_fifo_transfer(data, data->fifo_buff, count); if (ret) return ret; =20 @@ -1008,7 +1005,8 @@ static int __bmc150_accel_fifo_flush(struct iio_dev *= indio_dev, =20 j =3D 0; iio_for_each_active_channel(indio_dev, bit) - memcpy(&data->scan.channels[j++], &buffer[i * 3 + bit], + memcpy(&data->scan.channels[j++], + &data->fifo_buff[i * 3 + bit], sizeof(data->scan.channels[0])); =20 iio_push_to_buffers_with_timestamp(indio_dev, &data->scan, diff --git a/drivers/iio/accel/bmc150-accel.h b/drivers/iio/accel/bmc150-ac= cel.h index 9deff256aed5..8f64b24339e4 100644 --- a/drivers/iio/accel/bmc150-accel.h +++ b/drivers/iio/accel/bmc150-accel.h @@ -56,6 +56,8 @@ enum bmc150_accel_trigger_id { BMC150_ACCEL_TRIGGERS, }; =20 +#define BMC150_ACCEL_FIFO_LENGTH 32 + struct bmc150_accel_data { struct regmap *regmap; int irq; @@ -81,6 +83,9 @@ struct bmc150_accel_data { __le16 channels[3]; aligned_s64 ts; } scan __aligned(IIO_DMA_MINALIGN); + /* DMA-safe buffers for bulk/raw reads */ + __le16 fifo_buff[BMC150_ACCEL_FIFO_LENGTH * 3] __aligned(IIO_DMA_MINALIGN= ); + __le16 regval __aligned(IIO_DMA_MINALIGN); }; =20 int bmc150_accel_core_probe(struct device *dev, struct regmap *regmap, int= irq, --=20 2.43.0 From nobody Mon Sep 28 23:06:40 2026 Received: from mail-pl1-f177.google.com (mail-pl1-f177.google.com [209.85.214.177]) (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 73397423E86 for ; Sat, 15 Aug 2026 17:57:53 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.177 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1786816674; cv=none; b=BieSTac4zIsdVm0WGPinES+ZKzOwXLx2E4iWi/k+DfOkN0uc7rX9dDHq0S1MXwTlzNQekFC/X9vi9XmdYn9LY7Xnr/Qic9SIVgY3Ipm4MHwAd/lRJBKf7aQ8bFkOMq/b/XbPE20qr7Y52h4WAyYiMjuLPBRvmdmSdXunVsgKwwM= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1786816674; c=relaxed/simple; bh=tcPA71Iwiuh+6d+K2BWWYWOPeNYRXOyrhzjZLVSYZnc=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=o9vNn9JfryDnXWJ7uFoJY9A/QNG1CaqNHtLwkO+ow8GvPgvk4/hRI/L76G58Ryb2U8JbndGOffP7qNttdbHKLVaI59Smwcb+ufcy0ddJna+WS/0LdmT6q8Gnyp7HSaohQx+LnfVbZ4mNVLvM/z0O0gxGImBt0gtfesRWotfuJ/0= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=QjKg6dA4; arc=none smtp.client-ip=209.85.214.177 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="QjKg6dA4" Received: by mail-pl1-f177.google.com with SMTP id d9443c01a7336-2d53197d8b5so13222915ad.3 for ; Sat, 15 Aug 2026 10:57:53 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1786816673; x=1787421473; 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:content-type; bh=2bSckIlwPJpx9hvVSl2glvjNco4xqitYXbnHQtc+DPs=; b=QjKg6dA4VoI0LVZAbAUCjHiiOWZAHCcCXcpjyznBegZqM3acfs6n/PUNU6loYfYvh7 UDlQE5q9EOTZeAjgHpsU7moiKrdMyeHw8wJ/UYLHmpQatJdzTvCVV998RZmM9oN6eIg4 YA/ECrACNVoxlVNVC+8w5qGAIDoMjdAFivkdq4E5hFafP6Gwv96kzu1BOIraXNCfU1yY nql9yaFYUwj1zsPCa05xw6pNLiNr8KSbmGfXbSJVterzXBr2LkqHBMkl7Y/vW9FX+sn1 TYuo63C+5X58wn1xsOGBUaS+wmFZL7CW/gI8mzjU8FXD0+CrUro8UnnlasJd8pCz9SkZ diWQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1786816673; x=1787421473; 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:content-type; bh=2bSckIlwPJpx9hvVSl2glvjNco4xqitYXbnHQtc+DPs=; b=PTDHkerCHOGe+DKSVKXXhTHmLyH2r3ZFjTNkXmh1CyzDhxOfIJgTT6LrKbw2ZJisfh 8UbZsEiuwv1YxxG6lkm/k1xGUXI0LLScfoWWUljaRrIYT9XvB7O/yMhFlS22VfhE0yBr n8cpEZ+NA6wAHh/MZPhHv6Rffhvoq7DChhhMwLHc71uVF8OUS9NmBX2hUO4qNe9CWZiz y3zw5/Y4BpLZSKgFxt3rz28N8s+WVAJGHmhOJ4yeGwKXj771PgSbepEh0LwnNU/MyD46 WnIfi86jk3hjvhoAN+RSoFl30rm1e31rk5mj2lYNhy5SdKaeG+wXZu7PLq5pVZ7LCXjr ICAg== X-Forwarded-Encrypted: i=1; AHgh+RqsWO5+g3g2a7C3jZ7pGg5tbl4oEcXAXz0jcUJ2nj/U61YZsZ9gZw/Vr4JcADUwrFKQ9x9cv0UDPxr1K9I=@vger.kernel.org X-Gm-Message-State: AOJu0YzAUwVqeS9+dOvf0SlEOqdyVO8wPImYJUfDU7V5S0dSM7kCDO4L Q1Pj6m9uqmGyDoP/DAOWHymUB6ZPgc9+FXNJWwLbJhBwlRK5TzRgJ/JF X-Gm-Gg: AR+sD122LYW47GLolyM6xrr9b9oVoMT9se31aUhqtEWlYpX+mxuf0IgAGqrazbyPQsn aKLZDcVAKzvTAqKEJhPpJTRvYosk1iR0VQY4k4vGuBOmBEPXICQjuvuTlm4F3jexN5plbZy9zNu Ys01nA26eIiylRyfyxuno9ageJ0z4tuAKkjXY7ZE3M3QJzRmTRTnO+P+oyXGfm5+5SYhcSO0atg UY5m8Q1XsQGP4syrN4Wk9PAi9GDVzU5LFpd0oMsRCBwvtc5LEK1RktvKlvb4d7h8+bsCPDKLEJ8 BW2UBqUqA9w7wlZjPJwxbtQJ/8vnIR7OcPEw71voGfqlM633or/NmHB1MOWMteqpvf6tZcOqnuR eV0VM06fdUkpOxsyFry/vQ0P0y4ZH8wncPOqKIDAj6X1L6W1oHw4woMj5cKnUgvzrT0jxe4lqQj +D2AbJmjpb1BbUEkAqvZryDU7c3dsyzoRdtpJbaLXk8BRw8VTbG4hmE8yIJrZ2nX79eDe8RE7OX Mz+Nv2/ X-Received: by 2002:a05:6a21:7316:b0:3b4:b276:a789 with SMTP id adf61e73a8af0-3cc71ed6b3bmr16267696637.36.1786816672887; Sat, 15 Aug 2026 10:57:52 -0700 (PDT) Received: from yash-Bravo-15-B5DD.. ([2409:40d4:1248:1816:fcb7:1765:17f9:b9a5]) by smtp.gmail.com with ESMTPSA id 5a478bee46e88-320ea2fcfb8sm17305163eec.21.2026.08.15.10.57.48 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 15 Aug 2026 10:57:52 -0700 (PDT) From: Yash Suthar To: jic23@kernel.org Cc: dlechner@baylibre.com, nuno.sa@analog.com, andy@kernel.org, andriy.shevchenko@intel.com, yashsuthar983@gmail.com, grondon@gmail.com, linusw@kernel.org, hexlabsecurity@proton.me, sakari.ailus@linux.intel.com, srinivas.pandruvada@linux.intel.com, linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH v2 3/3] iio: accel: bmc150: use iio_push_to_buffers_with_ts() Date: Sat, 15 Aug 2026 23:27:28 +0530 Message-ID: <20260815175728.99541-4-yashsuthar983@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260815175728.99541-1-yashsuthar983@gmail.com> References: <20260815175728.99541-1-yashsuthar983@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Replace deprecated iio_push_to_buffers_with_timestamp() with iio_push_to_buffers_with_ts() to allow source size runtime checks. Suggested-by: David Lechner Signed-off-by: Yash Suthar Reviewed-by: Linus Walleij --- drivers/iio/accel/bmc150-accel-core.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/drivers/iio/accel/bmc150-accel-core.c b/drivers/iio/accel/bmc1= 50-accel-core.c index e8d27fd1be3f..b6d67965b984 100644 --- a/drivers/iio/accel/bmc150-accel-core.c +++ b/drivers/iio/accel/bmc150-accel-core.c @@ -1009,8 +1009,8 @@ static int __bmc150_accel_fifo_flush(struct iio_dev *= indio_dev, &data->fifo_buff[i * 3 + bit], sizeof(data->scan.channels[0])); =20 - iio_push_to_buffers_with_timestamp(indio_dev, &data->scan, - tstamp); + iio_push_to_buffers_with_ts(indio_dev, &data->scan, + sizeof(data->scan), tstamp); =20 tstamp +=3D sample_period; } @@ -1194,8 +1194,8 @@ static irqreturn_t bmc150_accel_trigger_handler(int i= rq, void *p) if (ret < 0) goto err_read; =20 - iio_push_to_buffers_with_timestamp(indio_dev, &data->scan, - pf->timestamp); + iio_push_to_buffers_with_ts(indio_dev, &data->scan, + sizeof(data->scan), pf->timestamp); err_read: iio_trigger_notify_done(indio_dev->trig); =20 --=20 2.43.0