nuttx-apps/canutils/uavcan/Kconfig
2015-11-10 17:33:44 -05:00

233 lines
5.2 KiB
Plaintext

#
# For a description of the syntax of this configuration file,
# see the file kconfig-language.txt in the NuttX tools repository.
#
config CANUTILS_UAVCAN
bool "UAVCAN Library"
default n
depends on STM32_HAVE_CAN1
depends on !STM32_CAN1
depends on !STM32_CAN2
depends on !STM32_TIM2 || (STM32_HAVE_TIM3 && !STM32_TIM3) || (STM32_HAVE_TIM4 && !STM32_TIM4) || (STM32_HAVE_TIM5 && !STM32_TIM5) || (STM32_HAVE_TIM6 && !STM32_TIM6) || (STM32_HAVE_TIM7 && !STM32_TIM7)
depends on C99_BOOL8
depends on HAVE_CXX
depends on !DISABLE_POLL
---help---
Enables support for the UAVCAN library.
if CANUTILS_UAVCAN
config UAVCAN_LIBUAVCAN_URL
string "UAVCAN URL"
default "https://github.com/UAVCAN/libuavcan/archive"
---help---
UAVCAN URL.
config UAVCAN_LIBUAVCAN_VERSION
string "UAVCAN Version"
default "c152f28a620ceec9f63581a7c99fe77c89938048"
---help---
UAVCAN version.
config UAVCAN_DSDL_URL
string "DSDL URL"
default "https://github.com/UAVCAN/dsdl/archive"
---help---
DSDL URL.
config UAVCAN_DSDL_VERSION
string "DSDL Version"
default "9804a3e6972825586be252ce08dd899f44994b14"
---help---
DSDL version.
config UAVCAN_PYUAVCAN_URL
string "Python UAVCAN URL"
default "https://github.com/UAVCAN/pyuavcan/archive"
---help---
Python UAVCAN URL.
config UAVCAN_PYUAVCAN_VERSION
string "Python UAVCAN Version"
default "c58477a644d20ccf95a20c151f3a0402f271c3b8"
---help---
Python UAVCAN version.
config UAVCAN_STM32_NUM_IFACES
int "Number of CAN Interfaces"
default 1
range 1 1 if !STM32_HAVE_CAN2
range 1 2 if STM32_HAVE_CAN2
choice
prompt "Timer"
default UAVCAN_STM32_TIM2 if !STM32_TIM2
default UAVCAN_STM32_TIM3 if STM32_HAVE_TIM3 && !STM32_TIM3
default UAVCAN_STM32_TIM4 if STM32_HAVE_TIM4 && !STM32_TIM4
default UAVCAN_STM32_TIM5 if STM32_HAVE_TIM5 && !STM32_TIM5
default UAVCAN_STM32_TIM6 if STM32_HAVE_TIM6 && !STM32_TIM6
default UAVCAN_STM32_TIM7 if STM32_HAVE_TIM7 && !STM32_TIM7
config UAVCAN_STM32_TIM2
bool "TIM2"
depends on !STM32_TIM2
---help---
The library will use TIM2.
config UAVCAN_STM32_TIM3
bool "TIM3"
depends on STM32_HAVE_TIM3 && !STM32_TIM3
---help---
The library will use TIM3.
config UAVCAN_STM32_TIM4
bool "TIM4"
depends on STM32_HAVE_TIM4 && !STM32_TIM4
---help---
The library will use TIM4.
config UAVCAN_STM32_TIM5
bool "TIM5"
depends on STM32_HAVE_TIM5 && !STM32_TIM5
---help---
The library will use TIM5.
config UAVCAN_STM32_TIM6
bool "TIM6"
depends on STM32_HAVE_TIM6 && !STM32_TIM6
---help---
The library will use TIM6.
config UAVCAN_STM32_TIM7
bool "TIM7"
depends on STM32_HAVE_TIM7 && !STM32_TIM7
---help---
The library will use TIM7.
endchoice
choice
prompt "C++ Version"
default UAVCAN_CPP03
config UAVCAN_CPP03
bool "C++03"
---help---
The library will use C++03.
config UAVCAN_CPP11
bool "C++11"
---help---
The library will use C++11.
endchoice
config UAVCAN_DEBUG
bool "Debug"
default n
---help---
Enables debug.
config UAVCAN_EXCEPTIONS
bool "Exceptions"
default n
---help---
Enables exceptions.
config UAVCAN_TINY
bool "Tiny"
default n
---help---
Removes some features to save memory.
config UAVCAN_NO_GLOBAL_DATA_TYPE_REGISTRY
bool "No Global Data Type Registry"
default n
---help---
Removes the global data type registry.
config UAVCAN_TOSTRING
bool "Implement toString"
default n
depends on UAVCAN_EXCEPTIONS
---help---
The library will add a toString method to most of its classes.
config UAVCAN_IMPLEMENT_PLACEMENT_NEW
bool "Implement Placement new"
default n
---help---
The library will implement placement new.
config UAVCAN_USE_EXTERNAL_SNPRINTF
bool "Use External snprintf"
default n
---help---
The library will use an external snprintf.
config UAVCAN_USE_EXTERNAL_FLOAT16_CONVERSION
bool "Use External float16 Conversion"
default n
---help---
The library will use an external float16 conversion.
config UAVCAN_NO_ASSERTIONS
bool "No Assertions"
default n
---help---
Disables assertions.
config UAVCAN_MEM_POOL_BLOCK_SIZE
int "Memory Pool Block Size"
default 0
---help---
Specifies the memory pool block size. If the value is 0, the
library will use a default value.
config UAVCAN_FLOAT_COMPARISON_EPSILON_MULT
int "Float Comparion Epsilon Mult"
default 0
---help---
Specifies the float comparison epsilon mult. If the value is
0, the library will use a default value.
config UAVCAN_MAX_CAN_ACCEPTANCE_FILTERS
int "Max CAN Acceptance Filters"
default 0
---help---
Specifies the maximum number of CAN acceptance filters. If
the value is 0, the library will use a default value.
config UAVCAN_MAX_NETWORK_SIZE_HINT
int "Max Network Size Hint"
default 0
---help---
Specifies the maximum network size. If the value is 0, the
library will use a default value.
config UAVCAN_RX_QUEUE_CAPACITY
int "Rx Queue Capacity"
default 0
---help---
Specifies the rx queue capacity. If the value is 0, the
library will use a default value.
config UAVCAN_BIT_RATE
int "Bit Rate"
default 0
range 0 1000000
---help---
Specifies the CAN bit rate. If the value is 0, the library
will automatically detect the bit rate.
config UAVCAN_INIT_RETRIES
int "Initialization Retries"
default 0
---help---
Specifies the number of times to try initializing the CAN
peripherals before panicking. A value of 0 means to try
forever.
endif