-
Notifications
You must be signed in to change notification settings - Fork 90
Expand file tree
/
Copy pathKconfig
More file actions
158 lines (139 loc) · 6.24 KB
/
Kconfig
File metadata and controls
158 lines (139 loc) · 6.24 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
#
# Copyright 2024-2025 NXP
#
# SPDX-License-Identifier: BSD-3-Clause
#
menuconfig MCUX_COMPONENT_middleware.multicore.rpmsg-lite
bool "RPMSG-Lite"
default n
help
This option will enable RPSMG-Lite Middleware Component
config MCUX_COMPONENT_middleware.multicore.rpmsg-lite.queue
bool "Queue"
default n
depends on MCUX_COMPONENT_middleware.multicore.rpmsg-lite
help
This option enables RPMSG-Lite Queue support.
config MCUX_COMPONENT_middleware.multicore.rpmsg-lite.ns
bool "Name Service"
default n
depends on MCUX_COMPONENT_middleware.multicore.rpmsg-lite
help
This option enables RPMSG-Lite Name Service support.
if MCUX_COMPONENT_middleware.multicore.rpmsg-lite
# The choice Option only here no need for menu item
rsource "./Kconfig.env"
rsource "./Kconfig.platform"
config MCUX_PRJSEG_middleware.multicore.rpmsg-lite.generated_config
bool "Generate RPMSG-Lite configuration header"
default y
help
Generate the rpmsg_config.h, otherwise users need to provide their
own rpmsg_config.h.
menu "RPMSG-Lite Configuration(rpmsg_config.h)"
depends on MCUX_PRJSEG_middleware.multicore.rpmsg-lite.generated_config
config RL_MS_PER_INTERVAL
int "RL_MS_PER_INTERVAL"
default 1
help
No prefix in generated macro
Delay in milliseconds used in non-blocking API functions for polling.
config RL_ALLOW_CUSTOM_SHMEM_CONFIG
bool "RL_ALLOW_CUSTOM_SHMEM_CONFIG"
default n
help
No prefix in generated macro
This option allows to define custom shared memory configuration and replacing
the shared memory related global settings from rpmsg_config.h
This is useful when multiple instances are running in parallel but different
shared memory arrangement (vring size & alignment, buffers size & count) is required.
Note, that once enabled the platform_get_custom_shmem_config() function needs
to be implemented in platform layer.
The default value is 0 (all RPMsg_Lite instances use the same shared memory arrangement as
defined by common config macros).
config RL_BUFFER_PAYLOAD_SIZE
int "RL_BUFFER_PAYLOAD_SIZE_VALUE"
default 496
help
No prefix in generated macro
Size of the buffer payload, it must be more then 0.
And should be word aligned with added plus 16 for rpmsg header.
Value will be word align up if not already aligned.
Ensure the same value is defined on both sides of rpmsg
communication.
type unsigned
config RL_BUFFER_COUNT
int "RL_BUFFER_COUNT_VALUE"
default 2
help
No prefix in generated macro
Number of the buffers, it must be power of two (2, 4, ...).
Note this value defines the buffer count for one direction of the rpmsg
communication only, i.e. if the default value of 2 is used
in rpmsg_config.h files for the master and the remote side, 4 buffers
in total are created in the shared memory.
type unsigned
config RL_API_HAS_ZEROCOPY
bool "RL_API_HAS_ZEROCOPY"
default y
help
No prefix in generated macro
Zero-copy API functions enabled/disabled.
config RL_USE_STATIC_API
bool "RL_USE_STATIC_API"
default n
help
No prefix in generated macro
Static API functions (no dynamic allocation) enabled/disabled.
config RL_CLEAR_USED_BUFFERS
bool "RL_CLEAR_USED_BUFFERS"
default n
help
No prefix in generated macro
Clearing used buffers before returning back to the pool of free buffers
enabled/disabled.
config RL_USE_DCACHE
bool "RL_USE_DCACHE"
default n
help
No prefix in generated macro
Memory cache management of shared memory.
Use in case of data cache is enabled for shared memory.
config RL_USE_MCMGR_IPC_ISR_HANDLER
bool "RL_USE_MCMGR_IPC_ISR_HANDLER"
default n
help
No prefix in generated macro
When enabled IPC interrupts are managed by the Multicore Manager (IPC
interrupts router), when disabled RPMsg-Lite manages IPC interrupts
by itself.
The default value is 0 (no MCMGR IPC ISR handler used).
config RL_USE_ENVIRONMENT_CONTEXT
bool "RL_USE_ENVIRONMENT_CONTEXT"
default n
help
No prefix in generated macro
When enabled the environment layer uses its own context.
Added for QNX port mainly, but can be used if required.
The default value is 0 (no context, saves some RAM).
config RL_DEBUG_CHECK_BUFFERS
bool "RL_DEBUG_CHECK_BUFFERS"
default n
help
No prefix in generated macro
When enabled buffer pointers passed to rpmsg_lite_send_nocopy() and
rpmsg_lite_release_rx_buffer() functions (enabled by RL_API_HAS_ZEROCOPY config)
are checked to avoid passing invalid buffer pointer.
The default value is 0 (disabled). Do not use in RPMsg-Lite to Linux configuration.
config RL_ALLOW_CONSUMED_BUFFERS_NOTIFICATION
bool "RL_ALLOW_CONSUMED_BUFFERS_NOTIFICATION"
default n
help
No prefix in generated macro
When enabled the opposite side is notified each time received buffers
are consumed and put into the queue of available buffers.
Enable this option in RPMsg-Lite to Linux configuration to allow unblocking
of the Linux blocking send.
The default value is 0 (RPMsg-Lite to RPMsg-Lite communication).
endmenu
endif