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

[pull] master from project-chip:master #590

Merged
merged 117 commits into from
Aug 15, 2024

Conversation

pull[bot]
Copy link

@pull pull bot commented Aug 8, 2024

See Commits and Changes for more details.


Created by pull[bot]

Can you help keep this open source service alive? 💖 Please sponsor : )

wqx6 and others added 30 commits August 7, 2024 14:06
…check (#34768)

* TBRM: Add missing PendingDatasetTimestamp attribute and CASE session check

* review change

* zap regenerate and update the Test_TC_TBRM_2_1.yaml

* Restyled by clang-format

* Read function error map to IM-space error

* Add attribute report for PendingDatasetTimestamp

* review changes

---------

Co-authored-by: Restyled.io <commits@restyled.io>
* Updated the golabl data type's XMLs, removing the cluster entries.

* Zap generated after XML update.

* Fixed namespaces used of global structs.

* Restyled by clang-format

* Renamed LocationInfoStruct to AreaInfoStruct.

* Zap generated after XML update.

* Renamed LocationStruct to AreaStruct and its LocationID and LocationDesc fields.

* Zap generated after XML update.

* Updated SDK and example code to match the new naming.

* Updated the ProgressStruct's LocationID name to AreaID.

* Zap generated after XML update.

* Updated the SDK code following name changes.

* Updated the SelectLocationsStatus and SkipLocationStatus enum names and some of their enums.

* Zap generated after XML update.

* Updated the SelectLocationsStatus and SkipCurrentLocationStatus names and their enum names.

* Updated the names of the SupportedLocations, SelectedLocations and CurrentLocation attributes.

* Zap generated after XML update.

* Updated the changed names in the SDK.

* Updated the service area command names in XML.

* Zap generated after XML update.

* Updated the service area command names in the SDK.

* Updated the rvc-example zap file.

* Refactored LocationStructureWrapper to AreaStructureWrapper.

* Restyled by clang-format

* Regenerated zap files due to changes upsteram.

* Removed unused generated file.

* Updated the Service Area XML marking previously nullabel attributes as not-nullable.

* Zap generated after XML update.

* Updated the attribute encoding and some server logic following the romoval of the nullable quality for some attributes.

* Explicitly set the Service Area version.

* Zap generated after XML update.

* Updated the service area features in the XML to match the current spec.

* Zap generated after XML update.

* Updated the SupportedArea validation logic as if the MAPS feature is not supported, the Delegate may choose not to implement map related methods.

* Change the type of the MapID to uint32 to match the spec.

* Added the SkippedArea arg to the SkipArea command.

* Zap generated after XML update.

* Updated the Service Area server code to handle the new SkippedArea command arg.

* Updated the service area XML to match the current spec. This includes the addition of the LandmarkInfoStruct and updates of AreaInfoStruct, SelectAreasStatus.

* Zap generated after XML update.

* Updated SDK server code and rvc-example after changes to the XML.

* Restyled by whitespace

* added vector include.

* spacing changes form zap regen.

* Fixed minor mistake during merge.

* Restyled by clang-format

* Applied suggestions from review.

* Restyled by whitespace

* Updated the LondmarkInfoSturct PositionTag type.

* Zap generated after XML update.

* Fixed SDK following update to the position type.

* Restyled by clang-format

* Missed a submudule update.

---------

Co-authored-by: Restyled.io <commits@restyled.io>
Invalid PICS values for features F02 (SET) and F03 (DYPF) were used in test
…processor (#34822)

* Use provision storage manager singleton

* Restyled by clang-format

* rekick ci

---------

Co-authored-by: Restyled.io <commits@restyled.io>
)

* tv-casting-app fixed memory issues around stopDiscovery function

* Fixing style issues

* Addressed comments by sharadb-amazon
…t scripts (#34853)

* Fix the script execution link to run test scripts

* Fixed the CI arguments design pattern for TC_EWATERHTR scripts

* Excluded the scripts still under fixes

* Removed TC_SEAR tests which were still undecided on the CI arguments

* Removed TC_OCC_3_1 and TC_OCC_3_2 since there are CI issues to be followed up for the test cases below that implements manually controlling sensor device for the occupancy state ON/OFF change
…luster in FabricBridge example (#34851)

* Add extra attributes to the bridged device basic info structures, remove nonsense comments

* Make use of AAI for BridgedDeviceBasicInformation cluster

* Restyled by gn

* Fix sizes for software version

* Update the synchronized device proto to have more data in it

* Switch to unique ptr in the registry, making sure memory management works (fixed memory leak on remove device)

* Use more std::optional

* Bump revision to 4

* Forward attributes from the create call into the bridged device

* Make attribute mapping actually work

* Restyle

* Ensure unique IDs are generated

* Restyle

* Increase size to 33 to allow for a null terminator

* make sure that the rpc structures are initialized

* Restyle

* Add some fake data to test moving the data around

* Remove unused members that were likely just copied over

* make the attributes optional

* Restyled by clang-format

* Fix string size for HW and software versions

---------

Co-authored-by: Restyled.io <commits@restyled.io>
* Update ICDM 4.1 Test script

* Restyled by whitespace

* Restyled by prettier-json

* Restyled by prettier-yaml

* Add a slight tolerance to avoid false negatives

---------

Co-authored-by: Restyled.io <commits@restyled.io>
…s. (#34840)

The min version check does not match the tag, because the tag is wrong: it's not
the actual date of the changeset it tagged.
Credential indices are per-type, so we should be checking both when locating the
credential to be modified.

Fixes #34816
* remove obsolete configurations

* Restyled by gn

---------

Co-authored-by: Restyled.io <commits@restyled.io>
…ter updates for Matter 1.4 (#34658)

* [occupancy-sensing]Follow up improvements for Occupancy Sensing Cluster updates for Matter 1.4
* Apply follow-up suggestions from review PR#34293
* Make HoldTime attribute writable
* Fix array index mapping issue reported from PR#34593 in occupancy-sensing-stub.cpp

Signed-off-by: Oliver Fan <oliver.fan@nxp.com>

* Regen ZAP after adding FeatureMap and HoldTime to zcl.json and zcl-with-test-extensions.json file for Occupancy Sensing cluster

Signed-off-by: Oliver Fan <oliver.fan@nxp.com>

* Restyled by clang-format

* Restyled by prettier-json

* Restyled by clang-format

* Add an error print in occupancy-sensing-stub.cpp

Signed-off-by: Oliver Fan <oliver.fan@nxp.com>

* Update all-clusters-app.zap for HoldTime and FeatureMap attributes of Occupancy Sensing cluster

Signed-off-by: Oliver Fan <oliver.fan@nxp.com>

* Resolve merge conflict in endpoint_config.h

Signed-off-by: Oliver Fan <oliver.fan@nxp.com>

---------

Signed-off-by: Oliver Fan <oliver.fan@nxp.com>
Co-authored-by: Restyled.io <commits@restyled.io>
* TC-CCTRL-2.2: Fix user params

* Restyled by isort

---------

Co-authored-by: Restyled.io <commits@restyled.io>
* Add data model XML files to chip-cert-bins

* Add RVC app to chip-cert-bins image

---------

Co-authored-by: Andrei Litvin <andy314@gmail.com>
…consistent as objects with singletons (#34462)

* Switch CHI registry to an object

* Switch CHI registry to an object

* Prepare the AAI registry to use an object

* Replace unregister

* Replace the register

* Update the getter

* Restyle

* Fix unregister

* Fix typo

* Fix namespacing for instance

* Do not make IME auto-clear command handlers

* Make spellcheck happy

* Remove chip::app prefix throughout

* Fix compile error

* One more compile fix

* One more compile fix

* make tv-app compile

* Update examples/all-clusters-app/all-clusters-common/src/bridged-actions-stub.cpp

Co-authored-by: Boris Zbarsky <bzbarsky@apple.com>

* Update examples/tv-app/android/java/AppImpl.cpp

Co-authored-by: Boris Zbarsky <bzbarsky@apple.com>

* Update register/unregister names

* Fix endpoint id usage that was awkward in aai

* Restyle

* Code simplification and some namespace removal

* Fix comment

* re-order of methods

* One more move to preserve previous order

* Restyle

* Add back the odd clear

* Add missing invalidation of AAI cache

* Fix compile

* one more compile fix

* more compile fixes

---------

Co-authored-by: Andrei Litvin <andreilitvin@google.com>
Co-authored-by: Boris Zbarsky <bzbarsky@apple.com>
* Add install things

* Update the code

* Restyled by whitespace

* Restyled by google-java-format

* Restyled by clang-format

* Restyled by gn

* Revert the unecessary changes

* Remove uncessary files

* Update comment

* Restyled by google-java-format

* Fix get catalog list

* Added option to log the content apps

* Restyled by google-java-format

* Restyled by clang-format

---------

Co-authored-by: Restyled.io <commits@restyled.io>
* Chef disable AutoRelockTimer and fix compilation

* Avoid printing out floating values
* Yaml Test Runner: Add support for Python constraints

* Restyle / appease the linter

* Add to schema documentation
* Keep MTRDeviceController.h

* Copy MTRDeviceController.h into MTRDeviceController_Concrete.h

* Set back MTRDeviceController.h file

* Keep MTRDeviceController.mm

* Copy MTRDeviceController.mm into MTRDeviceController_Concrete.mm

* Set back MTRDeviceController.mm file
* python: Add direct attribute paths to Read

Supports one particular use case: read one or all endpoints,
all clusters, specific (global) attribute. See spec 8.9.2.4. This
is an allowed wildcard construct that is not currently expressable
in the API.

Test: Used on wildcard read for matter_testing_support. This is
      therefore tested on any test using that decorator - switch
      and timesync.

* Restyled by isort

---------

Co-authored-by: Restyled.io <commits@restyled.io>
* Migrating to a working stale

* Adding permissions
* apply changes from PR #34797 to to concrete class

* Improve description for MTRDevice.

Includes various information that wasn't included before but probably should be.

* Address review comments.

---------

Co-authored-by: Kiel Oleson <kielo@apple.com>
@github-actions github-actions bot added the tools label Aug 13, 2024
andrei-menzopol and others added 2 commits August 13, 2024 18:49
* iostream adds a lot of unnecessary functions when lock-app
   is compiled for non-linux platforms, increasing ram and
   flash consumption.
 * linux lock-app compiles without it

Signed-off-by: Andrei Menzopol <andrei.menzopol@nxp.com>
woody-apple and others added 24 commits August 13, 2024 11:58
* [NXP][docker image] Add new common NXP docker image for next SDK version

Signed-off-by: Martin Girardot <martin.girardot@nxp.com>

* [NXP][docker image] remove k32w1 SDK clone as it will use common NXP SDK

Signed-off-by: Martin Girardot <martin.girardot@nxp.com>

---------

Signed-off-by: Martin Girardot <martin.girardot@nxp.com>
Co-authored-by: Andrei Litvin <andreilitvin@google.com>
)

* [Fabric-Admin] Fix 'fabricsync sync-device' command always fails

* Use default random salt

* Update examples/fabric-admin/commands/pairing/OpenCommissioningWindowCommand.h

Co-authored-by: Abdul Samad <abdul.samad@smartthings.com>

* Address review comments

---------

Co-authored-by: Abdul Samad <abdul.samad@smartthings.com>
This was a left-over attribute id before a spec change where attributes got removed. After that the attribute id 82dec is SetpointHoldExpiryTimestamp which has nothing to do with Presets
…generated java and kotlin code (#34949)

* changing matter_idl functions

* changing yaml runner functions

* removing stringcase from config and requirement files

* restyle

* improve string handling

* fixing generated java and kotlin code

* regenerate idl golden image for test_generators.py

* adding unit test

* restyle

* adding unit test to build.GN
* Update tizen to 8.0

* Install platform certificate

* Reverse restyle diff

* Review fix - version update

* Add information about used 7.0 tizen package

---------

Co-authored-by: Arkadiusz Bokowy <a.bokowy@samsung.com>
…e class on teardown (#34955)

* Do not use uninitialized bits in teardown

* Extra guard for file remove

* Fix a few more instances of app_process

---------

Co-authored-by: Andrei Litvin <andreilitvin@google.com>
…34928)

* Auto-import all clusters into the chip.clusters namespace

* Fix __all__ lists

* ZAP-generate __all__ with all clusters
…control cluster (#34982)

* Add constraint enforcement on responseTimeoutSeconds

This adds constraints in the implementation and also fixes
up error codes in CCTRL_2_2 test.

* Fix comment
* Update zap.version

* Update zap.json

* Bump min ZAP version

* Regen ZAP files after update

* Restore extra newline
…34894)

---------

Co-authored-by: Restyled.io <commits@restyled.io>
Co-authored-by: yunhanw <yunhanw@google.com>
* Create a separte source_set for the provision storage implementation

* Fix efr32 build using provision flash storage

* fix argument duplication which is not needed.

* apply suggested renames
* [Telink] Update Docker image (Zephyr update)

* [Telink] Update Docker image (Zephyr update)

---------

Co-authored-by: Andrei Litvin <andy314@gmail.com>
…34120)

* [DRLK] Bugfix: return INVALID_COMMAND when attempting to add/modify
credential from a different fabric than the User/Credential's creator fabric

Add YAML test steps to verify correct behavior

Fixes #34119

* Restyled by prettier-yaml

* Update src/app/tests/suites/DL_UsersAndCredentials.yaml

Co-authored-by: Andrei Litvin <andy314@gmail.com>

---------

Co-authored-by: Restyled.io <commits@restyled.io>
Co-authored-by: Andrei Litvin <andy314@gmail.com>
* [NXP][platform][common] Update pw RPC flag in streamer_nxp

Signed-off-by: marius-alex-tache <marius.tache@nxp.com>
(cherry picked from commit 4ae033a1bddd5d914e862791c111eebca41a62e8)

* [NXP][examples][common] Fix binding issue due to generated Zap flag renaming

Signed-off-by: Martin Girardot <martin.girardot@nxp.com>
(cherry picked from commit b50b382478138ad02103e55194b0145b1e61e841)

* [NXP][examples][common] make-pretty update

(cherry picked from commit efc51cc65471f4f5f667947ef18a4656e1d29578)

* [NXP][examples][common] Fix contact-sensor-app always returning empty diagnostic logs

The LogProvider class method GetSizeForIntent() was always returning
zero as log size due to an incorrect evaluation of the result of the
SyncGetValue() call.

GetSizeForIntent() is evaluating the size of the diagnostic log by
trying to read the key using a zero length buffer. This action will
return the size of the key in storage, but it will also yield a
CHIP_ERROR_BUFFER_TOO_SMALL error code. GetSizeForIntent() however
was not expecting this error code and it was returning zero in all
situations when the status returned by SyncGetValue() was anything
else but CHIP_NO_ERROR.

The function was updated to take into account that, under these
circumstances, the SyncGetValue() function always returns
CHIP_ERROR_BUFFER_TOO_SMALL.

Signed-off-by: Marian Chereji <marian.chereji@nxp.com>
Reviewed-by: Doru-Cristian Gucea <doru-cristian.gucea@nxp.com>
(cherry picked from commit dd3b3b784318f73cf6f0390f79d1fdf0160169d3)

* [NXP][examples][common] Call init using the base class reference

Signed-off-by: marius-alex-tache <marius.tache@nxp.com>
(cherry picked from commit b7a0a0a4d88bd5d03b70f36b34c2475b614bd296)

* [NXP][examples][common] Update app task common code

New task base API:
- PostEventsProcessedAction - this will be called in the main loop,
after all events have been processed. An example of concrete action
is to animate some LEDs.
- PrintOnboardingInfo - the default implementation remains the same.
It can be overwritten by the concrete application task class.
- AppMatter_DisallowDeviceToSleep/AppMatter_AllowDeviceToSleep -
An application that uses low power mode should overwrite the API to
implement the allow/disallow entering low power mechanism.
Before taking the OT mutex, the device is disallowed to enter low power.
The device is allowed to enter low power after the OT mutex is released.

Other changes:
- The app event queue handle should be static such that the concrete
application task can initialize it during Start() call.
- The ticksToWait passed to xQueueReceived is used to specify
the maximum amount of time the task should block waiting for an event.
This can be modified according to the application needs, e.g. is needed
by an application that has LED animation.
- PostEvent should take into account ISR context when populating the event queue.
- PostEvent becomes a static method.
- Thread device type is specified by the following flag: CONFIG_THREAD_DEVICE_TYPE
This is set by default to kThreadDeviceType_Router.

Signed-off-by: marius-alex-tache <marius.tache@nxp.com>
(cherry picked from commit d88e78ea6c973eb736915110bb227ad3515eec98)

* [NXP][examples][common] Add additional common components

- Add led widget component
- Add diagnostic logs component - chip::NXP::App::DiagnosticLogsDemo::DisplayUsage
should be implemeneted to showcase how the diagnostic logs provider should be used.
- Add low power component - chip::NXP::App::LowPower::Init should be implemented
according to the application needs. A default example is implemented, which registers
an empty enter/exit low power callback.
- Add operational keystore component - the API contains two functions:
	- GetInstance - should return the address of a concrete operational keystore class
	- Init - can be used to register a persistent storage delegate in case the concrete
	  class is using persistent storage (which will be our case)
- Add user interface feedback component - this component defines an abstract interface
that can be implemented by applications in order to provide some kind of feedback to the user
in certain conditions: logging, LED animations, etc. Add example of lighting manager, which
uses LED animation for user feedback.
- Add clusters component - add an API for identify related callbacks. Add implementation for
common MatterPostAttributeChangeCallback, which delegates the work to the device manager component.
- Add RPC component - this is a simple Init API that can be used to initialize PW RPC related
components, such as UART.

Signed-off-by: marius-alex-tache <marius.tache@nxp.com>
(cherry picked from commit 46a1d3d673b9cae14d33c749e3741727449e6ff9)

* [NXP][examples][common] Add missing header in Identify

Signed-off-by: marius-alex-tache <marius.tache@nxp.com>
(cherry picked from commit 3abfee2c6eea327ae931a150733ac83639d157d5)

* [NXP][examples][common] Add multi-image OTA requestor initiator

Signed-off-by: marius-alex-tache <marius.tache@nxp.com>
(cherry picked from commit 5848e4d4e2d384c4bfe41714bd41e25c4b1ba1e8)

* [NXP][examples][common] Update pw RPC implementation

Update AppRpc API by adding two new methods used by the common
RPC implementation:
- ButtonHandler
- Reboot

Signed-off-by: marius-alex-tache <marius.tache@nxp.com>
(cherry picked from commit 5e40934145825c61444e43e479ed7ac5c26605a4)

* [NXP][examples][common] Small updates to common app code

- Add call to feedback manager init.
- Remove PostEventsProcessedAction. Call FeedbackMgr().DisplayInLoop()
directly in the main loop.
- Move PostEvent in AppTaskBase interface and make it virtual.
- Add demo of diagnostic logs usage.
- Update PrintOnboardingInfo to take into account user action requried
commissioning flow.
- Remove usage of deprecated sFunction from Lighting manager.
- Add LowPower::Init call.
- If FSL_OSA_TASK_ENABLE is used, then call AppTaskMain inside Start, instead
of creating the app task.
- Add PrintCurrentVersion API to print the software version string and software
version.
- Enclose DeviceInfoProviderImpl usage based on CONFIG_DEVICE_INFO_PROVIDER_IMPL
- Add diagnostic logs cluster init under the corresponding flag.

Signed-off-by: marius-alex-tache <marius.tache@nxp.com>
(cherry picked from commit 1619c92380275dc0466f9cf9dc9e818671406b06)

* [NXP][examples][common] Make Animate pure virtual

Signed-off-by: marius-alex-tache <marius.tache@nxp.com>
(cherry picked from commit eaf3789fc2d1e562fe030acc758e5f322b5f02d3)

* [NXP][examples][common] Add pw RPC init

RPC_TASK_STACK_SIZE and RPC_TASK_PRIORITY can now be defined
in the build system to override the default values.

Signed-off-by: marius-alex-tache <marius.tache@nxp.com>
(cherry picked from commit 7962d612b14502dc3f514c5c3d39891b086cfd63)

* [NXP][examples][common] Allow platforms to redefine the path to the FactoryDataProvider.h that needs to be included

Signed-off-by: Dina Benamar <dina.benamarelmaaroufi@nxp.com>
(cherry picked from commit 097cd999c4767572f8cc55fac18f93ac3cb5d50c)

* [NXP][examples][common] Add TestEventTriggerDelegate

 * TestEventTriggerDelegate is now used at Server Initialization
   to add the ICDManager instance as Handler

Signed-off-by: Andrei Menzopol <andrei.menzopol@nxp.com>
(cherry picked from commit edce1dc967130589e74cdd9c8289719171141178)

* [NXP][examples][common] Minor updates for some components

The KVS wear stats are stored in the user diagnostic log key hence only
initialize this key if the KVS wear stats are not enabled.

Signed-off-by: Marian Chereji <marian.chereji@nxp.com>

[nxp noup][examples][common] Remove UpdateState API

The interface can be simplified by calling RestoreState
instead of UpdateState when needed. This implies that the
caller must update the cluster attribute by itself.

Signed-off-by: marius-alex-tache <marius.tache@nxp.com>

[nxp noup][examples][common] Rename LightingManager to LedManager

Signed-off-by: marius-alex-tache <marius.tache@nxp.com>

* [NXP][examples][common] Add initial version of lighting app

- Copy lighting app sources to common folder
- Add device callbacks
- Use common OTA support
- Use common app factory data
- Use led widgets for lighting app
- Use common app task and button management
- Decouple lighting manager from app task
- Update LED status function
- Update lighting manager related flags
	Flags:
	- LIGHTING_MANAGER_ENABLE_DIMMABLE_LED to enable dimmable LED feature
	- LIGHTING_MANAGER_ENABLE_STATUS_LED to enable status LED usage
	These flags can be overwritten in AppConfig.h.
- Make lighting manager more configurable
- Create button manager
	The ButtonManager class should define the buttons callbacks and
	all callback delegates.

	Moved AppMatterButton_registerButtons implementation inside the
	button manager source file.
- Update lighting manager interface
- Replace lighting manager calls with feedback manager
	LightingManager now implements the UserFeedbackInterface abstract class and the
	dimmable feature was moved to a new class: LightingManagerDimmable.
- Move identify code in a separate file
- Remove deprecated #include statements from all files.
- Add commissioning complete state
	A boolean static member is added to AppTask. It is set when the
	kCommissioningComplete event is received. It should be used by
	other components if they need a way to check the state of the device.
- Add button action to switch to ICD active mode
- Add support for BooleanState in device callbacks
- Add diagnostic logs usage demo
- Enclose feedback manager calls in CONFIG_ENABLE_FEEDBACK flag
	This flag should be defined whenever the application must provide
	some kind of user interface feedback, such as LED animation.
	In case of low power, this flag will not be defined.
- Remove unused features (e.g. diagnostic logs)
- Overwrite event queue and ticks to wait
- Call PlatformMgrImpl API for PreInitMatterStack actions
- Replace PW_RPC_ENABLED with CONFIG_ENABLE_PW_RPC

Signed-off-by: marius-alex-tache <marius.tache@nxp.com>
(cherry picked from commit bed6655227d44900279cbd0ef547771da9143895)

* [NXP][examples][common] Add initial version of contact sensor

Signed-off-by: marius-alex-tache <marius.tache@nxp.com>
(cherry picked from commit 637580aa6c63048ae1a956807c284165c2af17ed)

* [NXP][openthread][k32w1] Update mbedtls target

Signed-off-by: marius-alex-tache <marius.tache@nxp.com>
(cherry picked from commit 3c84b1fd3987958bc0dcf49a283c281e48b400f8)

* [NXP][platform][k32w] OTA/FactoryData changes

 * Add FactoryDataDriver interface which handles factory data update
   functionality and factory data ram backup operations;
   must be implemented for each platform
 * Make FactoryDataProvider global instances
 * Move Restore mechanism and plain-text SignWithDacKey in
   common FactoryDataProvider
 * Adapt Validate and SearchForId to use factory data config
   which stores size, start, payload
 * Move OTAFactoryDataProcessor in common folder
 * Adapt to be generic and use FactoryDataDriver functions instead

Signed-off-by: Andrei Menzopol <andrei.menzopol@nxp.com>
(cherry picked from commit 3a81c2367013c2a2ed08ecbbeac89ce15943998e)

* [NXP][platform][k32w1] SDK 2.15 platform updates

 * remove RNG_SetPseudoRandomNoSeed call to accomodate new RNG API changes.
 * add SDK root, SDK release, and SDK 2.15 gn arguments. They will be used
   to differentiate between SDK versions (2.12 vs 2.15) and release
   status (repo vs packages).

Signed-off-by: Andrei Menzopol <andrei.menzopol@nxp.com>

[nxp noup][platform][k32w] Small fixes for k32w platform code

 * correct typos
 * remove executable access permissions
 * remove unused files
 * change openthread_root to ot-nxp/openthread-k32w1
 * use nxp_mbedtls gn target

Signed-off-by: Andrei Menzopol <andrei.menzopol@nxp.com>
(cherry picked from commit 1905c1cea645506f8a88e514c2eacecea81ac385)

* [NXP][platform][k32w1] Add "chip_key_storage" solution selector and littlefs support

Updated the K32W1 platform build files by adding the "chip_key_storage"
selector which will help developers select an implementation option
for the key storage between "littlefs" and "fwk_nvm".

Signed-off-by: Marian Chereji <marian.chereji@nxp.com>

[nxp noup][k32w1] Temporarily disable OpenThread settings save-on-idle when using LittleFS key storage

When using LittleFS key storage, the OpenThread settings save-on-idle
feature requires additional support in the application idle task,
which is not yet available. In order for the OT settings saving to
work at this stage and in this configuration, the save-on-idle
feature must be disabled until the required idle task support will be
implemented.

Signed-off-by: Marian Chereji <marian.chereji@nxp.com>

[nxp noup][platform][k32w1] Fix minimum data chunk size required when programming the flash memory

According to the specifications, the internal flash memory of the
K32W1 platform supports programming chunks of memory which are 128
bytes long (instead of 256).

Signed-off-by: Marian Chereji <marian.chereji@nxp.com>

[nxp noup][platform][k32w1] Increase LittleFS cache size to 1K to suppress frequent data synchronizations

A small cache size forces LittleFS to perform frequent data
synchronizations with the storage (flash memory) and this consumes a
number of data blocks which are not available in the K32W1 Matter
applications. To reduce the fast consumption of flash memory data
blocks, the LittleFS cache size was increased to 1KB.

Signed-off-by: Marian Chereji <marian.chereji@nxp.com>
(cherry picked from commit 753f7d7390661bd5dbd29cc9cfa7d3a4e4728ba2)

* [NXP][platform][k32w1] Add Zephyr NVS based key storage build option

Added a new build option (chip_key_storage="nvs") which allows the
developers to use the Zephyr NVS file system as a key storage
solution.

Signed-off-by: Marian Chereji <marian.chereji@nxp.com>
(cherry picked from commit 1d42e48d8f50f6e9999b49025ea3d71545e89a3d)

* [NXP][examples][k32w1] App updates

 * the sdk root was moved to platform args.
 * update readme files
 * Add CONNECTIVITY_MANAGER_THREAD_DEVICE_TYPE define.
 * Set define accordingly based on FTD/MTD configuration.
 * Solve issue when lighting-app is MTD but device type is set to
   Router because it was hardcoded.
 * Remove deprecated files
 * Move some headers in examples/platform for common usage

Signed-off-by: Andrei Menzopol <andrei.menzopol@nxp.com>
(cherry picked from commit c2b626df132e058ce674df0ee20965b3029c462d)

* [NXP][examples][k32w1] Update ZclCallbacks after transition to common code

Signed-off-by: marius-alex-tache <marius.tache@nxp.com>

* [NXP][k32w1] Remove k32w parent folder

Signed-off-by: marius-alex-tache <marius.tache@nxp.com>

* [NXP][platform][k32w1] Add FactoryDataDriver implementation

Signed-off-by: marius-alex-tache <marius.tache@nxp.com>

* [NXP][platform][k32w] Remove k32w/common

This folder was moved to nxp/common/legacy area.

Signed-off-by: marius-alex-tache <marius.tache@nxp.com>
(cherry picked from commit 755081c71bde287e2d065e5fd9b1a0922c3b341a)

* [NXP][scripts] Minor updates for NXP related scripts

Add HWParams APP FactoryData support

 * Add proper format for HWParameters app factory data section
 * Put changes under new argument

Signed-off-by: Andrei Menzopol <andrei.menzopol@nxp.com>

[nxp noup][scripts][common] Fix Crc16 attribute when using latest version

Signed-off-by: marius-alex-tache <marius.tache@nxp.com>

[nxp noup][scripts] Update structure k32w1 path

All k32w1 folders were moved under nxp, removing the k32w parent.

Signed-off-by: marius-alex-tache <marius.tache@nxp.com>

[nxp noup][scripts][ota] Update paths after k32w transition

Signed-off-by: marius-alex-tache <marius.tache@nxp.com>
(cherry picked from commit 4963ce98725b74e94f498f959d46edf4933fa56c)

* [NXP][platform][common] Add nxp_factory_data, nxp_ota gn targets

The application can use these targets to integrate the default, platform-specific
NXP factory data provider and OTA implementation. Each platform should define an
"nxp_factory_data" and "nxp_ota" source sets.

Usage:
deps += [ "${chip_root}/src/platform/nxp:nxp_factory_data" ]
deps += [ "${chip_root}/src/platform/nxp:nxp_ota" ]

Signed-off-by: marius-alex-tache <marius.tache@nxp.com>
(cherry picked from commit 4869c4a97134692fe87a59b9b69d33f836d9b2e9)

* [NXP][platform][common] Create NXPConfigNVS.cpp file, remove NXPConfig BLE dependencies

Signed-off-by: Martin Girardot <martin.girardot@nxp.com>
(cherry picked from commit 50e14e4a1b9f8561126310e19ebbaf72ca7bbdbe)

* [NXP] revert mcxw71 headers

Signed-off-by: marius-alex-tache <marius.tache@nxp.com>

* [NXP][k32w1] Add default logging target

Signed-off-by: marius-alex-tache <marius.tache@nxp.com>

* [NXP][k32w1] Update paths to reference nxp_matter_support

Signed-off-by: marius-alex-tache <marius.tache@nxp.com>

* [NXP] Bump nxp_matter_support

Signed-off-by: marius-alex-tache <marius.tache@nxp.com>

* Restyled by whitespace

* Restyled by clang-format

* Restyled by gn

* Restyled by prettier-markdown

* Restyled by autopep8

* Restyled by isort

* [NXP][k32w1] Fix gn import order

Signed-off-by: marius-alex-tache <marius.tache@nxp.com>

* [NXP][k32w1] Fix wrong README reference

Signed-off-by: marius-alex-tache <marius.tache@nxp.com>

* [NXP][k32w1] Update workflow docker image

Signed-off-by: marius-alex-tache <marius.tache@nxp.com>

* [NXP][rw61x] Adding nxp_ota and nxp_factory_data as they are now mandatory

Signed-off-by: Gatien Chapon <gatien.chapon@nxp.com>

* [NXP][platform][common] Fix build warning

(cherry picked from commit 72b1cbaaf36fe6cf2af57a8c7ad3cc457b45c713)

* Restyled by gn

* [NXP][platform] Remove deprecated files

Signed-off-by: marius-alex-tache <marius.tache@nxp.com>

* [NXP][workflow] Create separate jobs for k32w0/k32w1

k32w0 builds use chip-build-k32w Docker image, but k32w1 builds
use chip-build-nxp Docker image.

Signed-off-by: marius-alex-tache <marius.tache@nxp.com>

* [NXP][k32w0] Adding nxp_ota and nxp_factory_data as they are now mandatory

Signed-off-by: marius-alex-tache <marius.tache@nxp.com>

* [NXP][scripts] Fix script issue when there is no --args

Signed-off-by: Martin Girardot <martin.girardot@nxp.com>

* [NXP][k32w1] Disable SMU2

Signed-off-by: marius-alex-tache <marius.tache@nxp.com>

---------

Signed-off-by: marius-alex-tache <marius.tache@nxp.com>
Signed-off-by: Gatien Chapon <gatien.chapon@nxp.com>
Signed-off-by: Martin Girardot <martin.girardot@nxp.com>
Co-authored-by: Martin Girardot <martin.girardot@nxp.com>
Co-authored-by: Dina Benamar <dina.benamarelmaaroufi@nxp.com>
Co-authored-by: Marian Chereji <marian.chereji@nxp.com>
Co-authored-by: Andrei Menzopol <andrei.menzopol@nxp.com>
Co-authored-by: Restyled.io <commits@restyled.io>
Co-authored-by: Gatien Chapon <gatien.chapon@nxp.com>
Co-authored-by: Yassine El Aissaoui <yassine.elaissaoui@nxp.com>
* [Fabric-Sync] Symplify and update the fabric sync guide

* Restyled by prettier-markdown

* Update docs/guides/fabric_synchronization_guide.md

Co-authored-by: Terence Hampson <thampson@google.com>

* Update docs/guides/fabric_synchronization_guide.md

Co-authored-by: saurabhst <s.kumar9@samsung.com>

* Address review comments

---------

Co-authored-by: Restyled.io <commits@restyled.io>
Co-authored-by: Terence Hampson <thampson@google.com>
Co-authored-by: saurabhst <s.kumar9@samsung.com>
* Keep MTRDeviceController.mm

* Copy MTRDeviceController.mm into MTRDeviceController_Concrete.mm

* Set back MTRDeviceController.mm file

* Keep MTRDeviceController.h

* Copy MTRDeviceController.h into MTRDeviceController_Concrete.h

* Set back MTRDeviceController.h file

* add `MTRDeviceController_Concrete` files

* WIP:  bring up `MTRDeviceController_Concrete`

* temporary init implementation

* only vend `MTRDeviceController` pointers

not concrete class (`instancetype`) pointers

* add `storedFabricIndex` (currently broken)

* reduce access of internal properties

* move C++-style fabric index and keypairs to protected ivars

* return base class pointer from constructors

rather than `instancetype`

* clean up property synthesis/ivars in concrete

* update merged code

* WIP:  get us building again, plus plan comments

* remove superfluous comments

* Update src/darwin/Framework/CHIP/MTRDeviceControllerFactory.h

* Restyled by clang-format

* move MTRDeviceController protected ivars

to standard `MTRDeviceController.h` header

* `MTRDeviceController_Concrete` isn't public API

thus no `MTR_AVAILABLE`

* remove commented code

* move ivar extension back to internal header

* Fixing TAPI

* Restyled by whitespace

* Restyled by clang-format

---------

Co-authored-by: Justin Wood <woody@apple.com>
Co-authored-by: Restyled.io <commits@restyled.io>
@woody-apple woody-apple merged commit 78ce5b0 into woody-apple:master Aug 15, 2024
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment