diff --git a/examples/all-clusters-app/esp32/main/CMakeLists.txt b/examples/all-clusters-app/esp32/main/CMakeLists.txt index bf2c65dd1570f6..f09f3369862640 100644 --- a/examples/all-clusters-app/esp32/main/CMakeLists.txt +++ b/examples/all-clusters-app/esp32/main/CMakeLists.txt @@ -17,7 +17,6 @@ # (Uses default behaviour of compiling all source files in directory, adding 'include' to include path.) # The list of src and include dirs must be in sync with that in all-clusters-app/esp32/main/component.mk set(PRIV_INCLUDE_DIRS_LIST - "${CMAKE_SOURCE_DIR}/third_party/connectedhomeip/zzz_generated/all-clusters-app" "${CMAKE_SOURCE_DIR}/third_party/connectedhomeip/examples/all-clusters-app/all-clusters-common/include" "${CMAKE_CURRENT_LIST_DIR}/include" "${CMAKE_SOURCE_DIR}/third_party/connectedhomeip/examples/providers" diff --git a/examples/all-clusters-minimal-app/esp32/main/CMakeLists.txt b/examples/all-clusters-minimal-app/esp32/main/CMakeLists.txt index 65132df36e2983..678d19d1940252 100644 --- a/examples/all-clusters-minimal-app/esp32/main/CMakeLists.txt +++ b/examples/all-clusters-minimal-app/esp32/main/CMakeLists.txt @@ -18,7 +18,6 @@ # (Uses default behaviour of compiling all source files in directory, adding 'include' to include path.) # The list of src and include dirs must be in sync with that in all-clusters-minimal-app/esp32/main/component.mk set(PRIV_INCLUDE_DIRS_LIST - "${CMAKE_SOURCE_DIR}/third_party/connectedhomeip/zzz_generated/all-clusters-minimal-app" "${CMAKE_SOURCE_DIR}/third_party/connectedhomeip/examples/all-clusters-app/all-clusters-common/include" "${CMAKE_CURRENT_LIST_DIR}/include" "${CMAKE_SOURCE_DIR}/third_party/connectedhomeip/examples/providers" diff --git a/examples/bridge-app/esp32/main/CMakeLists.txt b/examples/bridge-app/esp32/main/CMakeLists.txt index f79d86d2ac9e40..432ce5a2dfe6cb 100644 --- a/examples/bridge-app/esp32/main/CMakeLists.txt +++ b/examples/bridge-app/esp32/main/CMakeLists.txt @@ -15,7 +15,6 @@ # limitations under the License. idf_component_register(PRIV_INCLUDE_DIRS - "${CMAKE_SOURCE_DIR}/third_party/connectedhomeip/zzz_generated/bridge-app" "${CMAKE_CURRENT_LIST_DIR}/include" "${CMAKE_SOURCE_DIR}/third_party/connectedhomeip/examples/providers" SRC_DIRS diff --git a/examples/chef/chef.py b/examples/chef/chef.py index fb86d45d3e96e2..cdd4a61a5c2d6c 100755 --- a/examples/chef/chef.py +++ b/examples/chef/chef.py @@ -327,11 +327,9 @@ def main() -> int: action="store_true", dest="do_rpc_console") parser.add_option("-y", "--tty", help="Enumerated USB tty/serial interface enumerated for your physical device. E.g.: /dev/ACM0", dest="tty", metavar="TTY", default=None) - parser.add_option("", "--use_zzz", help="Use pre generated output from the ZAP tool found in the zzz_generated folder. Used to decrease execution time of CI/CD jobs", - dest="use_zzz", action="store_true") # Build CD params. - parser.add_option("", "--build_all", help="For use in CD only. Builds and bundles all chef examples for the specified platform. Uses --use_zzz. Chef exits after completion.", + parser.add_option("", "--build_all", help="For use in CD only. Builds and bundles all chef examples for the specified platform. Chef exits after completion.", dest="build_all", action="store_true") parser.add_option("", "--dry_run", help="Display list of target builds of the --build_all command without building them.", dest="dry_run", action="store_true") @@ -342,7 +340,7 @@ def main() -> int: parser.add_option("-k", "--keep_going", help="For use in CD only. Continues building all sample apps in the event of an error.", dest="keep_going", action="store_true") parser.add_option( - "", "--ci", help="Builds Chef examples defined in cicd_config. Uses --use_zzz. Uses specified target from -t. Chef exits after completion.", dest="ci", action="store_true") + "", "--ci", help="Builds Chef examples defined in cicd_config. Uses specified target from -t. Chef exits after completion.", dest="ci", action="store_true") parser.add_option( "", "--enable_ipv4", help="Enable IPv4 mDNS. Only applicable to platforms that can support IPV4 (e.g, Linux, ESP32)", action="store_true", default=False) @@ -367,7 +365,7 @@ def main() -> int: shell.run_cmd( "export GNUARMEMB_TOOLCHAIN_PATH=\"$PW_ARM_CIPD_INSTALL_DIR\"") shell.run_cmd(f"cd {_CHEF_SCRIPT_PATH}") - command = f"./chef.py -cbr --use_zzz -d {device_name} -t {options.build_target}" + command = f"./chef.py -cbr -d {device_name} -t {options.build_target}" flush_print(f"Building {command}", with_border=True) shell.run_cmd(command) bundle(options.build_target, device_name) @@ -397,7 +395,7 @@ def main() -> int: if options.dry_run: flush_print(archive_name) continue - command = f"./chef.py -cbr --use_zzz -d {device_name} -t {platform} " + command = f"./chef.py -cbr -d {device_name} -t {platform} " command += " ".join(args) flush_print(f"Building {command}", with_border=True) shell.run_cmd(f"cd {_CHEF_SCRIPT_PATH}") @@ -602,21 +600,6 @@ def main() -> int: f"""Truncate the software version string from \"{sw_ver_string}\" to \"{truncated_sw_ver_string}\" due to 64 bytes limitation""") sw_ver_string = truncated_sw_ver_string - if options.use_zzz: - flush_print("Using pre-generated ZAP output") - zzz_dir = os.path.join(_REPO_BASE_PATH, - "zzz_generated", - "chef-"+options.sample_device_type_name, - "zap-generated") - if not os.path.exists(zzz_dir): - flush_print(textwrap.dedent(f"""\ - You have specified --use_zzz - for device {options.sample_device_type_name} - which does not exist in the cached ZAP output. - """)) - exit(1) - shutil.rmtree(gen_dir, ignore_errors=True) - shutil.copytree(zzz_dir, gen_dir) flush_print("Building...") flush_print( diff --git a/examples/chef/esp32/main/CMakeLists.txt b/examples/chef/esp32/main/CMakeLists.txt index 6d8925a0bfc9da..0099a8547c78c2 100644 --- a/examples/chef/esp32/main/CMakeLists.txt +++ b/examples/chef/esp32/main/CMakeLists.txt @@ -18,7 +18,6 @@ get_filename_component(CHIP_ROOT ../third_party/connectedhomeip REALPATH) get_filename_component(CHEF ${CMAKE_CURRENT_SOURCE_DIR}/../../ REALPATH) -get_filename_component(GEN_DIR ${CHEF}/out/${SAMPLE_NAME}/zap-generated REALPATH) # include(${CMAKE_CURRENT_LIST_DIR}/../../project_include.cmake) @@ -33,7 +32,6 @@ set(PRIV_INCLUDE_DIRS_LIST "${CMAKE_SOURCE_DIR}/third_party/connectedhomeip/examples/platform/esp32/" "${CMAKE_SOURCE_DIR}/third_party/connectedhomeip/third_party/nlio/repo/include" "${CMAKE_SOURCE_DIR}/../" - "${GEN_DIR}/../" "${CMAKE_SOURCE_DIR}/main/include/" ) @@ -62,7 +60,6 @@ message(STATUS "** End of Cluster List **") set(SRC_DIRS_LIST ${SRC_DIRS_LIST} "${CMAKE_CURRENT_LIST_DIR}" - "${GEN_DIR}" "${CMAKE_SOURCE_DIR}/third_party/connectedhomeip/src/app/server" "${CMAKE_SOURCE_DIR}/third_party/connectedhomeip/src/app/util" "${CMAKE_SOURCE_DIR}/third_party/connectedhomeip/src/app/reporting" diff --git a/examples/light-switch-app/esp32/main/CMakeLists.txt b/examples/light-switch-app/esp32/main/CMakeLists.txt index 960d2c14d4da9b..540b8d5794d4a8 100644 --- a/examples/light-switch-app/esp32/main/CMakeLists.txt +++ b/examples/light-switch-app/esp32/main/CMakeLists.txt @@ -17,7 +17,6 @@ # (Uses default behaviour of compiling all source files in directory, adding 'include' to include path.) idf_component_register(PRIV_INCLUDE_DIRS - "${CMAKE_SOURCE_DIR}/third_party/connectedhomeip/zzz_generated/light-switch-app" "${CMAKE_CURRENT_LIST_DIR}/include" "${CMAKE_SOURCE_DIR}/third_party/connectedhomeip/examples/providers" "${CMAKE_SOURCE_DIR}/third_party/connectedhomeip/examples/platform/esp32" diff --git a/examples/lighting-app/esp32/main/CMakeLists.txt b/examples/lighting-app/esp32/main/CMakeLists.txt index 8b7a6e916f38a5..450a47f7db3fee 100644 --- a/examples/lighting-app/esp32/main/CMakeLists.txt +++ b/examples/lighting-app/esp32/main/CMakeLists.txt @@ -18,7 +18,6 @@ set(PRIV_INCLUDE_DIRS_LIST "${APP_GEN_DIR}" - "${CMAKE_SOURCE_DIR}/third_party/connectedhomeip/zzz_generated/lighting-app" "${CMAKE_SOURCE_DIR}/third_party/connectedhomeip/examples/providers" "${CMAKE_SOURCE_DIR}/third_party/connectedhomeip/examples/lighting-app/lighting-common/include" "${CMAKE_CURRENT_LIST_DIR}/include" diff --git a/examples/lock-app/esp32/main/CMakeLists.txt b/examples/lock-app/esp32/main/CMakeLists.txt index 2f4b237399370d..bf9edad36d7f7e 100644 --- a/examples/lock-app/esp32/main/CMakeLists.txt +++ b/examples/lock-app/esp32/main/CMakeLists.txt @@ -29,7 +29,6 @@ idf_component_register(INCLUDE_DIRS "${CMAKE_SOURCE_DIR}/third_party/connectedhomeip/examples/common/pigweed" "${CMAKE_SOURCE_DIR}/third_party/connectedhomeip/examples/common/pigweed/esp32" "${CMAKE_SOURCE_DIR}/third_party/connectedhomeip/src/lib/support" - "${CMAKE_SOURCE_DIR}/third_party/connectedhomeip/zzz_generated/lock-app/" "${CMAKE_CURRENT_LIST_DIR}/include" "${IDF_PATH}/components/freertos/include/freertos" SRC_DIRS @@ -144,7 +143,6 @@ target_compile_options(${COMPONENT_LIB} PRIVATE else (CONFIG_ENABLE_PW_RPC) idf_component_register(PRIV_INCLUDE_DIRS - "${CMAKE_SOURCE_DIR}/third_party/connectedhomeip/zzz_generated/lock-app/" "${CMAKE_SOURCE_DIR}/third_party/connectedhomeip/examples/providers" "${CMAKE_CURRENT_LIST_DIR}/include" SRC_DIRS @@ -203,4 +201,3 @@ include("${CHIP_ROOT}/build/chip/esp32/esp32_codegen.cmake") chip_app_component_codegen("${CHIP_ROOT}/examples/lock-app/lock-common/lock-app.matter") chip_app_component_zapgen("${CHIP_ROOT}/examples/lock-app/lock-common/lock-app.zap") - diff --git a/examples/ota-provider-app/esp32/main/CMakeLists.txt b/examples/ota-provider-app/esp32/main/CMakeLists.txt index 1cd8eae90953c6..2572149172141a 100644 --- a/examples/ota-provider-app/esp32/main/CMakeLists.txt +++ b/examples/ota-provider-app/esp32/main/CMakeLists.txt @@ -18,7 +18,6 @@ # (Uses default behaviour of compiling all source files in directory, adding 'include' to include path.) idf_component_register(PRIV_INCLUDE_DIRS "${CMAKE_CURRENT_LIST_DIR}/include" - "${CMAKE_SOURCE_DIR}/third_party/connectedhomeip/zzz_generated/ota-provider-app/" "${CMAKE_SOURCE_DIR}/third_party/connectedhomeip/examples/ota-provider-app" "${CMAKE_SOURCE_DIR}/third_party/connectedhomeip/examples/providers" SRC_DIRS diff --git a/examples/ota-requestor-app/esp32/main/CMakeLists.txt b/examples/ota-requestor-app/esp32/main/CMakeLists.txt index e4fb78dc0d55f6..011d4a95c4d570 100644 --- a/examples/ota-requestor-app/esp32/main/CMakeLists.txt +++ b/examples/ota-requestor-app/esp32/main/CMakeLists.txt @@ -21,7 +21,6 @@ get_filename_component(CHIP_ROOT ${CMAKE_SOURCE_DIR}/third_party/connectedhomeip set(PRIV_INCLUDE_DIRS_LIST "${CMAKE_CURRENT_LIST_DIR}/include" "${CMAKE_SOURCE_DIR}/third_party/connectedhomeip/src" - "${CMAKE_SOURCE_DIR}/third_party/connectedhomeip/zzz_generated/ota-requestor-app/" "${CMAKE_SOURCE_DIR}/third_party/connectedhomeip/examples/platform/esp32" "${CMAKE_SOURCE_DIR}/third_party/connectedhomeip/examples/providers" ) diff --git a/examples/temperature-measurement-app/esp32/main/CMakeLists.txt b/examples/temperature-measurement-app/esp32/main/CMakeLists.txt index 18cfe375c224c1..8e41f8f6b6eb35 100644 --- a/examples/temperature-measurement-app/esp32/main/CMakeLists.txt +++ b/examples/temperature-measurement-app/esp32/main/CMakeLists.txt @@ -19,7 +19,6 @@ get_filename_component(CHIP_ROOT ${CMAKE_SOURCE_DIR}/third_party/connectedhomeip REALPATH) set(PRIV_INCLUDE_DIRS_LIST - "${CMAKE_SOURCE_DIR}/third_party/connectedhomeip/zzz_generated/temperature-measurement-app/" "${CMAKE_CURRENT_LIST_DIR}/include" "${CMAKE_SOURCE_DIR}/third_party/connectedhomeip/examples/platform/esp32" "${CMAKE_SOURCE_DIR}/third_party/connectedhomeip/examples/providers" diff --git a/scripts/examples/gn_build_test_example.sh b/scripts/examples/gn_build_test_example.sh index e810cd437d7f91..52b56c2428b93e 100755 --- a/scripts/examples/gn_build_test_example.sh +++ b/scripts/examples/gn_build_test_example.sh @@ -36,12 +36,6 @@ function runZAP() { # Create the folder to host the generated content if needed mkdir -p "$ZAP_OUTPUT_DIR" - # https://github.com/project-chip/connectedhomeip/issues/3637 - # af-gen-event.h is not generated, but the build process needs it. Just creates an empty file for now. - if [ ! -f "$ZAP_OUTPUT_DIR/af-gen-event.h" ]; then - touch "$ZAP_OUTPUT_DIR"/af-gen-event.h - fi - # Generates the generic files for the given zap configuration "$CHIP_ROOT"/scripts/tools/zap/generate.py "$ZAP_INPUT_FILE" -o "$ZAP_OUTPUT_DIR" diff --git a/scripts/tools/zap/tests/outputs/all-clusters-app/app-templates/endpoint_config.h b/scripts/tools/zap/tests/outputs/all-clusters-app/app-templates/endpoint_config.h index e1fcdae36ccdfb..d1adcab280db5b 100644 --- a/scripts/tools/zap/tests/outputs/all-clusters-app/app-templates/endpoint_config.h +++ b/scripts/tools/zap/tests/outputs/all-clusters-app/app-templates/endpoint_config.h @@ -1563,9 +1563,11 @@ }; \ const EmberAfGenericClusterFunction chipFuncArrayOnOffServer[] = { \ (EmberAfGenericClusterFunction) emberAfOnOffClusterServerInitCallback, \ + (EmberAfGenericClusterFunction) MatterOnOffClusterServerShutdownCallback, \ }; \ const EmberAfGenericClusterFunction chipFuncArrayLevelControlServer[] = { \ (EmberAfGenericClusterFunction) emberAfLevelControlClusterServerInitCallback, \ + (EmberAfGenericClusterFunction) MatterLevelControlClusterServerShutdownCallback, \ }; \ const EmberAfGenericClusterFunction chipFuncArrayModeSelectServer[] = { \ (EmberAfGenericClusterFunction) emberAfModeSelectClusterServerInitCallback, \ @@ -1573,11 +1575,15 @@ }; \ const EmberAfGenericClusterFunction chipFuncArrayDoorLockServer[] = { \ (EmberAfGenericClusterFunction) MatterDoorLockClusterServerAttributeChangedCallback, \ + (EmberAfGenericClusterFunction) MatterDoorLockClusterServerShutdownCallback, \ (EmberAfGenericClusterFunction) MatterDoorLockClusterServerPreAttributeChangedCallback, \ }; \ const EmberAfGenericClusterFunction chipFuncArrayWindowCoveringServer[] = { \ (EmberAfGenericClusterFunction) MatterWindowCoveringClusterServerAttributeChangedCallback, \ }; \ + const EmberAfGenericClusterFunction chipFuncArrayBarrierControlServer[] = { \ + (EmberAfGenericClusterFunction) MatterBarrierControlClusterServerShutdownCallback, \ + }; \ const EmberAfGenericClusterFunction chipFuncArrayPumpConfigurationAndControlServer[] = { \ (EmberAfGenericClusterFunction) emberAfPumpConfigurationAndControlClusterServerInitCallback, \ (EmberAfGenericClusterFunction) MatterPumpConfigurationAndControlClusterServerAttributeChangedCallback, \ @@ -1596,6 +1602,7 @@ }; \ const EmberAfGenericClusterFunction chipFuncArrayColorControlServer[] = { \ (EmberAfGenericClusterFunction) emberAfColorControlClusterServerInitCallback, \ + (EmberAfGenericClusterFunction) MatterColorControlClusterServerShutdownCallback, \ }; \ const EmberAfGenericClusterFunction chipFuncArrayOccupancySensingServer[] = { \ (EmberAfGenericClusterFunction) emberAfOccupancySensingClusterServerInitCallback, \ @@ -2355,7 +2362,7 @@ .attributes = ZAP_ATTRIBUTE_INDEX(247), \ .attributeCount = 7, \ .clusterSize = 13, \ - .mask = ZAP_CLUSTER_MASK(SERVER) | ZAP_CLUSTER_MASK(INIT_FUNCTION), \ + .mask = ZAP_CLUSTER_MASK(SERVER) | ZAP_CLUSTER_MASK(INIT_FUNCTION) | ZAP_CLUSTER_MASK(SHUTDOWN_FUNCTION), \ .functions = chipFuncArrayOnOffServer, \ .acceptedCommandList = ZAP_GENERATED_COMMANDS_INDEX( 109 ) ,\ .generatedCommandList = nullptr ,\ @@ -2381,7 +2388,7 @@ .attributes = ZAP_ATTRIBUTE_INDEX(258), \ .attributeCount = 16, \ .clusterSize = 27, \ - .mask = ZAP_CLUSTER_MASK(SERVER) | ZAP_CLUSTER_MASK(INIT_FUNCTION), \ + .mask = ZAP_CLUSTER_MASK(SERVER) | ZAP_CLUSTER_MASK(INIT_FUNCTION) | ZAP_CLUSTER_MASK(SHUTDOWN_FUNCTION), \ .functions = chipFuncArrayLevelControlServer, \ .acceptedCommandList = ZAP_GENERATED_COMMANDS_INDEX( 116 ) ,\ .generatedCommandList = nullptr ,\ @@ -2524,7 +2531,7 @@ .attributes = ZAP_ATTRIBUTE_INDEX(324), \ .attributeCount = 33, \ .clusterSize = 55, \ - .mask = ZAP_CLUSTER_MASK(SERVER) | ZAP_CLUSTER_MASK(ATTRIBUTE_CHANGED_FUNCTION) | ZAP_CLUSTER_MASK(PRE_ATTRIBUTE_CHANGED_FUNCTION), \ + .mask = ZAP_CLUSTER_MASK(SERVER) | ZAP_CLUSTER_MASK(ATTRIBUTE_CHANGED_FUNCTION) | ZAP_CLUSTER_MASK(SHUTDOWN_FUNCTION) | ZAP_CLUSTER_MASK(PRE_ATTRIBUTE_CHANGED_FUNCTION), \ .functions = chipFuncArrayDoorLockServer, \ .acceptedCommandList = ZAP_GENERATED_COMMANDS_INDEX( 127 ) ,\ .generatedCommandList = ZAP_GENERATED_COMMANDS_INDEX( 142 ) ,\ @@ -2550,8 +2557,8 @@ .attributes = ZAP_ATTRIBUTE_INDEX(381), \ .attributeCount = 6, \ .clusterSize = 11, \ - .mask = ZAP_CLUSTER_MASK(SERVER), \ - .functions = NULL, \ + .mask = ZAP_CLUSTER_MASK(SERVER) | ZAP_CLUSTER_MASK(SHUTDOWN_FUNCTION), \ + .functions = chipFuncArrayBarrierControlServer, \ .acceptedCommandList = ZAP_GENERATED_COMMANDS_INDEX( 156 ) ,\ .generatedCommandList = nullptr ,\ .eventList = nullptr, \ @@ -2615,7 +2622,7 @@ .attributes = ZAP_ATTRIBUTE_INDEX(446), \ .attributeCount = 54, \ .clusterSize = 345, \ - .mask = ZAP_CLUSTER_MASK(SERVER) | ZAP_CLUSTER_MASK(INIT_FUNCTION), \ + .mask = ZAP_CLUSTER_MASK(SERVER) | ZAP_CLUSTER_MASK(INIT_FUNCTION) | ZAP_CLUSTER_MASK(SHUTDOWN_FUNCTION), \ .functions = chipFuncArrayColorControlServer, \ .acceptedCommandList = ZAP_GENERATED_COMMANDS_INDEX( 161 ) ,\ .generatedCommandList = nullptr ,\ @@ -2901,7 +2908,7 @@ .attributes = ZAP_ATTRIBUTE_INDEX(682), \ .attributeCount = 7, \ .clusterSize = 13, \ - .mask = ZAP_CLUSTER_MASK(SERVER) | ZAP_CLUSTER_MASK(INIT_FUNCTION), \ + .mask = ZAP_CLUSTER_MASK(SERVER) | ZAP_CLUSTER_MASK(INIT_FUNCTION) | ZAP_CLUSTER_MASK(SHUTDOWN_FUNCTION), \ .functions = chipFuncArrayOnOffServer, \ .acceptedCommandList = ZAP_GENERATED_COMMANDS_INDEX( 237 ) ,\ .generatedCommandList = nullptr ,\ diff --git a/scripts/tools/zap/tests/outputs/lighting-app/app-templates/endpoint_config.h b/scripts/tools/zap/tests/outputs/lighting-app/app-templates/endpoint_config.h index 5e6a4111d16834..4dbb215dd7731e 100644 --- a/scripts/tools/zap/tests/outputs/lighting-app/app-templates/endpoint_config.h +++ b/scripts/tools/zap/tests/outputs/lighting-app/app-templates/endpoint_config.h @@ -601,12 +601,15 @@ }; \ const EmberAfGenericClusterFunction chipFuncArrayOnOffServer[] = { \ (EmberAfGenericClusterFunction) emberAfOnOffClusterServerInitCallback, \ + (EmberAfGenericClusterFunction) MatterOnOffClusterServerShutdownCallback, \ }; \ const EmberAfGenericClusterFunction chipFuncArrayLevelControlServer[] = { \ (EmberAfGenericClusterFunction) emberAfLevelControlClusterServerInitCallback, \ + (EmberAfGenericClusterFunction) MatterLevelControlClusterServerShutdownCallback, \ }; \ const EmberAfGenericClusterFunction chipFuncArrayColorControlServer[] = { \ (EmberAfGenericClusterFunction) emberAfColorControlClusterServerInitCallback, \ + (EmberAfGenericClusterFunction) MatterColorControlClusterServerShutdownCallback, \ }; \ const EmberAfGenericClusterFunction chipFuncArrayOccupancySensingServer[] = { \ (EmberAfGenericClusterFunction) emberAfOccupancySensingClusterServerInitCallback, \ @@ -1108,7 +1111,7 @@ .attributes = ZAP_ATTRIBUTE_INDEX(214), \ .attributeCount = 7, \ .clusterSize = 13, \ - .mask = ZAP_CLUSTER_MASK(SERVER) | ZAP_CLUSTER_MASK(INIT_FUNCTION), \ + .mask = ZAP_CLUSTER_MASK(SERVER) | ZAP_CLUSTER_MASK(INIT_FUNCTION) | ZAP_CLUSTER_MASK(SHUTDOWN_FUNCTION), \ .functions = chipFuncArrayOnOffServer, \ .acceptedCommandList = ZAP_GENERATED_COMMANDS_INDEX( 88 ) ,\ .generatedCommandList = nullptr ,\ @@ -1121,7 +1124,7 @@ .attributes = ZAP_ATTRIBUTE_INDEX(221), \ .attributeCount = 16, \ .clusterSize = 27, \ - .mask = ZAP_CLUSTER_MASK(SERVER) | ZAP_CLUSTER_MASK(INIT_FUNCTION), \ + .mask = ZAP_CLUSTER_MASK(SERVER) | ZAP_CLUSTER_MASK(INIT_FUNCTION) | ZAP_CLUSTER_MASK(SHUTDOWN_FUNCTION), \ .functions = chipFuncArrayLevelControlServer, \ .acceptedCommandList = ZAP_GENERATED_COMMANDS_INDEX( 95 ) ,\ .generatedCommandList = nullptr ,\ @@ -1147,7 +1150,7 @@ .attributes = ZAP_ATTRIBUTE_INDEX(243), \ .attributeCount = 23, \ .clusterSize = 40, \ - .mask = ZAP_CLUSTER_MASK(SERVER) | ZAP_CLUSTER_MASK(INIT_FUNCTION), \ + .mask = ZAP_CLUSTER_MASK(SERVER) | ZAP_CLUSTER_MASK(INIT_FUNCTION) | ZAP_CLUSTER_MASK(SHUTDOWN_FUNCTION), \ .functions = chipFuncArrayColorControlServer, \ .acceptedCommandList = ZAP_GENERATED_COMMANDS_INDEX( 104 ) ,\ .generatedCommandList = nullptr ,\ diff --git a/scripts/tools/zap_regen_all.py b/scripts/tools/zap_regen_all.py index 243198925713fd..ee09ca86a76a09 100755 --- a/scripts/tools/zap_regen_all.py +++ b/scripts/tools/zap_regen_all.py @@ -144,25 +144,6 @@ def generate(self) -> TargetRunStats: generate_end = time.time() if "chef" in self.zap_config: - if self.output_dir: - af_gen_event = os.path.join(self.output_dir, "af-gen-event.h") - else: - # location of file is based on zap file, we update a default here. - # This is because matter idl codegen does NOT require an output directory. - # - # a file of: - # examples/chef/devices/rootnode_heatingcoolingunit_ncdGai1E5a.zap - # would get: - # zzz_generated/chef-rootnode_heatingcoolingunit_ncdGai1E5a/zap-generated/af-gen-event.h - # - af_gen_event = os.path.join( - CHIP_ROOT_DIR, 'zzz_generated', - 'chef-' + os.path.splitext(os.path.basename(self.zap_config))[0], - 'zap-generated', 'af-gen-event.h' - ) - - with open(af_gen_event, "w+"): # Empty file needed for linux - pass idl_path = self.zap_config.replace(".zap", ".matter") target_path = os.path.join("examples", "chef", diff --git a/src/app/chip_data_model.cmake b/src/app/chip_data_model.cmake index f3766f08717c31..e5b19626f52710 100644 --- a/src/app/chip_data_model.cmake +++ b/src/app/chip_data_model.cmake @@ -130,7 +130,6 @@ function(chip_configure_data_model APP_TARGET) target_sources(${APP_TARGET} ${SCOPE} ${CHIP_APP_BASE_DIR}/../../zzz_generated/app-common/app-common/zap-generated/attributes/Accessors.cpp ${CHIP_APP_BASE_DIR}/../../zzz_generated/app-common/app-common/zap-generated/cluster-objects.cpp - ${CHIP_APP_BASE_DIR}/util/af-event.cpp ${CHIP_APP_BASE_DIR}/util/attribute-size-util.cpp ${CHIP_APP_BASE_DIR}/util/attribute-storage.cpp ${CHIP_APP_BASE_DIR}/util/attribute-table.cpp diff --git a/src/app/chip_data_model.gni b/src/app/chip_data_model.gni index ff42f7c1b195ee..51c1b045b418e1 100644 --- a/src/app/chip_data_model.gni +++ b/src/app/chip_data_model.gni @@ -162,7 +162,6 @@ template("chip_data_model") { "${_app_root}/util/ClientMonitoringRegistrationTable.cpp", "${_app_root}/util/ClientMonitoringRegistrationTable.h", "${_app_root}/util/DataModelHandler.cpp", - "${_app_root}/util/af-event.cpp", "${_app_root}/util/attribute-size-util.cpp", "${_app_root}/util/attribute-storage.cpp", "${_app_root}/util/attribute-table.cpp", diff --git a/src/app/clusters/barrier-control-server/barrier-control-server.cpp b/src/app/clusters/barrier-control-server/barrier-control-server.cpp index 9dfa3d3440de0e..cea4812b546f3d 100644 --- a/src/app/clusters/barrier-control-server/barrier-control-server.cpp +++ b/src/app/clusters/barrier-control-server/barrier-control-server.cpp @@ -29,6 +29,9 @@ // We need this for initializating default reporting configurations. #include +#include +#include + using namespace chip; using namespace chip::app::Clusters; using namespace chip::app::Clusters::BarrierControl; @@ -52,6 +55,28 @@ static State state; #define ZCL_USING_BARRIER_CONTROL_CLUSTER_BARRIER_COMMAND_CLOSE_EVENTS_ATTRIBUTE #endif +/********************************************************** + * Matter timer scheduling glue logic + *********************************************************/ + +void emberAfBarrierControlClusterServerTickCallback(EndpointId endpoint); + +static void timerCallback(System::Layer *, void * callbackContext) +{ + emberAfBarrierControlClusterServerTickCallback(static_cast(reinterpret_cast(callbackContext))); +} + +static void scheduleTimerCallbackMs(EndpointId endpoint, uint32_t delayMs) +{ + DeviceLayer::SystemLayer().StartTimer(chip::System::Clock::Milliseconds32(delayMs), timerCallback, + reinterpret_cast(static_cast(endpoint))); +} + +static void cancelEndpointTimerCallback(EndpointId endpoint) +{ + DeviceLayer::SystemLayer().CancelTimer(timerCallback, reinterpret_cast(static_cast(endpoint))); +} + // ----------------------------------------------------------------------------- // Accessing attributes @@ -224,7 +249,7 @@ void emberAfBarrierControlClusterServerTickCallback(EndpointId endpoint) { emAfPluginBarrierControlServerSetBarrierPosition(endpoint, state.currentPosition); setMovingState(endpoint, EMBER_ZCL_BARRIER_CONTROL_MOVING_STATE_STOPPED); - emberAfDeactivateServerTick(endpoint, BarrierControl::Id); + cancelEndpointTimerCallback(endpoint); } else { @@ -252,7 +277,7 @@ void emberAfBarrierControlClusterServerTickCallback(EndpointId endpoint) setMovingState( endpoint, (state.increasing ? EMBER_ZCL_BARRIER_CONTROL_MOVING_STATE_OPENING : EMBER_ZCL_BARRIER_CONTROL_MOVING_STATE_CLOSING)); - emberAfScheduleServerTick(endpoint, BarrierControl::Id, state.delayMs); + scheduleTimerCallbackMs(endpoint, state.delayMs); } } @@ -296,7 +321,7 @@ bool emberAfBarrierControlClusterBarrierControlGoToPercentCallback( state.delayMs = calculateDelayMs(endpoint, state.targetPosition, &state.increasing); emberAfBarrierControlClusterPrintln("Scheduling barrier move from %d to %d with %" PRIu32 "ms delay", state.currentPosition, state.targetPosition, state.delayMs); - emberAfScheduleServerTick(endpoint, BarrierControl::Id, state.delayMs); + scheduleTimerCallbackMs(endpoint, state.delayMs); if (state.currentPosition < state.targetPosition) { @@ -318,10 +343,16 @@ bool emberAfBarrierControlClusterBarrierControlStopCallback(app::CommandHandler const Commands::BarrierControlStop::DecodableType & commandData) { EndpointId endpoint = commandPath.mEndpointId; - emberAfDeactivateServerTick(endpoint, BarrierControl::Id); + cancelEndpointTimerCallback(endpoint); setMovingState(endpoint, EMBER_ZCL_BARRIER_CONTROL_MOVING_STATE_STOPPED); sendDefaultResponse(commandObj, commandPath, Status::Success); return true; } void MatterBarrierControlPluginServerInitCallback() {} + +void MatterBarrierControlClusterServerShutdownCallback(EndpointId endpoint) +{ + emberAfBarrierControlClusterPrintln("Shuting barrier control server cluster on endpoint %d", endpoint); + cancelEndpointTimerCallback(endpoint); +} diff --git a/src/app/clusters/color-control-server/color-control-server.cpp b/src/app/clusters/color-control-server/color-control-server.cpp index c1c9ec877cfdf1..484a7eea763083 100644 --- a/src/app/clusters/color-control-server/color-control-server.cpp +++ b/src/app/clusters/color-control-server/color-control-server.cpp @@ -23,12 +23,56 @@ #include #include #include +#include +#include using namespace chip; using namespace chip::app::Clusters; using namespace chip::app::Clusters::ColorControl; using chip::Protocols::InteractionModel::Status; +/********************************************************** + * Matter timer scheduling glue logic + *********************************************************/ + +void ColorControlServer::timerCallback(System::Layer *, void * callbackContext) +{ + auto control = static_cast(callbackContext); + (control->callback)(control->endpoint); +} + +void ColorControlServer::scheduleTimerCallbackMs(EmberEventControl * control, uint32_t delayMs) +{ + CHIP_ERROR err = DeviceLayer::SystemLayer().StartTimer(chip::System::Clock::Milliseconds32(delayMs), timerCallback, control); + + if (err != CHIP_NO_ERROR) + { + ChipLogError(Zcl, "Color Control Server failed to schedule event: %" CHIP_ERROR_FORMAT, err.Format()); + } + else + { + control->status = EMBER_EVENT_MS_TIME; + } +} + +void ColorControlServer::cancelEndpointTimerCallback(EmberEventControl * control) +{ + if (control->status != EMBER_EVENT_INACTIVE) + { + control->status = EMBER_EVENT_INACTIVE; + } + DeviceLayer::SystemLayer().CancelTimer(timerCallback, control); +} + +void ColorControlServer::cancelEndpointTimerCallback(EndpointId endpoint) +{ + auto control = ColorControlServer::getEventControl(endpoint); + if (control) + { + cancelEndpointTimerCallback(control); + } +} + /********************************************************** * Attributes Definition *********************************************************/ @@ -58,7 +102,7 @@ Status ColorControlServer::stopAllColorTransitions(EndpointId endpoint) EmberEventControl * event = getEventControl(endpoint); VerifyOrReturnError(event != nullptr, Status::UnsupportedEndpoint); - emberEventControlSetInactive(event); + cancelEndpointTimerCallback(event); return Status::Success; } @@ -567,7 +611,7 @@ void ColorControlServer::startColorLoop(EndpointId endpoint, uint8_t startFromSt Attributes::RemainingTime::Set(endpoint, MAX_INT16U_VALUE); - emberEventControlSetDelayMS(configureHSVEventControl(endpoint), UPDATE_TIME_MS); + scheduleTimerCallbackMs(configureHSVEventControl(endpoint), UPDATE_TIME_MS); } /** @@ -849,7 +893,7 @@ bool ColorControlServer::moveHueCommand(app::CommandHandler * commandObj, const colorSaturationTransitionState->stepsRemaining = 0; // kick off the state machine: - emberEventControlSetDelayMS(configureHSVEventControl(endpoint), UPDATE_TIME_MS); + scheduleTimerCallbackMs(configureHSVEventControl(endpoint), UPDATE_TIME_MS); exit: commandObj->AddStatus(commandPath, status); @@ -997,7 +1041,7 @@ bool ColorControlServer::moveToHueCommand(app::CommandHandler * commandObj, cons Attributes::RemainingTime::Set(endpoint, transitionTime); // kick off the state machine: - emberEventControlSetDelayMS(configureHSVEventControl(endpoint), UPDATE_TIME_MS); + scheduleTimerCallbackMs(configureHSVEventControl(endpoint), UPDATE_TIME_MS); exit: commandObj->AddStatus(commandPath, status); @@ -1125,7 +1169,7 @@ bool ColorControlServer::moveToHueAndSaturationCommand(app::CommandHandler * com Attributes::RemainingTime::Set(endpoint, transitionTime); // kick off the state machine: - emberEventControlSetDelayMS(configureHSVEventControl(endpoint), UPDATE_TIME_MS); + scheduleTimerCallbackMs(configureHSVEventControl(endpoint), UPDATE_TIME_MS); exit: commandObj->AddStatus(commandPath, status); @@ -1236,7 +1280,7 @@ bool ColorControlServer::stepHueCommand(app::CommandHandler * commandObj, const Attributes::RemainingTime::Set(endpoint, transitionTime); // kick off the state machine: - emberEventControlSetDelayMS(configureHSVEventControl(endpoint), UPDATE_TIME_MS); + scheduleTimerCallbackMs(configureHSVEventControl(endpoint), UPDATE_TIME_MS); exit: commandObj->AddStatus(commandPath, status); @@ -1306,7 +1350,7 @@ bool ColorControlServer::moveSaturationCommand(app::CommandHandler * commandObj, Attributes::RemainingTime::Set(endpoint, transitionTime); // kick off the state machine: - emberEventControlSetDelayMS(configureHSVEventControl(endpoint), UPDATE_TIME_MS); + scheduleTimerCallbackMs(configureHSVEventControl(endpoint), UPDATE_TIME_MS); exit: commandObj->AddStatus(commandPath, status); @@ -1381,7 +1425,7 @@ bool ColorControlServer::moveToSaturationCommand(app::CommandHandler * commandOb Attributes::RemainingTime::Set(endpoint, transitionTime); // kick off the state machine: - emberEventControlSetDelayMS(configureHSVEventControl(endpoint), UPDATE_TIME_MS); + scheduleTimerCallbackMs(configureHSVEventControl(endpoint), UPDATE_TIME_MS); exit: commandObj->AddStatus(commandPath, status); @@ -1456,7 +1500,7 @@ bool ColorControlServer::stepSaturationCommand(app::CommandHandler * commandObj, Attributes::RemainingTime::Set(endpoint, transitionTime); // kick off the state machine: - emberEventControlSetDelayMS(configureHSVEventControl(endpoint), UPDATE_TIME_MS); + scheduleTimerCallbackMs(configureHSVEventControl(endpoint), UPDATE_TIME_MS); exit: commandObj->AddStatus(commandPath, status); @@ -1601,7 +1645,7 @@ void ColorControlServer::updateHueSatCommand(EndpointId endpoint) } else { - emberEventControlSetDelayMS(configureHSVEventControl(endpoint), UPDATE_TIME_MS); + scheduleTimerCallbackMs(configureHSVEventControl(endpoint), UPDATE_TIME_MS); } if (colorHueTransitionState->isEnhancedHue) @@ -1766,7 +1810,7 @@ bool ColorControlServer::moveToColorCommand(app::CommandHandler * commandObj, co Attributes::RemainingTime::Set(endpoint, transitionTime); // kick off the state machine: - emberEventControlSetDelayMS(configureXYEventControl(endpoint), UPDATE_TIME_MS); + scheduleTimerCallbackMs(configureXYEventControl(endpoint), UPDATE_TIME_MS); exit: commandObj->AddStatus(commandPath, status); @@ -1859,7 +1903,7 @@ bool ColorControlServer::moveColorCommand(app::CommandHandler * commandObj, cons } // kick off the state machine: - emberEventControlSetDelayMS(configureXYEventControl(endpoint), UPDATE_TIME_MS); + scheduleTimerCallbackMs(configureXYEventControl(endpoint), UPDATE_TIME_MS); exit: commandObj->AddStatus(commandPath, status); @@ -1933,7 +1977,7 @@ bool ColorControlServer::stepColorCommand(app::CommandHandler * commandObj, cons Attributes::RemainingTime::Set(endpoint, transitionTime); // kick off the state machine: - emberEventControlSetDelayMS(configureXYEventControl(endpoint), UPDATE_TIME_MS); + scheduleTimerCallbackMs(configureXYEventControl(endpoint), UPDATE_TIME_MS); exit: commandObj->AddStatus(commandPath, status); @@ -1962,7 +2006,7 @@ void ColorControlServer::updateXYCommand(EndpointId endpoint) } else { - emberEventControlSetDelayMS(configureXYEventControl(endpoint), UPDATE_TIME_MS); + scheduleTimerCallbackMs(configureXYEventControl(endpoint), UPDATE_TIME_MS); } // update the attributes @@ -2050,7 +2094,7 @@ Status ColorControlServer::moveToColorTemp(EndpointId aEndpoint, uint16_t colorT colorTempTransitionState->highLimit = temperatureMax; // kick off the state machine - emberEventControlSetDelayMS(configureTempEventControl(endpoint), UPDATE_TIME_MS); + scheduleTimerCallbackMs(configureTempEventControl(endpoint), UPDATE_TIME_MS); return Status::Success; } @@ -2162,7 +2206,7 @@ void ColorControlServer::updateTempCommand(EndpointId endpoint) } else { - emberEventControlSetDelayMS(configureTempEventControl(endpoint), UPDATE_TIME_MS); + scheduleTimerCallbackMs(configureTempEventControl(endpoint), UPDATE_TIME_MS); } Attributes::ColorTemperatureMireds::Set(endpoint, colorTempTransitionState->currentValue); @@ -2275,7 +2319,7 @@ bool ColorControlServer::moveColorTempCommand(app::CommandHandler * commandObj, Attributes::RemainingTime::Set(endpoint, transitionTime); // kick off the state machine: - emberEventControlSetDelayMS(configureTempEventControl(endpoint), UPDATE_TIME_MS); + scheduleTimerCallbackMs(configureTempEventControl(endpoint), UPDATE_TIME_MS); exit: commandObj->AddStatus(commandPath, status); @@ -2394,7 +2438,7 @@ bool ColorControlServer::stepColorTempCommand(app::CommandHandler * commandObj, Attributes::RemainingTime::Set(endpoint, transitionTime); // kick off the state machine: - emberEventControlSetDelayMS(configureTempEventControl(endpoint), UPDATE_TIME_MS); + scheduleTimerCallbackMs(configureTempEventControl(endpoint), UPDATE_TIME_MS); exit: commandObj->AddStatus(commandPath, status); @@ -2652,6 +2696,12 @@ void emberAfColorControlClusterServerInitCallback(EndpointId endpoint) #endif // EMBER_AF_PLUGIN_COLOR_CONTROL_SERVER_TEMP } +void MatterColorControlClusterServerShutdownCallback(EndpointId endpoint) +{ + emberAfColorControlClusterPrintln("Shuting down color control server cluster on endpoint %d", endpoint); + ColorControlServer::Instance().cancelEndpointTimerCallback(endpoint); +} + #ifdef EMBER_AF_PLUGIN_COLOR_CONTROL_SERVER_TEMP /** * @brief Callback for temperature update when timer is finished diff --git a/src/app/clusters/color-control-server/color-control-server.h b/src/app/clusters/color-control-server/color-control-server.h index 147454ce97a8c1..df4bcd143a29de 100644 --- a/src/app/clusters/color-control-server/color-control-server.h +++ b/src/app/clusters/color-control-server/color-control-server.h @@ -23,6 +23,7 @@ #include #include #include +#include #include /********************************************************** @@ -182,6 +183,8 @@ class ColorControlServer void updateTempCommand(chip::EndpointId endpoint); #endif // EMBER_AF_PLUGIN_COLOR_CONTROL_SERVER_TEMP + void cancelEndpointTimerCallback(chip::EndpointId endpoint); + private: /********************************************************** * Functions Definitions @@ -197,6 +200,11 @@ class ColorControlServer void computePwmFromXy(chip::EndpointId endpoint); bool computeNewColor16uValue(Color16uTransitionState * p); + // Matter timer scheduling glue logic + static void timerCallback(chip::System::Layer *, void * callbackContext); + void scheduleTimerCallbackMs(EmberEventControl * control, uint32_t delayMs); + void cancelEndpointTimerCallback(EmberEventControl * control); + #ifdef EMBER_AF_PLUGIN_COLOR_CONTROL_SERVER_HSV ColorHueTransitionState * getColorHueTransitionState(chip::EndpointId endpoint); Color16uTransitionState * getSaturationTransitionState(chip::EndpointId endpoint); diff --git a/src/app/clusters/door-lock-server/door-lock-server.cpp b/src/app/clusters/door-lock-server/door-lock-server.cpp index 02a692d5eb67e8..42354a8c9465c5 100644 --- a/src/app/clusters/door-lock-server/door-lock-server.cpp +++ b/src/app/clusters/door-lock-server/door-lock-server.cpp @@ -46,10 +46,7 @@ using chip::Protocols::InteractionModel::Status; static constexpr uint8_t DOOR_LOCK_SCHEDULE_MAX_HOUR = 23; static constexpr uint8_t DOOR_LOCK_SCHEDULE_MAX_MINUTE = 59; -// emberEventControlSetDelayMS() uses uint32_t for timeout in milliseconds but doesn't accept -// values more than MAX(UINT32) / 2. This is internal value. Thus, lets limit our relock timeout -// in seconds with the appropriate maximum to ensure that delay setting won't fail. -static constexpr uint32_t DOOR_LOCK_MAX_LOCK_TIMEOUT_SEC = MAX_INT32U_VALUE / (2 * MILLISECOND_TICKS_PER_SECOND); +static constexpr uint32_t DOOR_LOCK_MAX_LOCK_TIMEOUT_SEC = MAX_INT32U_VALUE / MILLISECOND_TICKS_PER_SECOND; DoorLockServer DoorLockServer::instance; @@ -3396,18 +3393,17 @@ void DoorLockServer::SendLockOperationEvent(chip::EndpointId endpointId, LockOpe void DoorLockServer::ScheduleAutoRelock(chip::EndpointId endpointId, uint32_t timeoutSec) { - emberEventControlSetInactive(&AutolockEvent); - - AutolockEvent.endpoint = endpointId; - AutolockEvent.callback = DoorLockOnAutoRelockCallback; - uint32_t timeoutMs = (DOOR_LOCK_MAX_LOCK_TIMEOUT_SEC >= timeoutSec) ? timeoutSec * MILLISECOND_TICKS_PER_SECOND : DOOR_LOCK_MAX_LOCK_TIMEOUT_SEC; - auto err = emberEventControlSetDelayMS(&AutolockEvent, timeoutMs); - if (EMBER_SUCCESS != err) + CHIP_ERROR err = + DeviceLayer::SystemLayer().StartTimer(chip::System::Clock::Milliseconds32(timeoutMs), DoorLockOnAutoRelockCallback, + reinterpret_cast(static_cast(endpointId))); + + if (err != CHIP_NO_ERROR) { - ChipLogError(Zcl, "Failed to schedule autorelock: timeout=%" PRIu32 ", status=0x%x", timeoutSec, err); + ChipLogError(Zcl, "Failed to schedule autorelock: timeout=%" PRIu32 ", status=%" CHIP_ERROR_FORMAT, timeoutSec, + err.Format()); } } @@ -3766,13 +3762,21 @@ void MatterDoorLockPluginServerInitCallback() void MatterDoorLockClusterServerAttributeChangedCallback(const app::ConcreteAttributePath & attributePath) {} +void MatterDoorLockClusterServerShutdownCallback(EndpointId endpoint) +{ + emberAfDoorLockClusterPrintln("Shuting door lock server cluster on endpoint %d", endpoint); + + DeviceLayer::SystemLayer().CancelTimer(DoorLockServer::DoorLockOnAutoRelockCallback, + reinterpret_cast(static_cast(endpoint))); +} + // ============================================================================= // Timer callbacks // ============================================================================= -void DoorLockServer::DoorLockOnAutoRelockCallback(chip::EndpointId endpointId) +void DoorLockServer::DoorLockOnAutoRelockCallback(System::Layer *, void * callbackContext) { - emberEventControlSetInactive(&DoorLockServer::Instance().AutolockEvent); + auto endpointId = static_cast(reinterpret_cast(callbackContext)); Nullable lockState; if (Attributes::LockState::Get(endpointId, lockState) != EMBER_ZCL_STATUS_SUCCESS || lockState.IsNull() || diff --git a/src/app/clusters/door-lock-server/door-lock-server.h b/src/app/clusters/door-lock-server/door-lock-server.h index 671794a69d7fdd..2d0fa45318890f 100644 --- a/src/app/clusters/door-lock-server/door-lock-server.h +++ b/src/app/clusters/door-lock-server/door-lock-server.h @@ -182,6 +182,8 @@ class DoorLockServer bool OnFabricRemoved(chip::EndpointId endpointId, chip::FabricIndex fabricIndex); + static void DoorLockOnAutoRelockCallback(chip::System::Layer *, void * callbackContext); + private: chip::FabricIndex getFabricIndex(const chip::app::CommandHandler * commandObj); chip::NodeId getNodeId(const chip::app::CommandHandler * commandObj); @@ -421,8 +423,6 @@ class DoorLockServer */ void ScheduleAutoRelock(chip::EndpointId endpointId, uint32_t timeoutSec); - static void DoorLockOnAutoRelockCallback(chip::EndpointId endpointId); - /** * @brief Send generic event * @@ -539,8 +539,6 @@ class DoorLockServer chip::app::CommandHandler * commandObj, const chip::app::ConcreteCommandPath & commandPath, const chip::app::Clusters::DoorLock::Commands::ClearYearDaySchedule::DecodableType & commandData); - EmberEventControl AutolockEvent; /**< for automatic relock scheduling */ - std::array mEndpointCtx; static DoorLockServer instance; diff --git a/src/app/clusters/level-control/level-control.cpp b/src/app/clusters/level-control/level-control.cpp index 51a8f5c919e95f..25989a7a8cc20e 100644 --- a/src/app/clusters/level-control/level-control.cpp +++ b/src/app/clusters/level-control/level-control.cpp @@ -176,13 +176,18 @@ static uint32_t computeCallbackWaitTimeMs(CallbackScheduleState & callbackSchedu return waitTime.count(); } -static void schedule(EndpointId endpoint, uint32_t delayMs) +static void scheduleTimerCallbackMs(EndpointId endpoint, uint32_t delayMs) { - DeviceLayer::SystemLayer().StartTimer(chip::System::Clock::Milliseconds32(delayMs), timerCallback, - reinterpret_cast(static_cast(endpoint))); + CHIP_ERROR err = DeviceLayer::SystemLayer().StartTimer(chip::System::Clock::Milliseconds32(delayMs), timerCallback, + reinterpret_cast(static_cast(endpoint))); + + if (err != CHIP_NO_ERROR) + { + ChipLogError(Zcl, "Level Control Server failed to schedule event: %" CHIP_ERROR_FORMAT, err.Format()); + } } -static void deactivate(EndpointId endpoint) +static void cancelEndpointTimerCallback(EndpointId endpoint) { DeviceLayer::SystemLayer().CancelTimer(timerCallback, reinterpret_cast(static_cast(endpoint))); } @@ -312,7 +317,7 @@ void emberAfLevelControlClusterServerTickCallback(EndpointId endpoint) { state->callbackSchedule.runTime = System::SystemClock().GetMonotonicTimestamp() - callbackStartTimestamp; writeRemainingTime(endpoint, static_cast(state->transitionTimeMs - state->elapsedTimeMs)); - schedule(endpoint, computeCallbackWaitTimeMs(state->callbackSchedule, state->eventDurationMs)); + scheduleTimerCallbackMs(endpoint, computeCallbackWaitTimeMs(state->callbackSchedule, state->eventDurationMs)); } } @@ -648,7 +653,7 @@ static Status moveToLevelHandler(EndpointId endpoint, CommandId commandId, uint8 } // Cancel any currently active command before fiddling with the state. - deactivate(endpoint); + cancelEndpointTimerCallback(endpoint); EmberAfStatus status = Attributes::CurrentLevel::Get(endpoint, currentLevel); if (status != EMBER_ZCL_STATUS_SUCCESS) @@ -760,7 +765,7 @@ static Status moveToLevelHandler(EndpointId endpoint, CommandId commandId, uint8 state->callbackSchedule.runTime = System::Clock::Milliseconds32(0); // The setup was successful, so mark the new state as active and return. - schedule(endpoint, computeCallbackWaitTimeMs(state->callbackSchedule, state->eventDurationMs)); + scheduleTimerCallbackMs(endpoint, computeCallbackWaitTimeMs(state->callbackSchedule, state->eventDurationMs)); #ifdef EMBER_AF_PLUGIN_ON_OFF // Check that the received MoveToLevelWithOnOff produces a On action and that the onoff support the lighting featuremap @@ -799,7 +804,7 @@ static void moveHandler(app::CommandHandler * commandObj, const app::ConcreteCom } // Cancel any currently active command before fiddling with the state. - deactivate(endpoint); + cancelEndpointTimerCallback(endpoint); status = app::ToInteractionModelStatus(Attributes::CurrentLevel::Get(endpoint, currentLevel)); if (status != Status::Success) @@ -897,7 +902,7 @@ static void moveHandler(app::CommandHandler * commandObj, const app::ConcreteCom state->callbackSchedule.runTime = System::Clock::Milliseconds32(0); // The setup was successful, so mark the new state as active and return. - schedule(endpoint, computeCallbackWaitTimeMs(state->callbackSchedule, state->eventDurationMs)); + scheduleTimerCallbackMs(endpoint, computeCallbackWaitTimeMs(state->callbackSchedule, state->eventDurationMs)); status = Status::Success; send_default_response: @@ -930,7 +935,7 @@ static void stepHandler(app::CommandHandler * commandObj, const app::ConcreteCom } // Cancel any currently active command before fiddling with the state. - deactivate(endpoint); + cancelEndpointTimerCallback(endpoint); status = app::ToInteractionModelStatus(Attributes::CurrentLevel::Get(endpoint, currentLevel)); if (status != Status::Success) @@ -1037,7 +1042,7 @@ static void stepHandler(app::CommandHandler * commandObj, const app::ConcreteCom state->callbackSchedule.runTime = System::Clock::Milliseconds32(0); // The setup was successful, so mark the new state as active and return. - schedule(endpoint, computeCallbackWaitTimeMs(state->callbackSchedule, state->eventDurationMs)); + scheduleTimerCallbackMs(endpoint, computeCallbackWaitTimeMs(state->callbackSchedule, state->eventDurationMs)); status = Status::Success; send_default_response: @@ -1067,7 +1072,7 @@ static void stopHandler(app::CommandHandler * commandObj, const app::ConcreteCom } // Cancel any currently active command. - deactivate(endpoint); + cancelEndpointTimerCallback(endpoint); writeRemainingTime(endpoint, 0); status = Status::Success; @@ -1298,6 +1303,12 @@ void emberAfLevelControlClusterServerInitCallback(EndpointId endpoint) emberAfPluginLevelControlClusterServerPostInitCallback(endpoint); } +void MatterLevelControlClusterServerShutdownCallback(EndpointId endpoint) +{ + emberAfLevelControlClusterPrintln("Shuting down level control server cluster on endpoint %d", endpoint); + cancelEndpointTimerCallback(endpoint); +} + #ifndef IGNORE_LEVEL_CONTROL_CLUSTER_START_UP_CURRENT_LEVEL static bool areStartUpLevelControlServerAttributesNonVolatile(EndpointId endpoint) { diff --git a/src/app/clusters/on-off-server/on-off-server.cpp b/src/app/clusters/on-off-server/on-off-server.cpp index 3954db8cb704de..e9cd6afbf3126e 100644 --- a/src/app/clusters/on-off-server/on-off-server.cpp +++ b/src/app/clusters/on-off-server/on-off-server.cpp @@ -34,6 +34,9 @@ #include #endif // EMBER_AF_PLUGIN_LEVEL_CONTROL +#include +#include + using namespace chip; using namespace chip::app::Clusters; using namespace chip::app::Clusters::OnOff; @@ -52,6 +55,54 @@ OnOffServer OnOffServer::instance; static OnOffEffect * inst(EndpointId endpoint); +/********************************************************** + * Matter timer scheduling glue logic + *********************************************************/ + +void OnOffServer::timerCallback(System::Layer *, void * callbackContext) +{ + auto control = static_cast(callbackContext); + (control->callback)(control->endpoint); +} + +void OnOffServer::scheduleTimerCallbackMs(EmberEventControl * control, uint32_t delayMs) +{ + CHIP_ERROR err = DeviceLayer::SystemLayer().StartTimer(chip::System::Clock::Milliseconds32(delayMs), timerCallback, control); + + if (err != CHIP_NO_ERROR) + { + ChipLogError(Zcl, "OnOff Server failed to schedule event: %" CHIP_ERROR_FORMAT, err.Format()); + } + else + { + control->status = EMBER_EVENT_MS_TIME; + } +} + +void OnOffServer::cancelEndpointTimerCallback(EmberEventControl * control) +{ + if (control->status != EMBER_EVENT_INACTIVE) + { + control->status = EMBER_EVENT_INACTIVE; + } + DeviceLayer::SystemLayer().CancelTimer(timerCallback, control); +} + +void OnOffServer::cancelEndpointTimerCallback(EndpointId endpoint) +{ + auto control = OnOffServer::getEventControl(endpoint); + if (control) + { + cancelEndpointTimerCallback(control); + } +} + +void MatterOnOffClusterServerShutdownCallback(EndpointId endpoint) +{ + emberAfOnOffClusterPrintln("Shuting down on/off server cluster on endpoint %d", endpoint); + OnOffServer::Instance().cancelEndpointTimerCallback(endpoint); +} + /********************************************************** * OnOff Implementation *********************************************************/ @@ -151,7 +202,7 @@ EmberAfStatus OnOffServer::setOnOffValue(chip::EndpointId endpoint, chip::Comman EmberEventControl * event = getEventControl(endpoint); if (event != nullptr) { - emberEventControlSetInactive(event); + cancelEndpointTimerCallback(event); emberAfOnOffClusterPrintln("On/Toggle Command - Stop Timer"); } } @@ -518,7 +569,7 @@ bool OnOffServer::OnWithTimedOffCommand(app::CommandHandler * commandObj, const if (currentOnTime < MAX_TIME_VALUE && currentOffWaitTime < MAX_TIME_VALUE) { nextDesiredOnWithTimedOffTimestamp = chip::System::SystemClock().GetMonotonicTimestamp() + UPDATE_TIME_MS; - emberEventControlSetDelayMS(configureEventControl(endpoint), (uint32_t) UPDATE_TIME_MS.count()); + scheduleTimerCallbackMs(configureEventControl(endpoint), (uint32_t) UPDATE_TIME_MS.count()); } exit: @@ -541,7 +592,7 @@ void OnOffServer::updateOnOffTimeCommand(chip::EndpointId endpoint) if (isOn) // OnOff On case { // Restart Timer - emberEventControlSetDelayMS(configureEventControl(endpoint), calculateNextWaitTimeMS()); + scheduleTimerCallbackMs(configureEventControl(endpoint), calculateNextWaitTimeMS()); // Update onTime values uint16_t onTime = MIN_TIME_VALUE; @@ -580,14 +631,14 @@ void OnOffServer::updateOnOffTimeCommand(chip::EndpointId endpoint) if (offWaitTime > 0) { // Restart Timer - emberEventControlSetDelayMS(configureEventControl(endpoint), calculateNextWaitTimeMS()); + scheduleTimerCallbackMs(configureEventControl(endpoint), calculateNextWaitTimeMS()); } else { emberAfOnOffClusterPrintln("Timer Callback - wait Off Time cycle finished"); // Stop timer on the endpoint - emberEventControlSetInactive(getEventControl(endpoint)); + cancelEndpointTimerCallback(getEventControl(endpoint)); } } } diff --git a/src/app/clusters/on-off-server/on-off-server.h b/src/app/clusters/on-off-server/on-off-server.h index 49157e99d31430..45b34a992293cf 100644 --- a/src/app/clusters/on-off-server/on-off-server.h +++ b/src/app/clusters/on-off-server/on-off-server.h @@ -23,6 +23,7 @@ #include #include #include +#include using chip::app::Clusters::OnOff::OnOffFeature; @@ -69,6 +70,8 @@ class OnOffServer return HasFeature(endpointId, OnOffFeature::kLighting); } + void cancelEndpointTimerCallback(chip::EndpointId endpoint); + private: /********************************************************** * Functions Definitions @@ -81,6 +84,12 @@ class OnOffServer EmberEventControl * configureEventControl(chip::EndpointId endpoint); uint32_t calculateNextWaitTimeMS(void); + + // Matter timer scheduling glue logic + static void timerCallback(chip::System::Layer *, void * callbackContext); + void scheduleTimerCallbackMs(EmberEventControl * control, uint32_t delayMs); + void cancelEndpointTimerCallback(EmberEventControl * control); + /********************************************************** * Attributes Declaration *********************************************************/ diff --git a/src/app/common/templates/config-data.yaml b/src/app/common/templates/config-data.yaml index 4c2e9e8d4db42c..b118bf17b25def 100644 --- a/src/app/common/templates/config-data.yaml +++ b/src/app/common/templates/config-data.yaml @@ -62,6 +62,13 @@ ClustersWithAttributeChangedFunctions: - Window Covering - Fan Control +ClustersWithShutdownFunctions: + - Barrier Control + - On/Off + - Door Lock + - Level Control + - Color Control + ClustersWithPreAttributeChangeFunctions: - Door Lock - Pump Configuration and Control @@ -71,5 +78,3 @@ ClustersWithPreAttributeChangeFunctions: - Mode Select - Fan Control - Thermostat - -ClustersWithShutdownFunctions: [] diff --git a/src/app/util/af-event.cpp b/src/app/util/af-event.cpp deleted file mode 100644 index 43fa366eba0d92..00000000000000 --- a/src/app/util/af-event.cpp +++ /dev/null @@ -1,209 +0,0 @@ -/** - * - * Copyright (c) 2020 Project CHIP Authors - * - * Licensed 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. - */ - -#include - -#include -#include -#include - -#include - -#define EMBER_MAX_EVENT_CONTROL_DELAY_MS (UINT32_MAX / 2) -#define EMBER_MAX_EVENT_CONTROL_DELAY_QS (EMBER_MAX_EVENT_CONTROL_DELAY_MS >> 8) -#define EMBER_MAX_EVENT_CONTROL_DELAY_MINUTES (EMBER_MAX_EVENT_CONTROL_DELAY_MS >> 16) - -#include - -#include - -using namespace chip; - -struct EmberEventData -{ - /** The control structure for the event. */ - EmberEventControl * control; - /** The procedure to call when the event fires. */ - void (*handler)(); -}; - -// ***************************************************************************** -// Globals - -#ifdef EMBER_AF_GENERATED_EVENT_CODE -EMBER_AF_GENERATED_EVENT_CODE -#endif // EMBER_AF_GENERATED_EVENT_CODE - -#if defined(EMBER_AF_GENERATED_EVENT_CONTEXT) -uint16_t emAfAppEventContextLength = EMBER_AF_EVENT_CONTEXT_LENGTH; -EmberAfEventContext emAfAppEventContext[] = { EMBER_AF_GENERATED_EVENT_CONTEXT }; -#endif // EMBER_AF_GENERATED_EVENT_CONTEXT - -const char * emAfEventStrings[] = { - -#ifdef EMBER_AF_GENERATED_EVENTS - EMBER_AF_GENERATED_EVENT_STRINGS -#endif - - nullptr, -}; - -EmberEventData emAfEvents[] = { - -#ifdef EMBER_AF_GENERATED_EVENTS - EMBER_AF_GENERATED_EVENTS -#endif - - { nullptr, nullptr } -}; - -void EventControlHandler(chip::System::Layer * systemLayer, void * appState) -{ - EmberEventControl * control = reinterpret_cast(appState); - if (control->status != EMBER_EVENT_INACTIVE) - { - control->status = EMBER_EVENT_INACTIVE; - - if (control->callback != nullptr) - { - (control->callback)(control->endpoint); - return; - } - - for (const EmberEventData & event : emAfEvents) - { - if (event.control != control) - continue; - control->status = EMBER_EVENT_INACTIVE; - event.handler(); - break; - } - } -} - -// ***************************************************************************** -// Functions - -static EmberAfEventContext * findEventContext(EndpointId endpoint, ClusterId clusterId, bool isClient) -{ -#if defined(EMBER_AF_GENERATED_EVENT_CONTEXT) - uint16_t i; - for (i = 0; i < emAfAppEventContextLength; i++) - { - EmberAfEventContext * context = &(emAfAppEventContext[i]); - if (context->endpoint == endpoint && context->clusterId == clusterId && context->isClient == isClient) - { - return context; - } - } -#endif // EMBER_AF_GENERATED_EVENT_CONTEXT - return nullptr; -} - -EmberStatus emberEventControlSetDelayMS(EmberEventControl * control, uint32_t delayMs) -{ - if (delayMs <= EMBER_MAX_EVENT_CONTROL_DELAY_MS) - { - control->status = EMBER_EVENT_MS_TIME; -#if !CHIP_DEVICE_LAYER_NONE - chip::DeviceLayer::SystemLayer().StartTimer(chip::System::Clock::Milliseconds32(delayMs), EventControlHandler, control); -#endif - } - else - { - return EMBER_BAD_ARGUMENT; - } - return EMBER_SUCCESS; -} - -void emberEventControlSetInactive(EmberEventControl * control) -{ - if (control->status != EMBER_EVENT_INACTIVE) - { - control->status = EMBER_EVENT_INACTIVE; -#if !CHIP_DEVICE_LAYER_NONE - chip::DeviceLayer::SystemLayer().CancelTimer(EventControlHandler, control); -#endif - } -} - -bool emberEventControlGetActive(EmberEventControl * control) -{ - return control->status != EMBER_EVENT_INACTIVE; -} - -void emberEventControlSetActive(EmberEventControl * control) -{ - control->status = EMBER_EVENT_ZERO_DELAY; -#if !CHIP_DEVICE_LAYER_NONE - chip::DeviceLayer::SystemLayer().ScheduleWork(EventControlHandler, control); -#endif -} - -EmberStatus emberAfScheduleTickExtended(EndpointId endpoint, ClusterId clusterId, bool isClient, uint32_t delayMs, - EmberAfEventPollControl pollControl, EmberAfEventSleepControl sleepControl) -{ - EmberAfEventContext * context = findEventContext(endpoint, clusterId, isClient); - - // Disabled endpoints cannot schedule events. This will catch the problem in - // simulation. - EMBER_TEST_ASSERT(emberAfEndpointIsEnabled(endpoint)); - - if (context != nullptr && emberAfEndpointIsEnabled(endpoint) && - (emberEventControlSetDelayMS(context->eventControl, delayMs) == EMBER_SUCCESS)) - { - context->pollControl = pollControl; - context->sleepControl = sleepControl; - return EMBER_SUCCESS; - } - return EMBER_BAD_ARGUMENT; -} - -EmberStatus emberAfScheduleClusterTick(EndpointId endpoint, ClusterId clusterId, bool isClient, uint32_t delayMs, - EmberAfEventSleepControl sleepControl) -{ - return emberAfScheduleTickExtended(endpoint, clusterId, isClient, delayMs, - (sleepControl == EMBER_AF_OK_TO_HIBERNATE ? EMBER_AF_LONG_POLL : EMBER_AF_SHORT_POLL), - (sleepControl == EMBER_AF_STAY_AWAKE ? EMBER_AF_STAY_AWAKE : EMBER_AF_OK_TO_SLEEP)); -} - -EmberStatus emberAfScheduleServerTickExtended(EndpointId endpoint, ClusterId clusterId, uint32_t delayMs, - EmberAfEventPollControl pollControl, EmberAfEventSleepControl sleepControl) -{ - return emberAfScheduleTickExtended(endpoint, clusterId, EMBER_AF_SERVER_CLUSTER_TICK, delayMs, pollControl, sleepControl); -} - -EmberStatus emberAfScheduleServerTick(EndpointId endpoint, ClusterId clusterId, uint32_t delayMs) -{ - return emberAfScheduleServerTickExtended(endpoint, clusterId, delayMs, EMBER_AF_LONG_POLL, EMBER_AF_OK_TO_SLEEP); -} - -EmberStatus emberAfDeactivateClusterTick(EndpointId endpoint, ClusterId clusterId, bool isClient) -{ - EmberAfEventContext * context = findEventContext(endpoint, clusterId, isClient); - if (context != nullptr) - { - emberEventControlSetInactive(context->eventControl); - return EMBER_SUCCESS; - } - return EMBER_BAD_ARGUMENT; -} - -EmberStatus emberAfDeactivateServerTick(EndpointId endpoint, ClusterId clusterId) -{ - return emberAfDeactivateClusterTick(endpoint, clusterId, EMBER_AF_SERVER_CLUSTER_TICK); -} diff --git a/src/app/util/af-types.h b/src/app/util/af-types.h index 5dfd7805e86222..19aa9db11a20d3 100644 --- a/src/app/util/af-types.h +++ b/src/app/util/af-types.h @@ -404,6 +404,14 @@ typedef void (*EmberAfTickFunction)(chip::EndpointId endpoint); */ typedef void (*EmberAfInitFunction)(chip::EndpointId endpoint); +/** + * @brief Type for referring to the shutdown callback for cluster. + * + * Init function is called when the cluster is shut down, for example + * when an endpoint is disabled + */ +typedef void (*EmberAfShutdownFunction)(chip::EndpointId endpoint); + /** * @brief Type for referring to the attribute changed callback function. * diff --git a/src/app/util/attribute-storage.cpp b/src/app/util/attribute-storage.cpp index eb7619cc8f7ea9..b7217184f6d7fe 100644 --- a/src/app/util/attribute-storage.cpp +++ b/src/app/util/attribute-storage.cpp @@ -39,6 +39,7 @@ #include using namespace chip; +using namespace chip::app; //------------------------------------------------------------------------------ // Globals @@ -363,6 +364,56 @@ static void initializeEndpoint(EmberAfDefinedEndpoint * definedEndpoint) } } +static void shutdownEndpoint(EmberAfDefinedEndpoint * definedEndpoint) +{ + // Call shutdown callbacks from clusters, mainly for canceling pending timers + uint8_t clusterIndex; + const EmberAfEndpointType * epType = definedEndpoint->endpointType; + for (clusterIndex = 0; clusterIndex < epType->clusterCount; clusterIndex++) + { + const EmberAfCluster * cluster = &(epType->cluster[clusterIndex]); + EmberAfGenericClusterFunction f = emberAfFindClusterFunction(cluster, CLUSTER_MASK_SHUTDOWN_FUNCTION); + if (f != nullptr) + { + ((EmberAfShutdownFunction) f)(definedEndpoint->endpoint); + } + } + + // Clear out any command handler overrides registered for this + // endpoint. + chip::app::InteractionModelEngine::GetInstance()->UnregisterCommandHandlers(definedEndpoint->endpoint); + + // Clear out any attribute access overrides registered for this + // endpoint. + app::AttributeAccessInterface * prev = nullptr; + app::AttributeAccessInterface * cur = gAttributeAccessOverrides; + while (cur) + { + app::AttributeAccessInterface * next = cur->GetNext(); + if (cur->MatchesEndpoint(definedEndpoint->endpoint)) + { + // Remove it from the list + if (prev) + { + prev->SetNext(next); + } + else + { + gAttributeAccessOverrides = next; + } + + cur->SetNext(nullptr); + + // Do not change prev in this case. + } + else + { + prev = cur; + } + cur = next; + } +} + // Calls the init functions. void emAfCallInits() { @@ -853,10 +904,6 @@ bool emberAfEndpointEnableDisable(EndpointId endpoint, bool enable) { emAfEndpoints[index].bitmask |= EMBER_AF_ENDPOINT_ENABLED; } - else - { - emAfEndpoints[index].bitmask &= EMBER_AF_ENDPOINT_DISABLED; - } #if defined(EZSP_HOST) ezspSetEndpointFlags(endpoint, (enable ? EZSP_ENDPOINT_ENABLED : EZSP_ENDPOINT_DISABLED)); @@ -871,55 +918,7 @@ bool emberAfEndpointEnableDisable(EndpointId endpoint, bool enable) } else { - uint8_t i; - for (i = 0; i < emAfEndpoints[index].endpointType->clusterCount; i++) - { - const EmberAfCluster * cluster = &((emAfEndpoints[index].endpointType->cluster)[i]); - // emberAfCorePrintln("Disabling cluster tick for ep:%d, cluster:0x%2X, %p", - // endpoint, - // cluster->clusterId, - // ((cluster->mask & CLUSTER_MASK_CLIENT) - // ? "client" - // : "server")); - // emberAfCoreFlush(); - emberAfDeactivateClusterTick( - endpoint, cluster->clusterId, - (cluster->mask & CLUSTER_MASK_CLIENT ? EMBER_AF_CLIENT_CLUSTER_TICK : EMBER_AF_SERVER_CLUSTER_TICK)); - } - - // Clear out any command handler overrides registered for this - // endpoint. - chip::app::InteractionModelEngine::GetInstance()->UnregisterCommandHandlers(endpoint); - - // Clear out any attribute access overrides registered for this - // endpoint. - app::AttributeAccessInterface * prev = nullptr; - app::AttributeAccessInterface * cur = gAttributeAccessOverrides; - while (cur) - { - app::AttributeAccessInterface * next = cur->GetNext(); - if (cur->MatchesEndpoint(endpoint)) - { - // Remove it from the list - if (prev) - { - prev->SetNext(next); - } - else - { - gAttributeAccessOverrides = next; - } - - cur->SetNext(nullptr); - - // Do not change prev in this case. - } - else - { - prev = cur; - } - cur = next; - } + shutdownEndpoint(&(emAfEndpoints[index])); } EndpointId parentEndpointId = emberAfParentEndpointFromIndex(index); @@ -940,6 +939,11 @@ bool emberAfEndpointEnableDisable(EndpointId endpoint, bool enable) app::Clusters::Descriptor::Attributes::PartsList::Id); } + if (!enable) + { + emAfEndpoints[index].bitmask &= EMBER_AF_ENDPOINT_DISABLED; + } + return true; } diff --git a/src/app/zap-templates/templates/app/att-storage.zapt b/src/app/zap-templates/templates/app/att-storage.zapt index b01f99a390eefe..d76a89be323409 100644 --- a/src/app/zap-templates/templates/app/att-storage.zapt +++ b/src/app/zap-templates/templates/app/att-storage.zapt @@ -13,8 +13,8 @@ #define CLUSTER_MASK_DEFAULT_RESPONSE_FUNCTION (0x04) // Does this cluster have message sent function? #define CLUSTER_MASK_MESSAGE_SENT_FUNCTION (0x08) -// Does this cluster have manufacturer specific attribute changed function? -#define CLUSTER_MASK_MANUFACTURER_SPECIFIC_ATTRIBUTE_CHANGED_FUNCTION (0x10) +// Does this cluster have shutdown function? +#define CLUSTER_MASK_SHUTDOWN_FUNCTION (0x10) // Does this cluster have pre-attribute changed function? #define CLUSTER_MASK_PRE_ATTRIBUTE_CHANGED_FUNCTION (0x20) // Cluster is a server diff --git a/src/app/zap-templates/templates/app/callback.zapt b/src/app/zap-templates/templates/app/callback.zapt index c158c789b14890..917bc6bda08376 100644 --- a/src/app/zap-templates/templates/app/callback.zapt +++ b/src/app/zap-templates/templates/app/callback.zapt @@ -44,6 +44,14 @@ void emberAf{{asUpperCamelCase label}}ClusterInitCallback(chip::EndpointId endpo */ void emberAf{{asUpperCamelCase label}}ClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief {{label}} Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void Matter{{asUpperCamelCase label}}ClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief {{label}} Cluster Client Init * * Client Init diff --git a/zzz_generated/all-clusters-app/zap-generated/af-gen-event.h b/zzz_generated/all-clusters-app/zap-generated/af-gen-event.h deleted file mode 100644 index 2568a68d25bd0d..00000000000000 --- a/zzz_generated/all-clusters-app/zap-generated/af-gen-event.h +++ /dev/null @@ -1,75 +0,0 @@ -/** - * - * Copyright (c) 2020 Project CHIP Authors - * - * Licensed 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. - */ - -/** - * - * Copyright (c) 2020 Silicon Labs - * - * Licensed 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. - */ -// This file is generated by Simplicity Studio. Please do not edit manually. -// -// - -// Enclosing macro to prevent multiple inclusion -#ifndef __AF_GEN_EVENT__ -#define __AF_GEN_EVENT__ - -// Code used to configure the cluster event mechanism -#define EMBER_AF_GENERATED_EVENT_CODE \ - EmberEventControl emberAfBarrierControlClusterServerTickCallbackControl1; \ - extern void emberAfPluginDoorLockServerLockoutEventHandler(void); \ - extern void emberAfPluginDoorLockServerRelockEventHandler(void); \ - static void clusterTickWrapper(EmberEventControl * control, EmberAfTickFunction callback, chip::EndpointId endpoint) \ - { \ - /* emberAfPushEndpointNetworkIndex(endpoint); */ \ - emberEventControlSetInactive(control); \ - (*callback)(endpoint); \ - /* emberAfPopNetworkIndex(); */ \ - } \ - void emberAfBarrierControlClusterServerTickCallbackWrapperFunction1(void) \ - { \ - clusterTickWrapper(&emberAfBarrierControlClusterServerTickCallbackControl1, \ - emberAfBarrierControlClusterServerTickCallback, 1); \ - } \ - /*to finish*/ - -// EmberEventData structs used to populate the EmberEventData table -#define EMBER_AF_GENERATED_EVENTS \ - { &emberAfBarrierControlClusterServerTickCallbackControl1, emberAfBarrierControlClusterServerTickCallbackWrapperFunction1 }, - -#define EMBER_AF_GENERATED_EVENT_STRINGS \ - "Barrier Control Cluster Server EP 1", "Door Lock Server Cluster Plugin Lockout", "Door Lock Server Cluster Plugin Relock", - -// The length of the event context table used to track and retrieve cluster events -#define EMBER_AF_EVENT_CONTEXT_LENGTH 1 - -// EmberAfEventContext structs used to populate the EmberAfEventContext table -#define EMBER_AF_GENERATED_EVENT_CONTEXT \ - { 0x1, 0x103, false, EMBER_AF_LONG_POLL, EMBER_AF_OK_TO_SLEEP, &emberAfBarrierControlClusterServerTickCallbackControl1 }, - -#endif // __AF_GEN_EVENT__ diff --git a/zzz_generated/all-clusters-minimal-app/zap-generated/af-gen-event.h b/zzz_generated/all-clusters-minimal-app/zap-generated/af-gen-event.h deleted file mode 100644 index 413268cb17d0fb..00000000000000 --- a/zzz_generated/all-clusters-minimal-app/zap-generated/af-gen-event.h +++ /dev/null @@ -1,77 +0,0 @@ -/** - * - * Copyright (c) 2020 Project CHIP Authors - * - * Licensed 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. - */ - -/** - * - * Copyright (c) 2020 Silicon Labs - * - * Licensed 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. - */ -// This file is generated by Simplicity Studio. Please do not edit manually. -// -// - -// Enclosing macro to prevent multiple inclusion -#ifndef __AF_GEN_EVENT__ -#define __AF_GEN_EVENT__ - -// Code used to configure the cluster event mechanism -#define EMBER_AF_GENERATED_EVENT_CODE \ - EmberEventControl emberAfLevelControlClusterServerTickCallbackControl1; \ - extern void emberAfPluginDoorLockServerLockoutEventHandler(void); \ - extern void emberAfPluginDoorLockServerRelockEventHandler(void); \ - static void clusterTickWrapper(EmberEventControl * control, EmberAfTickFunction callback, chip::EndpointId endpoint) \ - { \ - /* emberAfPushEndpointNetworkIndex(endpoint); */ \ - emberEventControlSetInactive(control); \ - (*callback)(endpoint); \ - /* emberAfPopNetworkIndex(); */ \ - } \ - void emberAfLevelControlClusterServerTickCallbackWrapperFunction1(void) \ - { \ - clusterTickWrapper(&emberAfLevelControlClusterServerTickCallbackControl1, emberAfLevelControlClusterServerTickCallback, \ - 1); \ - } \ - /*to finish*/ - -// EmberEventData structs used to populate the EmberEventData table -#define EMBER_AF_GENERATED_EVENTS \ - { &emberAfLevelControlClusterServerTickCallbackControl1, emberAfLevelControlClusterServerTickCallbackWrapperFunction1 }, - -#define EMBER_AF_GENERATED_EVENT_STRINGS \ - "Level Control Cluster Server EP 1", "Door Lock Server Cluster Plugin Lockout", "Door Lock Server Cluster Plugin Relock", - -// The length of the event context table used to track and retrieve cluster events -#define EMBER_AF_EVENT_CONTEXT_LENGTH 3 - -// EmberAfEventContext structs used to populate the EmberAfEventContext table -#define EMBER_AF_GENERATED_EVENT_CONTEXT \ - { \ - 0x1, 0x8, false, EMBER_AF_LONG_POLL, EMBER_AF_OK_TO_SLEEP, &emberAfLevelControlClusterServerTickCallbackControl1 \ - } - -#endif // __AF_GEN_EVENT__ diff --git a/zzz_generated/app-common/app-common/zap-generated/att-storage.h b/zzz_generated/app-common/app-common/zap-generated/att-storage.h index bf5b779faaeafd..0a21cc144e4871 100644 --- a/zzz_generated/app-common/app-common/zap-generated/att-storage.h +++ b/zzz_generated/app-common/app-common/zap-generated/att-storage.h @@ -30,8 +30,8 @@ #define CLUSTER_MASK_DEFAULT_RESPONSE_FUNCTION (0x04) // Does this cluster have message sent function? #define CLUSTER_MASK_MESSAGE_SENT_FUNCTION (0x08) -// Does this cluster have manufacturer specific attribute changed function? -#define CLUSTER_MASK_MANUFACTURER_SPECIFIC_ATTRIBUTE_CHANGED_FUNCTION (0x10) +// Does this cluster have shutdown function? +#define CLUSTER_MASK_SHUTDOWN_FUNCTION (0x10) // Does this cluster have pre-attribute changed function? #define CLUSTER_MASK_PRE_ATTRIBUTE_CHANGED_FUNCTION (0x20) // Cluster is a server diff --git a/zzz_generated/app-common/app-common/zap-generated/callback.h b/zzz_generated/app-common/app-common/zap-generated/callback.h index 1fb5ffef6cb791..bc2c409ee19aa2 100644 --- a/zzz_generated/app-common/app-common/zap-generated/callback.h +++ b/zzz_generated/app-common/app-common/zap-generated/callback.h @@ -623,6 +623,14 @@ void emberAfFaultInjectionClusterInitCallback(chip::EndpointId endpoint); */ void emberAfIdentifyClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief Identify Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterIdentifyClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief Identify Cluster Client Init * * Client Init @@ -693,6 +701,14 @@ void emberAfIdentifyClusterClientTickCallback(chip::EndpointId endpoint); */ void emberAfGroupsClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief Groups Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterGroupsClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief Groups Cluster Client Init * * Client Init @@ -763,6 +779,14 @@ void emberAfGroupsClusterClientTickCallback(chip::EndpointId endpoint); */ void emberAfScenesClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief Scenes Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterScenesClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief Scenes Cluster Client Init * * Client Init @@ -833,6 +857,14 @@ void emberAfScenesClusterClientTickCallback(chip::EndpointId endpoint); */ void emberAfOnOffClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief On/Off Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterOnOffClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief On/Off Cluster Client Init * * Client Init @@ -903,6 +935,14 @@ void emberAfOnOffClusterClientTickCallback(chip::EndpointId endpoint); */ void emberAfOnOffSwitchConfigurationClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief On/off Switch Configuration Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterOnOffSwitchConfigurationClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief On/off Switch Configuration Cluster Client Init * * Client Init @@ -971,6 +1011,14 @@ void emberAfOnOffSwitchConfigurationClusterClientTickCallback(chip::EndpointId e */ void emberAfLevelControlClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief Level Control Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterLevelControlClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief Level Control Cluster Client Init * * Client Init @@ -1041,6 +1089,14 @@ void emberAfLevelControlClusterClientTickCallback(chip::EndpointId endpoint); */ void emberAfBinaryInputBasicClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief Binary Input (Basic) Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterBinaryInputBasicClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief Binary Input (Basic) Cluster Client Init * * Client Init @@ -1111,6 +1167,14 @@ void emberAfBinaryInputBasicClusterClientTickCallback(chip::EndpointId endpoint) */ void emberAfPulseWidthModulationClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief Pulse Width Modulation Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterPulseWidthModulationClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief Pulse Width Modulation Cluster Client Init * * Client Init @@ -1179,6 +1243,14 @@ void emberAfPulseWidthModulationClusterClientTickCallback(chip::EndpointId endpo */ void emberAfDescriptorClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief Descriptor Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterDescriptorClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief Descriptor Cluster Client Init * * Client Init @@ -1249,6 +1321,14 @@ void emberAfDescriptorClusterClientTickCallback(chip::EndpointId endpoint); */ void emberAfBindingClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief Binding Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterBindingClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief Binding Cluster Client Init * * Client Init @@ -1319,6 +1399,14 @@ void emberAfBindingClusterClientTickCallback(chip::EndpointId endpoint); */ void emberAfAccessControlClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief Access Control Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterAccessControlClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief Access Control Cluster Client Init * * Client Init @@ -1389,6 +1477,14 @@ void emberAfAccessControlClusterClientTickCallback(chip::EndpointId endpoint); */ void emberAfActionsClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief Actions Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterActionsClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief Actions Cluster Client Init * * Client Init @@ -1459,6 +1555,14 @@ void emberAfActionsClusterClientTickCallback(chip::EndpointId endpoint); */ void emberAfBasicInformationClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief Basic Information Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterBasicInformationClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief Basic Information Cluster Client Init * * Client Init @@ -1529,6 +1633,14 @@ void emberAfBasicInformationClusterClientTickCallback(chip::EndpointId endpoint) */ void emberAfOtaSoftwareUpdateProviderClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief OTA Software Update Provider Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterOtaSoftwareUpdateProviderClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief OTA Software Update Provider Cluster Client Init * * Client Init @@ -1597,6 +1709,14 @@ void emberAfOtaSoftwareUpdateProviderClusterClientTickCallback(chip::EndpointId */ void emberAfOtaSoftwareUpdateRequestorClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief OTA Software Update Requestor Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterOtaSoftwareUpdateRequestorClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief OTA Software Update Requestor Cluster Client Init * * Client Init @@ -1665,6 +1785,14 @@ void emberAfOtaSoftwareUpdateRequestorClusterClientTickCallback(chip::EndpointId */ void emberAfLocalizationConfigurationClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief Localization Configuration Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterLocalizationConfigurationClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief Localization Configuration Cluster Client Init * * Client Init @@ -1733,6 +1861,14 @@ void emberAfLocalizationConfigurationClusterClientTickCallback(chip::EndpointId */ void emberAfTimeFormatLocalizationClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief Time Format Localization Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterTimeFormatLocalizationClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief Time Format Localization Cluster Client Init * * Client Init @@ -1801,6 +1937,14 @@ void emberAfTimeFormatLocalizationClusterClientTickCallback(chip::EndpointId end */ void emberAfUnitLocalizationClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief Unit Localization Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterUnitLocalizationClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief Unit Localization Cluster Client Init * * Client Init @@ -1871,6 +2015,14 @@ void emberAfUnitLocalizationClusterClientTickCallback(chip::EndpointId endpoint) */ void emberAfPowerSourceConfigurationClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief Power Source Configuration Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterPowerSourceConfigurationClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief Power Source Configuration Cluster Client Init * * Client Init @@ -1939,6 +2091,14 @@ void emberAfPowerSourceConfigurationClusterClientTickCallback(chip::EndpointId e */ void emberAfPowerSourceClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief Power Source Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterPowerSourceClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief Power Source Cluster Client Init * * Client Init @@ -2009,6 +2169,14 @@ void emberAfPowerSourceClusterClientTickCallback(chip::EndpointId endpoint); */ void emberAfGeneralCommissioningClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief General Commissioning Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterGeneralCommissioningClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief General Commissioning Cluster Client Init * * Client Init @@ -2077,6 +2245,14 @@ void emberAfGeneralCommissioningClusterClientTickCallback(chip::EndpointId endpo */ void emberAfNetworkCommissioningClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief Network Commissioning Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterNetworkCommissioningClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief Network Commissioning Cluster Client Init * * Client Init @@ -2145,6 +2321,14 @@ void emberAfNetworkCommissioningClusterClientTickCallback(chip::EndpointId endpo */ void emberAfDiagnosticLogsClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief Diagnostic Logs Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterDiagnosticLogsClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief Diagnostic Logs Cluster Client Init * * Client Init @@ -2215,6 +2399,14 @@ void emberAfDiagnosticLogsClusterClientTickCallback(chip::EndpointId endpoint); */ void emberAfGeneralDiagnosticsClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief General Diagnostics Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterGeneralDiagnosticsClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief General Diagnostics Cluster Client Init * * Client Init @@ -2283,6 +2475,14 @@ void emberAfGeneralDiagnosticsClusterClientTickCallback(chip::EndpointId endpoin */ void emberAfSoftwareDiagnosticsClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief Software Diagnostics Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterSoftwareDiagnosticsClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief Software Diagnostics Cluster Client Init * * Client Init @@ -2351,6 +2551,14 @@ void emberAfSoftwareDiagnosticsClusterClientTickCallback(chip::EndpointId endpoi */ void emberAfThreadNetworkDiagnosticsClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief Thread Network Diagnostics Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterThreadNetworkDiagnosticsClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief Thread Network Diagnostics Cluster Client Init * * Client Init @@ -2419,6 +2627,14 @@ void emberAfThreadNetworkDiagnosticsClusterClientTickCallback(chip::EndpointId e */ void emberAfWiFiNetworkDiagnosticsClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief WiFi Network Diagnostics Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterWiFiNetworkDiagnosticsClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief WiFi Network Diagnostics Cluster Client Init * * Client Init @@ -2487,6 +2703,14 @@ void emberAfWiFiNetworkDiagnosticsClusterClientTickCallback(chip::EndpointId end */ void emberAfEthernetNetworkDiagnosticsClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief Ethernet Network Diagnostics Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterEthernetNetworkDiagnosticsClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief Ethernet Network Diagnostics Cluster Client Init * * Client Init @@ -2555,6 +2779,14 @@ void emberAfEthernetNetworkDiagnosticsClusterClientTickCallback(chip::EndpointId */ void emberAfTimeSynchronizationClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief Time Synchronization Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterTimeSynchronizationClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief Time Synchronization Cluster Client Init * * Client Init @@ -2623,6 +2855,14 @@ void emberAfTimeSynchronizationClusterClientTickCallback(chip::EndpointId endpoi */ void emberAfBridgedDeviceBasicInformationClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief Bridged Device Basic Information Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterBridgedDeviceBasicInformationClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief Bridged Device Basic Information Cluster Client Init * * Client Init @@ -2692,6 +2932,14 @@ void emberAfBridgedDeviceBasicInformationClusterClientTickCallback(chip::Endpoin */ void emberAfSwitchClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief Switch Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterSwitchClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief Switch Cluster Client Init * * Client Init @@ -2762,6 +3010,14 @@ void emberAfSwitchClusterClientTickCallback(chip::EndpointId endpoint); */ void emberAfAdministratorCommissioningClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief Administrator Commissioning Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterAdministratorCommissioningClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief Administrator Commissioning Cluster Client Init * * Client Init @@ -2830,6 +3086,14 @@ void emberAfAdministratorCommissioningClusterClientTickCallback(chip::EndpointId */ void emberAfOperationalCredentialsClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief Operational Credentials Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterOperationalCredentialsClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief Operational Credentials Cluster Client Init * * Client Init @@ -2898,6 +3162,14 @@ void emberAfOperationalCredentialsClusterClientTickCallback(chip::EndpointId end */ void emberAfGroupKeyManagementClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief Group Key Management Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterGroupKeyManagementClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief Group Key Management Cluster Client Init * * Client Init @@ -2966,6 +3238,14 @@ void emberAfGroupKeyManagementClusterClientTickCallback(chip::EndpointId endpoin */ void emberAfFixedLabelClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief Fixed Label Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterFixedLabelClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief Fixed Label Cluster Client Init * * Client Init @@ -3036,6 +3316,14 @@ void emberAfFixedLabelClusterClientTickCallback(chip::EndpointId endpoint); */ void emberAfUserLabelClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief User Label Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterUserLabelClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief User Label Cluster Client Init * * Client Init @@ -3106,6 +3394,14 @@ void emberAfUserLabelClusterClientTickCallback(chip::EndpointId endpoint); */ void emberAfProxyConfigurationClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief Proxy Configuration Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterProxyConfigurationClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief Proxy Configuration Cluster Client Init * * Client Init @@ -3174,6 +3470,14 @@ void emberAfProxyConfigurationClusterClientTickCallback(chip::EndpointId endpoin */ void emberAfProxyDiscoveryClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief Proxy Discovery Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterProxyDiscoveryClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief Proxy Discovery Cluster Client Init * * Client Init @@ -3244,6 +3548,14 @@ void emberAfProxyDiscoveryClusterClientTickCallback(chip::EndpointId endpoint); */ void emberAfProxyValidClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief Proxy Valid Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterProxyValidClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief Proxy Valid Cluster Client Init * * Client Init @@ -3314,6 +3626,14 @@ void emberAfProxyValidClusterClientTickCallback(chip::EndpointId endpoint); */ void emberAfBooleanStateClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief Boolean State Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterBooleanStateClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief Boolean State Cluster Client Init * * Client Init @@ -3384,6 +3704,14 @@ void emberAfBooleanStateClusterClientTickCallback(chip::EndpointId endpoint); */ void emberAfModeSelectClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief Mode Select Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterModeSelectClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief Mode Select Cluster Client Init * * Client Init @@ -3454,6 +3782,14 @@ void emberAfModeSelectClusterClientTickCallback(chip::EndpointId endpoint); */ void emberAfDoorLockClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief Door Lock Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterDoorLockClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief Door Lock Cluster Client Init * * Client Init @@ -3524,6 +3860,14 @@ void emberAfDoorLockClusterClientTickCallback(chip::EndpointId endpoint); */ void emberAfWindowCoveringClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief Window Covering Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterWindowCoveringClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief Window Covering Cluster Client Init * * Client Init @@ -3594,6 +3938,14 @@ void emberAfWindowCoveringClusterClientTickCallback(chip::EndpointId endpoint); */ void emberAfBarrierControlClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief Barrier Control Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterBarrierControlClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief Barrier Control Cluster Client Init * * Client Init @@ -3664,6 +4016,14 @@ void emberAfBarrierControlClusterClientTickCallback(chip::EndpointId endpoint); */ void emberAfPumpConfigurationAndControlClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief Pump Configuration and Control Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterPumpConfigurationAndControlClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief Pump Configuration and Control Cluster Client Init * * Client Init @@ -3732,6 +4092,14 @@ void emberAfPumpConfigurationAndControlClusterClientTickCallback(chip::EndpointI */ void emberAfThermostatClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief Thermostat Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterThermostatClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief Thermostat Cluster Client Init * * Client Init @@ -3802,6 +4170,14 @@ void emberAfThermostatClusterClientTickCallback(chip::EndpointId endpoint); */ void emberAfFanControlClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief Fan Control Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterFanControlClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief Fan Control Cluster Client Init * * Client Init @@ -3872,6 +4248,14 @@ void emberAfFanControlClusterClientTickCallback(chip::EndpointId endpoint); */ void emberAfThermostatUserInterfaceConfigurationClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief Thermostat User Interface Configuration Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterThermostatUserInterfaceConfigurationClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief Thermostat User Interface Configuration Cluster Client Init * * Client Init @@ -3941,6 +4325,14 @@ void emberAfThermostatUserInterfaceConfigurationClusterClientTickCallback(chip:: */ void emberAfColorControlClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief Color Control Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterColorControlClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief Color Control Cluster Client Init * * Client Init @@ -4011,6 +4403,14 @@ void emberAfColorControlClusterClientTickCallback(chip::EndpointId endpoint); */ void emberAfBallastConfigurationClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief Ballast Configuration Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterBallastConfigurationClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief Ballast Configuration Cluster Client Init * * Client Init @@ -4079,6 +4479,14 @@ void emberAfBallastConfigurationClusterClientTickCallback(chip::EndpointId endpo */ void emberAfIlluminanceMeasurementClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief Illuminance Measurement Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterIlluminanceMeasurementClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief Illuminance Measurement Cluster Client Init * * Client Init @@ -4147,6 +4555,14 @@ void emberAfIlluminanceMeasurementClusterClientTickCallback(chip::EndpointId end */ void emberAfTemperatureMeasurementClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief Temperature Measurement Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterTemperatureMeasurementClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief Temperature Measurement Cluster Client Init * * Client Init @@ -4215,6 +4631,14 @@ void emberAfTemperatureMeasurementClusterClientTickCallback(chip::EndpointId end */ void emberAfPressureMeasurementClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief Pressure Measurement Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterPressureMeasurementClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief Pressure Measurement Cluster Client Init * * Client Init @@ -4283,6 +4707,14 @@ void emberAfPressureMeasurementClusterClientTickCallback(chip::EndpointId endpoi */ void emberAfFlowMeasurementClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief Flow Measurement Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterFlowMeasurementClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief Flow Measurement Cluster Client Init * * Client Init @@ -4353,6 +4785,14 @@ void emberAfFlowMeasurementClusterClientTickCallback(chip::EndpointId endpoint); */ void emberAfRelativeHumidityMeasurementClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief Relative Humidity Measurement Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterRelativeHumidityMeasurementClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief Relative Humidity Measurement Cluster Client Init * * Client Init @@ -4421,6 +4861,14 @@ void emberAfRelativeHumidityMeasurementClusterClientTickCallback(chip::EndpointI */ void emberAfOccupancySensingClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief Occupancy Sensing Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterOccupancySensingClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief Occupancy Sensing Cluster Client Init * * Client Init @@ -4491,6 +4939,14 @@ void emberAfOccupancySensingClusterClientTickCallback(chip::EndpointId endpoint) */ void emberAfWakeOnLanClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief Wake on LAN Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterWakeOnLanClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief Wake on LAN Cluster Client Init * * Client Init @@ -4561,6 +5017,14 @@ void emberAfWakeOnLanClusterClientTickCallback(chip::EndpointId endpoint); */ void emberAfChannelClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief Channel Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterChannelClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief Channel Cluster Client Init * * Client Init @@ -4631,6 +5095,14 @@ void emberAfChannelClusterClientTickCallback(chip::EndpointId endpoint); */ void emberAfTargetNavigatorClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief Target Navigator Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterTargetNavigatorClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief Target Navigator Cluster Client Init * * Client Init @@ -4701,6 +5173,14 @@ void emberAfTargetNavigatorClusterClientTickCallback(chip::EndpointId endpoint); */ void emberAfMediaPlaybackClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief Media Playback Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterMediaPlaybackClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief Media Playback Cluster Client Init * * Client Init @@ -4771,6 +5251,14 @@ void emberAfMediaPlaybackClusterClientTickCallback(chip::EndpointId endpoint); */ void emberAfMediaInputClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief Media Input Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterMediaInputClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief Media Input Cluster Client Init * * Client Init @@ -4841,6 +5329,14 @@ void emberAfMediaInputClusterClientTickCallback(chip::EndpointId endpoint); */ void emberAfLowPowerClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief Low Power Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterLowPowerClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief Low Power Cluster Client Init * * Client Init @@ -4911,6 +5407,14 @@ void emberAfLowPowerClusterClientTickCallback(chip::EndpointId endpoint); */ void emberAfKeypadInputClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief Keypad Input Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterKeypadInputClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief Keypad Input Cluster Client Init * * Client Init @@ -4981,6 +5485,14 @@ void emberAfKeypadInputClusterClientTickCallback(chip::EndpointId endpoint); */ void emberAfContentLauncherClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief Content Launcher Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterContentLauncherClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief Content Launcher Cluster Client Init * * Client Init @@ -5051,6 +5563,14 @@ void emberAfContentLauncherClusterClientTickCallback(chip::EndpointId endpoint); */ void emberAfAudioOutputClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief Audio Output Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterAudioOutputClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief Audio Output Cluster Client Init * * Client Init @@ -5121,6 +5641,14 @@ void emberAfAudioOutputClusterClientTickCallback(chip::EndpointId endpoint); */ void emberAfApplicationLauncherClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief Application Launcher Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterApplicationLauncherClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief Application Launcher Cluster Client Init * * Client Init @@ -5189,6 +5717,14 @@ void emberAfApplicationLauncherClusterClientTickCallback(chip::EndpointId endpoi */ void emberAfApplicationBasicClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief Application Basic Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterApplicationBasicClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief Application Basic Cluster Client Init * * Client Init @@ -5259,6 +5795,14 @@ void emberAfApplicationBasicClusterClientTickCallback(chip::EndpointId endpoint) */ void emberAfAccountLoginClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief Account Login Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterAccountLoginClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief Account Login Cluster Client Init * * Client Init @@ -5329,6 +5873,14 @@ void emberAfAccountLoginClusterClientTickCallback(chip::EndpointId endpoint); */ void emberAfElectricalMeasurementClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief Electrical Measurement Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterElectricalMeasurementClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief Electrical Measurement Cluster Client Init * * Client Init @@ -5397,6 +5949,14 @@ void emberAfElectricalMeasurementClusterClientTickCallback(chip::EndpointId endp */ void emberAfClientMonitoringClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief Client Monitoring Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterClientMonitoringClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief Client Monitoring Cluster Client Init * * Client Init @@ -5467,6 +6027,14 @@ void emberAfClientMonitoringClusterClientTickCallback(chip::EndpointId endpoint) */ void emberAfUnitTestingClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief Unit Testing Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterUnitTestingClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief Unit Testing Cluster Client Init * * Client Init @@ -5537,6 +6105,14 @@ void emberAfUnitTestingClusterClientTickCallback(chip::EndpointId endpoint); */ void emberAfFaultInjectionClusterServerInitCallback(chip::EndpointId endpoint); +/** @brief Fault Injection Cluster Server Shutdown + * + * Server Shutdown + * + * @param endpoint Endpoint that is being shutdown + */ +void MatterFaultInjectionClusterServerShutdownCallback(chip::EndpointId endpoint); + /** @brief Fault Injection Cluster Client Init * * Client Init diff --git a/zzz_generated/bridge-app/zap-generated/af-gen-event.h b/zzz_generated/bridge-app/zap-generated/af-gen-event.h deleted file mode 100644 index 814d4aab6b8bec..00000000000000 --- a/zzz_generated/bridge-app/zap-generated/af-gen-event.h +++ /dev/null @@ -1,39 +0,0 @@ -/** - * - * Copyright (c) 2020 Project CHIP Authors - * - * Licensed 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. - */ - -/** - * - * Copyright (c) 2020 Silicon Labs - * - * Licensed 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. - */ - -// Enclosing macro to prevent multiple inclusion -#ifndef __AF_GEN_EVENT__ -#define __AF_GEN_EVENT__ - -#endif // __AF_GEN_EVENT__ diff --git a/zzz_generated/chef-noip_rootnode_dimmablelight_bCwGYSDpoe/zap-generated/af-gen-event.h b/zzz_generated/chef-noip_rootnode_dimmablelight_bCwGYSDpoe/zap-generated/af-gen-event.h deleted file mode 100644 index e69de29bb2d1d6..00000000000000 diff --git a/zzz_generated/chef-rootnode_colortemperaturelight_hbUnzYVeyn/zap-generated/af-gen-event.h b/zzz_generated/chef-rootnode_colortemperaturelight_hbUnzYVeyn/zap-generated/af-gen-event.h deleted file mode 100644 index e69de29bb2d1d6..00000000000000 diff --git a/zzz_generated/chef-rootnode_contactsensor_lFAGG1bfRO/zap-generated/af-gen-event.h b/zzz_generated/chef-rootnode_contactsensor_lFAGG1bfRO/zap-generated/af-gen-event.h deleted file mode 100644 index e69de29bb2d1d6..00000000000000 diff --git a/zzz_generated/chef-rootnode_dimmablelight_bCwGYSDpoe/zap-generated/af-gen-event.h b/zzz_generated/chef-rootnode_dimmablelight_bCwGYSDpoe/zap-generated/af-gen-event.h deleted file mode 100644 index e69de29bb2d1d6..00000000000000 diff --git a/zzz_generated/chef-rootnode_doorlock_aNKYAreMXE/zap-generated/af-gen-event.h b/zzz_generated/chef-rootnode_doorlock_aNKYAreMXE/zap-generated/af-gen-event.h deleted file mode 100644 index e69de29bb2d1d6..00000000000000 diff --git a/zzz_generated/chef-rootnode_extendedcolorlight_8lcaaYJVAa/zap-generated/af-gen-event.h b/zzz_generated/chef-rootnode_extendedcolorlight_8lcaaYJVAa/zap-generated/af-gen-event.h deleted file mode 100644 index e69de29bb2d1d6..00000000000000 diff --git a/zzz_generated/chef-rootnode_fan_7N2TobIlOX/zap-generated/af-gen-event.h b/zzz_generated/chef-rootnode_fan_7N2TobIlOX/zap-generated/af-gen-event.h deleted file mode 100644 index e69de29bb2d1d6..00000000000000 diff --git a/zzz_generated/chef-rootnode_flowsensor_1zVxHedlaV/zap-generated/af-gen-event.h b/zzz_generated/chef-rootnode_flowsensor_1zVxHedlaV/zap-generated/af-gen-event.h deleted file mode 100644 index e69de29bb2d1d6..00000000000000 diff --git a/zzz_generated/chef-rootnode_heatingcoolingunit_ncdGai1E5a/zap-generated/af-gen-event.h b/zzz_generated/chef-rootnode_heatingcoolingunit_ncdGai1E5a/zap-generated/af-gen-event.h deleted file mode 100644 index e69de29bb2d1d6..00000000000000 diff --git a/zzz_generated/chef-rootnode_humiditysensor_Xyj4gda6Hb/zap-generated/af-gen-event.h b/zzz_generated/chef-rootnode_humiditysensor_Xyj4gda6Hb/zap-generated/af-gen-event.h deleted file mode 100644 index e69de29bb2d1d6..00000000000000 diff --git a/zzz_generated/chef-rootnode_lightsensor_lZQycTFcJK/zap-generated/af-gen-event.h b/zzz_generated/chef-rootnode_lightsensor_lZQycTFcJK/zap-generated/af-gen-event.h deleted file mode 100644 index e69de29bb2d1d6..00000000000000 diff --git a/zzz_generated/chef-rootnode_occupancysensor_iHyVgifZuo/zap-generated/af-gen-event.h b/zzz_generated/chef-rootnode_occupancysensor_iHyVgifZuo/zap-generated/af-gen-event.h deleted file mode 100644 index e69de29bb2d1d6..00000000000000 diff --git a/zzz_generated/chef-rootnode_onofflight_bbs1b7IaOV/zap-generated/af-gen-event.h b/zzz_generated/chef-rootnode_onofflight_bbs1b7IaOV/zap-generated/af-gen-event.h deleted file mode 100644 index e69de29bb2d1d6..00000000000000 diff --git a/zzz_generated/chef-rootnode_onofflightswitch_FsPlMr090Q/zap-generated/af-gen-event.h b/zzz_generated/chef-rootnode_onofflightswitch_FsPlMr090Q/zap-generated/af-gen-event.h deleted file mode 100644 index e69de29bb2d1d6..00000000000000 diff --git a/zzz_generated/chef-rootnode_onoffpluginunit_Wtf8ss5EBY/zap-generated/af-gen-event.h b/zzz_generated/chef-rootnode_onoffpluginunit_Wtf8ss5EBY/zap-generated/af-gen-event.h deleted file mode 100644 index e69de29bb2d1d6..00000000000000 diff --git a/zzz_generated/chef-rootnode_pressuresensor_s0qC9wLH4k/zap-generated/af-gen-event.h b/zzz_generated/chef-rootnode_pressuresensor_s0qC9wLH4k/zap-generated/af-gen-event.h deleted file mode 100644 index e69de29bb2d1d6..00000000000000 diff --git a/zzz_generated/chef-rootnode_speaker_RpzeXdimqA/zap-generated/af-gen-event.h b/zzz_generated/chef-rootnode_speaker_RpzeXdimqA/zap-generated/af-gen-event.h deleted file mode 100644 index e69de29bb2d1d6..00000000000000 diff --git a/zzz_generated/chef-rootnode_temperaturesensor_Qy1zkNW7c3/zap-generated/af-gen-event.h b/zzz_generated/chef-rootnode_temperaturesensor_Qy1zkNW7c3/zap-generated/af-gen-event.h deleted file mode 100644 index e69de29bb2d1d6..00000000000000 diff --git a/zzz_generated/chef-rootnode_thermostat_bm3fb8dhYi/zap-generated/af-gen-event.h b/zzz_generated/chef-rootnode_thermostat_bm3fb8dhYi/zap-generated/af-gen-event.h deleted file mode 100644 index e69de29bb2d1d6..00000000000000 diff --git a/zzz_generated/chef-rootnode_windowcovering_RLCxaGi9Yx/zap-generated/af-gen-event.h b/zzz_generated/chef-rootnode_windowcovering_RLCxaGi9Yx/zap-generated/af-gen-event.h deleted file mode 100644 index e69de29bb2d1d6..00000000000000 diff --git a/zzz_generated/contact-sensor-app/zap-generated/af-gen-event.h b/zzz_generated/contact-sensor-app/zap-generated/af-gen-event.h deleted file mode 100755 index e69de29bb2d1d6..00000000000000 diff --git a/zzz_generated/controller-clusters/zap-generated/af-gen-event.h b/zzz_generated/controller-clusters/zap-generated/af-gen-event.h deleted file mode 100644 index 0b0c750065e3a7..00000000000000 --- a/zzz_generated/controller-clusters/zap-generated/af-gen-event.h +++ /dev/null @@ -1,48 +0,0 @@ -/** - * - * Copyright (c) 2020 Project CHIP Authors - * - * Licensed 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. - */ - -/** - * - * Copyright (c) 2020 Silicon Labs - * - * Licensed 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. - */ -// This file is generated by Simplicity Studio. Please do not edit manually. -// -// - -// Enclosing macro to prevent multiple inclusion -#ifndef __AF_GEN_EVENT__ -#define __AF_GEN_EVENT__ - -// Code used to configure the cluster event mechanism -#define EMBER_AF_GENERATED_EVENT_CODE -// EmberEventData structs used to populate the EmberEventData table -#define EMBER_AF_GENERATED_EVENTS -#define EMBER_AF_GENERATED_EVENT_STRINGS - -#endif // __AF_GEN_EVENT__ diff --git a/zzz_generated/dynamic-bridge-app/zap-generated/af-gen-event.h b/zzz_generated/dynamic-bridge-app/zap-generated/af-gen-event.h deleted file mode 100644 index 814d4aab6b8bec..00000000000000 --- a/zzz_generated/dynamic-bridge-app/zap-generated/af-gen-event.h +++ /dev/null @@ -1,39 +0,0 @@ -/** - * - * Copyright (c) 2020 Project CHIP Authors - * - * Licensed 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. - */ - -/** - * - * Copyright (c) 2020 Silicon Labs - * - * Licensed 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. - */ - -// Enclosing macro to prevent multiple inclusion -#ifndef __AF_GEN_EVENT__ -#define __AF_GEN_EVENT__ - -#endif // __AF_GEN_EVENT__ diff --git a/zzz_generated/light-switch-app/zap-generated/af-gen-event.h b/zzz_generated/light-switch-app/zap-generated/af-gen-event.h deleted file mode 100644 index 814d4aab6b8bec..00000000000000 --- a/zzz_generated/light-switch-app/zap-generated/af-gen-event.h +++ /dev/null @@ -1,39 +0,0 @@ -/** - * - * Copyright (c) 2020 Project CHIP Authors - * - * Licensed 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. - */ - -/** - * - * Copyright (c) 2020 Silicon Labs - * - * Licensed 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. - */ - -// Enclosing macro to prevent multiple inclusion -#ifndef __AF_GEN_EVENT__ -#define __AF_GEN_EVENT__ - -#endif // __AF_GEN_EVENT__ diff --git a/zzz_generated/lighting-app/nxp/zap-generated/af-gen-event.h b/zzz_generated/lighting-app/nxp/zap-generated/af-gen-event.h deleted file mode 100644 index 814d4aab6b8bec..00000000000000 --- a/zzz_generated/lighting-app/nxp/zap-generated/af-gen-event.h +++ /dev/null @@ -1,39 +0,0 @@ -/** - * - * Copyright (c) 2020 Project CHIP Authors - * - * Licensed 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. - */ - -/** - * - * Copyright (c) 2020 Silicon Labs - * - * Licensed 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. - */ - -// Enclosing macro to prevent multiple inclusion -#ifndef __AF_GEN_EVENT__ -#define __AF_GEN_EVENT__ - -#endif // __AF_GEN_EVENT__ diff --git a/zzz_generated/lighting-app/zap-generated/af-gen-event.h b/zzz_generated/lighting-app/zap-generated/af-gen-event.h deleted file mode 100644 index 814d4aab6b8bec..00000000000000 --- a/zzz_generated/lighting-app/zap-generated/af-gen-event.h +++ /dev/null @@ -1,39 +0,0 @@ -/** - * - * Copyright (c) 2020 Project CHIP Authors - * - * Licensed 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. - */ - -/** - * - * Copyright (c) 2020 Silicon Labs - * - * Licensed 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. - */ - -// Enclosing macro to prevent multiple inclusion -#ifndef __AF_GEN_EVENT__ -#define __AF_GEN_EVENT__ - -#endif // __AF_GEN_EVENT__ diff --git a/zzz_generated/lock-app/zap-generated/af-gen-event.h b/zzz_generated/lock-app/zap-generated/af-gen-event.h deleted file mode 100755 index e69de29bb2d1d6..00000000000000 diff --git a/zzz_generated/log-source-app/zap-generated/af-gen-event.h b/zzz_generated/log-source-app/zap-generated/af-gen-event.h deleted file mode 100644 index 814d4aab6b8bec..00000000000000 --- a/zzz_generated/log-source-app/zap-generated/af-gen-event.h +++ /dev/null @@ -1,39 +0,0 @@ -/** - * - * Copyright (c) 2020 Project CHIP Authors - * - * Licensed 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. - */ - -/** - * - * Copyright (c) 2020 Silicon Labs - * - * Licensed 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. - */ - -// Enclosing macro to prevent multiple inclusion -#ifndef __AF_GEN_EVENT__ -#define __AF_GEN_EVENT__ - -#endif // __AF_GEN_EVENT__ diff --git a/zzz_generated/ota-provider-app/zap-generated/af-gen-event.h b/zzz_generated/ota-provider-app/zap-generated/af-gen-event.h deleted file mode 100644 index 814d4aab6b8bec..00000000000000 --- a/zzz_generated/ota-provider-app/zap-generated/af-gen-event.h +++ /dev/null @@ -1,39 +0,0 @@ -/** - * - * Copyright (c) 2020 Project CHIP Authors - * - * Licensed 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. - */ - -/** - * - * Copyright (c) 2020 Silicon Labs - * - * Licensed 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. - */ - -// Enclosing macro to prevent multiple inclusion -#ifndef __AF_GEN_EVENT__ -#define __AF_GEN_EVENT__ - -#endif // __AF_GEN_EVENT__ diff --git a/zzz_generated/ota-requestor-app/zap-generated/af-gen-event.h b/zzz_generated/ota-requestor-app/zap-generated/af-gen-event.h deleted file mode 100644 index 814d4aab6b8bec..00000000000000 --- a/zzz_generated/ota-requestor-app/zap-generated/af-gen-event.h +++ /dev/null @@ -1,39 +0,0 @@ -/** - * - * Copyright (c) 2020 Project CHIP Authors - * - * Licensed 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. - */ - -/** - * - * Copyright (c) 2020 Silicon Labs - * - * Licensed 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. - */ - -// Enclosing macro to prevent multiple inclusion -#ifndef __AF_GEN_EVENT__ -#define __AF_GEN_EVENT__ - -#endif // __AF_GEN_EVENT__ diff --git a/zzz_generated/placeholder/app1/zap-generated/af-gen-event.h b/zzz_generated/placeholder/app1/zap-generated/af-gen-event.h deleted file mode 100644 index e69de29bb2d1d6..00000000000000 diff --git a/zzz_generated/placeholder/app2/zap-generated/af-gen-event.h b/zzz_generated/placeholder/app2/zap-generated/af-gen-event.h deleted file mode 100644 index e69de29bb2d1d6..00000000000000 diff --git a/zzz_generated/placeholder/zap-generated/af-gen-event.h b/zzz_generated/placeholder/zap-generated/af-gen-event.h deleted file mode 100644 index e69de29bb2d1d6..00000000000000 diff --git a/zzz_generated/pump-app/zap-generated/af-gen-event.h b/zzz_generated/pump-app/zap-generated/af-gen-event.h deleted file mode 100644 index 814d4aab6b8bec..00000000000000 --- a/zzz_generated/pump-app/zap-generated/af-gen-event.h +++ /dev/null @@ -1,39 +0,0 @@ -/** - * - * Copyright (c) 2020 Project CHIP Authors - * - * Licensed 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. - */ - -/** - * - * Copyright (c) 2020 Silicon Labs - * - * Licensed 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. - */ - -// Enclosing macro to prevent multiple inclusion -#ifndef __AF_GEN_EVENT__ -#define __AF_GEN_EVENT__ - -#endif // __AF_GEN_EVENT__ diff --git a/zzz_generated/pump-controller-app/zap-generated/af-gen-event.h b/zzz_generated/pump-controller-app/zap-generated/af-gen-event.h deleted file mode 100644 index e69de29bb2d1d6..00000000000000 diff --git a/zzz_generated/temperature-measurement-app/zap-generated/af-gen-event.h b/zzz_generated/temperature-measurement-app/zap-generated/af-gen-event.h deleted file mode 100644 index 651432f1d80165..00000000000000 --- a/zzz_generated/temperature-measurement-app/zap-generated/af-gen-event.h +++ /dev/null @@ -1,25 +0,0 @@ -/** - * - * Copyright (c) 2020 Project CHIP Authors - * - * Licensed 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. - */ -// This file is generated by Simplicity Studio. Please do not edit manually. -// -// - -// Enclosing macro to prevent multiple inclusion -#ifndef __AF_GEN_EVENT__ -#define __AF_GEN_EVENT__ - -#endif // __AF_GEN_EVENT__ diff --git a/zzz_generated/thermostat/zap-generated/af-gen-event.h b/zzz_generated/thermostat/zap-generated/af-gen-event.h deleted file mode 100644 index 1c0681484eceda..00000000000000 --- a/zzz_generated/thermostat/zap-generated/af-gen-event.h +++ /dev/null @@ -1,42 +0,0 @@ -/** - * - * Copyright (c) 2020 Project CHIP Authors - * - * Licensed 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. - */ - -/** - * - * Copyright (c) 2020 Silicon Labs - * - * Licensed 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. - */ -// This file is generated by Simplicity Studio. Please do not edit manually. -// -// - -// Enclosing macro to prevent multiple inclusion -#ifndef __AF_GEN_EVENT__ -#define __AF_GEN_EVENT__ - -#endif // __AF_GEN_EVENT__ diff --git a/zzz_generated/tv-app/zap-generated/af-gen-event.h b/zzz_generated/tv-app/zap-generated/af-gen-event.h deleted file mode 100644 index d3266290591db2..00000000000000 --- a/zzz_generated/tv-app/zap-generated/af-gen-event.h +++ /dev/null @@ -1,44 +0,0 @@ -/** - * - * Copyright (c) 2020 Project CHIP Authors - * - * Licensed 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. - */ - -/** - * - * Copyright (c) 2020 Silicon Labs - * - * Licensed 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. - */ -// This file is generated by Simplicity Studio. Please do not edit manually. -// -// - -// NOTE: currently, level server cluster is not declared on endpoint 1 - -// Enclosing macro to prevent multiple inclusion -#ifndef __AF_GEN_EVENT__ -#define __AF_GEN_EVENT__ - -#endif // __AF_GEN_EVENT__ diff --git a/zzz_generated/tv-casting-app/zap-generated/af-gen-event.h b/zzz_generated/tv-casting-app/zap-generated/af-gen-event.h deleted file mode 100644 index bc2ea99352827c..00000000000000 --- a/zzz_generated/tv-casting-app/zap-generated/af-gen-event.h +++ /dev/null @@ -1,77 +0,0 @@ -/** - * - * Copyright (c) 2020 Project CHIP Authors - * - * Licensed 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. - */ - -/** - * - * Copyright (c) 2020 Silicon Labs - * - * Licensed 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. - */ -// This file is generated by Simplicity Studio. Please do not edit manually. -// -// - -// Enclosing macro to prevent multiple inclusion -#ifndef __AF_GEN_EVENT__ -#define __AF_GEN_EVENT__ - -// Code used to configure the cluster event mechanism -#define EMBER_AF_GENERATED_EVENT_CODE \ - EmberEventControl emberAfBarrierControlClusterServerTickCallbackControl1; \ - extern void emberAfPluginColorControlServerTempTransitionEventHandler(void); \ - extern void emberAfPluginColorControlServerXyTransitionEventHandler(void); \ - extern void emberAfPluginDoorLockServerLockoutEventHandler(void); \ - extern void emberAfPluginDoorLockServerRelockEventHandler(void); \ - static void clusterTickWrapper(EmberEventControl * control, EmberAfTickFunction callback, chip::EndpointId endpoint) \ - { \ - /* emberAfPushEndpointNetworkIndex(endpoint); */ \ - emberEventControlSetInactive(control); \ - (*callback)(endpoint); \ - /* emberAfPopNetworkIndex(); */ \ - } \ - void emberAfBarrierControlClusterServerTickCallbackWrapperFunction1(void) \ - { \ - clusterTickWrapper(&emberAfBarrierControlClusterServerTickCallbackControl1, \ - emberAfBarrierControlClusterServerTickCallback, 1); \ - } - -// EmberEventData structs used to populate the EmberEventData table -#define EMBER_AF_GENERATED_EVENTS \ - { &emberAfBarrierControlClusterServerTickCallbackControl1, emberAfBarrierControlClusterServerTickCallbackWrapperFunction1 }, - -#define EMBER_AF_GENERATED_EVENT_STRINGS \ - "Barrier Control Cluster Server EP 1", "Color Control Cluster Server Plugin HueSatTransition", \ - "Color Control Cluster Server Plugin TempTransition", "Color Control Cluster Server Plugin XyTransition", \ - "Door Lock Server Cluster Plugin Lockout", "Door Lock Server Cluster Plugin Relock", - -// The length of the event context table used to track and retrieve cluster events -#define EMBER_AF_EVENT_CONTEXT_LENGTH 1 - -// EmberAfEventContext structs used to populate the EmberAfEventContext table -#define EMBER_AF_GENERATED_EVENT_CONTEXT \ - { 0x1, 0x103, false, EMBER_AF_LONG_POLL, EMBER_AF_OK_TO_SLEEP, &emberAfBarrierControlClusterServerTickCallbackControl1 }, -#endif // __AF_GEN_EVENT__ diff --git a/zzz_generated/window-app/zap-generated/af-gen-event.h b/zzz_generated/window-app/zap-generated/af-gen-event.h deleted file mode 100644 index bec3f73c9dcada..00000000000000 --- a/zzz_generated/window-app/zap-generated/af-gen-event.h +++ /dev/null @@ -1,31 +0,0 @@ -/* - * - * Copyright (c) 2021 Project CHIP Authors - * - * Licensed 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. - */ - -// THIS FILE IS GENERATED BY ZAP - -// #TODO : This template wasn't tested in any way with CHIP -// Might need a zap submodule update and / or other fixes to make it work. -// ISSUE : #3637 - -#pragma once - -#define EMBER_AF_GENERATED_UC_EVENTS_DEF - -#define EMBER_AF_GENERATED_UC_EVENTS_INIT - -// sl_zigbee_event_context_t structs used to populate the sli_zigbee_app_event_context table -#define EMBER_AF_GENERATED_UC_EVENT_CONTEXT