From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-ed1-f41.google.com (mail-ed1-f41.google.com [209.85.208.41]) (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 685EB3090FB for ; Mon, 19 Jan 2026 10:23:22 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.208.41 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768818204; cv=none; b=AWRBhWXW2Z5XPgGvdZR9PHk6fFzSAX62HUA2GTITgkWoYAqC6IOqC64iiorsxO05LHw+By/0N79e9LJUz5lWQqGwKGar3cD94Qw1ITcRAh+SYSlcokW/qFGsBAzw/WG40E5+hpXD6lGNPhrzyHoKQR63sFrI0jV0HlDHINbrxgU= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768818204; c=relaxed/simple; bh=b6in0Ht1436ypEjKdmBzGtAzQIUtZlNjgIlaQ/Kz8dU=; h=From:To:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=p7Y3QBffZnG7ngPm0LoSaKnUA5LjDpecEavMl1MM5U7lRiyHbVFs2VNxBxtzWE9USeHOKh3epDwR8tVH2zNdiIhLm/1gWDFvTARUi4T98TXrMsrot7JKpRVH2pkuEXhtJHJJGPe+7Ep3CWFjY+dKGemvJvi4R1A9czosGy5c4Zc= 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=RuwU6LYG; arc=none smtp.client-ip=209.85.208.41 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="RuwU6LYG" Received: by mail-ed1-f41.google.com with SMTP id 4fb4d7f45d1cf-6505d3b84bcso6215936a12.3 for ; Mon, 19 Jan 2026 02:23:22 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=baylibre-com.20230601.gappssmtp.com; s=20230601; t=1768818201; x=1769423001; 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=D7eVDtNz1S15iD4VZqEhzSlov8EZT29gxIYBEknUL5A=; b=RuwU6LYGs2JWIeZN8UKH1hE5GWjyRdcsC/OQe81Yx0SFmsGquHNfC1FCEsZPgAM9T6 R5BWPggVy3GYZabY1ezPczMiIQR2qehV8nswgVW8+CXC9fkexd0xlG//j6mddROC5QWQ 3TxUUxRbig9eM0Gx3hydgLL2S21vBGXYlvaHL4h+OYjIhB0oVSrGDWLtUByoUdEL6tj5 sYwwNCdOSa5YryvUdoNbg/aodB1d35MjnK6JE/94Ud1/S0mqnwATV2S+Jor1YAnaArD9 G+dDUIZpBYflA2QMErFedHuXdBC59eti9cfmoZORZSKFxYl7wpScCAqlsuxTKx8/QtLB DZVw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1768818201; x=1769423001; 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=D7eVDtNz1S15iD4VZqEhzSlov8EZT29gxIYBEknUL5A=; b=m70oyJTZB51CW5ezY+r02lYPl47E42nco40tIZ5YPStTkNXmDtuxPqwtYvyBsNjkSN wx9jYiLIEPClDUbYOM0Cc7rkDRVulpZikWd+aT62UcbT8Z6JwyzbOdlRhmqFd6uCQvSf q/QHrivgjXjekTZGFbC6mwgDS015uidtfB3gIKPOGoYTTkTiiHAdVd4YZglob9uPVFwh Dlqn5hAN/Tsx8snHeJkGQpovoW0+/3fs0000HQzFiQTgt92jkXfF3KVq2OHVruT+/Yrf lSaPTtwRJHZP0dK4prI80JhXQKCf1ksVANsMHF8siOeIqp4rffYOp/BzfkdaqMML+WF+ ir2g== X-Forwarded-Encrypted: i=1; AJvYcCWCh9N80Oug/iKI0SGUGvs+YiR+CxDt1Hte4FqnJgs0CYaExfwJYUhIDxWHBowBHf4aw5wbOZCuMBhLl3w=@vger.kernel.org X-Gm-Message-State: AOJu0YyiTvDybZRaUdCXWVAP7qw8me0JhPM6XHCnjT05/JPMOvk3fxii OdsP8hF6sleEfJjHPml4NalUGmKlERF7Iysm11MuF+ga/WlCisDbaQIkEfiZV0EJc88= X-Gm-Gg: AY/fxX7SnY3NXpAfXK0fR07gDVZfnWdOX00IljNZ8yZMn2xUBiiZygBvWEmjYrb2Jh9 vX2KjuOZx7kRiutIVBEisDjg26oMuarEYMFhWFjm47xPo6UkjeD+W6kcKbuJMGIMWFz7pRFBV4+ GoTmMVlOh41rqS7MA/CHfk8YvmvfxYi9+Od0nGciz2Df6p/CFuCe9sqB2CJwaWUPiqScJmHHFtE x+Qk5+341uBqo36Isa5LNqrYrHQIs2HXFxt9RJSP8JVcguBnmAcIhVICZecbN7T2kQgkfw2qDCV 5sRXtgXtnNGyIlrf7ciqabClQxjRv8PwFP3Ej++UcjfqqXGRqcF3cYhtGZugFrM3XYmCv3OrlzR L7fCpiYK+aso6HJI06jHqdzLZ7TWC326j20B7Vh2tI/IL0DMfFpTAUSw= X-Received: by 2002:a17:907:702:b0:b87:2cf8:f7b2 with SMTP id a640c23a62f3a-b879324c7c0mr1047597666b.56.1768818200709; Mon, 19 Jan 2026 02:23:20 -0800 (PST) Received: from localhost ([151.37.196.5]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-b87959fb973sm1041021866b.53.2026.01.19.02.23.20 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 19 Jan 2026 02:23:20 -0800 (PST) From: Francesco Lavra To: Ramona Gradinariu , Antoniu Miclaus , Lars-Peter Clausen , Michael Hennerich , 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 v2 2/2] iio: accel: adxl380: Optimize reading of FIFO entries in interrupt handler Date: Mon, 19 Jan 2026 11:23:17 +0100 Message-Id: <20260119102317.1565417-3-flavra@baylibre.com> X-Mailer: git-send-email 2.39.5 In-Reply-To: <20260119102317.1565417-1-flavra@baylibre.com> References: <20260119102317.1565417-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=1332; i=flavra@baylibre.com; h=from:subject; bh=b6in0Ht1436ypEjKdmBzGtAzQIUtZlNjgIlaQ/Kz8dU=; b=owEB7QES/pANAwAKAe3xO3POlDZfAcsmYgBpbgX+f/Fu5JWFdXqfTUi8b0UQeUZZQLtzByfcW hGTcFBhIdSJAbMEAAEKAB0WIQSGV4VPlTvcox7DFObt8TtzzpQ2XwUCaW4F/gAKCRDt8TtzzpQ2 X9BDC/9LBzlxQ8Y54d/g5Wr06Tf4A6RQi5kePBMrUK06u/lYJXHr9CRhXr9756L6TgzJ9Y7amPU bzu57EKr+1UFpfCF9dMyf8eaxFT/0d8VDxVkPI7vWyf23yV3ygQlis6qtdevQwnR0KE8RP/oVvL DjJg+6CmsCn/b6KEapQ4JUwhM3X+kAEsG1fNFVDnSsugoO3DahMuM3I2DHHUUIUBn+gqr54LVBW k0rhiANhXbLAC8XCbdomvl80DAYxqpiRhUOv84R1QT+Zsf5d+Z5TBpKmuQKNZLJnq0P6Sl0CJ7S EpGv2et7KDAXiyZcYPVYq8ABLsQGCBya9twScFoXT3xcOowcV+L7SI2LKdh05W98uKFzu677Ilv RHFjjzio58IieEtUT8bDJGWYykYeiW5YOdoj2n527pR7xEryEciCgMzQa7GDY08jvExxRFm/JxB i4DSDtH2WW7tDxn3xju5fBLlZmY48Bz4JbyCoyxFiBwal2/fRquuFXVrysTUb9KJKtntc= X-Developer-Key: i=flavra@baylibre.com; a=openpgp; fpr=8657854F953BDCA31EC314E6EDF13B73CE94365F Content-Transfer-Encoding: 8bit In order to minimize the time required for transferring FIFO data from the sensor to the host machine, perform the read from the FIFO in a single call to regmap_bulk_read(). This allows reading acceleration data for all 3 axes at 16 kHz sampling frequency using a 1MHz I2C bus frequency. Signed-off-by: Francesco Lavra --- drivers/iio/accel/adxl380.c | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/drivers/iio/accel/adxl380.c b/drivers/iio/accel/adxl380.c index 650cdbffd4a7..e3e6b182eb3d 100644 --- a/drivers/iio/accel/adxl380.c +++ b/drivers/iio/accel/adxl380.c @@ -965,14 +965,12 @@ static irqreturn_t adxl380_irq_handler(int irq, void *p) return IRQ_HANDLED; fifo_entries = rounddown(fifo_entries, st->fifo_set_size); - for (i = 0; i < fifo_entries; i += st->fifo_set_size) { - ret = regmap_noinc_read(st->regmap, ADXL380_FIFO_DATA, - &st->fifo_buf[i], - 2 * st->fifo_set_size); - if (ret) - return IRQ_HANDLED; + ret = regmap_noinc_read(st->regmap, ADXL380_FIFO_DATA, &st->fifo_buf, + sizeof(*st->fifo_buf) * fifo_entries); + if (ret) + return IRQ_HANDLED; + for (i = 0; i < fifo_entries; i += st->fifo_set_size) iio_push_to_buffers(indio_dev, &st->fifo_buf[i]); - } return IRQ_HANDLED; } -- 2.39.5