[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <b777ab31-e0b9-bbc0-9631-72b93097919e@samsung.com>
Date: Tue, 30 Mar 2021 09:51:18 +0200
From: Marek Szyprowski <m.szyprowski@...sung.com>
To: Bjorn Helgaas <helgaas@...nel.org>
Cc: Zhiqiang Hou <Zhiqiang.Hou@....com>, linux-kernel@...r.kernel.org,
linux-pci@...r.kernel.org, lorenzo.pieralisi@....com,
robh@...nel.org, bhelgaas@...gle.com,
gustavo.pimentel@...opsys.com, jingoohan1@...il.com,
정재훈 <jh80.chung@...sung.com>
Subject: Re: [PATCH] PCI: dwc: Move forward the iATU detection process
On 26.03.2021 18:05, Marek Szyprowski wrote:
> On 25.03.2021 21:19, Bjorn Helgaas wrote:
>> On Thu, Mar 25, 2021 at 10:24:28AM +0100, Marek Szyprowski wrote:
>>> On 25.01.2021 05:48, Zhiqiang Hou wrote:
>>>> From: Hou Zhiqiang <Zhiqiang.Hou@....com>
>>>>
>>>> In the dw_pcie_ep_init(), it depends on the detected iATU region
>>>> numbers to allocate the in/outbound window management bit map.
>>>> It fails after the commit 281f1f99cf3a ("PCI: dwc: Detect number
>>>> of iATU windows").
>>>>
>>>> So this patch move the iATU region detection into a new function,
>>>> move forward the detection to the very beginning of functions
>>>> dw_pcie_host_init() and dw_pcie_ep_init(). And also remove it
>>>> from the dw_pcie_setup(), since it's more like a software
>>>> perspective initialization step than hardware setup.
>>>>
>>>> Fixes: 281f1f99cf3a ("PCI: dwc: Detect number of iATU windows")
>>>> Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@....com>
>>> This patch causes exynos-pcie to hang during the initialization. It
>>> looks that some resources are not enabled yet, so calling
>>> dw_pcie_iatu_detect() much earlier causes a hang. When I have some
>>> time,
>>> I will try to identify what is needed to call it properly.
>> Thanks, I dropped it for now. We can add it back after we figure out
>> what the exynos issue is.
> Thanks, I will try to identify at which point of initialization it is
> safe to call iATU region detection.
I've just checked and it is enough to move the
dw_pcie_iatu_detect(pci);
after
pp->ops->host_init(pp);
in dw_pcie_host_init() to fix driver operation on Exynos SoCs with the
$subject patch applied.
Best regards
--
Marek Szyprowski, PhD
Samsung R&D Institute Poland
Powered by blists - more mailing lists