Hello All, This series adds deferred probe functionality in the TI's Remoteproc drivers. The remoteproc drivers are dependent on the omap-mailbox driver for mbox functionalities. Sometimes, the remoteproc driver could be probed before the mailbox driver leading to rproc boot failures. Thus, defer the probe routine of remoteproc drivers until mailbox driver is probed by checking the mbox_request_channel handle in probe. Also, use the acquired mbox handle in probe during rproc start/attach routine instead of re-requesting. Do not free mbox handle during stop/detach routine or error paths. This makes our k3_rproc_attach() & k3_rproc_detach() functions NOP. Also, use the devm_rproc_alloc() helper to automatically free created rprocs incase of a probe defer. v4: Changelog: * Andrew 1) Removed "Fixes:" tag in PATCH 01 and PATCH 02 of series as these are improvements. 2) Removed NULL assignment to core->rproc to avoid possible nullptr dereference while checking core state at a later stage. Link to v3: https://lore.kernel.org/all/20240807062256.1721682-1-b-padhi@xxxxxx/ v3: Changelog: 1) Added a check in k3_mbox_kick() to prevent sending messages to a detached core. 2) Added "Fixes:" tag in PATCH 01 and PATCH 02 of series. Link to v2: https://lore.kernel.org/all/20240604051722.3608750-1-b-padhi@xxxxxx/ v2: Changelog: 1) Added a check in k3_mbox_callback() to prevent forwarding messages from a detached core. 2) Addressed Andrew's comments in v1 regarding some cleanup (Using dev_err_probe, removing unused labels, adding matching mbox_free_channel call during device removal). Link to v1: https://lore.kernel.org/all/20240530090737.655054-1-b-padhi@xxxxxx/ Beleswar Padhi (3): remoteproc: k3-r5: Use devm_rproc_alloc() helper remoteproc: k3-r5: Acquire mailbox handle during probe routine remoteproc: k3-dsp: Acquire mailbox handle during probe routine drivers/remoteproc/ti_k3_dsp_remoteproc.c | 80 ++++++++----------- drivers/remoteproc/ti_k3_r5_remoteproc.c | 94 +++++++++-------------- 2 files changed, 65 insertions(+), 109 deletions(-) -- 2.34.1