blob: d64812972df90f40a46dc64d407f487a9afe2197 [file] [log] [blame]
Arun Bharadwaj5dcbd402021-01-25 15:39:27 -08001/*
2 *
Vivien Nicolasfba51b92022-01-19 18:47:32 +01003 * Copyright (c) 2022 Project CHIP Authors
Arun Bharadwaj5dcbd402021-01-25 15:39:27 -08004 *
5 * Licensed under the Apache License, Version 2.0 (the "License");
6 * you may not use this file except in compliance with the License.
7 * You may obtain a copy of the License at
8 *
9 * http://www.apache.org/licenses/LICENSE-2.0
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 */
17
Vivien Nicolasec761ed2021-02-03 02:56:02 +010018// THIS FILE IS GENERATED BY ZAP
19
Arun Bharadwaj5dcbd402021-01-25 15:39:27 -080020// Prevent multiple inclusion
21#pragma once
22
Boris Zbarskye94c9a92022-02-05 02:49:57 -050023#include <lib/core/CHIPConfig.h>
24
Arun Bharadwaj5dcbd402021-01-25 15:39:27 -080025// Default values for the attributes longer than a pointer,
26// in a form of a binary blob
27// Separate block is generated for big-endian and little-endian cases.
28#if BIGENDIAN_CPU
29#define GENERATED_DEFAULTS \
30 { \
Vivien Nicolasb80af572021-04-27 21:18:12 +020031 \
Tennessee Carmel-Veilleuxddfa9942022-01-27 17:02:16 -050032 /* Endpoint: 0, Cluster: Localization Configuration (server), big-endian */ \
Vivien Nicolasb80af572021-04-27 21:18:12 +020033 \
Tennessee Carmel-Veilleuxddfa9942022-01-27 17:02:16 -050034 /* 0 - ActiveLocale, */ \
35 5, 'e', 'n', '-', 'U', 'S', \
Yufeng Wang6e1a7412022-01-21 08:31:03 -080036 \
Yufeng Wanga18ea0b2021-05-24 21:46:22 -070037 /* Endpoint: 0, Cluster: General Commissioning (server), big-endian */ \
38 \
tehampson6b82aee2022-05-19 08:17:33 -040039 /* 6 - Breadcrumb, */ \
Yufeng Wang20ac5e12021-04-21 21:57:06 -070040 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, \
jwinder-ca5665d382022-07-21 10:35:30 -060041 \
Boris Zbarsky117dd162022-08-08 16:32:56 -040042 /* Endpoint: 1, Cluster: Actions (server), big-endian */ \
jwinder-ca5665d382022-07-21 10:35:30 -060043 \
Boris Zbarsky117dd162022-08-08 16:32:56 -040044 /* 14 - SetupURL, */ \
Boris Zbarsky196580a2022-07-28 10:55:32 -040045 19, 0, 'h', 't', 't', 'p', 's', ':', '/', '/', 'e', 'x', 'a', 'm', 'p', 'l', 'e', '.', 'c', 'o', 'm', \
Arun Bharadwaj5dcbd402021-01-25 15:39:27 -080046 }
47
48#else // !BIGENDIAN_CPU
49#define GENERATED_DEFAULTS \
50 { \
Vivien Nicolasb80af572021-04-27 21:18:12 +020051 \
Tennessee Carmel-Veilleuxddfa9942022-01-27 17:02:16 -050052 /* Endpoint: 0, Cluster: Localization Configuration (server), little-endian */ \
Vivien Nicolasb80af572021-04-27 21:18:12 +020053 \
Tennessee Carmel-Veilleuxddfa9942022-01-27 17:02:16 -050054 /* 0 - ActiveLocale, */ \
55 5, 'e', 'n', '-', 'U', 'S', \
Yufeng Wang6e1a7412022-01-21 08:31:03 -080056 \
Yufeng Wanga18ea0b2021-05-24 21:46:22 -070057 /* Endpoint: 0, Cluster: General Commissioning (server), little-endian */ \
58 \
tehampson6b82aee2022-05-19 08:17:33 -040059 /* 6 - Breadcrumb, */ \
Yufeng Wang20ac5e12021-04-21 21:57:06 -070060 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, \
jwinder-ca5665d382022-07-21 10:35:30 -060061 \
Boris Zbarsky117dd162022-08-08 16:32:56 -040062 /* Endpoint: 1, Cluster: Actions (server), little-endian */ \
jwinder-ca5665d382022-07-21 10:35:30 -060063 \
Boris Zbarsky117dd162022-08-08 16:32:56 -040064 /* 14 - SetupURL, */ \
Boris Zbarsky196580a2022-07-28 10:55:32 -040065 19, 0, 'h', 't', 't', 'p', 's', ':', '/', '/', 'e', 'x', 'a', 'm', 'p', 'l', 'e', '.', 'c', 'o', 'm', \
Arun Bharadwaj5dcbd402021-01-25 15:39:27 -080066 }
67
68#endif // BIGENDIAN_CPU
69
jwinder-ca5665d382022-07-21 10:35:30 -060070#define GENERATED_DEFAULTS_COUNT (3)
Arun Bharadwaj5dcbd402021-01-25 15:39:27 -080071
72#define ZAP_TYPE(type) ZCL_##type##_ATTRIBUTE_TYPE
73#define ZAP_LONG_DEFAULTS_INDEX(index) \
74 { \
Boris Zbarsky2278e6b2021-11-30 01:40:08 -050075 &generatedDefaults[index] \
Arun Bharadwaj5dcbd402021-01-25 15:39:27 -080076 }
77#define ZAP_MIN_MAX_DEFAULTS_INDEX(index) \
78 { \
Boris Zbarsky2278e6b2021-11-30 01:40:08 -050079 &minMaxDefaults[index] \
Arun Bharadwaj5dcbd402021-01-25 15:39:27 -080080 }
Vivien Nicolasa11d0542021-03-17 17:51:38 +010081#define ZAP_EMPTY_DEFAULT() \
82 { \
tehampson6b82aee2022-05-19 08:17:33 -040083 (uint32_t) 0 \
Vivien Nicolasa11d0542021-03-17 17:51:38 +010084 }
85#define ZAP_SIMPLE_DEFAULT(x) \
86 { \
tehampson6b82aee2022-05-19 08:17:33 -040087 (uint32_t) x \
Vivien Nicolasa11d0542021-03-17 17:51:38 +010088 }
Arun Bharadwaj5dcbd402021-01-25 15:39:27 -080089
90// This is an array of EmberAfAttributeMinMaxValue structures.
Andrei Litvinb2632702022-07-21 17:03:24 -040091#define GENERATED_MIN_MAX_DEFAULT_COUNT 3
Arun Bharadwaj5dcbd402021-01-25 15:39:27 -080092#define GENERATED_MIN_MAX_DEFAULTS \
93 { \
Boris Zbarsky2278e6b2021-11-30 01:40:08 -050094 \
Yufeng Wangb6e08a82022-01-20 21:55:14 -080095 /* Endpoint: 0, Cluster: Time Format Localization (server) */ \
96 { (uint16_t) 0x0, (uint16_t) 0x0, (uint16_t) 0x1 }, /* HourFormat */ \
97 \
Andrei Litvinb2632702022-07-21 17:03:24 -040098 /* Endpoint: 0, Cluster: Unit Localization (server) */ \
99 { (uint16_t) 0x0, (uint16_t) 0x0, (uint16_t) 0x2 }, /* TemperatureUnit */ \
100 \
mkardous-silabs58c4b042022-08-03 15:32:35 -0400101 /* Endpoint: 2, Cluster: Level Control (server) */ { (uint16_t) 0x0, (uint16_t) 0x0, (uint16_t) 0x3 } /* Options */ \
Arun Bharadwaj5dcbd402021-01-25 15:39:27 -0800102 }
103
104#define ZAP_ATTRIBUTE_MASK(mask) ATTRIBUTE_MASK_##mask
105// This is an array of EmberAfAttributeMetadata structures.
jwinder-caaca43812022-07-29 11:01:06 -0600106#define GENERATED_ATTRIBUTE_COUNT 246
Arun Bharadwaj5dcbd402021-01-25 15:39:27 -0800107#define GENERATED_ATTRIBUTES \
108 { \
Vivien Nicolasb80af572021-04-27 21:18:12 +0200109 \
Yufeng Wanga18ea0b2021-05-24 21:46:22 -0700110 /* Endpoint: 0, Cluster: Descriptor (server) */ \
Boris Zbarskye4c075f2022-09-12 08:23:17 -0400111 { 0x00000000, ZAP_TYPE(ARRAY), 0, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* DeviceTypeList */ \
112 { 0x00000001, ZAP_TYPE(ARRAY), 0, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* ServerList */ \
113 { 0x00000002, ZAP_TYPE(ARRAY), 0, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* ClientList */ \
114 { 0x00000003, ZAP_TYPE(ARRAY), 0, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* PartsList */ \
tehampson2db812e2022-05-23 15:24:29 -0400115 { 0x0000FFFC, ZAP_TYPE(BITMAP32), 4, 0, ZAP_SIMPLE_DEFAULT(0) }, /* FeatureMap */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400116 { 0x0000FFFD, ZAP_TYPE(INT16U), 2, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* ClusterRevision */ \
Yufeng Wanga18ea0b2021-05-24 21:46:22 -0700117 \
Harsha Rajendrand02ff672022-02-03 09:26:36 -0500118 /* Endpoint: 0, Cluster: Access Control (server) */ \
119 { 0x00000000, ZAP_TYPE(ARRAY), 0, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(WRITABLE), \
120 ZAP_EMPTY_DEFAULT() }, /* ACL */ \
121 { 0x00000001, ZAP_TYPE(ARRAY), 0, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(WRITABLE), \
Tennessee Carmel-Veilleux184bda12022-04-13 10:52:31 -0400122 ZAP_EMPTY_DEFAULT() }, /* Extension */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400123 { 0x00000002, ZAP_TYPE(INT16U), 2, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), \
Tennessee Carmel-Veilleux184bda12022-04-13 10:52:31 -0400124 ZAP_EMPTY_DEFAULT() }, /* SubjectsPerAccessControlEntry */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400125 { 0x00000003, ZAP_TYPE(INT16U), 2, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), \
Tennessee Carmel-Veilleux184bda12022-04-13 10:52:31 -0400126 ZAP_EMPTY_DEFAULT() }, /* TargetsPerAccessControlEntry */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400127 { 0x00000004, ZAP_TYPE(INT16U), 2, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), \
tehampson2db812e2022-05-23 15:24:29 -0400128 ZAP_EMPTY_DEFAULT() }, /* AccessControlEntriesPerFabric */ \
129 { 0x0000FFFC, ZAP_TYPE(BITMAP32), 4, 0, ZAP_SIMPLE_DEFAULT(0) }, /* FeatureMap */ \
130 { 0x0000FFFD, ZAP_TYPE(INT16U), 2, 0, ZAP_SIMPLE_DEFAULT(1) }, /* ClusterRevision */ \
Harsha Rajendrand02ff672022-02-03 09:26:36 -0500131 \
jrhees-cae14edc102021-06-02 23:16:24 -0600132 /* Endpoint: 0, Cluster: Basic (server) */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400133 { 0x00000000, ZAP_TYPE(INT16U), 2, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(SINGLETON), \
Boris Zbarskye3c52442022-04-25 15:45:58 -0400134 ZAP_EMPTY_DEFAULT() }, /* DataModelRevision */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400135 { 0x00000001, ZAP_TYPE(CHAR_STRING), 33, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(SINGLETON), \
Tennessee Carmel-Veilleuxddfa9942022-01-27 17:02:16 -0500136 ZAP_EMPTY_DEFAULT() }, /* VendorName */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400137 { 0x00000002, ZAP_TYPE(VENDOR_ID), 2, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(SINGLETON), \
Tennessee Carmel-Veilleuxddfa9942022-01-27 17:02:16 -0500138 ZAP_EMPTY_DEFAULT() }, /* VendorID */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400139 { 0x00000003, ZAP_TYPE(CHAR_STRING), 33, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(SINGLETON), \
Tennessee Carmel-Veilleuxddfa9942022-01-27 17:02:16 -0500140 ZAP_EMPTY_DEFAULT() }, /* ProductName */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400141 { 0x00000004, ZAP_TYPE(INT16U), 2, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(SINGLETON), \
Tennessee Carmel-Veilleuxddfa9942022-01-27 17:02:16 -0500142 ZAP_EMPTY_DEFAULT() }, /* ProductID */ \
Leonard Zgrablic9f16e9a2022-02-01 12:43:34 -0500143 { 0x00000005, ZAP_TYPE(CHAR_STRING), 33, \
144 ZAP_ATTRIBUTE_MASK(TOKENIZE) | ZAP_ATTRIBUTE_MASK(SINGLETON) | ZAP_ATTRIBUTE_MASK(WRITABLE), \
Paul Zander2f7ace82021-11-23 14:34:22 +0100145 ZAP_EMPTY_DEFAULT() }, /* NodeLabel */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400146 { 0x00000006, ZAP_TYPE(CHAR_STRING), 3, \
Tennessee Carmel-Veilleuxddfa9942022-01-27 17:02:16 -0500147 ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(SINGLETON) | ZAP_ATTRIBUTE_MASK(WRITABLE), \
148 ZAP_EMPTY_DEFAULT() }, /* Location */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400149 { 0x00000007, ZAP_TYPE(INT16U), 2, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(SINGLETON), \
Tennessee Carmel-Veilleuxddfa9942022-01-27 17:02:16 -0500150 ZAP_EMPTY_DEFAULT() }, /* HardwareVersion */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400151 { 0x00000008, ZAP_TYPE(CHAR_STRING), 65, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(SINGLETON), \
Boris Zbarskyaa001762022-01-19 13:51:54 -0500152 ZAP_EMPTY_DEFAULT() }, /* HardwareVersionString */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400153 { 0x00000009, ZAP_TYPE(INT32U), 4, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(SINGLETON), \
Tennessee Carmel-Veilleuxddfa9942022-01-27 17:02:16 -0500154 ZAP_EMPTY_DEFAULT() }, /* SoftwareVersion */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400155 { 0x0000000A, ZAP_TYPE(CHAR_STRING), 65, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(SINGLETON), \
Leonard Zgrablic14904612022-01-24 14:54:45 -0500156 ZAP_EMPTY_DEFAULT() }, /* SoftwareVersionString */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400157 { 0x0000000B, ZAP_TYPE(CHAR_STRING), 17, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(SINGLETON), \
Tennessee Carmel-Veilleuxddfa9942022-01-27 17:02:16 -0500158 ZAP_EMPTY_DEFAULT() }, /* ManufacturingDate */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400159 { 0x0000000C, ZAP_TYPE(CHAR_STRING), 33, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(SINGLETON), \
Tennessee Carmel-Veilleuxddfa9942022-01-27 17:02:16 -0500160 ZAP_EMPTY_DEFAULT() }, /* PartNumber */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400161 { 0x0000000D, ZAP_TYPE(LONG_CHAR_STRING), 258, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(SINGLETON), \
Tennessee Carmel-Veilleuxddfa9942022-01-27 17:02:16 -0500162 ZAP_EMPTY_DEFAULT() }, /* ProductURL */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400163 { 0x0000000E, ZAP_TYPE(CHAR_STRING), 65, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(SINGLETON), \
Tennessee Carmel-Veilleuxddfa9942022-01-27 17:02:16 -0500164 ZAP_EMPTY_DEFAULT() }, /* ProductLabel */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400165 { 0x0000000F, ZAP_TYPE(CHAR_STRING), 33, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(SINGLETON), \
Tennessee Carmel-Veilleuxddfa9942022-01-27 17:02:16 -0500166 ZAP_EMPTY_DEFAULT() }, /* SerialNumber */ \
Leonard Zgrablic9f16e9a2022-02-01 12:43:34 -0500167 { 0x00000010, ZAP_TYPE(BOOLEAN), 1, \
168 ZAP_ATTRIBUTE_MASK(TOKENIZE) | ZAP_ATTRIBUTE_MASK(SINGLETON) | ZAP_ATTRIBUTE_MASK(WRITABLE), \
Leonard Zgrablic14904612022-01-24 14:54:45 -0500169 ZAP_SIMPLE_DEFAULT(0) }, /* LocalConfigDisabled */ \
170 { 0x00000011, ZAP_TYPE(BOOLEAN), 1, ZAP_ATTRIBUTE_MASK(SINGLETON), ZAP_SIMPLE_DEFAULT(1) }, /* Reachable */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400171 { 0x00000012, ZAP_TYPE(CHAR_STRING), 33, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(SINGLETON), \
Tennessee Carmel-Veilleux184bda12022-04-13 10:52:31 -0400172 ZAP_EMPTY_DEFAULT() }, /* UniqueID */ \
173 { 0x00000013, ZAP_TYPE(STRUCT), 0, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* CapabilityMinima */ \
tehampson2db812e2022-05-23 15:24:29 -0400174 { 0x0000FFFC, ZAP_TYPE(BITMAP32), 4, 0, ZAP_SIMPLE_DEFAULT(0) }, /* FeatureMap */ \
Tennessee Carmel-Veilleux184bda12022-04-13 10:52:31 -0400175 { 0x0000FFFD, ZAP_TYPE(INT16U), 2, ZAP_ATTRIBUTE_MASK(SINGLETON), ZAP_SIMPLE_DEFAULT(1) }, /* ClusterRevision */ \
jrhees-cae14edc102021-06-02 23:16:24 -0600176 \
Yufeng Wanga841e212022-01-11 00:56:45 -0800177 /* Endpoint: 0, Cluster: Localization Configuration (server) */ \
Vivien Nicolas500e8902022-05-18 22:18:32 +0200178 { 0x00000000, ZAP_TYPE(CHAR_STRING), 36, ZAP_ATTRIBUTE_MASK(TOKENIZE) | ZAP_ATTRIBUTE_MASK(WRITABLE), \
Tennessee Carmel-Veilleuxddfa9942022-01-27 17:02:16 -0500179 ZAP_LONG_DEFAULTS_INDEX(0) }, /* ActiveLocale */ \
Vivien Nicolas500e8902022-05-18 22:18:32 +0200180 { 0x00000001, ZAP_TYPE(ARRAY), 0, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* SupportedLocales */ \
tehampson2db812e2022-05-23 15:24:29 -0400181 { 0x0000FFFC, ZAP_TYPE(BITMAP32), 4, 0, ZAP_SIMPLE_DEFAULT(0) }, /* FeatureMap */ \
Yufeng Wang6e1a7412022-01-21 08:31:03 -0800182 { 0x0000FFFD, ZAP_TYPE(INT16U), 2, 0, ZAP_SIMPLE_DEFAULT(1) }, /* ClusterRevision */ \
Yufeng Wanga841e212022-01-11 00:56:45 -0800183 \
Yufeng Wangb6e08a82022-01-20 21:55:14 -0800184 /* Endpoint: 0, Cluster: Time Format Localization (server) */ \
185 { 0x00000000, ZAP_TYPE(ENUM8), 1, \
186 ZAP_ATTRIBUTE_MASK(MIN_MAX) | ZAP_ATTRIBUTE_MASK(TOKENIZE) | ZAP_ATTRIBUTE_MASK(WRITABLE), \
187 ZAP_MIN_MAX_DEFAULTS_INDEX(0) }, /* HourFormat */ \
188 { 0x00000001, ZAP_TYPE(ENUM8), 1, ZAP_ATTRIBUTE_MASK(TOKENIZE) | ZAP_ATTRIBUTE_MASK(WRITABLE), \
189 ZAP_SIMPLE_DEFAULT(0) }, /* ActiveCalendarType */ \
190 { 0x00000002, ZAP_TYPE(ARRAY), 0, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), \
tehampson2db812e2022-05-23 15:24:29 -0400191 ZAP_EMPTY_DEFAULT() }, /* SupportedCalendarTypes */ \
192 { 0x0000FFFC, ZAP_TYPE(BITMAP32), 4, 0, ZAP_SIMPLE_DEFAULT(0) }, /* FeatureMap */ \
193 { 0x0000FFFD, ZAP_TYPE(INT16U), 2, 0, ZAP_SIMPLE_DEFAULT(1) }, /* ClusterRevision */ \
Yufeng Wangb6e08a82022-01-20 21:55:14 -0800194 \
Leonard Zgrablic7b869ae2022-01-26 20:36:44 -0500195 /* Endpoint: 0, Cluster: Unit Localization (server) */ \
Andrei Litvinb2632702022-07-21 17:03:24 -0400196 { 0x00000000, ZAP_TYPE(ENUM8), 1, \
197 ZAP_ATTRIBUTE_MASK(MIN_MAX) | ZAP_ATTRIBUTE_MASK(TOKENIZE) | ZAP_ATTRIBUTE_MASK(WRITABLE), \
198 ZAP_MIN_MAX_DEFAULTS_INDEX(1) }, /* TemperatureUnit */ \
tehampson6b82aee2022-05-19 08:17:33 -0400199 { 0x0000FFFC, ZAP_TYPE(BITMAP32), 4, 0, ZAP_SIMPLE_DEFAULT(0x1) }, /* FeatureMap */ \
200 { 0x0000FFFD, ZAP_TYPE(INT16U), 2, 0, ZAP_SIMPLE_DEFAULT(1) }, /* ClusterRevision */ \
Leonard Zgrablic7b869ae2022-01-26 20:36:44 -0500201 \
Yufeng Wanga18ea0b2021-05-24 21:46:22 -0700202 /* Endpoint: 0, Cluster: General Commissioning (server) */ \
tehampson6b82aee2022-05-19 08:17:33 -0400203 { 0x00000000, ZAP_TYPE(INT64U), 8, ZAP_ATTRIBUTE_MASK(WRITABLE), ZAP_LONG_DEFAULTS_INDEX(6) }, /* Breadcrumb */ \
Yufeng Wang974a6eb2022-02-02 10:40:21 -0800204 { 0x00000001, ZAP_TYPE(STRUCT), 0, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), \
Boris Zbarskyc1e5b2f2022-05-05 23:40:49 -0400205 ZAP_EMPTY_DEFAULT() }, /* BasicCommissioningInfo */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400206 { 0x00000002, ZAP_TYPE(ENUM8), 1, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* RegulatoryConfig */ \
207 { 0x00000003, ZAP_TYPE(ENUM8), 1, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), \
Boris Zbarskyc1e5b2f2022-05-05 23:40:49 -0400208 ZAP_EMPTY_DEFAULT() }, /* LocationCapability */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400209 { 0x00000004, ZAP_TYPE(BOOLEAN), 1, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), \
tehampson6b82aee2022-05-19 08:17:33 -0400210 ZAP_EMPTY_DEFAULT() }, /* SupportsConcurrentConnection */ \
Boris Zbarsky460e7232022-06-28 10:19:33 -0400211 { 0x0000FFFC, ZAP_TYPE(BITMAP32), 4, 0, ZAP_SIMPLE_DEFAULT(0) }, /* FeatureMap */ \
tehampson6b82aee2022-05-19 08:17:33 -0400212 { 0x0000FFFD, ZAP_TYPE(INT16U), 2, 0, ZAP_SIMPLE_DEFAULT(1) }, /* ClusterRevision */ \
Vivien Nicolasb80af572021-04-27 21:18:12 +0200213 \
214 /* Endpoint: 0, Cluster: Network Commissioning (server) */ \
Boris Zbarsky47682fb2022-02-24 08:54:28 -0500215 { 0x00000000, ZAP_TYPE(INT8U), 1, 0, ZAP_EMPTY_DEFAULT() }, /* MaxNetworks */ \
216 { 0x00000001, ZAP_TYPE(ARRAY), 0, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* Networks */ \
Boris Zbarskyaa001762022-01-19 13:51:54 -0500217 { 0x00000002, ZAP_TYPE(INT8U), 1, 0, ZAP_EMPTY_DEFAULT() }, /* ScanMaxTimeSeconds */ \
218 { 0x00000003, ZAP_TYPE(INT8U), 1, 0, ZAP_EMPTY_DEFAULT() }, /* ConnectMaxTimeSeconds */ \
219 { 0x00000004, ZAP_TYPE(BOOLEAN), 1, ZAP_ATTRIBUTE_MASK(WRITABLE), ZAP_EMPTY_DEFAULT() }, /* InterfaceEnabled */ \
Song GUOd8b119a2022-02-15 10:39:47 +0800220 { 0x00000005, ZAP_TYPE(ENUM8), 1, ZAP_ATTRIBUTE_MASK(NULLABLE), ZAP_EMPTY_DEFAULT() }, /* LastNetworkingStatus */ \
221 { 0x00000006, ZAP_TYPE(OCTET_STRING), 33, ZAP_ATTRIBUTE_MASK(NULLABLE), ZAP_EMPTY_DEFAULT() }, /* LastNetworkID */ \
tehampson6b82aee2022-05-19 08:17:33 -0400222 { 0x00000007, ZAP_TYPE(INT32S), 4, ZAP_ATTRIBUTE_MASK(NULLABLE), ZAP_EMPTY_DEFAULT() }, /* LastConnectErrorValue */ \
223 { 0x0000FFFC, ZAP_TYPE(BITMAP32), 4, 0, ZAP_SIMPLE_DEFAULT(2) }, /* FeatureMap */ \
224 { 0x0000FFFD, ZAP_TYPE(INT16U), 2, 0, ZAP_SIMPLE_DEFAULT(1) }, /* ClusterRevision */ \
Vivien Nicolasb80af572021-04-27 21:18:12 +0200225 \
tehampson2db812e2022-05-23 15:24:29 -0400226 /* Endpoint: 0, Cluster: Diagnostic Logs (server) */ \
227 { 0x0000FFFC, ZAP_TYPE(BITMAP32), 4, 0, ZAP_SIMPLE_DEFAULT(0) }, /* FeatureMap */ \
228 { 0x0000FFFD, ZAP_TYPE(INT16U), 2, 0, ZAP_SIMPLE_DEFAULT(1) }, /* ClusterRevision */ \
229 \
Yufeng Wangc7b49a92021-05-13 14:53:24 -0700230 /* Endpoint: 0, Cluster: General Diagnostics (server) */ \
Boris Zbarskyaa001762022-01-19 13:51:54 -0500231 { 0x00000000, ZAP_TYPE(ARRAY), 0, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* NetworkInterfaces */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400232 { 0x00000001, ZAP_TYPE(INT16U), 2, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* RebootCount */ \
233 { 0x00000002, ZAP_TYPE(INT64U), 8, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* UpTime */ \
234 { 0x00000003, ZAP_TYPE(INT32U), 4, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), \
Yufeng Wang28295b62022-05-04 09:09:55 -0700235 ZAP_EMPTY_DEFAULT() }, /* TotalOperationalHours */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400236 { 0x00000004, ZAP_TYPE(ENUM8), 1, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* BootReasons */ \
Boris Zbarskyaa001762022-01-19 13:51:54 -0500237 { 0x00000005, ZAP_TYPE(ARRAY), 0, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), \
238 ZAP_EMPTY_DEFAULT() }, /* ActiveHardwareFaults */ \
239 { 0x00000006, ZAP_TYPE(ARRAY), 0, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* ActiveRadioFaults */ \
240 { 0x00000007, ZAP_TYPE(ARRAY), 0, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), \
tehampson9179d312022-06-01 15:43:14 -0400241 ZAP_EMPTY_DEFAULT() }, /* ActiveNetworkFaults */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400242 { 0x00000008, ZAP_TYPE(BOOLEAN), 1, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), \
tehampson9179d312022-06-01 15:43:14 -0400243 ZAP_EMPTY_DEFAULT() }, /* TestEventTriggersEnabled */ \
tehampson2db812e2022-05-23 15:24:29 -0400244 { 0x0000FFFC, ZAP_TYPE(BITMAP32), 4, 0, ZAP_SIMPLE_DEFAULT(0) }, /* FeatureMap */ \
245 { 0x0000FFFD, ZAP_TYPE(INT16U), 2, 0, ZAP_SIMPLE_DEFAULT(1) }, /* ClusterRevision */ \
Yufeng Wang1010f702021-05-20 14:49:42 -0700246 \
Boris Zbarskyd88736a2021-10-22 17:55:13 -0400247 /* Endpoint: 0, Cluster: Software Diagnostics (server) */ \
Yufeng Wang28295b62022-05-04 09:09:55 -0700248 { 0x00000000, ZAP_TYPE(ARRAY), 0, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* ThreadMetrics */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400249 { 0x00000001, ZAP_TYPE(INT64U), 8, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* CurrentHeapFree */ \
250 { 0x00000002, ZAP_TYPE(INT64U), 8, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* CurrentHeapUsed */ \
251 { 0x00000003, ZAP_TYPE(INT64U), 8, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), \
tehampson6b82aee2022-05-19 08:17:33 -0400252 ZAP_EMPTY_DEFAULT() }, /* CurrentHeapHighWatermark */ \
253 { 0x0000FFFC, ZAP_TYPE(BITMAP32), 4, 0, ZAP_SIMPLE_DEFAULT(1) }, /* FeatureMap */ \
254 { 0x0000FFFD, ZAP_TYPE(INT16U), 2, 0, ZAP_SIMPLE_DEFAULT(1) }, /* ClusterRevision */ \
Boris Zbarskyd88736a2021-10-22 17:55:13 -0400255 \
jmartinez-silabs39dec0e2021-05-14 12:30:58 -0400256 /* Endpoint: 0, Cluster: Thread Network Diagnostics (server) */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400257 { 0x00000000, ZAP_TYPE(INT16U), 2, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(NULLABLE), \
Yufeng Wang58653522022-05-27 22:10:22 -0700258 ZAP_EMPTY_DEFAULT() }, /* channel */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400259 { 0x00000001, ZAP_TYPE(ENUM8), 1, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(NULLABLE), \
Yufeng Wang58653522022-05-27 22:10:22 -0700260 ZAP_EMPTY_DEFAULT() }, /* RoutingRole */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400261 { 0x00000002, ZAP_TYPE(CHAR_STRING), 17, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(NULLABLE), \
Yufeng Wang58653522022-05-27 22:10:22 -0700262 ZAP_EMPTY_DEFAULT() }, /* NetworkName */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400263 { 0x00000003, ZAP_TYPE(INT16U), 2, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(NULLABLE), \
Yufeng Wang58653522022-05-27 22:10:22 -0700264 ZAP_EMPTY_DEFAULT() }, /* PanId */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400265 { 0x00000004, ZAP_TYPE(INT64U), 8, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(NULLABLE), \
Yufeng Wang58653522022-05-27 22:10:22 -0700266 ZAP_EMPTY_DEFAULT() }, /* ExtendedPanId */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400267 { 0x00000005, ZAP_TYPE(OCTET_STRING), 18, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(NULLABLE), \
Yufeng Wang58653522022-05-27 22:10:22 -0700268 ZAP_EMPTY_DEFAULT() }, /* MeshLocalPrefix */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400269 { 0x00000006, ZAP_TYPE(INT64U), 8, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* OverrunCount */ \
Boris Zbarskyaa001762022-01-19 13:51:54 -0500270 { 0x00000007, ZAP_TYPE(ARRAY), 0, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* NeighborTableList */ \
271 { 0x00000008, ZAP_TYPE(ARRAY), 0, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* RouteTableList */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400272 { 0x00000009, ZAP_TYPE(INT32U), 4, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(NULLABLE), \
Yufeng Wang58653522022-05-27 22:10:22 -0700273 ZAP_EMPTY_DEFAULT() }, /* PartitionId */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400274 { 0x0000000A, ZAP_TYPE(INT8U), 1, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(NULLABLE), \
Yufeng Wang58653522022-05-27 22:10:22 -0700275 ZAP_EMPTY_DEFAULT() }, /* weighting */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400276 { 0x0000000B, ZAP_TYPE(INT8U), 1, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(NULLABLE), \
Yufeng Wang58653522022-05-27 22:10:22 -0700277 ZAP_EMPTY_DEFAULT() }, /* DataVersion */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400278 { 0x0000000C, ZAP_TYPE(INT8U), 1, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(NULLABLE), \
Yufeng Wang58653522022-05-27 22:10:22 -0700279 ZAP_EMPTY_DEFAULT() }, /* StableDataVersion */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400280 { 0x0000000D, ZAP_TYPE(INT8U), 1, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(NULLABLE), \
Yufeng Wang58653522022-05-27 22:10:22 -0700281 ZAP_EMPTY_DEFAULT() }, /* LeaderRouterId */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400282 { 0x0000000E, ZAP_TYPE(INT16U), 2, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), \
Yufeng Wang58653522022-05-27 22:10:22 -0700283 ZAP_EMPTY_DEFAULT() }, /* DetachedRoleCount */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400284 { 0x0000000F, ZAP_TYPE(INT16U), 2, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* ChildRoleCount */ \
285 { 0x00000010, ZAP_TYPE(INT16U), 2, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* RouterRoleCount */ \
286 { 0x00000011, ZAP_TYPE(INT16U), 2, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* LeaderRoleCount */ \
287 { 0x00000012, ZAP_TYPE(INT16U), 2, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), \
Yufeng Wang58653522022-05-27 22:10:22 -0700288 ZAP_EMPTY_DEFAULT() }, /* AttachAttemptCount */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400289 { 0x00000013, ZAP_TYPE(INT16U), 2, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), \
Yufeng Wang58653522022-05-27 22:10:22 -0700290 ZAP_EMPTY_DEFAULT() }, /* PartitionIdChangeCount */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400291 { 0x00000014, ZAP_TYPE(INT16U), 2, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), \
Yufeng Wang58653522022-05-27 22:10:22 -0700292 ZAP_EMPTY_DEFAULT() }, /* BetterPartitionAttachAttemptCount */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400293 { 0x00000015, ZAP_TYPE(INT16U), 2, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), \
Yufeng Wang58653522022-05-27 22:10:22 -0700294 ZAP_EMPTY_DEFAULT() }, /* ParentChangeCount */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400295 { 0x00000016, ZAP_TYPE(INT32U), 4, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* TxTotalCount */ \
296 { 0x00000017, ZAP_TYPE(INT32U), 4, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* TxUnicastCount */ \
297 { 0x00000018, ZAP_TYPE(INT32U), 4, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* TxBroadcastCount */ \
298 { 0x00000019, ZAP_TYPE(INT32U), 4, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), \
Yufeng Wang58653522022-05-27 22:10:22 -0700299 ZAP_EMPTY_DEFAULT() }, /* TxAckRequestedCount */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400300 { 0x0000001A, ZAP_TYPE(INT32U), 4, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* TxAckedCount */ \
301 { 0x0000001B, ZAP_TYPE(INT32U), 4, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), \
Yufeng Wang58653522022-05-27 22:10:22 -0700302 ZAP_EMPTY_DEFAULT() }, /* TxNoAckRequestedCount */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400303 { 0x0000001C, ZAP_TYPE(INT32U), 4, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* TxDataCount */ \
304 { 0x0000001D, ZAP_TYPE(INT32U), 4, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* TxDataPollCount */ \
305 { 0x0000001E, ZAP_TYPE(INT32U), 4, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* TxBeaconCount */ \
306 { 0x0000001F, ZAP_TYPE(INT32U), 4, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), \
Yufeng Wang58653522022-05-27 22:10:22 -0700307 ZAP_EMPTY_DEFAULT() }, /* TxBeaconRequestCount */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400308 { 0x00000020, ZAP_TYPE(INT32U), 4, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* TxOtherCount */ \
309 { 0x00000021, ZAP_TYPE(INT32U), 4, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* TxRetryCount */ \
310 { 0x00000022, ZAP_TYPE(INT32U), 4, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), \
Yufeng Wang58653522022-05-27 22:10:22 -0700311 ZAP_EMPTY_DEFAULT() }, /* TxDirectMaxRetryExpiryCount */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400312 { 0x00000023, ZAP_TYPE(INT32U), 4, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), \
Yufeng Wang58653522022-05-27 22:10:22 -0700313 ZAP_EMPTY_DEFAULT() }, /* TxIndirectMaxRetryExpiryCount */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400314 { 0x00000024, ZAP_TYPE(INT32U), 4, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* TxErrCcaCount */ \
315 { 0x00000025, ZAP_TYPE(INT32U), 4, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* TxErrAbortCount */ \
316 { 0x00000026, ZAP_TYPE(INT32U), 4, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), \
Yufeng Wang58653522022-05-27 22:10:22 -0700317 ZAP_EMPTY_DEFAULT() }, /* TxErrBusyChannelCount */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400318 { 0x00000027, ZAP_TYPE(INT32U), 4, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* RxTotalCount */ \
319 { 0x00000028, ZAP_TYPE(INT32U), 4, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* RxUnicastCount */ \
320 { 0x00000029, ZAP_TYPE(INT32U), 4, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* RxBroadcastCount */ \
321 { 0x0000002A, ZAP_TYPE(INT32U), 4, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* RxDataCount */ \
322 { 0x0000002B, ZAP_TYPE(INT32U), 4, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* RxDataPollCount */ \
323 { 0x0000002C, ZAP_TYPE(INT32U), 4, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* RxBeaconCount */ \
324 { 0x0000002D, ZAP_TYPE(INT32U), 4, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), \
Yufeng Wang58653522022-05-27 22:10:22 -0700325 ZAP_EMPTY_DEFAULT() }, /* RxBeaconRequestCount */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400326 { 0x0000002E, ZAP_TYPE(INT32U), 4, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* RxOtherCount */ \
327 { 0x0000002F, ZAP_TYPE(INT32U), 4, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), \
Yufeng Wang58653522022-05-27 22:10:22 -0700328 ZAP_EMPTY_DEFAULT() }, /* RxAddressFilteredCount */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400329 { 0x00000030, ZAP_TYPE(INT32U), 4, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), \
Yufeng Wang58653522022-05-27 22:10:22 -0700330 ZAP_EMPTY_DEFAULT() }, /* RxDestAddrFilteredCount */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400331 { 0x00000031, ZAP_TYPE(INT32U), 4, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), \
Yufeng Wang58653522022-05-27 22:10:22 -0700332 ZAP_EMPTY_DEFAULT() }, /* RxDuplicatedCount */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400333 { 0x00000032, ZAP_TYPE(INT32U), 4, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), \
Yufeng Wang58653522022-05-27 22:10:22 -0700334 ZAP_EMPTY_DEFAULT() }, /* RxErrNoFrameCount */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400335 { 0x00000033, ZAP_TYPE(INT32U), 4, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), \
Yufeng Wang58653522022-05-27 22:10:22 -0700336 ZAP_EMPTY_DEFAULT() }, /* RxErrUnknownNeighborCount */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400337 { 0x00000034, ZAP_TYPE(INT32U), 4, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), \
Yufeng Wang58653522022-05-27 22:10:22 -0700338 ZAP_EMPTY_DEFAULT() }, /* RxErrInvalidSrcAddrCount */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400339 { 0x00000035, ZAP_TYPE(INT32U), 4, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* RxErrSecCount */ \
340 { 0x00000036, ZAP_TYPE(INT32U), 4, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* RxErrFcsCount */ \
341 { 0x00000037, ZAP_TYPE(INT32U), 4, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* RxErrOtherCount */ \
342 { 0x00000038, ZAP_TYPE(INT64U), 8, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(NULLABLE), \
Yufeng Wang58653522022-05-27 22:10:22 -0700343 ZAP_EMPTY_DEFAULT() }, /* ActiveTimestamp */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400344 { 0x00000039, ZAP_TYPE(INT64U), 8, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(NULLABLE), \
Yufeng Wang58653522022-05-27 22:10:22 -0700345 ZAP_EMPTY_DEFAULT() }, /* PendingTimestamp */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400346 { 0x0000003A, ZAP_TYPE(INT32U), 4, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(NULLABLE), \
Boris Zbarsky60568982022-08-08 15:27:14 -0400347 ZAP_EMPTY_DEFAULT() }, /* Delay */ \
Yufeng Wang40629df2022-05-31 11:36:37 -0700348 { 0x0000003B, ZAP_TYPE(STRUCT), 0, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(NULLABLE), \
Yufeng Wang58653522022-05-27 22:10:22 -0700349 ZAP_EMPTY_DEFAULT() }, /* SecurityPolicy */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400350 { 0x0000003C, ZAP_TYPE(OCTET_STRING), 5, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(NULLABLE), \
Boris Zbarsky60568982022-08-08 15:27:14 -0400351 ZAP_EMPTY_DEFAULT() }, /* ChannelPage0Mask */ \
Yufeng Wang40629df2022-05-31 11:36:37 -0700352 { 0x0000003D, ZAP_TYPE(STRUCT), 0, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(NULLABLE), \
Yufeng Wanga8657fb2021-11-15 11:31:40 -0800353 ZAP_EMPTY_DEFAULT() }, /* OperationalDatasetComponents */ \
Boris Zbarskyaa001762022-01-19 13:51:54 -0500354 { 0x0000003E, ZAP_TYPE(ARRAY), 0, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), \
tehampson6b82aee2022-05-19 08:17:33 -0400355 ZAP_EMPTY_DEFAULT() }, /* ActiveNetworkFaultsList */ \
356 { 0x0000FFFC, ZAP_TYPE(BITMAP32), 4, 0, ZAP_SIMPLE_DEFAULT(15) }, /* FeatureMap */ \
357 { 0x0000FFFD, ZAP_TYPE(INT16U), 2, 0, ZAP_SIMPLE_DEFAULT(1) }, /* ClusterRevision */ \
jmartinez-silabs39dec0e2021-05-14 12:30:58 -0400358 \
Yufeng Wang74f8da92021-05-10 08:18:08 -0700359 /* Endpoint: 0, Cluster: WiFi Network Diagnostics (server) */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400360 { 0x00000000, ZAP_TYPE(OCTET_STRING), 7, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(NULLABLE), \
Yufeng Wang28295b62022-05-04 09:09:55 -0700361 ZAP_EMPTY_DEFAULT() }, /* bssid */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400362 { 0x00000001, ZAP_TYPE(ENUM8), 1, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(NULLABLE), \
Yufeng Wang28295b62022-05-04 09:09:55 -0700363 ZAP_EMPTY_DEFAULT() }, /* SecurityType */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400364 { 0x00000002, ZAP_TYPE(ENUM8), 1, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(NULLABLE), \
Yufeng Wang28295b62022-05-04 09:09:55 -0700365 ZAP_EMPTY_DEFAULT() }, /* WiFiVersion */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400366 { 0x00000003, ZAP_TYPE(INT16U), 2, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(NULLABLE), \
Yufeng Wang28295b62022-05-04 09:09:55 -0700367 ZAP_EMPTY_DEFAULT() }, /* ChannelNumber */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400368 { 0x00000004, ZAP_TYPE(INT8S), 1, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(NULLABLE), \
Yufeng Wangdaf50302022-08-04 21:14:26 -0700369 ZAP_EMPTY_DEFAULT() }, /* Rssi */ \
370 { 0x00000005, ZAP_TYPE(INT32U), 4, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(NULLABLE), \
371 ZAP_EMPTY_DEFAULT() }, /* BeaconLostCount */ \
372 { 0x00000006, ZAP_TYPE(INT32U), 4, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(NULLABLE), \
373 ZAP_EMPTY_DEFAULT() }, /* BeaconRxCount */ \
374 { 0x00000007, ZAP_TYPE(INT32U), 4, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(NULLABLE), \
Yufeng Wang28295b62022-05-04 09:09:55 -0700375 ZAP_EMPTY_DEFAULT() }, /* PacketMulticastRxCount */ \
Yufeng Wangdaf50302022-08-04 21:14:26 -0700376 { 0x00000008, ZAP_TYPE(INT32U), 4, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(NULLABLE), \
Yufeng Wang28295b62022-05-04 09:09:55 -0700377 ZAP_EMPTY_DEFAULT() }, /* PacketMulticastTxCount */ \
Yufeng Wangdaf50302022-08-04 21:14:26 -0700378 { 0x00000009, ZAP_TYPE(INT32U), 4, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(NULLABLE), \
Yufeng Wang28295b62022-05-04 09:09:55 -0700379 ZAP_EMPTY_DEFAULT() }, /* PacketUnicastRxCount */ \
Yufeng Wangdaf50302022-08-04 21:14:26 -0700380 { 0x0000000A, ZAP_TYPE(INT32U), 4, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(NULLABLE), \
Yufeng Wang28295b62022-05-04 09:09:55 -0700381 ZAP_EMPTY_DEFAULT() }, /* PacketUnicastTxCount */ \
Yufeng Wangdaf50302022-08-04 21:14:26 -0700382 { 0x0000000B, ZAP_TYPE(INT64U), 8, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(NULLABLE), \
383 ZAP_EMPTY_DEFAULT() }, /* CurrentMaxRate */ \
384 { 0x0000000C, ZAP_TYPE(INT64U), 8, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(NULLABLE), \
385 ZAP_EMPTY_DEFAULT() }, /* OverrunCount */ \
386 { 0x0000FFFC, ZAP_TYPE(BITMAP32), 4, 0, ZAP_SIMPLE_DEFAULT(3) }, /* FeatureMap */ \
387 { 0x0000FFFD, ZAP_TYPE(INT16U), 2, 0, ZAP_SIMPLE_DEFAULT(1) }, /* ClusterRevision */ \
Yufeng Wang74f8da92021-05-10 08:18:08 -0700388 \
Yufeng Wang805a4b32021-05-17 20:27:36 -0700389 /* Endpoint: 0, Cluster: Ethernet Network Diagnostics (server) */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400390 { 0x00000000, ZAP_TYPE(ENUM8), 1, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(NULLABLE), \
Boris Zbarskye3c52442022-04-25 15:45:58 -0400391 ZAP_EMPTY_DEFAULT() }, /* PHYRate */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400392 { 0x00000001, ZAP_TYPE(BOOLEAN), 1, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(NULLABLE), \
Boris Zbarskye3c52442022-04-25 15:45:58 -0400393 ZAP_EMPTY_DEFAULT() }, /* FullDuplex */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400394 { 0x00000002, ZAP_TYPE(INT64U), 8, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* PacketRxCount */ \
395 { 0x00000003, ZAP_TYPE(INT64U), 8, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* PacketTxCount */ \
396 { 0x00000004, ZAP_TYPE(INT64U), 8, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* TxErrCount */ \
397 { 0x00000005, ZAP_TYPE(INT64U), 8, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* CollisionCount */ \
398 { 0x00000006, ZAP_TYPE(INT64U), 8, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* OverrunCount */ \
399 { 0x00000007, ZAP_TYPE(BOOLEAN), 1, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(NULLABLE), \
Boris Zbarskye3c52442022-04-25 15:45:58 -0400400 ZAP_EMPTY_DEFAULT() }, /* CarrierDetect */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400401 { 0x00000008, ZAP_TYPE(INT64U), 8, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* TimeSinceReset */ \
tehampson6b82aee2022-05-19 08:17:33 -0400402 { 0x0000FFFC, ZAP_TYPE(BITMAP32), 4, 0, ZAP_SIMPLE_DEFAULT(3) }, /* FeatureMap */ \
Boris Zbarskye3c52442022-04-25 15:45:58 -0400403 { 0x0000FFFD, ZAP_TYPE(INT16U), 2, 0, ZAP_SIMPLE_DEFAULT(1) }, /* ClusterRevision */ \
Yufeng Wang805a4b32021-05-17 20:27:36 -0700404 \
Pankaj Garg5eea9f22021-08-03 17:58:16 -0700405 /* Endpoint: 0, Cluster: AdministratorCommissioning (server) */ \
Tennessee Carmel-Veilleuxc24577d2022-08-16 00:27:47 -0400406 { 0x00000000, ZAP_TYPE(ENUM8), 1, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* WindowStatus */ \
Boris Zbarsky17c8da62022-07-31 01:47:37 -0400407 { 0x00000001, ZAP_TYPE(FABRIC_IDX), 1, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(NULLABLE), \
408 ZAP_EMPTY_DEFAULT() }, /* AdminFabricIndex */ \
409 { 0x00000002, ZAP_TYPE(INT16U), 2, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(NULLABLE), \
410 ZAP_EMPTY_DEFAULT() }, /* AdminVendorId */ \
411 { 0x0000FFFC, ZAP_TYPE(BITMAP32), 4, 0, ZAP_SIMPLE_DEFAULT(0) }, /* FeatureMap */ \
412 { 0x0000FFFD, ZAP_TYPE(INT16U), 2, 0, ZAP_SIMPLE_DEFAULT(1) }, /* ClusterRevision */ \
Pankaj Garg5eea9f22021-08-03 17:58:16 -0700413 \
jrhees-cae14edc102021-06-02 23:16:24 -0600414 /* Endpoint: 0, Cluster: Operational Credentials (server) */ \
Yufeng Wangfd815cd2022-01-20 10:26:41 -0800415 { 0x00000000, ZAP_TYPE(ARRAY), 0, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* NOCs */ \
Boris Zbarsky098e4552022-02-12 05:10:07 -0500416 { 0x00000001, ZAP_TYPE(ARRAY), 0, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* Fabrics */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400417 { 0x00000002, ZAP_TYPE(INT8U), 1, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* SupportedFabrics */ \
418 { 0x00000003, ZAP_TYPE(INT8U), 1, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), \
Boris Zbarskyc1e5b2f2022-05-05 23:40:49 -0400419 ZAP_EMPTY_DEFAULT() }, /* CommissionedFabrics */ \
Boris Zbarskyaa001762022-01-19 13:51:54 -0500420 { 0x00000004, ZAP_TYPE(ARRAY), 0, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), \
Boris Zbarsky2475f102021-10-29 13:01:22 -0400421 ZAP_EMPTY_DEFAULT() }, /* TrustedRootCertificates */ \
Vivien Nicolasf93e6cb2022-07-29 13:23:24 +0200422 { 0x00000005, ZAP_TYPE(INT8U), 1, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), \
tehampson2db812e2022-05-23 15:24:29 -0400423 ZAP_EMPTY_DEFAULT() }, /* CurrentFabricIndex */ \
424 { 0x0000FFFC, ZAP_TYPE(BITMAP32), 4, 0, ZAP_SIMPLE_DEFAULT(0) }, /* FeatureMap */ \
425 { 0x0000FFFD, ZAP_TYPE(INT16U), 2, 0, ZAP_SIMPLE_DEFAULT(1) }, /* ClusterRevision */ \
jrhees-cae14edc102021-06-02 23:16:24 -0600426 \
jwinder-ca3522f9a2022-06-09 23:38:48 -0600427 /* Endpoint: 0, Cluster: Group Key Management (server) */ \
428 { 0x00000000, ZAP_TYPE(ARRAY), 0, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(WRITABLE), \
429 ZAP_EMPTY_DEFAULT() }, /* GroupKeyMap */ \
430 { 0x00000001, ZAP_TYPE(ARRAY), 0, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* GroupTable */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400431 { 0x00000002, ZAP_TYPE(INT16U), 2, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), \
jwinder-ca3522f9a2022-06-09 23:38:48 -0600432 ZAP_EMPTY_DEFAULT() }, /* MaxGroupsPerFabric */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400433 { 0x00000003, ZAP_TYPE(INT16U), 2, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), \
jwinder-ca3522f9a2022-06-09 23:38:48 -0600434 ZAP_EMPTY_DEFAULT() }, /* MaxGroupKeysPerFabric */ \
435 { 0x0000FFFC, ZAP_TYPE(BITMAP32), 4, 0, ZAP_SIMPLE_DEFAULT(0) }, /* FeatureMap */ \
436 { 0x0000FFFD, ZAP_TYPE(INT16U), 2, 0, ZAP_SIMPLE_DEFAULT(1) }, /* ClusterRevision */ \
Yufeng Wanged192512021-12-10 21:02:15 -0800437 \
Yufeng Wangc9bc5ae2021-12-14 11:04:33 -0800438 /* Endpoint: 0, Cluster: User Label (server) */ \
Boris Zbarskyaa001762022-01-19 13:51:54 -0500439 { 0x00000000, ZAP_TYPE(ARRAY), 0, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(WRITABLE), \
tehampson2db812e2022-05-23 15:24:29 -0400440 ZAP_EMPTY_DEFAULT() }, /* label list */ \
441 { 0x0000FFFC, ZAP_TYPE(BITMAP32), 4, 0, ZAP_SIMPLE_DEFAULT(0) }, /* FeatureMap */ \
442 { 0x0000FFFD, ZAP_TYPE(INT16U), 2, 0, ZAP_SIMPLE_DEFAULT(1) }, /* ClusterRevision */ \
Yufeng Wangc9bc5ae2021-12-14 11:04:33 -0800443 \
jwinder-ca3522f9a2022-06-09 23:38:48 -0600444 /* Endpoint: 1, Cluster: Identify (server) */ \
445 { 0x00000000, ZAP_TYPE(INT16U), 2, ZAP_ATTRIBUTE_MASK(WRITABLE), ZAP_SIMPLE_DEFAULT(0x0) }, /* identify time */ \
446 { 0x00000001, ZAP_TYPE(ENUM8), 1, 0, ZAP_SIMPLE_DEFAULT(0x0) }, /* identify type */ \
447 { 0x0000FFFC, ZAP_TYPE(BITMAP32), 4, 0, ZAP_SIMPLE_DEFAULT(0) }, /* FeatureMap */ \
448 { 0x0000FFFD, ZAP_TYPE(INT16U), 2, 0, ZAP_SIMPLE_DEFAULT(2) }, /* ClusterRevision */ \
449 \
450 /* Endpoint: 1, Cluster: Descriptor (server) */ \
Boris Zbarskye4c075f2022-09-12 08:23:17 -0400451 { 0x00000000, ZAP_TYPE(ARRAY), 0, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* DeviceTypeList */ \
452 { 0x00000001, ZAP_TYPE(ARRAY), 0, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* ServerList */ \
453 { 0x00000002, ZAP_TYPE(ARRAY), 0, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* ClientList */ \
454 { 0x00000003, ZAP_TYPE(ARRAY), 0, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* PartsList */ \
jwinder-ca3522f9a2022-06-09 23:38:48 -0600455 { 0x0000FFFC, ZAP_TYPE(BITMAP32), 4, 0, ZAP_SIMPLE_DEFAULT(0) }, /* FeatureMap */ \
456 { 0x0000FFFD, ZAP_TYPE(INT16U), 2, 0, ZAP_SIMPLE_DEFAULT(1) }, /* ClusterRevision */ \
457 \
Boris Zbarsky117dd162022-08-08 16:32:56 -0400458 /* Endpoint: 1, Cluster: Actions (server) */ \
459 { 0x00000000, ZAP_TYPE(ARRAY), 0, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* ActionList */ \
460 { 0x00000001, ZAP_TYPE(ARRAY), 0, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* EndpointLists */ \
461 { 0x00000002, ZAP_TYPE(LONG_CHAR_STRING), 514, 0, ZAP_LONG_DEFAULTS_INDEX(14) }, /* SetupURL */ \
jwinder-ca3522f9a2022-06-09 23:38:48 -0600462 { 0x0000FFFC, ZAP_TYPE(BITMAP32), 4, 0, ZAP_SIMPLE_DEFAULT(0) }, /* FeatureMap */ \
463 { 0x0000FFFD, ZAP_TYPE(INT16U), 2, 0, ZAP_SIMPLE_DEFAULT(1) }, /* ClusterRevision */ \
464 \
465 /* Endpoint: 2, Cluster: On/Off (server) */ \
Boris Zbarskyaa001762022-01-19 13:51:54 -0500466 { 0x00000000, ZAP_TYPE(BOOLEAN), 1, 0, ZAP_SIMPLE_DEFAULT(0x00) }, /* OnOff */ \
tehampson2db812e2022-05-23 15:24:29 -0400467 { 0x0000FFFC, ZAP_TYPE(BITMAP32), 4, 0, ZAP_SIMPLE_DEFAULT(0) }, /* FeatureMap */ \
Boris Zbarskyaa001762022-01-19 13:51:54 -0500468 { 0x0000FFFD, ZAP_TYPE(INT16U), 2, 0, ZAP_SIMPLE_DEFAULT(4) }, /* ClusterRevision */ \
Vivien Nicolasb80af572021-04-27 21:18:12 +0200469 \
jwinder-ca3522f9a2022-06-09 23:38:48 -0600470 /* Endpoint: 2, Cluster: Level Control (server) */ \
mkardous-silabs58c4b042022-08-03 15:32:35 -0400471 { 0x00000000, ZAP_TYPE(INT8U), 1, ZAP_ATTRIBUTE_MASK(TOKENIZE) | ZAP_ATTRIBUTE_MASK(NULLABLE), \
472 ZAP_SIMPLE_DEFAULT(0x00) }, /* CurrentLevel */ \
473 { 0x00000001, ZAP_TYPE(INT16U), 2, 0, ZAP_SIMPLE_DEFAULT(0x0000) }, /* RemainingTime */ \
474 { 0x00000002, ZAP_TYPE(INT8U), 1, 0, ZAP_SIMPLE_DEFAULT(0x01) }, /* MinLevel */ \
475 { 0x00000003, ZAP_TYPE(INT8U), 1, 0, ZAP_SIMPLE_DEFAULT(0xFE) }, /* MaxLevel */ \
476 { 0x00000004, ZAP_TYPE(INT16U), 2, 0, ZAP_SIMPLE_DEFAULT(0x0000) }, /* CurrentFrequency */ \
477 { 0x00000005, ZAP_TYPE(INT16U), 2, 0, ZAP_SIMPLE_DEFAULT(0x0000) }, /* MinFrequency */ \
478 { 0x00000006, ZAP_TYPE(INT16U), 2, 0, ZAP_SIMPLE_DEFAULT(0x0000) }, /* MaxFrequency */ \
Boris Zbarskyaa001762022-01-19 13:51:54 -0500479 { 0x0000000F, ZAP_TYPE(BITMAP8), 1, ZAP_ATTRIBUTE_MASK(MIN_MAX) | ZAP_ATTRIBUTE_MASK(WRITABLE), \
mkardous-silabs58c4b042022-08-03 15:32:35 -0400480 ZAP_MIN_MAX_DEFAULTS_INDEX(2) }, /* Options */ \
Boris Zbarskyaa001762022-01-19 13:51:54 -0500481 { 0x00000010, ZAP_TYPE(INT16U), 2, ZAP_ATTRIBUTE_MASK(WRITABLE), \
mkardous-silabs58c4b042022-08-03 15:32:35 -0400482 ZAP_SIMPLE_DEFAULT(0x0000) }, /* OnOffTransitionTime */ \
Boris Zbarskyaa001762022-01-19 13:51:54 -0500483 { 0x00000011, ZAP_TYPE(INT8U), 1, ZAP_ATTRIBUTE_MASK(WRITABLE) | ZAP_ATTRIBUTE_MASK(NULLABLE), \
mkardous-silabs58c4b042022-08-03 15:32:35 -0400484 ZAP_SIMPLE_DEFAULT(0xFE) }, /* OnLevel */ \
Boris Zbarskyaa001762022-01-19 13:51:54 -0500485 { 0x00000012, ZAP_TYPE(INT16U), 2, ZAP_ATTRIBUTE_MASK(WRITABLE) | ZAP_ATTRIBUTE_MASK(NULLABLE), \
mkardous-silabs58c4b042022-08-03 15:32:35 -0400486 ZAP_EMPTY_DEFAULT() }, /* OnTransitionTime */ \
Boris Zbarskyaa001762022-01-19 13:51:54 -0500487 { 0x00000013, ZAP_TYPE(INT16U), 2, ZAP_ATTRIBUTE_MASK(WRITABLE) | ZAP_ATTRIBUTE_MASK(NULLABLE), \
mkardous-silabs58c4b042022-08-03 15:32:35 -0400488 ZAP_EMPTY_DEFAULT() }, /* OffTransitionTime */ \
Boris Zbarskyaa001762022-01-19 13:51:54 -0500489 { 0x00000014, ZAP_TYPE(INT8U), 1, ZAP_ATTRIBUTE_MASK(WRITABLE) | ZAP_ATTRIBUTE_MASK(NULLABLE), \
mkardous-silabs58c4b042022-08-03 15:32:35 -0400490 ZAP_EMPTY_DEFAULT() }, /* DefaultMoveRate */ \
Boris Zbarskyaa001762022-01-19 13:51:54 -0500491 { 0x00004000, ZAP_TYPE(INT8U), 1, \
jmartinez-silabs1a89a842022-01-14 15:09:07 -0500492 ZAP_ATTRIBUTE_MASK(TOKENIZE) | ZAP_ATTRIBUTE_MASK(WRITABLE) | ZAP_ATTRIBUTE_MASK(NULLABLE), \
mkardous-silabs58c4b042022-08-03 15:32:35 -0400493 ZAP_SIMPLE_DEFAULT(255) }, /* StartUpCurrentLevel */ \
tehampson6b82aee2022-05-19 08:17:33 -0400494 { 0x0000FFFC, ZAP_TYPE(BITMAP32), 4, 0, ZAP_SIMPLE_DEFAULT(3) }, /* FeatureMap */ \
495 { 0x0000FFFD, ZAP_TYPE(INT16U), 2, 0, ZAP_SIMPLE_DEFAULT(5) }, /* ClusterRevision */ \
Vivien Nicolasb80af572021-04-27 21:18:12 +0200496 \
jwinder-ca3522f9a2022-06-09 23:38:48 -0600497 /* Endpoint: 2, Cluster: Descriptor (server) */ \
Boris Zbarskye4c075f2022-09-12 08:23:17 -0400498 { 0x00000000, ZAP_TYPE(ARRAY), 0, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* DeviceTypeList */ \
499 { 0x00000001, ZAP_TYPE(ARRAY), 0, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* ServerList */ \
500 { 0x00000002, ZAP_TYPE(ARRAY), 0, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* ClientList */ \
501 { 0x00000003, ZAP_TYPE(ARRAY), 0, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* PartsList */ \
tehampson2db812e2022-05-23 15:24:29 -0400502 { 0x0000FFFC, ZAP_TYPE(BITMAP32), 4, 0, ZAP_SIMPLE_DEFAULT(0) }, /* FeatureMap */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400503 { 0x0000FFFD, ZAP_TYPE(INT16U), 2, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* ClusterRevision */ \
Damian Królik4ab05ae2021-10-26 13:24:46 +0200504 \
jwinder-ca3522f9a2022-06-09 23:38:48 -0600505 /* Endpoint: 2, Cluster: Switch (server) */ \
tehampson6b82aee2022-05-19 08:17:33 -0400506 { 0x00000000, ZAP_TYPE(INT8U), 1, 0, ZAP_SIMPLE_DEFAULT(2) }, /* number of positions */ \
507 { 0x00000001, ZAP_TYPE(INT8U), 1, 0, ZAP_SIMPLE_DEFAULT(1) }, /* current position */ \
508 { 0x00000002, ZAP_TYPE(INT8U), 1, 0, ZAP_SIMPLE_DEFAULT(2) }, /* multi press max */ \
509 { 0x0000FFFC, ZAP_TYPE(BITMAP32), 4, 0, ZAP_SIMPLE_DEFAULT(0) }, /* FeatureMap */ \
510 { 0x0000FFFD, ZAP_TYPE(INT16U), 2, 0, ZAP_SIMPLE_DEFAULT(1) }, /* ClusterRevision */ \
jwinder-caaca43812022-07-29 11:01:06 -0600511 \
512 /* Endpoint: 2, Cluster: Temperature Measurement (server) */ \
513 { 0x00000000, ZAP_TYPE(INT16S), 2, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(NULLABLE), \
514 ZAP_EMPTY_DEFAULT() }, /* MeasuredValue */ \
515 { 0x00000001, ZAP_TYPE(INT16S), 2, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(NULLABLE), \
516 ZAP_EMPTY_DEFAULT() }, /* MinMeasuredValue */ \
517 { 0x00000002, ZAP_TYPE(INT16S), 2, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(NULLABLE), \
518 ZAP_EMPTY_DEFAULT() }, /* MaxMeasuredValue */ \
519 { 0x0000FFFC, ZAP_TYPE(BITMAP32), 4, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* FeatureMap */ \
520 { 0x0000FFFD, ZAP_TYPE(INT16U), 2, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* ClusterRevision */ \
Arun Bharadwaj5dcbd402021-01-25 15:39:27 -0800521 }
522
523// This is an array of EmberAfCluster structures.
Boris Zbarsky90cf66a2022-01-28 16:14:30 -0500524#define ZAP_ATTRIBUTE_INDEX(index) (&generatedAttributes[index])
Arun Bharadwaj5dcbd402021-01-25 15:39:27 -0800525
Song GUO15ef4742022-02-02 13:03:41 +0800526#define ZAP_GENERATED_COMMANDS_INDEX(index) ((chip::CommandId *) (&generatedCommands[index]))
527
Arun Bharadwaj5dcbd402021-01-25 15:39:27 -0800528// Cluster function static arrays
529#define GENERATED_FUNCTION_ARRAYS \
jrhees-cae14edc102021-06-02 23:16:24 -0600530 const EmberAfGenericClusterFunction chipFuncArrayBasicServer[] = { \
531 (EmberAfGenericClusterFunction) emberAfBasicClusterServerInitCallback, \
532 }; \
Yufeng Wang6e1a7412022-01-21 08:31:03 -0800533 const EmberAfGenericClusterFunction chipFuncArrayLocalizationConfigurationServer[] = { \
534 (EmberAfGenericClusterFunction) emberAfLocalizationConfigurationClusterServerInitCallback, \
535 (EmberAfGenericClusterFunction) MatterLocalizationConfigurationClusterServerPreAttributeChangedCallback, \
536 }; \
Yufeng Wangb6e08a82022-01-20 21:55:14 -0800537 const EmberAfGenericClusterFunction chipFuncArrayTimeFormatLocalizationServer[] = { \
538 (EmberAfGenericClusterFunction) emberAfTimeFormatLocalizationClusterServerInitCallback, \
539 (EmberAfGenericClusterFunction) MatterTimeFormatLocalizationClusterServerPreAttributeChangedCallback, \
540 }; \
jwinder-ca3522f9a2022-06-09 23:38:48 -0600541 const EmberAfGenericClusterFunction chipFuncArrayIdentifyServer[] = { \
542 (EmberAfGenericClusterFunction) emberAfIdentifyClusterServerInitCallback, \
543 (EmberAfGenericClusterFunction) MatterIdentifyClusterServerAttributeChangedCallback, \
544 }; \
Arun Bharadwaj5dcbd402021-01-25 15:39:27 -0800545 const EmberAfGenericClusterFunction chipFuncArrayOnOffServer[] = { \
546 (EmberAfGenericClusterFunction) emberAfOnOffClusterServerInitCallback, \
547 }; \
548 const EmberAfGenericClusterFunction chipFuncArrayLevelControlServer[] = { \
549 (EmberAfGenericClusterFunction) emberAfLevelControlClusterServerInitCallback, \
550 };
551
Song GUO15ef4742022-02-02 13:03:41 +0800552// clang-format off
553#define GENERATED_COMMANDS { \
554 /* Endpoint: 0, Cluster: General Commissioning (server) */\
Song GUO2580fb32022-05-10 21:48:33 +0800555 /* AcceptedCommandList (index=0) */ \
Song GUO15ef4742022-02-02 13:03:41 +0800556 0x00000000 /* ArmFailSafe */, \
557 0x00000002 /* SetRegulatoryConfig */, \
558 0x00000004 /* CommissioningComplete */, \
559 chip::kInvalidCommandId /* end of list */, \
Song GUO2580fb32022-05-10 21:48:33 +0800560 /* GeneratedCommandList (index=4)*/ \
Song GUO15ef4742022-02-02 13:03:41 +0800561 0x00000001 /* ArmFailSafeResponse */, \
Song GUO2580fb32022-05-10 21:48:33 +0800562 0x00000003 /* SetRegulatoryConfigResponse */, \
Song GUO15ef4742022-02-02 13:03:41 +0800563 0x00000005 /* CommissioningCompleteResponse */, \
564 chip::kInvalidCommandId /* end of list */, \
565 /* Endpoint: 0, Cluster: Network Commissioning (server) */\
Song GUO2580fb32022-05-10 21:48:33 +0800566 /* AcceptedCommandList (index=8) */ \
Song GUO15ef4742022-02-02 13:03:41 +0800567 0x00000000 /* ScanNetworks */, \
568 0x00000002 /* AddOrUpdateWiFiNetwork */, \
569 0x00000003 /* AddOrUpdateThreadNetwork */, \
570 0x00000004 /* RemoveNetwork */, \
571 0x00000006 /* ConnectNetwork */, \
572 0x00000008 /* ReorderNetwork */, \
573 chip::kInvalidCommandId /* end of list */, \
Song GUO2580fb32022-05-10 21:48:33 +0800574 /* GeneratedCommandList (index=15)*/ \
Song GUO15ef4742022-02-02 13:03:41 +0800575 0x00000001 /* ScanNetworksResponse */, \
Song GUO2580fb32022-05-10 21:48:33 +0800576 0x00000005 /* NetworkConfigResponse */, \
Song GUO15ef4742022-02-02 13:03:41 +0800577 0x00000007 /* ConnectNetworkResponse */, \
578 chip::kInvalidCommandId /* end of list */, \
579 /* Endpoint: 0, Cluster: Diagnostic Logs (server) */\
Song GUO2580fb32022-05-10 21:48:33 +0800580 /* AcceptedCommandList (index=19) */ \
Song GUO15ef4742022-02-02 13:03:41 +0800581 0x00000000 /* RetrieveLogsRequest */, \
582 chip::kInvalidCommandId /* end of list */, \
Song GUO2580fb32022-05-10 21:48:33 +0800583 /* GeneratedCommandList (index=21)*/ \
584 0x00000001 /* RetrieveLogsResponse */, \
585 chip::kInvalidCommandId /* end of list */, \
tehampson9179d312022-06-01 15:43:14 -0400586 /* Endpoint: 0, Cluster: General Diagnostics (server) */\
Boris Zbarsky583ac0d2022-05-28 13:08:33 -0400587 /* AcceptedCommandList (index=23) */ \
tehampson9179d312022-06-01 15:43:14 -0400588 0x00000000 /* TestEventTrigger */, \
jwinder-ca3522f9a2022-06-09 23:38:48 -0600589 0x00000000 /* TestEventTrigger */, \
tehampson9179d312022-06-01 15:43:14 -0400590 chip::kInvalidCommandId /* end of list */, \
Shubham Patilf126ac22022-06-22 23:47:00 +0530591 /* Endpoint: 0, Cluster: Ethernet Network Diagnostics (server) */\
jwinder-ca3522f9a2022-06-09 23:38:48 -0600592 /* AcceptedCommandList (index=26) */ \
Shubham Patilf126ac22022-06-22 23:47:00 +0530593 0x00000000 /* ResetCounts */, \
594 chip::kInvalidCommandId /* end of list */, \
595 /* Endpoint: 0, Cluster: AdministratorCommissioning (server) */\
596 /* AcceptedCommandList (index=28) */ \
Song GUO15ef4742022-02-02 13:03:41 +0800597 0x00000000 /* OpenCommissioningWindow */, \
598 0x00000001 /* OpenBasicCommissioningWindow */, \
599 0x00000002 /* RevokeCommissioning */, \
600 chip::kInvalidCommandId /* end of list */, \
601 /* Endpoint: 0, Cluster: Operational Credentials (server) */\
Shubham Patilf126ac22022-06-22 23:47:00 +0530602 /* AcceptedCommandList (index=32) */ \
Song GUO15ef4742022-02-02 13:03:41 +0800603 0x00000000 /* AttestationRequest */, \
604 0x00000002 /* CertificateChainRequest */, \
Boris Zbarsky570a1ce2022-02-04 11:38:38 -0500605 0x00000004 /* CSRRequest */, \
Song GUO15ef4742022-02-02 13:03:41 +0800606 0x00000006 /* AddNOC */, \
607 0x00000007 /* UpdateNOC */, \
608 0x00000009 /* UpdateFabricLabel */, \
609 0x0000000A /* RemoveFabric */, \
610 0x0000000B /* AddTrustedRootCertificate */, \
Song GUO15ef4742022-02-02 13:03:41 +0800611 chip::kInvalidCommandId /* end of list */, \
Shubham Patilf126ac22022-06-22 23:47:00 +0530612 /* GeneratedCommandList (index=41)*/ \
Song GUO15ef4742022-02-02 13:03:41 +0800613 0x00000001 /* AttestationResponse */, \
614 0x00000003 /* CertificateChainResponse */, \
Boris Zbarsky570a1ce2022-02-04 11:38:38 -0500615 0x00000005 /* CSRResponse */, \
Song GUO15ef4742022-02-02 13:03:41 +0800616 0x00000008 /* NOCResponse */, \
617 chip::kInvalidCommandId /* end of list */, \
jwinder-ca3522f9a2022-06-09 23:38:48 -0600618 /* Endpoint: 0, Cluster: Group Key Management (server) */\
Shubham Patilf126ac22022-06-22 23:47:00 +0530619 /* AcceptedCommandList (index=46) */ \
jwinder-ca3522f9a2022-06-09 23:38:48 -0600620 0x00000000 /* KeySetWrite */, \
621 0x00000001 /* KeySetRead */, \
622 0x00000003 /* KeySetRemove */, \
623 0x00000004 /* KeySetReadAllIndices */, \
624 chip::kInvalidCommandId /* end of list */, \
Shubham Patilf126ac22022-06-22 23:47:00 +0530625 /* GeneratedCommandList (index=51)*/ \
jwinder-ca3522f9a2022-06-09 23:38:48 -0600626 0x00000002 /* KeySetReadResponse */, \
627 0x00000005 /* KeySetReadAllIndicesResponse */, \
628 chip::kInvalidCommandId /* end of list */, \
629 /* Endpoint: 1, Cluster: Identify (server) */\
Shubham Patilf126ac22022-06-22 23:47:00 +0530630 /* AcceptedCommandList (index=54) */ \
jwinder-ca3522f9a2022-06-09 23:38:48 -0600631 0x00000000 /* Identify */, \
632 0x00000040 /* TriggerEffect */, \
633 chip::kInvalidCommandId /* end of list */, \
Boris Zbarsky117dd162022-08-08 16:32:56 -0400634 /* Endpoint: 1, Cluster: Actions (server) */\
Shubham Patilf126ac22022-06-22 23:47:00 +0530635 /* AcceptedCommandList (index=57) */ \
jwinder-ca5665d382022-07-21 10:35:30 -0600636 0x00000000 /* InstantAction */, \
637 chip::kInvalidCommandId /* end of list */, \
638 /* Endpoint: 2, Cluster: On/Off (server) */\
639 /* AcceptedCommandList (index=59) */ \
Song GUO15ef4742022-02-02 13:03:41 +0800640 0x00000000 /* Off */, \
641 0x00000001 /* On */, \
642 0x00000002 /* Toggle */, \
643 chip::kInvalidCommandId /* end of list */, \
jwinder-ca3522f9a2022-06-09 23:38:48 -0600644 /* Endpoint: 2, Cluster: Level Control (server) */\
jwinder-ca5665d382022-07-21 10:35:30 -0600645 /* AcceptedCommandList (index=63) */ \
Song GUO15ef4742022-02-02 13:03:41 +0800646 0x00000000 /* MoveToLevel */, \
647 0x00000001 /* Move */, \
648 0x00000002 /* Step */, \
649 0x00000003 /* Stop */, \
650 0x00000004 /* MoveToLevelWithOnOff */, \
651 0x00000005 /* MoveWithOnOff */, \
652 0x00000006 /* StepWithOnOff */, \
653 0x00000007 /* StopWithOnOff */, \
654 chip::kInvalidCommandId /* end of list */, \
655}
656
657// clang-format on
658
Arun Bharadwaj5dcbd402021-01-25 15:39:27 -0800659#define ZAP_CLUSTER_MASK(mask) CLUSTER_MASK_##mask
jwinder-caaca43812022-07-29 11:01:06 -0600660#define GENERATED_CLUSTER_COUNT 28
Song GUO15ef4742022-02-02 13:03:41 +0800661
662// clang-format off
663#define GENERATED_CLUSTERS { \
664 { \
665 /* Endpoint: 0, Cluster: Descriptor (server) */ \
666 .clusterId = 0x0000001D, \
667 .attributes = ZAP_ATTRIBUTE_INDEX(0), \
tehampson2db812e2022-05-23 15:24:29 -0400668 .attributeCount = 6, \
669 .clusterSize = 4, \
Song GUO15ef4742022-02-02 13:03:41 +0800670 .mask = ZAP_CLUSTER_MASK(SERVER), \
671 .functions = NULL, \
Boris Zbarsky821ca4a2022-03-21 09:05:12 -0400672 .acceptedCommandList = nullptr ,\
673 .generatedCommandList = nullptr ,\
Song GUO15ef4742022-02-02 13:03:41 +0800674 },\
675 { \
Harsha Rajendrand02ff672022-02-03 09:26:36 -0500676 /* Endpoint: 0, Cluster: Access Control (client) */ \
677 .clusterId = 0x0000001F, \
tehampson2db812e2022-05-23 15:24:29 -0400678 .attributes = ZAP_ATTRIBUTE_INDEX(6), \
Boris Zbarsky4267a9b2022-02-03 13:11:41 -0500679 .attributeCount = 0, \
680 .clusterSize = 0, \
Harsha Rajendrand02ff672022-02-03 09:26:36 -0500681 .mask = ZAP_CLUSTER_MASK(CLIENT), \
682 .functions = NULL, \
Boris Zbarsky821ca4a2022-03-21 09:05:12 -0400683 .acceptedCommandList = nullptr ,\
684 .generatedCommandList = nullptr ,\
Harsha Rajendrand02ff672022-02-03 09:26:36 -0500685 },\
686 { \
687 /* Endpoint: 0, Cluster: Access Control (server) */ \
688 .clusterId = 0x0000001F, \
tehampson2db812e2022-05-23 15:24:29 -0400689 .attributes = ZAP_ATTRIBUTE_INDEX(6), \
690 .attributeCount = 7, \
691 .clusterSize = 6, \
Harsha Rajendrand02ff672022-02-03 09:26:36 -0500692 .mask = ZAP_CLUSTER_MASK(SERVER), \
693 .functions = NULL, \
Boris Zbarsky821ca4a2022-03-21 09:05:12 -0400694 .acceptedCommandList = nullptr ,\
695 .generatedCommandList = nullptr ,\
Harsha Rajendrand02ff672022-02-03 09:26:36 -0500696 },\
697 { \
Song GUO15ef4742022-02-02 13:03:41 +0800698 /* Endpoint: 0, Cluster: Basic (server) */ \
699 .clusterId = 0x00000028, \
tehampson2db812e2022-05-23 15:24:29 -0400700 .attributes = ZAP_ATTRIBUTE_INDEX(13), \
701 .attributeCount = 22, \
702 .clusterSize = 41, \
Song GUO15ef4742022-02-02 13:03:41 +0800703 .mask = ZAP_CLUSTER_MASK(SERVER) | ZAP_CLUSTER_MASK(INIT_FUNCTION), \
704 .functions = chipFuncArrayBasicServer, \
Boris Zbarsky821ca4a2022-03-21 09:05:12 -0400705 .acceptedCommandList = nullptr ,\
706 .generatedCommandList = nullptr ,\
Song GUO15ef4742022-02-02 13:03:41 +0800707 },\
708 { \
709 /* Endpoint: 0, Cluster: Localization Configuration (server) */ \
710 .clusterId = 0x0000002B, \
tehampson2db812e2022-05-23 15:24:29 -0400711 .attributes = ZAP_ATTRIBUTE_INDEX(35), \
712 .attributeCount = 4, \
713 .clusterSize = 42, \
Song GUO15ef4742022-02-02 13:03:41 +0800714 .mask = ZAP_CLUSTER_MASK(SERVER) | ZAP_CLUSTER_MASK(INIT_FUNCTION) | ZAP_CLUSTER_MASK(PRE_ATTRIBUTE_CHANGED_FUNCTION), \
715 .functions = chipFuncArrayLocalizationConfigurationServer, \
Boris Zbarsky821ca4a2022-03-21 09:05:12 -0400716 .acceptedCommandList = nullptr ,\
717 .generatedCommandList = nullptr ,\
Song GUO15ef4742022-02-02 13:03:41 +0800718 },\
719 { \
720 /* Endpoint: 0, Cluster: Time Format Localization (server) */ \
721 .clusterId = 0x0000002C, \
tehampson2db812e2022-05-23 15:24:29 -0400722 .attributes = ZAP_ATTRIBUTE_INDEX(39), \
723 .attributeCount = 5, \
724 .clusterSize = 8, \
Song GUO15ef4742022-02-02 13:03:41 +0800725 .mask = ZAP_CLUSTER_MASK(SERVER) | ZAP_CLUSTER_MASK(INIT_FUNCTION) | ZAP_CLUSTER_MASK(PRE_ATTRIBUTE_CHANGED_FUNCTION), \
726 .functions = chipFuncArrayTimeFormatLocalizationServer, \
Boris Zbarsky821ca4a2022-03-21 09:05:12 -0400727 .acceptedCommandList = nullptr ,\
728 .generatedCommandList = nullptr ,\
Song GUO15ef4742022-02-02 13:03:41 +0800729 },\
730 { \
731 /* Endpoint: 0, Cluster: Unit Localization (server) */ \
732 .clusterId = 0x0000002D, \
tehampson2db812e2022-05-23 15:24:29 -0400733 .attributes = ZAP_ATTRIBUTE_INDEX(44), \
Song GUO15ef4742022-02-02 13:03:41 +0800734 .attributeCount = 3, \
735 .clusterSize = 7, \
736 .mask = ZAP_CLUSTER_MASK(SERVER), \
737 .functions = NULL, \
Boris Zbarsky821ca4a2022-03-21 09:05:12 -0400738 .acceptedCommandList = nullptr ,\
739 .generatedCommandList = nullptr ,\
Song GUO15ef4742022-02-02 13:03:41 +0800740 },\
741 { \
742 /* Endpoint: 0, Cluster: General Commissioning (server) */ \
743 .clusterId = 0x00000030, \
tehampson2db812e2022-05-23 15:24:29 -0400744 .attributes = ZAP_ATTRIBUTE_INDEX(47), \
Tennessee Carmel-Veilleux5f8c83e2022-04-01 21:03:47 -0400745 .attributeCount = 7, \
Boris Zbarskyc1e5b2f2022-05-05 23:40:49 -0400746 .clusterSize = 14, \
Song GUO15ef4742022-02-02 13:03:41 +0800747 .mask = ZAP_CLUSTER_MASK(SERVER), \
748 .functions = NULL, \
Boris Zbarsky821ca4a2022-03-21 09:05:12 -0400749 .acceptedCommandList = ZAP_GENERATED_COMMANDS_INDEX( 0 ) ,\
750 .generatedCommandList = ZAP_GENERATED_COMMANDS_INDEX( 4 ) ,\
Song GUO15ef4742022-02-02 13:03:41 +0800751 },\
752 { \
753 /* Endpoint: 0, Cluster: Network Commissioning (server) */ \
754 .clusterId = 0x00000031, \
tehampson2db812e2022-05-23 15:24:29 -0400755 .attributes = ZAP_ATTRIBUTE_INDEX(54), \
Song GUO15ef4742022-02-02 13:03:41 +0800756 .attributeCount = 10, \
Boris Zbarsky47682fb2022-02-24 08:54:28 -0500757 .clusterSize = 48, \
Song GUO15ef4742022-02-02 13:03:41 +0800758 .mask = ZAP_CLUSTER_MASK(SERVER), \
759 .functions = NULL, \
Song GUO2580fb32022-05-10 21:48:33 +0800760 .acceptedCommandList = ZAP_GENERATED_COMMANDS_INDEX( 8 ) ,\
761 .generatedCommandList = ZAP_GENERATED_COMMANDS_INDEX( 15 ) ,\
Song GUO15ef4742022-02-02 13:03:41 +0800762 },\
763 { \
764 /* Endpoint: 0, Cluster: Diagnostic Logs (server) */ \
765 .clusterId = 0x00000032, \
tehampson2db812e2022-05-23 15:24:29 -0400766 .attributes = ZAP_ATTRIBUTE_INDEX(64), \
767 .attributeCount = 2, \
768 .clusterSize = 6, \
Song GUO15ef4742022-02-02 13:03:41 +0800769 .mask = ZAP_CLUSTER_MASK(SERVER), \
770 .functions = NULL, \
Song GUO2580fb32022-05-10 21:48:33 +0800771 .acceptedCommandList = ZAP_GENERATED_COMMANDS_INDEX( 19 ) ,\
772 .generatedCommandList = ZAP_GENERATED_COMMANDS_INDEX( 21 ) ,\
Song GUO15ef4742022-02-02 13:03:41 +0800773 },\
774 { \
775 /* Endpoint: 0, Cluster: General Diagnostics (server) */ \
776 .clusterId = 0x00000033, \
tehampson2db812e2022-05-23 15:24:29 -0400777 .attributes = ZAP_ATTRIBUTE_INDEX(66), \
tehampson9179d312022-06-01 15:43:14 -0400778 .attributeCount = 11, \
tehampson2db812e2022-05-23 15:24:29 -0400779 .clusterSize = 6, \
Song GUO15ef4742022-02-02 13:03:41 +0800780 .mask = ZAP_CLUSTER_MASK(SERVER), \
781 .functions = NULL, \
tehampson9179d312022-06-01 15:43:14 -0400782 .acceptedCommandList = ZAP_GENERATED_COMMANDS_INDEX( 23 ) ,\
Boris Zbarsky821ca4a2022-03-21 09:05:12 -0400783 .generatedCommandList = nullptr ,\
Song GUO15ef4742022-02-02 13:03:41 +0800784 },\
785 { \
786 /* Endpoint: 0, Cluster: Software Diagnostics (server) */ \
787 .clusterId = 0x00000034, \
tehampson9179d312022-06-01 15:43:14 -0400788 .attributes = ZAP_ATTRIBUTE_INDEX(77), \
Song GUO15ef4742022-02-02 13:03:41 +0800789 .attributeCount = 6, \
Yufeng Wang28295b62022-05-04 09:09:55 -0700790 .clusterSize = 6, \
Song GUO15ef4742022-02-02 13:03:41 +0800791 .mask = ZAP_CLUSTER_MASK(SERVER), \
792 .functions = NULL, \
Boris Zbarsky583ac0d2022-05-28 13:08:33 -0400793 .acceptedCommandList = nullptr ,\
Boris Zbarsky821ca4a2022-03-21 09:05:12 -0400794 .generatedCommandList = nullptr ,\
Song GUO15ef4742022-02-02 13:03:41 +0800795 },\
796 { \
797 /* Endpoint: 0, Cluster: Thread Network Diagnostics (server) */ \
798 .clusterId = 0x00000035, \
tehampson9179d312022-06-01 15:43:14 -0400799 .attributes = ZAP_ATTRIBUTE_INDEX(83), \
Song GUO15ef4742022-02-02 13:03:41 +0800800 .attributeCount = 65, \
Yufeng Wang58653522022-05-27 22:10:22 -0700801 .clusterSize = 6, \
Song GUO15ef4742022-02-02 13:03:41 +0800802 .mask = ZAP_CLUSTER_MASK(SERVER), \
803 .functions = NULL, \
Boris Zbarsky821ca4a2022-03-21 09:05:12 -0400804 .acceptedCommandList = nullptr ,\
805 .generatedCommandList = nullptr ,\
Song GUO15ef4742022-02-02 13:03:41 +0800806 },\
807 { \
808 /* Endpoint: 0, Cluster: WiFi Network Diagnostics (server) */ \
809 .clusterId = 0x00000036, \
tehampson9179d312022-06-01 15:43:14 -0400810 .attributes = ZAP_ATTRIBUTE_INDEX(148), \
Song GUO15ef4742022-02-02 13:03:41 +0800811 .attributeCount = 15, \
Yufeng Wang28295b62022-05-04 09:09:55 -0700812 .clusterSize = 6, \
Song GUO15ef4742022-02-02 13:03:41 +0800813 .mask = ZAP_CLUSTER_MASK(SERVER), \
814 .functions = NULL, \
Boris Zbarsky821ca4a2022-03-21 09:05:12 -0400815 .acceptedCommandList = nullptr ,\
816 .generatedCommandList = nullptr ,\
Song GUO15ef4742022-02-02 13:03:41 +0800817 },\
818 { \
819 /* Endpoint: 0, Cluster: Ethernet Network Diagnostics (server) */ \
820 .clusterId = 0x00000037, \
tehampson9179d312022-06-01 15:43:14 -0400821 .attributes = ZAP_ATTRIBUTE_INDEX(163), \
Song GUO15ef4742022-02-02 13:03:41 +0800822 .attributeCount = 11, \
Boris Zbarskye3c52442022-04-25 15:45:58 -0400823 .clusterSize = 6, \
Song GUO15ef4742022-02-02 13:03:41 +0800824 .mask = ZAP_CLUSTER_MASK(SERVER), \
825 .functions = NULL, \
Shubham Patilf126ac22022-06-22 23:47:00 +0530826 .acceptedCommandList = ZAP_GENERATED_COMMANDS_INDEX( 26 ) ,\
Boris Zbarsky821ca4a2022-03-21 09:05:12 -0400827 .generatedCommandList = nullptr ,\
Song GUO15ef4742022-02-02 13:03:41 +0800828 },\
829 { \
tehampson9179d312022-06-01 15:43:14 -0400830 /* Endpoint: 0, Cluster: AdministratorCommissioning (server) */ \
831 .clusterId = 0x0000003C, \
832 .attributes = ZAP_ATTRIBUTE_INDEX(174), \
833 .attributeCount = 5, \
834 .clusterSize = 6, \
835 .mask = ZAP_CLUSTER_MASK(SERVER), \
836 .functions = NULL, \
Shubham Patilf126ac22022-06-22 23:47:00 +0530837 .acceptedCommandList = ZAP_GENERATED_COMMANDS_INDEX( 28 ) ,\
tehampson9179d312022-06-01 15:43:14 -0400838 .generatedCommandList = nullptr ,\
839 },\
840 { \
Song GUO15ef4742022-02-02 13:03:41 +0800841 /* Endpoint: 0, Cluster: Operational Credentials (server) */ \
842 .clusterId = 0x0000003E, \
tehampson9179d312022-06-01 15:43:14 -0400843 .attributes = ZAP_ATTRIBUTE_INDEX(179), \
tehampson2db812e2022-05-23 15:24:29 -0400844 .attributeCount = 8, \
845 .clusterSize = 6, \
Song GUO15ef4742022-02-02 13:03:41 +0800846 .mask = ZAP_CLUSTER_MASK(SERVER), \
847 .functions = NULL, \
Shubham Patilf126ac22022-06-22 23:47:00 +0530848 .acceptedCommandList = ZAP_GENERATED_COMMANDS_INDEX( 32 ) ,\
849 .generatedCommandList = ZAP_GENERATED_COMMANDS_INDEX( 41 ) ,\
Song GUO15ef4742022-02-02 13:03:41 +0800850 },\
851 { \
jwinder-ca3522f9a2022-06-09 23:38:48 -0600852 /* Endpoint: 0, Cluster: Group Key Management (server) */ \
853 .clusterId = 0x0000003F, \
tehampson9179d312022-06-01 15:43:14 -0400854 .attributes = ZAP_ATTRIBUTE_INDEX(187), \
jwinder-ca3522f9a2022-06-09 23:38:48 -0600855 .attributeCount = 6, \
tehampson2db812e2022-05-23 15:24:29 -0400856 .clusterSize = 6, \
Song GUO15ef4742022-02-02 13:03:41 +0800857 .mask = ZAP_CLUSTER_MASK(SERVER), \
858 .functions = NULL, \
Shubham Patilf126ac22022-06-22 23:47:00 +0530859 .acceptedCommandList = ZAP_GENERATED_COMMANDS_INDEX( 46 ) ,\
860 .generatedCommandList = ZAP_GENERATED_COMMANDS_INDEX( 51 ) ,\
Song GUO15ef4742022-02-02 13:03:41 +0800861 },\
862 { \
863 /* Endpoint: 0, Cluster: User Label (server) */ \
864 .clusterId = 0x00000041, \
jwinder-ca3522f9a2022-06-09 23:38:48 -0600865 .attributes = ZAP_ATTRIBUTE_INDEX(193), \
tehampson2db812e2022-05-23 15:24:29 -0400866 .attributeCount = 3, \
867 .clusterSize = 6, \
Song GUO15ef4742022-02-02 13:03:41 +0800868 .mask = ZAP_CLUSTER_MASK(SERVER), \
869 .functions = NULL, \
Boris Zbarsky821ca4a2022-03-21 09:05:12 -0400870 .acceptedCommandList = nullptr ,\
871 .generatedCommandList = nullptr ,\
Song GUO15ef4742022-02-02 13:03:41 +0800872 },\
873 { \
jwinder-ca3522f9a2022-06-09 23:38:48 -0600874 /* Endpoint: 1, Cluster: Identify (server) */ \
875 .clusterId = 0x00000003, \
tehampson9179d312022-06-01 15:43:14 -0400876 .attributes = ZAP_ATTRIBUTE_INDEX(196), \
jwinder-ca3522f9a2022-06-09 23:38:48 -0600877 .attributeCount = 4, \
878 .clusterSize = 9, \
879 .mask = ZAP_CLUSTER_MASK(SERVER) | ZAP_CLUSTER_MASK(INIT_FUNCTION) | ZAP_CLUSTER_MASK(ATTRIBUTE_CHANGED_FUNCTION), \
880 .functions = chipFuncArrayIdentifyServer, \
Shubham Patilf126ac22022-06-22 23:47:00 +0530881 .acceptedCommandList = ZAP_GENERATED_COMMANDS_INDEX( 54 ) ,\
Boris Zbarsky821ca4a2022-03-21 09:05:12 -0400882 .generatedCommandList = nullptr ,\
Song GUO15ef4742022-02-02 13:03:41 +0800883 },\
884 { \
885 /* Endpoint: 1, Cluster: Descriptor (server) */ \
886 .clusterId = 0x0000001D, \
jwinder-ca3522f9a2022-06-09 23:38:48 -0600887 .attributes = ZAP_ATTRIBUTE_INDEX(200), \
888 .attributeCount = 6, \
889 .clusterSize = 6, \
890 .mask = ZAP_CLUSTER_MASK(SERVER), \
891 .functions = NULL, \
892 .acceptedCommandList = nullptr ,\
893 .generatedCommandList = nullptr ,\
894 },\
895 { \
896 /* Endpoint: 1, Cluster: Binding (client) */ \
897 .clusterId = 0x0000001E, \
898 .attributes = ZAP_ATTRIBUTE_INDEX(206), \
899 .attributeCount = 0, \
900 .clusterSize = 0, \
901 .mask = ZAP_CLUSTER_MASK(CLIENT), \
902 .functions = NULL, \
903 .acceptedCommandList = nullptr ,\
904 .generatedCommandList = nullptr ,\
905 },\
906 { \
Boris Zbarsky117dd162022-08-08 16:32:56 -0400907 /* Endpoint: 1, Cluster: Actions (server) */ \
jwinder-ca3522f9a2022-06-09 23:38:48 -0600908 .clusterId = 0x00000025, \
909 .attributes = ZAP_ATTRIBUTE_INDEX(206), \
jwinder-ca5665d382022-07-21 10:35:30 -0600910 .attributeCount = 5, \
911 .clusterSize = 520, \
jwinder-ca3522f9a2022-06-09 23:38:48 -0600912 .mask = ZAP_CLUSTER_MASK(SERVER), \
913 .functions = NULL, \
jwinder-ca5665d382022-07-21 10:35:30 -0600914 .acceptedCommandList = ZAP_GENERATED_COMMANDS_INDEX( 57 ) ,\
jwinder-ca3522f9a2022-06-09 23:38:48 -0600915 .generatedCommandList = nullptr ,\
916 },\
917 { \
918 /* Endpoint: 2, Cluster: On/Off (server) */ \
919 .clusterId = 0x00000006, \
jwinder-ca5665d382022-07-21 10:35:30 -0600920 .attributes = ZAP_ATTRIBUTE_INDEX(211), \
jwinder-ca3522f9a2022-06-09 23:38:48 -0600921 .attributeCount = 3, \
922 .clusterSize = 7, \
923 .mask = ZAP_CLUSTER_MASK(SERVER) | ZAP_CLUSTER_MASK(INIT_FUNCTION), \
924 .functions = chipFuncArrayOnOffServer, \
jwinder-ca5665d382022-07-21 10:35:30 -0600925 .acceptedCommandList = ZAP_GENERATED_COMMANDS_INDEX( 59 ) ,\
jwinder-ca3522f9a2022-06-09 23:38:48 -0600926 .generatedCommandList = nullptr ,\
927 },\
928 { \
929 /* Endpoint: 2, Cluster: Level Control (server) */ \
930 .clusterId = 0x00000008, \
jwinder-ca5665d382022-07-21 10:35:30 -0600931 .attributes = ZAP_ATTRIBUTE_INDEX(214), \
jwinder-ca3522f9a2022-06-09 23:38:48 -0600932 .attributeCount = 16, \
933 .clusterSize = 27, \
934 .mask = ZAP_CLUSTER_MASK(SERVER) | ZAP_CLUSTER_MASK(INIT_FUNCTION), \
935 .functions = chipFuncArrayLevelControlServer, \
jwinder-ca5665d382022-07-21 10:35:30 -0600936 .acceptedCommandList = ZAP_GENERATED_COMMANDS_INDEX( 63 ) ,\
jwinder-ca3522f9a2022-06-09 23:38:48 -0600937 .generatedCommandList = nullptr ,\
938 },\
939 { \
940 /* Endpoint: 2, Cluster: Descriptor (server) */ \
941 .clusterId = 0x0000001D, \
jwinder-ca5665d382022-07-21 10:35:30 -0600942 .attributes = ZAP_ATTRIBUTE_INDEX(230), \
tehampson2db812e2022-05-23 15:24:29 -0400943 .attributeCount = 6, \
944 .clusterSize = 4, \
Song GUO15ef4742022-02-02 13:03:41 +0800945 .mask = ZAP_CLUSTER_MASK(SERVER), \
946 .functions = NULL, \
Boris Zbarsky821ca4a2022-03-21 09:05:12 -0400947 .acceptedCommandList = nullptr ,\
948 .generatedCommandList = nullptr ,\
Song GUO15ef4742022-02-02 13:03:41 +0800949 },\
950 { \
jwinder-ca3522f9a2022-06-09 23:38:48 -0600951 /* Endpoint: 2, Cluster: Switch (server) */ \
Song GUO15ef4742022-02-02 13:03:41 +0800952 .clusterId = 0x0000003B, \
jwinder-ca5665d382022-07-21 10:35:30 -0600953 .attributes = ZAP_ATTRIBUTE_INDEX(236), \
Song GUO15ef4742022-02-02 13:03:41 +0800954 .attributeCount = 5, \
955 .clusterSize = 9, \
956 .mask = ZAP_CLUSTER_MASK(SERVER), \
957 .functions = NULL, \
Boris Zbarsky821ca4a2022-03-21 09:05:12 -0400958 .acceptedCommandList = nullptr ,\
959 .generatedCommandList = nullptr ,\
Song GUO15ef4742022-02-02 13:03:41 +0800960 },\
jwinder-caaca43812022-07-29 11:01:06 -0600961 { \
962 /* Endpoint: 2, Cluster: Temperature Measurement (server) */ \
963 .clusterId = 0x00000402, \
964 .attributes = ZAP_ATTRIBUTE_INDEX(241), \
965 .attributeCount = 5, \
966 .clusterSize = 0, \
967 .mask = ZAP_CLUSTER_MASK(SERVER), \
968 .functions = NULL, \
969 .acceptedCommandList = nullptr ,\
970 .generatedCommandList = nullptr ,\
971 },\
Song GUO15ef4742022-02-02 13:03:41 +0800972}
973
974// clang-format on
Arun Bharadwaj5dcbd402021-01-25 15:39:27 -0800975
Boris Zbarsky90cf66a2022-01-28 16:14:30 -0500976#define ZAP_CLUSTER_INDEX(index) (&generatedClusters[index])
Arun Bharadwaj5dcbd402021-01-25 15:39:27 -0800977
jwinder-caaca43812022-07-29 11:01:06 -0600978#define ZAP_FIXED_ENDPOINT_DATA_VERSION_COUNT 26
Boris Zbarsky019ff592022-01-28 23:42:42 -0500979
Arun Bharadwaj5dcbd402021-01-25 15:39:27 -0800980// This is an array of EmberAfEndpointType structures.
981#define GENERATED_ENDPOINT_TYPES \
982 { \
jwinder-caaca43812022-07-29 11:01:06 -0600983 { ZAP_CLUSTER_INDEX(0), 19, 230 }, { ZAP_CLUSTER_INDEX(19), 4, 535 }, { ZAP_CLUSTER_INDEX(23), 5, 47 }, \
Arun Bharadwaj5dcbd402021-01-25 15:39:27 -0800984 }
985
986// Largest attribute size is needed for various buffers
jwinder-ca5665d382022-07-21 10:35:30 -0600987#define ATTRIBUTE_LARGEST (515)
Boris Zbarskye94c9a92022-02-05 02:49:57 -0500988
989static_assert(ATTRIBUTE_LARGEST <= CHIP_CONFIG_MAX_ATTRIBUTE_STORE_ELEMENT_SIZE, "ATTRIBUTE_LARGEST larger than expected");
Arun Bharadwaj5dcbd402021-01-25 15:39:27 -0800990
991// Total size of singleton attributes
Boris Zbarskye3c52442022-04-25 15:45:58 -0400992#define ATTRIBUTE_SINGLETONS_SIZE (37)
Arun Bharadwaj5dcbd402021-01-25 15:39:27 -0800993
994// Total size of attribute storage
jwinder-ca5665d382022-07-21 10:35:30 -0600995#define ATTRIBUTE_MAX_SIZE (812)
Arun Bharadwaj5dcbd402021-01-25 15:39:27 -0800996
997// Number of fixed endpoints
jwinder-ca3522f9a2022-06-09 23:38:48 -0600998#define FIXED_ENDPOINT_COUNT (3)
Arun Bharadwaj5dcbd402021-01-25 15:39:27 -0800999
1000// Array of endpoints that are supported, the data inside
1001// the array is the endpoint number.
1002#define FIXED_ENDPOINT_ARRAY \
1003 { \
jwinder-ca3522f9a2022-06-09 23:38:48 -06001004 0x0000, 0x0001, 0x0002 \
Arun Bharadwaj5dcbd402021-01-25 15:39:27 -08001005 }
1006
1007// Array of profile ids
1008#define FIXED_PROFILE_IDS \
1009 { \
jwinder-ca3522f9a2022-06-09 23:38:48 -06001010 0x0103, 0x0103, 0x0103 \
Arun Bharadwaj5dcbd402021-01-25 15:39:27 -08001011 }
1012
Jerry Johns40b08b92022-04-06 18:31:35 -07001013// Array of device types
1014#define FIXED_DEVICE_TYPES \
Arun Bharadwaj5dcbd402021-01-25 15:39:27 -08001015 { \
jwinder-ca3522f9a2022-06-09 23:38:48 -06001016 { 0x0016, 1 }, { 0x000E, 1 }, { 0x0101, 1 } \
Arun Bharadwaj5dcbd402021-01-25 15:39:27 -08001017 }
1018
Jerry Johns40b08b92022-04-06 18:31:35 -07001019// Array of device type offsets
1020#define FIXED_DEVICE_TYPE_OFFSETS \
1021 { \
jwinder-ca3522f9a2022-06-09 23:38:48 -06001022 0, 1, 2 \
Jerry Johns40b08b92022-04-06 18:31:35 -07001023 }
1024
1025// Array of device type lengths
1026#define FIXED_DEVICE_TYPE_LENGTHS \
Arun Bharadwaj5dcbd402021-01-25 15:39:27 -08001027 { \
jwinder-ca3522f9a2022-06-09 23:38:48 -06001028 1, 1, 1 \
Arun Bharadwaj5dcbd402021-01-25 15:39:27 -08001029 }
1030
1031// Array of endpoint types supported on each endpoint
1032#define FIXED_ENDPOINT_TYPES \
1033 { \
jwinder-ca3522f9a2022-06-09 23:38:48 -06001034 0, 1, 2 \
Arun Bharadwaj5dcbd402021-01-25 15:39:27 -08001035 }
1036
1037// Array of networks supported on each endpoint
1038#define FIXED_NETWORKS \
1039 { \
jwinder-ca3522f9a2022-06-09 23:38:48 -06001040 0, 0, 0 \
Arun Bharadwaj5dcbd402021-01-25 15:39:27 -08001041 }