Skip to content

Commit

Permalink
[Silabs] zap configuration changes to support groups on thermostat app (
Browse files Browse the repository at this point in the history
#24001)

* thermostat groups support zap changes

* Restyled by whitespace

* Restyled by clang-format

* update thermostat.matter file

* update thermostat.matter file

* updating zap_generated files

Co-authored-by: Restyled.io <commits@restyled.io>
  • Loading branch information
2 people authored and pull[bot] committed Jul 14, 2023
1 parent 118a57c commit 2495408
Show file tree
Hide file tree
Showing 5 changed files with 249 additions and 27 deletions.
44 changes: 44 additions & 0 deletions examples/thermostat/thermostat-common/thermostat.matter
Original file line number Diff line number Diff line change
Expand Up @@ -1327,10 +1327,52 @@ server cluster GroupKeyManagement = 63 {
fabric_idx fabricIndex = 254;
}

struct GroupKeySetStruct {
int16u groupKeySetID = 0;
GroupKeySecurityPolicy groupKeySecurityPolicy = 1;
nullable octet_string<16> epochKey0 = 2;
nullable epoch_us epochStartTime0 = 3;
nullable octet_string<16> epochKey1 = 4;
nullable epoch_us epochStartTime1 = 5;
nullable octet_string<16> epochKey2 = 6;
nullable epoch_us epochStartTime2 = 7;
}

attribute access(write: manage) GroupKeyMapStruct groupKeyMap[] = 0;
readonly attribute GroupInfoMapStruct groupTable[] = 1;
readonly attribute int16u maxGroupsPerFabric = 2;
readonly attribute int16u maxGroupKeysPerFabric = 3;
readonly attribute bitmap32 featureMap = 65532;
readonly attribute int16u clusterRevision = 65533;

request struct KeySetWriteRequest {
GroupKeySetStruct groupKeySet = 0;
}

request struct KeySetReadRequest {
INT16U groupKeySetID = 0;
}

request struct KeySetRemoveRequest {
INT16U groupKeySetID = 0;
}

request struct KeySetReadAllIndicesRequest {
INT16U groupKeySetIDs[] = 0;
}

response struct KeySetReadResponse = 2 {
GroupKeySetStruct groupKeySet = 0;
}

response struct KeySetReadAllIndicesResponse = 5 {
INT16U groupKeySetIDs[] = 0;
}

fabric command access(invoke: administer) KeySetWrite(KeySetWriteRequest): DefaultSuccess = 0;
fabric command access(invoke: administer) KeySetRead(KeySetReadRequest): KeySetReadResponse = 1;
fabric command access(invoke: administer) KeySetRemove(KeySetRemoveRequest): DefaultSuccess = 3;
fabric command access(invoke: administer) KeySetReadAllIndices(KeySetReadAllIndicesRequest): KeySetReadAllIndicesResponse = 4;
}

server cluster FixedLabel = 64 {
Expand Down Expand Up @@ -1710,6 +1752,8 @@ endpoint 0 {
server cluster GroupKeyManagement {
callback attribute groupKeyMap;
callback attribute groupTable;
callback attribute maxGroupsPerFabric;
callback attribute maxGroupKeysPerFabric;
ram attribute featureMap;
ram attribute clusterRevision default = 1;
}
Expand Down
84 changes: 84 additions & 0 deletions examples/thermostat/thermostat-common/thermostat.zap
Original file line number Diff line number Diff line change
Expand Up @@ -5015,6 +5015,40 @@
"define": "GROUP_KEY_MANAGEMENT_CLUSTER",
"side": "client",
"enabled": 0,
"commands": [
{
"name": "KeySetWrite",
"code": 0,
"mfgCode": null,
"source": "client",
"incoming": 1,
"outgoing": 0
},
{
"name": "KeySetRead",
"code": 1,
"mfgCode": null,
"source": "client",
"incoming": 1,
"outgoing": 0
},
{
"name": "KeySetRemove",
"code": 3,
"mfgCode": null,
"source": "client",
"incoming": 1,
"outgoing": 0
},
{
"name": "KeySetReadAllIndices",
"code": 4,
"mfgCode": null,
"source": "client",
"incoming": 1,
"outgoing": 0
}
],
"attributes": [
{
"name": "ClusterRevision",
Expand All @@ -5041,6 +5075,24 @@
"define": "GROUP_KEY_MANAGEMENT_CLUSTER",
"side": "server",
"enabled": 1,
"commands": [
{
"name": "KeySetReadResponse",
"code": 2,
"mfgCode": null,
"source": "server",
"incoming": 0,
"outgoing": 1
},
{
"name": "KeySetReadAllIndicesResponse",
"code": 5,
"mfgCode": null,
"source": "server",
"incoming": 0,
"outgoing": 1
}
],
"attributes": [
{
"name": "GroupKeyMap",
Expand Down Expand Up @@ -5074,6 +5126,38 @@
"maxInterval": 65344,
"reportableChange": 0
},
{
"name": "MaxGroupsPerFabric",
"code": 2,
"mfgCode": null,
"side": "server",
"type": "int16u",
"included": 1,
"storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "",
"reportable": 1,
"minInterval": 1,
"maxInterval": 65534,
"reportableChange": 0
},
{
"name": "MaxGroupKeysPerFabric",
"code": 3,
"mfgCode": null,
"side": "server",
"type": "int16u",
"included": 1,
"storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "",
"reportable": 1,
"minInterval": 1,
"maxInterval": 65534,
"reportableChange": 0
},
{
"name": "FeatureMap",
"code": 65532,
Expand Down
67 changes: 67 additions & 0 deletions zzz_generated/thermostat/zap-generated/IMClusterCommandHandler.cpp

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

12 changes: 12 additions & 0 deletions zzz_generated/thermostat/zap-generated/access.h

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading

0 comments on commit 2495408

Please sign in to comment.