On Tue, Aug 22, 2023 at 05:12:55PM +0300, Daniel Baluta wrote: > Hi Mathieu, S.J, > > Any comments about this? > All the questions raised below have been answered in my exchange with Iuliana, but I will complement herein. > I feel that the Linux kernel driver shouldn't enforce the policy of > waiting for a reply or confirmation that the firmware booted. > The protocol enacted between a remote processor and the host is very platform dependent. The need to wait for a reply in the IMX DSP driver predates my time as maintainer of this subsystem and as such can't comment on the reasons it was introduced. That said I am very disappointed by the complete silence from S.J and the rest of the people on the linux-imx mailing list regarding this issue. > The Linux kernel driver should offer a mechanism for checking this and > the policy should be set either in userspace or via dts. > This has already been discussed. Adapting the Linux kernel driver for all the protocols that can be enacted by remote processors doesn't scale. This is something that needs to happen in the FW and Iuliana's approach in [1] is appropriate. I think the pushback is caused by a lack of understanding of the problem by the maintainers. [1]. https://github.com/zephyrproject-rtos/zephyr/pull/61709 > First option would be to have an ioctl but we need to also mirror this > in the sysfs interface. Second option would be to have a property in > the dts. > > What do you think? > > We are trying to fix this in the firmware side: > > https://github.com/zephyrproject-rtos/zephyr/pull/61709 > > but we are getting some setbacks there too. > > > Daniel. > > On Wed, Jul 26, 2023 at 11:26 AM Daniel Baluta <daniel.baluta@xxxxxxxxx> wrote: > > > > Hello all, > > > > I want to start this thread in order to clarify what assumptions a > > remoteproc driver is able to make > > about a firmware loaded on a remote processor. > > > > Discussion is generated by this thread: > > > > [1] https://www.spinics.net/lists/kernel/msg4857733.html > > > > imx_dsp_rproc driver assumes that the remote firmware will send a > > notification once it has booted up and this is the default behavior. > > > > This doesn't work well with Zephyr samples which do not send such notification! > > > > I want to get an agreement for the following questions: > > > > 1) What should be the default behavior of a remote proc driver? > > > > In my opinion it should not make any assumption about the remote part. > > Thus by default the driver should not wait for any message! > > > > 2) How can we support various "protocols" of starting up. Eg (wait for > > firmware / no wait for firmware). > > > > In patch [1] Iulia proposed to add a flag that will select the correct > > behavior. As per Mathieu's comments this doesn't > > scale up, for next flags. > > > > How can we solve this? In my opinion using a kernel module parameter > > OR a device tree property should be enough. > > > > What do you think? > > > > thanks, > > Daniel.