maa: add maa_set_priority call
Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
This commit is contained in:
11
api/maa.h
11
api/maa.h
@@ -195,6 +195,17 @@ maa_result_t maa_init() __attribute__((constructor));
|
||||
maa_result_t maa_init();
|
||||
#endif
|
||||
|
||||
/**
|
||||
* This function attempts to set the maa process to a given priority and the
|
||||
* scheduler to SCHED_RR. Highest * priority is typically 99 and minimum is 0.
|
||||
* This function * will set to MAX if * priority is > MAX. Function will return
|
||||
* -1 on failure.
|
||||
|
||||
* @param priority Value from typically 0 to 99
|
||||
* @return The priority value set
|
||||
*/
|
||||
int maa_set_priority(const unsigned int priority);
|
||||
|
||||
/** Get the version string of maa autogenerated from git tag
|
||||
*
|
||||
* The version returned may not be what is expected however it is a reliable
|
||||
|
||||
18
src/maa.c
18
src/maa.c
@@ -25,6 +25,8 @@
|
||||
|
||||
#include <stddef.h>
|
||||
#include <stdlib.h>
|
||||
#include <sched.h>
|
||||
#include <string.h>
|
||||
|
||||
#include "maa.h"
|
||||
#include "maa_internal.h"
|
||||
@@ -65,6 +67,22 @@ maa_init()
|
||||
return MAA_SUCCESS;
|
||||
}
|
||||
|
||||
int
|
||||
maa_set_priority(const unsigned int priority)
|
||||
{
|
||||
struct sched_param sched_s;
|
||||
|
||||
memset(&sched_s, 0, sizeof(struct sched_param));
|
||||
if (priority > sched_get_priority_max(SCHED_RR)) {
|
||||
sched_s.sched_priority = sched_get_priority_max(SCHED_RR);
|
||||
}
|
||||
else {
|
||||
sched_s.sched_priority = priority;
|
||||
}
|
||||
|
||||
return sched_setscheduler(0, SCHED_RR, &sched_s);
|
||||
}
|
||||
|
||||
static maa_result_t
|
||||
maa_setup_mux_mapped(maa_pin_t meta)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user