From nobody Tue Dec 2 02:03:05 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 DB60F34A3A2 for ; Fri, 21 Nov 2025 11:01:45 +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=1763722908; cv=none; b=EkKuNZ3rnQuN0kAUSL0VJdpjD/D0GZv3sxm/tkXkwOPj+5q5hzhZkUNH7qVPhNN0uxs77mqJXbzltamNLJ3+gwY/b9vLR2sAUCQQis/MwiRmZRsPg5sfClaue6qMo9SeH136voDcWlumkjXEyaxmJ/pJBIXrPCEnYBDMT6X0jv0= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1763722908; c=relaxed/simple; bh=aMItD6Cdfz2tfyrkelFjtbde9k9QFcsKS11a8RLC6jc=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=mmRDASCbx9a9h0IBFrIZ3bVbEUy2S0Qj9qDVhVER7UnDtchpNjBG94nJEEQkBzP6oIZq9/mQzsaSSXJ1IpbaG9MSLDHlV1N+N5KIWwnY3AskDqGYQHzTALTllYloEC516YjYADSEqrYiS/20QRT0Igtcihxrvwef4V6goj5X1u8= 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=aGhX9Byn; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=J9yrrEx+; 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="aGhX9Byn"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="J9yrrEx+" 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 5AL5TA7e2759593 for ; Fri, 21 Nov 2025 11:01:45 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= W2h39R0SiBLsaVDxDlo4kG0nrAdErn9QL2vsrFBoSHg=; b=aGhX9BynrLiDgJBU p6HdrUuBUNVq8Ovc6MfFjqg+T0RQ/KiS4UX5eoPPggLQUUY8BN2X8Brz8XuZ6N/L MJewwZkbR7fY7hRJ/nu6jfIOJ+rhAzr0TEr9GQ5wGOzzHzRznhYWqRDSOZkZc/OE XeGIR3jiYkViplmZ02rG8DPgq5icTN/mMxbXevtv/sveviOPSKj5MjIeyYsdYIk5 6g5KDcus0U+6MSqip8QP4TbIPUlhgM8kQthQ0ndtocngsGq/oOg+HUAcsokN1fvZ J11R8NmCi2FeSdQBWdG3NyXNsLNmNtJ2IAxhLR5GejK1WqQ1cKjhthQ4KX2I6nT2 Vtd54w== Received: from mail-pj1-f70.google.com (mail-pj1-f70.google.com [209.85.216.70]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4ajhy6159r-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Fri, 21 Nov 2025 11:01:44 +0000 (GMT) Received: by mail-pj1-f70.google.com with SMTP id 98e67ed59e1d1-3436e9e3569so4253342a91.2 for ; Fri, 21 Nov 2025 03:01:44 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1763722904; x=1764327704; 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=W2h39R0SiBLsaVDxDlo4kG0nrAdErn9QL2vsrFBoSHg=; b=J9yrrEx+I4nGO2+j/16vdWxcx/6L7YiXiA/DMS0fFCQmH8AdrA4Sh1hkjLhpyw5FwG hq986z09sQiEZIG0BJTtasLrcnG2LwoGuM6wNTDO/KoUJNm1rY/hZ+p7rNmd7w8nkALP Lm/IZIoZPGm9Q0W68fH5EFw8PsCGy7XYt+zjoMU4TihEjzcrQZt+KpiuohO4EJsEVv1h EQaIhbRyjoC6gO84EEd9/t2r+P3MN2p+N8NuwaYHWQ5nm4QAeydTvGKeABoGtqEg9b/D 2Bp4t6cMjoA+PV8wgK36bC7QMIBwNQRhNzKONG7Ufo58ezU7pr5rpb57sZGKwEfwKOna OiRg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1763722904; x=1764327704; 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=W2h39R0SiBLsaVDxDlo4kG0nrAdErn9QL2vsrFBoSHg=; b=eE/NFfpMWeBXIeOU8gWFvYD3FqAmUmM3MalJDHTMug0ub+vOmq+i5xFyuQbb0K5+pr xMPa3mcu84ZFsTeENs/tcQycp6QNEqq9NPTO+HgmbTBypDcpkfYc8ty048Vg8A/Y5Gvt vuh2F2nrI+ClMc8Y4QgV+qPR8z191WoN/d4vBh5aqwULUoCKptloj/dZ1TDRqNoGtw4i ecgDlJtvkpTBR/RNenrUBe5GGlrYM6ZylURMgMRYmRNEjRgcLM+9JmvHonJqFDK0ruoI AKEW7r1obZNPG0uIaZoxYf7+HEcOWulv2Ti85hgQr7Z6dk2EQuG19MPOOgNk7hQcdd6O qrxA== X-Forwarded-Encrypted: i=1; AJvYcCUwZ8tF6DYi2qjAboBRki6075GhoYvw9DT7DwwojIXKRem+lZt33dJsPhDOCJM9ga5W/VulNPUGxhdvVkg=@vger.kernel.org X-Gm-Message-State: AOJu0Yz1WbOS7aWq6wYw8qdmmN2oewqqS9zzeJIcIKjHqVOKVsDXRwZ4 ubbGYmN13uDfLjyzJAv0+at1NaPM4gOkFcNcniqJG4T0wSZZiJoKwqc8Ml9SDClCgXUl9C2p6/s Tvv6O22YgM0lqTyyCJfC5aTyp+klykQ5BpCpQ5MzNfvwPXHo97OzBNFhonrIv6ljnjQw= X-Gm-Gg: ASbGncsfMsckdw/tbLpr1DYNyMNkPw6PHcpwE0mFUq7gPRHhyml4VvI+CC3Dcll2tiz DQekyArAtamAk6GzQLKncfiNJUhD8mItOJJHDoFBNWrvxYVRhFKnQkKEjpZb2YAq7xMM5uPwa1/ D67xBCY2WWv7Oq5jJ8eYxj98S01j1xEElbStxkXFh0ks9uZV9q2nv6aYcuKMmlQPn7VUHkJHUFi wVKmzluE5fqNGFIu66s7N76vD0PwYAowg7IcYtapveQmnL9Aa8Fna9q4e6sSRiEQEHIG4ph4/qw ohE6DpA1tOO5tNNUVOeFEqFQ35ipQlwP9A/ny6ikTges3ttrpQaoWwFqTx24w9bJKRBDGYgpwWA A7F67DPKMxGbAG8B3D7J6DloQJU4VhomdVkMl X-Received: by 2002:a17:90b:48c4:b0:33b:c9b6:1cd with SMTP id 98e67ed59e1d1-34733f163c7mr2555940a91.19.1763722903851; Fri, 21 Nov 2025 03:01:43 -0800 (PST) X-Google-Smtp-Source: AGHT+IEbb9KF8t2cBkVhvwZ02kTI3tg1SXHxArvV+zbHyCwWFdbkeHj/3azaKyej9bg97ZTH1Q5xZw== X-Received: by 2002:a17:90b:48c4:b0:33b:c9b6:1cd with SMTP id 98e67ed59e1d1-34733f163c7mr2555864a91.19.1763722903026; Fri, 21 Nov 2025 03:01:43 -0800 (PST) Received: from hu-mojha-hyd.qualcomm.com ([202.46.23.25]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-34727d5208csm5191165a91.15.2025.11.21.03.01.39 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 21 Nov 2025 03:01:42 -0800 (PST) From: Mukesh Ojha Date: Fri, 21 Nov 2025 16:31:07 +0530 Subject: [PATCH v8 05/14] remoteproc: pas: Replace metadata context with PAS context structure 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: <20251121-kvm_rproc_v8-v8-5-8e8e9fb0eca0@oss.qualcomm.com> References: <20251121-kvm_rproc_v8-v8-0-8e8e9fb0eca0@oss.qualcomm.com> In-Reply-To: <20251121-kvm_rproc_v8-v8-0-8e8e9fb0eca0@oss.qualcomm.com> To: Bjorn Andersson , Mathieu Poirier , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Manivannan Sadhasivam , Konrad Dybcio Cc: linux-arm-msm@vger.kernel.org, linux-remoteproc@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Mukesh Ojha X-Mailer: b4 0.14-dev-f7c49 X-Developer-Signature: v=1; a=ed25519-sha256; t=1763722879; l=8840; i=mukesh.ojha@oss.qualcomm.com; s=20250708; h=from:subject:message-id; bh=aMItD6Cdfz2tfyrkelFjtbde9k9QFcsKS11a8RLC6jc=; b=/s2vfQH5CY1i6iCzOwFOwZA0Fro3yXchRe26j37z8KXEQROLOJeYgAth5Wml1qz+ZI3NXIZ1x senywxbgX09B+UGZiQ/wqdzw2rYvu32UAFqyrB5VnlWI+aigXjk/uNw X-Developer-Key: i=mukesh.ojha@oss.qualcomm.com; a=ed25519; pk=eX8dr/7d4HJz/HEXZIpe3c+Ukopa/wZmxH+5YV3gdNc= X-Authority-Analysis: v=2.4 cv=Lb0xKzfi c=1 sm=1 tr=0 ts=69204698 cx=c_pps a=0uOsjrqzRL749jD1oC5vDA==:117 a=ZePRamnt/+rB5gQjfz0u9A==:17 a=IkcTkHD0fZMA:10 a=6UeiqGixMTsA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=EUspDBNiAAAA:8 a=FPhKjH8jRcijH9SIsZwA:9 a=QEXdDO2ut3YA:10 a=mQ_c8vxmzFEMiUWkPHU9:22 X-Proofpoint-ORIG-GUID: Vm9cgBhCHbjgoWLZcvo3XVDq3UpzKYxV X-Proofpoint-GUID: Vm9cgBhCHbjgoWLZcvo3XVDq3UpzKYxV X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUxMTIxMDA4NCBTYWx0ZWRfX7tXF6C36nZV5 aMiijyuEG2+uZUaeBE/8J0Wcmgp+2orxIeKa3HUnVs2JLGNV0E5IpyJ0ucyc6nX74ikNK5WWmSV 8kpytx6YRwAqjueICO7HJeplTMJA9fxTLdyXEeBz9mdOwGB427m53ILFfdODfCkgsVZJu3R2dyA q4IVYCsO2eW0tmjydAIovfBPDPEZzL2mCvxg9jgTqR40Mo+wV6mFdZkpxU4wDYz+RrAk23m4wv3 MtPguYqPNZqHijR0OxyaZWyCmSC0f6b2ybrwCSXPOcPu78OqTPU/qBP7FusxNoVh3EVbwjQLJik zn/1yVWoRi4twlOvjqYBktPzqt6XCgxFJnsQzo0N9TQO8Krut/QGbreo5/4EwjSso9YdX8n+lgS c9vdz13zB9mrhk+xd2TtT8hdHLsiqw== 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-21_03,2025-11-20_01,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 spamscore=0 impostorscore=0 clxscore=1015 malwarescore=0 lowpriorityscore=0 suspectscore=0 adultscore=0 bulkscore=0 phishscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2510240001 definitions=main-2511210084 As a superset of the existing metadata context, the PAS context structure enables both remoteproc and non-remoteproc subsystems to better support scenarios where the SoC runs with or without the Gunyah hypervisor. To reflect this, relevant SCM and metadata functions are updated to incorporate PAS context awareness and remove metadata context data structure completely. Signed-off-by: Mukesh Ojha --- drivers/firmware/qcom/qcom_scm.c | 8 +++---- drivers/remoteproc/qcom_q6v5_pas.c | 38 ++++++++++++++++++++++++------= ---- drivers/soc/qcom/mdt_loader.c | 4 ++-- include/linux/firmware/qcom/qcom_scm.h | 10 ++------- include/linux/soc/qcom/mdt_loader.h | 6 +++--- 5 files changed, 38 insertions(+), 28 deletions(-) diff --git a/drivers/firmware/qcom/qcom_scm.c b/drivers/firmware/qcom/qcom_= scm.c index e9e9d03ea36a..5fa974683ee0 100644 --- a/drivers/firmware/qcom/qcom_scm.c +++ b/drivers/firmware/qcom/qcom_scm.c @@ -601,7 +601,7 @@ EXPORT_SYMBOL_GPL(devm_qcom_scm_pas_context_init); * and optional blob of data used for authenticating the metadata * and the rest of the firmware * @size: size of the metadata - * @ctx: optional metadata context + * @ctx: optional pas context * * Return: 0 on success. * @@ -610,7 +610,7 @@ EXPORT_SYMBOL_GPL(devm_qcom_scm_pas_context_init); * qcom_scm_pas_metadata_release() by the caller. */ int qcom_scm_pas_init_image(u32 pas_id, const void *metadata, size_t size, - struct qcom_scm_pas_metadata *ctx) + struct qcom_scm_pas_context *ctx) { dma_addr_t mdata_phys; void *mdata_buf; @@ -674,9 +674,9 @@ EXPORT_SYMBOL_GPL(qcom_scm_pas_init_image); =20 /** * qcom_scm_pas_metadata_release() - release metadata context - * @ctx: metadata context + * @ctx: pas context */ -void qcom_scm_pas_metadata_release(struct qcom_scm_pas_metadata *ctx) +void qcom_scm_pas_metadata_release(struct qcom_scm_pas_context *ctx) { if (!ctx->ptr) return; diff --git a/drivers/remoteproc/qcom_q6v5_pas.c b/drivers/remoteproc/qcom_q= 6v5_pas.c index 158bcd6cc85c..729e7b9bc183 100644 --- a/drivers/remoteproc/qcom_q6v5_pas.c +++ b/drivers/remoteproc/qcom_q6v5_pas.c @@ -117,8 +117,8 @@ struct qcom_pas { struct qcom_rproc_ssr ssr_subdev; struct qcom_sysmon *sysmon; =20 - struct qcom_scm_pas_metadata pas_metadata; - struct qcom_scm_pas_metadata dtb_pas_metadata; + struct qcom_scm_pas_context *pas_ctx; + struct qcom_scm_pas_context *dtb_pas_ctx; }; =20 static void qcom_pas_segment_dump(struct rproc *rproc, @@ -211,9 +211,9 @@ static int qcom_pas_unprepare(struct rproc *rproc) * auth_and_reset() was successful, but in other cases clean it up * here. */ - qcom_scm_pas_metadata_release(&pas->pas_metadata); + qcom_scm_pas_metadata_release(pas->pas_ctx); if (pas->dtb_pas_id) - qcom_scm_pas_metadata_release(&pas->dtb_pas_metadata); + qcom_scm_pas_metadata_release(pas->dtb_pas_ctx); =20 return 0; } @@ -241,7 +241,7 @@ static int qcom_pas_load(struct rproc *rproc, const str= uct firmware *fw) =20 ret =3D qcom_mdt_pas_init(pas->dev, pas->dtb_firmware, pas->dtb_firmware= _name, pas->dtb_pas_id, pas->dtb_mem_phys, - &pas->dtb_pas_metadata); + pas->dtb_pas_ctx); if (ret) goto release_dtb_firmware; =20 @@ -255,7 +255,7 @@ static int qcom_pas_load(struct rproc *rproc, const str= uct firmware *fw) return 0; =20 release_dtb_metadata: - qcom_scm_pas_metadata_release(&pas->dtb_pas_metadata); + qcom_scm_pas_metadata_release(pas->dtb_pas_ctx); =20 release_dtb_firmware: release_firmware(pas->dtb_firmware); @@ -306,7 +306,7 @@ static int qcom_pas_start(struct rproc *rproc) } =20 ret =3D qcom_mdt_pas_init(pas->dev, pas->firmware, rproc->firmware, pas->= pas_id, - pas->mem_phys, &pas->pas_metadata); + pas->mem_phys, pas->pas_ctx); if (ret) goto disable_px_supply; =20 @@ -332,9 +332,9 @@ static int qcom_pas_start(struct rproc *rproc) goto release_pas_metadata; } =20 - qcom_scm_pas_metadata_release(&pas->pas_metadata); + qcom_scm_pas_metadata_release(pas->pas_ctx); if (pas->dtb_pas_id) - qcom_scm_pas_metadata_release(&pas->dtb_pas_metadata); + qcom_scm_pas_metadata_release(pas->dtb_pas_ctx); =20 /* firmware is used to pass reference from qcom_pas_start(), drop it now = */ pas->firmware =3D NULL; @@ -342,9 +342,9 @@ static int qcom_pas_start(struct rproc *rproc) return 0; =20 release_pas_metadata: - qcom_scm_pas_metadata_release(&pas->pas_metadata); + qcom_scm_pas_metadata_release(pas->pas_ctx); if (pas->dtb_pas_id) - qcom_scm_pas_metadata_release(&pas->dtb_pas_metadata); + qcom_scm_pas_metadata_release(pas->dtb_pas_ctx); disable_px_supply: if (pas->px_supply) regulator_disable(pas->px_supply); @@ -779,6 +779,22 @@ static int qcom_pas_probe(struct platform_device *pdev) } =20 qcom_add_ssr_subdev(rproc, &pas->ssr_subdev, desc->ssr_name); + + pas->pas_ctx =3D devm_qcom_scm_pas_context_init(pas->dev, pas->pas_id, + pas->mem_phys, pas->mem_size); + if (IS_ERR(pas->pas_ctx)) { + ret =3D PTR_ERR(pas->pas_ctx); + goto remove_ssr_sysmon; + } + + pas->dtb_pas_ctx =3D devm_qcom_scm_pas_context_init(pas->dev, pas->dtb_pa= s_id, + pas->dtb_mem_phys, + pas->dtb_mem_size); + if (IS_ERR(pas->dtb_pas_ctx)) { + ret =3D PTR_ERR(pas->dtb_pas_ctx); + goto remove_ssr_sysmon; + } + ret =3D rproc_add(rproc); if (ret) goto remove_ssr_sysmon; diff --git a/drivers/soc/qcom/mdt_loader.c b/drivers/soc/qcom/mdt_loader.c index c239107cb930..b125140100db 100644 --- a/drivers/soc/qcom/mdt_loader.c +++ b/drivers/soc/qcom/mdt_loader.c @@ -234,13 +234,13 @@ EXPORT_SYMBOL_GPL(qcom_mdt_read_metadata); * @fw_name: name of the firmware, for construction of segment file names * @pas_id: PAS identifier * @mem_phys: physical address of allocated memory region - * @ctx: PAS metadata context, to be released by caller + * @ctx: PAS context, ctx->metadata to be released by caller * * Returns 0 on success, negative errno otherwise. */ int qcom_mdt_pas_init(struct device *dev, const struct firmware *fw, const char *fw_name, int pas_id, phys_addr_t mem_phys, - struct qcom_scm_pas_metadata *ctx) + struct qcom_scm_pas_context *ctx) { const struct elf32_phdr *phdrs; const struct elf32_phdr *phdr; diff --git a/include/linux/firmware/qcom/qcom_scm.h b/include/linux/firmwar= e/qcom/qcom_scm.h index 4a57fa676513..b10b1aeb32c6 100644 --- a/include/linux/firmware/qcom/qcom_scm.h +++ b/include/linux/firmware/qcom/qcom_scm.h @@ -66,12 +66,6 @@ int qcom_scm_set_warm_boot_addr(void *entry); void qcom_scm_cpu_power_down(u32 flags); int qcom_scm_set_remote_state(u32 state, u32 id); =20 -struct qcom_scm_pas_metadata { - void *ptr; - dma_addr_t phys; - ssize_t size; -}; - struct qcom_scm_pas_context { struct device *dev; u32 pas_id; @@ -87,8 +81,8 @@ struct qcom_scm_pas_context *devm_qcom_scm_pas_context_in= it(struct device *dev, phys_addr_t mem_phys, size_t mem_size); int qcom_scm_pas_init_image(u32 pas_id, const void *metadata, size_t size, - struct qcom_scm_pas_metadata *ctx); -void qcom_scm_pas_metadata_release(struct qcom_scm_pas_metadata *ctx); + struct qcom_scm_pas_context *ctx); +void qcom_scm_pas_metadata_release(struct qcom_scm_pas_context *ctx); int qcom_scm_pas_mem_setup(u32 pas_id, phys_addr_t addr, phys_addr_t size); int qcom_scm_pas_auth_and_reset(u32 pas_id); int qcom_scm_pas_shutdown(u32 pas_id); diff --git a/include/linux/soc/qcom/mdt_loader.h b/include/linux/soc/qcom/m= dt_loader.h index 8ea8230579a2..07c278841816 100644 --- a/include/linux/soc/qcom/mdt_loader.h +++ b/include/linux/soc/qcom/mdt_loader.h @@ -10,14 +10,14 @@ =20 struct device; struct firmware; -struct qcom_scm_pas_metadata; +struct qcom_scm_pas_context; =20 #if IS_ENABLED(CONFIG_QCOM_MDT_LOADER) =20 ssize_t qcom_mdt_get_size(const struct firmware *fw); int qcom_mdt_pas_init(struct device *dev, const struct firmware *fw, const char *fw_name, int pas_id, phys_addr_t mem_phys, - struct qcom_scm_pas_metadata *pas_metadata_ctx); + struct qcom_scm_pas_context *pas_ctx); int qcom_mdt_load(struct device *dev, const struct firmware *fw, const char *fw_name, int pas_id, void *mem_region, phys_addr_t mem_phys, size_t mem_size, @@ -39,7 +39,7 @@ static inline ssize_t qcom_mdt_get_size(const struct firm= ware *fw) =20 static inline int qcom_mdt_pas_init(struct device *dev, const struct firmw= are *fw, const char *fw_name, int pas_id, phys_addr_t mem_phys, - struct qcom_scm_pas_metadata *pas_metadata_ctx) + struct qcom_scm_pas_context *pas_ctx) { return -ENODEV; } --=20 2.50.1