RE: Query regarding the use of pcie-designware-plat.c file

From: Gustavo Pimentel
Date: Tue Jun 08 2021 - 17:17:15 EST


Hi Vidya,

The pcie-designware-plat.c is the driver for the Synopsys PCIe RC IP
prototype.

-Gustavo

On Tue, Jun 8, 2021 at 20:22:37, Vidya Sagar <vidyas@xxxxxxxxxx> wrote:

> Hi,
> I would like to know what is the use of pcie-designware-plat.c file.
> This looks like a skeleton file and can't really work with any specific
> hardware as such.
> Some context for this mail thread is, if the config CONFIG_PCIE_DW_PLAT
> is enabled in a system where a Synopsys DesignWare IP based PCIe
> controller is present and its configuration is enabled (Ex:- Tegra194
> system with CONFIG_PCIE_TEGRA194_HOST enabled), then, it can so happen
> that the probe of pcie-designware-plat.c called first (because all DWC
> based PCIe controller nodes have "snps,dw-pcie" compatibility string)
> and can crash the system.
> One solution to this issue is to remove the "snps,dw-pcie" from the
> compatibility string (as was done through the commit f9f711efd441
> ("arm64: tegra: Fix Tegra194 PCIe compatible string") but it seems like
> a localized fix for Tegra194 where the issue potentially is global, as
> in, the crash can happen on any platform.
> So, wondering if the config option CONFIG_PCIE_DW_PLAT can be removed
> altogether for pcie-designware-plat.c?
>
> Thanks,
> Vidya Sagar