From mboxrd@z Thu Jan 1 00:00:00 1970 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 DFE0F27E049 for ; Tue, 14 Jul 2026 06:25:32 +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=1784010334; cv=none; b=MM/ntBYkgzPnRp456HWp7o6V7+kqdRCJSLISh4909rvHMBD1QmEoAiQmKWht7xP7mn8KRDxpt/1jRle+pl+/NVBEzNG4WtsMus3Rxs3JeDWwWGxeKTpvjb3X7Cgu66D/ZQhc4jhUEzT+ki49hz5OqE5BI+FcO0hkb867aL1ebPw= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1784010334; c=relaxed/simple; bh=B9pVgo495diTna48/2OTSXCDVKMHadDb/yMwyo7Ctqk=; h=Message-ID:Date:MIME-Version:Subject:To:Cc:References:From: In-Reply-To:Content-Type; b=Ns5nAYTXJfmWI1wihhxyD5Z75MLCD8HIlXawMJL4WORivYV/FL/7ghpC14eIg9Mo35V9WEomzwRexF2rePNNdsQ3g2dPufFSyy6PLgW2UQlPW/n4NvfoDoALk7agEvkjoaxRFJBEeVCNhMNjutpQfE/5qKBD7Ofq6tGNk7FGOpY= 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=oXY/uVi6; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=jDiTYbYZ; 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="oXY/uVi6"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="jDiTYbYZ" Received: from pps.filterd (m0279870.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 66E38CVR3441022 for ; Tue, 14 Jul 2026 06:25:32 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= KZBr75t40r+MiBfSLFczvCckh94aSYrJwRQNiIqxluM=; b=oXY/uVi6mr+lfCNC RpI8s5qBhscqfRydZtgyW3Ngvs22dNTjsfxlMELn+CcVLwxwcDs0J5Td5t0g6e1J x2lMEIKwYdYMoXFlRhqguEfJA2wNbYf9LkQLQmfxU4qpLHiglmXSKHF2yLMhwvNr JyR5cCwChdvhhRo78HWsTFHnBSsZo/xkNrIv6Me+nXwg0rpMHsLEc+7pa0r0fok8 Zh8dxIOYbylD9XI0iTh4yCriNTwyrbdI+Gj8v9T96w74kJYpev+wog0VIh8Ioz89 Y3+NoaAw4YCWQnHKfnNUg4fVQCVK822LJOkOZgORaZ+5e1bHcxOnGz5J+JqeUuBm BKcyDA== 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 4fdbr48uc8-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Tue, 14 Jul 2026 06:25:31 +0000 (GMT) Received: by mail-pg1-f199.google.com with SMTP id 41be03b00d2f7-ca124bf0189so493379a12.0 for ; Mon, 13 Jul 2026 23:25:31 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1784010331; x=1784615131; darn=vger.kernel.org; h=content-transfer-encoding:content-type:in-reply-to:from :content-language:references:cc:to:subject:user-agent:mime-version :date:message-id:from:to:cc:subject:date:message-id:reply-to :content-type; bh=KZBr75t40r+MiBfSLFczvCckh94aSYrJwRQNiIqxluM=; b=jDiTYbYZlX6wYi3TArZ/NBi8D2+N2UcrC1lTORkDWtVoG0tJH67HlpIWLXhH/7wOPI +vJf5yy1D7ygBezYc4yYkZexkdsITTB6ZNvfPiED2H2aEWXleLr0G+vgLUzJiGIkxdU6 bbZEW20lySII5mYtzSlnBXllApGMCdAbAWowRJEz/HIPQkHLizmG+CPieyojsjJgJWXL I9+T7ePstV/310D9RiYuI1Kd1YH6i7Z0bfQrYpST9TYfND57joQMMDYdspZc5zKsBSho rcD+0qDrzw5zOmiLr4C813Y/H5dJf7jAYyWgVX2j4vQvDRxc4NZjVSjQ0aQwzVytGGfB ev6w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1784010331; x=1784615131; h=content-transfer-encoding:content-type:in-reply-to:from :content-language:references:cc:to:subject:user-agent:mime-version :date:message-id:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to:content-type; bh=KZBr75t40r+MiBfSLFczvCckh94aSYrJwRQNiIqxluM=; b=pDZ3uio2LJ+sGBt+KQkVGzaPM6CWMlVm03v5NFjns2GvlwMXGOV9L2tRQMY4rItsWH rXG02EBp41iiegahyPYuguWszgv5Lz62C2oPn1Wer8cfJHLEn1U+lbXN2GlXT5xEduxq 0PSXjaVHcg9Gkdni+GNaDKGlbPqH9eoo64yOyHMe3Im28UEIHq8L3C1blomKIABeh+0W 0Y6/P5itFTzLfpZneXrGo8+NNxRe8ezJkh/hSH+48Utdsf32ub0U7xJXoOWzckna/Cfk pcwg/Hf0GTj+xit8geV0Nuew2RbHWUUML3JxVejDxiMaNP/WMDWtGmgF/t/F4MUmHS8l WUkA== X-Forwarded-Encrypted: i=1; AHgh+RojI+naBHb3FmxdnEin99P8YvLz3FrGEMrGbednEEzM4veTd0neCyLgzyimDDqjlbSELh9RJfChNyb8MzI=@vger.kernel.org X-Gm-Message-State: AOJu0YyubnYGyqHRFTxq37kR790dZFym9buV9tX5IjRgMacXA4wpHw0N hwF9nMJHa5cnfoe+XmauHMlOHweBfxY5tKIt4r/g9Kk+plP5SmMwmcxR1eXInnRu2hPI0AYp/hS 5oE7JIBqXUIkQEPTj3C4ui+jkhLK+T5sv28nU+VOKSFBvta+MZVBvI3WhWuLL75O0XU8= X-Gm-Gg: AfdE7ckjczICHeUvy3rmGoCzobEpjTymiPvlRXipMiqtJhWQ2xxIU1f2Ews0KfMla5f CsFiso9Mj6deU8bgZYFbkkkvINDJmKLFzjGM+6Kye/b5LiPSoc756tWOr5lReinE1oxAbOOBWPa rX0jYn7wg+36QUg3JofoNW/nw/WiYGDrL7cFXe+8XIMMAcsWbQ+f3hxvPOuU/NwcwCKGurE/jS7 5drp1pPLK6u+hfAWF9KTw4GtS5ccenplyLtoxgA6rtyi8z6KzJ6fwC1hCjxIxcSreUzQVRtcOSO lt+FMuXFmDh+oIim5BmkSWiQP8hnNPPZS5mQOJtHvhbBW6F3kBvTFl5SFLGqS334Dn+/l9/98rY 2b78kgrOpPWKyjanV5MXsZLlrpbexFmQwZze5FoE= X-Received: by 2002:a05:6a20:1604:b0:3bf:ab54:8db8 with SMTP id adf61e73a8af0-3c112c6df67mr11810091637.17.1784010330786; Mon, 13 Jul 2026 23:25:30 -0700 (PDT) X-Received: by 2002:a05:6a20:1604:b0:3bf:ab54:8db8 with SMTP id adf61e73a8af0-3c112c6df67mr11810061637.17.1784010330332; Mon, 13 Jul 2026 23:25:30 -0700 (PDT) Received: from [10.92.171.127] ([202.46.23.19]) by smtp.gmail.com with ESMTPSA id 41be03b00d2f7-ca5afeb060bsm9318316a12.14.2026.07.13.23.25.26 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Mon, 13 Jul 2026 23:25:29 -0700 (PDT) Message-ID: Date: Tue, 14 Jul 2026 11:55:24 +0530 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH] firmware: qcom: scm: fold tzmem into the qcom-scm module To: Sumit Garg , Konrad Dybcio Cc: Sumit Garg , linux-arm-msm@vger.kernel.org, andersson@kernel.org, konradybcio@kernel.org, linux-kernel@vger.kernel.org, bartosz.golaszewski@oss.qualcomm.com, kernel test robot References: <20260713045811.484554-1-sumit.garg@kernel.org> Content-Language: en-US From: Harshal Dev In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Proofpoint-GUID: RNSqv5iCAjXfSH-SbRSWYLWfwk-TCMa3 X-Proofpoint-ORIG-GUID: RNSqv5iCAjXfSH-SbRSWYLWfwk-TCMa3 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwNzE0MDA2NCBTYWx0ZWRfXxKcbEjsFvYBz NcXmLJTpa9hBiL4CNzKTg9fQmrZa+Q9frpXHYlbVHi5f1x5eBAJ3nF0YfirMDka2LrY1aBWzGwL yMF9IJYAOYLGCa3/vhywhGQNOqK1LYnG1Q5lOXfUbGs6Xftatc2Bg+9yTXBAG/7ORqLTpeJ2DuY 1ZAy7qtxffpu3FrXUmuKVQLhRLVZMZSZIvHyiBAww1hk3HhJ6R3WyWDuOXmCb2YrhNV7xPVzysA qn7l6ZfEMZGbPzKmw86WjT0fdjaztnIm8pH+E2ZQQ0xDs1zyUNdh3bOtD3vpe1uvLfEhgC/G7h8 HDbnFbr3ZhvSOOvMCPbnegCBKBAcnRzJKaVTETWWq8xQjiUDFTRV+Mg41slAUNBdJd4TdB0hZ1/ OmMZaOkV5OTBHKYy3EojHFJMYl2vrFOYqS3EQw2xQT638JD540l/a3yPT2P13Q7x+By9kQZubsq SLPMqd+VdabjSfpuHUQ== X-Authority-Analysis: v=2.4 cv=F5hnsKhN c=1 sm=1 tr=0 ts=6a55d65b cx=c_pps a=Oh5Dbbf/trHjhBongsHeRQ==:117 a=j4ogTh8yFefVWWEFDRgCtg==:17 a=IkcTkHD0fZMA:10 a=RAioF0-LDSMA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=gowsoOTTUOVcmtlkKump:22 a=VwQbUJbxAAAA:8 a=QyXUC8HyAAAA:8 a=EUspDBNiAAAA:8 a=J04rnDO_GnZqDZMaarMA:9 a=3ZKOabzyN94A:10 a=QEXdDO2ut3YA:10 a=_Vgx9l1VpLgwpw_dHYaR:22 X-Proofpoint-Spam-Info: AW1haW4tMjYwNzE0MDA2NCBTYWx0ZWRfX+YesQDZBI8RT 5ToJnbAKeMsckIO4Iv0Pce76XzDveuT6foKnORd6M+Qgo/Re6ytAnaubgC2BSW0N9pE/iW2IY+G NjW+JsanrOCE+QuIJ4EqLREf+GzI7oo= X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1143,Hydra:6.1.134,FMLib:17.12.100.49 definitions=2026-07-14_01,2026-07-10_01,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 phishscore=0 bulkscore=0 malwarescore=0 priorityscore=1501 suspectscore=0 clxscore=1015 adultscore=0 impostorscore=0 lowpriorityscore=0 spamscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2606150000 definitions=main-2607140064 Hi, On 7/13/2026 5:05 PM, Sumit Garg wrote: > On Mon, Jul 13, 2026 at 4:07 PM Konrad Dybcio > wrote: >> >> On 7/13/26 6:58 AM, Sumit Garg wrote: >>> From: Sumit Garg >>> >>> qcom_scm and qcom_tzmem have a mutual symbol dependency: qcom_tzmem >>> calls qcom_scm_shm_bridge_{enable,create,delete}() while qcom_scm >>> calls qcom_tzmem_{alloc,free,to_phys}() and qcom_scm_get_tzmem_pool(). >>> When both are built as modules this results in a circular module >>> dependency and depmod fails: >>> >>> depmod: ERROR: Cycle detected: qcom_scm -> qcom_tzmem -> qcom_scm >>> >>> QCOM_TZMEM is an invisible tristate that is only ever selected by >>> QCOM_SCM, so the two are always enabled together. Build qcom_tzmem.o >>> as part of the qcom-scm composite module instead of as a separate >>> module. This breaks the cycle since the mutual symbol references >>> become intra-module. >>> >>> With tzmem now internal to qcom-scm, the shm_bridge helpers are no >>> longer used outside the module, so drop their EXPORT_SYMBOL_GPL() and >>> move the declarations from the public header to the private one, >>> alongside qcom_scm_shm_bridge_enable(). >>> >>> Reported-by: kernel test robot >>> Closes: https://lore.kernel.org/oe-kbuild-all/202607122327.3zkZCUaB-lkp@intel.com/ >>> Assisted-by: Copilot:claude-opus-4.8 >>> Signed-off-by: Sumit Garg >>> --- >>> drivers/firmware/qcom/Makefile | 2 +- >>> drivers/firmware/qcom/qcom_scm.c | 3 --- >>> drivers/firmware/qcom/qcom_scm.h | 4 ++++ >>> include/linux/firmware/qcom/qcom_scm.h | 5 ----- >>> 4 files changed, 5 insertions(+), 9 deletions(-) >>> >>> diff --git a/drivers/firmware/qcom/Makefile b/drivers/firmware/qcom/Makefile >>> index 48801d18f37b..55751d282689 100644 >>> --- a/drivers/firmware/qcom/Makefile >>> +++ b/drivers/firmware/qcom/Makefile >>> @@ -5,7 +5,7 @@ >>> >>> obj-$(CONFIG_QCOM_SCM) += qcom-scm.o >>> qcom-scm-objs += qcom_scm.o qcom_scm-smc.o qcom_scm-legacy.o >>> -obj-$(CONFIG_QCOM_TZMEM) += qcom_tzmem.o >>> +qcom-scm-$(CONFIG_QCOM_TZMEM) += qcom_tzmem.o >> >> Does it make sense to squash the kconfig entries too now? >> > > Sounds reasonable to me, I can do that for v2. What kind of squash are we thinking about here? Moving the TZMEM_MODE* choice to QCOM_SCM and removing QCOM_TZMEM? I think we should keep the QCOM_TZMEM Kconfig around for when we boot with OPTEE and want to disable TZMEM since SHMBridge is QTEE specific. Regards, Harshal > > -Sumit