Hi Loic, Sorry, I forgot to answer your other questions. On Mon, 2021-10-18 at 16:07 +0200, Thomas Perrot wrote: > Hi, > > On Mon, 2021-10-18 at 14:46 +0200, Loic Poulain wrote: > > 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? > > I asked the question to our Sierra distributor, because it isn't > indicated in the technical documentation that I have, I'm still waiting > for the answer. > > > What is done in the downstream driver? > > As we encountered issues with the generic event ring configuration, I > tried with a configuration equivalent to that of the vendor driver, > that uses the same ring for data, control and diag stuff. > > Best regards, > Thomas > > > > > > - Could this be explaining, what are we observing? > > We observing following things: - Either the kernel spam in loop this error: “mhi_wwan_ctrl mhi0_QMI: "Failed to queue buffer” - Either some command succeed, then timeout, - Received unexpected response or the response to a previous command, - All AT commands seem succeed, - And the firmware is well updated. > > 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? > > Yes, we are also seeing the same initialization issue. Best regards, Thomas > > Regards, > > Loic > -- Thomas Perrot, Bootlin Embedded Linux and kernel engineering https://bootlin.com
Attachment:
signature.asc
Description: This is a digitally signed message part