Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

WIP: Command processing #1581

Closed
wants to merge 74 commits into from
Closed

Conversation

kedars
Copy link
Contributor

@kedars kedars commented Jul 13, 2020

Problem

Is relevant only after #1468 has been merged

Summary of Changes

Add command processing functions to the Cluster

kedars and others added 30 commits July 10, 2020 23:09
This saves us from having to decide when to free it
For now use CHIP_ERROR_INTERNAL for all errors
* move from arrays to deque, no new or delete (yay!)
* move GetValue() to be a member function of clusterserver
* EndPoint -> Endpoint (endpoint is one word)
Since the 'constructor' was in another object file, and the linker had
no pending references from TestDriver.cpp, it wasn't including the
constructor as a constructor. Added an explicit register call instead.
mspang and others added 23 commits July 21, 2020 14:31
…p#1582)

The standalone project configs now apply unless specifically overriden,
which matches configure's behavior. Previously the project configs were
disabled by default, so the defaults inline in CHIPConfig.h applied.

Note there are at 3 sources of defaults here which lead to this
confusion:

(1) The defaults used by scripts/build/bootstrap.sh, which calls
    configure with very few arguments. This uses the standalone
    project configs and builds tests.

(2) The defaults used by config/standalone/standalone-chip.mk, which
    calls configure and overrides a few arguments. This uses the
    standalone project configs, but disables some components, and
    does not build tests.

(3) The defaults specified directly in CHIPConfig.h et al. These
    defaults may have no effect because configure always overrides
    them using BuildConfig.h. GN currently doesn't use BuildConfig.h,
    but uses the command line to get the same result.
This commit adds support to build with internal OpenThread on the Nordic
platform.
…1574)

* [shell] Add device layer commands: start, get, config.

* [shell] add shell to default build.

* [shell] Strip out unneeded gni file.

* [shell] Simplified helpers for getting config fields.

* [shell] PR comment resolution.

* [shell] PR comment resolution. Add TODO(project-chip#1586) to stack large bufs.

* [shell] Fix project-chip#1586.

* [shell] add Manufacturer Device config.

* [shell] Delete unused linux config header.
…roject-chip#1587)

We shouldn't use recursive mutexes for synchronization as they greatly
complicate analysis and maintenance.
* [shell] Add handling of escape and tabs.

* [shell] Add unit tests for new escape handling.

* [shell] Fix typo in tests.  Posted project-chip#1605.
…project-chip#1557)

* [linux] Add GDBus support in PlatformMgr to drive DBUS communication.
* Add GDBus support in PlatformMgr to drive DBUS: Thread, BLE, WiFi.
* Add dedicated I/O thread for DBUS.

* Define build flag CHIP_WITH_GIO based on if gio-2.0 lib is available
…ASH (project-chip#1564)

* SHA256 class for CHIP is merged. Replace legacy SHA256 with chip::Crypto::Hash_SHA256_stream
* EFR32 fix lock app build

* Revert changes to BUILD.gn

- Since the EFR32 platform doesn't support GN build as for now, revert
  those changes
Via scripts/helpers/pull_submodules.sh

Updates:
    git -C examples/common/m5stack-tft/repo log 42cadf2..42cadf2
    git -C third_party/openthread/repo log 4806fa4d0..c6d5c4aae
    git -C third_party/ot-br-posix/repo log 77a9156..250c6d6
    git -C third_party/pigweed/repo log 023f35b..ce87bc0
* Adapt System layer to Zephyr socket API

The System layer was based on the assumption that when
BSD socket API is available then other POSIX functions
can be used as well. Unfortunately, this is not the case
in Zephyr which only implements a subset of POSIX
requirements.

Replace usage of pipe() system call with an equivalent
usage of socketpair(). Update KConfig of the door-lock
example for nrfconnect platform to set up networking
properly.

This only makes sure that libSystemLayer.a builds correctly
when NCS and the socket-based Inet layer is used. However,
the Inet layer itself still has some build issues which
need to be resolved.

* Use eventfd for system event

* Adapt to GN build system and add unit tests

Co-authored-by: Rafał Kuźnia <[email protected]>
…oject-chip#1640)

* Align CHIP error constant name in consistent naming convention
* Add CHIP error constants for persistent file access
This is to validate its use in both client as well as server. The
'command' should allow for (a) letting clusters their custom
attributes from the command, and (b) sending out responses to certain
commands.
The easiest way for trying out sending out responses is to use it in
the client (which this commit does).

Next up, let's try to create a application-specific (mfg-specific)
Cluster that implements 'echo'. That should exercise all the typical
expectations from the 'Command'.

TODOs:
- Temporarily kept the ZCLCommand.h in lib/datamodel/ directory
@kedars kedars force-pushed the command_processing branch from 873c190 to 58dafee Compare July 21, 2020 09:03
@kedars kedars force-pushed the command_processing branch from 58dafee to 0223a36 Compare July 21, 2020 09:07
@kedars
Copy link
Contributor Author

kedars commented Jul 27, 2020

Based on the discussions in the chat channels, closing this for now, until we address the concerns listed there through a proposal first

@kedars kedars closed this Jul 27, 2020
rcasallas-silabs pushed a commit to rcasallas-silabs/connectedhomeip that referenced this pull request Jun 20, 2024
…h for test based of matter silabs

Merge in WMN_TOOLS/matter from utf_branch_silabs to silabs

Squashed commit of the following:

commit f85e32976769b9b4936b3eca329030cb185d571b
Author: Junior Martinez <[email protected]>
Date:   Tue Feb 20 15:58:12 2024 -0500

    utf test has to pull the silabs branch for test based of matter silabs
chirag-silabs pushed a commit to rosahay-silabs/connectedhomeip that referenced this pull request Jul 15, 2024
…h for test based of matter silabs

Merge in WMN_TOOLS/matter from utf_branch_silabs to silabs

Squashed commit of the following:

commit f85e32976769b9b4936b3eca329030cb185d571b
Author: Junior Martinez <[email protected]>
Date:   Tue Feb 20 15:58:12 2024 -0500

    utf test has to pull the silabs branch for test based of matter silabs
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.