From nobody Mon Feb 9 03:31:28 2026 Received: from mx0b-0031df01.pphosted.com (mx0b-0031df01.pphosted.com [205.220.180.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 98394427A0B for ; Wed, 4 Feb 2026 16:29:14 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=205.220.180.131 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1770222554; cv=none; b=jlBseHslHX80A8GifMK5KRVVeK2I8aE+z7FbMki34MGKrxbObGI0La/U6OhP7eTfK0hXyMt+2NObBGgFDgxYHlJTN+VPvkUWxEdy2SlXeZm5Wg35KNArj9Qkyss9N+Qbc4iIZGQMwDRfDExxwH/GejtK/X92OD15Nf8ACQhkhkw= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1770222554; c=relaxed/simple; bh=CnO4y3VsGfQYxXVySrD+F8oIZqRqy1yQ2U89tkmae5w=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=WlHJEkeHIC5Tovf9oK7EP0hh3vsXpHBHtI/mqvoi91+mSre8OTHk3qL1tNV3h6wX0A+wNBcvQiwfVaV4KZj+4iwTkDpoeMUPJzbf/uZsFHKWZi15PpM9wLOEff9+Eg4yb51n4oyvNvNa+ydHtUew5KmpfUUThblRub8l0oIyVI0= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com; spf=pass smtp.mailfrom=oss.qualcomm.com; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b=d2mzYk3j; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=MsSllJpi; arc=none smtp.client-ip=205.220.180.131 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b="d2mzYk3j"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="MsSllJpi" Received: from pps.filterd (m0279871.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 614CISbq111316 for ; Wed, 4 Feb 2026 16:29:13 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:date:from:in-reply-to:message-id :mime-version:references:subject:to; s=qcppdkim1; bh=bIlScLi5z6d d33J+kHWnG73XMqR8pPoB5nxdAypevEA=; b=d2mzYk3jH20C7DSbJLn6A3IKv2v 5xE633sctue/zxNePHgYfthWAV1n94XR8T/ygw7+oMRxR/TJ0LuhI44LEzYAnOdA nBGEuz5qh25grtcl6s4FAfWUcNt1JsDRgkZEyq9anvaaofqNXJbNXZZ0WZNNEcxv +qMbKKTqcalQORsDkiQW7Pjh6PIirxkTMc40bl+9vPNWg+jnC2QEhJgplVs2YA+l iZd54bv0MGGvUbgYUPr/VgXqxfrMHfX5SzL7G2NmswCBNMB2ESjKZhEXq2K/kwlu rvFTeuVQw/pWX03pemLbrsouZmiNjyIpCkmSTxzWgwxTEFPhaX+TTw9l1ig== Received: from mail-pf1-f197.google.com (mail-pf1-f197.google.com [209.85.210.197]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4c44xjgydb-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Wed, 04 Feb 2026 16:29:13 +0000 (GMT) Received: by mail-pf1-f197.google.com with SMTP id d2e1a72fcca58-81f48cec0ccso28104b3a.0 for ; Wed, 04 Feb 2026 08:29:13 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1770222552; x=1770827352; 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=bIlScLi5z6dd33J+kHWnG73XMqR8pPoB5nxdAypevEA=; b=MsSllJpiuaGkMaD8pw46LYlRESyrIRi/bfLlWYEFO67DySByTwrDe4N2OeRPRwOtrT sbk2lFP4myy9zN/LXRxrh+nO/eu4YaqPWs/mHrRURfhBncnIMWDNnkN2xLH6LFB8pf5N ou89glrYq+Fr+sMV7OVBhCDL3BnehrUlbyQee6nVfeNarq78tWWJ05GenpP1Hmh7jLBk L36gPwau66UpG6UUB2fmPqo/EN63zOPQ73iIDJsSTzbkfe8/x45WuJNF8x3P+kBsF+zM tyCfp5eGUTj6IxNgGwa0JP8j78N9Eg6xTxzUJgW/6Pgdn054Sz/Gm1V27276cBaGp9Nq 8dJw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1770222552; x=1770827352; 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=bIlScLi5z6dd33J+kHWnG73XMqR8pPoB5nxdAypevEA=; b=FuzhlcVBnR+tmdk6qOVCXDJcBkenSM9aJyS+R6VcnFNj1W5ke7zZWDLf0xaAxwlnKc syA33GIijtv6s9N6sKUAelB5PKGVETnh1UmlDxRORI9NAk78XZSaFaNUgtJ3jv99+lQg Ym6F1coDLpfGQ+PamoQddWYdjXICr3RHQbg3adXsD48mA+9taYK7WrCRllunJqrgvSPj LMlGyVR/WMZxliQq99MgIjB9Ml6htDDAWeLWqoLasld5Xl0y5ZCT1ZhxOheJToCeobHB Qo6EkaJBaVlIcr/RIezdPsjAK72ON6F1ZaWtD5yv5wGTKyYXwMWZ/IqQyaCDNQb0ub+/ o7ZQ== X-Forwarded-Encrypted: i=1; AJvYcCUsrx8trYItWH+ZJSeM9rxOKTKhSGs1etSvKdKcGHHSDpYKXMuP/j62rPSHhcbIXNmM0ByYfWuvsPDIvKM=@vger.kernel.org X-Gm-Message-State: AOJu0YwuH3HZUUXDYhI7R5H4komOa0Nxqos82OFMbVHHz1/N1RZjZHxs FIpx/Qe6q3ZFPfypYz8js4ByyMJSbF+zYLy+a/l1l3whYPALLBzIhFTrkBjjIztQVA3achRjqn+ 1TUkdnyn4BeuADbKI+WNJ4LZiYc6MhLWIK9dGcnOZsbqIrtwqgCHN7a/Nft9reJasW2k= X-Gm-Gg: AZuq6aKaDk+khPappSPZ882Mr0llKaAPJp8nVgNcjkurkrN4Z8bXT/F4lIOEv/goMfU wF+l/mQ/2qhlds9TCRfVdchs1rlttv1Pkhshyj8j56d/cuVYl6X4Wbv1nYV7LTKCQ0112eGdvCy DUoyaK9aimIDtD/xvRvzpBinuxMv7t1xrWTpPzAtjMcUqcgV11IPXwCSde7ybCIcX0t7D7XPOXp XDsZ8XbsrVnYWiyQIIPznbgIPPMOw3SuFK6qxjco47G25u3AzH6iOy0oeCIy3DWFmp3tpnjvCAx g5xuObmGAa9tqkQdaDWLKMy+i4E3Yikhf2SM2suB1OKiqZLBmlkAL5OF/jzmLRiTFEeEj5kCB4y /XJTRQ7iZCkzK0G5pDXCEB6XzQ6kEo+kXe/w/T+vxkc0= X-Received: by 2002:a05:6a21:3297:b0:364:af5:d599 with SMTP id adf61e73a8af0-39372073860mr3496040637.14.1770222552544; Wed, 04 Feb 2026 08:29:12 -0800 (PST) X-Received: by 2002:a05:6a21:3297:b0:364:af5:d599 with SMTP id adf61e73a8af0-39372073860mr3496008637.14.1770222551970; Wed, 04 Feb 2026 08:29:11 -0800 (PST) Received: from hu-ptalari-hyd.qualcomm.com ([202.46.22.19]) by smtp.gmail.com with ESMTPSA id 41be03b00d2f7-c6c8515f36esm2546878a12.29.2026.02.04.08.29.07 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 04 Feb 2026 08:29:11 -0800 (PST) From: Praveen Talari To: Mark Brown , linux-arm-msm@vger.kernel.org, linux-spi@vger.kernel.org, linux-kernel@vger.kernel.org, bjorn.andersson@oss.qualcomm.com, dmitry.baryshkov@oss.qualcomm.com, konrad.dybcio@oss.qualcomm.com Cc: prasad.sodagudi@oss.qualcomm.com, mukesh.savaliya@oss.qualcomm.com, quic_vtanuku@quicinc.com, aniket.randive@oss.qualcomm.com, chandana.chiluveru@oss.qualcomm.com, jyothi.seerapu@oss.qualcomm.com, Praveen Talari Subject: [PATCH v2 1/4] spi: geni-qcom: Improve target mode allocation by using proper allocation functions Date: Wed, 4 Feb 2026 21:58:51 +0530 Message-Id: <20260204162854.1206323-2-praveen.talari@oss.qualcomm.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20260204162854.1206323-1-praveen.talari@oss.qualcomm.com> References: <20260204162854.1206323-1-praveen.talari@oss.qualcomm.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 X-Authority-Analysis: v=2.4 cv=DtpbOW/+ c=1 sm=1 tr=0 ts=698373d9 cx=c_pps a=rEQLjTOiSrHUhVqRoksmgQ==:117 a=fChuTYTh2wq5r3m49p7fHw==:17 a=HzLeVaNsDn8A:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=EUspDBNiAAAA:8 a=Bup7t0bCmiTjNce0pOAA:9 a=2VI0MkxyNR6bbpdq8BZq:22 X-Proofpoint-GUID: GwoVv7t4xpbaa6qt6frzoMSruKz-u7fr X-Proofpoint-ORIG-GUID: GwoVv7t4xpbaa6qt6frzoMSruKz-u7fr X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwMjA0MDEyNSBTYWx0ZWRfX6Qn8zVPTk4HT ja3FxAmlMc06K++pTkrtpPKqNnYhX1WGnpK1OargPoQ0BvzQt+ej7/EoGPpZJKMiaN24JCrAM2P WjscReWsH9XwatANnsJAAwAnj6hSKUjW8Amrw6gN4WvPZnSnXS6KD2fdNS1zaZpU2WMDjmB+lKG obzUXsOLTBvOZmkEpbOxhxsFajEPUL8rzSELI20WcbC0f0hKRxkttEylqKIntnZphzwwqVQd1gX F3MerdBf3sYTMoPXMwI4O/adg0BQO5O8qBMYu1PRqtwtFECdP9Tm1O3Jy6rtaP5zQvNHCrdwmzi 1KzuxKZsZYt0Bo4liMM0hgOVDVfQfrdboE5yIzptxSaNyVL7jbRjJc37FORcK7CvUJvoCXUFiTq lT6dhyaCi4HLaq9WlBS9AkVl8I50nyfkxWHK+yR5NIlL37wplMgo+S6kFGxkCjG4IHd4MSDldtf gWb/COmO0laEme2656Q== X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.51,FMLib:17.12.100.49 definitions=2026-02-04_05,2026-02-04_01,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 adultscore=0 lowpriorityscore=0 malwarescore=0 clxscore=1015 bulkscore=0 phishscore=0 suspectscore=0 impostorscore=0 priorityscore=1501 spamscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2601150000 definitions=main-2602040125 Content-Type: text/plain; charset="utf-8" The current implementation always allocates a host controller and sets the target flag later when the "spi-slave" device tree property is present. This approach is suboptimal as it doesn't utilize the dedicated allocation functions designed for target mode. Use devm_spi_alloc_target() when "spi-slave" device tree property is present, otherwise use devm_spi_alloc_host(). This replaces the previous approach of always allocating a host controller and setting target flag later. Signed-off-by: Praveen Talari Reviewed-by: Konrad Dybcio --- v1->v2 konrad - Placed changes where host is allocated. --- drivers/spi/spi-geni-qcom.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/drivers/spi/spi-geni-qcom.c b/drivers/spi/spi-geni-qcom.c index 0e5fd9df1a8f..f886a9ba56e6 100644 --- a/drivers/spi/spi-geni-qcom.c +++ b/drivers/spi/spi-geni-qcom.c @@ -1033,7 +1033,11 @@ static int spi_geni_probe(struct platform_device *pd= ev) if (IS_ERR(clk)) return PTR_ERR(clk); =20 - spi =3D devm_spi_alloc_host(dev, sizeof(*mas)); + if (device_property_read_bool(dev, "spi-slave")) + spi =3D devm_spi_alloc_target(dev, sizeof(*mas)); + else + spi =3D devm_spi_alloc_host(dev, sizeof(*mas)); + if (!spi) return -ENOMEM; =20 @@ -1087,9 +1091,6 @@ static int spi_geni_probe(struct platform_device *pde= v) if (ret) return ret; =20 - if (device_property_read_bool(&pdev->dev, "spi-slave")) - spi->target =3D true; - /* Set the bus quota to a reasonable value for register access */ mas->se.icc_paths[GENI_TO_CORE].avg_bw =3D Bps_to_icc(CORE_2X_50_MHZ); mas->se.icc_paths[CPU_TO_GENI].avg_bw =3D GENI_DEFAULT_BW; --=20 2.34.1 From nobody Mon Feb 9 03:31:28 2026 Received: from mx0a-0031df01.pphosted.com (mx0a-0031df01.pphosted.com [205.220.168.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id B7D1C38E5FC for ; Wed, 4 Feb 2026 16:29:19 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=205.220.168.131 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1770222559; cv=none; b=KUkS3uoTckE+jsBOZmqgLJzglzAxsgxCoO+gpdFIja7ZBrNA4DhTUiCGPrCDaNwXOWFRPjgMoV9yAi/VSDxabzZ6+3uNZ6nzI8oD0BmiMBYX094NTgn8K0XuMP3nmrarixu+lvV+VWX5MAg2byO1pzf3WNUL6LQDZ4GjtP+8D8w= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1770222559; c=relaxed/simple; bh=3me1SodZTkHVWGIC0kYi6tRJygZte7A7CmjLrhhOe9w=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=rY8dR5ozFOH9/3r7jGl7RTovxWJI/Pw++oCKv0/O74eIIFrxDI4dhPZgIwt4DdkPODvazlVxqolPviz1GMDl7uukcLp+E/7sdkOiw7DjAQRfIR3oNVHjbWrWdwBJmQ38CmMTq1EaGUVY9QgJMgbjUHeeJfGzfewlrDHzBvSS9a0= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com; spf=pass smtp.mailfrom=oss.qualcomm.com; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b=YvwwIGUS; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=Jhqjpr6a; arc=none smtp.client-ip=205.220.168.131 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b="YvwwIGUS"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="Jhqjpr6a" Received: from pps.filterd (m0279866.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 614CIMpI095947 for ; Wed, 4 Feb 2026 16:29:19 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:date:from:in-reply-to:message-id :mime-version:references:subject:to; s=qcppdkim1; bh=HYH50Zm6WCw xpaucxpsuIwIJ6T3oQhCQ2WmmzPUspP4=; b=YvwwIGUSXTGXSY/Mlh2fpz4u/Mb eO05hW0d/HuBOorz3SecgKJqaUaX2U4zhBy3/5U0nrMsBlwsiVpyRY3qDRKJQ10z v6Dc0vQobj0Wlq1WRDl7zRhkEheaVNpsVw8CVHQyglWEDTeU9bkQPgXTGkUzgaSg Vb/TSsVlmiGdDTFnlS+8a/POGGqLFS38IM1eB5t0ogaRix2XrDn4mKLV+7VXEQYY Uktd+6lZI1bJezkA1vbL3c3GRsGaEjW/kI0vdE9UPHMjt0elF+haCuFRcPDZ2EbG yZmDex7GwMvuwexFidloC3ZlvTwJvLXrmmuHuZzR5xG4sFwYiDwnT3J47pA== Received: from mail-pg1-f198.google.com (mail-pg1-f198.google.com [209.85.215.198]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4c44kbh232-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Wed, 04 Feb 2026 16:29:18 +0000 (GMT) Received: by mail-pg1-f198.google.com with SMTP id 41be03b00d2f7-b62da7602a0so4565365a12.2 for ; Wed, 04 Feb 2026 08:29:18 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1770222558; x=1770827358; 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=HYH50Zm6WCwxpaucxpsuIwIJ6T3oQhCQ2WmmzPUspP4=; b=Jhqjpr6aj4qvseGKY2rtv891GN86LwBESwyffo/quB8PaYmMVsMyxq/nC6QkyPwWcb Uioqtkan4S8fmR0cJX+UtXVmXG9vSV5uVAFet3kydl0DIA0dzY6OzfNV61/rB+oHLoDD Lj4/VaA3q8BZsFTBLUviGCB2fSFdSQ0//xD+bArcBD9SrqJm9EEgYNXzCCKQaD1sdfxe A+3loZ5PxP2x0cyErOfScyXsELGdt0j3xXZj5kXMelaKgxpgx7wyUTrQk/Ngmq+jp+KL S2MNxDHWTukcFVgQ9nIAZqsmj104CDvdz3KMaqC/QJNzZq8+cckQ0LmX2oHQLfl+9SSZ XOow== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1770222558; x=1770827358; 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=HYH50Zm6WCwxpaucxpsuIwIJ6T3oQhCQ2WmmzPUspP4=; b=Vk4OTvvFSqlK3s9pyeZSEjKhmX3Ejg5i0XdG30sDK3NyxCtFjoWSxHHNpViLh7pc0f ZFD4p8l2W+wg2mHQ1X15Fgt+qxCgxHWTHWQjmneUH1geoGAWr1YXiheRTGQ9FSKKshl5 S2Js/eezP6Rz7BLpjeQyqqlwtO2QgIdbL5nw7WAHZXyGmYnSJPablNMT9mG6am8nboYG GQBmByKmpfp9awxcmz5XnUEI+pzw4nPnSjenCzWlB9Q1e2YWVZ/NS7VH7jLoj75mEA8A ZUO9gYpRLQwnjBm/mUmjgahUcTM73bn+eG0Y7QfiIoTNQep2AjcjC+lbt95pEn7bRWho gfOA== X-Forwarded-Encrypted: i=1; AJvYcCXFH8hviKQS7I3DPuxn+QHnPkgNPkYzY48UlyhgE6J49VBhsL0UT7mt/c3dtYgTvXuUchUlVFkl8DtBdJU=@vger.kernel.org X-Gm-Message-State: AOJu0Yw7ky51+/qCt9xZgXILaNimGDY95rnb2d+/gwoPkOBVH3kdmqel 2kHAAEzgIOQqY/1QlKzkuhKDjTpHchKhsNMbMbgQ9VcKXB4c1GoxTQXcUy2B+tPsA2x8ZOVAQsb o1M0fVerSK2jBodDeTJekjlXqUaA8viJEIHFYo3MUB2LygdpEZ/t3hLEVe1663gTyz9A= X-Gm-Gg: AZuq6aL2mqc3bw9CWJmQargy4qJUhhrmOICbSr+0HGUeaaNH4NtesG5erwrutUxHWyv k5SYAnFx3KOuUQwRfNjfJwcBRCy8OrTCxq/YUCTgqjzPLa0OVfImFZFzzw5TS0ceyE7Rn4kovQ6 d6+pB8s52TPh/7ITQyA9mN89916kKAD7oIO1eJwHyz84Lc7Ec4rWzG3dX9Zr7fV/p6SQaLnI2mx ltm1dkVHwCPwZGg4AV0oRlGEeoxrhbUd8hW2pR7zNZnmMaxKDJPsnrMdxGb7iNQB/KQSseewGub 5IcCIiNX5b0MLm48N8hQtatcMa7JKUnWM1Y2g4JPQSahPHXoUaa7++GPN5iV53Y5gTxCcfITiCy 35U20HRDoyNU/ky3dnm4dX94VKDIgodF0xKUvWoEd8rk= X-Received: by 2002:a05:6a20:43a7:b0:38e:9e77:9168 with SMTP id adf61e73a8af0-393725d73e7mr3446756637.79.1770222557970; Wed, 04 Feb 2026 08:29:17 -0800 (PST) X-Received: by 2002:a05:6a20:43a7:b0:38e:9e77:9168 with SMTP id adf61e73a8af0-393725d73e7mr3446728637.79.1770222557396; Wed, 04 Feb 2026 08:29:17 -0800 (PST) Received: from hu-ptalari-hyd.qualcomm.com ([202.46.22.19]) by smtp.gmail.com with ESMTPSA id 41be03b00d2f7-c6c8515f36esm2546878a12.29.2026.02.04.08.29.13 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 04 Feb 2026 08:29:17 -0800 (PST) From: Praveen Talari To: Mark Brown , linux-arm-msm@vger.kernel.org, linux-spi@vger.kernel.org, linux-kernel@vger.kernel.org, bjorn.andersson@oss.qualcomm.com, dmitry.baryshkov@oss.qualcomm.com, konrad.dybcio@oss.qualcomm.com Cc: prasad.sodagudi@oss.qualcomm.com, mukesh.savaliya@oss.qualcomm.com, quic_vtanuku@quicinc.com, aniket.randive@oss.qualcomm.com, chandana.chiluveru@oss.qualcomm.com, jyothi.seerapu@oss.qualcomm.com, Praveen Talari Subject: [PATCH v2 2/4] spi: geni-qcom: Fix abort sequence execution for serial engine errors Date: Wed, 4 Feb 2026 21:58:52 +0530 Message-Id: <20260204162854.1206323-3-praveen.talari@oss.qualcomm.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20260204162854.1206323-1-praveen.talari@oss.qualcomm.com> References: <20260204162854.1206323-1-praveen.talari@oss.qualcomm.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 X-Proofpoint-ORIG-GUID: XtdkvHUcmxg4Mj9aUu5TMTjDsRTH_62j X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwMjA0MDEyNSBTYWx0ZWRfXzy6lSRVGM3Vw VXAKDanphRQ0yC7cQtYvU4EbHSFagiEl4DCeD5H4re2H3c39AdWeGvYeCnkvMgkuaA5yQu3DW1h sHsNINT+GrqRQw3VWj1cpeT4J2yuO4iUf9UnO7VFe4wPm9TV5uvqdizTEFk70oedw0YEPRW9rFg 7MF8984+9q88zU7VQrgH7TDdpqtB0w1O5UlVBL9khimjtdwLFvBjaGyUEsyMz/fixJQH5oRmWZt I2CNhyNX/DS6TVfDLFhLzIfGmZG1hgT+i1Pf87T40Ru5GhqYbiGpyiMY3Vu878U4KrJXRTurdhM F69e0E/NqTv2LbmjRI9qORf0t6qbjjm8fv5neny9zmWBWs7U1xabEajI63diPk+8MF5fhGJ0VEM zO9Oovt9UMC1vT8gcAw+JYAkZulg9wyHOh2UNKxmiwKCZ612VqOBrxgJBwYq6k8Ob74uhNHUps/ npRtUwPjz8EMxb6UbXA== X-Proofpoint-GUID: XtdkvHUcmxg4Mj9aUu5TMTjDsRTH_62j X-Authority-Analysis: v=2.4 cv=HN7O14tv c=1 sm=1 tr=0 ts=698373de cx=c_pps a=Qgeoaf8Lrialg5Z894R3/Q==:117 a=fChuTYTh2wq5r3m49p7fHw==:17 a=HzLeVaNsDn8A:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=EUspDBNiAAAA:8 a=PwoySFKYIoUPqChjOH0A:9 a=x9snwWr2DeNwDh03kgHS:22 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.51,FMLib:17.12.100.49 definitions=2026-02-04_05,2026-02-04_01,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 impostorscore=0 suspectscore=0 phishscore=0 clxscore=1015 bulkscore=0 spamscore=0 adultscore=0 malwarescore=0 priorityscore=1501 lowpriorityscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2601150000 definitions=main-2602040125 Content-Type: text/plain; charset="utf-8" The driver currently skips the abort sequence for target mode when serial engine errors occur. This leads to improper error recovery as the serial engine may remain in an undefined state without proper cleanup, potentially causing subsequent operations to fail or behave unpredictably. Fix this by ensuring the abort sequence and DMA reset always execute during error recovery, as both are required for proper serial engine error handling. Co-developed-by: Konrad Dybcio Signed-off-by: Konrad Dybcio Signed-off-by: Praveen Talari Reviewed-by: Konrad Dybcio --- v1->v2 Konrad - Updated code changes as suggested by Konrad --- drivers/spi/spi-geni-qcom.c | 24 ++++++++++-------------- 1 file changed, 10 insertions(+), 14 deletions(-) diff --git a/drivers/spi/spi-geni-qcom.c b/drivers/spi/spi-geni-qcom.c index f886a9ba56e6..e48aea7ce681 100644 --- a/drivers/spi/spi-geni-qcom.c +++ b/drivers/spi/spi-geni-qcom.c @@ -161,24 +161,20 @@ static void handle_se_timeout(struct spi_controller *= spi, xfer =3D mas->cur_xfer; mas->cur_xfer =3D NULL; =20 - if (spi->target) { - /* - * skip CMD Cancel sequnece since spi target - * doesn`t support CMD Cancel sequnece - */ + /* The controller doesn't support the Cancel commnand in target mode */ + if (!spi->target) { + reinit_completion(&mas->cancel_done); + geni_se_cancel_m_cmd(se); + spin_unlock_irq(&mas->lock); - goto reset_if_dma; - } =20 - reinit_completion(&mas->cancel_done); - geni_se_cancel_m_cmd(se); - spin_unlock_irq(&mas->lock); + time_left =3D wait_for_completion_timeout(&mas->cancel_done, HZ); + if (time_left) + goto reset_if_dma; =20 - time_left =3D wait_for_completion_timeout(&mas->cancel_done, HZ); - if (time_left) - goto reset_if_dma; + spin_lock_irq(&mas->lock); + } =20 - spin_lock_irq(&mas->lock); reinit_completion(&mas->abort_done); geni_se_abort_m_cmd(se); spin_unlock_irq(&mas->lock); --=20 2.34.1 From nobody Mon Feb 9 03:31:28 2026 Received: from mx0a-0031df01.pphosted.com (mx0a-0031df01.pphosted.com [205.220.168.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id BFBFA41C2F4 for ; Wed, 4 Feb 2026 16:29:24 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=205.220.168.131 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1770222564; cv=none; b=YuHG3s7WRTATw8xSqNaKNs5Ftn38eAkgdUJx+MywE3J2Xz8cGUyMEXEK9zXCQSLHOGsiB1JYCMfk5g7UFPJFlGtLstnkYfQ8jlGPZHvhOhOd3G701WUMS36LjpH+BkRlB5/bEpeMo/1xnhtPCkJ/XcfFxFAH37j4zHM5BcOw0kE= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1770222564; c=relaxed/simple; bh=68oM4+XC5nRFzWgW83ZVy2hK9lV2X8Fgc/G9FC3yFl4=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=GzuTt1Uzil3nKmj9MLXPO8mk+UVh66wdtIOcBUcPUwPwJoCBxQE45MRIyXjEIYyeA9a0O1AU3Z1AMo1fDXv7NsQ4DCZGyoQO2R6F+ytm9IhBgF3PEzR4Hy0S1pH/q8HPLWYTD3ssMW/BlKlXtmseHZhJFzMGkabIVKGSrmh5UD4= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com; spf=pass smtp.mailfrom=oss.qualcomm.com; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b=PuwuN3SB; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=WRrtNAax; arc=none smtp.client-ip=205.220.168.131 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b="PuwuN3SB"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="WRrtNAax" Received: from pps.filterd (m0279866.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 614CIM5M095863 for ; Wed, 4 Feb 2026 16:29:24 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:date:from:in-reply-to:message-id :mime-version:references:subject:to; s=qcppdkim1; bh=wAfwiLiuSak yJDmAWGtn9e+lRT9itU+foDd5KST34eo=; b=PuwuN3SBeNAcBYnunF7I8QSyPyg tZMaE9VzMa86TdUpPr8BFdGO43Jhbia9y2vFfBx6xIL0uE1rzkWwwdAixYDxIhwK UyUvfaL28iYA2sSmenTEEH6Jn9x31F3mD+3WlyvufJEZpB/3pGs6xMlEXm7kz8Rw cUc0jU6/qStyLMWCVqIsAtLD7TwCVEyLttSSCM1Gy6s0aI5uTD8FO4egRcuOgfht G5Q1wurysZbDjUergFKkDFYXfJ/79MamiMTD5fgQKb5/l08kpc8qM1oJpd1hI5xa wNJFWmQtfaSxQBjNS9bvVR0j0V7PpR2lXaY9LXAw3A4t+I314F9KKkXM+fA== Received: from mail-pg1-f199.google.com (mail-pg1-f199.google.com [209.85.215.199]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4c44kbh23e-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Wed, 04 Feb 2026 16:29:24 +0000 (GMT) Received: by mail-pg1-f199.google.com with SMTP id 41be03b00d2f7-c52d37d346dso4040151a12.3 for ; Wed, 04 Feb 2026 08:29:23 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1770222563; x=1770827363; 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=wAfwiLiuSakyJDmAWGtn9e+lRT9itU+foDd5KST34eo=; b=WRrtNAaxgZaRoae7WhBfQ4b0/5tLyDUGeityjUOrag78q7WBFdtTitT31bEZkophJF iGuxQG7sO9Q+sIIhn4ROGvQ7bPrR2WAiYc6NlneLf2vpFih/i5ykPPVx730B63HcomSt PJLYkohpQeKnQTJzJoSOKJZU9ohUwN+8vD6K52r7EKlGiK0DnqrGOcnZW+RvR7gioOtV 4/qufHHacM+cK3iQnMPNDRHF2tbJ75mLhMbjlNpBR2mCuJlbAwyfFHRMRtBHbJ2D+hNW v8LovyjR6iNbJcJWt1TQ+gPCcwDidj07FM0zGefi1sqsB0oOOmt+Gx7zL3S2g9+w9PdG eALg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1770222563; x=1770827363; 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=wAfwiLiuSakyJDmAWGtn9e+lRT9itU+foDd5KST34eo=; b=Y1d5txSgKh28tL4KS6BNbD2QoIvk/d+BrKN5SIEbJA5RY/9FJ6pfYuETjtfM98CcH7 DckWE7ghvCDYcRqS7kCeDUQaWukdsKvWXsVNPCiqxd+HrSFWCshU9qq3LYLbFKMq5hVx e2bKkZXodPGzmd6KHMKqbbRmq4x4Qrm49B6zmcfOXYjPCfCSS+fm/gqd4M0ZramMjeqz cIVlBddeKx2pFIsnuRTORuw8CI2dkIviPZRN5Q+ZtHr6qocb9B+Tyqp/VX0W/e0ZSzLy Uaq/4wtYlOODfZGY8Kx1DWizH2B9e6Yi8Rj5d4qJSuD10NF2CHZ058tLROLyFB3bNlde 8Ahg== X-Forwarded-Encrypted: i=1; AJvYcCWhAqQkxXla4MtupLWkL3GyzX2DOhDvYrz3znksYhwp2tRau0XvDPO39VA3cgH7PY8P6QqeqRT4wvFcYJ8=@vger.kernel.org X-Gm-Message-State: AOJu0YwUfbGHEX7tTALRG5ri4l+HfoNrr6dmlRI5zXyoHerU/mnZhahN S/sRYDiWXjuZ+KP8dNqsRjiPTO6cDJ+3pFHfjo0zGo1rWE/Bws3KGtnMCkP2oz5O661RnQHHQSw LyMMjRifYW3wkGyRBOVHZHWj8RjGlzjd0152A76jDI7JA15xGMxH5hdJsh4tNyTwYmL4= X-Gm-Gg: AZuq6aJ2WWUTZfV4VnVQ1G66n/dzSrODMOAv0tciX+dfpc2DgoYMITPTBe7puwzJGMg xAMXXahT2wbHYVqttYqiwu9zcT1KWNkX4jLoN9zzWX6zsRffYwbQW9vRX0fwGku03RB6hsw/R6/ 5hmZkJANdGxZABge7Up5k4Dt0NrivvqYhaYGOF9x2jCrWbqhLqrc+ARn10DjJWth2dKU6xy3vi/ to9wSV71Bq5mqaV5zc5EgPuRJjxP4LnKgERJ8XI6CDTMoILonycX87P3ILdPFwlTA6CgGjGNw2f 1AhJLoa40+zBYryKQQzeh4XQj8yv68g8HO7bKz2yfQ1Vm/sCw/WGkBZL+kx9mrcbC0vH50rR5lO dwQeF6GA/O7kIwDiPLs6KISSZrGFLawuxdGToexFmSTs= X-Received: by 2002:a05:6300:614e:b0:35d:d477:a7e9 with SMTP id adf61e73a8af0-3937210bdb2mr3917171637.35.1770222563383; Wed, 04 Feb 2026 08:29:23 -0800 (PST) X-Received: by 2002:a05:6300:614e:b0:35d:d477:a7e9 with SMTP id adf61e73a8af0-3937210bdb2mr3917152637.35.1770222562794; Wed, 04 Feb 2026 08:29:22 -0800 (PST) Received: from hu-ptalari-hyd.qualcomm.com ([202.46.22.19]) by smtp.gmail.com with ESMTPSA id 41be03b00d2f7-c6c8515f36esm2546878a12.29.2026.02.04.08.29.18 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 04 Feb 2026 08:29:22 -0800 (PST) From: Praveen Talari To: Mark Brown , linux-arm-msm@vger.kernel.org, linux-spi@vger.kernel.org, linux-kernel@vger.kernel.org, bjorn.andersson@oss.qualcomm.com, dmitry.baryshkov@oss.qualcomm.com, konrad.dybcio@oss.qualcomm.com Cc: prasad.sodagudi@oss.qualcomm.com, mukesh.savaliya@oss.qualcomm.com, quic_vtanuku@quicinc.com, aniket.randive@oss.qualcomm.com, chandana.chiluveru@oss.qualcomm.com, jyothi.seerapu@oss.qualcomm.com, Praveen Talari Subject: [PATCH v2 3/4] spi: qcom-geni: Drop unused msg parameter from timeout handlers Date: Wed, 4 Feb 2026 21:58:53 +0530 Message-Id: <20260204162854.1206323-4-praveen.talari@oss.qualcomm.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20260204162854.1206323-1-praveen.talari@oss.qualcomm.com> References: <20260204162854.1206323-1-praveen.talari@oss.qualcomm.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 X-Proofpoint-ORIG-GUID: G0LukNPDcdk_vTxV7ahAasRZKTD3VHdj X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwMjA0MDEyNSBTYWx0ZWRfX0wEn6bA12N6S 6gfoc2JOTuxvUtqt756ALnKExIC1OAzcW8avRMjp5jfM/MEyInurCF4ePk3UHswKpczVHfmt3hw hsyDU/mPO0iVgj4Hg0kEhMePuWUR2DXwzPc1y633yw3p5Ar2Fj0Zf2PN068Fpba14K1WiTVpv9E VlG7eflhkkeDB66JGCNjmwKkz32Gcv/kRLjFreTv2hN9vX/T/cKogwwtwyKCAOijNJP5Lszufxd frgGqBl0U+WHSIVpJJcMlO3LvZV+uqsd5LCQ1sZz9wiTDvp1u/koTTKXdHvb+uhp+Rdoc/E5fHW SPhzZBTpjSD2Hsn4I9cozaea6HB4JkQPBfJhDslMoRv9gI/XNqWFqPIO6uYWoTFkzWLnKR7Q8Fw bMuu60NAc0yghUvY4Do8MLbQ34gA1ebzB19X2vFdl2YtO5RrN62GMhJydqdag0zS4zgG2DaKY1/ glh5BTEn5tqME4IXFaQ== X-Proofpoint-GUID: G0LukNPDcdk_vTxV7ahAasRZKTD3VHdj X-Authority-Analysis: v=2.4 cv=HN7O14tv c=1 sm=1 tr=0 ts=698373e4 cx=c_pps a=Oh5Dbbf/trHjhBongsHeRQ==:117 a=fChuTYTh2wq5r3m49p7fHw==:17 a=HzLeVaNsDn8A:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=EUspDBNiAAAA:8 a=gJUBjM1s-3uNyhB8e-kA:9 a=_Vgx9l1VpLgwpw_dHYaR:22 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.51,FMLib:17.12.100.49 definitions=2026-02-04_05,2026-02-04_01,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 impostorscore=0 suspectscore=0 phishscore=0 clxscore=1015 bulkscore=0 spamscore=0 adultscore=0 malwarescore=0 priorityscore=1501 lowpriorityscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2601150000 definitions=main-2602040125 Content-Type: text/plain; charset="utf-8" The timeout helpers (handle_se_timeout() and handle_gpi_timeout()) took a 'struct spi_message *msg' that was never used. Remove this parameter and adjust the callers to simplify the interfaces. Signed-off-by: Praveen Talari Reviewed-by: Konrad Dybcio --- drivers/spi/spi-geni-qcom.c | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/drivers/spi/spi-geni-qcom.c b/drivers/spi/spi-geni-qcom.c index e48aea7ce681..5077dc041e3a 100644 --- a/drivers/spi/spi-geni-qcom.c +++ b/drivers/spi/spi-geni-qcom.c @@ -146,8 +146,7 @@ static int get_spi_clk_cfg(unsigned int speed_hz, return ret; } =20 -static void handle_se_timeout(struct spi_controller *spi, - struct spi_message *msg) +static void handle_se_timeout(struct spi_controller *spi) { struct spi_geni_master *mas =3D spi_controller_get_devdata(spi); unsigned long time_left; @@ -222,7 +221,7 @@ static void handle_se_timeout(struct spi_controller *sp= i, } } =20 -static void handle_gpi_timeout(struct spi_controller *spi, struct spi_mess= age *msg) +static void handle_gpi_timeout(struct spi_controller *spi) { struct spi_geni_master *mas =3D spi_controller_get_devdata(spi); =20 @@ -237,10 +236,10 @@ static void spi_geni_handle_err(struct spi_controller= *spi, struct spi_message * switch (mas->cur_xfer_mode) { case GENI_SE_FIFO: case GENI_SE_DMA: - handle_se_timeout(spi, msg); + handle_se_timeout(spi); break; case GENI_GPI_DMA: - handle_gpi_timeout(spi, msg); + handle_gpi_timeout(spi); break; default: dev_err(mas->dev, "Abort on Mode:%d not supported", mas->cur_xfer_mode); --=20 2.34.1 From nobody Mon Feb 9 03:31:28 2026 Received: from mx0a-0031df01.pphosted.com (mx0a-0031df01.pphosted.com [205.220.168.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 56237427A1F for ; Wed, 4 Feb 2026 16:29:30 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=205.220.168.131 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1770222570; cv=none; b=nT4J4DuSlQRItFgSHGCpjE9s1a9ziKCRll3wN6EpgyFa1F4HYe3GZw1XIQKbOUJo44QLjPznK1KJCr3jj8zYfnHq9iAm0eSOlEgjvVIjjrGuzyEmbrHe0dLKBROeDv3hJfcPL3CGE6xg2lS3qyp11BSBsEo9RLXPts2XIbEZCNQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1770222570; c=relaxed/simple; bh=L9DqGelcCFtxzG1Txqh7DNBFozIWof89KKJwfCaxV5o=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=LcS/qxyiTVKnjiYxfWOeJoPCn1cp+NHDTFemGuYeCK2Q6e/J7hamjzw5SawYT5n4b/rDaV0TEEIGyzBZI3AgbJ+N1e4CVWA9mel+SAJLXpd+axTUkWWtDlRp9xumw3m9ngLgdejAlqVFO0upziAwnSVgeByuwrvThY0tPqcxqw8= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com; spf=pass smtp.mailfrom=oss.qualcomm.com; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b=TaI13mje; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=B+Lm+usY; arc=none smtp.client-ip=205.220.168.131 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b="TaI13mje"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="B+Lm+usY" Received: from pps.filterd (m0279862.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 614CIQr51245899 for ; Wed, 4 Feb 2026 16:29:30 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:date:from:in-reply-to:message-id :mime-version:references:subject:to; s=qcppdkim1; bh=FSKr5h6hAkT Nur0wrixEKU3taeueA9+e0fBqw6QqP7A=; b=TaI13mjerNyVFRTlupU1xSfWCaJ MGj5uJFLTFE7cRfGygZ47zlPdg4s61e9Zkx14yIjMCGdohQWhoPiMDwRNcZ5wBjT auTGor9UkVUCog9uzYvHya5rEdwCy5ZokJ1oCSsuBBdW64C3NQmyL6nOLy35D+pN GZeVy4leZWA8TM+WEvXqrr6loCLhvV9U3+wr2ae2mOPKAyb0KzY0IelvLcr4C3nk 9Y2QtysJ/zrtGhtFQ1U/ecbqkv3nsZCwQjcOTPMRaEe6dj9H5IpBSgpSgc7wvCIw w5u9j4RLPnZJl9VygC2G9/JB27nBispj2a1Z+kFFcOgzd/58WmlZlqCNlDQ== Received: from mail-pg1-f200.google.com (mail-pg1-f200.google.com [209.85.215.200]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4c3ru9b8ek-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Wed, 04 Feb 2026 16:29:29 +0000 (GMT) Received: by mail-pg1-f200.google.com with SMTP id 41be03b00d2f7-bce224720d8so4180725a12.1 for ; Wed, 04 Feb 2026 08:29:29 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1770222569; x=1770827369; 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=FSKr5h6hAkTNur0wrixEKU3taeueA9+e0fBqw6QqP7A=; b=B+Lm+usYzYP5k6g2QxYS3dKbK4iGGQgwScy+90bnFkJIeQkEei51FPF8Uq9h6jMPHi R29dkYr8EV/ufEqatCRagGQ11S7Vw5JbhEhjQ2nr+Kl9VH0Wnh0cjarMFitUTyq7EEj0 Ntqb59pZFBhJKoJ0LfivUvFl/5xG8RgElkZGL2CSTku1fQzDq5FezJqmqlWu1C0TknYk C92txuZt0uCL9FBBZLpGb/LsjxbqeRHG0ojpkyB/A184UK581OEmFUG5yUryTaG49P3U rhF9/83OTdF1K4m6u+CM5SfcKDRgU/W8Umz3+60uvHMF7hZHBo+CdLJe9YO9OJT2F26j zJxg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1770222569; x=1770827369; 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=FSKr5h6hAkTNur0wrixEKU3taeueA9+e0fBqw6QqP7A=; b=AowAU+gFO5kV0lj7wN5yR+bouByRSoRTByJy6qxbfujHiraMeNFDFqAPR6iiXfDC6w ndSvL4nSxuEkR2OGOvW42uMPESle7U2QaOtA96OmMr8nWIzIAOjy6Lj7yXAfwGGXcSFR TMGtdS8IfsTR2STu7BudAw8XTmDlutHyAiJ60Nhtg90zUk+pfF4WwiX8+JYcuLkYTabh vf2YGSnQK57sh8FGDw/D5rQaLWg9lftgSsEWTa/n9G7ZCN1lzy5DKHl/+wqYJNEflh4F 0c+UyPBWIuPTfIT47EIiEJEb8grIr+h2njyycIhNZWkmu/VroJFnuPizNmOtLaDN9R3p 1jxw== X-Forwarded-Encrypted: i=1; AJvYcCUSZRGrJgwv7I8l+hz7pagwIODaHWHRGYWfA9fvpDm199y+/hR882BScofxEfbOyeNXMfuHKExvWDAcmJE=@vger.kernel.org X-Gm-Message-State: AOJu0Yz2UHEoHnwV6geIuOKlk4VLMp43i/nZtOygqwS74K9aOO4dKRvB O4j/WJOKwHhnptbELsJRlafcDJi42CGBXZNp6cDt08Kq53huSF5To+2aXCmxur6BpcriR3Q0qJ4 4E9fK/eXA8GjKlO44ou+3mzYMDVFwNveVuDsxMSTu8zA9wgc5sB1i4S6eOIgFgZUR6dLQjp9fzg o= X-Gm-Gg: AZuq6aLYCguqLE0+bOA4ZMSMzNeGVFZ9Y+q8gWK4/qVOzSuKwWqOB22Dbru+skRnHV1 i48PhnVXIjXtp9DjDjmswYNB1I4bbsyl+ui6U8JIPHuMXPLjhgHjPG00JvENh7NpkzS7OF9XYHe b2T21qOdXznJPfAkd+mMhB8FpY1dY/9CUB2ClRkLKUUSiCeRqHkxI5HSm0vavE5+Scx/JcqsMLQ urUA41tlBnKCpdEWBbyIXmZ7cz5ilFt2O8ZqdmPyGwVu66weqLYYb/7c4XmkmU2z3g5YmRnIRJh lavupvXudS7A99t1Q82ENpjQXWxZW+iEQqqxP+ajH9DPXr5n21OHhyvUq1hEeRTKDsvyradZX4B l08/jo2CuZDTzikEKbxAPzOWHjoqKZYgA+zigXsKm9rQ= X-Received: by 2002:a05:6a21:8982:b0:393:7f50:f3b1 with SMTP id adf61e73a8af0-3937f50f78cmr1511104637.39.1770222568824; Wed, 04 Feb 2026 08:29:28 -0800 (PST) X-Received: by 2002:a05:6a21:8982:b0:393:7f50:f3b1 with SMTP id adf61e73a8af0-3937f50f78cmr1511080637.39.1770222568262; Wed, 04 Feb 2026 08:29:28 -0800 (PST) Received: from hu-ptalari-hyd.qualcomm.com ([202.46.22.19]) by smtp.gmail.com with ESMTPSA id 41be03b00d2f7-c6c8515f36esm2546878a12.29.2026.02.04.08.29.24 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 04 Feb 2026 08:29:27 -0800 (PST) From: Praveen Talari To: Mark Brown , linux-arm-msm@vger.kernel.org, linux-spi@vger.kernel.org, linux-kernel@vger.kernel.org, bjorn.andersson@oss.qualcomm.com, dmitry.baryshkov@oss.qualcomm.com, konrad.dybcio@oss.qualcomm.com Cc: prasad.sodagudi@oss.qualcomm.com, mukesh.savaliya@oss.qualcomm.com, quic_vtanuku@quicinc.com, aniket.randive@oss.qualcomm.com, chandana.chiluveru@oss.qualcomm.com, jyothi.seerapu@oss.qualcomm.com, Praveen Talari Subject: [PATCH v2 4/4] spi: geni-qcom: Add target abort support Date: Wed, 4 Feb 2026 21:58:54 +0530 Message-Id: <20260204162854.1206323-5-praveen.talari@oss.qualcomm.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20260204162854.1206323-1-praveen.talari@oss.qualcomm.com> References: <20260204162854.1206323-1-praveen.talari@oss.qualcomm.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 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwMjA0MDEyNSBTYWx0ZWRfX9LGG3LMhwUHO E+LKfeTf2W9/AV/rr4s1pCDTWoM/bJLaNcY3MG72+gsSLc1GTYCI3yC5NqBEzTbcIU0r3bdoApH 3a7/lsZFuNKRzVyCLgRsqkLeC40ZntZij4rI8G+OEwPxizC3+nx4DpPKSQfZUd/wHer9yGq+5NN erw12L9ibRGbDryJWCWCfnEHn9LZfeQCb4V8QuCGflVgnRZxF+oc9bviljqL0cqZQjbE8Gu5lkL DGY9yt4H2KX16SNSwunVbVdPR9js/LQBAb1htDiQZr/OFlSXKRgHb93cEhkXRawHXFpq8kAVZln vCNqErBlH+W+DvFoBS6/jkZoa0sFJYaHbx+kvBHYaXnog+bbubaHJetu7aiah93urSKTjnTHdjW YtU5vCLdmLGzc/mESEZ4yTOi/d11vJCdmj3QfcWW/0Zhsl68WXYLI1x9iHoJbxZ99qNOABdtev3 ZY4WTbF+rnVQFwbevWQ== X-Authority-Analysis: v=2.4 cv=IJoPywvG c=1 sm=1 tr=0 ts=698373e9 cx=c_pps a=oF/VQ+ItUULfLr/lQ2/icg==:117 a=fChuTYTh2wq5r3m49p7fHw==:17 a=HzLeVaNsDn8A:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=EUspDBNiAAAA:8 a=ZHV-9eCtjRHb1jRugp0A:9 a=3WC7DwWrALyhR5TkjVHa:22 X-Proofpoint-GUID: LmGjzhWxlYXj6u0ZshyX7jvhnsbSmU2D X-Proofpoint-ORIG-GUID: LmGjzhWxlYXj6u0ZshyX7jvhnsbSmU2D X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.51,FMLib:17.12.100.49 definitions=2026-02-04_05,2026-02-04_01,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 suspectscore=0 lowpriorityscore=0 phishscore=0 clxscore=1015 impostorscore=0 spamscore=0 bulkscore=0 malwarescore=0 priorityscore=1501 adultscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2601150000 definitions=main-2602040125 Content-Type: text/plain; charset="utf-8" SPI target mode currently lacks a mechanism to gracefully abort ongoing transfers when the client or core needs to cancel active transactions. Implement spi_geni_target_abort() to handle aborting SPI target operations when the client and core want to cancel ongoing transfers. This provides a mechanism for graceful termination of active SPI transactions in target mode. Signed-off-by: Praveen Talari Reviewed-by: Konrad Dybcio --- v1->v2 - Removed unused param from time out handlers. --- drivers/spi/spi-geni-qcom.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/drivers/spi/spi-geni-qcom.c b/drivers/spi/spi-geni-qcom.c index 5077dc041e3a..43ce47f2454c 100644 --- a/drivers/spi/spi-geni-qcom.c +++ b/drivers/spi/spi-geni-qcom.c @@ -1003,6 +1003,17 @@ static irqreturn_t geni_spi_isr(int irq, void *data) return IRQ_HANDLED; } =20 +static int spi_geni_target_abort(struct spi_controller *spi) +{ + if (!spi->cur_msg) + return 0; + + handle_se_timeout(spi); + spi_finalize_current_transfer(spi); + + return 0; +} + static int spi_geni_probe(struct platform_device *pdev) { int ret, irq; @@ -1076,6 +1087,9 @@ static int spi_geni_probe(struct platform_device *pde= v) init_completion(&mas->rx_reset_done); spin_lock_init(&mas->lock); =20 + if (spi->target) + spi->target_abort =3D spi_geni_target_abort; + ret =3D geni_icc_get(&mas->se, NULL); if (ret) return ret; --=20 2.34.1