Hi,
First of all, please ignore this email if you are NOT a Marvell's
MACCHIATOBin user.
If you are, I hope you can help me :)
I'm trying to install a NIC card into a PCIe slot on MACCHIATOBin DoubleSlot,
but the kernel hangs up during the boot. What I found out so far is
scanning a PCIe bus and initializing the controller or the device
may have caused this error. When I trace the kernel execution by
inserting debug messages, access to a control register on PCIe controller
has caused a CPU to stall forever:
=== details ===
armada8k_pcie_probe()
armada8k_add_pcie_port()
dw_pcie_host_init()
dw_pcie_host_init()
dw_pcie_setup_rc()
dw_pcie_dbi_ro_wr_en() -- inline
reg = PCIE_MISC_CONTROL_1_OFF;
val = dw_pcie_readl_dbi(pci, reg) <= here
=== ===
The same code, the same kernel, does work without any errors
if a given NIC card (Intel i225) is not inserted in a slot.
My current environment is:
TF-A: mainline v2.7
SCP_BL2: HEAD of https://github.com/MarvellEmbeddedProcessors/binaries-marvell.git
mv-ddr: HEAD of https://github.com/MarvellEmbeddedProcessors/mv-ddr-marvell.git
U-Boot: u-boot-2020.10-release of https://github.com/MarvellEmbeddedProcessors/u-boot-marvell.git
OS: Debian 11 with the kernel v5.17 (from unstable release)
(but the problem exists even with v5.10 of bullseye.)
So I would like to ask you,
1) Have you ever seen this sort of error in your experience?
2) If possible, please try to use a PCIe card on your board.
3) Then, please let me know your result along with your environment
(software that you are using)
Will be much appreciated.
-Takahiro Akashi