serial/uart_rpmsg: should init the lock before call rpmsg_register_callback
To avoid init the lock after this lock has been used.
Signed-off-by: Bowen Wang <wangbowen6@xiaomi.com>
diff --git a/drivers/serial/uart_rpmsg.c b/drivers/serial/uart_rpmsg.c
index 303ebf8..a3e9e7a 100644
--- a/drivers/serial/uart_rpmsg.c
+++ b/drivers/serial/uart_rpmsg.c
@@ -444,6 +444,7 @@
goto fail;
}
+ nxmutex_init(&priv->lock);
priv->cpuname = cpuname;
priv->devname = devname;
@@ -456,10 +457,10 @@
NULL);
if (ret < 0)
{
+ nxmutex_destroy(&priv->lock);
goto fail;
}
- nxmutex_init(&priv->lock);
snprintf(dev_name, sizeof(dev_name), "%s%s",
UART_RPMSG_DEV_PREFIX, devname);
uart_register(dev_name, dev);