1570af302Sopenharmony_ci#include "pthread_impl.h" 2570af302Sopenharmony_ci 3570af302Sopenharmony_ciint pthread_attr_setschedparam(pthread_attr_t *restrict a, const struct sched_param *restrict param) 4570af302Sopenharmony_ci{ 5570af302Sopenharmony_ci#ifdef __LITEOS_A__ 6570af302Sopenharmony_ci if ((a->_a_policy == SCHED_RR || a->_a_policy == SCHED_FIFO) && 7570af302Sopenharmony_ci (param->sched_priority < 0 || param->sched_priority > PTHREAD_PRIORITY_LOWEST)) { 8570af302Sopenharmony_ci return EINVAL; 9570af302Sopenharmony_ci } 10570af302Sopenharmony_ci a->_a_deadline = param->sched_deadline; 11570af302Sopenharmony_ci a->_a_period = param->sched_period; 12570af302Sopenharmony_ci#endif 13570af302Sopenharmony_ci a->_a_prio = param->sched_priority; 14570af302Sopenharmony_ci return 0; 15570af302Sopenharmony_ci} 16