This is an automated email from the ASF dual-hosted git repository.

michallenc pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/nuttx.git

commit e91d08f811cef625f1064ad452fbe21c79341279
Author: yangao1 <[email protected]>
AuthorDate: Mon Dec 30 20:28:14 2024 +0800

    drivers/rpmsg: add rpmsg_initialize()
    
    Add a one-time initialization hook for the rpmsg framework, called from
    drivers_initialize() when CONFIG_RPMSG is enabled, so that framework
    wide facilities such as the trace and procfs support added next have a
    place to set themselves up before any rpmsg device registers.
    
    Signed-off-by: yangao1 <[email protected]>
    Signed-off-by: Bowen Wang <[email protected]>
---
 drivers/drivers_initialize.c | 5 +++++
 drivers/rpmsg/rpmsg.c        | 4 ++++
 include/nuttx/rpmsg/rpmsg.h  | 2 ++
 3 files changed, 11 insertions(+)

diff --git a/drivers/drivers_initialize.c b/drivers/drivers_initialize.c
index 3f65c763705..4f3200d2687 100644
--- a/drivers/drivers_initialize.c
+++ b/drivers/drivers_initialize.c
@@ -45,6 +45,7 @@
 #include <nuttx/power/pm.h>
 #include <nuttx/power/regulator.h>
 #include <nuttx/reset/reset-controller.h>
+#include <nuttx/rpmsg/rpmsg.h>
 #include <nuttx/segger/rtt.h>
 #include <nuttx/sensors/sensor.h>
 #include <nuttx/serial/pty.h>
@@ -163,6 +164,10 @@ void drivers_initialize(void)
   note_initialize();    /* Non-standard /dev/note */
 #endif
 
+#if defined(CONFIG_RPMSG)
+  rpmsg_initialize();
+#endif
+
 #if defined(CONFIG_CLK_RPMSG)
   clk_rpmsg_server_initialize();
 #endif
diff --git a/drivers/rpmsg/rpmsg.c b/drivers/rpmsg/rpmsg.c
index 492fcad427d..54d452e36d1 100644
--- a/drivers/rpmsg/rpmsg.c
+++ b/drivers/rpmsg/rpmsg.c
@@ -165,6 +165,10 @@ static int rpmsg_dev_ioctl(FAR struct file *filep, int cmd,
  * Public Functions
  ****************************************************************************/
 
+void rpmsg_initialize(void)
+{
+}
+
 int rpmsg_wait(FAR struct rpmsg_endpoint *ept, FAR sem_t *sem)
 {
   FAR struct rpmsg_s *rpmsg;
diff --git a/include/nuttx/rpmsg/rpmsg.h b/include/nuttx/rpmsg/rpmsg.h
index e530cad541c..6aa96baccc3 100644
--- a/include/nuttx/rpmsg/rpmsg.h
+++ b/include/nuttx/rpmsg/rpmsg.h
@@ -85,6 +85,8 @@ extern "C"
 {
 #endif
 
+void rpmsg_initialize(void);
+
 int rpmsg_wait(FAR struct rpmsg_endpoint *ept, FAR sem_t *sem);
 int rpmsg_post(FAR struct rpmsg_endpoint *ept, FAR sem_t *sem);
 

Reply via email to