blob: 0d077e9b56e1534cf6546793bc99a1ac617a5274 [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 \
42 /* Endpoint: 1, Cluster: Bridged Actions (server), big-endian */ \
43 \
44 /* 14 - setup url, */ \
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 \
62 /* Endpoint: 1, Cluster: Bridged Actions (server), little-endian */ \
63 \
64 /* 14 - setup url, */ \
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 \
jwinder-ca3522f9a2022-06-09 23:38:48 -0600101 /* 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 Zbarsky42f04332022-01-24 12:37:16 -0500111 { 0x00000000, ZAP_TYPE(ARRAY), 0, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* device list */ \
112 { 0x00000001, ZAP_TYPE(ARRAY), 0, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* server list */ \
113 { 0x00000002, ZAP_TYPE(ARRAY), 0, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* client list */ \
114 { 0x00000003, ZAP_TYPE(ARRAY), 0, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* parts list */ \
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), \
Yufeng Wang58653522022-05-27 22:10:22 -0700347 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), \
Yufeng Wang58653522022-05-27 22:10:22 -0700351 ZAP_EMPTY_DEFAULT() }, /* ChannelMask */ \
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 Wang28295b62022-05-04 09:09:55 -0700369 ZAP_EMPTY_DEFAULT() }, /* Rssi */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400370 { 0x00000005, ZAP_TYPE(INT32U), 4, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* BeaconLostCount */ \
371 { 0x00000006, ZAP_TYPE(INT32U), 4, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* BeaconRxCount */ \
372 { 0x00000007, ZAP_TYPE(INT32U), 4, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), \
Yufeng Wang28295b62022-05-04 09:09:55 -0700373 ZAP_EMPTY_DEFAULT() }, /* PacketMulticastRxCount */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400374 { 0x00000008, ZAP_TYPE(INT32U), 4, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), \
Yufeng Wang28295b62022-05-04 09:09:55 -0700375 ZAP_EMPTY_DEFAULT() }, /* PacketMulticastTxCount */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400376 { 0x00000009, ZAP_TYPE(INT32U), 4, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), \
Yufeng Wang28295b62022-05-04 09:09:55 -0700377 ZAP_EMPTY_DEFAULT() }, /* PacketUnicastRxCount */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400378 { 0x0000000A, ZAP_TYPE(INT32U), 4, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), \
Yufeng Wang28295b62022-05-04 09:09:55 -0700379 ZAP_EMPTY_DEFAULT() }, /* PacketUnicastTxCount */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400380 { 0x0000000B, ZAP_TYPE(INT64U), 8, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* CurrentMaxRate */ \
381 { 0x0000000C, ZAP_TYPE(INT64U), 8, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* OverrunCount */ \
tehampson6b82aee2022-05-19 08:17:33 -0400382 { 0x0000FFFC, ZAP_TYPE(BITMAP32), 4, 0, ZAP_SIMPLE_DEFAULT(3) }, /* FeatureMap */ \
Yufeng Wang28295b62022-05-04 09:09:55 -0700383 { 0x0000FFFD, ZAP_TYPE(INT16U), 2, 0, ZAP_SIMPLE_DEFAULT(1) }, /* ClusterRevision */ \
Yufeng Wang74f8da92021-05-10 08:18:08 -0700384 \
Yufeng Wang805a4b32021-05-17 20:27:36 -0700385 /* Endpoint: 0, Cluster: Ethernet Network Diagnostics (server) */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400386 { 0x00000000, ZAP_TYPE(ENUM8), 1, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(NULLABLE), \
Boris Zbarskye3c52442022-04-25 15:45:58 -0400387 ZAP_EMPTY_DEFAULT() }, /* PHYRate */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400388 { 0x00000001, ZAP_TYPE(BOOLEAN), 1, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(NULLABLE), \
Boris Zbarskye3c52442022-04-25 15:45:58 -0400389 ZAP_EMPTY_DEFAULT() }, /* FullDuplex */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400390 { 0x00000002, ZAP_TYPE(INT64U), 8, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* PacketRxCount */ \
391 { 0x00000003, ZAP_TYPE(INT64U), 8, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* PacketTxCount */ \
392 { 0x00000004, ZAP_TYPE(INT64U), 8, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* TxErrCount */ \
393 { 0x00000005, ZAP_TYPE(INT64U), 8, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* CollisionCount */ \
394 { 0x00000006, ZAP_TYPE(INT64U), 8, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* OverrunCount */ \
395 { 0x00000007, ZAP_TYPE(BOOLEAN), 1, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(NULLABLE), \
Boris Zbarskye3c52442022-04-25 15:45:58 -0400396 ZAP_EMPTY_DEFAULT() }, /* CarrierDetect */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400397 { 0x00000008, ZAP_TYPE(INT64U), 8, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* TimeSinceReset */ \
tehampson6b82aee2022-05-19 08:17:33 -0400398 { 0x0000FFFC, ZAP_TYPE(BITMAP32), 4, 0, ZAP_SIMPLE_DEFAULT(3) }, /* FeatureMap */ \
Boris Zbarskye3c52442022-04-25 15:45:58 -0400399 { 0x0000FFFD, ZAP_TYPE(INT16U), 2, 0, ZAP_SIMPLE_DEFAULT(1) }, /* ClusterRevision */ \
Yufeng Wang805a4b32021-05-17 20:27:36 -0700400 \
Pankaj Garg5eea9f22021-08-03 17:58:16 -0700401 /* Endpoint: 0, Cluster: AdministratorCommissioning (server) */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400402 { 0x00000000, ZAP_TYPE(INT8U), 1, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* WindowStatus */ \
Boris Zbarsky17c8da62022-07-31 01:47:37 -0400403 { 0x00000001, ZAP_TYPE(FABRIC_IDX), 1, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(NULLABLE), \
404 ZAP_EMPTY_DEFAULT() }, /* AdminFabricIndex */ \
405 { 0x00000002, ZAP_TYPE(INT16U), 2, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(NULLABLE), \
406 ZAP_EMPTY_DEFAULT() }, /* AdminVendorId */ \
407 { 0x0000FFFC, ZAP_TYPE(BITMAP32), 4, 0, ZAP_SIMPLE_DEFAULT(0) }, /* FeatureMap */ \
408 { 0x0000FFFD, ZAP_TYPE(INT16U), 2, 0, ZAP_SIMPLE_DEFAULT(1) }, /* ClusterRevision */ \
Pankaj Garg5eea9f22021-08-03 17:58:16 -0700409 \
jrhees-cae14edc102021-06-02 23:16:24 -0600410 /* Endpoint: 0, Cluster: Operational Credentials (server) */ \
Yufeng Wangfd815cd2022-01-20 10:26:41 -0800411 { 0x00000000, ZAP_TYPE(ARRAY), 0, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* NOCs */ \
Boris Zbarsky098e4552022-02-12 05:10:07 -0500412 { 0x00000001, ZAP_TYPE(ARRAY), 0, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* Fabrics */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400413 { 0x00000002, ZAP_TYPE(INT8U), 1, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* SupportedFabrics */ \
414 { 0x00000003, ZAP_TYPE(INT8U), 1, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), \
Boris Zbarskyc1e5b2f2022-05-05 23:40:49 -0400415 ZAP_EMPTY_DEFAULT() }, /* CommissionedFabrics */ \
Boris Zbarskyaa001762022-01-19 13:51:54 -0500416 { 0x00000004, ZAP_TYPE(ARRAY), 0, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), \
Boris Zbarsky2475f102021-10-29 13:01:22 -0400417 ZAP_EMPTY_DEFAULT() }, /* TrustedRootCertificates */ \
Vivien Nicolasf93e6cb2022-07-29 13:23:24 +0200418 { 0x00000005, ZAP_TYPE(INT8U), 1, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), \
tehampson2db812e2022-05-23 15:24:29 -0400419 ZAP_EMPTY_DEFAULT() }, /* CurrentFabricIndex */ \
420 { 0x0000FFFC, ZAP_TYPE(BITMAP32), 4, 0, ZAP_SIMPLE_DEFAULT(0) }, /* FeatureMap */ \
421 { 0x0000FFFD, ZAP_TYPE(INT16U), 2, 0, ZAP_SIMPLE_DEFAULT(1) }, /* ClusterRevision */ \
jrhees-cae14edc102021-06-02 23:16:24 -0600422 \
jwinder-ca3522f9a2022-06-09 23:38:48 -0600423 /* Endpoint: 0, Cluster: Group Key Management (server) */ \
424 { 0x00000000, ZAP_TYPE(ARRAY), 0, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(WRITABLE), \
425 ZAP_EMPTY_DEFAULT() }, /* GroupKeyMap */ \
426 { 0x00000001, ZAP_TYPE(ARRAY), 0, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* GroupTable */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400427 { 0x00000002, ZAP_TYPE(INT16U), 2, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), \
jwinder-ca3522f9a2022-06-09 23:38:48 -0600428 ZAP_EMPTY_DEFAULT() }, /* MaxGroupsPerFabric */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400429 { 0x00000003, ZAP_TYPE(INT16U), 2, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), \
jwinder-ca3522f9a2022-06-09 23:38:48 -0600430 ZAP_EMPTY_DEFAULT() }, /* MaxGroupKeysPerFabric */ \
431 { 0x0000FFFC, ZAP_TYPE(BITMAP32), 4, 0, ZAP_SIMPLE_DEFAULT(0) }, /* FeatureMap */ \
432 { 0x0000FFFD, ZAP_TYPE(INT16U), 2, 0, ZAP_SIMPLE_DEFAULT(1) }, /* ClusterRevision */ \
Yufeng Wanged192512021-12-10 21:02:15 -0800433 \
Yufeng Wangc9bc5ae2021-12-14 11:04:33 -0800434 /* Endpoint: 0, Cluster: User Label (server) */ \
Boris Zbarskyaa001762022-01-19 13:51:54 -0500435 { 0x00000000, ZAP_TYPE(ARRAY), 0, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(WRITABLE), \
tehampson2db812e2022-05-23 15:24:29 -0400436 ZAP_EMPTY_DEFAULT() }, /* label list */ \
437 { 0x0000FFFC, ZAP_TYPE(BITMAP32), 4, 0, ZAP_SIMPLE_DEFAULT(0) }, /* FeatureMap */ \
438 { 0x0000FFFD, ZAP_TYPE(INT16U), 2, 0, ZAP_SIMPLE_DEFAULT(1) }, /* ClusterRevision */ \
Yufeng Wangc9bc5ae2021-12-14 11:04:33 -0800439 \
jwinder-ca3522f9a2022-06-09 23:38:48 -0600440 /* Endpoint: 1, Cluster: Identify (server) */ \
441 { 0x00000000, ZAP_TYPE(INT16U), 2, ZAP_ATTRIBUTE_MASK(WRITABLE), ZAP_SIMPLE_DEFAULT(0x0) }, /* identify time */ \
442 { 0x00000001, ZAP_TYPE(ENUM8), 1, 0, ZAP_SIMPLE_DEFAULT(0x0) }, /* identify type */ \
443 { 0x0000FFFC, ZAP_TYPE(BITMAP32), 4, 0, ZAP_SIMPLE_DEFAULT(0) }, /* FeatureMap */ \
444 { 0x0000FFFD, ZAP_TYPE(INT16U), 2, 0, ZAP_SIMPLE_DEFAULT(2) }, /* ClusterRevision */ \
445 \
446 /* Endpoint: 1, Cluster: Descriptor (server) */ \
447 { 0x00000000, ZAP_TYPE(ARRAY), 0, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* device list */ \
448 { 0x00000001, ZAP_TYPE(ARRAY), 0, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* server list */ \
449 { 0x00000002, ZAP_TYPE(ARRAY), 0, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* client list */ \
450 { 0x00000003, ZAP_TYPE(ARRAY), 0, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* parts list */ \
451 { 0x0000FFFC, ZAP_TYPE(BITMAP32), 4, 0, ZAP_SIMPLE_DEFAULT(0) }, /* FeatureMap */ \
452 { 0x0000FFFD, ZAP_TYPE(INT16U), 2, 0, ZAP_SIMPLE_DEFAULT(1) }, /* ClusterRevision */ \
453 \
454 /* Endpoint: 1, Cluster: Bridged Actions (server) */ \
455 { 0x00000000, ZAP_TYPE(ARRAY), 0, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* action list */ \
456 { 0x00000001, ZAP_TYPE(ARRAY), 0, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* endpoint list */ \
jwinder-ca5665d382022-07-21 10:35:30 -0600457 { 0x00000002, ZAP_TYPE(LONG_CHAR_STRING), 514, 0, ZAP_LONG_DEFAULTS_INDEX(14) }, /* setup url */ \
jwinder-ca3522f9a2022-06-09 23:38:48 -0600458 { 0x0000FFFC, ZAP_TYPE(BITMAP32), 4, 0, ZAP_SIMPLE_DEFAULT(0) }, /* FeatureMap */ \
459 { 0x0000FFFD, ZAP_TYPE(INT16U), 2, 0, ZAP_SIMPLE_DEFAULT(1) }, /* ClusterRevision */ \
460 \
461 /* Endpoint: 2, Cluster: On/Off (server) */ \
Boris Zbarskyaa001762022-01-19 13:51:54 -0500462 { 0x00000000, ZAP_TYPE(BOOLEAN), 1, 0, ZAP_SIMPLE_DEFAULT(0x00) }, /* OnOff */ \
tehampson2db812e2022-05-23 15:24:29 -0400463 { 0x0000FFFC, ZAP_TYPE(BITMAP32), 4, 0, ZAP_SIMPLE_DEFAULT(0) }, /* FeatureMap */ \
Boris Zbarskyaa001762022-01-19 13:51:54 -0500464 { 0x0000FFFD, ZAP_TYPE(INT16U), 2, 0, ZAP_SIMPLE_DEFAULT(4) }, /* ClusterRevision */ \
Vivien Nicolasb80af572021-04-27 21:18:12 +0200465 \
jwinder-ca3522f9a2022-06-09 23:38:48 -0600466 /* Endpoint: 2, Cluster: Level Control (server) */ \
Boris Zbarskyaa001762022-01-19 13:51:54 -0500467 { 0x00000000, ZAP_TYPE(INT8U), 1, ZAP_ATTRIBUTE_MASK(TOKENIZE), ZAP_SIMPLE_DEFAULT(0x00) }, /* current level */ \
468 { 0x00000001, ZAP_TYPE(INT16U), 2, 0, ZAP_SIMPLE_DEFAULT(0x0000) }, /* remaining time */ \
jmartinez-silabs3948b402022-06-08 16:59:41 -0400469 { 0x00000002, ZAP_TYPE(INT8U), 1, 0, ZAP_SIMPLE_DEFAULT(0x01) }, /* min level */ \
Boris Zbarskyaa001762022-01-19 13:51:54 -0500470 { 0x00000003, ZAP_TYPE(INT8U), 1, 0, ZAP_SIMPLE_DEFAULT(0xFE) }, /* max level */ \
471 { 0x00000004, ZAP_TYPE(INT16U), 2, 0, ZAP_SIMPLE_DEFAULT(0x0000) }, /* current frequency */ \
472 { 0x00000005, ZAP_TYPE(INT16U), 2, 0, ZAP_SIMPLE_DEFAULT(0x0000) }, /* min frequency */ \
473 { 0x00000006, ZAP_TYPE(INT16U), 2, 0, ZAP_SIMPLE_DEFAULT(0x0000) }, /* max frequency */ \
474 { 0x0000000F, ZAP_TYPE(BITMAP8), 1, ZAP_ATTRIBUTE_MASK(MIN_MAX) | ZAP_ATTRIBUTE_MASK(WRITABLE), \
Andrei Litvinb2632702022-07-21 17:03:24 -0400475 ZAP_MIN_MAX_DEFAULTS_INDEX(2) }, /* options */ \
Boris Zbarskyaa001762022-01-19 13:51:54 -0500476 { 0x00000010, ZAP_TYPE(INT16U), 2, ZAP_ATTRIBUTE_MASK(WRITABLE), \
Boris Zbarsky2278e6b2021-11-30 01:40:08 -0500477 ZAP_SIMPLE_DEFAULT(0x0000) }, /* on off transition time */ \
Boris Zbarskyaa001762022-01-19 13:51:54 -0500478 { 0x00000011, ZAP_TYPE(INT8U), 1, ZAP_ATTRIBUTE_MASK(WRITABLE) | ZAP_ATTRIBUTE_MASK(NULLABLE), \
Boris Zbarsky2278e6b2021-11-30 01:40:08 -0500479 ZAP_SIMPLE_DEFAULT(0xFE) }, /* on level */ \
Boris Zbarskyaa001762022-01-19 13:51:54 -0500480 { 0x00000012, ZAP_TYPE(INT16U), 2, ZAP_ATTRIBUTE_MASK(WRITABLE) | ZAP_ATTRIBUTE_MASK(NULLABLE), \
Boris Zbarsky2278e6b2021-11-30 01:40:08 -0500481 ZAP_EMPTY_DEFAULT() }, /* on transition time */ \
Boris Zbarskyaa001762022-01-19 13:51:54 -0500482 { 0x00000013, ZAP_TYPE(INT16U), 2, ZAP_ATTRIBUTE_MASK(WRITABLE) | ZAP_ATTRIBUTE_MASK(NULLABLE), \
Boris Zbarsky2278e6b2021-11-30 01:40:08 -0500483 ZAP_EMPTY_DEFAULT() }, /* off transition time */ \
Boris Zbarskyaa001762022-01-19 13:51:54 -0500484 { 0x00000014, ZAP_TYPE(INT8U), 1, ZAP_ATTRIBUTE_MASK(WRITABLE) | ZAP_ATTRIBUTE_MASK(NULLABLE), \
jmartinez-silabs1a89a842022-01-14 15:09:07 -0500485 ZAP_EMPTY_DEFAULT() }, /* default move rate */ \
Boris Zbarskyaa001762022-01-19 13:51:54 -0500486 { 0x00004000, ZAP_TYPE(INT8U), 1, \
jmartinez-silabs1a89a842022-01-14 15:09:07 -0500487 ZAP_ATTRIBUTE_MASK(TOKENIZE) | ZAP_ATTRIBUTE_MASK(WRITABLE) | ZAP_ATTRIBUTE_MASK(NULLABLE), \
tehampson6b82aee2022-05-19 08:17:33 -0400488 ZAP_SIMPLE_DEFAULT(255) }, /* start up current level */ \
489 { 0x0000FFFC, ZAP_TYPE(BITMAP32), 4, 0, ZAP_SIMPLE_DEFAULT(3) }, /* FeatureMap */ \
490 { 0x0000FFFD, ZAP_TYPE(INT16U), 2, 0, ZAP_SIMPLE_DEFAULT(5) }, /* ClusterRevision */ \
Vivien Nicolasb80af572021-04-27 21:18:12 +0200491 \
jwinder-ca3522f9a2022-06-09 23:38:48 -0600492 /* Endpoint: 2, Cluster: Descriptor (server) */ \
Boris Zbarsky42f04332022-01-24 12:37:16 -0500493 { 0x00000000, ZAP_TYPE(ARRAY), 0, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* device list */ \
494 { 0x00000001, ZAP_TYPE(ARRAY), 0, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* server list */ \
495 { 0x00000002, ZAP_TYPE(ARRAY), 0, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* client list */ \
496 { 0x00000003, ZAP_TYPE(ARRAY), 0, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* parts list */ \
tehampson2db812e2022-05-23 15:24:29 -0400497 { 0x0000FFFC, ZAP_TYPE(BITMAP32), 4, 0, ZAP_SIMPLE_DEFAULT(0) }, /* FeatureMap */ \
Boris Zbarskyf36569f2022-06-22 12:48:26 -0400498 { 0x0000FFFD, ZAP_TYPE(INT16U), 2, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* ClusterRevision */ \
Damian Królik4ab05ae2021-10-26 13:24:46 +0200499 \
jwinder-ca3522f9a2022-06-09 23:38:48 -0600500 /* Endpoint: 2, Cluster: Switch (server) */ \
tehampson6b82aee2022-05-19 08:17:33 -0400501 { 0x00000000, ZAP_TYPE(INT8U), 1, 0, ZAP_SIMPLE_DEFAULT(2) }, /* number of positions */ \
502 { 0x00000001, ZAP_TYPE(INT8U), 1, 0, ZAP_SIMPLE_DEFAULT(1) }, /* current position */ \
503 { 0x00000002, ZAP_TYPE(INT8U), 1, 0, ZAP_SIMPLE_DEFAULT(2) }, /* multi press max */ \
504 { 0x0000FFFC, ZAP_TYPE(BITMAP32), 4, 0, ZAP_SIMPLE_DEFAULT(0) }, /* FeatureMap */ \
505 { 0x0000FFFD, ZAP_TYPE(INT16U), 2, 0, ZAP_SIMPLE_DEFAULT(1) }, /* ClusterRevision */ \
jwinder-caaca43812022-07-29 11:01:06 -0600506 \
507 /* Endpoint: 2, Cluster: Temperature Measurement (server) */ \
508 { 0x00000000, ZAP_TYPE(INT16S), 2, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(NULLABLE), \
509 ZAP_EMPTY_DEFAULT() }, /* MeasuredValue */ \
510 { 0x00000001, ZAP_TYPE(INT16S), 2, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(NULLABLE), \
511 ZAP_EMPTY_DEFAULT() }, /* MinMeasuredValue */ \
512 { 0x00000002, ZAP_TYPE(INT16S), 2, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE) | ZAP_ATTRIBUTE_MASK(NULLABLE), \
513 ZAP_EMPTY_DEFAULT() }, /* MaxMeasuredValue */ \
514 { 0x0000FFFC, ZAP_TYPE(BITMAP32), 4, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* FeatureMap */ \
515 { 0x0000FFFD, ZAP_TYPE(INT16U), 2, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* ClusterRevision */ \
Arun Bharadwaj5dcbd402021-01-25 15:39:27 -0800516 }
517
518// This is an array of EmberAfCluster structures.
Boris Zbarsky90cf66a2022-01-28 16:14:30 -0500519#define ZAP_ATTRIBUTE_INDEX(index) (&generatedAttributes[index])
Arun Bharadwaj5dcbd402021-01-25 15:39:27 -0800520
Song GUO15ef4742022-02-02 13:03:41 +0800521#define ZAP_GENERATED_COMMANDS_INDEX(index) ((chip::CommandId *) (&generatedCommands[index]))
522
Arun Bharadwaj5dcbd402021-01-25 15:39:27 -0800523// Cluster function static arrays
524#define GENERATED_FUNCTION_ARRAYS \
jrhees-cae14edc102021-06-02 23:16:24 -0600525 const EmberAfGenericClusterFunction chipFuncArrayBasicServer[] = { \
526 (EmberAfGenericClusterFunction) emberAfBasicClusterServerInitCallback, \
527 }; \
Yufeng Wang6e1a7412022-01-21 08:31:03 -0800528 const EmberAfGenericClusterFunction chipFuncArrayLocalizationConfigurationServer[] = { \
529 (EmberAfGenericClusterFunction) emberAfLocalizationConfigurationClusterServerInitCallback, \
530 (EmberAfGenericClusterFunction) MatterLocalizationConfigurationClusterServerPreAttributeChangedCallback, \
531 }; \
Yufeng Wangb6e08a82022-01-20 21:55:14 -0800532 const EmberAfGenericClusterFunction chipFuncArrayTimeFormatLocalizationServer[] = { \
533 (EmberAfGenericClusterFunction) emberAfTimeFormatLocalizationClusterServerInitCallback, \
534 (EmberAfGenericClusterFunction) MatterTimeFormatLocalizationClusterServerPreAttributeChangedCallback, \
535 }; \
jwinder-ca3522f9a2022-06-09 23:38:48 -0600536 const EmberAfGenericClusterFunction chipFuncArrayIdentifyServer[] = { \
537 (EmberAfGenericClusterFunction) emberAfIdentifyClusterServerInitCallback, \
538 (EmberAfGenericClusterFunction) MatterIdentifyClusterServerAttributeChangedCallback, \
539 }; \
Arun Bharadwaj5dcbd402021-01-25 15:39:27 -0800540 const EmberAfGenericClusterFunction chipFuncArrayOnOffServer[] = { \
541 (EmberAfGenericClusterFunction) emberAfOnOffClusterServerInitCallback, \
542 }; \
543 const EmberAfGenericClusterFunction chipFuncArrayLevelControlServer[] = { \
544 (EmberAfGenericClusterFunction) emberAfLevelControlClusterServerInitCallback, \
545 };
546
Song GUO15ef4742022-02-02 13:03:41 +0800547// clang-format off
548#define GENERATED_COMMANDS { \
549 /* Endpoint: 0, Cluster: General Commissioning (server) */\
Song GUO2580fb32022-05-10 21:48:33 +0800550 /* AcceptedCommandList (index=0) */ \
Song GUO15ef4742022-02-02 13:03:41 +0800551 0x00000000 /* ArmFailSafe */, \
552 0x00000002 /* SetRegulatoryConfig */, \
553 0x00000004 /* CommissioningComplete */, \
554 chip::kInvalidCommandId /* end of list */, \
Song GUO2580fb32022-05-10 21:48:33 +0800555 /* GeneratedCommandList (index=4)*/ \
Song GUO15ef4742022-02-02 13:03:41 +0800556 0x00000001 /* ArmFailSafeResponse */, \
Song GUO2580fb32022-05-10 21:48:33 +0800557 0x00000003 /* SetRegulatoryConfigResponse */, \
Song GUO15ef4742022-02-02 13:03:41 +0800558 0x00000005 /* CommissioningCompleteResponse */, \
559 chip::kInvalidCommandId /* end of list */, \
560 /* Endpoint: 0, Cluster: Network Commissioning (server) */\
Song GUO2580fb32022-05-10 21:48:33 +0800561 /* AcceptedCommandList (index=8) */ \
Song GUO15ef4742022-02-02 13:03:41 +0800562 0x00000000 /* ScanNetworks */, \
563 0x00000002 /* AddOrUpdateWiFiNetwork */, \
564 0x00000003 /* AddOrUpdateThreadNetwork */, \
565 0x00000004 /* RemoveNetwork */, \
566 0x00000006 /* ConnectNetwork */, \
567 0x00000008 /* ReorderNetwork */, \
568 chip::kInvalidCommandId /* end of list */, \
Song GUO2580fb32022-05-10 21:48:33 +0800569 /* GeneratedCommandList (index=15)*/ \
Song GUO15ef4742022-02-02 13:03:41 +0800570 0x00000001 /* ScanNetworksResponse */, \
Song GUO2580fb32022-05-10 21:48:33 +0800571 0x00000005 /* NetworkConfigResponse */, \
Song GUO15ef4742022-02-02 13:03:41 +0800572 0x00000007 /* ConnectNetworkResponse */, \
573 chip::kInvalidCommandId /* end of list */, \
574 /* Endpoint: 0, Cluster: Diagnostic Logs (server) */\
Song GUO2580fb32022-05-10 21:48:33 +0800575 /* AcceptedCommandList (index=19) */ \
Song GUO15ef4742022-02-02 13:03:41 +0800576 0x00000000 /* RetrieveLogsRequest */, \
577 chip::kInvalidCommandId /* end of list */, \
Song GUO2580fb32022-05-10 21:48:33 +0800578 /* GeneratedCommandList (index=21)*/ \
579 0x00000001 /* RetrieveLogsResponse */, \
580 chip::kInvalidCommandId /* end of list */, \
tehampson9179d312022-06-01 15:43:14 -0400581 /* Endpoint: 0, Cluster: General Diagnostics (server) */\
Boris Zbarsky583ac0d2022-05-28 13:08:33 -0400582 /* AcceptedCommandList (index=23) */ \
tehampson9179d312022-06-01 15:43:14 -0400583 0x00000000 /* TestEventTrigger */, \
jwinder-ca3522f9a2022-06-09 23:38:48 -0600584 0x00000000 /* TestEventTrigger */, \
tehampson9179d312022-06-01 15:43:14 -0400585 chip::kInvalidCommandId /* end of list */, \
Shubham Patilf126ac22022-06-22 23:47:00 +0530586 /* Endpoint: 0, Cluster: Ethernet Network Diagnostics (server) */\
jwinder-ca3522f9a2022-06-09 23:38:48 -0600587 /* AcceptedCommandList (index=26) */ \
Shubham Patilf126ac22022-06-22 23:47:00 +0530588 0x00000000 /* ResetCounts */, \
589 chip::kInvalidCommandId /* end of list */, \
590 /* Endpoint: 0, Cluster: AdministratorCommissioning (server) */\
591 /* AcceptedCommandList (index=28) */ \
Song GUO15ef4742022-02-02 13:03:41 +0800592 0x00000000 /* OpenCommissioningWindow */, \
593 0x00000001 /* OpenBasicCommissioningWindow */, \
594 0x00000002 /* RevokeCommissioning */, \
595 chip::kInvalidCommandId /* end of list */, \
596 /* Endpoint: 0, Cluster: Operational Credentials (server) */\
Shubham Patilf126ac22022-06-22 23:47:00 +0530597 /* AcceptedCommandList (index=32) */ \
Song GUO15ef4742022-02-02 13:03:41 +0800598 0x00000000 /* AttestationRequest */, \
599 0x00000002 /* CertificateChainRequest */, \
Boris Zbarsky570a1ce2022-02-04 11:38:38 -0500600 0x00000004 /* CSRRequest */, \
Song GUO15ef4742022-02-02 13:03:41 +0800601 0x00000006 /* AddNOC */, \
602 0x00000007 /* UpdateNOC */, \
603 0x00000009 /* UpdateFabricLabel */, \
604 0x0000000A /* RemoveFabric */, \
605 0x0000000B /* AddTrustedRootCertificate */, \
Song GUO15ef4742022-02-02 13:03:41 +0800606 chip::kInvalidCommandId /* end of list */, \
Shubham Patilf126ac22022-06-22 23:47:00 +0530607 /* GeneratedCommandList (index=41)*/ \
Song GUO15ef4742022-02-02 13:03:41 +0800608 0x00000001 /* AttestationResponse */, \
609 0x00000003 /* CertificateChainResponse */, \
Boris Zbarsky570a1ce2022-02-04 11:38:38 -0500610 0x00000005 /* CSRResponse */, \
Song GUO15ef4742022-02-02 13:03:41 +0800611 0x00000008 /* NOCResponse */, \
612 chip::kInvalidCommandId /* end of list */, \
jwinder-ca3522f9a2022-06-09 23:38:48 -0600613 /* Endpoint: 0, Cluster: Group Key Management (server) */\
Shubham Patilf126ac22022-06-22 23:47:00 +0530614 /* AcceptedCommandList (index=46) */ \
jwinder-ca3522f9a2022-06-09 23:38:48 -0600615 0x00000000 /* KeySetWrite */, \
616 0x00000001 /* KeySetRead */, \
617 0x00000003 /* KeySetRemove */, \
618 0x00000004 /* KeySetReadAllIndices */, \
619 chip::kInvalidCommandId /* end of list */, \
Shubham Patilf126ac22022-06-22 23:47:00 +0530620 /* GeneratedCommandList (index=51)*/ \
jwinder-ca3522f9a2022-06-09 23:38:48 -0600621 0x00000002 /* KeySetReadResponse */, \
622 0x00000005 /* KeySetReadAllIndicesResponse */, \
623 chip::kInvalidCommandId /* end of list */, \
624 /* Endpoint: 1, Cluster: Identify (server) */\
Shubham Patilf126ac22022-06-22 23:47:00 +0530625 /* AcceptedCommandList (index=54) */ \
jwinder-ca3522f9a2022-06-09 23:38:48 -0600626 0x00000000 /* Identify */, \
627 0x00000040 /* TriggerEffect */, \
628 chip::kInvalidCommandId /* end of list */, \
jwinder-ca5665d382022-07-21 10:35:30 -0600629 /* Endpoint: 1, Cluster: Bridged Actions (server) */\
Shubham Patilf126ac22022-06-22 23:47:00 +0530630 /* AcceptedCommandList (index=57) */ \
jwinder-ca5665d382022-07-21 10:35:30 -0600631 0x00000000 /* InstantAction */, \
632 chip::kInvalidCommandId /* end of list */, \
633 /* Endpoint: 2, Cluster: On/Off (server) */\
634 /* AcceptedCommandList (index=59) */ \
Song GUO15ef4742022-02-02 13:03:41 +0800635 0x00000000 /* Off */, \
636 0x00000001 /* On */, \
637 0x00000002 /* Toggle */, \
638 chip::kInvalidCommandId /* end of list */, \
jwinder-ca3522f9a2022-06-09 23:38:48 -0600639 /* Endpoint: 2, Cluster: Level Control (server) */\
jwinder-ca5665d382022-07-21 10:35:30 -0600640 /* AcceptedCommandList (index=63) */ \
Song GUO15ef4742022-02-02 13:03:41 +0800641 0x00000000 /* MoveToLevel */, \
642 0x00000001 /* Move */, \
643 0x00000002 /* Step */, \
644 0x00000003 /* Stop */, \
645 0x00000004 /* MoveToLevelWithOnOff */, \
646 0x00000005 /* MoveWithOnOff */, \
647 0x00000006 /* StepWithOnOff */, \
648 0x00000007 /* StopWithOnOff */, \
649 chip::kInvalidCommandId /* end of list */, \
650}
651
652// clang-format on
653
Arun Bharadwaj5dcbd402021-01-25 15:39:27 -0800654#define ZAP_CLUSTER_MASK(mask) CLUSTER_MASK_##mask
jwinder-caaca43812022-07-29 11:01:06 -0600655#define GENERATED_CLUSTER_COUNT 28
Song GUO15ef4742022-02-02 13:03:41 +0800656
657// clang-format off
658#define GENERATED_CLUSTERS { \
659 { \
660 /* Endpoint: 0, Cluster: Descriptor (server) */ \
661 .clusterId = 0x0000001D, \
662 .attributes = ZAP_ATTRIBUTE_INDEX(0), \
tehampson2db812e2022-05-23 15:24:29 -0400663 .attributeCount = 6, \
664 .clusterSize = 4, \
Song GUO15ef4742022-02-02 13:03:41 +0800665 .mask = ZAP_CLUSTER_MASK(SERVER), \
666 .functions = NULL, \
Boris Zbarsky821ca4a2022-03-21 09:05:12 -0400667 .acceptedCommandList = nullptr ,\
668 .generatedCommandList = nullptr ,\
Song GUO15ef4742022-02-02 13:03:41 +0800669 },\
670 { \
Harsha Rajendrand02ff672022-02-03 09:26:36 -0500671 /* Endpoint: 0, Cluster: Access Control (client) */ \
672 .clusterId = 0x0000001F, \
tehampson2db812e2022-05-23 15:24:29 -0400673 .attributes = ZAP_ATTRIBUTE_INDEX(6), \
Boris Zbarsky4267a9b2022-02-03 13:11:41 -0500674 .attributeCount = 0, \
675 .clusterSize = 0, \
Harsha Rajendrand02ff672022-02-03 09:26:36 -0500676 .mask = ZAP_CLUSTER_MASK(CLIENT), \
677 .functions = NULL, \
Boris Zbarsky821ca4a2022-03-21 09:05:12 -0400678 .acceptedCommandList = nullptr ,\
679 .generatedCommandList = nullptr ,\
Harsha Rajendrand02ff672022-02-03 09:26:36 -0500680 },\
681 { \
682 /* Endpoint: 0, Cluster: Access Control (server) */ \
683 .clusterId = 0x0000001F, \
tehampson2db812e2022-05-23 15:24:29 -0400684 .attributes = ZAP_ATTRIBUTE_INDEX(6), \
685 .attributeCount = 7, \
686 .clusterSize = 6, \
Harsha Rajendrand02ff672022-02-03 09:26:36 -0500687 .mask = ZAP_CLUSTER_MASK(SERVER), \
688 .functions = NULL, \
Boris Zbarsky821ca4a2022-03-21 09:05:12 -0400689 .acceptedCommandList = nullptr ,\
690 .generatedCommandList = nullptr ,\
Harsha Rajendrand02ff672022-02-03 09:26:36 -0500691 },\
692 { \
Song GUO15ef4742022-02-02 13:03:41 +0800693 /* Endpoint: 0, Cluster: Basic (server) */ \
694 .clusterId = 0x00000028, \
tehampson2db812e2022-05-23 15:24:29 -0400695 .attributes = ZAP_ATTRIBUTE_INDEX(13), \
696 .attributeCount = 22, \
697 .clusterSize = 41, \
Song GUO15ef4742022-02-02 13:03:41 +0800698 .mask = ZAP_CLUSTER_MASK(SERVER) | ZAP_CLUSTER_MASK(INIT_FUNCTION), \
699 .functions = chipFuncArrayBasicServer, \
Boris Zbarsky821ca4a2022-03-21 09:05:12 -0400700 .acceptedCommandList = nullptr ,\
701 .generatedCommandList = nullptr ,\
Song GUO15ef4742022-02-02 13:03:41 +0800702 },\
703 { \
704 /* Endpoint: 0, Cluster: Localization Configuration (server) */ \
705 .clusterId = 0x0000002B, \
tehampson2db812e2022-05-23 15:24:29 -0400706 .attributes = ZAP_ATTRIBUTE_INDEX(35), \
707 .attributeCount = 4, \
708 .clusterSize = 42, \
Song GUO15ef4742022-02-02 13:03:41 +0800709 .mask = ZAP_CLUSTER_MASK(SERVER) | ZAP_CLUSTER_MASK(INIT_FUNCTION) | ZAP_CLUSTER_MASK(PRE_ATTRIBUTE_CHANGED_FUNCTION), \
710 .functions = chipFuncArrayLocalizationConfigurationServer, \
Boris Zbarsky821ca4a2022-03-21 09:05:12 -0400711 .acceptedCommandList = nullptr ,\
712 .generatedCommandList = nullptr ,\
Song GUO15ef4742022-02-02 13:03:41 +0800713 },\
714 { \
715 /* Endpoint: 0, Cluster: Time Format Localization (server) */ \
716 .clusterId = 0x0000002C, \
tehampson2db812e2022-05-23 15:24:29 -0400717 .attributes = ZAP_ATTRIBUTE_INDEX(39), \
718 .attributeCount = 5, \
719 .clusterSize = 8, \
Song GUO15ef4742022-02-02 13:03:41 +0800720 .mask = ZAP_CLUSTER_MASK(SERVER) | ZAP_CLUSTER_MASK(INIT_FUNCTION) | ZAP_CLUSTER_MASK(PRE_ATTRIBUTE_CHANGED_FUNCTION), \
721 .functions = chipFuncArrayTimeFormatLocalizationServer, \
Boris Zbarsky821ca4a2022-03-21 09:05:12 -0400722 .acceptedCommandList = nullptr ,\
723 .generatedCommandList = nullptr ,\
Song GUO15ef4742022-02-02 13:03:41 +0800724 },\
725 { \
726 /* Endpoint: 0, Cluster: Unit Localization (server) */ \
727 .clusterId = 0x0000002D, \
tehampson2db812e2022-05-23 15:24:29 -0400728 .attributes = ZAP_ATTRIBUTE_INDEX(44), \
Song GUO15ef4742022-02-02 13:03:41 +0800729 .attributeCount = 3, \
730 .clusterSize = 7, \
731 .mask = ZAP_CLUSTER_MASK(SERVER), \
732 .functions = NULL, \
Boris Zbarsky821ca4a2022-03-21 09:05:12 -0400733 .acceptedCommandList = nullptr ,\
734 .generatedCommandList = nullptr ,\
Song GUO15ef4742022-02-02 13:03:41 +0800735 },\
736 { \
737 /* Endpoint: 0, Cluster: General Commissioning (server) */ \
738 .clusterId = 0x00000030, \
tehampson2db812e2022-05-23 15:24:29 -0400739 .attributes = ZAP_ATTRIBUTE_INDEX(47), \
Tennessee Carmel-Veilleux5f8c83e2022-04-01 21:03:47 -0400740 .attributeCount = 7, \
Boris Zbarskyc1e5b2f2022-05-05 23:40:49 -0400741 .clusterSize = 14, \
Song GUO15ef4742022-02-02 13:03:41 +0800742 .mask = ZAP_CLUSTER_MASK(SERVER), \
743 .functions = NULL, \
Boris Zbarsky821ca4a2022-03-21 09:05:12 -0400744 .acceptedCommandList = ZAP_GENERATED_COMMANDS_INDEX( 0 ) ,\
745 .generatedCommandList = ZAP_GENERATED_COMMANDS_INDEX( 4 ) ,\
Song GUO15ef4742022-02-02 13:03:41 +0800746 },\
747 { \
748 /* Endpoint: 0, Cluster: Network Commissioning (server) */ \
749 .clusterId = 0x00000031, \
tehampson2db812e2022-05-23 15:24:29 -0400750 .attributes = ZAP_ATTRIBUTE_INDEX(54), \
Song GUO15ef4742022-02-02 13:03:41 +0800751 .attributeCount = 10, \
Boris Zbarsky47682fb2022-02-24 08:54:28 -0500752 .clusterSize = 48, \
Song GUO15ef4742022-02-02 13:03:41 +0800753 .mask = ZAP_CLUSTER_MASK(SERVER), \
754 .functions = NULL, \
Song GUO2580fb32022-05-10 21:48:33 +0800755 .acceptedCommandList = ZAP_GENERATED_COMMANDS_INDEX( 8 ) ,\
756 .generatedCommandList = ZAP_GENERATED_COMMANDS_INDEX( 15 ) ,\
Song GUO15ef4742022-02-02 13:03:41 +0800757 },\
758 { \
759 /* Endpoint: 0, Cluster: Diagnostic Logs (server) */ \
760 .clusterId = 0x00000032, \
tehampson2db812e2022-05-23 15:24:29 -0400761 .attributes = ZAP_ATTRIBUTE_INDEX(64), \
762 .attributeCount = 2, \
763 .clusterSize = 6, \
Song GUO15ef4742022-02-02 13:03:41 +0800764 .mask = ZAP_CLUSTER_MASK(SERVER), \
765 .functions = NULL, \
Song GUO2580fb32022-05-10 21:48:33 +0800766 .acceptedCommandList = ZAP_GENERATED_COMMANDS_INDEX( 19 ) ,\
767 .generatedCommandList = ZAP_GENERATED_COMMANDS_INDEX( 21 ) ,\
Song GUO15ef4742022-02-02 13:03:41 +0800768 },\
769 { \
770 /* Endpoint: 0, Cluster: General Diagnostics (server) */ \
771 .clusterId = 0x00000033, \
tehampson2db812e2022-05-23 15:24:29 -0400772 .attributes = ZAP_ATTRIBUTE_INDEX(66), \
tehampson9179d312022-06-01 15:43:14 -0400773 .attributeCount = 11, \
tehampson2db812e2022-05-23 15:24:29 -0400774 .clusterSize = 6, \
Song GUO15ef4742022-02-02 13:03:41 +0800775 .mask = ZAP_CLUSTER_MASK(SERVER), \
776 .functions = NULL, \
tehampson9179d312022-06-01 15:43:14 -0400777 .acceptedCommandList = ZAP_GENERATED_COMMANDS_INDEX( 23 ) ,\
Boris Zbarsky821ca4a2022-03-21 09:05:12 -0400778 .generatedCommandList = nullptr ,\
Song GUO15ef4742022-02-02 13:03:41 +0800779 },\
780 { \
781 /* Endpoint: 0, Cluster: Software Diagnostics (server) */ \
782 .clusterId = 0x00000034, \
tehampson9179d312022-06-01 15:43:14 -0400783 .attributes = ZAP_ATTRIBUTE_INDEX(77), \
Song GUO15ef4742022-02-02 13:03:41 +0800784 .attributeCount = 6, \
Yufeng Wang28295b62022-05-04 09:09:55 -0700785 .clusterSize = 6, \
Song GUO15ef4742022-02-02 13:03:41 +0800786 .mask = ZAP_CLUSTER_MASK(SERVER), \
787 .functions = NULL, \
Boris Zbarsky583ac0d2022-05-28 13:08:33 -0400788 .acceptedCommandList = nullptr ,\
Boris Zbarsky821ca4a2022-03-21 09:05:12 -0400789 .generatedCommandList = nullptr ,\
Song GUO15ef4742022-02-02 13:03:41 +0800790 },\
791 { \
792 /* Endpoint: 0, Cluster: Thread Network Diagnostics (server) */ \
793 .clusterId = 0x00000035, \
tehampson9179d312022-06-01 15:43:14 -0400794 .attributes = ZAP_ATTRIBUTE_INDEX(83), \
Song GUO15ef4742022-02-02 13:03:41 +0800795 .attributeCount = 65, \
Yufeng Wang58653522022-05-27 22:10:22 -0700796 .clusterSize = 6, \
Song GUO15ef4742022-02-02 13:03:41 +0800797 .mask = ZAP_CLUSTER_MASK(SERVER), \
798 .functions = NULL, \
Boris Zbarsky821ca4a2022-03-21 09:05:12 -0400799 .acceptedCommandList = nullptr ,\
800 .generatedCommandList = nullptr ,\
Song GUO15ef4742022-02-02 13:03:41 +0800801 },\
802 { \
803 /* Endpoint: 0, Cluster: WiFi Network Diagnostics (server) */ \
804 .clusterId = 0x00000036, \
tehampson9179d312022-06-01 15:43:14 -0400805 .attributes = ZAP_ATTRIBUTE_INDEX(148), \
Song GUO15ef4742022-02-02 13:03:41 +0800806 .attributeCount = 15, \
Yufeng Wang28295b62022-05-04 09:09:55 -0700807 .clusterSize = 6, \
Song GUO15ef4742022-02-02 13:03:41 +0800808 .mask = ZAP_CLUSTER_MASK(SERVER), \
809 .functions = NULL, \
Boris Zbarsky821ca4a2022-03-21 09:05:12 -0400810 .acceptedCommandList = nullptr ,\
811 .generatedCommandList = nullptr ,\
Song GUO15ef4742022-02-02 13:03:41 +0800812 },\
813 { \
814 /* Endpoint: 0, Cluster: Ethernet Network Diagnostics (server) */ \
815 .clusterId = 0x00000037, \
tehampson9179d312022-06-01 15:43:14 -0400816 .attributes = ZAP_ATTRIBUTE_INDEX(163), \
Song GUO15ef4742022-02-02 13:03:41 +0800817 .attributeCount = 11, \
Boris Zbarskye3c52442022-04-25 15:45:58 -0400818 .clusterSize = 6, \
Song GUO15ef4742022-02-02 13:03:41 +0800819 .mask = ZAP_CLUSTER_MASK(SERVER), \
820 .functions = NULL, \
Shubham Patilf126ac22022-06-22 23:47:00 +0530821 .acceptedCommandList = ZAP_GENERATED_COMMANDS_INDEX( 26 ) ,\
Boris Zbarsky821ca4a2022-03-21 09:05:12 -0400822 .generatedCommandList = nullptr ,\
Song GUO15ef4742022-02-02 13:03:41 +0800823 },\
824 { \
tehampson9179d312022-06-01 15:43:14 -0400825 /* Endpoint: 0, Cluster: AdministratorCommissioning (server) */ \
826 .clusterId = 0x0000003C, \
827 .attributes = ZAP_ATTRIBUTE_INDEX(174), \
828 .attributeCount = 5, \
829 .clusterSize = 6, \
830 .mask = ZAP_CLUSTER_MASK(SERVER), \
831 .functions = NULL, \
Shubham Patilf126ac22022-06-22 23:47:00 +0530832 .acceptedCommandList = ZAP_GENERATED_COMMANDS_INDEX( 28 ) ,\
tehampson9179d312022-06-01 15:43:14 -0400833 .generatedCommandList = nullptr ,\
834 },\
835 { \
Song GUO15ef4742022-02-02 13:03:41 +0800836 /* Endpoint: 0, Cluster: Operational Credentials (server) */ \
837 .clusterId = 0x0000003E, \
tehampson9179d312022-06-01 15:43:14 -0400838 .attributes = ZAP_ATTRIBUTE_INDEX(179), \
tehampson2db812e2022-05-23 15:24:29 -0400839 .attributeCount = 8, \
840 .clusterSize = 6, \
Song GUO15ef4742022-02-02 13:03:41 +0800841 .mask = ZAP_CLUSTER_MASK(SERVER), \
842 .functions = NULL, \
Shubham Patilf126ac22022-06-22 23:47:00 +0530843 .acceptedCommandList = ZAP_GENERATED_COMMANDS_INDEX( 32 ) ,\
844 .generatedCommandList = ZAP_GENERATED_COMMANDS_INDEX( 41 ) ,\
Song GUO15ef4742022-02-02 13:03:41 +0800845 },\
846 { \
jwinder-ca3522f9a2022-06-09 23:38:48 -0600847 /* Endpoint: 0, Cluster: Group Key Management (server) */ \
848 .clusterId = 0x0000003F, \
tehampson9179d312022-06-01 15:43:14 -0400849 .attributes = ZAP_ATTRIBUTE_INDEX(187), \
jwinder-ca3522f9a2022-06-09 23:38:48 -0600850 .attributeCount = 6, \
tehampson2db812e2022-05-23 15:24:29 -0400851 .clusterSize = 6, \
Song GUO15ef4742022-02-02 13:03:41 +0800852 .mask = ZAP_CLUSTER_MASK(SERVER), \
853 .functions = NULL, \
Shubham Patilf126ac22022-06-22 23:47:00 +0530854 .acceptedCommandList = ZAP_GENERATED_COMMANDS_INDEX( 46 ) ,\
855 .generatedCommandList = ZAP_GENERATED_COMMANDS_INDEX( 51 ) ,\
Song GUO15ef4742022-02-02 13:03:41 +0800856 },\
857 { \
858 /* Endpoint: 0, Cluster: User Label (server) */ \
859 .clusterId = 0x00000041, \
jwinder-ca3522f9a2022-06-09 23:38:48 -0600860 .attributes = ZAP_ATTRIBUTE_INDEX(193), \
tehampson2db812e2022-05-23 15:24:29 -0400861 .attributeCount = 3, \
862 .clusterSize = 6, \
Song GUO15ef4742022-02-02 13:03:41 +0800863 .mask = ZAP_CLUSTER_MASK(SERVER), \
864 .functions = NULL, \
Boris Zbarsky821ca4a2022-03-21 09:05:12 -0400865 .acceptedCommandList = nullptr ,\
866 .generatedCommandList = nullptr ,\
Song GUO15ef4742022-02-02 13:03:41 +0800867 },\
868 { \
jwinder-ca3522f9a2022-06-09 23:38:48 -0600869 /* Endpoint: 1, Cluster: Identify (server) */ \
870 .clusterId = 0x00000003, \
tehampson9179d312022-06-01 15:43:14 -0400871 .attributes = ZAP_ATTRIBUTE_INDEX(196), \
jwinder-ca3522f9a2022-06-09 23:38:48 -0600872 .attributeCount = 4, \
873 .clusterSize = 9, \
874 .mask = ZAP_CLUSTER_MASK(SERVER) | ZAP_CLUSTER_MASK(INIT_FUNCTION) | ZAP_CLUSTER_MASK(ATTRIBUTE_CHANGED_FUNCTION), \
875 .functions = chipFuncArrayIdentifyServer, \
Shubham Patilf126ac22022-06-22 23:47:00 +0530876 .acceptedCommandList = ZAP_GENERATED_COMMANDS_INDEX( 54 ) ,\
Boris Zbarsky821ca4a2022-03-21 09:05:12 -0400877 .generatedCommandList = nullptr ,\
Song GUO15ef4742022-02-02 13:03:41 +0800878 },\
879 { \
880 /* Endpoint: 1, Cluster: Descriptor (server) */ \
881 .clusterId = 0x0000001D, \
jwinder-ca3522f9a2022-06-09 23:38:48 -0600882 .attributes = ZAP_ATTRIBUTE_INDEX(200), \
883 .attributeCount = 6, \
884 .clusterSize = 6, \
885 .mask = ZAP_CLUSTER_MASK(SERVER), \
886 .functions = NULL, \
887 .acceptedCommandList = nullptr ,\
888 .generatedCommandList = nullptr ,\
889 },\
890 { \
891 /* Endpoint: 1, Cluster: Binding (client) */ \
892 .clusterId = 0x0000001E, \
893 .attributes = ZAP_ATTRIBUTE_INDEX(206), \
894 .attributeCount = 0, \
895 .clusterSize = 0, \
896 .mask = ZAP_CLUSTER_MASK(CLIENT), \
897 .functions = NULL, \
898 .acceptedCommandList = nullptr ,\
899 .generatedCommandList = nullptr ,\
900 },\
901 { \
902 /* Endpoint: 1, Cluster: Bridged Actions (server) */ \
903 .clusterId = 0x00000025, \
904 .attributes = ZAP_ATTRIBUTE_INDEX(206), \
jwinder-ca5665d382022-07-21 10:35:30 -0600905 .attributeCount = 5, \
906 .clusterSize = 520, \
jwinder-ca3522f9a2022-06-09 23:38:48 -0600907 .mask = ZAP_CLUSTER_MASK(SERVER), \
908 .functions = NULL, \
jwinder-ca5665d382022-07-21 10:35:30 -0600909 .acceptedCommandList = ZAP_GENERATED_COMMANDS_INDEX( 57 ) ,\
jwinder-ca3522f9a2022-06-09 23:38:48 -0600910 .generatedCommandList = nullptr ,\
911 },\
912 { \
913 /* Endpoint: 2, Cluster: On/Off (server) */ \
914 .clusterId = 0x00000006, \
jwinder-ca5665d382022-07-21 10:35:30 -0600915 .attributes = ZAP_ATTRIBUTE_INDEX(211), \
jwinder-ca3522f9a2022-06-09 23:38:48 -0600916 .attributeCount = 3, \
917 .clusterSize = 7, \
918 .mask = ZAP_CLUSTER_MASK(SERVER) | ZAP_CLUSTER_MASK(INIT_FUNCTION), \
919 .functions = chipFuncArrayOnOffServer, \
jwinder-ca5665d382022-07-21 10:35:30 -0600920 .acceptedCommandList = ZAP_GENERATED_COMMANDS_INDEX( 59 ) ,\
jwinder-ca3522f9a2022-06-09 23:38:48 -0600921 .generatedCommandList = nullptr ,\
922 },\
923 { \
924 /* Endpoint: 2, Cluster: Level Control (server) */ \
925 .clusterId = 0x00000008, \
jwinder-ca5665d382022-07-21 10:35:30 -0600926 .attributes = ZAP_ATTRIBUTE_INDEX(214), \
jwinder-ca3522f9a2022-06-09 23:38:48 -0600927 .attributeCount = 16, \
928 .clusterSize = 27, \
929 .mask = ZAP_CLUSTER_MASK(SERVER) | ZAP_CLUSTER_MASK(INIT_FUNCTION), \
930 .functions = chipFuncArrayLevelControlServer, \
jwinder-ca5665d382022-07-21 10:35:30 -0600931 .acceptedCommandList = ZAP_GENERATED_COMMANDS_INDEX( 63 ) ,\
jwinder-ca3522f9a2022-06-09 23:38:48 -0600932 .generatedCommandList = nullptr ,\
933 },\
934 { \
935 /* Endpoint: 2, Cluster: Descriptor (server) */ \
936 .clusterId = 0x0000001D, \
jwinder-ca5665d382022-07-21 10:35:30 -0600937 .attributes = ZAP_ATTRIBUTE_INDEX(230), \
tehampson2db812e2022-05-23 15:24:29 -0400938 .attributeCount = 6, \
939 .clusterSize = 4, \
Song GUO15ef4742022-02-02 13:03:41 +0800940 .mask = ZAP_CLUSTER_MASK(SERVER), \
941 .functions = NULL, \
Boris Zbarsky821ca4a2022-03-21 09:05:12 -0400942 .acceptedCommandList = nullptr ,\
943 .generatedCommandList = nullptr ,\
Song GUO15ef4742022-02-02 13:03:41 +0800944 },\
945 { \
jwinder-ca3522f9a2022-06-09 23:38:48 -0600946 /* Endpoint: 2, Cluster: Switch (server) */ \
Song GUO15ef4742022-02-02 13:03:41 +0800947 .clusterId = 0x0000003B, \
jwinder-ca5665d382022-07-21 10:35:30 -0600948 .attributes = ZAP_ATTRIBUTE_INDEX(236), \
Song GUO15ef4742022-02-02 13:03:41 +0800949 .attributeCount = 5, \
950 .clusterSize = 9, \
951 .mask = ZAP_CLUSTER_MASK(SERVER), \
952 .functions = NULL, \
Boris Zbarsky821ca4a2022-03-21 09:05:12 -0400953 .acceptedCommandList = nullptr ,\
954 .generatedCommandList = nullptr ,\
Song GUO15ef4742022-02-02 13:03:41 +0800955 },\
jwinder-caaca43812022-07-29 11:01:06 -0600956 { \
957 /* Endpoint: 2, Cluster: Temperature Measurement (server) */ \
958 .clusterId = 0x00000402, \
959 .attributes = ZAP_ATTRIBUTE_INDEX(241), \
960 .attributeCount = 5, \
961 .clusterSize = 0, \
962 .mask = ZAP_CLUSTER_MASK(SERVER), \
963 .functions = NULL, \
964 .acceptedCommandList = nullptr ,\
965 .generatedCommandList = nullptr ,\
966 },\
Song GUO15ef4742022-02-02 13:03:41 +0800967}
968
969// clang-format on
Arun Bharadwaj5dcbd402021-01-25 15:39:27 -0800970
Boris Zbarsky90cf66a2022-01-28 16:14:30 -0500971#define ZAP_CLUSTER_INDEX(index) (&generatedClusters[index])
Arun Bharadwaj5dcbd402021-01-25 15:39:27 -0800972
jwinder-caaca43812022-07-29 11:01:06 -0600973#define ZAP_FIXED_ENDPOINT_DATA_VERSION_COUNT 26
Boris Zbarsky019ff592022-01-28 23:42:42 -0500974
Arun Bharadwaj5dcbd402021-01-25 15:39:27 -0800975// This is an array of EmberAfEndpointType structures.
976#define GENERATED_ENDPOINT_TYPES \
977 { \
jwinder-caaca43812022-07-29 11:01:06 -0600978 { 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 -0800979 }
980
981// Largest attribute size is needed for various buffers
jwinder-ca5665d382022-07-21 10:35:30 -0600982#define ATTRIBUTE_LARGEST (515)
Boris Zbarskye94c9a92022-02-05 02:49:57 -0500983
984static_assert(ATTRIBUTE_LARGEST <= CHIP_CONFIG_MAX_ATTRIBUTE_STORE_ELEMENT_SIZE, "ATTRIBUTE_LARGEST larger than expected");
Arun Bharadwaj5dcbd402021-01-25 15:39:27 -0800985
986// Total size of singleton attributes
Boris Zbarskye3c52442022-04-25 15:45:58 -0400987#define ATTRIBUTE_SINGLETONS_SIZE (37)
Arun Bharadwaj5dcbd402021-01-25 15:39:27 -0800988
989// Total size of attribute storage
jwinder-ca5665d382022-07-21 10:35:30 -0600990#define ATTRIBUTE_MAX_SIZE (812)
Arun Bharadwaj5dcbd402021-01-25 15:39:27 -0800991
992// Number of fixed endpoints
jwinder-ca3522f9a2022-06-09 23:38:48 -0600993#define FIXED_ENDPOINT_COUNT (3)
Arun Bharadwaj5dcbd402021-01-25 15:39:27 -0800994
995// Array of endpoints that are supported, the data inside
996// the array is the endpoint number.
997#define FIXED_ENDPOINT_ARRAY \
998 { \
jwinder-ca3522f9a2022-06-09 23:38:48 -0600999 0x0000, 0x0001, 0x0002 \
Arun Bharadwaj5dcbd402021-01-25 15:39:27 -08001000 }
1001
1002// Array of profile ids
1003#define FIXED_PROFILE_IDS \
1004 { \
jwinder-ca3522f9a2022-06-09 23:38:48 -06001005 0x0103, 0x0103, 0x0103 \
Arun Bharadwaj5dcbd402021-01-25 15:39:27 -08001006 }
1007
Jerry Johns40b08b92022-04-06 18:31:35 -07001008// Array of device types
1009#define FIXED_DEVICE_TYPES \
Arun Bharadwaj5dcbd402021-01-25 15:39:27 -08001010 { \
jwinder-ca3522f9a2022-06-09 23:38:48 -06001011 { 0x0016, 1 }, { 0x000E, 1 }, { 0x0101, 1 } \
Arun Bharadwaj5dcbd402021-01-25 15:39:27 -08001012 }
1013
Jerry Johns40b08b92022-04-06 18:31:35 -07001014// Array of device type offsets
1015#define FIXED_DEVICE_TYPE_OFFSETS \
1016 { \
jwinder-ca3522f9a2022-06-09 23:38:48 -06001017 0, 1, 2 \
Jerry Johns40b08b92022-04-06 18:31:35 -07001018 }
1019
1020// Array of device type lengths
1021#define FIXED_DEVICE_TYPE_LENGTHS \
Arun Bharadwaj5dcbd402021-01-25 15:39:27 -08001022 { \
jwinder-ca3522f9a2022-06-09 23:38:48 -06001023 1, 1, 1 \
Arun Bharadwaj5dcbd402021-01-25 15:39:27 -08001024 }
1025
1026// Array of endpoint types supported on each endpoint
1027#define FIXED_ENDPOINT_TYPES \
1028 { \
jwinder-ca3522f9a2022-06-09 23:38:48 -06001029 0, 1, 2 \
Arun Bharadwaj5dcbd402021-01-25 15:39:27 -08001030 }
1031
1032// Array of networks supported on each endpoint
1033#define FIXED_NETWORKS \
1034 { \
jwinder-ca3522f9a2022-06-09 23:38:48 -06001035 0, 0, 0 \
Arun Bharadwaj5dcbd402021-01-25 15:39:27 -08001036 }