From f6ff28ad8eb5e88a1985706bfc94657704e9c3f4 Mon Sep 17 00:00:00 2001 From: Christian Cunningham Date: Tue, 22 Mar 2022 23:50:57 -0700 Subject: Make arbitrary amounts of priorities Without affecting maximum static thread count --- include/sys/schedule.h | 6 +++--- src/cpu/irq.c | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/include/sys/schedule.h b/include/sys/schedule.h index cfb4813..1e3b0d7 100644 --- a/include/sys/schedule.h +++ b/include/sys/schedule.h @@ -2,10 +2,10 @@ #define SYS_SCHEDULE_H #include -#define TQUEUE_MAX 0x400 +#define TQUEUE_MAX 0x2000 #define STACK_SIZE 0x4000 -#define PRIORITIES 8 -#define MAX_THREADS TQUEUE_MAX*PRIORITIES +#define PRIORITIES 20 +#define MAX_THREADS TQUEUE_MAX enum ThreadStatus { THREAD_READY = 0, diff --git a/src/cpu/irq.c b/src/cpu/irq.c index 3bd28e6..dcca9e8 100644 --- a/src/cpu/irq.c +++ b/src/cpu/irq.c @@ -49,7 +49,7 @@ unsigned long c_irq_handler(void) //} // Add task to handle the data else { - add_thread(handle_data, (void*)data, 7); + add_thread(handle_data, (void*)data, PRIORITIES-1); return 1; } } -- cgit v1.2.1