AnsweredAssumed Answered

Does each PCIe driver require its own DTS file?

Question asked by Tracy Smith on Feb 27, 2017


1. Can a new PCIe driver for an FPGA use the default DTS file for the PCIe node in the fls-ls1043a.dtsi without modification and should it be expected to successfully initialize and probe using the default PCIe DTS file?


2. If modifications are required, what modification might be required to allow successful initialization/probing?


3. If a PCIe driver is unable to probe, what might be the cause? 


On Ubuntu 14.04 the driver is able to initialize and probe with no issues, but fails to probe on the LS1043ardb with SDK 2.0 when integrated into the yocto environment. A configuration issue seems to be preventing initialization.  Either a kernel configuration or DTS issue.


4. Any documentation discussing how to set up the configuration for a new PCIe driver in SDK 2.0?


If it is not probing or initializing correctly, it may be due to the dts entries or a kernel configuration not enabled. 


  • DTS file, you can check the PCIe node in fsl-ls1043a.dtsi
    • arch/arm64/boot/dts/freescale/fsl-ls1043a.dtsi
    • arch/arm64/boot/dts/freescale/fsl-ls1043a-rdb.dts
  • PCIe driver code:
    • drivers/pci/host/pci-layerscape.c
  • PCIe MSI code:
    • drivers/irqchip/irq-ls1-msi.c


Also see