forked from Imagelibrary/rtems
doxygen: score: adjust doc in schedulerpriorityaffinitysmp.h to doxygen guidelines
Update #3706.
This commit is contained in:
committed by
Sebastian Huber
parent
08901bf182
commit
263fa5efb5
@@ -34,6 +34,8 @@ extern "C" {
|
|||||||
*
|
*
|
||||||
* @ingroup RTEMSScoreSchedulerPrioritySMP
|
* @ingroup RTEMSScoreSchedulerPrioritySMP
|
||||||
*
|
*
|
||||||
|
* @brief Deterministic Priority Affinity SMP Scheduler
|
||||||
|
*
|
||||||
* This is an extension of the Deterministic Priority SMP Scheduler. which
|
* This is an extension of the Deterministic Priority SMP Scheduler. which
|
||||||
* is an implementation of the global fixed priority scheduler (G-FP).
|
* is an implementation of the global fixed priority scheduler (G-FP).
|
||||||
* It adds thread to core affinity support.
|
* It adds thread to core affinity support.
|
||||||
@@ -75,15 +77,15 @@ extern "C" {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Initializes per thread scheduler information
|
* @brief Initializes per thread scheduler information.
|
||||||
*
|
*
|
||||||
* This routine allocates @a thread->scheduler.
|
* This routine allocates @a thread->scheduler.
|
||||||
*
|
*
|
||||||
* @param[in] scheduler points to the scheduler specific information.
|
* @param scheduler Points to the scheduler specific information.
|
||||||
* @param[in] node is the node the scheduler is allocating
|
* @param[in, out] node The node the scheduler is allocating
|
||||||
* management memory for.
|
* management memory for.
|
||||||
* @param[in] the_thread the thread of the node.
|
* @param the_thread The thread of the node.
|
||||||
* @param[in] priority is the thread priority.
|
* @param priority The thread priority.
|
||||||
*/
|
*/
|
||||||
void _Scheduler_priority_affinity_SMP_Node_initialize(
|
void _Scheduler_priority_affinity_SMP_Node_initialize(
|
||||||
const Scheduler_Control *scheduler,
|
const Scheduler_Control *scheduler,
|
||||||
@@ -92,36 +94,84 @@ void _Scheduler_priority_affinity_SMP_Node_initialize(
|
|||||||
Priority_Control priority
|
Priority_Control priority
|
||||||
);
|
);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Blocks a thread.
|
||||||
|
*
|
||||||
|
* @param scheduler The scheduler instance.
|
||||||
|
* @param[in, out] The thread to block.
|
||||||
|
* @param[in, out] node The scheduler node of the thread.
|
||||||
|
*/
|
||||||
void _Scheduler_priority_affinity_SMP_Block(
|
void _Scheduler_priority_affinity_SMP_Block(
|
||||||
const Scheduler_Control *scheduler,
|
const Scheduler_Control *scheduler,
|
||||||
Thread_Control *thread,
|
Thread_Control *thread,
|
||||||
Scheduler_Node *node
|
Scheduler_Node *node
|
||||||
);
|
);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Unblocks a thread.
|
||||||
|
*
|
||||||
|
* @param scheduler The scheduler instance.
|
||||||
|
* @param[in, out] The thread to unblock.
|
||||||
|
* @param[in, out] node The scheduler node of the thread.
|
||||||
|
*/
|
||||||
void _Scheduler_priority_affinity_SMP_Unblock(
|
void _Scheduler_priority_affinity_SMP_Unblock(
|
||||||
const Scheduler_Control *scheduler,
|
const Scheduler_Control *scheduler,
|
||||||
Thread_Control *thread,
|
Thread_Control *thread,
|
||||||
Scheduler_Node *node
|
Scheduler_Node *node
|
||||||
);
|
);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Updates the priority of the node.
|
||||||
|
*
|
||||||
|
* @param scheduler The scheduler instance.
|
||||||
|
* @param the_thread The thread of the node.
|
||||||
|
* @param[in, out] The node to update the priority of.
|
||||||
|
*/
|
||||||
void _Scheduler_priority_affinity_SMP_Update_priority(
|
void _Scheduler_priority_affinity_SMP_Update_priority(
|
||||||
const Scheduler_Control *scheduler,
|
const Scheduler_Control *scheduler,
|
||||||
Thread_Control *the_thread,
|
Thread_Control *the_thread,
|
||||||
Scheduler_Node *node
|
Scheduler_Node *node
|
||||||
);
|
);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Asks for help.
|
||||||
|
*
|
||||||
|
* @param scheduler The scheduler instance to ask for help.
|
||||||
|
* @param the_thread The thread needing help.
|
||||||
|
* @param node The scheduler node.
|
||||||
|
*
|
||||||
|
* @retval true Ask for help was successful.
|
||||||
|
* @retval false Ask for help was not successful.
|
||||||
|
*/
|
||||||
bool _Scheduler_priority_affinity_SMP_Ask_for_help(
|
bool _Scheduler_priority_affinity_SMP_Ask_for_help(
|
||||||
const Scheduler_Control *scheduler,
|
const Scheduler_Control *scheduler,
|
||||||
Thread_Control *the_thread,
|
Thread_Control *the_thread,
|
||||||
Scheduler_Node *node
|
Scheduler_Node *node
|
||||||
);
|
);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Reconsiders help.
|
||||||
|
*
|
||||||
|
* @param scheduler The scheduler instance to reconsider the help
|
||||||
|
* request.
|
||||||
|
* @param the_thread The thread reconsidering a help request.
|
||||||
|
* @param node The scheduler node.
|
||||||
|
*/
|
||||||
void _Scheduler_priority_affinity_SMP_Reconsider_help_request(
|
void _Scheduler_priority_affinity_SMP_Reconsider_help_request(
|
||||||
const Scheduler_Control *scheduler,
|
const Scheduler_Control *scheduler,
|
||||||
Thread_Control *the_thread,
|
Thread_Control *the_thread,
|
||||||
Scheduler_Node *node
|
Scheduler_Node *node
|
||||||
);
|
);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Withdraws node.
|
||||||
|
*
|
||||||
|
* @param scheduler The scheduler instance to withdraw the node.
|
||||||
|
* @param the_thread The thread using the node.
|
||||||
|
* @param node The scheduler node to withdraw.
|
||||||
|
* @param next_state The next thread scheduler state in the case the node is
|
||||||
|
* scheduled.
|
||||||
|
*/
|
||||||
void _Scheduler_priority_affinity_SMP_Withdraw_node(
|
void _Scheduler_priority_affinity_SMP_Withdraw_node(
|
||||||
const Scheduler_Control *scheduler,
|
const Scheduler_Control *scheduler,
|
||||||
Thread_Control *the_thread,
|
Thread_Control *the_thread,
|
||||||
@@ -129,22 +179,37 @@ void _Scheduler_priority_affinity_SMP_Withdraw_node(
|
|||||||
Thread_Scheduler_state next_state
|
Thread_Scheduler_state next_state
|
||||||
);
|
);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Adds @a idle to @a scheduler.
|
||||||
|
*
|
||||||
|
* @param[in, out] scheduler The scheduler instance to add the processor to.
|
||||||
|
* @param idle The idle thread control.
|
||||||
|
*/
|
||||||
void _Scheduler_priority_affinity_SMP_Add_processor(
|
void _Scheduler_priority_affinity_SMP_Add_processor(
|
||||||
const Scheduler_Control *scheduler,
|
const Scheduler_Control *scheduler,
|
||||||
Thread_Control *idle
|
Thread_Control *idle
|
||||||
);
|
);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Removes an idle thread from the given cpu.
|
||||||
|
*
|
||||||
|
* @param scheduler The scheduler instance.
|
||||||
|
* @param cpu The cpu control to remove from @a scheduler.
|
||||||
|
*
|
||||||
|
* @return The idle thread of the processor.
|
||||||
|
*/
|
||||||
Thread_Control *_Scheduler_priority_affinity_SMP_Remove_processor(
|
Thread_Control *_Scheduler_priority_affinity_SMP_Remove_processor(
|
||||||
const Scheduler_Control *scheduler,
|
const Scheduler_Control *scheduler,
|
||||||
struct Per_CPU_Control *cpu
|
struct Per_CPU_Control *cpu
|
||||||
);
|
);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Set affinity for the priority affinity SMP scheduler.
|
* @brief Sets affinity for the priority affinity SMP scheduler.
|
||||||
*
|
*
|
||||||
* @param[in] scheduler The scheduler of the thread.
|
* @param scheduler The scheduler of the thread.
|
||||||
* @param[in] thread The associated thread.
|
* @param[in, out] thread The associated thread.
|
||||||
* @param[in] affinity The new affinity set.
|
* @param[in, out] node The scheduler node.
|
||||||
|
* @param affinity The new affinity set.
|
||||||
*
|
*
|
||||||
* @retval true if successful
|
* @retval true if successful
|
||||||
* @retval false if unsuccessful
|
* @retval false if unsuccessful
|
||||||
|
|||||||
Reference in New Issue
Block a user