On Mon, 18 Oct 2021 at 13:26, Thomas Perrot <thomas.perrot@xxxxxxxxxxx> wrote: > > Hi Loic, > > On Mon, 2021-10-18 at 11:59 +0200, Loic Poulain wrote: > > Hi Aleksander, > > > > On Mon, 18 Oct 2021 at 11:14, Aleksander Morgado > > <aleksander@xxxxxxxxxxxxx> wrote: > > > > > > Hey all, > > > > > > > [ 7.056113] mhi-pci-generic 0000:01:00.0: MHI PCI device found: > > > > sierra-em919x > > > > [ 7.063298] mhi-pci-generic 0000:01:00.0: BAR 0: assigned [mem > > > > 0x600000000-0x600000fff 64bit] > > > > [ 7.071846] mhi-pci-generic 0000:01:00.0: enabling device (0000 > > > > -> 0002) > > > > [ 7.078671] mhi-pci-generic 0000:01:00.0: using shared MSI > > > > > > In this specific setup we request 4 MSI vectors through > > > pci_alloc_irq_vectors(), but only end up allocating a single one > > > (i.e. > > > mhi_cntrl->nr_irqs = 1). Could that be related to the problem > > > somehow? > > > > It shouldn't, we have the 'shared IRQ' fallback which is used when we > > can not setup multiple MSI, and this works with other SDX55 based > > modems. > > > > Compared to other SDX55 based modems, EM919x uses the same event ring > for the control, the data and the diag, and we use the macro > MHI_EVENT_CONFIG_CTRL to configure it. > - Perhaps this macro is not suitable in this case? Well it should work, but it's usually better to have a dedicated event ring for non-control stuff. The number of event ring is normally driven by the host, is it a limitation with EM919X? What is done in the downstream driver? > - Could this be explaining, what are we observing? Hmm, as I said device should follow what the host is configuring in terms of event rings, but maybe in your case a specific configuration is expected, so it would be nice to double check with what is done in the downstream driver. As well, do you have any way to access the serial/debug console of the EM919X? > Moreover, we have voluntarily reduced the number of shared MSI vectors > to one, on a platform able to provide enough, then we observe the same > kind of issues, as on i.MX6DL which end up allocating a single one. > However, we carried out this test only with the vendor driver. You mean the same initialization issue? Regards, Loic