The way I see this, this issue is happening because of a much bigger design constraint. On integrated(modem+wifi) solutions, if remote proc service is shutdown, it has a trickle down effect. It deinitializes the modem processor (which controls wifi as its subsystem) and the wifi FW. As the fw de-initializes, we see the Delete server generated by the wifi FW. The FW generates delete server qmi event and there is no way on the host wifi driver to differentiate between delete event generated from a FW crash and de-initialization due to remoteproc and so we see the FW crash logs even during shutdown. I would like to know what are Qualcomm's views on the design constraint and any plans to reduce the rigidity. Also, will the FW broadcast other qmi events(QRTR_TYPE_BYE for e.g.) during shutdown (different from crash) ? If so then we can utilize that event and then we don't even have to add dependency on remoteproc. Overall this change should fix the issue, additionally I have one comment below and would like other reviewers views. > #include <linux/regulator/consumer.h> > +#include <linux/remoteproc/qcom_rproc.h> > #include <linux/of_address.h> We are adding an external dependency here but since this is added in snoc.c (which is for integrated solution only), I can expect if SNOC is enabled, remote proc will be enabled as well, so it should be fine. Reviewed-by: Abhishek Kumar <kuabhs@xxxxxxxxxxxx> On Tue, Sep 7, 2021 at 12:48 PM Stephen Boyd <swboyd@xxxxxxxxxxxx> wrote: > > Quoting Matthias Kaehlcke (2021-09-07 12:32:59) > > On Sun, Sep 05, 2021 at 02:04:00PM -0700, Stephen Boyd wrote: > > > @@ -1740,10 +1805,19 @@ static int ath10k_snoc_probe(struct platform_device *pdev) > > > goto err_fw_deinit; > > > } > > > > > > + ret = ath10k_modem_init(ar); > > > + if (ret) { > > > + ath10k_err(ar, "failed to initialize modem notifier: %d\n", ret); > > > > nit: ath10k_modem_init() encapsulates/hides the setup of the notifier, > > the error message should be inside the function, as for _deinit() > > Sure. I can fix it. I was also wondering if I should drop the debug > prints for the cases that don't matter in the switch statement but I'll > just leave that alone unless someone complains about it.