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

From: Vidya Sagar
Date: Tue Jun 08 2021 - 15:33:55 EST


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