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 BBFCA34A76A for ; Thu, 5 Feb 2026 08:50:52 +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=1770281453; cv=none; b=sBahv452NIg0u2NgtOz3FFPiApr9bhxp1l4fspB5DK7ldpCS78uDhsqDChKMr4FJ6cbtP1oGODmptwhKl1/tzoLcedSw6v+bBijXx61emaVDCpFZWiDTAnDwjJ83kifE5O03Uue/oQQuv+z/UBaJ90uPfchTOUYqkuBI9E79uYY= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1770281453; c=relaxed/simple; bh=KIqNGNbcmImNbHhAF34aY45imM2NLg2uNBU7JzmAimc=; h=Message-ID:Date:MIME-Version:Subject:From:To:Cc:References: In-Reply-To:Content-Type; b=JrLdRwYKtVpRkUw6AGTH+DMk8Dwr4vPFS7HpIqgePHKkcQA31j5gU1cJOgNgomLKBA1IIwjQWumomTy3A/J5rsLCGq5JYIrszaSp7yNGtkdBh/6P65fjeoldhlyn+ml3xOe3JdCyOdQTz3DPCh4B+0EdduDjuOeO9bexz4YgyR8= 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=jNERnH/I; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=JmoQF4gx; 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="jNERnH/I"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="JmoQF4gx" Received: from pps.filterd (m0279868.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 6153dmcU2712993 for ; Thu, 5 Feb 2026 08:50:51 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= KrakDA3r1DWpbWHkPcwLM0xWLh+O4InpD78DwsJ5jYA=; b=jNERnH/InUqhcTLt uSnwHSimhYfrauTIZijI/OJw8fU6kYDAq0sBXGv5pjX8/hu/i91OXlgKKBRjBUuh K6hY0+gEtMccDGoAlKWfy/mIs8WpCH6CSbJR9fjm369fYzY3/aEnPQQX00w687Lp /zXYFut5DNzB/HfjfnmR/f/bWHZITIoj3HG+neOq1QyK0aI1vJcuf7DxRqUjF4vX LJGiVrydTincgPi8fyQq9iku9+SWtaV774E2kRcCxnNX6uQG5l4d5asXnhId5G/V HDrekjpNGwFrrvq7ANC9VM86YWsAOYIqRnR22OyQE6Y51EllLv79BOS4cX2/5jyN 9KtClg== 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 4c47ja34gv-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Thu, 05 Feb 2026 08:50:51 +0000 (GMT) Received: by mail-qk1-f197.google.com with SMTP id af79cd13be357-8c710279d57so24012885a.3 for ; Thu, 05 Feb 2026 00:50:51 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1770281451; x=1770886251; darn=vger.kernel.org; h=content-transfer-encoding:in-reply-to:content-language:references :cc:to:from:subject:user-agent:mime-version:date:message-id:from:to :cc:subject:date:message-id:reply-to; bh=KrakDA3r1DWpbWHkPcwLM0xWLh+O4InpD78DwsJ5jYA=; b=JmoQF4gx5XXWZi9tzR7FiFucF2dXXn74KV2QlBL3nr+Fn33fHCC6DtWKbFi4hyUUq+ mW5dbvLiK4AceT/Oo4VslTc1IZhPlzPuhsGpVjBD5xja7O3+obSsZIcHBtgMtCk1Lrnf pXz0MnItyBnVNiP34jk9sXjBKV7OXd2hJgSgR7nmj4GiUOG4668qWA1IaJxlL0m9FMxV 0gkyhrspKUxs/Rt9wRKHmAH4EEvzW1qClBk14GaDpdSohrmVYZooXHlhArFen2hXHTIa G+wmlaqDfxnVk9y7syaYqq1MBzhcdn5nE+xoMwaKj05O79JWnaG1gO6DZK37DCQXo016 OKXA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1770281451; x=1770886251; h=content-transfer-encoding:in-reply-to:content-language:references :cc:to:from:subject:user-agent:mime-version:date:message-id:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=KrakDA3r1DWpbWHkPcwLM0xWLh+O4InpD78DwsJ5jYA=; b=KA7T0ZuYTgum9TM0LM73H4AoanoJkrxIwFB70ZplLqlhUfCzcwRRP04uBHuDoPqXy4 2iTakg4gfwSyOjrcrNbHsA1sM8d83TBknOUca1KihtJilTMKB02yi1MT5caQNWNrQZQt C4SPVedf1bcjcREUhCjisK/3rwvZcfdSkHF0NGu37NQcTTQ8LdtCKJwkeB/xDSG+/yaE HalCJCFAvMGnUxEsRtH8bZMw+FX8q6Ced7JAX0ydMod8Ot9Cm0U2LDZxjBytBoDGm6hn 3Rw4T2iv/FVM3P+0FjQUso+90/AhCXuO7cQEH46hl3Q952Um1kHCNDVz/BNAxw5Ywkuw pJlw== X-Forwarded-Encrypted: i=1; AJvYcCXULWjvVCQQM1eoSTl76EpSC+tFawAJ5w8sdWERnjCpDk59rcFuBYSvcmVyaLepzjCXoImoq1MrJbbi+Sc=@vger.kernel.org X-Gm-Message-State: AOJu0YwsI50WSj1yi1Rjpp9R8Se1B5Z6m2xpRYUAV0/GBKfeOp83umra 0Ms/KOIU//RX/Rc4/jeJgNFNCQYWCPbFjwW8i+XXUpHYCFpJ6uv2qVmyppXTTRBa1t2M39p+9Xt oZO5Opzfmv0nBJnwJYgKL4w0Y+spdXDKrkM5cvR875qXn+o7D0Ywik6qN7qq516oEx9U= X-Gm-Gg: AZuq6aIK/SQlwZp4tyBLRZtL0BBpUNaEjW2/sG4uAFf4Wu8QOiFLyNLLg7WXTn9GnNU xXG4UdCd+Dhk1BseEt24Shtj1BIVjKDC++KaftMtf9kvYdKX7bQCPJTJoCzjGhjAiWg2J91UU/5 3mLXEchENB8cmZzBSuU5IdYIBbg/fhec3PBEvfRMrIR5LrI3ioJPoJD1SU/sIRTlmGuqec034Lx h06A/VH9Zo+4qgWYrbE2hkkTIcnwjkwUzibjroAk2QFqvV0+lE3rTiD2vJQJ1/bVGQchz7ivEHo BL06C3vVsq2OC/vAHoNXNcuV4z1vfnFjLDBCC5abxtf+sfuzvwC+jAoV7/4bH3QCshoOhMxA7Gq 7dN1A7qxAz3HuHKA3jRz0zERvNQR0TIS4Fg1LYyQtzer2u2hII1V+WHzvlM7191FpEa4= X-Received: by 2002:a05:620a:4611:b0:8c9:eb47:6e9e with SMTP id af79cd13be357-8ca2f82cf1cmr575523985a.2.1770281451040; Thu, 05 Feb 2026 00:50:51 -0800 (PST) X-Received: by 2002:a05:620a:4611:b0:8c9:eb47:6e9e with SMTP id af79cd13be357-8ca2f82cf1cmr575522085a.2.1770281450620; Thu, 05 Feb 2026 00:50:50 -0800 (PST) Received: from [192.168.119.254] (078088045245.garwolin.vectranet.pl. [78.88.45.245]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-b8e9fcd8f4csm212078366b.6.2026.02.05.00.50.48 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Thu, 05 Feb 2026 00:50:50 -0800 (PST) Message-ID: Date: Thu, 5 Feb 2026 09:50:48 +0100 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] of: property: Create devlink between PCI Host bridge and Root Port suppliers From: Konrad Dybcio To: Manivannan Sadhasivam , robh@kernel.org, saravanak@kernel.org Cc: andersson@kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-msm@vger.kernel.org, qiang.yu@oss.qualcomm.com References: <20260205070640.10653-1-manivannan.sadhasivam@oss.qualcomm.com> Content-Language: en-US In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-Proofpoint-ORIG-GUID: J8FiTdSLmw7Rmqi1XBbT614Wk4wiLOnQ X-Proofpoint-GUID: J8FiTdSLmw7Rmqi1XBbT614Wk4wiLOnQ X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwMjA1MDA2MyBTYWx0ZWRfX1G0leeonqUYN yQqdbEX1S7gVQcWNL6nd10TuGvyqsgwnOKAJNbuyQloQB9tooNIZVlMt/gQqtVCuY+R0OpboOB3 CW7ZF7IaoYeY2z+tRjvtQdZv89EooSWQEa1AyYc2P33YvEXOL/OrmFYqZAwgT9cn2RmYBBpvFrI 7owfSs7lxc1vnW7WU+Vq3q8jgTbkQaZiiM3FuNz8/DG5ohWBCTUdmJxDjSzVQhLFj069uZKPtNG kru1JPGIwu+eRjRj3/vz4vtGkQzSzeOzuQn7y8evdUM8Jw4vSLj3b2pN5t4YpAfSxmiZdPB2N15 ewWMTNYDiGYXfdaoyVbDUfpZd2yefik0iZg6GaSClqOpUIAIFGu7778bM1H7McCe2abcceW4yap 5vxTGvAQgUNtW9GKe9DHB2jTcnzGh2uzShDU+zgmyiUP2TPeEdR+Y/iMVjKpF5K0NCNT0gnH3jb XmdNP2HCfx4Rqs2ekeg== X-Authority-Analysis: v=2.4 cv=a8E9NESF c=1 sm=1 tr=0 ts=698459eb cx=c_pps a=50t2pK5VMbmlHzFWWp8p/g==:117 a=FpWmc02/iXfjRdCD7H54yg==:17 a=IkcTkHD0fZMA:10 a=HzLeVaNsDn8A:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=VwQbUJbxAAAA:8 a=EUspDBNiAAAA:8 a=LKcR3ohmTCdqcgAtF80A:9 a=QEXdDO2ut3YA:10 a=IoWCM6iH3mJn3m4BftBB:22 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.51,FMLib:17.12.100.49 definitions=2026-02-05_01,2026-02-05_01,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 impostorscore=0 phishscore=0 priorityscore=1501 bulkscore=0 malwarescore=0 spamscore=0 adultscore=0 lowpriorityscore=0 suspectscore=0 clxscore=1015 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2601150000 definitions=main-2602050063 On 2/5/26 9:50 AM, Konrad Dybcio wrote: > On 2/5/26 8:06 AM, Manivannan Sadhasivam wrote: >> In the recent times, devicetree started to represent the PCI Host bridge >> supplies like PHY in the Root Port nodes as seen in commit 38fcbfbd4207 >> ("dt-bindings: PCI: qcom: Move PHY & reset GPIO to Root Port node"). But >> the Host bridge drivers still need to control these supplies as a part of >> their controller initialization/deinitialization sequence. >> >> So the Host bridge drivers end up parsing the Root Port supplies in their >> probe() and controlled them. A downside to this approach is that the >> devlink dependency between the suppliers and Host bridge is completely >> broken. Due to this, the driver core probes the Host bridge drivers even if >> the suppliers are not ready, causing probe deferrals and setup teardowns in >> probe(). >> >> These probe deferrals sometime happen over 1000 times (as reported in Qcom >> Glymur platform) leading to a waste of CPU resources and increase in boot >> time. So to fix these unnecessary deferrals, create devlink between the >> Host bridge and Root Port suppliers in of_fwnode_add_links(). This will >> allow the driver core to probe the Host bridge drivers only when all Root >> Port suppliers are available. >> >> Reported-by: Bjorn Andersson >> Signed-off-by: Manivannan Sadhasivam >> --- > > [...] > > This is not 'required' in bindings and device_type="pci" doesn't uniquely > identify root complexes (as can be seen below).. but I suppose this is the > best delimiter we've got > > Perhaps it could be made 'required'? I cut out the line where it said: if (of_property_present(con_np, "linux,pci-domain")) { Konrad > > Konrad > >> + for_each_available_child_of_node_scoped(con_np, child) { >> + if (of_node_is_type(child, "pci")) { >> + for_each_property_of_node(child, p) >> + of_link_property(child, con_np, p->name); >> + } >> + } >> + } >> >> return 0; >> }