From nobody Tue Jun 16 01:16:41 2026 Received: from mail-pf1-f180.google.com (mail-pf1-f180.google.com [209.85.210.180]) (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 C55233563CD for ; Wed, 15 Apr 2026 05:08:00 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.180 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1776229682; cv=none; b=EWT2NxGvTKcIp0iMblu63M4xHT5VUETQJo/g7xEiabX9Uxbi1ffO+zmnoOuYt9v2AeVVfNE9KrB+qBwKCg/R+rlKktShXf5ixE8a7JYQJcMC2iwTQG7j5lMZ7CFOUDlyhfKm9fFWrKgpnl/7NQb9fbUIFhVp5nRghrU2bm0e76M= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1776229682; c=relaxed/simple; bh=QXrG+TuFDlDz3tXsO9LNxvG3qjS1y8ULhRPOEGUq1hk=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=N7UGUvo4nCheMX7kKPO4hidw/Jw30J10l8qbzPwigqKkDW68Zq1fSJMUf8+FaUAvTuaZujzCCc80xecUU9jcw4xT6mGX+Ejuv3oslKNrRwgIGLkcl3oBHj6gc6nOpRAYfylPyBYCQuD2teQEsAa260i2eGAnSUhy1Mon5DQy0tI= 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=IhQWAzkY; arc=none smtp.client-ip=209.85.210.180 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="IhQWAzkY" Received: by mail-pf1-f180.google.com with SMTP id d2e1a72fcca58-82f33d28c1dso1808380b3a.3 for ; Tue, 14 Apr 2026 22:08:00 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1776229680; x=1776834480; 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=qYy8AAiohTN8C2YtR+3ofOomrQuUpW2DvTjg+vRZlMA=; b=IhQWAzkYHO9LfedMZDTQ5zWCw/EUnYGqRzQ6KHjPTEUJoul5VBGBFzC0H+eCnG3pKL W5YNvAVh8crz4JeLenhknFXYwPrt8QO7XOyBn0rKpMIphAj9pseMauc1/VJ9FQEajj40 kYGHGK3uKV/0cRa39j7qoUwT1QKWNQGsS42oRQ9+M08ps2/EgcQJ3WD5ayY/qchugo3n b6A54ohApP/IWjDUEowVJZ53pnPpMqkXH4buhLFLWbLoPhLBzIbXCTLPuFv7FVWP4xsM cJNX/7Sy8aJ6erHYzEgAKKBIFAYFSyIfjZrtFKgJw1X+ug3KeDlxRUEjwqY/uTVTSAs+ Izkg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1776229680; x=1776834480; 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=qYy8AAiohTN8C2YtR+3ofOomrQuUpW2DvTjg+vRZlMA=; b=Yhtu7SUMf2BOxrVQd+APYtm+dgNhw1OgNFZ9ojEiO8aA2ZboJSdn+yUGADXA7hzanC YJTt2Ndl+Ldw43oJMtqBliRRWIM88ggpWsd0dLjeyrign3WembE3tox0/8iJrJr/hhlk 4zBmvcVF3cyuJJC08b3WJbCFzMDURb+iM9wJng0Uhhz+Avl8tkjKXMQxQtZWSQF4LKnk MhaoMMet8nORNldsQjK9LqmEb1Vr17MeDW40B1nPv29zgWdgItvjh/FOliyRbMo0jzhz Skzv2i01cVwLv/BEUgISNxr+eyS0LXjBWmjdOPRPoho34DCA39ysqiXiwMeb2LigrIQU POGA== X-Forwarded-Encrypted: i=1; AFNElJ/pv46GemYeAm4K1wyWI3iJMcpn2yo/6E8iyC5+KlbIjUV+W8j+XmQcGgXT3B1FH3RrDBPSwHSpAN98Qz0=@vger.kernel.org X-Gm-Message-State: AOJu0YzelJAR0YFdXXXSPPx5QxgI1PV8pX+nJqZW19W2gx+kjo7xaFPp lSo3zdaNlr6xo+wa1yR1naeCkimYTBEgdEwrfN7JxtEehx1cOS/xxzI5 X-Gm-Gg: AeBDieua3wndvMC+MRvXFhoxsRX3TWIBrTN7q3PjxmRrqR5lU6PtVIoOAlw6LqyWiee Lipe6MBvWuFVX5D2W99uSAPiJg4BfTFjED24HqJbqTM18qs9yrU4QEDephdxbs9k78YAzismlhb k6nt7PGh/D5bgwCAXVKRymEOlNS36evHJ8Ux2Iq/Z05RXAK1QmW3kSoE2xoZ9l0yfCYkb+EXpK/ DfFduHaHE5ZLAU2n8NRPkeAtwS23M7lb8MBnKt1Q8u3/Qh186X8QmNoyMGaZC0bKUxACz5tKHzP O14bgsm/u4GGqUQcb01Cw62X1aSPm3fbTyryFu8TYJigIa9fEeMB7A69ntCrI+o/73kn8pLK/tp qk5MNvXkR+m/rdG8CXCrXlIVzpIEN+0hYjRRF7pL1Rr8WDsAFqNNxTBjXQFdcUVp0hyyN8pjQPA hu5jSc9UyGFne+mW1+4J6R7f2bgHfIMI3HAvY5vtvu4vmz0PxD25jndSMyPCE= X-Received: by 2002:a05:6a00:140f:b0:82c:dd31:b844 with SMTP id d2e1a72fcca58-82f0c316a23mr20393930b3a.40.1776229680042; Tue, 14 Apr 2026 22:08:00 -0700 (PDT) Received: from hu-ckantibh-hyd.qualcomm.com ([202.46.23.25]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-82f67469dc3sm763706b3a.58.2026.04.14.22.07.56 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 14 Apr 2026 22:07:59 -0700 (PDT) From: Sanjay Chitroda X-Google-Original-From: Sanjay Chitroda To: jic23@kernel.org Cc: dlechner@baylibre.com, nuno.sa@analog.com, andy@kernel.org, sanjayembeddedse@gmail.com, tglx@kernel.org, christophe.jaillet@wanadoo.fr, mingo@kernel.org, nabijaczleweli@nabijaczleweli.xyz, kees@kernel.org, linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH v6 1/7] iio: ssp_sensors: cleanup codestyle warning Date: Wed, 15 Apr 2026 10:37:43 +0530 Message-Id: <20260415050749.3858046-2-sanjayembedded@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20260415050749.3858046-1-sanjayembedded@gmail.com> References: <20260415050749.3858046-1-sanjayembedded@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" From: Sanjay Chitroda Reported by checkpatch: FILE: drivers/iio/common/ssp_sensors/ssp_spi.c WARNING: Prefer __packed over __attribute__((__packed__)) +} __attribute__((__packed__)); Signed-off-by: Sanjay Chitroda Reviewed-by: Andy Shevchenko --- drivers/iio/common/ssp_sensors/ssp_spi.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/iio/common/ssp_sensors/ssp_spi.c b/drivers/iio/common/= ssp_sensors/ssp_spi.c index 6c81c0385fb5..8c1e15d61db7 100644 --- a/drivers/iio/common/ssp_sensors/ssp_spi.c +++ b/drivers/iio/common/ssp_sensors/ssp_spi.c @@ -29,7 +29,7 @@ struct ssp_msg_header { __le16 length; __le16 options; __le32 data; -} __attribute__((__packed__)); +} __packed; =20 struct ssp_msg { u16 length; --=20 2.34.1 From nobody Tue Jun 16 01:16:41 2026 Received: from mail-pf1-f182.google.com (mail-pf1-f182.google.com [209.85.210.182]) (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 CBB4D2DB791 for ; Wed, 15 Apr 2026 05:08:04 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.182 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1776229685; cv=none; b=D//WM8xZkGzg3Sj0Nz3yqfzBgjbq/P20zXQiDslvZXB/TwTmyXuoxiEMp5st/temvPJYMUNaG4I+H7dAgpuaP2pvLUxMZn7ohayCvm+nftGe8rd9dOeY5uHkpXK5ttEbEmdQtL92jtnDZQZIRLdYX5YYSN3XEmblQb9rFp1uyL8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1776229685; c=relaxed/simple; bh=IrfAI15OeYSzF7o8VJ7lq6QuUQJ761yxN1y3FeGgJ6Q=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=f/30DuHfZ4HqA51Up4EoPvRHoIIZOYZYH5PM3LA2vFAD83E24EbJgoRPrM3GDYO3mxgiFoHaj4rL883bo+5Aj6r6gK8//rb4fJAjh2OsWRZV2IEqePpZWFUQUsUkqoCUpsdi53tro3zg4NP5Prq4qFI33VLquCTKVZM5psuWlq4= 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=g/oshrV9; arc=none smtp.client-ip=209.85.210.182 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="g/oshrV9" Received: by mail-pf1-f182.google.com with SMTP id d2e1a72fcca58-82f28e0ac23so1682507b3a.0 for ; Tue, 14 Apr 2026 22:08:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1776229684; x=1776834484; 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=bWDKafWykqmCst/+PGgYmIJsGhpBN8tnTlfr4qxhHLk=; b=g/oshrV9f6FIlTWrRwABn3EYZ6/sDkDYwboqNEfdFhGkDWGoobCnE0mcqBo4xfzZ4t ScwnDkS8+GPcCA61NTPxcVjy/rdJcdShDDH6dZhoRtsyLA0jnQsJDC9+8JuVu+WDhE+D Plsws/HaJ3GUriQnuqPqoaKo9+YAJdMKHx1OeEjk902JjWyplcBmzBUOV70ZvTGBWM79 pF8peWzEONN7xO/t/eC/yCICI4F21Hapvtp0dJWZesS891NcuwctnIinb3uE2WtDKhjc boGaZahVVqZ+VTpHchN6h1NxYuIMYDWm/1U3AdC6DAC5bXMZcIL0zfVdLuqp85YS1mqx DKPQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1776229684; x=1776834484; 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=bWDKafWykqmCst/+PGgYmIJsGhpBN8tnTlfr4qxhHLk=; b=ofX/OmLPyM7hZ/YS+c8GyJPxdszjBreke7s4aGCZntxeiDgBUbo1a3FWRZYpq31LCt ytuhM+ZLsxgPzQwOiUlt7lPQMdrCWCBCx97TTGTBhKQjk1C4huPysYB0W0zEzCT6PpFA bJdIGMVxPb+QVoxA3Px3t0LJz96TpGLhhOaELL+oPLq4Z1wR+izqlhckyiuu7VseMw/Y augMeKhB4COuwZ9U43w7tqDXQ43XfW/7Hpsyx6V76N48sdv1weUcma4u6prLRBRPhRnB 9mW2pBu997Sn5qNZ1631IIPtQBfPOgsqDpqlvV0o5GDhXVuTN+dvm7foJmtxFeMm/4oj uYig== X-Forwarded-Encrypted: i=1; AFNElJ/uY2CUUZaYvV+TUkNK6d0wnPvzB93kattYyFm8X4n2qQhMln+sPs0w3JCfo8200p42Sj0HmiHdJFupoIQ=@vger.kernel.org X-Gm-Message-State: AOJu0YzBCge8kL4ZnMxAmM/MNq6Ve1Qh8rOPFxJBn7kowHo+piXc8P/d l/5QBAa9HrlOEPM+8Y06+NU1Q7GrIECsdQhQ5Ojl+YL77o78o/bOzLgi X-Gm-Gg: AeBDievS9X/itDfwVokt4zoSAxdsu83jB5s16bjOIRqJmKr9QqKBM1LSVfXr609OAP5 9lhN8PJRW5+LkIEmWwCzVZtyOuPBB41jMBV7Gj8jaShtlRZWCq035ogEOXbbSLUsnGGIbHGzReU pj661NhwOspqxjDzMyqLiU1rzYqPOzNAxBf/j/O93b/4qXIOeUnUF9HPVrkoEQBNHbSK/6pWRWz aj+XkybL0U5UXKoOgMo4tAWw4sonX1ntcxZYm1NIgXERyg1UFUjEe6PLxE0NQB/8KPYooXe38E+ Bm15TsI74MVYuVRZdpAvh9nQ27KOk9dQMfKeCM+L8bXuNiRrRyDapYTYLO/YFApVdfWOiSuPh29 zEEQNi9fyU3WIANmSErzkBscUJH9rgMS7ohZV6EhkcUqO44qZiY7J5MfmkpeN7UAE7VIRbfp7lC TU8o+rZ/NHt9f1W42nYdy4naVBWeWC+a18vAOtxu/AGF0pg4N7IuFpN/p12kssY3UGp4Ofeg== X-Received: by 2002:a05:6a00:bd08:b0:82c:1cd0:2f7e with SMTP id d2e1a72fcca58-82f0d23f825mr16349417b3a.20.1776229684189; Tue, 14 Apr 2026 22:08:04 -0700 (PDT) Received: from hu-ckantibh-hyd.qualcomm.com ([202.46.23.25]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-82f67469dc3sm763706b3a.58.2026.04.14.22.08.00 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 14 Apr 2026 22:08:03 -0700 (PDT) From: Sanjay Chitroda X-Google-Original-From: Sanjay Chitroda To: jic23@kernel.org Cc: dlechner@baylibre.com, nuno.sa@analog.com, andy@kernel.org, sanjayembeddedse@gmail.com, tglx@kernel.org, christophe.jaillet@wanadoo.fr, mingo@kernel.org, nabijaczleweli@nabijaczleweli.xyz, kees@kernel.org, linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH v6 2/7] iio: ssp_sensors: cleanup codestyle check Date: Wed, 15 Apr 2026 10:37:44 +0530 Message-Id: <20260415050749.3858046-3-sanjayembedded@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20260415050749.3858046-1-sanjayembedded@gmail.com> References: <20260415050749.3858046-1-sanjayembedded@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" From: Sanjay Chitroda Reported by checkpatch: FILE: drivers/iio/common/ssp_sensors/ssp_spi.c CHECK: Macro argument '...' may be better as '(...)' to avoid precedence issues Signed-off-by: Sanjay Chitroda Reviewed-by: Andy Shevchenko --- drivers/iio/common/ssp_sensors/ssp_spi.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/drivers/iio/common/ssp_sensors/ssp_spi.c b/drivers/iio/common/= ssp_sensors/ssp_spi.c index 8c1e15d61db7..08ed92859be0 100644 --- a/drivers/iio/common/ssp_sensors/ssp_spi.c +++ b/drivers/iio/common/ssp_sensors/ssp_spi.c @@ -6,7 +6,7 @@ #include "ssp.h" =20 #define SSP_DEV (&data->spi->dev) -#define SSP_GET_MESSAGE_TYPE(data) (data & (3 << SSP_RW)) +#define SSP_GET_MESSAGE_TYPE(data) ((data) & (3 << SSP_RW)) =20 /* * SSP -> AP Instruction @@ -119,9 +119,9 @@ static inline void ssp_get_buffer(struct ssp_msg *m, un= signed int offset, } =20 #define SSP_GET_BUFFER_AT_INDEX(m, index) \ - (m->buffer[SSP_HEADER_SIZE_ALIGNED + index]) + ((m)->buffer[SSP_HEADER_SIZE_ALIGNED + (index)]) #define SSP_SET_BUFFER_AT_INDEX(m, index, val) \ - (m->buffer[SSP_HEADER_SIZE_ALIGNED + index] =3D val) + ((m)->buffer[SSP_HEADER_SIZE_ALIGNED + (index)] =3D val) =20 static void ssp_clean_msg(struct ssp_msg *m) { --=20 2.34.1 From nobody Tue Jun 16 01:16:41 2026 Received: from mail-pf1-f175.google.com (mail-pf1-f175.google.com [209.85.210.175]) (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 104D32EFDAF for ; Wed, 15 Apr 2026 05:08:08 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.175 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1776229690; cv=none; b=mok1lAr/BuvEidyLBYKsFXxI33/cRJQFL2c6utbg0gqZSyd/HtRGKPizbiS6wTLCQvjaHMwMgVnsYbZovIn+g0N26DgzjXCc9yPDWFmuSEOlJfJYQHOvZiUYkyrOEJ1vg55BiFaSiNvJCpHSHuBUD5iiODChhy8NdDPp5jg224Y= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1776229690; c=relaxed/simple; bh=UF9GAEqRB3HQjUw34L9XQFabmsBUcBIRhv1k0WYRFqE=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=ox3CMsdeFD6v5MFwVNza7NCsxRDA1yvFUUTvKGsugZQecQ48gUEeQqzJD7fRTc04+nb3rFKRc6ZW1bbk5C0fwrX7ZC0RZ/sogxX+1yB5vQCbrtS0Oc5S7PYchin9AzC0Y6Ony7a18an3pwnFlr2xyv3t2DrXj237LKqEaPUtG9A= 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=f9DAmXb5; arc=none smtp.client-ip=209.85.210.175 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="f9DAmXb5" Received: by mail-pf1-f175.google.com with SMTP id d2e1a72fcca58-82c70e4654eso2736141b3a.2 for ; Tue, 14 Apr 2026 22:08:08 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1776229688; x=1776834488; 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=wCuWTPIrAoEUGe1y5cea/5QdVJHDC3QtCN+aWosMD8A=; b=f9DAmXb5W+STcUWA7U6huHTNGz4mkIKIg6KdL7ztufN6iOP2cyxDgCTn5xi+X7B9fj rfDGqRXIFCsuTEM26oJD8WBxQB16ynyRARr1OcDA0UGcSYIh5d51ELJvtYPE19aSZ9B7 5UmSjlSyoPkg2ZKAs2geor3qywLf6JOcr9oCiUjP5/VeyU3lEGyLSY+usPgBaMvPVUz9 gJ6eqsUu72hZN7fRskylSiQ6ys35XZVBdnIoSrpSwKzl4+P4lvD3fs2KmiXhd7pMj4UC FAtlgYQsf8R7AIatA/TiAnmVS96+Z+FPi2pFnJ7ARzzLfDG/kSx3r0vSYLAYY6rI+QBQ 0x+A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1776229688; x=1776834488; 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=wCuWTPIrAoEUGe1y5cea/5QdVJHDC3QtCN+aWosMD8A=; b=QJXAFj1KgQVbzjLIRIzX9xTumqVc4ae6VNZEl1oUEM7Ll7gjrTRKtjhNpnZu8KvOjT 7L4LY96rcqP5RPEJpdJyDzQZvVDvOoMUe04cklR9r6B9KsxSSmrNwBiitv2Wj9JamLgf +cQ1yeIJNyl+KUp8yUsnSJsRnIlie/Zy2PHXzm0WdmwIzKWah2+6oxrbZvyJgBtIEtyy qQmsnvGCxQFGBdNBWCVM3yoJ+0rU6wpEYKk1R1aV8SDBykCPdcqonBTEA02BEPjFOQ7b ZJEvfd8Nc2f2UB2LtKVAsQm1dBbVDy4X0grahk/4jWyLbhSNqWcrUdrJCMWWWf7VeFbp Gzig== X-Forwarded-Encrypted: i=1; AFNElJ/F6dGaPx6HVwz7QA6HmSZcSnv75cHVXS7jlHH3G0zxbKHpGxDp6K0Y7as//UI8ntH3kt5Xfvv6+eqZQgA=@vger.kernel.org X-Gm-Message-State: AOJu0Yy6EXHk8ASSx8r1kRV02IF82DcvimHzu1ZbVjNGgpSQ7lHPlUU4 WEYU7bDok5Vj/Jx8o7x8iiOc9mDFxUtHQHQl6IAyakeJG2UfSNpiOdA7 X-Gm-Gg: AeBDievy6Ys5tZYFlyxRjCyQT70l3VVd42iRNgj6jd9Z9lHev0lQg+dHYMElovmag+T xHSVBZRf2/rhVo//J7Y4d9e5RezzX/actpOWrXXfUUyCBOuSQg0CDd6QF1jQirrQhMGn9BAxWco 8ToUoDCfxQOsxmZnDGD+TD0V3VfGlOQyssiGhpKO07rgEQyLYnjfIvOG8LdznuoGNoPILR31UOb 8B+8GOQqWjGlb1sv3wFTTtM9Al1Pv4uPH5wmYzvO/jvpHf1nBVuvEFCf5atdFWShlK7YP7RpXFa ENItivHmEfOxnV+D9ZCrXoeXKmb7gJSelcm4xTUBmKQ16zNmPNpxbiSBhRDrvyHNrJ40tNN5BC4 k7hyFZrGH82sb9uaGhZk/4j3nmf967DS8F90T2SOGCmWMRVeO8OU1kfimA96Rh+GlRWcac0LyDd c1dxvD4Egn3RaVB39GWjqxnOGVWOZNTZ248YBFFjdaG5cf7ErpwMTFkfPBMI4= X-Received: by 2002:a05:6a00:3a25:b0:82a:7893:e14b with SMTP id d2e1a72fcca58-82f0c3168e4mr20529886b3a.38.1776229688360; Tue, 14 Apr 2026 22:08:08 -0700 (PDT) Received: from hu-ckantibh-hyd.qualcomm.com ([202.46.23.25]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-82f67469dc3sm763706b3a.58.2026.04.14.22.08.04 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 14 Apr 2026 22:08:07 -0700 (PDT) From: Sanjay Chitroda X-Google-Original-From: Sanjay Chitroda To: jic23@kernel.org Cc: dlechner@baylibre.com, nuno.sa@analog.com, andy@kernel.org, sanjayembeddedse@gmail.com, tglx@kernel.org, christophe.jaillet@wanadoo.fr, mingo@kernel.org, nabijaczleweli@nabijaczleweli.xyz, kees@kernel.org, linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH v6 3/7] iio: ssp_sensors: factor out pending list add/remove helper(s) Date: Wed, 15 Apr 2026 10:37:45 +0530 Message-Id: <20260415050749.3858046-4-sanjayembedded@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20260415050749.3858046-1-sanjayembedded@gmail.com> References: <20260415050749.3858046-1-sanjayembedded@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" From: Sanjay Chitroda The SSP SPI transfer path manipulates the pending message list in multiple places, each time open-coding the same locking and list operations. Re-factor the pending list add and delete logic into small helper functions and drop use_no_irq variable to avoid duplication and simplify transfer flow to follow. No functional change intended. Signed-off-by: Sanjay Chitroda Suggested-by: Andy Shevchenko Reviewed-by: Andy Shevchenko --- Changes in v6: - Include tag for the suggestion of helper functions - Drop completely use_no_irq variable with review comment from Andy - Link to v5: https://lore.kernel.org/all/20260406080852.2727453-1-sanjayem= bedded@gmail.com/ --- drivers/iio/common/ssp_sensors/ssp_spi.c | 55 +++++++++++++----------- 1 file changed, 30 insertions(+), 25 deletions(-) diff --git a/drivers/iio/common/ssp_sensors/ssp_spi.c b/drivers/iio/common/= ssp_sensors/ssp_spi.c index 08ed92859be0..92418721ff82 100644 --- a/drivers/iio/common/ssp_sensors/ssp_spi.c +++ b/drivers/iio/common/ssp_sensors/ssp_spi.c @@ -174,15 +174,32 @@ static int ssp_check_lines(struct ssp_data *data, boo= l state) return 0; } =20 +static inline void ssp_pending_add(struct ssp_data *data, + struct ssp_msg *msg) +{ + if (msg->length =3D=3D 0) + return; + + mutex_lock(&data->pending_lock); + list_add_tail(&msg->list, &data->pending_list); + mutex_unlock(&data->pending_lock); +} + +static inline void ssp_pending_del(struct ssp_data *data, + struct ssp_msg *msg) +{ + if (msg->length =3D=3D 0) + return; + + mutex_lock(&data->pending_lock); + list_del(&msg->list); + mutex_unlock(&data->pending_lock); +} + static int ssp_do_transfer(struct ssp_data *data, struct ssp_msg *msg, struct completion *done, int timeout) { int status; - /* - * check if this is a short one way message or the whole transfer has - * second part after an interrupt - */ - const bool use_no_irq =3D msg->length =3D=3D 0; =20 if (data->shut_down) return -EPERM; @@ -202,35 +219,23 @@ static int ssp_do_transfer(struct ssp_data *data, str= uct ssp_msg *msg, goto _error_locked; } =20 - if (!use_no_irq) { - mutex_lock(&data->pending_lock); - list_add_tail(&msg->list, &data->pending_list); - mutex_unlock(&data->pending_lock); - } + ssp_pending_add(data, msg); =20 status =3D ssp_check_lines(data, true); if (status < 0) { - if (!use_no_irq) { - mutex_lock(&data->pending_lock); - list_del(&msg->list); - mutex_unlock(&data->pending_lock); - } + ssp_pending_del(data, msg); goto _error_locked; } =20 mutex_unlock(&data->comm_lock); =20 - if (!use_no_irq && done) - if (wait_for_completion_timeout(done, - msecs_to_jiffies(timeout)) =3D=3D - 0) { - mutex_lock(&data->pending_lock); - list_del(&msg->list); - mutex_unlock(&data->pending_lock); + if (msg->length && done && + !wait_for_completion_timeout(done, msecs_to_jiffies(timeout))) { + ssp_pending_del(data, msg); =20 - data->timeout_cnt++; - return -ETIMEDOUT; - } + data->timeout_cnt++; + return -ETIMEDOUT; + } =20 return 0; =20 --=20 2.34.1 From nobody Tue Jun 16 01:16:41 2026 Received: from mail-pf1-f169.google.com (mail-pf1-f169.google.com [209.85.210.169]) (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 3573931C567 for ; Wed, 15 Apr 2026 05:08:13 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.169 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1776229694; cv=none; b=HTO3HUGmTyTMfJncomcMeoHq/DAF3kRt2QMMQLnSQGw0+kZkqzZrtM576Iklvr4rXGY18e0IDS/GVO8a+NdNwpmvIn3Q4qc/TcJL1+FQgy126FlOxc9IXPJuVNZ/t7Y1QDrbS11o4LQd9OrtvjPUjReNDmK2uzJHiOzVMpqMCg8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1776229694; c=relaxed/simple; bh=DHw3mEf5E48IyzdwtirqKAzSFDKZSNiuWZlq+PA9dLE=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=dODjfK45tHclqljGCCZJAKM5hg/WuAO/sC0W7EzIKe62/E19TYM0TOrgFOFoOXdaN6oJYj5XTI8jZm7UlqAVXLYMkNsSoqPqwDKp7xC6i5imXLy1YkL0x88lg3u3Jg5bGh8Rr/24jlE27cBgr9KuuuKQaP0MFwChRb3CmqpZUqk= 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=TYEv30OZ; arc=none smtp.client-ip=209.85.210.169 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="TYEv30OZ" Received: by mail-pf1-f169.google.com with SMTP id d2e1a72fcca58-82748257f5fso3648373b3a.1 for ; Tue, 14 Apr 2026 22:08:13 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1776229692; x=1776834492; 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=dJbFp8qVdfznQptGY6110Ovof+z5WvLikLykH1C45qI=; b=TYEv30OZGsIN7HXdUMpz5sydfgFoMHNn7kKLFVi6Po5oREFi9L+i/tj/+I25oOgT4C 4PpY+QstOWVoABOB9EqXAcIhYOcjknmMWMPqYYzjrGGTjtTiR7cZV/48+uYukEISfsqF Q5c6Ux4Fyi7qEP5WvO9k1i/Xr4huQEFJ7gNRdhOhu3gkptTViNScXrHvkk4uffkLb9W3 4Uj4fCIN/nMXaO8DJpqoedmYYaGamISQ5CUnCT5ojV6CUbfFHScXL1WneF014oF6fojM FKQKDGM0KM3pguJfYQG9GGgKQUnQdZDRNTd3qzqSXnnWWbgSP5Ca6dqvf2PQzFNGvzHn nneg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1776229692; x=1776834492; 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=dJbFp8qVdfznQptGY6110Ovof+z5WvLikLykH1C45qI=; b=OEaCxbZDQIXjoIiV1ix6/2hGkHQ16Mhaj3prFxI17j8Cm6wdt53XAvNx7mNTPcBdDU LJ/1r1YdKz2ekA2yVUFofWu36X5SehZNAq8vvbjTNpgEnvBAK3fIAKwLMTcl17XRCVOW 6UQbkN73Qq6vDrbPlTMf3b3Ix1cA2v+PniiNU0V52ENJ7pOLtg5ion4hsWWLO5uRdgmT P5JXCiDAmKsaPTeKYhhxm3DLwuplpyx5dyvNLZoH6ctH3CAZ/S0UZ96oD+D7z+kz5phj F/Zk+UxtpNZKK2HygfAG+aQp+gvdV5DpfmNrHo/oWCkRmo1OoAZVKOv592QV/gBjWsBa 840g== X-Forwarded-Encrypted: i=1; AFNElJ85V848A5MdqPMwKngqfNMCVbiJJ/sH7A10N/tvR2QLm6Ku62T2I2xQiT42TYFgT/ho1HOO4wPAb7GEYL0=@vger.kernel.org X-Gm-Message-State: AOJu0YxTLRXSrj729RuaWEMhLVGlD3DbCux8gm5NWXGXOPoXdHh4tmNU Bs3cpIKZVHKc487V4wSg+WEeMAuSsrZE3MTTiMQ43dQGLIAIutluLTzr X-Gm-Gg: AeBDietwGZFuQzpAQv/CCgd70xxIeXHhehq0pH8X2YWdCN8FZYW9iGjzaPqBu/3/LPh i2RED/a+JmotuGOL1Oh3J+1rFyeIBOiBI3c9bo2QdntRDZwjj2Zj0Y7YCTxer6QWJdlLurex1A3 mRv/0k5LFr2sTVjvUGtV35XCaDJnSWDi3LjpB9cVDUo1Q1HSjTVaAKhxqpPwBnXtIUSt2cJQ9Mu pTirWVCIrgC7FdRci7RdZ1NwDMrc+JPkPAwjhxZkiechl4plocIcQ6egRB+wxwEzX44HxO1cmL8 Zf//rItpCcFaIvjszEMmkOftmJlPcG2bUJFxgQ+r7uQFN/Cce86XwrVcR+5FyOggCIRzYdcNVpA O3VQI+Zys4haqa4sSKliuGVutJyDyQF/MUa2a0xY4PTprQn+8b1fNFtTiMlmohRjrII03AfUmB5 QaOOoknSFz32j2Bo2DwhzNCRnksRiMjah/UNPo/h2vem+Zpl5OUN6mwmfuED8= X-Received: by 2002:a05:6a00:6ca2:b0:81f:5acb:55fc with SMTP id d2e1a72fcca58-82f0d10b602mr15954138b3a.10.1776229692502; Tue, 14 Apr 2026 22:08:12 -0700 (PDT) Received: from hu-ckantibh-hyd.qualcomm.com ([202.46.23.25]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-82f67469dc3sm763706b3a.58.2026.04.14.22.08.08 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 14 Apr 2026 22:08:12 -0700 (PDT) From: Sanjay Chitroda X-Google-Original-From: Sanjay Chitroda To: jic23@kernel.org Cc: dlechner@baylibre.com, nuno.sa@analog.com, andy@kernel.org, sanjayembeddedse@gmail.com, tglx@kernel.org, christophe.jaillet@wanadoo.fr, mingo@kernel.org, nabijaczleweli@nabijaczleweli.xyz, kees@kernel.org, linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH v6 4/7] iio: ssp_sensors: drop duplicated wdt timer and work cleanup Date: Wed, 15 Apr 2026 10:37:46 +0530 Message-Id: <20260415050749.3858046-5-sanjayembedded@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20260415050749.3858046-1-sanjayembedded@gmail.com> References: <20260415050749.3858046-1-sanjayembedded@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" From: Sanjay Chitroda The SSP remove path cleans up the watchdog timer and associated work both via ssp_disable_wdt_timer() and through explicit timer and work teardown. Remove the duplicated timer_delete_sync() and cancel_work_sync() calls and rely on ssp_disable_wdt_timer() as the single cleanup helper to simplify the remove path. No functional change intended. Signed-off-by: Sanjay Chitroda --- drivers/iio/common/ssp_sensors/ssp_dev.c | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/drivers/iio/common/ssp_sensors/ssp_dev.c b/drivers/iio/common/= ssp_sensors/ssp_dev.c index da09c9f3ceb6..cb4c26a6b76c 100644 --- a/drivers/iio/common/ssp_sensors/ssp_dev.c +++ b/drivers/iio/common/ssp_sensors/ssp_dev.c @@ -585,14 +585,11 @@ static void ssp_remove(struct spi_device *spi) "SSP_MSG2SSP_AP_STATUS_SHUTDOWN failed\n"); =20 ssp_enable_mcu(data, false); - ssp_disable_wdt_timer(data); - ssp_clean_pending_list(data); =20 free_irq(data->spi->irq, data); =20 - timer_delete_sync(&data->wdt_timer); - cancel_work_sync(&data->work_wdt); + ssp_disable_wdt_timer(data); =20 mutex_destroy(&data->comm_lock); mutex_destroy(&data->pending_lock); --=20 2.34.1 From nobody Tue Jun 16 01:16:41 2026 Received: from mail-pf1-f180.google.com (mail-pf1-f180.google.com [209.85.210.180]) (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 59BE2322527 for ; Wed, 15 Apr 2026 05:08:17 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.180 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1776229698; cv=none; b=Mgxuw8hRO6c6ZPPFPwHnAIR+Awpev9NoxvogDE7TUrjmd9S6Rtt5JCtbz1729EAKDbGSGr6QBIWRIWWXBlMFPLq+T7cOZhEI7jwxM9Xrzhg+edj5NTAfj4eP0TcYD0O1Ziu4Uzd/XsxERCUIAV9s6PsOlrM3K9Vu8ToaoOi2PWs= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1776229698; c=relaxed/simple; bh=LOhrsG8Pz8jrQhalvA+AyiSQI74st8YiwXNOTXJehnk=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=WkQvlig4yqXAA3vryXtoAuP44lyfckH0fJXq19v5ZKqiZDyfmxJm1HOc+35BkpW8amLp2S8fdqwbsx6V/MBjEeKTelQwYmXZjjmP6xUMPYGYMUIr/wL725RFPjCwHCb50hTP+8IbbPYkckv3UltX12Axa31gHC0BDM5wNJffirU= 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=XkebxE/u; arc=none smtp.client-ip=209.85.210.180 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="XkebxE/u" Received: by mail-pf1-f180.google.com with SMTP id d2e1a72fcca58-82c70e4654eso2736174b3a.2 for ; Tue, 14 Apr 2026 22:08:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1776229697; x=1776834497; 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=yv0u5blj3D1Jrxi3hUt1Z6abAjaZCmKIFZM6/uPjCsQ=; b=XkebxE/uaGNv949R4rAzEQ6MOJpComPJxtPxRFLIq0iQt2dCnXetVcHH4mG22yWdrJ OzEkX63VEanMaN2uwHgNs/pPU+YzoDeEDPXcQ4c+BLyFX1Z7iPsUh6a9nrd3LHgPdG2d 8nze1bZK1yR2HkyHcjG8FeA/UE9s05fD6gqM56wVRwj4M4UC9vScb6V5+326VV0K0k3V YsNz4VLYSm/pamxIU2ZsIiiOJtnY1htDCn2JwzqSH6pcLRxSCYau746Xdgvyw1IGqLP5 FxjJpkWDyZ45L8vQt0KoKtpRPg/poO/Z1SiPpW5Up9lIrvbYo403rotE83k+VtNv/ZqC +f0A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1776229697; x=1776834497; 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=yv0u5blj3D1Jrxi3hUt1Z6abAjaZCmKIFZM6/uPjCsQ=; b=E96oKi0RtPKd/8ViU3s9m3mPRg90MaGCYe4SXkR1Guay0uVraM/zmEG9eUicBGTiPB hVu+30RNzP4b5DoQEbyh3fG3xzoG0vcw9N4bZrBRJ2OP8Gus3XaKgQ0VFtLKdROHqVG8 JR1+XuMpbxWT9azQrrITw6HqokKmkERh2XIcwrLXOeQ7Q7udoqskwd90aUgYfGJuI8Uh KqzWLL0ucnG94QQMN7lT1WNoMxJc94oRyWPwd47Qokk0dTjiZIypDRZnXFwlmB3MECAs OOZMpZrZ7QaVD7pAgsLxI5AAt3E+2pHIfbQZXe9EB4ynwI9I3+rSGzZ4uUQ+R3tkAPnJ 7oPA== X-Forwarded-Encrypted: i=1; AFNElJ/CnIsrz0+lZQ1vFPziI9VF0HgOCPqppjfVcdJ+XstktWUf4BC1m/KpbZcL6qXLPqGN289lYwu6iVExkjo=@vger.kernel.org X-Gm-Message-State: AOJu0YxiWe+8VMjieOxk4VXrQtO4Z0gjaBObAW0Ji+oQgT4xEPvdlce1 IyMe5xFncl/yrSqruetHlkRAitxU472XXhy/2/S+kJnuOt0sA8oWQ+Ju X-Gm-Gg: AeBDiet1/umA1fjHVWtUZm3+SOdYBG59CL98t3sTj2D0dWSFNNFjPonqvgDDYVSwlSQ 6r7slD3tXduCLusTpeLo6IZe61F8zs7OBN67GFIVc3eW5sHX3eF1MtQbybTOrZWEy2jlJ3zQQa3 OxBaZ3/Gu1hGGzrthR8XboLkroaaoQg86HEosO7lWau+mycfamvM4YOnWVGLHCWb0b/UPf//vZp TvG44HJxYMOZcM82PIUjHqoA8xelj5BEsvL+I+V7oQpTW12Sf9B9gNAsKqKiZBY5+ku1pxBoh29 UyeV0+/J4n+UF67QEsCUhIBwo+VI6TvsIkkWqwXJcqekGN+nDDjFo0GOu2psvT3liS2OGEsp7vm BShjFoTPNqiG/kKRuzEvYp6Hb2t8sOIGmWS2VvG0g1uVZz6vGe918R4ONSHJvyMoIzShX13b6Gp bTpxGkxDyvKhKWTCe6Nz6C7uAz3xnBDB+S72anjTYEeMP7lcYfgxoYqxDAfyO0HOIP46HBBw== X-Received: by 2002:a05:6a00:12d3:b0:829:7e6d:cf22 with SMTP id d2e1a72fcca58-82f0c317a4emr20911335b3a.43.1776229696674; Tue, 14 Apr 2026 22:08:16 -0700 (PDT) Received: from hu-ckantibh-hyd.qualcomm.com ([202.46.23.25]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-82f67469dc3sm763706b3a.58.2026.04.14.22.08.12 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 14 Apr 2026 22:08:16 -0700 (PDT) From: Sanjay Chitroda X-Google-Original-From: Sanjay Chitroda To: jic23@kernel.org Cc: dlechner@baylibre.com, nuno.sa@analog.com, andy@kernel.org, sanjayembeddedse@gmail.com, tglx@kernel.org, christophe.jaillet@wanadoo.fr, mingo@kernel.org, nabijaczleweli@nabijaczleweli.xyz, kees@kernel.org, linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH v6 5/7] iio: ssp_sensors: convert probe and teardown to devm-managed resources Date: Wed, 15 Apr 2026 10:37:47 +0530 Message-Id: <20260415050749.3858046-6-sanjayembedded@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20260415050749.3858046-1-sanjayembedded@gmail.com> References: <20260415050749.3858046-1-sanjayembedded@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" From: Sanjay Chitroda Convert SSP driver resource management to use devm-managed helpers and devm actions, tying the lifetime of all resources to the device. Mutex initialization, IRQ registration, work items, timers, and MFD resource are now managed using devm APIs. Cleanup logic previously handled explicitly in probe error paths and the remove callback is replaced with devm_add_action_or_reset(), ensuring correct teardown ordering and consistent behaviour on probe failure and device unbind. This simplifies the probe path by removing goto-based error handling, eliminates the remove callback entirely. No functional change intended. Signed-off-by: Sanjay Chitroda --- Changes in v6: - Drop remove path completely using devm_action with review comment from Da= vid - Convert MFD device to manage resource along with mutex and IRQ - Link to v5: https://lore.kernel.org/all/20260406080852.2727453-1-sanjayem= bedded@gmail.com/ --- drivers/iio/common/ssp_sensors/ssp_dev.c | 88 ++++++++++-------------- 1 file changed, 38 insertions(+), 50 deletions(-) diff --git a/drivers/iio/common/ssp_sensors/ssp_dev.c b/drivers/iio/common/= ssp_sensors/ssp_dev.c index cb4c26a6b76c..94ecc794f926 100644 --- a/drivers/iio/common/ssp_sensors/ssp_dev.c +++ b/drivers/iio/common/ssp_sensors/ssp_dev.c @@ -194,6 +194,16 @@ static void ssp_disable_wdt_timer(struct ssp_data *dat= a) cancel_work_sync(&data->work_wdt); } =20 +static void ssp_shutdown_action(struct ssp_data *data) +{ + if (ssp_command(data, SSP_MSG2SSP_AP_STATUS_SHUTDOWN, 0) < 0) + dev_err(&data->spi->dev, + "SSP_MSG2SSP_AP_STATUS_SHUTDOWN failed\n"); + + ssp_enable_mcu(data, false); + ssp_clean_pending_list(data); +} + /** * ssp_get_sensor_delay() - gets sensor data acquisition period * @data: sensorhub structure @@ -491,9 +501,9 @@ static int ssp_probe(struct spi_device *spi) return -ENODEV; } =20 - ret =3D mfd_add_devices(&spi->dev, PLATFORM_DEVID_NONE, - sensorhub_sensor_devs, - ARRAY_SIZE(sensorhub_sensor_devs), NULL, 0, NULL); + ret =3D devm_mfd_add_devices(&spi->dev, PLATFORM_DEVID_NONE, + sensorhub_sensor_devs, + ARRAY_SIZE(sensorhub_sensor_devs), NULL, 0, NULL); if (ret < 0) { dev_err(&spi->dev, "mfd add devices fail\n"); return ret; @@ -503,14 +513,16 @@ static int ssp_probe(struct spi_device *spi) ret =3D spi_setup(spi); if (ret < 0) { dev_err(&spi->dev, "Failed to setup spi\n"); - goto err_setup_spi; + return ret; } =20 data->fw_dl_state =3D SSP_FW_DL_STATE_NONE; data->spi =3D spi; spi_set_drvdata(spi, data); =20 - mutex_init(&data->comm_lock); + ret =3D devm_mutex_init(&spi->dev, &data->comm_lock); + if (ret < 0) + return ret; =20 for (i =3D 0; i < SSP_SENSOR_MAX; ++i) { data->delay_buf[i] =3D SSP_DEFAULT_POLLING_DELAY; @@ -523,7 +535,9 @@ static int ssp_probe(struct spi_device *spi) =20 data->time_syncing =3D true; =20 - mutex_init(&data->pending_lock); + ret =3D devm_mutex_init(&spi->dev, &data->pending_lock); + if (ret < 0) + return ret; INIT_LIST_HEAD(&data->pending_list); =20 atomic_set(&data->enable_refcount, 0); @@ -533,14 +547,17 @@ static int ssp_probe(struct spi_device *spi) =20 timer_setup(&data->wdt_timer, ssp_wdt_timer_func, 0); =20 - ret =3D request_threaded_irq(data->spi->irq, NULL, - ssp_irq_thread_fn, - IRQF_TRIGGER_FALLING | IRQF_ONESHOT, - "SSP_Int", data); - if (ret < 0) { - dev_err(&spi->dev, "Irq request fail\n"); - goto err_setup_irq; - } + ret =3D devm_add_action_or_reset(&spi->dev, + ssp_disable_wdt_timer, data); + if (ret) + return ret; + + ret =3D devm_request_threaded_irq(&spi->dev, data->spi->irq, NULL, + ssp_irq_thread_fn, + IRQF_TRIGGER_FALLING | IRQF_ONESHOT, + "SSP_Int", data); + if (ret < 0) + return ret; =20 /* Let's start with enabled one so irq balance could be ok */ data->shut_down =3D false; @@ -548,53 +565,24 @@ static int ssp_probe(struct spi_device *spi) /* just to avoid unbalanced irq set wake up */ enable_irq_wake(data->spi->irq); =20 + ret =3D devm_add_action_or_reset(&spi->dev, + ssp_shutdown_action, data); + if (ret) + return ret; + data->fw_dl_state =3D ssp_check_fwbl(data); if (data->fw_dl_state =3D=3D SSP_FW_DL_STATE_NONE) { ret =3D ssp_initialize_mcu(data); if (ret < 0) { dev_err(&spi->dev, "Initialize_mcu failed\n"); - goto err_read_reg; + return ret; } } else { dev_err(&spi->dev, "Firmware version not supported\n"); - ret =3D -EPERM; - goto err_read_reg; + return -EPERM; } =20 return 0; - -err_read_reg: - free_irq(data->spi->irq, data); -err_setup_irq: - mutex_destroy(&data->pending_lock); - mutex_destroy(&data->comm_lock); -err_setup_spi: - mfd_remove_devices(&spi->dev); - - dev_err(&spi->dev, "Probe failed!\n"); - - return ret; -} - -static void ssp_remove(struct spi_device *spi) -{ - struct ssp_data *data =3D spi_get_drvdata(spi); - - if (ssp_command(data, SSP_MSG2SSP_AP_STATUS_SHUTDOWN, 0) < 0) - dev_err(&data->spi->dev, - "SSP_MSG2SSP_AP_STATUS_SHUTDOWN failed\n"); - - ssp_enable_mcu(data, false); - ssp_clean_pending_list(data); - - free_irq(data->spi->irq, data); - - ssp_disable_wdt_timer(data); - - mutex_destroy(&data->comm_lock); - mutex_destroy(&data->pending_lock); - - mfd_remove_devices(&spi->dev); } =20 static int ssp_suspend(struct device *dev) --=20 2.34.1 From nobody Tue Jun 16 01:16:41 2026 Received: from mail-pf1-f178.google.com (mail-pf1-f178.google.com [209.85.210.178]) (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 98A933563D2 for ; Wed, 15 Apr 2026 05:08:21 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.178 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1776229702; cv=none; b=l7mFiRNc7WnDOlam5FPMyIzyP4t8EgtwC7GS1hD+Kh3dQNRAYv9I2UAKMzPSrWl0VrEzd1iLUNCuE2SjER4b3dUN6SpDJZQrT95gBcGiVNos0Kmjy7AJLfPmCrtYO7z1rWMvJulomPFzW/ejXtf7fRQtROgoll++fXv/903BPV4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1776229702; c=relaxed/simple; bh=C43gMMdvLSzgY8/Agso8t9GZKdH3sdzxcjuZfOzVocI=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=r+0LMFLtsjRXXzmXVxO2N1vyP5sq+b6fVVPNFCETZkHO9Bj4l+gXKc8uAMKb2FEhFZud/U4Qx+4Y4ykdqX2Jw9xzo27BGwB1nwJYFnqMlrKl/+u/B+vmBimUM5x1hSdRIz37xocw6YW1LM09T9B5GWCP3wAqxmDXLqMlOg6S38Y= 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=gNlNn0+U; arc=none smtp.client-ip=209.85.210.178 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="gNlNn0+U" Received: by mail-pf1-f178.google.com with SMTP id d2e1a72fcca58-82f37c09352so2127306b3a.0 for ; Tue, 14 Apr 2026 22:08:21 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1776229701; x=1776834501; 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=Lascn9Ko8D6lhEGfJWA6dLDbySL0NyjNnUVHhjd2+8g=; b=gNlNn0+UX2TJeUn+GtX4zTdeCYr5Bmz/4fLrZ/lw/gfEECa4oUhMq2kS9xCBsYK1Gj 0Wecv4qPZeZjDoSdMBPa5qMkjSv18VCSygEQfxlcW0L35DAbhbYhWaCFsct52ISUu0SG b5w1zNlpRch1ZWL/cP/bmusDFNJQwWJtB+9IJHbXluoupDKt7URIXEIuj9mGqXE5ZyvK kSsZAViFfxVEbXTzT9QRFrYy/ZrScf9TIO9Mc8Z+NKxA4RFmZCtPmsPN8SV/2Ehi2jd7 FxGR3wGWkas1TOm0L5NkQCXxyDRya9B9kfFww2d8iWMNbOxFl76x62fWmISeNyPPP7JB 4FzQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1776229701; x=1776834501; 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=Lascn9Ko8D6lhEGfJWA6dLDbySL0NyjNnUVHhjd2+8g=; b=LcDVVZO3RhqsOIvizoLLPOXjJH3KMRJJXfQN9Vj5G3LP5Slvcc5iG4RshT5ya762us ZeZKxkfSFVOJ28mkvTIYaC7JLNfAYiSp/egOrff+pdzh3/EBnzkVe1TZ6FKA850ngSz2 ZUMFVRm1NQf3Z7WbgaxUPxcRD8zpGt3iQLJpJohIY/9/U6868HMUqBOqq3Dyj3DgU9h7 Sgloni9U9NU2YphgBeRmb7pfKA07EUIbZ/ku8EH+Skp1Jvu4dAO4kv/f3ZCG6xa9uM+o vDEqqj+/h7WVbT8L2m8Ma5grEXBXFeWi34/VO0cJRqL9X2+xwvY9yerz6EkUB3vC/oAd IMqg== X-Forwarded-Encrypted: i=1; AFNElJ/Vj8eA0NFX31lvGGGGxqFnNWnRjXWz0FO3couL+HOHKdMQOBNEOR/wUZTg7rPGzsiRHb9t9CO1YqrMdv4=@vger.kernel.org X-Gm-Message-State: AOJu0Yy+MnMO8riLOWR+RytKriV/oqey5tmxai/Ip/a6DxWiV/DEWVtk t5yhI9m2GLpqhiJKlgdLBp/2GGV40m+PVkWX8T6EzewkgBg4eVyJ1mvV X-Gm-Gg: AeBDieuAuwx+kXwIhbFJoLzCy8keW9Y9zMVbEyxGFYV7w41TQ/p5x0s6dTmZVaivBqS qNZxFU1tH7oJmE+fiJwit00dFn/Qe4Ej1jY0rxWrXxIMtMvTeFL/aPv3WKPFKoM25Mp8n+pVT70 tBh1Gx47Oz8oiBOKxzMnpDhzWhsaJYiZTO+uYFlvoggpT6358/79X8S3G0bBa7Ta+4rONKI/u30 29sJtj+6/iXvZnHtgWsJKW920zxrkXtrwxyQ/msOURGAY2qxXkaP+Hsv4Nuri3HF1qbDkpcztPq yespxna6ErTgAyth5XPpY95JKc+nleqPpZUt2+dj1NEGgnV/pbkih3M6Qit1zZK3ygYpfMgsrTa mvIEeLq7NEnEp+Ldx3JCfNRUC61HdlFjyteNQpvPO+5rkQ3TaWJP7kSApIteB9XPGg89ICqHSce p0cCX4z6/A5ElAoNLRVauXrvwT737zWdIR0rYjwl47l9hETDpW9CWKbHnaZ3I= X-Received: by 2002:a05:6a00:4fcf:b0:82c:9c4e:66ca with SMTP id d2e1a72fcca58-82f0d0d190dmr15585101b3a.2.1776229700850; Tue, 14 Apr 2026 22:08:20 -0700 (PDT) Received: from hu-ckantibh-hyd.qualcomm.com ([202.46.23.25]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-82f67469dc3sm763706b3a.58.2026.04.14.22.08.17 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 14 Apr 2026 22:08:20 -0700 (PDT) From: Sanjay Chitroda X-Google-Original-From: Sanjay Chitroda To: jic23@kernel.org Cc: dlechner@baylibre.com, nuno.sa@analog.com, andy@kernel.org, sanjayembeddedse@gmail.com, tglx@kernel.org, christophe.jaillet@wanadoo.fr, mingo@kernel.org, nabijaczleweli@nabijaczleweli.xyz, kees@kernel.org, linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH v6 6/7] iio: ssp_sensors: Use dev_err_probe Date: Wed, 15 Apr 2026 10:37:48 +0530 Message-Id: <20260415050749.3858046-7-sanjayembedded@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20260415050749.3858046-1-sanjayembedded@gmail.com> References: <20260415050749.3858046-1-sanjayembedded@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" From: Sanjay Chitroda dev_err_probe() makes error code handling simpler and handle deferred probe nicely (avoid spamming logs). Signed-off-by: Sanjay Chitroda --- drivers/iio/common/ssp_sensors/ssp_dev.c | 36 ++++++++++-------------- 1 file changed, 15 insertions(+), 21 deletions(-) diff --git a/drivers/iio/common/ssp_sensors/ssp_dev.c b/drivers/iio/common/= ssp_sensors/ssp_dev.c index 94ecc794f926..0a00ead3195d 100644 --- a/drivers/iio/common/ssp_sensors/ssp_dev.c +++ b/drivers/iio/common/ssp_sensors/ssp_dev.c @@ -496,25 +496,21 @@ static int ssp_probe(struct spi_device *spi) struct ssp_data *data; =20 data =3D ssp_parse_dt(&spi->dev); - if (!data) { - dev_err(&spi->dev, "Failed to find platform data\n"); - return -ENODEV; - } + if (!data) + return dev_err_probe(&spi->dev, -ENODEV, + "Failed to find platform data\n"); =20 ret =3D devm_mfd_add_devices(&spi->dev, PLATFORM_DEVID_NONE, sensorhub_sensor_devs, - ARRAY_SIZE(sensorhub_sensor_devs), NULL, 0, NULL); - if (ret < 0) { - dev_err(&spi->dev, "mfd add devices fail\n"); - return ret; - } + ARRAY_SIZE(sensorhub_sensor_devs), + NULL, 0, NULL); + if (ret < 0) + return dev_err_probe(&spi->dev, ret, "mfd add devices fail\n"); =20 spi->mode =3D SPI_MODE_1; ret =3D spi_setup(spi); - if (ret < 0) { - dev_err(&spi->dev, "Failed to setup spi\n"); - return ret; - } + if (ret < 0) + return dev_err_probe(&spi->dev, ret, "Failed to setup spi\n"); =20 data->fw_dl_state =3D SSP_FW_DL_STATE_NONE; data->spi =3D spi; @@ -573,14 +569,12 @@ static int ssp_probe(struct spi_device *spi) data->fw_dl_state =3D ssp_check_fwbl(data); if (data->fw_dl_state =3D=3D SSP_FW_DL_STATE_NONE) { ret =3D ssp_initialize_mcu(data); - if (ret < 0) { - dev_err(&spi->dev, "Initialize_mcu failed\n"); - return ret; - } - } else { - dev_err(&spi->dev, "Firmware version not supported\n"); - return -EPERM; - } + if (ret < 0) + return dev_err_probe(&spi->dev, ret, + "Initialize_mcu failed\n"); + } else + return dev_err_probe(&spi->dev, -EPERM, + "Firmware version not supported\n"); =20 return 0; } --=20 2.34.1 From nobody Tue Jun 16 01:16:41 2026 Received: from mail-pf1-f178.google.com (mail-pf1-f178.google.com [209.85.210.178]) (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 DC1BF3368A9 for ; Wed, 15 Apr 2026 05:08:25 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.178 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1776229707; cv=none; b=EQvpWgorj8mxaXaaKx4Ish0C+O5SOGXHJyowqACnxBIQwAo5/QcCs0Ilkl0vKIEVvV6fY3ROpDb2A4h1HQBmPWNAovmyIQBXVGhvkbgENhczvg4UojFliji0eIa8yBSKNKjDXxmDqV9RW06QfAEHs7itCPiECXuvJAX/Vo+vxbU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1776229707; c=relaxed/simple; bh=xo1DgEm+v+4CitQlUArtOELjVVPqS7ieeA8SZvBdteo=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=dTu2z0gmThJsREv/33BNoT1o+s6T6cPmqebOrSGgPnBoQLN4LwGwPM+Y5CHAUycaC7gsyMWKnErPBQlk4KzmvPPU6dhqxUbvWoLzE/FF5mMlZTx7y3b4X/KTyKycm3dGrDrP6j8LJLWwDQEVfNfe3szNY4868//UsdnIHZLkX60= 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=VzamlGx1; arc=none smtp.client-ip=209.85.210.178 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="VzamlGx1" Received: by mail-pf1-f178.google.com with SMTP id d2e1a72fcca58-82f2766905fso1627443b3a.3 for ; Tue, 14 Apr 2026 22:08:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1776229705; x=1776834505; 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=eD/sVoyPZ+3rAECULNElpo4ngJXCE777D1kzkyumRTc=; b=VzamlGx1FHnm4FQpEmzOCgrqcyUpYR4vOiyetk0os8/u3SKsDCd6h5vtdwrWYmt0MQ njnhBMTz/9ATuxeMsdMEW2WWcfHKrqfQNowBmh1a/ShDqERhVhwhdFTSqITExitIky1s KUtX5Htj7kFEIDI1/Ldw0jpYEFALKOOcBL20M2TnE2Vp98C/a+/wA/wjObPZc4UHrSi1 poROuwJOwnXSxm+TjwyVmuFmlblNPq4/F3W5hY2+6GDFyxokw9bR1v4EhIHP7hqr7QIE j+61sXxeygWXA9jjzujxn+yxBW13pb/NOKRAWL0M7jeZDqL8Fs19SuTo7++XrzVzRP5M WHgw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1776229705; x=1776834505; 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=eD/sVoyPZ+3rAECULNElpo4ngJXCE777D1kzkyumRTc=; b=f4pwipnzzujkIaP2hAaU5qfOyHGrMG+RUT3uusp+LcG5lwdbXHP7zogCD+qsn9DNq/ Vhvfwl65jvVPcCOvsjpZR9I5Jfzgf/KBIvKMpFoJ2OLtUyL1qgZZ1hIXC71jSM2wnw4f KhehGUEslkgBVKTBOqDnPb8gGmE1Xk1Ec9F9ODfMFM3KdAvgoDg0M8IT2zZR4M4LxCFL OCbMOgdC9BwSMXf12Usm0BH0QFZv66pkEzSJ/U1xpPdeED9RZkpGJ0f7oeYjTQCybJDP 2mZTOdEZLX7DAy6eRbvrU7mRcLLxzNMG9yS7xx8UZAiFd/OznkA2LoZMxMDn1t9miMfp CWaA== X-Forwarded-Encrypted: i=1; AFNElJ+phBzotP0oZVhVRE0ElxwcQd7Lzip6vJ31OHzpfeUzYCarmIJaF2UvczMF0jrCd6ITIKu+KQ9Mg/iLkww=@vger.kernel.org X-Gm-Message-State: AOJu0YzuwyoY4//VMEhmk1vvhbOgnnDQ5AkqxqFj9mRb6t+H8g4AsaKn baCyaDjIjeQ+pp8E1UHESu8heFJVDwb2yEZLtAT8ZExf0/kc6c6cbo1O X-Gm-Gg: AeBDiesvO0b1UJs+sAfYYfQn7DQVbpstCoixALTqkUvPvbWwLS+eD/JaNNZH0I7uxL+ ataiRq/bPro0SsdkDva2D9EetiHIA0oviyVRtE68h/U29vCxslzJQJxbo+/48b2k2rIr8/ryrdY kgtKXwts7asiwPN/817gIWWsQ4MTa32Ov8tqInAoWU8XICqlUf92EL9tmV6coIH9zFXYqPP1/1p dtsVRKUJ8lHOOwreu7ucI0Yx1BGzdzLznL/E3GdQweRLrcEXi/JuyqF92X806O36VGZlhMybRB5 AjqqUE7bEoxjnHA3EIbNm+K+T7tF8cOOCb2196x+jJyMmnSGOrAg4hLBaZMW9pWpw+MZpaiO89V onLsC8YIOv3AeAKuqPiYgsaeTCxNeQIsgP0jsJ0RmtWo6xRWl383pPXTy5tBsWxmfBpnZHKHGFz 68GZDlu6pjwSisdw7VwfJSXrc6tTxeA59FdPHgy9LND10emPhxorsLE70ttqI= X-Received: by 2002:a05:6a00:1ca9:b0:82f:5a27:10c9 with SMTP id d2e1a72fcca58-82f5a271a59mr4065059b3a.51.1776229705114; Tue, 14 Apr 2026 22:08:25 -0700 (PDT) Received: from hu-ckantibh-hyd.qualcomm.com ([202.46.23.25]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-82f67469dc3sm763706b3a.58.2026.04.14.22.08.21 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 14 Apr 2026 22:08:24 -0700 (PDT) From: Sanjay Chitroda X-Google-Original-From: Sanjay Chitroda To: jic23@kernel.org Cc: dlechner@baylibre.com, nuno.sa@analog.com, andy@kernel.org, sanjayembeddedse@gmail.com, tglx@kernel.org, christophe.jaillet@wanadoo.fr, mingo@kernel.org, nabijaczleweli@nabijaczleweli.xyz, kees@kernel.org, linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH v6 7/7] iio: ssp_sensors: reuse embedded RX buffer for SPI transfers Date: Wed, 15 Apr 2026 10:37:49 +0530 Message-Id: <20260415050749.3858046-8-sanjayembedded@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20260415050749.3858046-1-sanjayembedded@gmail.com> References: <20260415050749.3858046-1-sanjayembedded@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" From: Sanjay Chitroda Avoid allocating a temporary DMA buffer in the interrupt context when handling hub-to-AP and AP-to-hub SPI write messages. Replace the dynamically allocated RX buffer with a fixed-size, preallocated buffer embedded in the driver structure and reused for all SPI receive operations. This removes memory allocation from the IRQ path, simplifies lifetime management. No functional change intended. Signed-off-by: Sanjay Chitroda --- Changes in v6: - Replace dynamically allocated RX buffer with embedded fixed-size buffer - Fix struct layout to satisfy DMA alignment constraints comment from David - Link to v5: https://lore.kernel.org/all/20260406080852.2727453-1-sanjayem= bedded@gmail.com/ Changes in v5: - Rebase change on top of latest v5 patch series. Changes in v4: - Use preallocated buffer and stash a buffer that gets reused each time ins= tead of a fresh allocation. - Link to v3: https://lore.kernel.org/all/20260315125509.857195-3-sanjayemb= edded@gmail.com/ Changes in v3: - prepare series to have all respective cleanup API support for the ssp_sen= sors following input from Andy Shevchenko - Link to v2 https://lore.kernel.org/all/20260311174151.3441429-1-sanjayemb= edded@gmail.com/ Changes in v2: - split series to individual patch - address review comment from Andy Shevchenko - Link to v1 https://lore.kernel.org/all/20260310200513.2162018-3-sanjayemb= edded@gmail.com/ --- drivers/iio/common/ssp_sensors/ssp.h | 3 +++ drivers/iio/common/ssp_sensors/ssp_spi.c | 20 ++------------------ 2 files changed, 5 insertions(+), 18 deletions(-) diff --git a/drivers/iio/common/ssp_sensors/ssp.h b/drivers/iio/common/ssp_= sensors/ssp.h index f649cdecc277..8295bb7062a3 100644 --- a/drivers/iio/common/ssp_sensors/ssp.h +++ b/drivers/iio/common/ssp_sensors/ssp.h @@ -174,6 +174,7 @@ struct ssp_sensorhub_info { * @pending_list: pending list for messages queued to be sent/read * @sensor_devs: registered IIO devices table * @enable_refcount: enable reference count for wdt (watchdog timer) + * @rx_buf: buffer to receive SPI data * @header_buffer: cache aligned buffer for packet header */ struct ssp_data { @@ -221,6 +222,8 @@ struct ssp_data { struct iio_dev *sensor_devs[SSP_SENSOR_MAX]; atomic_t enable_refcount; =20 + u8 rx_buf[SSP_DATA_PACKET_SIZE]; + __le16 header_buffer[SSP_HEADER_BUFFER_SIZE / sizeof(__le16)] __aligned(I= IO_DMA_MINALIGN); }; =20 diff --git a/drivers/iio/common/ssp_sensors/ssp_spi.c b/drivers/iio/common/= ssp_sensors/ssp_spi.c index 92418721ff82..bab84b25edff 100644 --- a/drivers/iio/common/ssp_sensors/ssp_spi.c +++ b/drivers/iio/common/ssp_sensors/ssp_spi.c @@ -336,7 +336,7 @@ static int ssp_parse_dataframe(struct ssp_data *data, c= har *dataframe, int len) /* threaded irq */ int ssp_irq_msg(struct ssp_data *data) { - char *buffer; + char *buffer =3D data->rx_buf; u8 msg_type; int ret; u16 length, msg_options; @@ -380,19 +380,12 @@ int ssp_irq_msg(struct ssp_data *data) * but the slave should not send such ones - it is to * check but let's handle this */ - buffer =3D kmalloc(length, GFP_KERNEL | GFP_DMA); - if (!buffer) { - ret =3D -ENOMEM; - goto _unlock; - } =20 /* got dead packet so it is always an error */ ret =3D spi_read(data->spi, buffer, length); if (ret >=3D 0) ret =3D -EPROTO; =20 - kfree(buffer); - dev_err(SSP_DEV, "No match error %x\n", msg_options); =20 @@ -425,22 +418,13 @@ int ssp_irq_msg(struct ssp_data *data) mutex_unlock(&data->pending_lock); break; case SSP_HUB2AP_WRITE: - buffer =3D kzalloc(length, GFP_KERNEL | GFP_DMA); - if (!buffer) - return -ENOMEM; - ret =3D spi_read(data->spi, buffer, length); if (ret < 0) { dev_err(SSP_DEV, "spi read fail\n"); - kfree(buffer); break; } =20 - ret =3D ssp_parse_dataframe(data, buffer, length); - - kfree(buffer); - break; - + return ssp_parse_dataframe(data, buffer, length); default: dev_err(SSP_DEV, "unknown msg type\n"); return -EPROTO; --=20 2.34.1