From 34989b4a036f9e9ba5c1e27ebe06774ee94fbe3c Mon Sep 17 00:00:00 2001 From: Cong Zhang Date: Wed, 1 Jun 2022 16:16:55 +0800 Subject: [PATCH] gunyah: gh_rm_drv: Add error return if RM device is not ready Some driver may probe before RM driver, so we need return probe defer to let these driver use RM call after RM device is ready. Change-Id: I65cf5eab7b99ca2a58c32f2d83794a210350fb05 Signed-off-by: Cong Zhang --- drivers/virt/gunyah/gh_rm_core.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/drivers/virt/gunyah/gh_rm_core.c b/drivers/virt/gunyah/gh_rm_core.c index 3b878293e875..12ba74a3895e 100644 --- a/drivers/virt/gunyah/gh_rm_core.c +++ b/drivers/virt/gunyah/gh_rm_core.c @@ -602,6 +602,12 @@ static int gh_rm_send_request(u32 message_id, void *send_buff; int i, ret; + /* Drivers need probe defer + * when do RM call before RM driver initialized + */ + if (gh_rm_msgq_desc == NULL) + return -EPROBE_DEFER; + num_fragments = (req_buff_size + GH_RM_MAX_MSG_SIZE_BYTES - 1) / GH_RM_MAX_MSG_SIZE_BYTES;