-
Notifications
You must be signed in to change notification settings - Fork 25
/
Kconfig.zscilib
104 lines (90 loc) · 3.3 KB
/
Kconfig.zscilib
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
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
config ZSL
bool "Zephyr scientific library support"
default n
help
This option enables the zephyr scientific library.
if ZSL
config ZSL_SINGLE_PRECISION
bool "Use single-precision floats."
default n
help
Enabling this option will cause all zsl functions to use single
precision (32-bit) floating point values, rather than the default of
double-precision (64-bits).
config ZSL_PLATFORM_OPT
int "Platform optimisations"
default 0
range 0 2
help
Platform used for optimised assembly functions where possible.
0 None
1 ARM Thumb (GNU)
2 ARM Thumb2 (GNU)
config ZSL_VECTOR_INLINE
bool "Use inline vector functions."
default n
help
Enabling this option will cause common vector functions to use inline
versions, avoiding the overhead of function calls at the expense of
a larger firmware image.
config ZSL_MATRIX_INLINE
bool "Use inline matrix functions."
default n
help
Enabling this option will cause common matrix functions to use inline
versions, avoiding the overhead of function calls at the expense of
a larger firmware image.
config ZSL_BOUNDS_CHECKS
bool "Enable bounds checking in functions."
default y
help
Enabling this option will cause common functions to ensure that requested
data is within the bounds of the vector, matrix, etc. object. This should
generally always be enabled for safety reasons, but you may wish to
disable it in exceptional circumstances for performance reasons.
Note that the performance gains from enabling inline functions will
generally be greater than the benefit of disabling bounds checks, and
with far less risk associated with the decision.
EXTREME CARE should be taken when disabling this option since it can
easily lead to stack corruption and critical firmware failures. This
should only be disabled as a final option, and only on known-good
and thoroughly tested code.
config ZSL_SHELL
bool "Enable the 'zsl' shell command and core shell support"
default n
depends on SHELL
help
Enabling this option will make the 'zsl' shell command available, and
enable general zscilib shell support.
config ZSL_SHELL_CLR
bool "Enable the 'color' shell command"
default n
depends on ZSL_SHELL
help
Enabling this option will make the 'color' shell command available.
config ZSL_SHELL_ORIENT
bool "Enable the 'orient' shell command"
default n
depends on ZSL_SHELL
help
Enabling this option will make the 'orient' shell command available.
config ZSL_CLR_RGBF_BOUND_CAP
bool "Limit RGB float values to the 0.0..1.0 range"
default y
endif