From nobody Thu Apr 9 15:00:59 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 CD955426D14 for ; Mon, 2 Mar 2026 15:57:52 +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=1772467074; cv=none; b=ouTFNYKmZzBggcetIsHjn7yQw2KhYLJjw4jgfAtnikgGdKs5uIZ5A2W0Mv+qOxr5VfsNjyjCHVIZII94VPFRMjdv+0Ie7KDnP4yTvsI5Y/sPUoY1MGudd9geCN/91G0wleF1LlhbsiU+Q6DBsFRUFHMo6fAiw6RxowEJ/0ZQ5ks= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772467074; c=relaxed/simple; bh=huNQ1yJ9Jt+LKMpc7zrStUQQmAlHoApmhoOAR8Dvs3Q=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=gVDlboxUq2Md0jMGKzMqvX/GOGe+M+cl01sJy27aAeJS9Dz9eQxtRU4XiZKIIUSND59FC5THilG8OGokC/FD1byM+LWaP6cQ3TyC928Jcng54s+isCb8vbwqau1NGRCt3S1EQETy/gNJVvoDMi+ZtcYKfIawQCDpnc/hGqLFvLU= 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=d19viBf9; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=am90d3ok; 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="d19viBf9"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="am90d3ok" 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 622E0GJN055231 for ; Mon, 2 Mar 2026 15:57:52 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= GTF3K17Z/loG37nN0J9p8Kv0gzEEsdZss3KIPasgllI=; b=d19viBf9cUd5JOsm d/xhsJktuB0bZJ4LhQnmCsU3r8ut0mZSID+FgC9NiO5rJ5Yb63Uibm1a7UVvQ4z/ AzgX45HW1fh1qgqR6mWazVyx17wIUWQ9+/LoQjZ/8uf8JOfMQChH1Q2p0u/xT18u jSJNpyrkS691DqtErOVy0g0iGle5FAS+DzYozD/SITDletOGn0wQlffr7snjKR6C BHafayLzonwo+X2pCE0EH3HPtdge4PvEWkX9Syaf9fO4Gp9+WA5BN607hO+Mi9G3 uKHRs/H3qx11uUudgfkO3Fg6Jb1GYK4j0klNxLat9iyL512dbhyRwMLdknZiCcvg qu2q8w== Received: from mail-qk1-f198.google.com (mail-qk1-f198.google.com [209.85.222.198]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4cmw64b1vx-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Mon, 02 Mar 2026 15:57:52 +0000 (GMT) Received: by mail-qk1-f198.google.com with SMTP id af79cd13be357-8cb4b8e9112so377147485a.2 for ; Mon, 02 Mar 2026 07:57:51 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1772467071; x=1773071871; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=GTF3K17Z/loG37nN0J9p8Kv0gzEEsdZss3KIPasgllI=; b=am90d3okPMJsEBwHsvG4U1vy5BNmT9PsLwX1fEWvgbHikttvqQn+XKWkyWYzxMpY9K tI7OLgD46lzSfhEvlmHY5Ir6b0wKpqyB5xgqxisrNHLNpDHrYNVYUzJB8L8VbuQimoKE 3PbDK2FctI3jYpIYYHWJKiazbObVu8G0GM5wPfYhsV7EnsPAC1fpl0hJhTZ5fzqIM3cz mdGWFBaqlUJ3/vUl4aXhiuwpQer+exXqq3PqDS/RmB6GoquqxtR/IyCa+8JfhoribHUW ITs9LLkiI6Fwd8qBv5Q4d+FgyFpZAmac8B+LqHROrQr/CYiPWQMkdN2w2oIMvrBmBy+u JVmw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1772467071; x=1773071871; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=GTF3K17Z/loG37nN0J9p8Kv0gzEEsdZss3KIPasgllI=; b=lSFmY5RuDLMVRFmHIX3JOZn/cE/qL31kZATjQ8frYhfMij/Q5/GaknTw86Q6HZL9q6 tTGcaVn61FGEQMB/TAHcOhXViGXP1J2y+jCwXCa0LJbVp1UVTr9KFwXhDjQYLcVPf4oN m4g72GIxQUjYvf2i6Zu1MqFpS/2ukJTJWwcHJ0Ha2RbrAqAOd5GwIPXP9b6XJQsCal7P whUvwj80b3ugPHvDSdJ1+IvNza2zWYxM8xIbHmAf+peLZZ8UvORjyHnBVxGPIr1DBbXo UohqY/aoXVTYeOy9FyMcA+/R52USINoACUgRU6DN8Yp3MxGvIw75J3ITrr1KFEzUK9i9 PPrw== X-Forwarded-Encrypted: i=1; AJvYcCW8Tfr4jFm8urpyotHT4trObVIqnhJCS6x+AQymm4Gnj15NJC47hnQF3TWkpnRkN4I3ZundXZuFuuIshOo=@vger.kernel.org X-Gm-Message-State: AOJu0Yytk8Gnmuf09k+ImvAM9+Js9l8JnEYu5a3Hr6TuNTleDzgR9Qp2 +aXveeBIBRYJMCvq2PxOMlMbu85XR1SScEjZ6SorY2y5olGbOHQMwsthftzZOIWFUzC8M6/7jRm 45HUKEbbwNco0mkqrk714nf8Lj2lo+VJZqGL8tdfx9dC/57dsgykPXPf4Zjnkqhp7H3c= X-Gm-Gg: ATEYQzwILbbrb3/i61wFqXQYRXa9ry3UImdEvdv2pE0QznsVdJGPr634S1Y1PMbq/v9 E88LW23x3xa+8iQgonvI+cUofT8PixfISdwzhB0uQH1zLGgAVcHVrl443ZRIT60qwD+a1L46AO+ LuWErDdNPhsNUYkpDdXPVksiUD0DsbTkqIB2WkJeuny+eFpHtsUJ1ripiLTaveioVlWbWgJ0gEN 1CnSC1MU6An5TtCIrWafIHWbpz+8F9iTujtMg8b6hYY6aRjc79kVXmiKbZx2gLYseMaLM0gDKjN Sy6t5maA0S6sz7bzHAyeizceOHdj1MwKp7qhCvq3LiZaB4icSq4tVLCJSXaVq/9l1BGOQL97fFR jGdM9BLfEIXd2zX86+y9rkLGIg9T9AYI9H+CijWFA9I2E2lLO91F4 X-Received: by 2002:a05:620a:2a16:b0:89b:9b75:f5f1 with SMTP id af79cd13be357-8cbc8f1564emr1570334485a.53.1772467071032; Mon, 02 Mar 2026 07:57:51 -0800 (PST) X-Received: by 2002:a05:620a:2a16:b0:89b:9b75:f5f1 with SMTP id af79cd13be357-8cbc8f1564emr1570330785a.53.1772467070508; Mon, 02 Mar 2026 07:57:50 -0800 (PST) Received: from brgl-qcom.local ([2a01:cb1d:dc:7e00:87af:7e67:1864:389d]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-439b41831easm11282438f8f.12.2026.03.02.07.57.48 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 02 Mar 2026 07:57:49 -0800 (PST) From: Bartosz Golaszewski Date: Mon, 02 Mar 2026 16:57:20 +0100 Subject: [PATCH RFC v11 07/12] crypto: qce - Communicate the base physical address to the dmaengine Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260302-qcom-qce-cmd-descr-v11-7-4bf1f5db4802@oss.qualcomm.com> References: <20260302-qcom-qce-cmd-descr-v11-0-4bf1f5db4802@oss.qualcomm.com> In-Reply-To: <20260302-qcom-qce-cmd-descr-v11-0-4bf1f5db4802@oss.qualcomm.com> To: Vinod Koul , Jonathan Corbet , Thara Gopinath , Herbert Xu , "David S. Miller" , Udit Tiwari , Daniel Perez-Zoghbi , Md Sadre Alam , Dmitry Baryshkov , Peter Ujfalusi , Michal Simek , Frank Li Cc: dmaengine@vger.kernel.org, linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-msm@vger.kernel.org, linux-crypto@vger.kernel.org, linux-arm-kernel@lists.infradead.org, brgl@kernel.org, Bartosz Golaszewski , Bartosz Golaszewski X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=2503; i=bartosz.golaszewski@oss.qualcomm.com; h=from:subject:message-id; bh=huNQ1yJ9Jt+LKMpc7zrStUQQmAlHoApmhoOAR8Dvs3Q=; b=owEBbQKS/ZANAwAKAQWdLsv/NoTDAcsmYgBppbNqkO+K8MdcaL+Iq6maaBsACCQxJZeE48tEz jQGa0foWVqJAjMEAAEKAB0WIQSR5RMt5bVGHXuiZfwFnS7L/zaEwwUCaaWzagAKCRAFnS7L/zaE w1yxEACN61b2eBwGFN4Xz7RuHV8ss8EeNNW/vq2TM6zZ/jPXhTyII117kppB3b5qNpaGJz20GnK dWRcJ1pJfW7u6bbtUcWyWNYrLj6MsB7qIUUqsE05hJMDxoCgUgCjLudN061h7/2pSF82wKsZTh5 vkS4PdlDZuq096UVrubrkJX7nTZTERvO0Gr+qrUIDSKTysJcO3aZego6U41L0+ENNLYsviQgSIT qCAb0F6j5z8VZLVIOUDslPf/fC24OaG1c2fHMlNmvRHX/Fy1JzCYIW1z+ozscoG6iBFOBZ92mB6 y4oLivD/Uh/AnB9gjkXUKQ2yG/1kNfXyT5ypqgrYWRZ4WFqcyrySrCWMQZ1Ja5lIDzbaw9tYAXC Op7zvDq+Aqf2NqKG0i72xBTtdUHsA5ha9D5mcOfppMIdC2IScKvMB7MUFDtp3DKiQy1WHeIzeUX uCSHJ+CJw/qTH6D5yh0ij5kS4ZLEm30P6Ok933D3NY/Ba2yOEj+MxC18vhWK11z4XN/zzSJ03Ve cf5JH7UXZnz3dmamrVE08YCBAqLX9pKTjvZ+Y8HVz5klOWx+dZ4YVfVF5DGrmH1YxS/h2wiLBz0 7a4hRu1ACC15yEpuj7qc7b6Npve2UzyhgUQxfXUlZ2L6RR3chm1ccSZaF1NEtNWoC1PzPz3Qjeu 0qZ0jHqMtB27R0g== X-Developer-Key: i=bartosz.golaszewski@oss.qualcomm.com; a=openpgp; fpr=169DEB6C0BC3C46013D2C79F11A72EA01471D772 X-Proofpoint-GUID: 8BJOM-bJVobDTHaHOKiFqKNOVhx4E3mR X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwMzAyMDEzMyBTYWx0ZWRfX5hXGR72rIH4i PMJqIsyXar+7t8apUky8/PFyOac2Alh1PvrIRfPRQ2sozA37mgwJAjeJpyGip1+6Ax/YgHzTdgO rI3XN4fskKYgKgq7libHBNSZ62LOUBFlVmqhNApEZkqVRhg0rQ7dHPa8SBrOx4v8MF7UcJiTfPd 6jEQTltciWxWdbzr482m51DjXmYX2ZqdkjO2OHIwOctquqCWVCPEqPQWjdA5/JfIz0p1+jsyjMc za54gpf1qnxDl/tXMfrHq2YOZ3Dv+fZ1kbNjfV5OKN0Bj0knIAg6bThkexe0/0YGtI6LGySUop5 Y3xhjNhnDsE15n6x7b3RrMcUyPTHbgq4Ss7bUm1pkneGiRIb2k/IeCfRUBL8nV64/8OwAN1jXUr GeS/quF7XKxB1fbO3BnLd1zx7HdnypyHqLkS3ofE99AoCuCvYNZy2rEhJAZOkiu/u2LXefDPkDy PpyoFq3unaFI87Wx6UA== X-Proofpoint-ORIG-GUID: 8BJOM-bJVobDTHaHOKiFqKNOVhx4E3mR X-Authority-Analysis: v=2.4 cv=I5Vohdgg c=1 sm=1 tr=0 ts=69a5b380 cx=c_pps a=qKBjSQ1v91RyAK45QCPf5w==:117 a=xqWC_Br6kY4A:10 a=IkcTkHD0fZMA:10 a=Yq5XynenixoA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=_K5XuSEh1TEqbUxoQ0s3:22 a=EUspDBNiAAAA:8 a=mwBPi38BU94uBFWovtUA:9 a=QEXdDO2ut3YA:10 a=NFOGd7dJGGMPyQGDc5-O: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-03-02_03,2026-03-02_01,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 malwarescore=0 adultscore=0 priorityscore=1501 lowpriorityscore=0 clxscore=1015 phishscore=0 impostorscore=0 bulkscore=0 spamscore=0 suspectscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2602130000 definitions=main-2603020133 In order to let the BAM DMA engine know which address is used for register I/O, call dmaengine_slave_config() after requesting the RX channel and use the config structure to pass that information to the dmaengine core. This is done ahead of extending the BAM driver with support for pipe locking, which requires performing dummy writes when passing the lock/unlock flags alongside the command descriptors. Signed-off-by: Bartosz Golaszewski --- drivers/crypto/qce/core.c | 3 ++- drivers/crypto/qce/dma.c | 8 ++++++++ 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/drivers/crypto/qce/core.c b/drivers/crypto/qce/core.c index 2667fcd67fee826a44080da8f88a3e2abbb9b2cf..f6363d2a1231dcee01768241353= 89c42bec02153 100644 --- a/drivers/crypto/qce/core.c +++ b/drivers/crypto/qce/core.c @@ -211,6 +211,8 @@ static int qce_crypto_probe(struct platform_device *pde= v) if (IS_ERR(qce->base)) return PTR_ERR(qce->base); =20 + qce->base_phys =3D res->start; + ret =3D dma_set_mask_and_coherent(dev, DMA_BIT_MASK(32)); if (ret < 0) return ret; @@ -260,7 +262,6 @@ static int qce_crypto_probe(struct platform_device *pde= v) qce->dma_size =3D resource_size(res); qce->base_dma =3D dma_map_resource(dev, res->start, qce->dma_size, DMA_BIDIRECTIONAL, 0); - qce->base_phys =3D res->start; ret =3D dma_mapping_error(dev, qce->base_dma); if (ret) return ret; diff --git a/drivers/crypto/qce/dma.c b/drivers/crypto/qce/dma.c index ba7a52fd4c6349d59c075c346f75741defeb6034..86f22c9a11f8a9e055c243dd8be= af1ded6f88bb9 100644 --- a/drivers/crypto/qce/dma.c +++ b/drivers/crypto/qce/dma.c @@ -109,7 +109,9 @@ void qce_write_dma(struct qce_device *qce, unsigned int= offset, u32 val) int devm_qce_dma_request(struct qce_device *qce) { struct qce_dma_data *dma =3D &qce->dma; + struct dma_slave_config cfg =3D { }; struct device *dev =3D qce->dev; + int ret; =20 dma->txchan =3D devm_dma_request_chan(dev, "tx"); if (IS_ERR(dma->txchan)) @@ -121,6 +123,12 @@ int devm_qce_dma_request(struct qce_device *qce) return dev_err_probe(dev, PTR_ERR(dma->rxchan), "Failed to get RX DMA channel\n"); =20 + cfg.dst_addr =3D qce->base_phys; + cfg.direction =3D DMA_MEM_TO_DEV; + ret =3D dmaengine_slave_config(dma->rxchan, &cfg); + if (ret) + return ret; + dma->result_buf =3D devm_kmalloc(dev, QCE_RESULT_BUF_SZ + QCE_IGNORE_BUF_= SZ, GFP_KERNEL); if (!dma->result_buf) return -ENOMEM; --=20 2.47.3