Bugfix/zephyr defines kconfig (#610)

* Added COV features to time-value object

* Added zephyr config names with BACNET prefix
This commit is contained in:
Steve Karg
2024-04-01 13:58:37 -05:00
committed by GitHub
parent 6bd1942635
commit adf6b5f1fb
5 changed files with 195 additions and 40 deletions
+31 -8
View File
@@ -13,16 +13,15 @@ endif()
#
# options managed through Kconfig and use names CONFIG_*
#
set(BACNET_PROTOCOL_REVISION 19)
message(STATUS "BACNETSTACK: using cmake ${CMAKE_VERSION}")
message(STATUS "BACNETSTACK: CMAKE_C_COMPILER_ID \"${CMAKE_C_COMPILER_ID}\"")
message(STATUS "BACNETSTACK: CMAKE_C_COMPILER_VERSION \"${CMAKE_C_COMPILER_VERSION}\"")
message(STATUS "BACNETSTACK: CMAKE_CXX_COMPILER_ID \"${CMAKE_CXX_COMPILER_ID}\"")
message(STATUS "BACNETSTACK: CMAKE_CXX_COMPILER_VERSION \"${CMAKE_CXX_COMPILER_VERSION}\"")
message(STATUS "BACNETSTACK: CMAKE_INSTALL_PREFIX \"${CMAKE_INSTALL_PREFIX}\"")
message(STATUS "BACNETSTACK: BACNET_PROTOCOL_REVISION \"${BACNET_PROTOCOL_REVISION}\"")
message(STATUS "BACNETSTACK: BACNET_VENDOR_NAME \"${CONFIG_BACNET_VENDOR_NAME}\"")
message(STATUS "BACNETSTACK: BACNET_VENDOR_IDENTIFIER \"${CONFIG_BACNET_VENDOR_IDENTIFIER}\"")
message(STATUS "BACNETSTACK: BACNET_PROTOCOL_REVISION \"${CONFIG_BACNET_PROTOCOL_REVISION}\"")
message(STATUS "BACNETSTACK: BACDL_BIP6 \"${CONFIG_BACDL_BIP6}\"")
message(STATUS "BACNETSTACK: BACDL_BIP \"${CONFIG_BACDL_BIP}\"")
message(STATUS "BACNETSTACK: BACDL_ARCNET \"${CONFIG_BACDL_ARCNET}\"")
@@ -30,6 +29,10 @@ message(STATUS "BACNETSTACK: BACDL_MSTP \"${CONFIG_BACDL_MSTP}\"")
message(STATUS "BACNETSTACK: BACDL_ETHERNET \"${CONFIG_BACDL_ETHERNET}\"")
message(STATUS "BACNETSTACK: BACDL_NONE \"${CONFIG_BACDL_NONE}\"")
message(STATUS "BACNETSTACK: BACNET_ADDRESS_CACHE_FILE \"${CONFIG_BACNET_ADDRESS_CACHE_FILE}\"")
message(STATUS "BACNETSTACK: MAX_TSM_TRANSACTIONS \"${CONFIG_BACNET_MAX_TSM_TRANSACTIONS}\"")
message(STATUS "BACNETSTACK: MAX_ADDRESS_CACHE \"${CONFIG_BACNET_MAX_ADDRESS_CACHE}\"")
message(STATUS "BACNETSTACK: MAX_CHARACTER_STRING_BYTES \"${CONFIG_BACNET_MAX_CHARACTER_STRING_BYTES}\"")
message(STATUS "BACNETSTACK: MAX_OCTET_STRING_BYTES \"${CONFIG_BACNET_MAX_OCTET_STRING_BYTES}\"")
#Do not allow in source builds
set(CMAKE_DISABLE_SOURCE_CHANGES ON)
@@ -339,7 +342,9 @@ set(BACNETSTACK_BASIC_SRCS
$<$<BOOL:${CONFIG_BACNET_BASIC_OBJECTS_ACCESS}>:${BACNETSTACK_SRC}/bacnet/basic/object/access_user.c>
$<$<BOOL:${CONFIG_BACNET_BASIC_OBJECTS_ACCESS}>:${BACNETSTACK_SRC}/bacnet/basic/object/access_zone.c>
$<$<BOOL:${CONFIG_BACNET_BASIC_OBJECT_ACCUMULATOR}>:${BACNETSTACK_SRC}/bacnet/basic/object/acc.c>
$<$<BOOL:${CONFIG_BACNET_BASIC_OBJECT_ANALOG_INPUT}>:${BACNETSTACK_SRC}/bacnet/basic/object/ai.c>
$<$<BOOL:${CONFIG_BACNET_BASIC_OBJECT_ANALOG_OUTPUT}>:${BACNETSTACK_SRC}/bacnet/basic/object/ao.c>
$<$<BOOL:${CONFIG_BACNET_BASIC_OBJECT_ANALOG_VALUE}>:${BACNETSTACK_SRC}/bacnet/basic/object/av.c>
$<$<BOOL:${CONFIG_BACNET_BASIC_OBJECT_FILE}>:${BACNETSTACK_SRC}/bacnet/basic/object/bacfile.c>
$<$<BOOL:${CONFIG_BACNET_BASIC_OBJECT_BINARY_INPUT}>:${BACNETSTACK_SRC}/bacnet/basic/object/bi.c>
$<$<BOOL:${CONFIG_BACNET_BASIC_OBJECT_BINARY_OUTPUT}>:${BACNETSTACK_SRC}/bacnet/basic/object/bo.c>
@@ -433,7 +438,6 @@ list(
add_subdirectory(subsys)
#
# library
#
@@ -441,7 +445,13 @@ add_subdirectory(subsys)
zephyr_library()
zephyr_library_compile_definitions(
BACNET_VENDOR_ID=${CONFIG_BACNET_VENDOR_ID}
BACNET_VENDOR_NAME="${CONFIG_BACNET_VENDOR_NAME}"
BACNET_PROTOCOL_REVISION=${CONFIG_BACNET_PROTOCOL_REVISION}
$<$<BOOL:${CONFIG_BACDL_BIP}>:BACDL_BIP>
$<$<BOOL:${CONFIG_BACDL_BIP_PORT}>:BACDL_BIP_PORT=${CONFIG_BACDL_BIP_PORT}>
$<$<BOOL:${CONFIG_MAX_BBMD_ENTRIES}>:MAX_BBMD_ENTRIES=${CONFIG_MAX_BBMD_ENTRIES}>
$<$<BOOL:${CONFIG_MAX_FD_ENTRIES}>:MAX_FD_ENTRIES=${CONFIG_MAX_FD_ENTRIES}>
$<$<BOOL:${CONFIG_BACDL_BIP6}>:BACDL_BIP6>
$<$<BOOL:${CONFIG_BACDL_ARCNET}>:BACDL_ARCNET>
$<$<BOOL:${CONFIG_BACDL_MSTP}>:BACDL_MSTP>
@@ -453,7 +463,11 @@ zephyr_library_compile_definitions(
$<$<BOOL:${CONFIG_BACAPP_PRINT_ENABLED}>:BACAPP_PRINT_ENABLED=1>
$<$<BOOL:${CONFIG_BACAPP_SNPRINTF_ENABLED}>:BACAPP_SNPRINTF_ENABLED=1>
$<$<BOOL:${CONFIG_BACNET_ADDRESS_CACHE_FILE}>:BACNET_ADDRESS_CACHE_FILE=1>
)
MAX_TSM_TRANSACTIONS=${CONFIG_BACNET_MAX_TSM_TRANSACTIONS}
MAX_ADDRESS_CACHE=${CONFIG_BACNET_MAX_ADDRESS_CACHE}
MAX_CHARACTER_STRING_BYTES=${CONFIG_BACNET_MAX_CHARACTER_STRING_BYTES}
MAX_OCTET_STRING_BYTES=${CONFIG_BACNET_MAX_OCTET_STRING_BYTES}
)
zephyr_library_sources(
${BACNETSTACK_SRCS}
@@ -466,8 +480,13 @@ zephyr_include_directories(
target_compile_definitions(
app PRIVATE
BACNET_PROTOCOL_REVISION=${BACNET_PROTOCOL_REVISION}
BACNET_VENDOR_ID=${CONFIG_BACNET_VENDOR_IDENTIFIER}
BACNET_VENDOR_NAME="${CONFIG_BACNET_VENDOR_NAME}"
BACNET_PROTOCOL_REVISION=${CONFIG_BACNET_PROTOCOL_REVISION}
$<$<BOOL:${CONFIG_BACDL_BIP}>:BACDL_BIP>
$<$<BOOL:${CONFIG_BACDL_BIP_PORT}>:BACDL_BIP_PORT=${CONFIG_BACDL_BIP_PORT}>
$<$<BOOL:${CONFIG_MAX_BBMD_ENTRIES}>:MAX_BBMD_ENTRIES=${CONFIG_MAX_BBMD_ENTRIES}>
$<$<BOOL:${CONFIG_MAX_FD_ENTRIES}>:MAX_FD_ENTRIES=${CONFIG_MAX_FD_ENTRIES}>
$<$<BOOL:${CONFIG_BACDL_BIP6}>:BACDL_BIP6>
$<$<BOOL:${CONFIG_BACDL_ARCNET}>:BACDL_ARCNET>
$<$<BOOL:${CONFIG_BACDL_MSTP}>:BACDL_MSTP>
@@ -478,6 +497,10 @@ target_compile_definitions(
$<$<BOOL:${CONFIG_BACAPP_PRINT_ENABLED}>:BACAPP_PRINT_ENABLED=1>
$<$<BOOL:${CONFIG_BACAPP_SNPRINTF_ENABLED}>:BACAPP_SNPRINTF_ENABLED=1>
$<$<BOOL:${CONFIG_BACNET_ADDRESS_CACHE_FILE}>:BACNET_ADDRESS_CACHE_FILE=1>
MAX_TSM_TRANSACTIONS=${CONFIG_BACNET_MAX_TSM_TRANSACTIONS}
MAX_ADDRESS_CACHE=${CONFIG_BACNET_MAX_ADDRESS_CACHE}
MAX_CHARACTER_STRING_BYTES=${CONFIG_BACNET_MAX_CHARACTER_STRING_BYTES}
MAX_OCTET_STRING_BYTES=${CONFIG_BACNET_MAX_OCTET_STRING_BYTES}
BACNET_STACK_STATIC_DEFINE
PRINT_ENABLED=1
)
@@ -485,4 +508,4 @@ target_compile_definitions(
zephyr_compile_definitions(
BACNET_CONFIG_H=1 # Use ports/zephyr/bacnet-config.h
)
+59 -3
View File
@@ -16,6 +16,24 @@ module-str = Log level for BACnet
module-help = Enable BACnet library to output debug messages
source "$(ZEPHYR_BASE)/subsys/logging/Kconfig.template.log_config"
config BACNET_VENDOR_NAME
string "BACnet Vendor Name"
default "BACnet Stack at SourceForge"
help
BACnet Vendor Name string
config BACNET_VENDOR_IDENTIFIER
int "BACnet Vendor Identifier"
default 260
help
BACnet Vendir Identifier
config BACNET_PROTOCOL_REVISION
int "BACnet Stack protocol-revision number"
default 24
help
BACnet Stack protocol-revision number
config BAC_ROUTING
bool "BACnet Routing"
help
@@ -68,6 +86,20 @@ config BACDL_BIP_PORT
help
UDP port to listen on (default=47808)
config MAX_BBMD_ENTRIES
int "Maximum number of Broadcast Device Table entries"
default 5
depends on BACDL_BIP
help
Maximum number of Broadcast Device Table entries
config MAX_FD_ENTRIES
int "Maximum number of Foreign Device Table entries"
default 5
depends on BACDL_BIP
help
Maximum number of Foreign Device Table entries
config BACDL_BIP_ADDRESS_INDEX
int "Address index"
depends on BACDL_BIP
@@ -101,6 +133,30 @@ config BACDL_BIP6_PORT
help
UDP port to listen on (default=47808)
config BACNET_MAX_TSM_TRANSACTIONS
int "Number of initiated confirmed-message transactions"
default 1
help
Number of initiated confirmed-message transactions
config BACNET_MAX_ADDRESS_CACHE
int "Number of address entries for I-Am bindings"
default 1
help
Number of address entries for I-Am bindings
config BACNET_MAX_CHARACTER_STRING_BYTES
int "Maximum number of bytes in a BACnet character string"
default 64
help
Maximum number of bytes in a BACnet character string
config BACNET_MAX_OCTET_STRING_BYTES
int "Maximum number of bytes in a BACnet octet string"
default 64
help
Maximum number of bytes in a BACnet octet string
config BACNET_ADDRESS_CACHE_FILE
bool "BACnet Address Cache file functionality"
help
@@ -280,19 +336,19 @@ config BACNET_BASIC_OBJECT_POSITIVE_INTEGER_VALUE
help
Use the BACnet basic positive-integer value object
config CONFIG_BACNET_BASIC_OBJECT_SCHEDULE
config BACNET_BASIC_OBJECT_SCHEDULE
bool "Use the BACnet basic schedule object"
default false
help
Use the BACnet basic schedule object
config CONFIG_BACNET_BASIC_OBJECT_TIME_VALUE
config BACNET_BASIC_OBJECT_TIME_VALUE
bool "Use the BACnet basic time value object"
default false
help
Use the BACnet basic time value object
config CONFIG_BACNET_BASIC_OBJECT_TRENDLOG
config BACNET_BASIC_OBJECT_TRENDLOG
bool "Use the BACnet basic trendlog object"
default false
help