Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 2 additions & 3 deletions include/rtdef.h
Original file line number Diff line number Diff line change
Expand Up @@ -591,10 +591,9 @@ typedef void (*rt_sighandler_t)(int signo);

/**
* @addtogroup group_thread_management
* @{
*/

/**@{*/

/*
* Thread
*/
Expand Down Expand Up @@ -955,7 +954,7 @@ typedef struct rt_thread *rt_thread_t;
#define LWP_IS_USER_MODE(t) (0)
#endif /* RT_USING_SMART */

/**@}*/
/** @} group_thread_management */

/**
* @addtogroup group_thread_comm
Expand Down
24 changes: 6 additions & 18 deletions include/rtthread.h
Original file line number Diff line number Diff line change
Expand Up @@ -131,11 +131,6 @@ void rt_timer_exit_sethook(void (*hook)(struct rt_timer *timer));

/**@}*/

/**
* @addtogroup group_thread_management
* @{
*/

/*
* thread interface
*/
Expand Down Expand Up @@ -187,6 +182,8 @@ void rt_thread_suspend_sethook(void (*hook)(rt_thread_t thread));
void rt_thread_resume_sethook (void (*hook)(rt_thread_t thread));

/**
* @ingroup group_thread_management
*
* @brief Sets a hook function when a thread is initialized.
*
* @param thread is the target thread that initializing
Expand All @@ -201,11 +198,12 @@ RT_OBJECT_HOOKLIST_DECLARE(rt_thread_inited_hookproto_t, rt_thread_inited);
*/
void rt_thread_idle_init(void);
#if defined(RT_USING_HOOK) || defined(RT_USING_IDLE_HOOK)
// FIXME: Have to write doxygen comment here for rt_thread_idle_sethook/rt_thread_idle_delhook
// FIXME: Have to write doxygen comment here for rt_thread_idle_sethook
// but not in src/idle.c. Because the `rt_align(RT_ALIGN_SIZE)` in src/idle.c
// will make wierd output for html document generation, i.e. can not generate
// function link to rt_thread_idle_sethook, while function link to rt_thread_idle_delhook is ok.
// will make doxygen building failed.
/**
* @ingroup group_thread_management
*
* @brief This function sets a hook function to idle thread loop. When the system performs
* idle loop, this hook function should be invoked.
*
Expand All @@ -217,14 +215,6 @@ void rt_thread_idle_init(void);
* @note the hook function must be simple and never be blocked or suspend.
*/
rt_err_t rt_thread_idle_sethook(void (*hook)(void));
/**
* @brief delete the idle hook on hook list.
*
* @param hook the specified hook function.
*
* @return `RT_EOK`: delete OK.
* `-RT_ENOSYS`: hook was not found.
*/
rt_err_t rt_thread_idle_delhook(void (*hook)(void));
#endif /* defined(RT_USING_HOOK) || defined(RT_USING_IDLE_HOOK) */
rt_thread_t rt_thread_idle_gethandler(void);
Expand Down Expand Up @@ -265,8 +255,6 @@ void rt_secondary_cpu_entry(void);
void rt_scheduler_ipi_handler(int vector, void *param);
#endif /* RT_USING_SMP */

/**@}*/

/**
* @addtogroup group_signal
* @{
Expand Down
15 changes: 15 additions & 0 deletions src/idle.c
Original file line number Diff line number Diff line change
Expand Up @@ -79,6 +79,19 @@ rt_err_t rt_thread_idle_sethook(void (*hook)(void))
return ret;
}

/**
* @addtogroup group_thread_management
* @{
*/

/**
* @brief delete the idle hook on hook list.
*
* @param hook the specified hook function.
*
* @return `RT_EOK`: delete OK.
* `-RT_ENOSYS`: hook was not found.
*/
rt_err_t rt_thread_idle_delhook(void (*hook)(void))
{
rt_size_t i;
Expand Down Expand Up @@ -198,3 +211,5 @@ rt_thread_t rt_thread_idle_gethandler(void)

return (rt_thread_t)(&idle_thread[id]);
}

/** @} group_thread_management */
2 changes: 1 addition & 1 deletion src/scheduler_mp.c
Original file line number Diff line number Diff line change
Expand Up @@ -1582,7 +1582,7 @@ rt_err_t rt_sched_thread_bind_cpu(struct rt_thread *thread, int cpu)
}

/**
* @}
* @} group_thread_management
*
* @endcond
*/
2 changes: 1 addition & 1 deletion src/scheduler_up.c
Original file line number Diff line number Diff line change
Expand Up @@ -724,7 +724,7 @@ rt_err_t rt_sched_thread_bind_cpu(struct rt_thread *thread, int cpu)
}

/**
* @}
* @} group_thread_management
*
* @endcond
*/
2 changes: 2 additions & 0 deletions src/signal.c
Original file line number Diff line number Diff line change
Expand Up @@ -579,6 +579,8 @@ void rt_thread_free_sig(rt_thread_t tid)
}

/**
* @ingroup group_thread_management
*
* @brief This function can be used to send any signal to any thread.
*
* @param tid is a pointer to the thread that receives the signal.
Expand Down
5 changes: 2 additions & 3 deletions src/thread.c
Original file line number Diff line number Diff line change
Expand Up @@ -294,10 +294,9 @@ static rt_err_t _thread_init(struct rt_thread *thread,

/**
* @addtogroup group_thread_management
* @{
*/

/**@{*/

/**
* @brief This function will initialize a thread. It's used to initialize a
* static thread object.
Expand Down Expand Up @@ -1209,4 +1208,4 @@ rt_err_t rt_thread_get_name(rt_thread_t thread, char *name, rt_uint8_t name_size
}
RTM_EXPORT(rt_thread_get_name);

/**@}*/
/** @} group_thread_management */