moves tx_timer_interrupt to threadx port
This commit is contained in:
@@ -1,9 +1,9 @@
|
|||||||
#include "hwtimer.h"
|
#include "hwtimer.h"
|
||||||
|
#include "riscv-traps.h"
|
||||||
#include <stdint.h>
|
#include <stdint.h>
|
||||||
|
#include <stdio.h>
|
||||||
#include <tx_api.h>
|
#include <tx_api.h>
|
||||||
#include <tx_port.h>
|
#include <tx_port.h>
|
||||||
#include <stdio.h>
|
|
||||||
#include "riscv-traps.h"
|
|
||||||
|
|
||||||
#if __riscv_xlen == 64
|
#if __riscv_xlen == 64
|
||||||
#define INTERRUPT_BIT 0x8000000000000000ull
|
#define INTERRUPT_BIT 0x8000000000000000ull
|
||||||
@@ -33,6 +33,9 @@ void trap_handler(uintptr_t mcause, uintptr_t mepc, uintptr_t mtval) {
|
|||||||
unsigned irq_id = mcause&(__riscv_xlen-1);
|
unsigned irq_id = mcause&(__riscv_xlen-1);
|
||||||
switch(irq_id){
|
switch(irq_id){
|
||||||
case RISCV_INT_MTI:
|
case RISCV_INT_MTI:
|
||||||
|
#ifdef NX_DEBUG
|
||||||
|
printf("Timer interrupt being handled (pc=%lx)\n", mepc);
|
||||||
|
#endif
|
||||||
hwtimer_handler();
|
hwtimer_handler();
|
||||||
_tx_timer_interrupt();
|
_tx_timer_interrupt();
|
||||||
break;
|
break;
|
||||||
|
|||||||
@@ -5,7 +5,6 @@ target_sources(${PROJECT_NAME}
|
|||||||
${CMAKE_CURRENT_LIST_DIR}/src/tx_initialize_low_level.S
|
${CMAKE_CURRENT_LIST_DIR}/src/tx_initialize_low_level.S
|
||||||
${CMAKE_CURRENT_LIST_DIR}/src/tx_thread_context_restore.S
|
${CMAKE_CURRENT_LIST_DIR}/src/tx_thread_context_restore.S
|
||||||
${CMAKE_CURRENT_LIST_DIR}/src/tx_thread_context_save.S
|
${CMAKE_CURRENT_LIST_DIR}/src/tx_thread_context_save.S
|
||||||
#${CMAKE_CURRENT_LIST_DIR}/src/tx_thread_interrupt_control.S
|
|
||||||
${CMAKE_CURRENT_LIST_DIR}/src/tx_thread_schedule.S
|
${CMAKE_CURRENT_LIST_DIR}/src/tx_thread_schedule.S
|
||||||
${CMAKE_CURRENT_LIST_DIR}/src/tx_thread_stack_build.S
|
${CMAKE_CURRENT_LIST_DIR}/src/tx_thread_stack_build.S
|
||||||
${CMAKE_CURRENT_LIST_DIR}/src/tx_thread_system_return.S
|
${CMAKE_CURRENT_LIST_DIR}/src/tx_thread_system_return.S
|
||||||
|
|||||||
@@ -66,8 +66,7 @@
|
|||||||
|
|
||||||
#ifndef NX_IP_PERIODIC_RATE
|
#ifndef NX_IP_PERIODIC_RATE
|
||||||
#ifdef TX_TIMER_TICKS_PER_SECOND
|
#ifdef TX_TIMER_TICKS_PER_SECOND
|
||||||
/* it seems this needs to be smaller than the timer ticks per second. Otherwise no time is left for other tasks*/
|
#define NX_IP_PERIODIC_RATE TX_TIMER_TICKS_PER_SECOND
|
||||||
#define NX_IP_PERIODIC_RATE (TX_TIMER_TICKS_PER_SECOND / 10)
|
|
||||||
#else
|
#else
|
||||||
#define NX_IP_PERIODIC_RATE 10
|
#define NX_IP_PERIODIC_RATE 10
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
Reference in New Issue
Block a user