ra8-firmware 0.1.0
Bare-metal firmware for the Renesas RA8 family (RA8D2 / RA8P1)
Loading...
Searching...
No Matches
tx_user.h
Go to the documentation of this file.
1
34
35#pragma once
36
37/* Tick + scheduler tuning. */
39#define TX_TIMER_TICKS_PER_SECOND (1000)
41#define TX_MAX_PRIORITIES (32)
43#define TX_MINIMUM_STACK (512)
44
45/* Performance / size knobs (see ThreadX user-guide chapter 4). */
47#define TX_TIMER_PROCESS_IN_ISR
49#define TX_REACTIVATE_INLINE
51#define TX_DISABLE_PREEMPTION_THRESHOLD
53#define TX_DISABLE_REDUNDANT_CLEARING
55#define TX_DISABLE_NOTIFY_CALLBACKS
56
57/* Single-mode selection.
58 *
59 * Most apps run ThreadX in the Secure world only (no Non-Secure partition
60 * is loaded), so ThreadX compiles out the secure-stack-context machinery
61 * (TX_SINGLE_MODE_SECURE). The `threadx_ns` library variant -- used by
62 * tz_nsc_cgc_usb to run ThreadX INSIDE the Non-Secure image (#96) --
63 * defines RA8_THREADX_NON_SECURE so ThreadX builds for the Non-Secure side
64 * instead. Selecting exactly one single-mode keeps the scheduler off the
65 * dual-world secure-stack path. */
66#ifdef RA8_THREADX_NON_SECURE
68#define TX_SINGLE_MODE_NON_SECURE
69#else
71#define TX_SINGLE_MODE_SECURE
72#endif