File indexing completed on 2025-05-11 08:24:12
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020
0021
0022
0023
0024
0025
0026
0027
0028
0029
0030
0031
0032
0033
0034
0035
0036
0037
0038
0039
0040
0041
0042
0043
0044
0045 #ifndef _RTEMS_CONFDEFS_BDBUF_H
0046 #define _RTEMS_CONFDEFS_BDBUF_H
0047
0048 #ifndef __CONFIGURATION_TEMPLATE_h
0049 #error "Do not include this file directly, use <rtems/confdefs.h> instead"
0050 #endif
0051
0052 #ifdef CONFIGURE_INIT
0053
0054 #ifdef CONFIGURE_APPLICATION_NEEDS_LIBBLOCK
0055
0056 #include <rtems/confdefs/percpu.h>
0057 #include <rtems/bdbuf.h>
0058
0059 #ifndef CONFIGURE_BDBUF_MAX_READ_AHEAD_BLOCKS
0060 #define CONFIGURE_BDBUF_MAX_READ_AHEAD_BLOCKS \
0061 RTEMS_BDBUF_MAX_READ_AHEAD_BLOCKS_DEFAULT
0062 #endif
0063
0064 #ifndef CONFIGURE_BDBUF_MAX_WRITE_BLOCKS
0065 #define CONFIGURE_BDBUF_MAX_WRITE_BLOCKS \
0066 RTEMS_BDBUF_MAX_WRITE_BLOCKS_DEFAULT
0067 #endif
0068
0069 #ifndef CONFIGURE_SWAPOUT_TASK_PRIORITY
0070 #define CONFIGURE_SWAPOUT_TASK_PRIORITY \
0071 RTEMS_BDBUF_SWAPOUT_TASK_PRIORITY_DEFAULT
0072 #endif
0073
0074 #ifndef CONFIGURE_SWAPOUT_SWAP_PERIOD
0075 #define CONFIGURE_SWAPOUT_SWAP_PERIOD \
0076 RTEMS_BDBUF_SWAPOUT_TASK_SWAP_PERIOD_DEFAULT
0077 #endif
0078
0079 #ifndef CONFIGURE_SWAPOUT_BLOCK_HOLD
0080 #define CONFIGURE_SWAPOUT_BLOCK_HOLD \
0081 RTEMS_BDBUF_SWAPOUT_TASK_BLOCK_HOLD_DEFAULT
0082 #endif
0083
0084 #ifndef CONFIGURE_SWAPOUT_WORKER_TASKS
0085 #define CONFIGURE_SWAPOUT_WORKER_TASKS \
0086 RTEMS_BDBUF_SWAPOUT_WORKER_TASKS_DEFAULT
0087 #endif
0088
0089 #ifndef CONFIGURE_SWAPOUT_WORKER_TASK_PRIORITY
0090 #define CONFIGURE_SWAPOUT_WORKER_TASK_PRIORITY \
0091 RTEMS_BDBUF_SWAPOUT_WORKER_TASK_PRIORITY_DEFAULT
0092 #endif
0093
0094 #ifndef CONFIGURE_BDBUF_TASK_STACK_SIZE
0095 #define CONFIGURE_BDBUF_TASK_STACK_SIZE \
0096 RTEMS_BDBUF_TASK_STACK_SIZE_DEFAULT
0097 #endif
0098
0099 #ifndef CONFIGURE_BDBUF_CACHE_MEMORY_SIZE
0100 #define CONFIGURE_BDBUF_CACHE_MEMORY_SIZE \
0101 RTEMS_BDBUF_CACHE_MEMORY_SIZE_DEFAULT
0102 #endif
0103
0104 #ifndef CONFIGURE_BDBUF_BUFFER_MIN_SIZE
0105 #define CONFIGURE_BDBUF_BUFFER_MIN_SIZE \
0106 RTEMS_BDBUF_BUFFER_MIN_SIZE_DEFAULT
0107 #endif
0108
0109 #ifndef CONFIGURE_BDBUF_BUFFER_MAX_SIZE
0110 #define CONFIGURE_BDBUF_BUFFER_MAX_SIZE \
0111 RTEMS_BDBUF_BUFFER_MAX_SIZE_DEFAULT
0112 #endif
0113
0114 #ifndef CONFIGURE_BDBUF_READ_AHEAD_TASK_PRIORITY
0115 #define CONFIGURE_BDBUF_READ_AHEAD_TASK_PRIORITY \
0116 RTEMS_BDBUF_READ_AHEAD_TASK_PRIORITY_DEFAULT
0117 #endif
0118
0119 #define _CONFIGURE_LIBBLOCK_TASKS \
0120 ( 1 + CONFIGURE_SWAPOUT_WORKER_TASKS \
0121 + ( CONFIGURE_BDBUF_MAX_READ_AHEAD_BLOCKS != 0 ) )
0122
0123 #define _CONFIGURE_LIBBLOCK_TASKS_STACK_EXTRA \
0124 ( _CONFIGURE_LIBBLOCK_TASKS \
0125 * ( CONFIGURE_BDBUF_TASK_STACK_SIZE <= CONFIGURE_MINIMUM_TASK_STACK_SIZE ? \
0126 0 : \
0127 CONFIGURE_BDBUF_TASK_STACK_SIZE - CONFIGURE_MINIMUM_TASK_STACK_SIZE ) )
0128
0129 #ifdef __cplusplus
0130 extern "C" {
0131 #endif
0132
0133 const rtems_bdbuf_config rtems_bdbuf_configuration = {
0134 CONFIGURE_BDBUF_MAX_READ_AHEAD_BLOCKS,
0135 CONFIGURE_BDBUF_MAX_WRITE_BLOCKS,
0136 CONFIGURE_SWAPOUT_TASK_PRIORITY,
0137 CONFIGURE_SWAPOUT_SWAP_PERIOD,
0138 CONFIGURE_SWAPOUT_BLOCK_HOLD,
0139 CONFIGURE_SWAPOUT_WORKER_TASKS,
0140 CONFIGURE_SWAPOUT_WORKER_TASK_PRIORITY,
0141 CONFIGURE_BDBUF_TASK_STACK_SIZE,
0142 CONFIGURE_BDBUF_CACHE_MEMORY_SIZE,
0143 CONFIGURE_BDBUF_BUFFER_MIN_SIZE,
0144 CONFIGURE_BDBUF_BUFFER_MAX_SIZE,
0145 CONFIGURE_BDBUF_READ_AHEAD_TASK_PRIORITY
0146 };
0147
0148 #ifdef __cplusplus
0149 }
0150 #endif
0151
0152 #else
0153
0154 #define _CONFIGURE_LIBBLOCK_TASKS 0
0155
0156 #define _CONFIGURE_LIBBLOCK_TASKS_STACK_EXTRA 0
0157
0158 #endif
0159
0160 #endif
0161
0162 #endif