From nobody Mon Dec 1 22:05:08 2025 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 4099A26ED35 for ; Sun, 30 Nov 2025 12:36:20 +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=1764506182; cv=none; b=eecpStJLqsVaQX7BLmNRF+Zu3J8jptKWroY4GVeHnvZsdW0P9b1KMVeSmp3Cm6oHOjXRQvzytYEdlNJCcLBPtBDSG0/tBrNh3AWgM4q+9pTexschbmiHV2cjTqOm5k2jpdgKjJXRVpV3nzNTt4sdHkFqgK99T3EOmGq36QuY46g= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764506182; c=relaxed/simple; bh=pq/+nMdyC+q1ogI0/TIhIirNxNxs+pUe22DWF7lVnBo=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=rNlEZ4hetyr3JUaGEFpwNigiO4lvIJZmSSM0gUo/bFjCXVrRez3RMUTiVLXZqxDf133yBErglNUfsggVfqjRmib67n9QthauKZFRJQR37/YivhJ4mkiPfohKwY0QZMiUtOjOW9Cs0x6NY5CcwYcCs56ERE0+IH4AIpkAR/Xstfc= 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=TpxT7ZCn; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=LtCbQ7Uq; 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="TpxT7ZCn"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="LtCbQ7Uq" 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 5AU6ScRl787391 for ; Sun, 30 Nov 2025 12:36:19 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= e4n62F7hOmaFjnTCj5sDtBY7XKAle/kgKH/bYoDqk94=; b=TpxT7ZCnor5T2yg3 AKgmBbRB5Pt+U1lPauoLJS0xDRXqqO93uwhjmP1g6U+ru+mDj19cHM5kXCpC8xkb /DN69xmHIx9y04/TtZbcu1pxjRkSuucpZ9iiwmkGW1hHgIi0UInB/FM5GCtajS8l TanJTGLjX57AHO7tDv6nG7LBnQEh+QEQbTR1m39m8bY3G9NaHZFEgiuBVZQrnhTO XwmXHfV8aZ6TyHXrKZxwkYVQb/aXqogQMz1Jv/TEApwBm3Ix/XcKOAc5eSMNmOI3 leAWHVHZ1o6DZK8hoTcfOOKkZqFLsquuCNVbm1E3hTiPQ0e+MFomBCu2X+R4SAbh /NR0sw== 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 4aqskf2414-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Sun, 30 Nov 2025 12:36:19 +0000 (GMT) Received: by mail-qk1-f198.google.com with SMTP id af79cd13be357-8b2dbd36752so640477885a.0 for ; Sun, 30 Nov 2025 04:36:19 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1764506178; x=1765110978; 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=e4n62F7hOmaFjnTCj5sDtBY7XKAle/kgKH/bYoDqk94=; b=LtCbQ7Uq/BzPpb4T1xFw1AQDVEJc7u9pgsBxbmaY8bb+CgM5HTw5Y6yA/K0cvMdEj7 ZyEaHWTE9YOcsOzHp0W9bDZAVqciKvbfTtZvUqtu96up2t4r1zUszAbHIVpySEUj92W5 Lhwz353U41YMQVr5QwdlvZQa6xaA4HYwqifijKMAoN8g8zBxuNCkTvCu5nDl46jpotBr 5Rc6MYt/E5jmBSWYsq9rVmbIBrMa6rBH726AzciZnvuwmm3jQteBWPcI+o6iI/90fxOr 3By7AWrG7g/ftBrV0db1TK/STgxCGtcd1lnvoSzxi/dQ0bPefpfin/nNlnhnnzf9T8+S p+gQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1764506178; x=1765110978; 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=e4n62F7hOmaFjnTCj5sDtBY7XKAle/kgKH/bYoDqk94=; b=hSMGziCZ+5UnkqjdLih9OJBFiY2f6je5LBPcmBU6a3gJ2VSi+lt4rotRFYmR7J4NF9 qQEcDQdF/dxb3CATuH11AcS0vzhhT64tyzfVJY109mfHj7GplUm9qy7gM4vcjI4QxT1E 28N6v4n1du0Y604uPA/xSkwOKVmbSOO+HWND0HLcZjGEmGO9ckJ59TcTNJErUJiY5/DK mK9WevLbkUkaKoMmnF3TQhopGP9jcZjf9GMnBOnfaTIOyuOLinOdM2DXeXr+SK7OWhi3 6oSP+uZd2l2DUl32woSB/IeCvlhqdSdCdWoUSI7Cm2VVDs6BoyCZaGKo8oveW41IdcEZ 6z+g== X-Forwarded-Encrypted: i=1; AJvYcCVJOtgXeWlmHEjcy2yaMjqTpUWstr5DoRV2jWLIdRsbBCtQxljf7twMW+zUuQH2K+TzU8yPB6Tqz0+9sRk=@vger.kernel.org X-Gm-Message-State: AOJu0YxcyCusW7i9n6F6EaBGXe4ZVBSQHthT0bbFtc1UDkqAcIdTunyy GU7UhzKoic7noEBM0Xm6XVSGID+GhnmcNhlnzGVq+6UZZreQiw5dkAiNE2anonlcKD5NT1pGKnS M9QpvVd2s+hafnyYygiBepeyhKA+oEQvAkZthUNFmZs2kuY0nd2uR6nwnuIDRD6znkPY= X-Gm-Gg: ASbGncujDFbySj2WFh6j7YnU0Ek1ZMFVqL1pfa74IKnsdhWsCGOS8WkVddq2fV605+S gceI6dE1yXn09Loug7AIC/tvSnNkI/kkNdRsBsJ9szUy/nvQ6jqz9OGl+P2IMjgIY7+4iYqqiCg DtKQw7+FpLKGq3rYuCJmua88ncTR4eoJ9/p+aKWy/Zpfg8gbFJGbzDMSeYRwnJO5JEZUSXPRkpI orJg3ItNdKzDo4geBAxeMfqQfWNFIzgnTeNvTxU6xGe6AgtzlXG1FCCub39rxfyfzoFKVBql4/t KRrzmU1JgVRbHb162QLrpZv4VSw8e7jz+6CiXPX4OOMi8VRcDlgBOHKD5CrZS0p4NOqSoMj339Q 3m635/norr6JmvZrjzvYumqvkB8hzp34SwQ== X-Received: by 2002:a05:620a:4509:b0:892:eeb9:4def with SMTP id af79cd13be357-8b33d4cf9d0mr4721867085a.49.1764506178434; Sun, 30 Nov 2025 04:36:18 -0800 (PST) X-Google-Smtp-Source: AGHT+IEwd83+g8q92x1y4CWxFdCnR6Wp/D+6ypCjsLsXp/d0HHxg4TfXOyYZHiS3ejZPS6LsXDPMgw== X-Received: by 2002:a05:620a:4509:b0:892:eeb9:4def with SMTP id af79cd13be357-8b33d4cf9d0mr4721863385a.49.1764506177949; Sun, 30 Nov 2025 04:36:17 -0800 (PST) Received: from [127.0.1.1] ([178.197.195.159]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-b76f51c6c12sm920506666b.29.2025.11.30.04.36.16 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 30 Nov 2025 04:36:17 -0800 (PST) From: Krzysztof Kozlowski Date: Sun, 30 Nov 2025 13:36:08 +0100 Subject: [PATCH 1/4] remoteproc: mtp_scp_ipi: Constify buffer passed to scp_ipi_send() 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: <20251130-rpmsg-send-const-v1-1-cb11c7e0a024@oss.qualcomm.com> References: <20251130-rpmsg-send-const-v1-0-cb11c7e0a024@oss.qualcomm.com> In-Reply-To: <20251130-rpmsg-send-const-v1-0-cb11c7e0a024@oss.qualcomm.com> To: Bjorn Andersson , Mathieu Poirier , Matthias Brugger , AngeloGioacchino Del Regno , Srinivas Kandagatla , Konrad Dybcio , Liam Girdwood , Mark Brown , Jaroslav Kysela , Takashi Iwai Cc: linux-remoteproc@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-arm-msm@vger.kernel.org, linux-sound@vger.kernel.org, Krzysztof Kozlowski X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=openpgp-sha256; l=1658; i=krzysztof.kozlowski@oss.qualcomm.com; h=from:subject:message-id; bh=pq/+nMdyC+q1ogI0/TIhIirNxNxs+pUe22DWF7lVnBo=; b=owEBbQKS/ZANAwAKAcE3ZuaGi4PXAcsmYgBpLDo77EwKqXOJTM+99Uw/WZdDbkh4LZ6TE7MGd 58HKTs3HPSJAjMEAAEKAB0WIQTd0mIoPREbIztuuKjBN2bmhouD1wUCaSw6OwAKCRDBN2bmhouD 19GjD/4yqvoVdSiFtXLgPtSNjWBghlWA484iGQ/nvK11zYtmLSt73fjHu+ppUkACDE3Gzj+MQW3 GDtp6bRzB1dZ3QT8+hLu/z1ccX0SfUdcsfvl8p/37dFdHApMe6rolFyGrlIn2G8TYijT3nYGyB0 izR8XwMJza/i4Fmr7yUyAAbVxOeHbHI3TF5CozIZns+a8GS7giqH2FmroISq6Lq16y0TDHRwJqU A7ZLWYFUb2KyJTNwdjFO0sfjVkjqx8e/PKvM6Bzs8E3btdilFt/KcUIM6FXwFsUSUDpuuiRQPqt Qj5mdGUxGAffYx5dow27iCxx6uemvTGdgakcUyiQCaQuCytEbDlh8Ocm9SRF8XuTaldc8Wtagkh qNyDq8rMPwMzoHaW/BS0a54JrP8GZfP+40GvH+Z58mM7JNH6UoevmOFeyzT/u6PQ4QAA/4sskOK gapow81/rauguxhutkRhwgqWvj3E7v9wSscxUC06Tk4DILYqPcd4gzxySFbYZrqEgx7xXie2fDj r9mOc69XtfZRc9kYxDe15n5d6KEqv/5+uAg4SOlFfKoJjPjNu3LRCs1QldniZqnGgp33WEh3kbU gRIEMvf47RDpaZ/ky3EnM/viU+sU8FftAtiEPtskYBtbQqyRQD3BLdg0yLoExpWQ4Qro+t2IVvW Ps0SCz8LoJid2Gg== X-Developer-Key: i=krzysztof.kozlowski@oss.qualcomm.com; a=openpgp; fpr=9BD07E0E0C51F8D59677B7541B93437D3B41629B X-Authority-Analysis: v=2.4 cv=X7Nf6WTe c=1 sm=1 tr=0 ts=692c3a43 cx=c_pps a=qKBjSQ1v91RyAK45QCPf5w==:117 a=FPK7cjBCgYbqzSTDLBmM0Q==:17 a=IkcTkHD0fZMA:10 a=6UeiqGixMTsA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=EUspDBNiAAAA:8 a=bWW22GgIgZmb96Hp9REA:9 a=QEXdDO2ut3YA:10 a=NFOGd7dJGGMPyQGDc5-O:22 X-Proofpoint-GUID: 6qMvHvORit7nqKnyfz-B0NGDM2k_6muq X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUxMTMwMDEwOCBTYWx0ZWRfX8afmV4/rT5wZ fDNwnAQRTImecZ/O7LCSRtTjYbHPuh6VtiLVqzWTddC326ahUYwmvfcI3h7LpLN3/Ag/RvBowsp /CzlC1GG9a73ewEpQUGapc0sx8Rj3CY3o8uRrzqI/T9zKs6SA+cB2zjRct1htqPsmDtoRMWc73P MaVImwrSjeig/4OoRUhzML2umRUBKRzAEwc5Q26r1Vbl8cdda4sL3+IIE5qgdCIr9amOaBg7ail c1iHs7vqSNF+Z2RtqWmiiT+GtmkFbLmbyEFh8vfM4SYysQ/1zl6lpXzmH9HrJl1TLK59r+8pBda Nbbv6ew6ZTXyBWWujE+Pd4GFjHegBCEwzrgSWpyaqiyHI8BR7qG0YFXBMPd9qvn7wOvdoYDtUvh 5Y2NvZMsd5p4JAiWCgBMEoZ5+9PFQQ== X-Proofpoint-ORIG-GUID: 6qMvHvORit7nqKnyfz-B0NGDM2k_6muq X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.9,FMLib:17.12.100.49 definitions=2025-11-28_08,2025-11-27_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 spamscore=0 adultscore=0 bulkscore=0 phishscore=0 priorityscore=1501 malwarescore=0 lowpriorityscore=0 impostorscore=0 clxscore=1015 suspectscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2510240001 definitions=main-2511300108 scp_ipi_send() should only send the passed buffer, without modifying its contents, so mark pointer 'buf' as pointer to const. Signed-off-by: Krzysztof Kozlowski Acked-by: Mathieu Poirier --- Patch necessary for the further patches, please keep with the rest. --- drivers/remoteproc/mtk_scp_ipi.c | 2 +- include/linux/remoteproc/mtk_scp.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/remoteproc/mtk_scp_ipi.c b/drivers/remoteproc/mtk_scp_= ipi.c index c068227e251e..bc1ee82cff36 100644 --- a/drivers/remoteproc/mtk_scp_ipi.c +++ b/drivers/remoteproc/mtk_scp_ipi.c @@ -156,7 +156,7 @@ EXPORT_SYMBOL_GPL(scp_ipi_unlock); * * Return: 0 if sending data successfully, -error on error. **/ -int scp_ipi_send(struct mtk_scp *scp, u32 id, void *buf, unsigned int len, +int scp_ipi_send(struct mtk_scp *scp, u32 id, const void *buf, unsigned in= t len, unsigned int wait) { struct mtk_share_obj __iomem *send_obj =3D scp->send_buf; diff --git a/include/linux/remoteproc/mtk_scp.h b/include/linux/remoteproc/= mtk_scp.h index 344ff41c22c7..4070537d6542 100644 --- a/include/linux/remoteproc/mtk_scp.h +++ b/include/linux/remoteproc/mtk_scp.h @@ -58,7 +58,7 @@ int scp_ipi_register(struct mtk_scp *scp, u32 id, scp_ipi= _handler_t handler, void *priv); void scp_ipi_unregister(struct mtk_scp *scp, u32 id); =20 -int scp_ipi_send(struct mtk_scp *scp, u32 id, void *buf, unsigned int len, +int scp_ipi_send(struct mtk_scp *scp, u32 id, const void *buf, unsigned in= t len, unsigned int wait); =20 unsigned int scp_get_vdec_hw_capa(struct mtk_scp *scp); --=20 2.48.1 From nobody Mon Dec 1 22:05:08 2025 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 2C50627F75C for ; Sun, 30 Nov 2025 12:36:21 +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=1764506183; cv=none; b=i1pUbQ6ZndMtPqS5iF6LrmH71PqjCp+gJIitXbVCe5XQiKjdD3YDJ9xw8WRHshQEyeO4PodRHRVwH0jqWLhkBFwS/+6hrdW72j1aRIAaWEEO2LzGRTtxlaU9c8TG0ixQsdbfqCL9kjLKdSOa/P80jNQeNJLwu3Vlx6tihp0JClU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764506183; c=relaxed/simple; bh=Eijw7sfo1fHO3BdYpz8WwxXJjQps55VoXt7UFlcVMeA=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=BetHJJcD+R/kollxFXX/2TSaaVwfk52073AULNaXmyz6VESYpRz/QC6abX/y9mUtSL+i0l3Bj1rOVK8BCsWaLEWVV7gRNcH6UlR5qLmH7VbLNcpxkunwqdr9gk3Hoty1M9MHfacYMX2baXlDubGvp3SHZlPzj7rigA7oBveVXDY= 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=jrxaUYnk; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=GXNiLCMS; 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="jrxaUYnk"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="GXNiLCMS" 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 5AU6DtLB234050 for ; Sun, 30 Nov 2025 12:36:21 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= RrqtCASUZ3LLt9ul3oZvn6rRWrr2qQDEBO4OynG5zZw=; b=jrxaUYnkZ48+4tXG L5zTrwdQe57RIVJMUrVyOYz71g5LUm7bC38EOjg74csAk54YkXiPYWudHh7u1QEb MyLSXisaFMA8mtlrqggiTnFVQ7aBe+oXlZZaqBoGPb7kXZ1G1tPwUM0U2ZFx6efh a1Rb4XD58ifNmfA4N2JxTNEUNfhFrp2VFB//w2L2Y98YD5/KfKqBjf/xBJKdv9Zk eRR8uczq6iy6SYB4oAyrBdgJ/Cl2T18E71sB8XKmqnQBRAiKLfMi2cpzvNHXVw8e aRCDF3nRhkj0R4MUs3EQ9Dw7enofSYa6S1uatcX6Uv1kfBWVdM6yJRrD2URpl/Au V12LwA== Received: from mail-qk1-f197.google.com (mail-qk1-f197.google.com [209.85.222.197]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4aqt46a2x1-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Sun, 30 Nov 2025 12:36:21 +0000 (GMT) Received: by mail-qk1-f197.google.com with SMTP id af79cd13be357-8b233e206ddso602983385a.3 for ; Sun, 30 Nov 2025 04:36:21 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1764506180; x=1765110980; 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=RrqtCASUZ3LLt9ul3oZvn6rRWrr2qQDEBO4OynG5zZw=; b=GXNiLCMSkCVACzw/+rEodUQs6rpbhPCBYV7M25HsIwSVGNG3pMUm5Hu6wjsib8Wloh Hl++GjHUzzbedYqdY5KLBNtWNILYFiadiskxpH8l5feou4ulkaBDilPgGeTai9LG87ib 3dwY5HiCKADk8DTvhmpH9gyhFu14aLNMf74UPPKEM/vFjdkuNFEURnPc2m/VIJ6EskDT QOakoVAcZ0L346t9LxCjb9Cvqzxaq1g2BFfQ6ehCgfW/UYk3pIUzE1uZO98S9sK7ouz+ 8i2IZnkkY5bNS0/sYrfEZd6IpGN+jKCsSqeY1GZuCi1AI0xHVjClgeZdFA5yQnh92UFP qTtA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1764506180; x=1765110980; 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=RrqtCASUZ3LLt9ul3oZvn6rRWrr2qQDEBO4OynG5zZw=; b=aKR/lRFl0zKA1lMLFWHBnPYd/3UO5/gEegsG0ZH4z565V7zHhmjTZFlX7TJveYslWI ZhSAES4+05Rb7V8soJqnBm5YkakR1oeCN3eYVflrWnv8RCawVDVNygJRjnCnAaAC24T5 9lWEFvgThO1vENm0p8Ap5kzZzOzakg3CX2MC0g8hGTz8cmaQHUvmR8xjmsnFfpZUJaIX 29pUARu0+D6WO1XrRNroTNQG3EnJXT+hzYIhQl3PaP4adKb+FbUK3K/2Fnv67ki9r2C0 qGk3WOTCQ2cnNqOrQooO1SFl2tTaWO/bYvI1wdJkRBzANDPUyQbd0SPZpk03KLwQvNFF byRg== X-Forwarded-Encrypted: i=1; AJvYcCW+urP/PKhpmthkDt7hQ/Wh0Zy7jq8enxSPn13dZdND+/9scb/+KTCS2eE4CKlMA/CQNiYq9qn+KR5wkRs=@vger.kernel.org X-Gm-Message-State: AOJu0Yy5ZU1OI4nyH+/SqUJV3pOsK0RpNB88p/FFIwrEhNAbGBZGeKJ9 0plyY5QBhrZrpc18UUCyU/+W2pmwLu+rKc3kz529N/nHmemiimkGzDJHh9Ohr4P8QYSv6IoMmJH qUpuzAUc5Pfz1CDpryV1wrFjJh9M52gtBBcAkyAfVl4Xs2z+ydxl75ke4l3ea2joHFFHHsETHdA g= X-Gm-Gg: ASbGnctf66kCtgQ6B/EPd+DHeGXB46AeEKUId2bEhEj+UQsI6/tLkAkFbRYsXLp8ikG 8TS+ldYZOiZfjd/t0yhpMv/f+iADD9YSSpESpgjTtfChO+WF4/DjTgZtjE6fnqJvBvT/wSUM6dD t1LuyI26fKrAq7WfX4NeHMNvPM/OhgQV/J/FDeMFnjDhM6bRYMehg7813S7pxFr5ku/0lAO/ziP SjrJFsqOHCgII3jrNaKmuzo+TcgM0SYSAUwCetkjh/r+gp64m+CJI0zRC+MqjiIUsVdndinn9+K UYMRVXegwz1OZZwAeVNi3AytwtfGqvFFjGExtb/64yQeUr6WHFhoOC4I6e9P5GspcrTO00ImSpo z3qXa9aRdmAngwUdJPs6wW13Kq0WpK2MYQA== X-Received: by 2002:a05:620a:4689:b0:8b2:f145:7f28 with SMTP id af79cd13be357-8b33d2681e5mr4596737685a.33.1764506180087; Sun, 30 Nov 2025 04:36:20 -0800 (PST) X-Google-Smtp-Source: AGHT+IEVjFnLmAKnKsu+rROI20IfRIbSvxnxGH2GJOLhlIiUqNW2ucVuPMKhRlB1OZpEhn+d7v9Qkw== X-Received: by 2002:a05:620a:4689:b0:8b2:f145:7f28 with SMTP id af79cd13be357-8b33d2681e5mr4596735785a.33.1764506179712; Sun, 30 Nov 2025 04:36:19 -0800 (PST) Received: from [127.0.1.1] ([178.197.195.159]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-b76f51c6c12sm920506666b.29.2025.11.30.04.36.18 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 30 Nov 2025 04:36:19 -0800 (PST) From: Krzysztof Kozlowski Date: Sun, 30 Nov 2025 13:36:09 +0100 Subject: [PATCH 2/4] remoteproc: mtp_scp: Constify buffer passed to scp_send_ipi() 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: <20251130-rpmsg-send-const-v1-2-cb11c7e0a024@oss.qualcomm.com> References: <20251130-rpmsg-send-const-v1-0-cb11c7e0a024@oss.qualcomm.com> In-Reply-To: <20251130-rpmsg-send-const-v1-0-cb11c7e0a024@oss.qualcomm.com> To: Bjorn Andersson , Mathieu Poirier , Matthias Brugger , AngeloGioacchino Del Regno , Srinivas Kandagatla , Konrad Dybcio , Liam Girdwood , Mark Brown , Jaroslav Kysela , Takashi Iwai Cc: linux-remoteproc@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-arm-msm@vger.kernel.org, linux-sound@vger.kernel.org, Krzysztof Kozlowski X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=openpgp-sha256; l=1560; i=krzysztof.kozlowski@oss.qualcomm.com; h=from:subject:message-id; bh=Eijw7sfo1fHO3BdYpz8WwxXJjQps55VoXt7UFlcVMeA=; b=owEBbQKS/ZANAwAKAcE3ZuaGi4PXAcsmYgBpLDo72TYdt6rx2Lc07XKkIkEPHnRGPcGuTpQIs bi/v4A8NCKJAjMEAAEKAB0WIQTd0mIoPREbIztuuKjBN2bmhouD1wUCaSw6OwAKCRDBN2bmhouD 1xtnD/oDgg43hK+yfYRQa5/OJIA2iP269kMbsXJJ+k0xaiWZ0X23n9yIREysBpFzzROhC6nrq+7 RmwffS8bgzNPqAaonjTDi8g5SWVIgDLUG+jD8pKsr38ZenL58//aJwWUGK/4EvcvM3D997bpsIC t8qDt+saG84vnNGAu5A6r48Zj8DWVtjW3bHAwRMgn0ZX0dBc2tdTu3wYo7NbHZPXlJds+Evp1IB HWBvCGjOs63MVgvWUt+wsfNiKaT+7D8t9V0sJfTi37XMwMa+Rkp28buGEXUOnLSPHncl48ka8w7 724pSPBcQvLcSicxYkCRFySGZ1xCnedG4gCn5go8HDonBdCwYrenEtYzvggjokzmR9tKVTMQBB7 IhC6YwQKEal/n5gPTf/igMp640L9n4brJkDQtYRPlnEGifdQ67kAU2CY5IXiAdEKiGOrfW9mfHf b7dJ2gmAy19lOwvLiAUNHt5ii9QUUDwmTUPJulDGqx0IFtX8pJDh3CL7GS+NpDkCgbvUZJJLmqC 1byTAKXNzxJiNrc0MlQmkLBnlINN0NGw1nC9P16GsRvoGgBvUcEjTBHMYzPcSE06HIaWHay2MU+ cyu6McPojeS8IGB5HvrGSpoxLGWvgAzy8AFlR647pvtUVfdKsnv5dCC8X+7GhJ7PCFRUMmkZbtb fVgL16w38wuiO1A== X-Developer-Key: i=krzysztof.kozlowski@oss.qualcomm.com; a=openpgp; fpr=9BD07E0E0C51F8D59677B7541B93437D3B41629B X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUxMTMwMDEwOCBTYWx0ZWRfX0lD9SCaIUbTF 2qFny6bpB+Si16ImNZad1+YLVTbqWGA2Fcv5vpohISUDm7/frJbJsCSgx28mgL4pg48MfRAdnhX vYw60vXmLuqmSUkLtHe4oAJvtxKeEuLYPGejV8KPL9r1DZUwRH+/HcYlul6cjLS+I3385GOKUvV ga04s8V3D2TyE3ViJpbvLQUirQQq+qs1s9lrm+/3Xwzkyn/3m1UBgM7rOb2gS3unp5LOwgYP/kG OM13eBNHbXq7yaYZmI0TxxzSUP5HLyM/IV+UpjVPWQGuLBvxzSt+AGnaRQ8MER99VCdmqe8F4fC K2CygB98SHpcuPs+QZuC/9FG5BsAAkeLPU7ZS52VvDf1gGqZsDsyK0jSliNOsJxA/qZtuW/WmJS TNJ4T4HYDyr0NLNapVkDEG5kHQp5Eg== X-Proofpoint-ORIG-GUID: yDjK22M8UtsGbbDt6p9PW3jiz4nylTXp X-Authority-Analysis: v=2.4 cv=aO79aL9m c=1 sm=1 tr=0 ts=692c3a45 cx=c_pps a=50t2pK5VMbmlHzFWWp8p/g==:117 a=FPK7cjBCgYbqzSTDLBmM0Q==:17 a=IkcTkHD0fZMA:10 a=6UeiqGixMTsA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=EUspDBNiAAAA:8 a=bWW22GgIgZmb96Hp9REA:9 a=QEXdDO2ut3YA:10 a=IoWCM6iH3mJn3m4BftBB:22 X-Proofpoint-GUID: yDjK22M8UtsGbbDt6p9PW3jiz4nylTXp X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.9,FMLib:17.12.100.49 definitions=2025-11-28_08,2025-11-27_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 clxscore=1015 lowpriorityscore=0 impostorscore=0 suspectscore=0 spamscore=0 priorityscore=1501 bulkscore=0 phishscore=0 malwarescore=0 adultscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2510240001 definitions=main-2511300108 scp_send_ipi() should only send the passed buffer, without modifying its contents, so mark pointer 'buf' as pointer to const. Signed-off-by: Krzysztof Kozlowski Acked-by: Mathieu Poirier --- Patch necessary for the further patches, please keep with the rest. --- drivers/remoteproc/mtk_scp.c | 2 +- include/linux/rpmsg/mtk_rpmsg.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/remoteproc/mtk_scp.c b/drivers/remoteproc/mtk_scp.c index db8fd045468d..95d5e0138a15 100644 --- a/drivers/remoteproc/mtk_scp.c +++ b/drivers/remoteproc/mtk_scp.c @@ -1061,7 +1061,7 @@ static void scp_unregister_ipi(struct platform_device= *pdev, u32 id) scp_ipi_unregister(scp, id); } =20 -static int scp_send_ipi(struct platform_device *pdev, u32 id, void *buf, +static int scp_send_ipi(struct platform_device *pdev, u32 id, const void *= buf, unsigned int len, unsigned int wait) { struct mtk_scp *scp =3D platform_get_drvdata(pdev); diff --git a/include/linux/rpmsg/mtk_rpmsg.h b/include/linux/rpmsg/mtk_rpms= g.h index 363b60178040..badcbc89917f 100644 --- a/include/linux/rpmsg/mtk_rpmsg.h +++ b/include/linux/rpmsg/mtk_rpmsg.h @@ -25,7 +25,7 @@ struct mtk_rpmsg_info { ipi_handler_t handler, void *priv); void (*unregister_ipi)(struct platform_device *pdev, u32 id); int (*send_ipi)(struct platform_device *pdev, u32 id, - void *buf, unsigned int len, unsigned int wait); + const void *buf, unsigned int len, unsigned int wait); int ns_ipi_id; }; =20 --=20 2.48.1 From nobody Mon Dec 1 22:05:08 2025 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 3562A281531 for ; Sun, 30 Nov 2025 12:36:23 +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=1764506186; cv=none; b=SxKahyg7j9Skw0BOHU5LMzETplupBxCePKdM6tGglKn9zcX+YTi/UVavGkQK0rb084DkZBJjy1jjyXdLKljZibNpMUfc6T97EAlBDm2Ittz1w32VHueGW/doFIetHLvc/XUffYngCDu5oFzG/f5kYG864uTnyrwizfOtkz34s74= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764506186; c=relaxed/simple; bh=iTRd+rIeM0i/pGucaXFPZ9D6qmjfk35erqlIaeNAJhM=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=ZqrxRkISyXa9H/Nn+nORHQolvx8LLkuFBBFRYWkkuAXuv+UGU0LNFYYP1d24ilOUifRTI4IRjgel/rKi2xUtLbx6zp2q7hCVUWyYyfJDYU/NSSZ7J+OLgviohOlbhF+RZqjsqO2lHyGxiP/fiq637rg/7UoF9Mx8PxesTXnnAgY= 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=oJ+n+iKs; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=Jqv8g0P1; 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="oJ+n+iKs"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="Jqv8g0P1" Received: from pps.filterd (m0279867.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 5AU7QZrW737272 for ; Sun, 30 Nov 2025 12:36:23 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= dARi/iKdT6YHQNj2xjIFbOozMfb2GveeEYQmMb8Fa4k=; b=oJ+n+iKsmBVUZGJ/ CXjTgMsh1G4BlD+ywIVzUrt/gfNQYVj/tdr3kvkch158U2ApUXVDgczPT4kcxPd4 kHqkxKhFHqdc0HlCPlz6QGuXiAMWd9g1yd1gEWWk/b9w3sh8kitc/J418Ga5gW05 5aw1rW9FCIdg2GpMZTXdkHAPAu3q8KdCrOUOAtfX8oi+lt/t3oSK75RQwNcnNWmi 0WMbAcNbSWsULGhNKuFnlY9qUdmDos96osmu6FrabLU4nqjUWOozn1iGDaPm5ULg HwX3+KkzCf0X+J6O3M7B3hRJjHEis9H9hpZ09RqFq6GbtlEdwMDYDuTur0MZNTAR BklT4g== Received: from mail-qk1-f200.google.com (mail-qk1-f200.google.com [209.85.222.200]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4aqphfacgf-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Sun, 30 Nov 2025 12:36:23 +0000 (GMT) Received: by mail-qk1-f200.google.com with SMTP id af79cd13be357-8b2e9b2608dso575982085a.3 for ; Sun, 30 Nov 2025 04:36:22 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1764506182; x=1765110982; 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=dARi/iKdT6YHQNj2xjIFbOozMfb2GveeEYQmMb8Fa4k=; b=Jqv8g0P1Q6YgaLN/j/6pMp00i1A0sjAqYsaNU1aoCKJPRq40f+1h3JZlMZ18lyB/ls CWZbHUs1+RPlWjBUEFh1HqdJTqSBdDGIQOz7O6vr+cVga6ximiBTPujI+kVbogf2U0yS yBEcZU5bozWtNeyP8Le2RehQZp3EYsPAEmtHwFLvl/+jDPrs/ESmacocW2LG+vlyVMlG hrnDpymcMygxuqoaTlpIUT/+9nqN+sA4TRk1JAWAYAh7K+PdOS/J/psSV7Vmn2ViyFbN poC2DBMh/O8pmuC3b797cYulx9yA73/iOkFBBYO0Zg6I29AP3HSKlgnjc2QUu5t7jvSZ 9KYw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1764506182; x=1765110982; 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=dARi/iKdT6YHQNj2xjIFbOozMfb2GveeEYQmMb8Fa4k=; b=uiCHg2pidtJNEn2pva4QoODMpZA8Hy3/fJQwoYDWakyhJ2/boF0YpLw5UxIIbGMJVc menrb8sAQsHCnQ6OtagoV52/eefCtX2yGdeEYspw3tTzDimgQNoOgLWQLGYPftKUw8Kd q2QY3e1LLmBjtVITxwEMe1RiJtanjU6fNGihkqxYqGuk5UQuEifHvEaVI1YLM7urfeai AQVqNFsFWAaJqCiTB4QCPjrwFycsP+X7km7yDnSLXQjkXCE9XD+k/1flcQMhvI3XdAgT byb9TR2JJkcEiWMAPecTe/roUdqba4aetuRieCeTpobtRlxw5c6UflGzAEUGsnX9ZEej VnaQ== X-Forwarded-Encrypted: i=1; AJvYcCVws/7nn4MMc7i3VaL+Mhx1rIys97jFjrWXeWlBvho5xjGvIx2rCB8e1LunJcIHK9tIezB7FdHSt4NJg70=@vger.kernel.org X-Gm-Message-State: AOJu0YzE/LrIVeGwrd9oBKKi41OICClFuLLKmI4WaFXzA35RWZ3DrOjH hXG87VWlTJR+544fZiTI0QLq1pUyOIAUGtQr4kwwwMhOFBZ3EtkBiyzQ14+dSF50rkhdIG6Vxhu 7dTuXf21BvvV63ee7pA5CONEtEOZQh4kegrPaSrlF9O5WLtzHtGD5OYbQj/g9ktTmlbQ= X-Gm-Gg: ASbGncthcB6KpU9mh0rdK5GTk6+AN31PeBVAXPlBCP0OrL1wV809JisSu47gGLS5SzB NcaR0T5iqdKrknOxJ2Uv73QYEoAA/H63vo7d/HEet13hsHcwiUpUchBNz62AIQF1Ld5t41ryYdw Ij7dS0UqRYYGjKtsqrA6nwFIVZwIQyLwNtoAveqWHFyHZpcQBCojiurMWJlMyq/pveuFCrabMe0 C1ugdYjbfpU39409hc/xoRIChAmNBbGIwHqW6a/x7H4qtW50B1xpmhy2Ojum85G3uv2wDd2Mm9H wUe0jVjKXz0KX2UK5wNtXiE+YQBm9RRLoyD2BhsvTcuGgVQO9YTGkIfcULc770g3cAcsAj8oliw AGc9lidUo+KZohNTUARE+eEV6X15/qj3LEg== X-Received: by 2002:a05:620a:45a3:b0:8a9:b1bb:fcb1 with SMTP id af79cd13be357-8b4ebd54520mr2850376785a.15.1764506182054; Sun, 30 Nov 2025 04:36:22 -0800 (PST) X-Google-Smtp-Source: AGHT+IGEgZrd7ydwt7marmpb1vwhLSYebkPk/ReUbPpzq6DcU/1phgO3nPD29R+bvHO+ffA7kL4GXA== X-Received: by 2002:a05:620a:45a3:b0:8a9:b1bb:fcb1 with SMTP id af79cd13be357-8b4ebd54520mr2850371785a.15.1764506181462; Sun, 30 Nov 2025 04:36:21 -0800 (PST) Received: from [127.0.1.1] ([178.197.195.159]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-b76f51c6c12sm920506666b.29.2025.11.30.04.36.19 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 30 Nov 2025 04:36:20 -0800 (PST) From: Krzysztof Kozlowski Date: Sun, 30 Nov 2025 13:36:10 +0100 Subject: [PATCH 3/4] rpmsg: Constify buffer passed to send API 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: <20251130-rpmsg-send-const-v1-3-cb11c7e0a024@oss.qualcomm.com> References: <20251130-rpmsg-send-const-v1-0-cb11c7e0a024@oss.qualcomm.com> In-Reply-To: <20251130-rpmsg-send-const-v1-0-cb11c7e0a024@oss.qualcomm.com> To: Bjorn Andersson , Mathieu Poirier , Matthias Brugger , AngeloGioacchino Del Regno , Srinivas Kandagatla , Konrad Dybcio , Liam Girdwood , Mark Brown , Jaroslav Kysela , Takashi Iwai Cc: linux-remoteproc@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-arm-msm@vger.kernel.org, linux-sound@vger.kernel.org, Krzysztof Kozlowski X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=openpgp-sha256; l=13550; i=krzysztof.kozlowski@oss.qualcomm.com; h=from:subject:message-id; bh=iTRd+rIeM0i/pGucaXFPZ9D6qmjfk35erqlIaeNAJhM=; b=owEBbQKS/ZANAwAKAcE3ZuaGi4PXAcsmYgBpLDo8N/dNhNeRqEnlC/v3jVdSTzvhCqXPENCaD Us6fAJ2xoKJAjMEAAEKAB0WIQTd0mIoPREbIztuuKjBN2bmhouD1wUCaSw6PAAKCRDBN2bmhouD 11ZREACBOq1dY/GNaTLrAA6ziQ59OT938SUPowxfvxNxZPPOS+rbuOswQZxkPHF1t8R+HMt3WkT +fihX5v7rbFzhKUkWtOqVWYY8UHoIUAdx2/MGhcEqwIQn4PCeT43Od+58rUPCp6eLT27r/MNs0b +0pGZdsCPsZ5xL1f4TpQTuUQx0le+azaUpnLvtzEdohuudxoeT6Bnbx6dzaFqIUfbYdMb1m1UPM 5YEbzBXgnZGPBT0uywIOb65O5AQcXPcJiEgOq1TkrmPDoU4gDnaVdQ3nr3THh/AQC7W2JoZm/5V WqeHpeLgMWOpZbhYZR4GHDHg87kPmpzDagDwrSaiggButugls5iHKSqE9I2c3YpDINjh0Vt2dVn KT9vu56ovP4oIptRFT2LZEYcUa7I5gWhYnIgk/KnjnDxC9o8caA+5N9Lel5SqrNckoxB5PJvjj8 dauNBbNguJ7ZnsGvKSyTYaA0XswWCeQMUJXLuI7/RfaO57n8guKey38itk14dj1e/CnEbXpGotB DyUxk4qCAjivqPt+/OvPaLqeTYY1Nbmoc8xP1juSDnuO+tQCUwn7IlwKbueRZCCoYeD+bs0FqqX QlP00cpzev5ABCUXeX69X9W9ZgUSrFzlti83zMUlBkFkNIhTWumqlwU502e/6pqtQLXOL3Lm+Aj iuE1Ulj8f2t94IQ== X-Developer-Key: i=krzysztof.kozlowski@oss.qualcomm.com; a=openpgp; fpr=9BD07E0E0C51F8D59677B7541B93437D3B41629B X-Proofpoint-ORIG-GUID: 0vyke8GHoZTVphFiVXu4qrMlJ6zdKCFQ X-Authority-Analysis: v=2.4 cv=FvwIPmrq c=1 sm=1 tr=0 ts=692c3a47 cx=c_pps a=hnmNkyzTK/kJ09Xio7VxxA==:117 a=FPK7cjBCgYbqzSTDLBmM0Q==:17 a=IkcTkHD0fZMA:10 a=6UeiqGixMTsA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=EUspDBNiAAAA:8 a=jKNRGAx6QiKp0B1Iy_QA:9 a=QEXdDO2ut3YA:10 a=PEH46H7Ffwr30OY-TuGO:22 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUxMTMwMDEwOCBTYWx0ZWRfX0XWQ4qcdBj/e lqLHvGZ0+wIf54aZcmlhLBo6fqD8MKlgVL1vVyouMjXFSiIJKAolaPz4JjUdXDSYPJSiZANfDii ArAmheAF88KggNin/DSGqUyZ6MAA5cWjKBD9cxVOLQYnSO+X+5e82oTOCdM7gFzc0eXDuauuOD4 VhPW9lJqh02iZD5vLKlOy2d+Og3z9eH+VxVOfBIbiWBQqlX9pM/MU6qgLYpgt1LscNb2ehU6iCa wCLZ/j/7IpRFBDIk/5LfXUcQYutExkhl3J4dFIaAkUu0dwkPsuBMHox3IsRZmdtMTR4jpgBHjpf uY8Fil70XbO2l9LwuI0FrFoCLdrJI0SqBsXofSk5KvHu0noAxbqtVLs9LOgv97MsCKGwovuB3gN IyFVpFuZrY8Yny35f1ckHYKw4ELKHw== X-Proofpoint-GUID: 0vyke8GHoZTVphFiVXu4qrMlJ6zdKCFQ X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.9,FMLib:17.12.100.49 definitions=2025-11-28_08,2025-11-27_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 adultscore=0 bulkscore=0 phishscore=0 lowpriorityscore=0 impostorscore=0 clxscore=1015 suspectscore=0 malwarescore=0 spamscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2510240001 definitions=main-2511300108 The rpmsg_send(), rpmsg_sendto() and other variants of sending interfaces should only send the passed data, without modifying its contents, so mark pointer 'data' as pointer to const. All users of this interface already follow this approach, so only the function declarations have to be updated. Signed-off-by: Krzysztof Kozlowski Acked-by: Mathieu Poirier --- Patch necessary for the further patches, please keep with the rest. send const --- drivers/rpmsg/mtk_rpmsg.c | 4 ++-- drivers/rpmsg/qcom_glink_native.c | 13 ++++++++----- drivers/rpmsg/qcom_smd.c | 10 ++++++---- drivers/rpmsg/rpmsg_core.c | 8 ++++---- drivers/rpmsg/rpmsg_internal.h | 8 ++++---- drivers/rpmsg/virtio_rpmsg_bus.c | 24 +++++++++++++----------- include/linux/rpmsg.h | 17 +++++++++-------- 7 files changed, 46 insertions(+), 38 deletions(-) diff --git a/drivers/rpmsg/mtk_rpmsg.c b/drivers/rpmsg/mtk_rpmsg.c index d1213c33da20..4398f0bec155 100644 --- a/drivers/rpmsg/mtk_rpmsg.c +++ b/drivers/rpmsg/mtk_rpmsg.c @@ -135,7 +135,7 @@ static void mtk_rpmsg_destroy_ept(struct rpmsg_endpoint= *ept) kref_put(&ept->refcount, __mtk_ept_release); } =20 -static int mtk_rpmsg_send(struct rpmsg_endpoint *ept, void *data, int len) +static int mtk_rpmsg_send(struct rpmsg_endpoint *ept, const void *data, in= t len) { struct mtk_rpmsg_rproc_subdev *mtk_subdev =3D to_mtk_rpmsg_endpoint(ept)->mtk_subdev; @@ -144,7 +144,7 @@ static int mtk_rpmsg_send(struct rpmsg_endpoint *ept, v= oid *data, int len) len, 0); } =20 -static int mtk_rpmsg_trysend(struct rpmsg_endpoint *ept, void *data, int l= en) +static int mtk_rpmsg_trysend(struct rpmsg_endpoint *ept, const void *data,= int len) { struct mtk_rpmsg_rproc_subdev *mtk_subdev =3D to_mtk_rpmsg_endpoint(ept)->mtk_subdev; diff --git a/drivers/rpmsg/qcom_glink_native.c b/drivers/rpmsg/qcom_glink_n= ative.c index 820a6ca5b1d7..db696e1c8ca3 100644 --- a/drivers/rpmsg/qcom_glink_native.c +++ b/drivers/rpmsg/qcom_glink_native.c @@ -1461,7 +1461,7 @@ static int qcom_glink_request_intent(struct qcom_glin= k *glink, } =20 static int __qcom_glink_send(struct glink_channel *channel, - void *data, int len, bool wait) + const void *data, int len, bool wait) { struct qcom_glink *glink =3D channel->glink; struct glink_core_rx_intent *intent =3D NULL; @@ -1540,28 +1540,31 @@ static int __qcom_glink_send(struct glink_channel *= channel, return 0; } =20 -static int qcom_glink_send(struct rpmsg_endpoint *ept, void *data, int len) +static int qcom_glink_send(struct rpmsg_endpoint *ept, const void *data, i= nt len) { struct glink_channel *channel =3D to_glink_channel(ept); =20 return __qcom_glink_send(channel, data, len, true); } =20 -static int qcom_glink_trysend(struct rpmsg_endpoint *ept, void *data, int = len) +static int qcom_glink_trysend(struct rpmsg_endpoint *ept, const void *data, + int len) { struct glink_channel *channel =3D to_glink_channel(ept); =20 return __qcom_glink_send(channel, data, len, false); } =20 -static int qcom_glink_sendto(struct rpmsg_endpoint *ept, void *data, int l= en, u32 dst) +static int qcom_glink_sendto(struct rpmsg_endpoint *ept, const void *data, + int len, u32 dst) { struct glink_channel *channel =3D to_glink_channel(ept); =20 return __qcom_glink_send(channel, data, len, true); } =20 -static int qcom_glink_trysendto(struct rpmsg_endpoint *ept, void *data, in= t len, u32 dst) +static int qcom_glink_trysendto(struct rpmsg_endpoint *ept, const void *da= ta, + int len, u32 dst) { struct glink_channel *channel =3D to_glink_channel(ept); =20 diff --git a/drivers/rpmsg/qcom_smd.c b/drivers/rpmsg/qcom_smd.c index 42594f5ee438..1c6ae8c22100 100644 --- a/drivers/rpmsg/qcom_smd.c +++ b/drivers/rpmsg/qcom_smd.c @@ -960,28 +960,30 @@ static void qcom_smd_destroy_ept(struct rpmsg_endpoin= t *ept) kref_put(&ept->refcount, __ept_release); } =20 -static int qcom_smd_send(struct rpmsg_endpoint *ept, void *data, int len) +static int qcom_smd_send(struct rpmsg_endpoint *ept, const void *data, int= len) { struct qcom_smd_endpoint *qsept =3D to_smd_endpoint(ept); =20 return __qcom_smd_send(qsept->qsch, data, len, true); } =20 -static int qcom_smd_trysend(struct rpmsg_endpoint *ept, void *data, int le= n) +static int qcom_smd_trysend(struct rpmsg_endpoint *ept, const void *data, = int len) { struct qcom_smd_endpoint *qsept =3D to_smd_endpoint(ept); =20 return __qcom_smd_send(qsept->qsch, data, len, false); } =20 -static int qcom_smd_sendto(struct rpmsg_endpoint *ept, void *data, int len= , u32 dst) +static int qcom_smd_sendto(struct rpmsg_endpoint *ept, const void *data, i= nt len, + u32 dst) { struct qcom_smd_endpoint *qsept =3D to_smd_endpoint(ept); =20 return __qcom_smd_send(qsept->qsch, data, len, true); } =20 -static int qcom_smd_trysendto(struct rpmsg_endpoint *ept, void *data, int = len, u32 dst) +static int qcom_smd_trysendto(struct rpmsg_endpoint *ept, const void *data, + int len, u32 dst) { struct qcom_smd_endpoint *qsept =3D to_smd_endpoint(ept); =20 diff --git a/drivers/rpmsg/rpmsg_core.c b/drivers/rpmsg/rpmsg_core.c index 5d661681a9b6..cac8e5227579 100644 --- a/drivers/rpmsg/rpmsg_core.c +++ b/drivers/rpmsg/rpmsg_core.c @@ -153,7 +153,7 @@ EXPORT_SYMBOL(rpmsg_destroy_ept); * * Return: 0 on success and an appropriate error value on failure. */ -int rpmsg_send(struct rpmsg_endpoint *ept, void *data, int len) +int rpmsg_send(struct rpmsg_endpoint *ept, const void *data, int len) { if (WARN_ON(!ept)) return -EINVAL; @@ -182,7 +182,7 @@ EXPORT_SYMBOL(rpmsg_send); * * Return: 0 on success and an appropriate error value on failure. */ -int rpmsg_sendto(struct rpmsg_endpoint *ept, void *data, int len, u32 dst) +int rpmsg_sendto(struct rpmsg_endpoint *ept, const void *data, int len, u3= 2 dst) { if (WARN_ON(!ept)) return -EINVAL; @@ -210,7 +210,7 @@ EXPORT_SYMBOL(rpmsg_sendto); * * Return: 0 on success and an appropriate error value on failure. */ -int rpmsg_trysend(struct rpmsg_endpoint *ept, void *data, int len) +int rpmsg_trysend(struct rpmsg_endpoint *ept, const void *data, int len) { if (WARN_ON(!ept)) return -EINVAL; @@ -238,7 +238,7 @@ EXPORT_SYMBOL(rpmsg_trysend); * * Return: 0 on success and an appropriate error value on failure. */ -int rpmsg_trysendto(struct rpmsg_endpoint *ept, void *data, int len, u32 d= st) +int rpmsg_trysendto(struct rpmsg_endpoint *ept, const void *data, int len,= u32 dst) { if (WARN_ON(!ept)) return -EINVAL; diff --git a/drivers/rpmsg/rpmsg_internal.h b/drivers/rpmsg/rpmsg_internal.h index 397e4926bd02..a8b7065fd165 100644 --- a/drivers/rpmsg/rpmsg_internal.h +++ b/drivers/rpmsg/rpmsg_internal.h @@ -63,11 +63,11 @@ struct rpmsg_device_ops { struct rpmsg_endpoint_ops { void (*destroy_ept)(struct rpmsg_endpoint *ept); =20 - int (*send)(struct rpmsg_endpoint *ept, void *data, int len); - int (*sendto)(struct rpmsg_endpoint *ept, void *data, int len, u32 dst); + int (*send)(struct rpmsg_endpoint *ept, const void *data, int len); + int (*sendto)(struct rpmsg_endpoint *ept, const void *data, int len, u32 = dst); =20 - int (*trysend)(struct rpmsg_endpoint *ept, void *data, int len); - int (*trysendto)(struct rpmsg_endpoint *ept, void *data, int len, u32 dst= ); + int (*trysend)(struct rpmsg_endpoint *ept, const void *data, int len); + int (*trysendto)(struct rpmsg_endpoint *ept, const void *data, int len, u= 32 dst); __poll_t (*poll)(struct rpmsg_endpoint *ept, struct file *filp, poll_table *wait); int (*set_flow_control)(struct rpmsg_endpoint *ept, bool pause, u32 dst); diff --git a/drivers/rpmsg/virtio_rpmsg_bus.c b/drivers/rpmsg/virtio_rpmsg_= bus.c index 484890b4a6a7..6559de61da6d 100644 --- a/drivers/rpmsg/virtio_rpmsg_bus.c +++ b/drivers/rpmsg/virtio_rpmsg_bus.c @@ -138,11 +138,12 @@ struct virtio_rpmsg_channel { #define RPMSG_RESERVED_ADDRESSES (1024) =20 static void virtio_rpmsg_destroy_ept(struct rpmsg_endpoint *ept); -static int virtio_rpmsg_send(struct rpmsg_endpoint *ept, void *data, int l= en); -static int virtio_rpmsg_sendto(struct rpmsg_endpoint *ept, void *data, int= len, - u32 dst); -static int virtio_rpmsg_trysend(struct rpmsg_endpoint *ept, void *data, in= t len); -static int virtio_rpmsg_trysendto(struct rpmsg_endpoint *ept, void *data, +static int virtio_rpmsg_send(struct rpmsg_endpoint *ept, const void *data,= int len); +static int virtio_rpmsg_sendto(struct rpmsg_endpoint *ept, const void *dat= a, + int len, u32 dst); +static int virtio_rpmsg_trysend(struct rpmsg_endpoint *ept, const void *da= ta, + int len); +static int virtio_rpmsg_trysendto(struct rpmsg_endpoint *ept, const void *= data, int len, u32 dst); static ssize_t virtio_rpmsg_get_mtu(struct rpmsg_endpoint *ept); static struct rpmsg_device *__rpmsg_create_channel(struct virtproc_info *v= rp, @@ -546,7 +547,7 @@ static void rpmsg_downref_sleepers(struct virtproc_info= *vrp) */ static int rpmsg_send_offchannel_raw(struct rpmsg_device *rpdev, u32 src, u32 dst, - void *data, int len, bool wait) + const void *data, int len, bool wait) { struct virtio_rpmsg_channel *vch =3D to_virtio_rpmsg_channel(rpdev); struct virtproc_info *vrp =3D vch->vrp; @@ -642,7 +643,7 @@ static int rpmsg_send_offchannel_raw(struct rpmsg_devic= e *rpdev, return err; } =20 -static int virtio_rpmsg_send(struct rpmsg_endpoint *ept, void *data, int l= en) +static int virtio_rpmsg_send(struct rpmsg_endpoint *ept, const void *data,= int len) { struct rpmsg_device *rpdev =3D ept->rpdev; u32 src =3D ept->addr, dst =3D rpdev->dst; @@ -650,8 +651,8 @@ static int virtio_rpmsg_send(struct rpmsg_endpoint *ept= , void *data, int len) return rpmsg_send_offchannel_raw(rpdev, src, dst, data, len, true); } =20 -static int virtio_rpmsg_sendto(struct rpmsg_endpoint *ept, void *data, int= len, - u32 dst) +static int virtio_rpmsg_sendto(struct rpmsg_endpoint *ept, const void *dat= a, + int len, u32 dst) { struct rpmsg_device *rpdev =3D ept->rpdev; u32 src =3D ept->addr; @@ -659,7 +660,8 @@ static int virtio_rpmsg_sendto(struct rpmsg_endpoint *e= pt, void *data, int len, return rpmsg_send_offchannel_raw(rpdev, src, dst, data, len, true); } =20 -static int virtio_rpmsg_trysend(struct rpmsg_endpoint *ept, void *data, in= t len) +static int virtio_rpmsg_trysend(struct rpmsg_endpoint *ept, const void *da= ta, + int len) { struct rpmsg_device *rpdev =3D ept->rpdev; u32 src =3D ept->addr, dst =3D rpdev->dst; @@ -667,7 +669,7 @@ static int virtio_rpmsg_trysend(struct rpmsg_endpoint *= ept, void *data, int len) return rpmsg_send_offchannel_raw(rpdev, src, dst, data, len, false); } =20 -static int virtio_rpmsg_trysendto(struct rpmsg_endpoint *ept, void *data, +static int virtio_rpmsg_trysendto(struct rpmsg_endpoint *ept, const void *= data, int len, u32 dst) { struct rpmsg_device *rpdev =3D ept->rpdev; diff --git a/include/linux/rpmsg.h b/include/linux/rpmsg.h index fb7ab9165645..83266ce14642 100644 --- a/include/linux/rpmsg.h +++ b/include/linux/rpmsg.h @@ -182,11 +182,11 @@ struct rpmsg_endpoint *rpmsg_create_ept(struct rpmsg_= device *, rpmsg_rx_cb_t cb, void *priv, struct rpmsg_channel_info chinfo); =20 -int rpmsg_send(struct rpmsg_endpoint *ept, void *data, int len); -int rpmsg_sendto(struct rpmsg_endpoint *ept, void *data, int len, u32 dst); +int rpmsg_send(struct rpmsg_endpoint *ept, const void *data, int len); +int rpmsg_sendto(struct rpmsg_endpoint *ept, const void *data, int len, u3= 2 dst); =20 -int rpmsg_trysend(struct rpmsg_endpoint *ept, void *data, int len); -int rpmsg_trysendto(struct rpmsg_endpoint *ept, void *data, int len, u32 d= st); +int rpmsg_trysend(struct rpmsg_endpoint *ept, const void *data, int len); +int rpmsg_trysendto(struct rpmsg_endpoint *ept, const void *data, int len,= u32 dst); =20 __poll_t rpmsg_poll(struct rpmsg_endpoint *ept, struct file *filp, poll_table *wait); @@ -249,7 +249,7 @@ static inline struct rpmsg_endpoint *rpmsg_create_ept(s= truct rpmsg_device *rpdev return NULL; } =20 -static inline int rpmsg_send(struct rpmsg_endpoint *ept, void *data, int l= en) +static inline int rpmsg_send(struct rpmsg_endpoint *ept, const void *data,= int len) { /* This shouldn't be possible */ WARN_ON(1); @@ -257,7 +257,7 @@ static inline int rpmsg_send(struct rpmsg_endpoint *ept= , void *data, int len) return -ENXIO; } =20 -static inline int rpmsg_sendto(struct rpmsg_endpoint *ept, void *data, int= len, +static inline int rpmsg_sendto(struct rpmsg_endpoint *ept, const void *dat= a, int len, u32 dst) { /* This shouldn't be possible */ @@ -267,7 +267,8 @@ static inline int rpmsg_sendto(struct rpmsg_endpoint *e= pt, void *data, int len, =20 } =20 -static inline int rpmsg_trysend(struct rpmsg_endpoint *ept, void *data, in= t len) +static inline int rpmsg_trysend(struct rpmsg_endpoint *ept, const void *da= ta, + int len) { /* This shouldn't be possible */ WARN_ON(1); @@ -275,7 +276,7 @@ static inline int rpmsg_trysend(struct rpmsg_endpoint *= ept, void *data, int len) return -ENXIO; } =20 -static inline int rpmsg_trysendto(struct rpmsg_endpoint *ept, void *data, +static inline int rpmsg_trysendto(struct rpmsg_endpoint *ept, const void *= data, int len, u32 dst) { /* This shouldn't be possible */ --=20 2.48.1 From nobody Mon Dec 1 22:05:08 2025 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 BC6C21A073F for ; Sun, 30 Nov 2025 12:36:25 +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=1764506187; cv=none; b=B8JFzI4o+DJSRyZqP1Op7dtyanxuiY8TlRN3451VPEKgWqtbD8uVBKKmP1YoVVY+KZli/LHe5FfSJjRVhyETAGNuwjv4bFX1xZKNPqKV9VfoqauSzIjyBovNgIJ3NV8xtcxFAsxwphgtrREPBn25FyTYr+u+C06N5skPJ3FygiQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764506187; c=relaxed/simple; bh=9gu7wWK680Y+R77IwqaMtBNCQ9pWc92nao0jPv5FZKU=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=YIBPGAeDiAQYjgMak2JjpseOLoxzBbtsFvh6IiwFoP5C4mXLy5A/FTmTIGcwmWaL0gXIwSEMx1c3dsICIt0Ra+3M8dNkeS0ntz43RLP/pLisGWTay23VQlIBO/iN1sf8N0v+nSpZKXPyDgj2OpUAmzE0hi33CwODixV5OV/rLu4= 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=Psd4w64s; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=jTQUSjm9; 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="Psd4w64s"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="jTQUSjm9" 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 5AU8h4EG1049931 for ; Sun, 30 Nov 2025 12:36:25 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= R6m7eEIarrZvPjLUe/bOpRLI8mtRBQO0vBtG1dlMFXU=; b=Psd4w64sy2iM4eCI tk6IzNgPxsp0zPjf4ZUTwUfnNWHLeTFuxhK/+qfpmUXarSJ0MAAD5AVhXfqVT9b2 U+AHwxeEm329DrK4GI1jkIr7MUdaOCiSxbFYuiPwhHDWL1E0oIN9NPlX5WfeQmP5 lLR5gkp+KywEXuZn50miAxq/ZyBUKfGfhqYKF3lit8j2+lgPQ09ZwrxjcRpOhtzh eO/BR5F+hohY1QCKJNFGxWTHKm6SO3L6FDILpOhznRYL7ReI+nN5i4Ym2353BPmW Jc+4UjIYbMQG6Qd4C1iQwF3YYebL/h82eJGvfBl1Jq33S4WDx/AqIEJ3wNFFcQ21 +ckBdw== Received: from mail-qk1-f197.google.com (mail-qk1-f197.google.com [209.85.222.197]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4aqskf241f-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Sun, 30 Nov 2025 12:36:24 +0000 (GMT) Received: by mail-qk1-f197.google.com with SMTP id af79cd13be357-8b2e4b78e35so586633885a.0 for ; Sun, 30 Nov 2025 04:36:24 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1764506184; x=1765110984; 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=R6m7eEIarrZvPjLUe/bOpRLI8mtRBQO0vBtG1dlMFXU=; b=jTQUSjm9DgED78Og3MCeP8t40ZqZ/LbV8+RJjG3VLBMO2ikw3hBTSjHkKvE2j1wnp4 ISHhNa0EJgrYtvHfwZ96Bj+3MW8HUnFp2+OYZsc5fAYJ6K09jYoqWo9tPxwZj0GEkRb9 uJLDGqL9T/axtYGfJkfdmmO6fKzPYV0vxrCYWokmPb9Vr2aUCGyrxPgPFJbHjJ0K0s7h 5m2iVxS0O6n/JbL+3SBozE9nJsxfmep+iGxiJpXb6DeBUAFz0EDswkc26IjGHw5bAZhm 8C5ZLYSiGa0723OWfbOYWqEJVAwpyJ2EIDMYXxFHRi6qIbmY07wXjpazJ9HsloWCtBu1 G/0w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1764506184; x=1765110984; 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=R6m7eEIarrZvPjLUe/bOpRLI8mtRBQO0vBtG1dlMFXU=; b=QBmoGA92bg1EW23JxKVCylTSMJuRuw0Cxqlm9YytT3kNs+/YCuYZS2x0Bs5y7yuLhB DZ+CjP/KMMr/kFeiclkhXaKTEPiuBSn/jrpAG3zKqHisbTQh3acLQj8YRoBPQMbHbMVh 8PeOoAjMH60DqEpfhWF/CUxusLMmiL01pcVeV1S+CXR6HBtDtZuzbW7OPwPyYn/+yvRR tyob7CcNAQo5bBWa5EZ7X2CvFpgJrDD+3atvLpp2BNNn2exVW6e7IBdTOojPwCPrdKp5 QACQ5zfQGp7S8fgneDNvlKtgsT/WYwcNYVXp/il6BE+Soz2xqlQieJucXIH2016Jf1Yz kXLQ== X-Forwarded-Encrypted: i=1; AJvYcCU31JUJ4M8/A3r1SJC7NtG9RE9zxCIvMAcMvUUoO3wbdrjK6s2r0IPDae1uztmtalFgVoOZ4aHntGetkV4=@vger.kernel.org X-Gm-Message-State: AOJu0Yy6sgZ2yV+wXgchWLC+lEW8Ky5r0bjzav665gDdWnwbgwTuOuzj 2ncVh0JwSHfNHGp/yUmfGZ877rcHEh24VNrVeCCY5g2KwEbHz5blg0CxDN7Tso6yDXxJkVAeoT6 VUrGbFslpZKTADhDr8YcCUP2nHr3+2II/DZ6N5mVJeA1nsfql5vrdrSnd4h9Jr89yncs= X-Gm-Gg: ASbGncvY6dZR1NNYLPwuu8xHt8eajn/1HAkwUU0dCBBPIun0Iv3I2jl08RwkFhNxbUH pFDUXl2kM3uhoVTekl35k5HWVaqxqPpGJTGpiRA8TJLOIXq5172sYqsU6mLt2IRwT4hy3dEIhM4 ER/SKzx+a5KCGQvqnTuMBRJfCjTqpQluxSMbl4AArOaeqhnN1SlMxyGwNigX964CVj2R+EnQ0YA YeI69vF59q23vQhVdjHFfoY1MHw0PotUVFYIY7y7+HDIXPBBq5dkv45/Vse7PdoK8UK0OVv3Qar 8o+UKmjIrf1JhMZrzT+rQsi0UXqcmwjFaaJ9Ubv+QCmOJJ3dQ6KquwrV5qVVuxBLdqnNgM2wBVT EXMW10LmgJFlRsGDStY05BIvWkjKZ5mz+Og== X-Received: by 2002:a05:620a:4113:b0:8a1:426a:2cca with SMTP id af79cd13be357-8b4ebdb059fmr3114732585a.41.1764506183734; Sun, 30 Nov 2025 04:36:23 -0800 (PST) X-Google-Smtp-Source: AGHT+IGva41J52XjZOZU7QbLozxUApp8fRFBP8lWVjOor8lQjogi2oWu9rXWmJiA9F+qyVfN4igasQ== X-Received: by 2002:a05:620a:4113:b0:8a1:426a:2cca with SMTP id af79cd13be357-8b4ebdb059fmr3114729585a.41.1764506183284; Sun, 30 Nov 2025 04:36:23 -0800 (PST) Received: from [127.0.1.1] ([178.197.195.159]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-b76f51c6c12sm920506666b.29.2025.11.30.04.36.21 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 30 Nov 2025 04:36:22 -0800 (PST) From: Krzysztof Kozlowski Date: Sun, 30 Nov 2025 13:36:11 +0100 Subject: [PATCH 4/4] ASoC: qcom:: Constify GPR packet being send over GPR interface 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: <20251130-rpmsg-send-const-v1-4-cb11c7e0a024@oss.qualcomm.com> References: <20251130-rpmsg-send-const-v1-0-cb11c7e0a024@oss.qualcomm.com> In-Reply-To: <20251130-rpmsg-send-const-v1-0-cb11c7e0a024@oss.qualcomm.com> To: Bjorn Andersson , Mathieu Poirier , Matthias Brugger , AngeloGioacchino Del Regno , Srinivas Kandagatla , Konrad Dybcio , Liam Girdwood , Mark Brown , Jaroslav Kysela , Takashi Iwai Cc: linux-remoteproc@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-arm-msm@vger.kernel.org, linux-sound@vger.kernel.org, Krzysztof Kozlowski X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=openpgp-sha256; l=5742; i=krzysztof.kozlowski@oss.qualcomm.com; h=from:subject:message-id; bh=9gu7wWK680Y+R77IwqaMtBNCQ9pWc92nao0jPv5FZKU=; b=owEBbQKS/ZANAwAKAcE3ZuaGi4PXAcsmYgBpLDo9F3Cb8NTt5YnUJG7vYG29zfGYJNTxXFDJt 8YjFrKuC3WJAjMEAAEKAB0WIQTd0mIoPREbIztuuKjBN2bmhouD1wUCaSw6PQAKCRDBN2bmhouD 10uYD/wL7QRRrhU/H4mmKeOeLk03AFvbCsXoTZfBu3jKO/5Vj4w036GolvoqdUaOp4X6KW4Og9+ pUtWYb2x2vIX0vXbEqd84RxA6riHyU8uHPxSNqZOefGwtyPcRPL46wGIWL46UFYocJLELTOsD/p 0eHJ5I10yZhUIA7MzVpPOf8kd2kSWj9UMcIpuhRQvAoMWrWHheaqOQT+ROjlcaaU/1i2rbevMGV pcxdKpD7yMwSamCiS5u/cfw9vXZd3DhL7IwoXkwIf6T4J0S6UIKu3vrci5LUgk/bBaAWZqOLySY b19+66fFjdfJKD834yt4O/2/9bEYnRm00QUmDslv7+8IB0aOgZB82Ii9JxkNr+AHS4VCUN+ldGp VmsGUvWXS8Uu82zG90DZCMUItjg++EcafrVa7lhtCm5tRt5L9eUR61FiEfWRU+ol1u0ueqFgEhw psCiNk18Q1s254rhBR7woTjjGBiNih5HVh9yE/zDEAf6IKpu7be0bzO2kPZtVLtyHvKEB+Vdmt3 LhStPsZf8m0efgknijdb0PwjTbF9Uog2BTkdWwVDY5f2PnM7AEsy39+JKoX/+KKnTrTsleVGpyY /zbSdC34+6MGgi//8h91XQ4i2iAP6LivYk9Zz0KQFbx4tBJ1qxQQ4wiCRrRL3/PZ+i1AwxFaqKV MRyrzjWyfv2hnZw== X-Developer-Key: i=krzysztof.kozlowski@oss.qualcomm.com; a=openpgp; fpr=9BD07E0E0C51F8D59677B7541B93437D3B41629B X-Authority-Analysis: v=2.4 cv=X7Nf6WTe c=1 sm=1 tr=0 ts=692c3a48 cx=c_pps a=50t2pK5VMbmlHzFWWp8p/g==:117 a=FPK7cjBCgYbqzSTDLBmM0Q==:17 a=IkcTkHD0fZMA:10 a=6UeiqGixMTsA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=EUspDBNiAAAA:8 a=EI0PQj488oBMEGdooaEA:9 a=QEXdDO2ut3YA:10 a=IoWCM6iH3mJn3m4BftBB:22 X-Proofpoint-GUID: kXVZ-OS6uXk9aOdDE-DfH5szFHio-JHc X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUxMTMwMDEwOCBTYWx0ZWRfX8isbdHO4OkKL 3ZvnJD22CN3/oVOENeW/xPLVIKMA7xsGT76qs63GQCnwnG7J39NQu3Kv9np/xRSt5hivSFYJGdb ygR+wGr4LhUfQNA5E3fnJZH1lXNsBi78BHecL3wFY99MjSoK73/HYDwbz6/qXXRFzwY4H52D8u2 uE17YSMyMNKiuBxne4Si5fCAvfLSv8Ny2hnemx+k8oGD8xr6f8OdxpGyoX4TdQT4iaLhq1TnHXl UkoPmd6NdDe3009QFHZiwAMJAhQP5jbKtoVM+1zYmvz5B24iAWDhU9dC1kXCJj9S0SMq83YGaEo 1cmihCKWSgyyl4CkKU9qyxhuwSfEEqK+nOryrXuVndKKXiJiRfh0ayxK9STou22xjclL6Z/Lhqn ItyOP/9VFD7kCSf2KUuogTMGAOe45A== X-Proofpoint-ORIG-GUID: kXVZ-OS6uXk9aOdDE-DfH5szFHio-JHc X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.9,FMLib:17.12.100.49 definitions=2025-11-28_08,2025-11-27_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 spamscore=0 adultscore=0 bulkscore=0 phishscore=0 priorityscore=1501 malwarescore=0 lowpriorityscore=0 impostorscore=0 clxscore=1015 suspectscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2510240001 definitions=main-2511300108 gpr_send_pkt() and pkt_router_send_svc_pkt() only send the GPR packet they receive, without any need to actually modify it, so mark the pointer to GPR packet as pointer to const for code safety and code self-documentation. Several usersof this interface can follow up and also operate on pointer to const. Signed-off-by: Krzysztof Kozlowski Acked-by: Mathieu Poirier --- Depends on previous patches. --- drivers/soc/qcom/apr.c | 8 ++++---- include/linux/soc/qcom/apr.h | 4 ++-- sound/soc/qcom/qdsp6/audioreach.c | 6 +++--- sound/soc/qcom/qdsp6/audioreach.h | 4 ++-- sound/soc/qcom/qdsp6/q6apm.c | 3 ++- sound/soc/qcom/qdsp6/q6apm.h | 2 +- 6 files changed, 14 insertions(+), 13 deletions(-) diff --git a/drivers/soc/qcom/apr.c b/drivers/soc/qcom/apr.c index a956c407ce03..b2e1d9a351de 100644 --- a/drivers/soc/qcom/apr.c +++ b/drivers/soc/qcom/apr.c @@ -123,10 +123,10 @@ gpr_port_t *gpr_alloc_port(struct apr_device *gdev, s= truct device *dev, } EXPORT_SYMBOL_GPL(gpr_alloc_port); =20 -static int pkt_router_send_svc_pkt(struct pkt_router_svc *svc, struct gpr_= pkt *pkt) +static int pkt_router_send_svc_pkt(struct pkt_router_svc *svc, const struc= t gpr_pkt *pkt) { struct packet_router *pr =3D svc->pr; - struct gpr_hdr *hdr; + const struct gpr_hdr *hdr; unsigned long flags; int ret; =20 @@ -139,13 +139,13 @@ static int pkt_router_send_svc_pkt(struct pkt_router_= svc *svc, struct gpr_pkt *p return ret ? ret : hdr->pkt_size; } =20 -int gpr_send_pkt(struct apr_device *gdev, struct gpr_pkt *pkt) +int gpr_send_pkt(struct apr_device *gdev, const struct gpr_pkt *pkt) { return pkt_router_send_svc_pkt(&gdev->svc, pkt); } EXPORT_SYMBOL_GPL(gpr_send_pkt); =20 -int gpr_send_port_pkt(gpr_port_t *port, struct gpr_pkt *pkt) +int gpr_send_port_pkt(gpr_port_t *port, const struct gpr_pkt *pkt) { return pkt_router_send_svc_pkt(port, pkt); } diff --git a/include/linux/soc/qcom/apr.h b/include/linux/soc/qcom/apr.h index a532d1e4b1f4..3a02bca34b3a 100644 --- a/include/linux/soc/qcom/apr.h +++ b/include/linux/soc/qcom/apr.h @@ -191,7 +191,7 @@ int apr_send_pkt(struct apr_device *adev, struct apr_pk= t *pkt); gpr_port_t *gpr_alloc_port(gpr_device_t *gdev, struct device *dev, gpr_port_cb cb, void *priv); void gpr_free_port(gpr_port_t *port); -int gpr_send_port_pkt(gpr_port_t *port, struct gpr_pkt *pkt); -int gpr_send_pkt(gpr_device_t *gdev, struct gpr_pkt *pkt); +int gpr_send_port_pkt(gpr_port_t *port, const struct gpr_pkt *pkt); +int gpr_send_pkt(gpr_device_t *gdev, const struct gpr_pkt *pkt); =20 #endif /* __QCOM_APR_H_ */ diff --git a/sound/soc/qcom/qdsp6/audioreach.c b/sound/soc/qcom/qdsp6/audio= reach.c index ded49124581b..297592b77925 100644 --- a/sound/soc/qcom/qdsp6/audioreach.c +++ b/sound/soc/qcom/qdsp6/audioreach.c @@ -552,10 +552,10 @@ EXPORT_SYMBOL_GPL(audioreach_alloc_graph_pkt); int audioreach_send_cmd_sync(struct device *dev, gpr_device_t *gdev, struct gpr_ibasic_rsp_result_t *result, struct mutex *cmd_lock, gpr_port_t *port, wait_queue_head_t *cmd_wait, - struct gpr_pkt *pkt, uint32_t rsp_opcode) + const struct gpr_pkt *pkt, uint32_t rsp_opcode) { =20 - struct gpr_hdr *hdr =3D &pkt->hdr; + const struct gpr_hdr *hdr =3D &pkt->hdr; int rc; =20 mutex_lock(cmd_lock); @@ -595,7 +595,7 @@ int audioreach_send_cmd_sync(struct device *dev, gpr_de= vice_t *gdev, } EXPORT_SYMBOL_GPL(audioreach_send_cmd_sync); =20 -int audioreach_graph_send_cmd_sync(struct q6apm_graph *graph, struct gpr_p= kt *pkt, +int audioreach_graph_send_cmd_sync(struct q6apm_graph *graph, const struct= gpr_pkt *pkt, uint32_t rsp_opcode) { =20 diff --git a/sound/soc/qcom/qdsp6/audioreach.h b/sound/soc/qcom/qdsp6/audio= reach.h index d1b60b36468a..995a7283c805 100644 --- a/sound/soc/qcom/qdsp6/audioreach.h +++ b/sound/soc/qcom/qdsp6/audioreach.h @@ -805,8 +805,8 @@ int audioreach_map_memory_regions(struct q6apm_graph *g= raph, bool is_contiguous); int audioreach_send_cmd_sync(struct device *dev, gpr_device_t *gdev, struc= t gpr_ibasic_rsp_result_t *result, struct mutex *cmd_lock, gpr_port_t *port, wait_queue_head_t *cmd_w= ait, - struct gpr_pkt *pkt, uint32_t rsp_opcode); -int audioreach_graph_send_cmd_sync(struct q6apm_graph *graph, struct gpr_p= kt *pkt, + const struct gpr_pkt *pkt, uint32_t rsp_opcode); +int audioreach_graph_send_cmd_sync(struct q6apm_graph *graph, const struct= gpr_pkt *pkt, uint32_t rsp_opcode); int audioreach_set_media_format(struct q6apm_graph *graph, struct audioreach_module *module, diff --git a/sound/soc/qcom/qdsp6/q6apm.c b/sound/soc/qcom/qdsp6/q6apm.c index 94cc6376a367..d3943d07cb99 100644 --- a/sound/soc/qcom/qdsp6/q6apm.c +++ b/sound/soc/qcom/qdsp6/q6apm.c @@ -29,7 +29,8 @@ struct apm_graph_mgmt_cmd { =20 static struct q6apm *g_apm; =20 -int q6apm_send_cmd_sync(struct q6apm *apm, struct gpr_pkt *pkt, uint32_t r= sp_opcode) +int q6apm_send_cmd_sync(struct q6apm *apm, const struct gpr_pkt *pkt, + uint32_t rsp_opcode) { gpr_device_t *gdev =3D apm->gdev; =20 diff --git a/sound/soc/qcom/qdsp6/q6apm.h b/sound/soc/qcom/qdsp6/q6apm.h index 7ce08b401e31..a39f6046f886 100644 --- a/sound/soc/qcom/qdsp6/q6apm.h +++ b/sound/soc/qcom/qdsp6/q6apm.h @@ -138,7 +138,7 @@ int q6apm_map_memory_regions(struct q6apm_graph *graph, int q6apm_unmap_memory_regions(struct q6apm_graph *graph, unsigned int dir); /* Helpers */ -int q6apm_send_cmd_sync(struct q6apm *apm, struct gpr_pkt *pkt, +int q6apm_send_cmd_sync(struct q6apm *apm, const struct gpr_pkt *pkt, uint32_t rsp_opcode); =20 /* Callback for graph specific */ --=20 2.48.1