Verified Commit bb1b8de2 authored by Vincent Coubard's avatar Vincent Coubard
Browse files

v0.3



Improvements:
- Documentation: README for individual examples and clear up parts of the main documentation
- Creation of CMSIS packs
- Enabled compiler optimizations
- Print software version at startup
- Cleanup AWS credentials and improve handling when incorrectly set.
Signed-off-by: Vincent Coubard's avatarVincent Coubard <vincent.coubard@arm.com>
parent 4145d9ab
......@@ -40,7 +40,7 @@ Follow these simple steps to use this code example's default configuration #3 ke
# Note: The key parameter required by the script is the name of the key pair in AWS.
# Start a new instance.
./scripts/avh_start -k <key pair> start
./scripts/avh_cli.py -k <key pair> start
# Get instances status.
./scripts/avh_start -k <key pair> status
......@@ -77,28 +77,28 @@ Follow these simple steps to use this code example's default configuration #3 ke
```sh
# add whitespace to this file
> vi .github/workflows/build.yml
> vim .github/workflows/avh.yml
# git push it
> git add .github/workflows/build.yml
> git add .github/workflows/avh.yml
> git commit -m "initial arm virtual hardware github runner test"
> git push origin master
> git push origin main
```
5. To update the application, a set of scripts is included to setup the environment, build applications, run them and test them. These scripts must be executed in the AVH AMI.
```sh
# Synchronize git submodules, setup ML and apply required patches
./script/bootstrap.sh
./bootstrap.sh
# The python environment requires extra packages to sign the binaries
pip3 install click imgtool pytest
# Build the blinky or kws application
./script/build.sh <blinky|kws>
./build.sh <blinky|kws>
# Run the blinky or kws application
./script/build.sh <blinky|kws>
./run.sh <blinky|kws>
# Launch integration tests
pytest -s <blinky|kws>/tests
......
# Blinky Example
Blinky demonstrates TFM secure/non-secure partition on Corstone 300, with the non-secure side responsible for periodically blinking a set of LEDs.
......@@ -33,9 +33,7 @@
*
* @todo Set this to the fully-qualified DNS name of your MQTT broker.
*/
//#define clientcredentialMQTT_BROKER_ENDPOINT "070651553093-ats.iot.us-west-2.amazonaws.com"
//#define clientcredentialMQTT_BROKER_ENDPOINT "avk45523egp1v-ats.iot.us-west-2.amazonaws.com"
#define clientcredentialMQTT_BROKER_ENDPOINT "a3onz4b8473iww-ats.iot.eu-west-2.amazonaws.com"
#define clientcredentialMQTT_BROKER_ENDPOINT "endpointid.amazonaws.com"
/*
* @brief Host name.
......@@ -47,7 +45,7 @@
* by software, such as a production serial number, rather
* than a hard coded constant.
*/
#define clientcredentialIOT_THING_NAME "devsummit-tfm-ota"
#define clientcredentialIOT_THING_NAME "thingname"
/*
* @brief Port number the MQTT broker is using.
......
......@@ -39,26 +39,9 @@
* "-----END CERTIFICATE-----"
*/
#define keyCLIENT_CERTIFICATE_PEM \
"-----BEGIN CERTIFICATE-----\n"\
"MIIDWTCCAkGgAwIBAgIUJQ+OjgWxOPXruxLz8EP5NWS68wswDQYJKoZIhvcNAQEL\n"\
"BQAwTTFLMEkGA1UECwxCQW1hem9uIFdlYiBTZXJ2aWNlcyBPPUFtYXpvbi5jb20g\n"\
"SW5jLiBMPVNlYXR0bGUgU1Q9V2FzaGluZ3RvbiBDPVVTMB4XDTIxMDgyNTExMjY0\n"\
"OVoXDTQ5MTIzMTIzNTk1OVowHjEcMBoGA1UEAwwTQVdTIElvVCBDZXJ0aWZpY2F0\n"\
"ZTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAO7BA+4kdXLfY+zCrV2e\n"\
"Xwvb2VghkilT3kS/9/1aA9AwbLHCpWelXj2bKLLB1jt8gNObCz/3OhInweihjgsM\n"\
"BLEhgvT/fF7v6YHsnwiTj6r5Ui9xy69jgQpYh7Gm5s+GydlqSD4Z82GZdU4Xizb0\n"\
"Xp2rfp0zKjq0Sp2ZKvUQeurSTfxuE3n8/hWGmvdPFRRnV1a9SKT2Jd/NbTZklfcZ\n"\
"6Y43FYvvlzTae6Z5QYkJ6UHx8icTgm9NNNExp953Mguq4PUaLM7dfZ6586/4B1U3\n"\
"2m/FMvERf5UdO84gxPT89Wa5+WpKZIXfBkJDIEnajOepV10sNc9ubh3cxsVlrsQO\n"\
"EQ8CAwEAAaNgMF4wHwYDVR0jBBgwFoAUPEmRsgyCJ10rIUr6U9dgig6OgsYwHQYD\n"\
"VR0OBBYEFL0u6/eFu2jAXesd3uiOhstLi1BsMAwGA1UdEwEB/wQCMAAwDgYDVR0P\n"\
"AQH/BAQDAgeAMA0GCSqGSIb3DQEBCwUAA4IBAQCA8BNDUVMtozydF55ectkUjPss\n"\
"pTYxBqYDPj6czzNcsfuluYldJtL2JOZU58kyXYeWTf/FNdoNjoAvCL13+6LmsOog\n"\
"pnMzzT3FAl8ZWSOkvhJ3u66q7FftSCwEoHGYT/pO29np9DwXIKh2NIZRlqz8bLjD\n"\
"m2Q6QGMol9yLpJNVBFYlqDY1JurTXmQhJx0KiCf9u4q3BolDEp90nftOjjctg9+1\n"\
"blI8dOiRJtJXCdq5VV4PnfTr6z3HNZOyewJts2ENGrBB0hmnfMMhm1qDd5EJsuM0\n"\
"H0cxO+pE3Zkt5zNACA5lBgUFkpSISGR3WnnoLT3EXRQGAdH973qGTjpHyBbY\n"\
"-----END CERTIFICATE-----\n"
"-----BEGIN CERTIFICATE-----\n"\
"client certificate\n"\
"-----END CERTIFICATE-----"
/*
......@@ -70,33 +53,10 @@
* "-----END RSA PRIVATE KEY-----"
*/
#define keyCLIENT_PRIVATE_KEY_PEM \
"-----BEGIN RSA PRIVATE KEY-----\n"\
"MIIEpAIBAAKCAQEA7sED7iR1ct9j7MKtXZ5fC9vZWCGSKVPeRL/3/VoD0DBsscKl\n"\
"Z6VePZsossHWO3yA05sLP/c6EifB6KGOCwwEsSGC9P98Xu/pgeyfCJOPqvlSL3HL\n"\
"r2OBCliHsabmz4bJ2WpIPhnzYZl1TheLNvRenat+nTMqOrRKnZkq9RB66tJN/G4T\n"\
"efz+FYaa908VFGdXVr1IpPYl381tNmSV9xnpjjcVi++XNNp7pnlBiQnpQfHyJxOC\n"\
"b0000TGn3ncyC6rg9Roszt19nrnzr/gHVTfab8Uy8RF/lR07ziDE9Pz1Zrn5akpk\n"\
"hd8GQkMgSdqM56lXXSw1z25uHdzGxWWuxA4RDwIDAQABAoIBAF95Ibg2Lh0shYnk\n"\
"42y/auSUGpqqegc6uXQmi+Vs/H9hDeYbnwcOUtwx0pmA98k75Uw5AMuocjlWWq1L\n"\
"BUEXojyu2O5dx/8y0t6Yn5PPZjEJmDrOt5PAJ5bahhCdXEj6bncZkB/9Qpzxv73l\n"\
"nk7wc3F7ZZs5HZbyB7Bz0oDDAVQq1TBFAUiQTLVcdO41F1Z+ij7+sRlVUI84/soX\n"\
"Qip+HGjuM5c108O4Cfclc8fxdWp+GCZ1zoMPheSFRYwZ/7TL0lTSiyVvxET4XrjT\n"\
"Zh9Hfa/jYNMTWCBDT6QmoxN1vJ1//T2qAEltFNkmzf/cQn/WU1czmVixgXuOwqM4\n"\
"GI6Vh8ECgYEA+9m/I9jOBoE3ShNr9nE84GcuDZTqRDG12ofKOjdfT9keODKqkEzZ\n"\
"Nidc6Tz2WcsF2ywD62iNH01Lnsn4FANJq1MO4SBzsYVDRgZK5WrtrlPMfseilFEI\n"\
"cM707q9WbNFa0vbWSwjyaJVvIcrfYRLWRyOojN2wP/vu3CLN4B3K8OECgYEA8rAH\n"\
"qqjHDuPXpoNqGAc5gCvjvu+Dfxefz/9RkljL+DTSkPc4ZY56yxFM3Xw2cJZQFRmJ\n"\
"5m9SDa45LutMRlbODq4eeyVknPW2/xSSDhapWJI8lkkjydUlrvT9Z9ltrkmBKA5v\n"\
"scrc09kpEMQjhVkNDniR3hnacrw6da2xRoy6D+8CgYEA5T8srK2hw+wE7unE4Xvs\n"\
"BPwGwJgnslFpjnUCUIGswZsJ1e/QsC8znQaxnSE/wTZ7qyhinPr7Ul3ikrSXm2fu\n"\
"vAOLzMLkbNe4B9qcfD4cAg4HW/POeqFURJMuAsIZsk3TFatYHs8TEL3Nff4T3WHv\n"\
"KKw9tZPp5iQmJb2Mlw+ndiECgYEA4ELcgs6+S7suH3hWxOeAMjnclidcu0gIbTvB\n"\
"lFwr+CxP3JgnbGlyfU56Wj2bTQUJ8cWM0f1StMOnofzbmjBC7/vkvOV8CTNirGrE\n"\
"4PH+AZP5GuNxh+RIk1lfBeU9Xo4cJPjaLFCLKdUGBrFJJcN5tkKigLwhSl84ImCk\n"\
"bc5Dbc8CgYBzeSwOD8ApbYoENyPoTGoO80U/qcfFNEL/cUapViez6GKNGvOmYXWM\n"\
"QzI6GUAn2+C3fRFqOBBHvhzfQ6kn9e67vk78h3AAW9zGsh4rVPLXt/4v3SmzVsWe\n"\
"B4Ui8JNiZpKu7K9IbB/DwHDXDUFV7rt8LTqjoBexeUz0AVWPPubrig==\n"\
"-----END RSA PRIVATE KEY-----\n"
"-----BEGIN RSA PRIVATE KEY-----\n"\
"client private key\n"\
"-----END RSA PRIVATE KEY-----"
/*
......@@ -111,16 +71,9 @@
#define keyCLIENT_PUBLIC_KEY_PEM \
"-----BEGIN PUBLIC KEY-----\n"\
"MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA7sED7iR1ct9j7MKtXZ5f\n"\
"C9vZWCGSKVPeRL/3/VoD0DBsscKlZ6VePZsossHWO3yA05sLP/c6EifB6KGOCwwE\n"\
"sSGC9P98Xu/pgeyfCJOPqvlSL3HLr2OBCliHsabmz4bJ2WpIPhnzYZl1TheLNvRe\n"\
"nat+nTMqOrRKnZkq9RB66tJN/G4Tefz+FYaa908VFGdXVr1IpPYl381tNmSV9xnp\n"\
"jjcVi++XNNp7pnlBiQnpQfHyJxOCb0000TGn3ncyC6rg9Roszt19nrnzr/gHVTfa\n"\
"b8Uy8RF/lR07ziDE9Pz1Zrn5akpkhd8GQkMgSdqM56lXXSw1z25uHdzGxWWuxA4R\n"\
"DwIDAQAB\n"\
"-----END PUBLIC KEY-----\n"
"-----BEGIN PUBLIC KEY-----\n"\
"client public key\n"\
"-----END PUBLIC KEY-----"
#define keyCA1_ROOT_CERTIFICATE_PEM \
"-----BEGIN CERTIFICATE-----\n"\
......
#!/usr/bin/bash
# Copyright (c) 2021 Arm Limited. All rights reserved.
# SPDX-License-Identifier: Apache-2.0
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
export ARMLMD_LICENSE_FILE=7010@cam-lic03.cambridge.arm.com:7010@cam-lic04.cambridge.arm.com:7010@cam-lic05.cambridge.arm.com:7010@cam-lic07.cambridge.arm.com
source /opt/cbuild/etc/setup
cp_init.sh
git submodule update --init lib/VHT
\ No newline at end of file
# KWS Example
## Presentation
The KWS example demonstrates machine learning running on the non-secure side on Corstone 300.
Depending on the keyword recognized, LEDs of the system are turned ON or OFF:
- LED1:
- _Yes_: on
- _No_: off
- LED2:
- _Go_: on
- _Stop_: off
- LED3:
- _Up_: on
- _Down_: off
- LED4:
- _Left_: on
- _Right_: off
- LED5:
- _On_: on
- _Off_: off
The sixth LED blinks at a regular interval to indicate that the system is alive and waits for input.
## Connection to AWS cloud
The system can be connected to the AWS cloud and broadcast the ML inference results
to the cloud in an MQTT topic or receive OTA update.
Details of the AWS configuration can be found in the main [README](../README.md)
......@@ -1427,6 +1427,12 @@ static BaseType_t prvCreateSocketConnectionToMQTTBroker( NetworkContext_t * pxNe
}
} while( ( xNetworkStatus != TRANSPORT_SOCKET_STATUS_SUCCESS ) && ( xStatus == pdPASS ) );
/* if we fail to connect we can start ML immediately */
if ( xStatus != pdPASS )
{
ml_task_inference_start();
}
return xStatus;
}
/*-----------------------------------------------------------*/
......
......@@ -38,6 +38,7 @@
#include "iot_network_freertos.h"
#include "iot_logging_task.h"
#include "aws_dev_mode_key_provisioning.h"
#include "psa/update.h"
extern int mbedtls_platform_set_calloc_free( void * (*calloc_func)( size_t, size_t ),
void (*free_func)( void * ) );
......@@ -85,6 +86,20 @@ static uint8_t ucDNSServerAddress[ 4 ] = { 208, 67, 222, 222 };
psa_key_handle_t xOTACodeVerifyKeyHandle = NULL;
void print_version()
{
psa_image_info_t xImageInfo = { 0 };
psa_image_id_t ulImageID = FWU_CALCULATE_IMAGE_ID(FWU_IMAGE_ID_SLOT_ACTIVE, FWU_IMAGE_ID_SLOT_ACTIVE, 0);
psa_status_t uxStatus = psa_fwu_query( ulImageID, &xImageInfo );
if( uxStatus != PSA_SUCCESS )
{
print_log("Firmware version: %d.%d.%d",
xImageInfo.version.iv_major,
xImageInfo.version.iv_minor,
xImageInfo.version.iv_revision);
}
}
int main()
{
BaseType_t ret = pdPASS;
......@@ -107,6 +122,8 @@ int main()
ret = ota_privision_code_signing_key(&xOTACodeVerifyKeyHandle);
configASSERT( ret == 0 );
print_version();
/* Initialise the RTOS's TCP/IP stack. The tasks that use the network
are created in the vApplicationIPNetworkEventHook() hook function
below. The hook function is called when the network connects. */
......@@ -132,10 +149,20 @@ void vApplicationIPNetworkEventHook( eIPCallbackEvent_t eNetworkEvent )
{
if (eNetworkEvent == eNetworkUp) {
print_log("[INF] network up, starting demo\r\n");
DEMO_RUNNER_RunDemos( );
if (strcmp(clientcredentialMQTT_BROKER_ENDPOINT, "endpointid.amazonaws.com") == 0) {
print_log("[ERR] INVALID CREDENTIALS AND ENDPOINT.\r\n");
print_log("[ERR] Set the right configuration and credentials in aws_clientcredential.h and aws_clientcredential_keys.h\r\n");
// Start the inference directly
ml_task_inference_start();
} else {
DEMO_RUNNER_RunDemos( );
}
} else {
print_log("[ERR] network down\r\n");
}
}
......
......@@ -524,11 +524,10 @@ void ProcessAudio(ApplicationContext& ctx)
++audio_index;
} /* while (true) */
if (xQueueReceive(ml_msg_queue, &msg, 0) == pdPASS ) {
if (msg.event == ML_EVENT_STOP) {
/* already stopped so restart */
continue;
} /* else it's ML_EVENT_START so we fall through to the next loop */
while ( xQueueReceive(ml_msg_queue, &msg, portMAX_DELAY) == pdPASS ) {
if (msg.event == ML_EVENT_START) {
break;
} /* else it's ML_EVENT_STOP so we keep waiting */
}
} /* while (true) */
}
......
......@@ -15,6 +15,114 @@
# See the License for the specific language governing permissions and
# limitations under the License.
# requires 7z
7z a -tzip ARM.DevSummitDemo.1.0.0.pack ../../devsummitdemo-2021 -x'!devsummitdemo-2021/ci' -x'!devsummitdemo-2021/scripts' -xr'!.*'
# This creates a cmsis pack based on a bootstrapped repo. Requires 7z.
PWD=$(pwd)
PWD=${PWD%/*} # get parent path
PWD=${PWD##*/} # get the dir name
7z a -tzip ARM.DevSummitDemo.1.0.0.pack ../../${PWD} \
-xr'!.*' \
-xr'!*.xml' \
-xr'!*.html' \
-xr'!*.htm' \
-xr'!*.js' \
-xr'!*.pbtxt' \
-xr'!*.swift' \
-xr'!*.go' \
-xr'!*.java' \
-xr'!*.php' \
-xr'!*.pb' \
-x"!${PWD}/RTE" \
-x"!${PWD}/build" \
-x"!${PWD}/ci" \
-x"!${PWD}/lib/amazon_freertos/doc" \
-x"!${PWD}/lib/amazon_freertos/projects" \
-x"!${PWD}/lib/amazon_freertos/tests" \
-x"!${PWD}/lib/amazon_freertos/tools" \
-x"!${PWD}/lib/amazon_freertos/vendors" \
-x"!${PWD}/lib/amazon_freertos/libraries/3rdparty/CMock" \
-x"!${PWD}/lib/amazon_freertos/libraries/3rdparty/unity" \
-x"!${PWD}/lib/amazon_freertos/libraries/ble" \
-x"!${PWD}/lib/amazon_freertos/libraries/lwip" \
-x"!${PWD}/lib/amazon_freertos/libraries/lwip_osal" \
-x"!${PWD}/lib/amazon_freertos/libraries/tinycrypt" \
-x"!${PWD}/lib/amazon_freertos/libraries/tracealyzer_recorder" \
-x"!${PWD}/lib/amazon_freertos/libraries/win_pcap" \
-x"!${PWD}/lib/amazon_freertos/libraries/coreMQTT-Agent/test" \
-x"!${PWD}/lib/amazon_freertos/libraries/coreMQTT/test" \
-x"!${PWD}/lib/amazon_freertos/libraries/coreHTTP/test" \
-x"!${PWD}/lib/amazon_freertos/libraries/abstractions/pkcs11/corePKCS11/test" \
-x"!${PWD}/lib/mcuboot/boot/cypress" \
-x"!${PWD}/lib/mcuboot/ext/mbedtls/tests" \
-x"!${PWD}/lib/ml-embedded-evaluation-kit/resources_downloaded" \
-x"!${PWD}/lib/ml-embedded-evaluation-kit/dependencies/cmsis/CMSIS/DAP" \
-x"!${PWD}/lib/ml-embedded-evaluation-kit/dependencies/cmsis/CMSIS/Documentation" \
-x"!${PWD}/lib/ml-embedded-evaluation-kit/dependencies/cmsis/CMSIS/DSP/ComputeLibrary" \
-x"!${PWD}/lib/ml-embedded-evaluation-kit/dependencies/cmsis/CMSIS/DSP/DSP_Lib_TestSuite" \
-x"!${PWD}/lib/ml-embedded-evaluation-kit/dependencies/cmsis/CMSIS/DSP/Projects" \
-x"!${PWD}/lib/ml-embedded-evaluation-kit/dependencies/cmsis/CMSIS/DSP/Toolchain" \
-x"!${PWD}/lib/ml-embedded-evaluation-kit/dependencies/cmsis/CMSIS/DSP/Platforms" \
-x"!${PWD}/lib/ml-embedded-evaluation-kit/dependencies/cmsis/CMSIS/DSP/Scripts" \
-x"!${PWD}/lib/ml-embedded-evaluation-kit/dependencies/cmsis/CMSIS/DSP/Examples" \
-x"!${PWD}/lib/ml-embedded-evaluation-kit/dependencies/cmsis/CMSIS/DSP/Testing" \
-x"!${PWD}/lib/ml-embedded-evaluation-kit/dependencies/cmsis/CMSIS/DSP/PythonWrapper" \
-x"!${PWD}/lib/ml-embedded-evaluation-kit/dependencies/cmsis/CMSIS/DoxyGen" \
-x"!${PWD}/lib/ml-embedded-evaluation-kit/dependencies/cmsis/CMSIS/Pack" \
-x"!${PWD}/lib/ml-embedded-evaluation-kit/dependencies/cmsis/CMSIS/NN/NN_Lib_Tests" \
-x"!${PWD}/lib/ml-embedded-evaluation-kit/dependencies/cmsis/CMSIS/NN/Tests" \
-x"!${PWD}/lib/ml-embedded-evaluation-kit/dependencies/cmsis/CMSIS/NN/Scripts" \
-x"!${PWD}/lib/ml-embedded-evaluation-kit/dependencies/cmsis/CMSIS/NN/Examples" \
-x"!${PWD}/lib/ml-embedded-evaluation-kit/dependencies/cmsis/CMSIS/CoreValidation/Source" \
-x"!${PWD}/lib/ml-embedded-evaluation-kit/dependencies/cmsis/CMSIS/CoreValidation/Tests" \
-x"!${PWD}/lib/ml-embedded-evaluation-kit/dependencies/cmsis/CMSIS/RTOS2/Source" \
-x"!${PWD}/lib/ml-embedded-evaluation-kit/dependencies/cmsis/CMSIS/RTOS2/Template" \
-x"!${PWD}/lib/ml-embedded-evaluation-kit/dependencies/cmsis/CMSIS/RTOS2/RTX" \
-x"!${PWD}/lib/ml-embedded-evaluation-kit/dependencies/cmsis/CMSIS/Utilities" \
-x"!${PWD}/lib/ml-embedded-evaluation-kit/dependencies/cmsis/CMSIS/Core_A/Source" \
-x"!${PWD}/lib/ml-embedded-evaluation-kit/dependencies/cmsis/CMSIS/Core/Template" \
-x"!${PWD}/lib/ml-embedded-evaluation-kit/dependencies/cmsis/CMSIS/RTOS" \
-x"!${PWD}/lib/ml-embedded-evaluation-kit/dependencies/cmsis/CMSIS/DAP" \
-x"!${PWD}/lib/ml-embedded-evaluation-kit/dependencies/cmsis/CMSIS/Driver/DriverTemplates" \
-x"!${PWD}/lib/ml-embedded-evaluation-kit/dependencies/cmsis/CMSIS/Driver/VIO" \
-x"!${PWD}/lib/ml-embedded-evaluation-kit/dependencies/tensorflow/tensorflow/compiler" \
-x"!${PWD}/lib/ml-embedded-evaluation-kit/dependencies/tensorflow/tensorflow/java" \
-x"!${PWD}/lib/ml-embedded-evaluation-kit/dependencies/tensorflow/tensorflow/go" \
-x"!${PWD}/lib/ml-embedded-evaluation-kit/dependencies/tensorflow/tensorflow/python" \
-x"!${PWD}/lib/ml-embedded-evaluation-kit/dependencies/tensorflow/tensorflow/stream_executor" \
-x"!${PWD}/lib/ml-embedded-evaluation-kit/dependencies/tensorflow/tensorflow/tools" \
-x"!${PWD}/lib/ml-embedded-evaluation-kit/dependencies/tensorflow/tensorflow/lite/ios" \
-x"!${PWD}/lib/ml-embedded-evaluation-kit/dependencies/tensorflow/tensorflow/lite/experimental" \
-x"!${PWD}/lib/ml-embedded-evaluation-kit/dependencies/tensorflow/tensorflow/lite/tutorials" \
-x"!${PWD}/lib/ml-embedded-evaluation-kit/dependencies/tensorflow/tensorflow/lite/java" \
-x"!${PWD}/lib/ml-embedded-evaluation-kit/dependencies/tensorflow/tensorflow/lite/profiling" \
-x"!${PWD}/lib/ml-embedded-evaluation-kit/dependencies/tensorflow/tensorflow/lite/g3doc" \
-x"!${PWD}/lib/ml-embedded-evaluation-kit/dependencies/tensorflow/tensorflow/lite/testdata" \
-x"!${PWD}/lib/ml-embedded-evaluation-kit/dependencies/tensorflow/tensorflow/lite/swift" \
-x"!${PWD}/lib/ml-embedded-evaluation-kit/dependencies/tensorflow/tensorflow/lite/tools" \
-x"!${PWD}/lib/ml-embedded-evaluation-kit/dependencies/tensorflow/tensorflow/lite/examples" \
-x"!${PWD}/lib/ml-embedded-evaluation-kit/dependencies/tensorflow/tensorflow/lite/python" \
-x"!${PWD}/lib/ml-embedded-evaluation-kit/dependencies/tensorflow/tensorflow/lite/testing" \
-x"!${PWD}/lib/ml-embedded-evaluation-kit/dependencies/tensorflow/tensorflow/lite/micro/tools/make/downloads/flatbuffers/tests" \
-x"!${PWD}/lib/ml-embedded-evaluation-kit/dependencies/tensorflow/tensorflow/lite/micro/tools/make/downloads/flatbuffers/samples" \
-x"!${PWD}/lib/ml-embedded-evaluation-kit/dependencies/tensorflow/tensorflow/lite/micro/tools/make/downloads/gemmlowp/test" \
-x"!${PWD}/lib/ml-embedded-evaluation-kit/dependencies/tensorflow/tensorflow/lite/micro/examples" \
-x"!${PWD}/lib/ml-embedded-evaluation-kit/dependencies/tensorflow/tensorflow/core/kernels/fuzzing" \
-x"!${PWD}/lib/VHT/DoxyGen" \
-x"!${PWD}/lib/tfm_test/test" \
-x"!${PWD}/lib/tf-m/platform/ext/target/arm/mps2" \
-x"!${PWD}/lib/tf-m/platform/ext/target/arm/musca_b1" \
-x"!${PWD}/lib/tf-m/platform/ext/target/arm/musca_s1" \
-x"!${PWD}/lib/tf-m/platform/ext/target/cypress" \
-x"!${PWD}/lib/tf-m/platform/ext/target/cypress" \
-x"!${PWD}/lib/tf-m/platform/ext/target/lairdconnectivity" \
-x"!${PWD}/lib/tf-m/platform/ext/target/nordic_nrf" \
-x"!${PWD}/lib/tf-m/platform/ext/target/nuvoton" \
-x"!${PWD}/lib/tf-m/platform/ext/target/nxp" \
-x"!${PWD}/lib/tf-m/platform/ext/target/stm" \
-x"!${PWD}/lib/ml-embedded-evaluation-kit/dependencies/tensorflow/tensorflow/lite/objc" \
-x"!${PWD}/lib/mbedcrypto/tests" \
-x"!${PWD}/lib/ml-embedded-evaluation-kit/dependencies/cmsis/ARM.CMSIS.pdsc" \
-x"!${PWD}/scripts"
7z a -tzip ARM.DevSummitDemo.1.0.0.pack ./ARM.DevSummitDemo.pdsc
......@@ -19,8 +19,8 @@
<target Ddsp="DSP" Dendian="Little-endian" Dfpu="DP_FPU" Dmve="FP_MVE" Dname="ARMCM55" Dsecure="Non-secure" Dtz="TZ" Dvendor="ARM:82">
<output intdir="./build/kws/" name="tfm_ns" outdir="./build/kws/" type="exe"/>
<ldflags add="--cpu=Cortex-M55 --strict --info=summarysizes,sizes,totals,unused,veneers --symbols --xref --diag_suppress=6312 --diag_suppress=6314 --diag_suppress=6304 --diag_suppress=6329 --map --summary_stderr --load_addr_map_info build/secure_partition/s_veneers.o" compiler="AC6" file="./bsp/an547_ns.sct"/>
<cxxflags add="-std=c++17 -O0 -g" compiler="AC6"/>
<cflags add="-std=c11 -O0 -g" compiler="AC6"/>
<cxxflags add="-std=c++17 -Ofast -g" compiler="AC6"/>
<cflags add="-std=c11 -Ofast -g" compiler="AC6"/>
<asflags compiler="AC6" use="armasm"/>
<includes/>
</target>
......
......@@ -19,7 +19,7 @@
<target Ddsp="DSP" Dendian="Little-endian" Dfpu="DP_FPU" Dmve="FP_MVE" Dname="ARMCM55" Dsecure="Secure" Dtz="TZ" Dvendor="ARM:82">
<output intdir="./build/secure_partition/" name="tfm_s" outdir="./build/secure_partition/" type="exe"/>
<ldflags add="--cpu=Cortex-M55 --strict --info=summarysizes,sizes,totals,unused,veneers --strict --symbols --xref --diag_suppress=6312 --diag_suppress=6314 --diag_suppress=6304 --diag_suppress=6329 --entry=Reset_Handler --map --summary_stderr --load_addr_map_info --callgraph --import_cmse_lib_out=./build/secure_partition/s_veneers.o" compiler="AC6" file="./bsp/tfm_s.sct"/>
<cflags add="-g -O0" compiler="AC6"/>
<cflags add="-g -O2" compiler="AC6"/>
<asflags compiler="AC6" use="armasm"/>
<includes/>
</target>
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment