Bjorn, On Sun, 11 Oct 2015 14:10:27 -0500, Bjorn Helgaas wrote: > > driver/of/irq.c void of_msi_configure(struct device *dev, struct > > device_node *np) will bind "msi-parent" to each device if there is > > "msi-parent" handler. The PCIe driver do not need to do anything. If > > we do not check "msi-parent" here, we will have no chance to check it. > > The common code of 'of' and 'pci' bus driver will not complain, > > because the msi controller may be found by other way. > > Hmm. In mvebu_pcie_msi_enable() and xgene_pcie_msi_enable(), we > also look for "msi-parent". If that fails, mvebu continues silently > and xgene complains (but only if CONFIG_PCI_MSI=y). I don't really have the context of the discussion here. But the reason why the mvebu pcie driver silently continues if msi-parent is missing is because we initially introduced the PCIe mvebu Device Tree binding without MSI support. When we later added MSI support thanks to the msi-parent property, we wanted to preserve backward compatibility with old DTs that didn't had the msi-parent property. Such DTs would continue to work, albeit without the MSI functionality obviously. Other drivers that had the MSI functionality from day 1 may want to make such a property mandatory rather than optional. Best regards, Thomas -- Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com -- To unsubscribe from this list: send the line "unsubscribe linux-pci" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html