quoted
quoted
+
+static int __init hisi_pcie_init(void)
+{
+ return platform_driver_probe(&hisi_pcie_driver, hisi_pcie_probe);
+}
+subsys_initcall(hisi_pcie_init);
Can you use module_platform_driver() or module_platform_driver_probe()
here instead of the subsys_initcall()? No, I don't really know what
the difference between module_platform_driver() and
module_platform_driver_probe() is, sorry :)
In fact, I used module_platform_driver_probe in previous version, but
A PCIe VGA card of HiSilicon will use Hip05 PCIe host, so we modified
module_platform_driver_probe to subsys_initcall which will be called
before module_platform_driver_probe.
We will upstream the driver of above PCIe VGA card soon.
Many thanks for your reviewing,
Zhou
Hi Bjorn, firstly many thanks for looking at this.
About this last bit the reason why we use subsys_initcall() is that
our host bridge is embedded in the SoC and as such is not hot-pluggable
for instance see:
http://lxr.free-electrons.com/source/Documentation/driver-model/platform.txt#L59
Our approach is also used by Exynos:
http://lxr.free-electrons.com/source/drivers/pci/host/pci-exynos.c#L644
Cheers
Gab
quoted
Bjorn
.