From 5cefe95b2f9cb872d8209e16111030bcbfb6db78 Mon Sep 17 00:00:00 2001 From: Achala Ram Date: Tue, 9 Jan 2024 15:20:43 +0530 Subject: [PATCH] am243x: SDFM: Update documents -Update license and manifest files -Add FD latency and NC task time Fixes: PINDSW-7478 Signed-off-by: Achala Ram --- docs/motor_control_sdk_am243x_manifest.html | 718 +++++++++--------- docs/motor_control_sdk_am263x_manifest.html | 236 +++--- .../components/current_sense/current_sense.md | 19 + .../images/current_sense/SDFM_FD_Latency.png | Bin 0 -> 30800 bytes .../SDFM_NC_Task_time_for_continuous_mode.png | Bin 0 -> 25606 bytes .../SDFM_NC_Task_time_for_double_update.png | Bin 0 -> 22303 bytes .../SDFM_NC_Task_time_for_single_update.png | Bin 0 -> 36534 bytes license.txt | 106 +-- license_hs.txt | 171 ++--- 9 files changed, 593 insertions(+), 657 deletions(-) create mode 100644 docs_src/docs/api_guide/images/current_sense/SDFM_FD_Latency.png create mode 100644 docs_src/docs/api_guide/images/current_sense/SDFM_NC_Task_time_for_continuous_mode.png create mode 100644 docs_src/docs/api_guide/images/current_sense/SDFM_NC_Task_time_for_double_update.png create mode 100644 docs_src/docs/api_guide/images/current_sense/SDFM_NC_Task_time_for_single_update.png diff --git a/docs/motor_control_sdk_am243x_manifest.html b/docs/motor_control_sdk_am243x_manifest.html index f32982b..341def4 100644 --- a/docs/motor_control_sdk_am243x_manifest.html +++ b/docs/motor_control_sdk_am243x_manifest.html @@ -34,11 +34,11 @@

-2023-01-09 +2023-21-12

-Manifest ID - SRAS00010218 +Manifest ID - SRAS00010702

@@ -214,7 +214,7 @@ for such Software.

Export Information

ECCN for Software included in this release:

-Publicly Available +EAR99
@@ -251,7 +251,7 @@ for such Software.

Motor Control SDK - 09.00.00 + 09.01.00 BSD-3-Clause @@ -281,7 +281,7 @@ for such Software.

ICSS Firmware for HDSL - 01.00.00 + 0.x TI Text File @@ -311,7 +311,7 @@ for such Software.

ICSS Firmware for EnDat - 02.01.00 + 01.00.x TI Text File @@ -341,7 +341,7 @@ for such Software.

ICSS Firmware for Tamagawa - 01.00.00 + 01.01.x TI Text File @@ -365,13 +365,43 @@ for such Software.

+ + + + ICSS Firmware for BiSS-C + + + 0.0.x + + + TI Text File + + + Binary as a C array in header file + + + N/A + + Location + + [as_installed]/source/position_sense/bissc/firmware/bissc_master*_bin.h + + + + Obtained from + + Texas Instruments + + + + ICSS Firmware for SDFM - 01.00.00 + 01.01.x TI Text File @@ -391,6 +421,36 @@ for such Software.

Obtained from Texas Instruments + + + + + + + + Single Chip Servo Reference Design + + + 09.01.00 + + + BSD-3-Clause + + + Source + + + No + + Location + + [as_installed]/examples/tidep_01032_dual_motor_drive/single_chip_servo/am243x-lp/r5fss1-0_freertos/*.c + + + + Obtained from + + KUNBUS GmbH @@ -426,6 +486,246 @@ for such Software.

+ + + + MCU+ SDK + + + 09.01.00 + + + BSD-3-Clause + + + Source and Binary + + + N/A + + Location + + [as installed]/* + + + + Obtained from + + Texas Instruments + + + + + + + + TIFS, RM, PM for DMSC + + + v09.01.xx + + + TI Text File + + + Binary + + + N/A + + Location + + [as_installed]/source/drivers/sciclient/soc/am64x_am243x/* + + + + Obtained from + + Texas Instruments + + + + + + + + DDR Core driver + + + 2.0.x + + + BSD-3-Clause + + + Source + + + Yes + + Location + + [as_installed]/source/drivers/ddr/v0/cdn_drv/* + + + + Obtained from + + Cadence Design Systems, Inc + + + + + + + + USB Core driver + + + 2.0.8 + + + BSD-3-Clause + + + Source + + + Yes + + Location + + [as_installed]/source/usb/cdn/* + + + + Obtained from + + Cadence Design Systems, Inc + + + + + + + + FreeRTOS Kernel + + + 10.4.3 + + + MIT License + + + Source + + + No + + Location + + [as_installed]/source/kernel/freertos/FreeRTOS-Kernel/* + + + + Obtained from + + https://github.com/FreeRTOS/FreeRTOS-Kernel.git + + + + + + + + FreeRTOS Heap + + + 10.4.3 + + + MIT License + + + Source + + + Yes + + Location + + [as_installed]/source/kernel/nortos/dpl/common/HeapP_internal.* + + + + Obtained from + + https://github.com/FreeRTOS/FreeRTOS-Kernel/blob/main/portable/MemMang/heap_4.c + + + + + + + + FreeRTOS POSIX + + + 1.1.0 + + + MIT License + + + Source + + + No + + Location + + [as_installed]/source/kernel/freertos/FreeRTOS-POSIX/* + + + + Obtained from + + https://github.com/FreeRTOS/Lab-Project-FreeRTOS-POSIX.git + + + + + + + + FreeRTOS Posix Demo + + + 1.0.0 + + + MIT License + + + Source + + + Yes + + Location + + [as_installed]/examples/kernel/freertos/posix_demo/posix_demo.c + + + + Obtained from + + https://github.com/FreeRTOS/FreeRTOS-Labs/blob/master/FreeRTOS-Labs/Demo/FreeRTOS_Plus_POSIX_with_actor_Windows_Simulator/posix_demo.c + + + + @@ -462,7 +762,7 @@ for such Software.

LWIP - 2.1.2 + 2.2.0 BSD-3-Clause @@ -486,36 +786,6 @@ for such Software.

- - - - LWIP Contrib - - - 2.1.0 - - - BSD-3-Clause - - - Source - - - No - - Location - - [as_installed]/source/networking/lwip/lwip-contrib/* - - - - Obtained from - - git://git.savannah.gnu.org/lwip/lwip-contrib.git - - - - @@ -546,36 +816,6 @@ for such Software.

- - - - DDR Core driver - - - 2.0.x - - - BSD-3-Clause - - - Source - - - Yes - - Location - - [as_installed]/source/drivers/ddr/v0/cdn_drv/* - - - - Obtained from - - Cadence Design Systems, Inc - - - - @@ -636,36 +876,6 @@ for such Software.

- - - - FreeRTOS Posix Demo - - - 1.0.0 - - - MIT License - - - Source - - - Yes - - Location - - [as_installed]/examples/kernel/freertos/posix_demo/posix_demo.c - - - - Obtained from - - https://github.com/FreeRTOS/FreeRTOS-Labs/blob/master/FreeRTOS-Labs/Demo/FreeRTOS_Plus_POSIX_with_actor_Windows_Simulator/posix_demo.c - - - - @@ -812,186 +1022,6 @@ for such Software.

Obtained from Texas Instruments - - - - - - - - USB Core driver - - - 2.0.8 - - - BSD-3-Clause - - - Source - - - Yes - - Location - - [as_installed]/source/usb/cdn/* - - - - Obtained from - - Cadence Design Systems, Inc - - - - - - - - FreeRTOS Kernel - - - 10.4.3 - - - MIT License - - - Source - - - No - - Location - - [as_installed]/source/kernel/freertos/FreeRTOS-Kernel/* - - - - Obtained from - - https://github.com/FreeRTOS/FreeRTOS-Kernel.git - - - - - - - - FreeRTOS Heap - - - 10.4.3 - - - MIT License - - - Source - - - Yes - - Location - - [as_installed]/source/kernel/nortos/dpl/common/HeapP_internal.* - - - - Obtained from - - https://github.com/FreeRTOS/FreeRTOS-Kernel/blob/main/portable/MemMang/heap_4.c - - - - - - - - FreeRTOS POSIX - - - 1.1.0 - - - MIT License - - - Source - - - No - - Location - - [as_installed]/source/kernel/freertos/FreeRTOS-POSIX/* - - - - Obtained from - - https://github.com/FreeRTOS/Lab-Project-FreeRTOS-POSIX.git - - - - - - - - MCU+ SDK - - - 09.00.00 - - - BSD-3-Clause - - - Source and Binary - - - N/A - - Location - - [as installed]/* - - - - Obtained from - - Texas Instruments - - - - - - - - TIFS, RM, PM for DMSC - - - v09.00.07 - - - TI Text File - - - Binary - - - N/A - - Location - - [as_installed]/source/drivers/sciclient/soc/am64x_am243x/* - - - - Obtained from - - Texas Instruments @@ -1030,23 +1060,23 @@ for such Software.

- ICSS Firmware for Profinet Device + Industrial Communications SDK - 0.15.x + 09.01.00 - TI Text File + BSD-3-Clause - Binary as a C array in header file + Source and Binary N/A Location - [as_installed]/source/industrial_comms/profinet_device/icss_fwhal/firmware/* + [as installed]/* @@ -1093,7 +1123,7 @@ for such Software.

ICSS Firmware for EthernetIP Adapter - 5.3.x + 5.4.x TI Text File @@ -1117,6 +1147,36 @@ for such Software.

+ + + + ICSS Firmware for Profinet Device + + + 0.15.x + + + TI Text File + + + Binary as a C array in header file + + + N/A + + Location + + [as_installed]/source/industrial_comms/profinet_device/icss_fwhal/firmware/* + + + + Obtained from + + Texas Instruments + + + + @@ -1153,7 +1213,7 @@ for such Software.

EtherCAT Slave Examples - 1.13.x + 1.99.x BSD-3-Clause @@ -1183,7 +1243,7 @@ for such Software.

EtherNet/IP Adapter Examples - 3.4.x + 3.6.x BSD-3-Clause @@ -1213,7 +1273,7 @@ for such Software.

IO-Link Master Examples - 1.9.x + 2.0.x BSD-3-Clause @@ -1267,73 +1327,13 @@ for such Software.

- - - - Networking LwIP (enet) Examples - - - 3.0.x - - - BSD - - - Source - - - No - - Location - - [as_installed]/examples/networking/lwip/* - - - - Obtained from - - Florian Schulze, Swedish Institute of Computer Science - - - - - - - - Industrial Communications SDK - - - 09.00.00 - - - BSD-3-Clause - - - Source and Binary - - - N/A - - Location - - [as installed]/* - - - - Obtained from - - Texas Instruments - - - - EtherCAT Slave Stack Headers - 1.13.x + 1.99.x BSD-3-Clause @@ -1363,7 +1363,7 @@ for such Software.

EtherNet/IP Adapter Stack Headers - 3.4.x + 3.6.x BSD-3-Clause @@ -1393,7 +1393,7 @@ for such Software.

IO-Link Stack Headers - 1.9.x + 2.0.x BSD-3-Clause @@ -1466,7 +1466,7 @@ for such Software.

Location - [as_installed]/source/industrial_comms/ethercat_slave/stack/lib/ethercat_slave_bkhfSsc.* + [as_installed]/source/industrial_comms/ethercat_slave/stack/lib/ethercat_slave_bkhf_ssc.* @@ -1483,7 +1483,7 @@ for such Software.

EtherCAT Slave Stack Library - 1.13.x + 1.99.x TI Commercial @@ -1513,7 +1513,7 @@ for such Software.

EtherNet/IP Adapter Stack Library - 3.4.x + 3.6.x TI Commercial @@ -1543,7 +1543,7 @@ for such Software.

IO-Link Stack - 1.9.x + 2.0.x TI Commercial @@ -1573,7 +1573,7 @@ for such Software.

EtherCAT IO-Link Gateway Stack - 2.2.x + 3.0.x TI Commercial @@ -1616,19 +1616,19 @@ for such Software.


Motor Control SDK AM243X Licenses


-
Motor Control SDK (BSD-3-Clause License)
-------------------------------
/*
* Copyright (C) 2021-23 Texas Instruments Incorporated
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the
* distribution.
*
* Neither the name of Texas Instruments Incorporated nor the names of
* its contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/

ICSS Firmware (TI TEXT FILE License)
------------------------------------------------------------------
Copyright (C) 2017-2023 Texas Instruments Incorporated

All rights reserved not granted herein.

Limited License.

Texas Instruments Incorporated grants a world-wide, royalty-free, non-exclusive license under copyrights and patents it now or hereafter owns or controls to make, have made, use, import, offer to sell and sell ("Utilize") this software subject to the terms herein. With respect to the foregoing patent license, such license is granted solely to the extent that any such patent is necessary to Utilize the software alone. The patent license shall not apply to any combinations which include this software, other than combinations with devices manufactured by or for TI ("TI Devices"). No hardware patent is licensed hereunder.

Redistributions must preserve existing copyright notices and reproduce this license (including the above copyright notice and the disclaimer and (if applicable) source code license limitations below) in the documentation and/or other materials provided with the distribution

Redistribution and use in binary form, without modification, are permitted provided that the following conditions are met:

* No reverse engineering, decompilation, or disassembly of this software is permitted with respect to any software provided in binary form.

* any redistribution and use are licensed by TI for use only with TI Devices.

* Nothing shall obligate TI to provide you with source code for the software licensed and provided to you in object code.

If software source code is provided to you, modification and redistribution of the source code are permitted provided that the following conditions are met:

* any redistribution and use of the source code, including any resulting derivative works, are licensed by TI for use only with TI Devices.

* any redistribution and use of any object code compiled from the source code and any resulting derivative works, are licensed by TI for use only with TI Devices.

Neither the name of Texas Instruments Incorporated nor the names of its suppliers may be used to endorse or promote products derived from this software without specific prior written permission.

DISCLAIMER.

THIS SOFTWARE IS PROVIDED BY TI AND TI"S LICENSORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL TI AND TI"S LICENSORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

+
Motor Control SDK (BSD-3-Clause License)
-------------------------------
/*
* Copyright (C) 2021-23 Texas Instruments Incorporated
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the
* distribution.
*
* Neither the name of Texas Instruments Incorporated nor the names of
* its contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/

ICSS Firmware (TI TEXT FILE License)
------------------------------------------------------------------
Copyright (C) 2017-2023 Texas Instruments Incorporated

All rights reserved not granted herein.

Limited License.

Texas Instruments Incorporated grants a world-wide, royalty-free, non-exclusive license under copyrights and patents it now or hereafter owns or controls to make, have made, use, import, offer to sell and sell ("Utilize") this software subject to the terms herein. With respect to the foregoing patent license, such license is granted solely to the extent that any such patent is necessary to Utilize the software alone. The patent license shall not apply to any combinations which include this software, other than combinations with devices manufactured by or for TI ("TI Devices"). No hardware patent is licensed hereunder.

Redistributions must preserve existing copyright notices and reproduce this license (including the above copyright notice and the disclaimer and (if applicable) source code license limitations below) in the documentation and/or other materials provided with the distribution

Redistribution and use in binary form, without modification, are permitted provided that the following conditions are met:

* No reverse engineering, decompilation, or disassembly of this software is permitted with respect to any software provided in binary form.

* any redistribution and use are licensed by TI for use only with TI Devices.

* Nothing shall obligate TI to provide you with source code for the software licensed and provided to you in object code.

If software source code is provided to you, modification and redistribution of the source code are permitted provided that the following conditions are met:

* any redistribution and use of the source code, including any resulting derivative works, are licensed by TI for use only with TI Devices.

* any redistribution and use of any object code compiled from the source code and any resulting derivative works, are licensed by TI for use only with TI Devices.

Neither the name of Texas Instruments Incorporated nor the names of its suppliers may be used to endorse or promote products derived from this software without specific prior written permission.

DISCLAIMER.

THIS SOFTWARE IS PROVIDED BY TI AND TI"S LICENSORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL TI AND TI"S LICENSORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

KUNBUS Sources (BSD-3-Clause License)
-------------------------------------
/*
* Copyright (c) 2020-2023, Kunbus GmbH
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice, this
* list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* 3. Neither the name of the copyright holder nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
* DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
*/


MCU PLUS SDK AM243x Licenses


-
MCU+ SDK (BSD-3-Clause License)
-------------------------------
/*
* Copyright (C) 2022 Texas Instruments Incorporated
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the
* distribution.
*
* Neither the name of Texas Instruments Incorporated nor the names of
* its contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/


TIFS, RM, PM for DMSC (TI TEXT FILE License)
------------------------------------------------------------------
Copyright (C) 2017-2023 Texas Instruments Incorporated

All rights reserved not granted herein.

Limited License.

Texas Instruments Incorporated grants a world-wide, royalty-free, non-exclusive license under copyrights and patents it now or hereafter owns or controls to make, have made, use, import, offer to sell and sell ("Utilize") this software subject to the terms herein. With respect to the foregoing patent license, such license is granted solely to the extent that any such patent is necessary to Utilize the software alone. The patent license shall not apply to any combinations which include this software, other than combinations with devices manufactured by or for TI ("TI Devices"). No hardware patent is licensed hereunder.

Redistributions must preserve existing copyright notices and reproduce this license (including the above copyright notice and the disclaimer and (if applicable) source code license limitations below) in the documentation and/or other materials provided with the distribution

Redistribution and use in binary form, without modification, are permitted provided that the following conditions are met:

* No reverse engineering, decompilation, or disassembly of this software is permitted with respect to any software provided in binary form.

* any redistribution and use are licensed by TI for use only with TI Devices.

* Nothing shall obligate TI to provide you with source code for the software licensed and provided to you in object code.

If software source code is provided to you, modification and redistribution of the source code are permitted provided that the following conditions are met:

* any redistribution and use of the source code, including any resulting derivative works, are licensed by TI for use only with TI Devices.

* any redistribution and use of any object code compiled from the source code and any resulting derivative works, are licensed by TI for use only with TI Devices.

Neither the name of Texas Instruments Incorporated nor the names of its suppliers may be used to endorse or promote products derived from this software without specific prior written permission.

DISCLAIMER.

THIS SOFTWARE IS PROVIDED BY TI AND TI"S LICENSORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL TI AND TI"S LICENSORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

ENET TSN Stack
---------------------------------------------------------------------
Copyright (C) 2023 Texas Instruments Incorporated
Copyright (c) 2023 Excelfore Corporation (https://excelfore.com)

All rights reserved not granted herein.

Limited License.

Texas Instruments Incorporated grants a world-wide, royalty-free, non-exclusive license under copyrights and patents it now or hereafter owns or controls to make, have made, use, import, offer to sell and sell ("Utilize") this software subject to the terms herein. With respect to the foregoing patent license, such license is granted solely to the extent that any such patent is necessary to Utilize the software alone. The patent license shall not apply to any combinations which include this software, other than combinations with devices manufactured by or for TI ("TI Devices"). No hardware patent is licensed hereunder.

Redistributions must preserve existing copyright notices and reproduce this license (including the above copyright notice and the disclaimer and (if applicable) source code license limitations below) in the documentation and/or other materials provided with the distribution

Redistribution and use in binary form, without modification, are permitted provided that the following conditions are met:

* No reverse engineering, decompilation, or disassembly of this software is permitted with respect to any software provided in binary form.

* any redistribution and use are licensed by TI for use only with TI Devices.

* Nothing shall obligate TI to provide you with source code for the software licensed and provided to you in object code.

If software source code is provided to you, modification and redistribution of the source code are permitted provided that the following conditions are met:

* any redistribution and use of the source code, including any resulting derivative works, are licensed by TI for use only with TI Devices.

* any redistribution and use of any object code compiled from the source code and any resulting derivative works, are licensed by TI for use only with TI Devices.

Neither the name of Texas Instruments Incorporated nor the names of its suppliers may be used to endorse or promote products derived from this software without specific prior written permission.

DISCLAIMER.

THIS SOFTWARE IS PROVIDED BY TI AND TI"S LICENSORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL TI AND TI"S LICENSORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.


Cadence Design Systems DDR and USB Core Drivers (BSD-3-Clause License)
----------------------------------------------------------------------
/*
* Copyright (C) 2012-2020 Cadence Design Systems, Inc.
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* 3. Neither the name of the copyright holder nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE.
*/


FreeRTOS Kernel, FreeRTOS Heap (MIT License)
--------------------------------------------
/*
* FreeRTOS Kernel V10.4.3
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of
* this software and associated documentation files (the "Software"), to deal in
* the Software without restriction, including without limitation the rights to
* use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
* the Software, and to permit persons to whom the Software is furnished to do so,
* subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
* FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
* COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*
* https://www.FreeRTOS.org
* https://github.com/FreeRTOS
*
*/


FreeRTOS POSIX (MIT License)
----------------------------
/*
* Amazon FreeRTOS POSIX V1.1.0
* Copyright (C) 2019 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of
* this software and associated documentation files (the "Software"), to deal in
* the Software without restriction, including without limitation the rights to
* use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
* the Software, and to permit persons to whom the Software is furnished to do so,
* subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
* FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
* COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*
* http://aws.amazon.com/freertos
* http://www.FreeRTOS.org
*/


FreeRTOS Posix Demo (MIT License)
---------------------------------
/*
* FreeRTOS POSIX Demo V1.0.0
* Copyright (C) 2017 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of
* this software and associated documentation files (the "Software"), to deal in
* the Software without restriction, including without limitation the rights to
* use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
* the Software, and to permit persons to whom the Software is furnished to do so,
* subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
* FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
* COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*
* http://aws.amazon.com/freertos
* http://www.FreeRTOS.org
*/


FreeRTOS FAT (MIT License)
--------------------------
/*
* FreeRTOS+FAT V2.3.3
* Copyright (C) 2021 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of
* this software and associated documentation files (the "Software"), to deal in
* the Software without restriction, including without limitation the rights to
* use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
* the Software, and to permit persons to whom the Software is furnished to do so,
* subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
* FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
* COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*
* https://www.FreeRTOS.org
* https://github.com/FreeRTOS
*
*/


LWIP and LWIP Contrib (BSD-3-Clause License)
--------------------------------------------
/*
* Copyright (c) 2001, 2002 Swedish Institute of Computer Science.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
* 3. The name of the author may not be used to endorse or promote products
* derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS"" AND ANY EXPRESS OR IMPLIED
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
* SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
* OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
* IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
* OF SUCH DAMAGE.
*/

TinyUSB (MIT License)
---------------------
The MIT License (MIT)

Copyright (c) 2018, hathach (tinyusb.org)

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.


Tiny printf (MIT License)
-------------------------
///////////////////////////////////////////////////////////////////////////////
// \author (c) Marco Paland (info@paland.com)
// 2014-2019, PALANDesign Hannover, Germany
//
// \license The MIT License (MIT)
//
// Permission is hereby granted, free of charge, to any person obtaining a copy
// of this software and associated documentation files (the "Software"), to deal
// in the Software without restriction, including without limitation the rights
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
// copies of the Software, and to permit persons to whom the Software is
// furnished to do so, subject to the following conditions:
//
// The above copyright notice and this permission notice shall be included in
// all copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
//
// \brief Tiny printf, sprintf and (v)snprintf implementation, optimized for speed on
// embedded systems with a very limited resources. These routines are thread
// safe and reentrant!
// Use this instead of the bloated standard/newlib printf cause these use
// malloc for printf (and may not be thread safe).
//
///////////////////////////////////////////////////////////////////////////////


Xmodem, CRC16 CCITT (BSD-3-Clause License)
------------------------------------------
/*
* Copyright 2001-2021 Georges Menie (www.menie.org)
* All rights reserved.
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* * Neither the name of the University of California, Berkeley nor the
* names of its contributors may be used to endorse or promote products
* derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS"" AND ANY
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
* DISCLAIMED. IN NO EVENT SHALL THE REGENTS AND CONTRIBUTORS BE LIABLE FOR ANY
* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/

mbedtls (Apache-2.0 License)
----------------------------
/*
* Copyright (C) 2006-2015, 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.
*/

CMSIS ARM and DSP (Apache-2.0 License)
--------------------------------------
/*
* Copyright (c) 2009-2019 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
*
* 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.
*/


Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/

TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION

1. Definitions.

"License" shall mean the terms and conditions for use, reproduction,
and distribution as defined by Sections 1 through 9 of this document.

"Licensor" shall mean the copyright owner or entity authorized by
the copyright owner that is granting the License.

"Legal Entity" shall mean the union of the acting entity and all
other entities that control, are controlled by, or are under common
control with that entity. For the purposes of this definition,
"control" means (i) the power, direct or indirect, to cause the
direction or management of such entity, whether by contract or
otherwise, or (ii) ownership of fifty percent (50%) or more of the
outstanding shares, or (iii) beneficial ownership of such entity.

"You" (or "Your") shall mean an individual or Legal Entity
exercising permissions granted by this License.

"Source" form shall mean the preferred form for making modifications,
including but not limited to software source code, documentation
source, and configuration files.

"Object" form shall mean any form resulting from mechanical
transformation or translation of a Source form, including but
not limited to compiled object code, generated documentation,
and conversions to other media types.

"Work" shall mean the work of authorship, whether in Source or
Object form, made available under the License, as indicated by a
copyright notice that is included in or attached to the work
(an example is provided in the Appendix below).

"Derivative Works" shall mean any work, whether in Source or Object
form, that is based on (or derived from) the Work and for which the
editorial revisions, annotations, elaborations, or other modifications
represent, as a whole, an original work of authorship. For the purposes
of this License, Derivative Works shall not include works that remain
separable from, or merely link (or bind by name) to the interfaces of,
the Work and Derivative Works thereof.

"Contribution" shall mean any work of authorship, including
the original version of the Work and any modifications or additions
to that Work or Derivative Works thereof, that is intentionally
submitted to Licensor for inclusion in the Work by the copyright owner
or by an individual or Legal Entity authorized to submit on behalf of
the copyright owner. For the purposes of this definition, "submitted"
means any form of electronic, verbal, or written communication sent
to the Licensor or its representatives, including but not limited to
communication on electronic mailing lists, source code control systems,
and issue tracking systems that are managed by, or on behalf of, the
Licensor for the purpose of discussing and improving the Work, but
excluding communication that is conspicuously marked or otherwise
designated in writing by the copyright owner as "Not a Contribution."

"Contributor" shall mean Licensor and any individual or Legal Entity
on behalf of whom a Contribution has been received by Licensor and
subsequently incorporated within the Work.

2. Grant of Copyright License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
copyright license to reproduce, prepare Derivative Works of,
publicly display, publicly perform, sublicense, and distribute the
Work and such Derivative Works in Source or Object form.

3. Grant of Patent License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
(except as stated in this section) patent license to make, have made,
use, offer to sell, sell, import, and otherwise transfer the Work,
where such license applies only to those patent claims licensable
by such Contributor that are necessarily infringed by their
Contribution(s) alone or by combination of their Contribution(s)
with the Work to which such Contribution(s) was submitted. If You
institute patent litigation against any entity (including a
cross-claim or counterclaim in a lawsuit) alleging that the Work
or a Contribution incorporated within the Work constitutes direct
or contributory patent infringement, then any patent licenses
granted to You under this License for that Work shall terminate
as of the date such litigation is filed.

4. Redistribution. You may reproduce and distribute copies of the
Work or Derivative Works thereof in any medium, with or without
modifications, and in Source or Object form, provided that You
meet the following conditions:

(a) You must give any other recipients of the Work or
Derivative Works a copy of this License; and

(b) You must cause any modified files to carry prominent notices
stating that You changed the files; and

(c) You must retain, in the Source form of any Derivative Works
that You distribute, all copyright, patent, trademark, and
attribution notices from the Source form of the Work,
excluding those notices that do not pertain to any part of
the Derivative Works; and

(d) If the Work includes a "NOTICE" text file as part of its
distribution, then any Derivative Works that You distribute must
include a readable copy of the attribution notices contained
within such NOTICE file, excluding those notices that do not
pertain to any part of the Derivative Works, in at least one
of the following places: within a NOTICE text file distributed
as part of the Derivative Works; within the Source form or
documentation, if provided along with the Derivative Works; or,
within a display generated by the Derivative Works, if and
wherever such third-party notices normally appear. The contents
of the NOTICE file are for informational purposes only and
do not modify the License. You may add Your own attribution
notices within Derivative Works that You distribute, alongside
or as an addendum to the NOTICE text from the Work, provided
that such additional attribution notices cannot be construed
as modifying the License.

You may add Your own copyright statement to Your modifications and
may provide additional or different license terms and conditions
for use, reproduction, or distribution of Your modifications, or
for any such Derivative Works as a whole, provided Your use,
reproduction, and distribution of the Work otherwise complies with
the conditions stated in this License.

5. Submission of Contributions. Unless You explicitly state otherwise,
any Contribution intentionally submitted for inclusion in the Work
by You to the Licensor shall be under the terms and conditions of
this License, without any additional terms or conditions.
Notwithstanding the above, nothing herein shall supersede or modify
the terms of any separate license agreement you may have executed
with Licensor regarding such Contributions.

6. Trademarks. This License does not grant permission to use the trade
names, trademarks, service marks, or product names of the Licensor,
except as required for reasonable and customary use in describing the
origin of the Work and reproducing the content of the NOTICE file.

7. Disclaimer of Warranty. Unless required by applicable law or
agreed to in writing, Licensor provides the Work (and each
Contributor provides its Contributions) on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied, including, without limitation, any warranties or conditions
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
PARTICULAR PURPOSE. You are solely responsible for determining the
appropriateness of using or redistributing the Work and assume any
risks associated with Your exercise of permissions under this License.

8. Limitation of Liability. In no event and under no legal theory,
whether in tort (including negligence), contract, or otherwise,
unless required by applicable law (such as deliberate and grossly
negligent acts) or agreed to in writing, shall any Contributor be
liable to You for damages, including any direct, indirect, special,
incidental, or consequential damages of any character arising as a
result of this License or out of the use or inability to use the
Work (including but not limited to damages for loss of goodwill,
work stoppage, computer failure or malfunction, or any and all
other commercial damages or losses), even if such Contributor
has been advised of the possibility of such damages.

9. Accepting Warranty or Additional Liability. While redistributing
the Work or Derivative Works thereof, You may choose to offer,
and charge a fee for, acceptance of support, warranty, indemnity,
or other liability obligations and/or rights consistent with this
License. However, in accepting such obligations, You may act only
on Your own behalf and on Your sole responsibility, not on behalf
of any other Contributor, and only if You agree to indemnify,
defend, and hold each Contributor harmless for any liability
incurred by, or claims asserted against, such Contributor by reason
of your accepting any such warranty or additional liability.

END OF TERMS AND CONDITIONS

APPENDIX: How to apply the Apache License to your work.

To apply the Apache License to your work, attach the following
boilerplate notice, with the fields enclosed by brackets "[]"
replaced with your own identifying information. (Don"t include
the brackets!) The text should be enclosed in the appropriate
comment syntax for the file format. We also recommend that a
file or class name and description of purpose be included on the
same "printed page" as the copyright notice for easier
identification within third-party archives.

Copyright [yyyy] [name of copyright owner]

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.

+
MCU+ SDK (BSD-3-Clause License)
-------------------------------
/*
* Copyright (C) 2022 Texas Instruments Incorporated
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the
* distribution.
*
* Neither the name of Texas Instruments Incorporated nor the names of
* its contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/


TIFS, RM, PM for DMSC (TI TEXT FILE License)
------------------------------------------------------------------
Copyright (C) 2017-2023 Texas Instruments Incorporated

All rights reserved not granted herein.

Limited License.

Texas Instruments Incorporated grants a world-wide, royalty-free, non-exclusive license under copyrights and patents it now or hereafter owns or controls to make, have made, use, import, offer to sell and sell ("Utilize") this software subject to the terms herein. With respect to the foregoing patent license, such license is granted solely to the extent that any such patent is necessary to Utilize the software alone. The patent license shall not apply to any combinations which include this software, other than combinations with devices manufactured by or for TI ("TI Devices"). No hardware patent is licensed hereunder.

Redistributions must preserve existing copyright notices and reproduce this license (including the above copyright notice and the disclaimer and (if applicable) source code license limitations below) in the documentation and/or other materials provided with the distribution

Redistribution and use in binary form, without modification, are permitted provided that the following conditions are met:

* No reverse engineering, decompilation, or disassembly of this software is permitted with respect to any software provided in binary form.

* any redistribution and use are licensed by TI for use only with TI Devices.

* Nothing shall obligate TI to provide you with source code for the software licensed and provided to you in object code.

If software source code is provided to you, modification and redistribution of the source code are permitted provided that the following conditions are met:

* any redistribution and use of the source code, including any resulting derivative works, are licensed by TI for use only with TI Devices.

* any redistribution and use of any object code compiled from the source code and any resulting derivative works, are licensed by TI for use only with TI Devices.

Neither the name of Texas Instruments Incorporated nor the names of its suppliers may be used to endorse or promote products derived from this software without specific prior written permission.

DISCLAIMER.

THIS SOFTWARE IS PROVIDED BY TI AND TI"S LICENSORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL TI AND TI"S LICENSORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

ENET TSN Stack
---------------------------------------------------------------------
Copyright (C) 2023 Texas Instruments Incorporated
Copyright (c) 2023 Excelfore Corporation (https://excelfore.com)

All rights reserved not granted herein.

Limited License.

Texas Instruments Incorporated grants a world-wide, royalty-free, non-exclusive license under copyrights and patents it now or hereafter owns or controls to make, have made, use, import, offer to sell and sell ("Utilize") this software subject to the terms herein. With respect to the foregoing patent license, such license is granted solely to the extent that any such patent is necessary to Utilize the software alone. The patent license shall not apply to any combinations which include this software, other than combinations with devices manufactured by or for TI ("TI Devices"). No hardware patent is licensed hereunder.

Redistributions must preserve existing copyright notices and reproduce this license (including the above copyright notice and the disclaimer and (if applicable) source code license limitations below) in the documentation and/or other materials provided with the distribution

Redistribution and use in binary form, without modification, are permitted provided that the following conditions are met:

* No reverse engineering, decompilation, or disassembly of this software is permitted with respect to any software provided in binary form.

* any redistribution and use are licensed by TI for use only with TI Devices.

* Nothing shall obligate TI to provide you with source code for the software licensed and provided to you in object code.

If software source code is provided to you, modification and redistribution of the source code are permitted provided that the following conditions are met:

* any redistribution and use of the source code, including any resulting derivative works, are licensed by TI for use only with TI Devices.

* any redistribution and use of any object code compiled from the source code and any resulting derivative works, are licensed by TI for use only with TI Devices.

Neither the name of Texas Instruments Incorporated nor the names of its suppliers may be used to endorse or promote products derived from this software without specific prior written permission.

DISCLAIMER.

THIS SOFTWARE IS PROVIDED BY TI AND TI"S LICENSORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL TI AND TI"S LICENSORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.


Cadence Design Systems DDR and USB Core Drivers (BSD-3-Clause License)
----------------------------------------------------------------------
/*
* Copyright (C) 2012-2020 Cadence Design Systems, Inc.
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* 3. Neither the name of the copyright holder nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE.
*/


FreeRTOS Kernel, FreeRTOS Heap (MIT License)
--------------------------------------------
/*
* FreeRTOS Kernel V10.4.3
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of
* this software and associated documentation files (the "Software"), to deal in
* the Software without restriction, including without limitation the rights to
* use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
* the Software, and to permit persons to whom the Software is furnished to do so,
* subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
* FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
* COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*
* https://www.FreeRTOS.org
* https://github.com/FreeRTOS
*
*/


FreeRTOS POSIX (MIT License)
----------------------------
/*
* Amazon FreeRTOS POSIX V1.1.0
* Copyright (C) 2019 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of
* this software and associated documentation files (the "Software"), to deal in
* the Software without restriction, including without limitation the rights to
* use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
* the Software, and to permit persons to whom the Software is furnished to do so,
* subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
* FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
* COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*
* http://aws.amazon.com/freertos
* http://www.FreeRTOS.org
*/


FreeRTOS Posix Demo (MIT License)
---------------------------------
/*
* FreeRTOS POSIX Demo V1.0.0
* Copyright (C) 2017 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of
* this software and associated documentation files (the "Software"), to deal in
* the Software without restriction, including without limitation the rights to
* use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
* the Software, and to permit persons to whom the Software is furnished to do so,
* subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
* FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
* COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*
* http://aws.amazon.com/freertos
* http://www.FreeRTOS.org
*/


FreeRTOS FAT (MIT License)
--------------------------
/*
* FreeRTOS+FAT V2.3.3
* Copyright (C) 2021 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of
* this software and associated documentation files (the "Software"), to deal in
* the Software without restriction, including without limitation the rights to
* use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
* the Software, and to permit persons to whom the Software is furnished to do so,
* subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
* FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
* COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*
* https://www.FreeRTOS.org
* https://github.com/FreeRTOS
*
*/


LWIP (BSD-3-Clause License)
--------------------------------------------
/*
* Copyright (c) 2001, 2002 Swedish Institute of Computer Science.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
* 3. The name of the author may not be used to endorse or promote products
* derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS"" AND ANY EXPRESS OR IMPLIED
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
* SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
* OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
* IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
* OF SUCH DAMAGE.
*/

TinyUSB (MIT License)
---------------------
The MIT License (MIT)

Copyright (c) 2018, hathach (tinyusb.org)

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.


Tiny printf (MIT License)
-------------------------
///////////////////////////////////////////////////////////////////////////////
// \author (c) Marco Paland (info@paland.com)
// 2014-2019, PALANDesign Hannover, Germany
//
// \license The MIT License (MIT)
//
// Permission is hereby granted, free of charge, to any person obtaining a copy
// of this software and associated documentation files (the "Software"), to deal
// in the Software without restriction, including without limitation the rights
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
// copies of the Software, and to permit persons to whom the Software is
// furnished to do so, subject to the following conditions:
//
// The above copyright notice and this permission notice shall be included in
// all copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
//
// \brief Tiny printf, sprintf and (v)snprintf implementation, optimized for speed on
// embedded systems with a very limited resources. These routines are thread
// safe and reentrant!
// Use this instead of the bloated standard/newlib printf cause these use
// malloc for printf (and may not be thread safe).
//
///////////////////////////////////////////////////////////////////////////////


Xmodem, CRC16 CCITT (BSD-3-Clause License)
------------------------------------------
/*
* Copyright 2001-2021 Georges Menie (www.menie.org)
* All rights reserved.
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* * Neither the name of the University of California, Berkeley nor the
* names of its contributors may be used to endorse or promote products
* derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS"" AND ANY
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
* DISCLAIMED. IN NO EVENT SHALL THE REGENTS AND CONTRIBUTORS BE LIABLE FOR ANY
* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/

mbedtls (Apache-2.0 License)
----------------------------
/*
* Copyright (C) 2006-2015, 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.
*/

CMSIS ARM and DSP (Apache-2.0 License)
--------------------------------------
/*
* Copyright (c) 2009-2019 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
*
* 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.
*/


Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/

TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION

1. Definitions.

"License" shall mean the terms and conditions for use, reproduction,
and distribution as defined by Sections 1 through 9 of this document.

"Licensor" shall mean the copyright owner or entity authorized by
the copyright owner that is granting the License.

"Legal Entity" shall mean the union of the acting entity and all
other entities that control, are controlled by, or are under common
control with that entity. For the purposes of this definition,
"control" means (i) the power, direct or indirect, to cause the
direction or management of such entity, whether by contract or
otherwise, or (ii) ownership of fifty percent (50%) or more of the
outstanding shares, or (iii) beneficial ownership of such entity.

"You" (or "Your") shall mean an individual or Legal Entity
exercising permissions granted by this License.

"Source" form shall mean the preferred form for making modifications,
including but not limited to software source code, documentation
source, and configuration files.

"Object" form shall mean any form resulting from mechanical
transformation or translation of a Source form, including but
not limited to compiled object code, generated documentation,
and conversions to other media types.

"Work" shall mean the work of authorship, whether in Source or
Object form, made available under the License, as indicated by a
copyright notice that is included in or attached to the work
(an example is provided in the Appendix below).

"Derivative Works" shall mean any work, whether in Source or Object
form, that is based on (or derived from) the Work and for which the
editorial revisions, annotations, elaborations, or other modifications
represent, as a whole, an original work of authorship. For the purposes
of this License, Derivative Works shall not include works that remain
separable from, or merely link (or bind by name) to the interfaces of,
the Work and Derivative Works thereof.

"Contribution" shall mean any work of authorship, including
the original version of the Work and any modifications or additions
to that Work or Derivative Works thereof, that is intentionally
submitted to Licensor for inclusion in the Work by the copyright owner
or by an individual or Legal Entity authorized to submit on behalf of
the copyright owner. For the purposes of this definition, "submitted"
means any form of electronic, verbal, or written communication sent
to the Licensor or its representatives, including but not limited to
communication on electronic mailing lists, source code control systems,
and issue tracking systems that are managed by, or on behalf of, the
Licensor for the purpose of discussing and improving the Work, but
excluding communication that is conspicuously marked or otherwise
designated in writing by the copyright owner as "Not a Contribution."

"Contributor" shall mean Licensor and any individual or Legal Entity
on behalf of whom a Contribution has been received by Licensor and
subsequently incorporated within the Work.

2. Grant of Copyright License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
copyright license to reproduce, prepare Derivative Works of,
publicly display, publicly perform, sublicense, and distribute the
Work and such Derivative Works in Source or Object form.

3. Grant of Patent License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
(except as stated in this section) patent license to make, have made,
use, offer to sell, sell, import, and otherwise transfer the Work,
where such license applies only to those patent claims licensable
by such Contributor that are necessarily infringed by their
Contribution(s) alone or by combination of their Contribution(s)
with the Work to which such Contribution(s) was submitted. If You
institute patent litigation against any entity (including a
cross-claim or counterclaim in a lawsuit) alleging that the Work
or a Contribution incorporated within the Work constitutes direct
or contributory patent infringement, then any patent licenses
granted to You under this License for that Work shall terminate
as of the date such litigation is filed.

4. Redistribution. You may reproduce and distribute copies of the
Work or Derivative Works thereof in any medium, with or without
modifications, and in Source or Object form, provided that You
meet the following conditions:

(a) You must give any other recipients of the Work or
Derivative Works a copy of this License; and

(b) You must cause any modified files to carry prominent notices
stating that You changed the files; and

(c) You must retain, in the Source form of any Derivative Works
that You distribute, all copyright, patent, trademark, and
attribution notices from the Source form of the Work,
excluding those notices that do not pertain to any part of
the Derivative Works; and

(d) If the Work includes a "NOTICE" text file as part of its
distribution, then any Derivative Works that You distribute must
include a readable copy of the attribution notices contained
within such NOTICE file, excluding those notices that do not
pertain to any part of the Derivative Works, in at least one
of the following places: within a NOTICE text file distributed
as part of the Derivative Works; within the Source form or
documentation, if provided along with the Derivative Works; or,
within a display generated by the Derivative Works, if and
wherever such third-party notices normally appear. The contents
of the NOTICE file are for informational purposes only and
do not modify the License. You may add Your own attribution
notices within Derivative Works that You distribute, alongside
or as an addendum to the NOTICE text from the Work, provided
that such additional attribution notices cannot be construed
as modifying the License.

You may add Your own copyright statement to Your modifications and
may provide additional or different license terms and conditions
for use, reproduction, or distribution of Your modifications, or
for any such Derivative Works as a whole, provided Your use,
reproduction, and distribution of the Work otherwise complies with
the conditions stated in this License.

5. Submission of Contributions. Unless You explicitly state otherwise,
any Contribution intentionally submitted for inclusion in the Work
by You to the Licensor shall be under the terms and conditions of
this License, without any additional terms or conditions.
Notwithstanding the above, nothing herein shall supersede or modify
the terms of any separate license agreement you may have executed
with Licensor regarding such Contributions.

6. Trademarks. This License does not grant permission to use the trade
names, trademarks, service marks, or product names of the Licensor,
except as required for reasonable and customary use in describing the
origin of the Work and reproducing the content of the NOTICE file.

7. Disclaimer of Warranty. Unless required by applicable law or
agreed to in writing, Licensor provides the Work (and each
Contributor provides its Contributions) on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied, including, without limitation, any warranties or conditions
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
PARTICULAR PURPOSE. You are solely responsible for determining the
appropriateness of using or redistributing the Work and assume any
risks associated with Your exercise of permissions under this License.

8. Limitation of Liability. In no event and under no legal theory,
whether in tort (including negligence), contract, or otherwise,
unless required by applicable law (such as deliberate and grossly
negligent acts) or agreed to in writing, shall any Contributor be
liable to You for damages, including any direct, indirect, special,
incidental, or consequential damages of any character arising as a
result of this License or out of the use or inability to use the
Work (including but not limited to damages for loss of goodwill,
work stoppage, computer failure or malfunction, or any and all
other commercial damages or losses), even if such Contributor
has been advised of the possibility of such damages.

9. Accepting Warranty or Additional Liability. While redistributing
the Work or Derivative Works thereof, You may choose to offer,
and charge a fee for, acceptance of support, warranty, indemnity,
or other liability obligations and/or rights consistent with this
License. However, in accepting such obligations, You may act only
on Your own behalf and on Your sole responsibility, not on behalf
of any other Contributor, and only if You agree to indemnify,
defend, and hold each Contributor harmless for any liability
incurred by, or claims asserted against, such Contributor by reason
of your accepting any such warranty or additional liability.

END OF TERMS AND CONDITIONS

APPENDIX: How to apply the Apache License to your work.

To apply the Apache License to your work, attach the following
boilerplate notice, with the fields enclosed by brackets "[]"
replaced with your own identifying information. (Don"t include
the brackets!) The text should be enclosed in the appropriate
comment syntax for the file format. We also recommend that a
file or class name and description of purpose be included on the
same "printed page" as the copyright notice for easier
identification within third-party archives.

Copyright [yyyy] [name of copyright owner]

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.


Industrial Communications SDK AM243x Licenses


-
Industrial Communications SDK (BSD-3-Clause License)
-------------------------------
/*
* Copyright (C) 2023 Texas Instruments Incorporated
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the
* distribution.
*
* Neither the name of Texas Instruments Incorporated nor the names of
* its contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/


ICSS Firmware (TI TEXT FILE License)
------------------------------------------------------------------
Copyright (C) 2017-2023 Texas Instruments Incorporated

All rights reserved not granted herein.

Limited License.

Texas Instruments Incorporated grants a world-wide, royalty-free, non-exclusive license under copyrights and patents it now or hereafter owns or controls to make, have made, use, import, offer to sell and sell ("Utilize") this software subject to the terms herein. With respect to the foregoing patent license, such license is granted solely to the extent that any such patent is necessary to Utilize the software alone. The patent license shall not apply to any combinations which include this software, other than combinations with devices manufactured by or for TI ("TI Devices"). No hardware patent is licensed hereunder.

Redistributions must preserve existing copyright notices and reproduce this license (including the above copyright notice and the disclaimer and (if applicable) source code license limitations below) in the documentation and/or other materials provided with the distribution

Redistribution and use in binary form, without modification, are permitted provided that the following conditions are met:

* No reverse engineering, decompilation, or disassembly of this software is permitted with respect to any software provided in binary form.

* any redistribution and use are licensed by TI for use only with TI Devices.

* Nothing shall obligate TI to provide you with source code for the software licensed and provided to you in object code.

If software source code is provided to you, modification and redistribution of the source code are permitted provided that the following conditions are met:

* any redistribution and use of the source code, including any resulting derivative works, are licensed by TI for use only with TI Devices.

* any redistribution and use of any object code compiled from the source code and any resulting derivative works, are licensed by TI for use only with TI Devices.

Neither the name of Texas Instruments Incorporated nor the names of its suppliers may be used to endorse or promote products derived from this software without specific prior written permission.

DISCLAIMER.

THIS SOFTWARE IS PROVIDED BY TI AND TI"S LICENSORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL TI AND TI"S LICENSORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

KUNBUS Sources (BSD-3-Clause License)
-------------------------------------
/*
* Copyright (c) 2020-2023, Kunbus GmbH
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice, this
* list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* 3. Neither the name of the copyright holder nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
* DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
*/

Networking LwIP (enet) Examples (BSD License)
---------------------------------------------
/*
* Copyright (c) 2001-2003 Swedish Institute of Computer Science.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
* 3. The name of the author may not be used to endorse or promote products
* derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS"" AND ANY EXPRESS OR IMPLIED
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
* SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
* OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
* IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
* OF SUCH DAMAGE.
*
*/

/*
* Copyright (c) 2001,2002 Florian Schulze.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* 3. Neither the name of the authors nor the names of the contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE AUTHORS AND CONTRIBUTORS ``AS IS"" AND
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
*/

+
Industrial Communications SDK (BSD-3-Clause License)
-------------------------------
/*
* Copyright (C) 2023 Texas Instruments Incorporated
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the
* distribution.
*
* Neither the name of Texas Instruments Incorporated nor the names of
* its contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/


ICSS Firmware (TI TEXT FILE License)
------------------------------------------------------------------
Copyright (C) 2017-2023 Texas Instruments Incorporated

All rights reserved not granted herein.

Limited License.

Texas Instruments Incorporated grants a world-wide, royalty-free, non-exclusive license under copyrights and patents it now or hereafter owns or controls to make, have made, use, import, offer to sell and sell ("Utilize") this software subject to the terms herein. With respect to the foregoing patent license, such license is granted solely to the extent that any such patent is necessary to Utilize the software alone. The patent license shall not apply to any combinations which include this software, other than combinations with devices manufactured by or for TI ("TI Devices"). No hardware patent is licensed hereunder.

Redistributions must preserve existing copyright notices and reproduce this license (including the above copyright notice and the disclaimer and (if applicable) source code license limitations below) in the documentation and/or other materials provided with the distribution

Redistribution and use in binary form, without modification, are permitted provided that the following conditions are met:

* No reverse engineering, decompilation, or disassembly of this software is permitted with respect to any software provided in binary form.

* any redistribution and use are licensed by TI for use only with TI Devices.

* Nothing shall obligate TI to provide you with source code for the software licensed and provided to you in object code.

If software source code is provided to you, modification and redistribution of the source code are permitted provided that the following conditions are met:

* any redistribution and use of the source code, including any resulting derivative works, are licensed by TI for use only with TI Devices.

* any redistribution and use of any object code compiled from the source code and any resulting derivative works, are licensed by TI for use only with TI Devices.

Neither the name of Texas Instruments Incorporated nor the names of its suppliers may be used to endorse or promote products derived from this software without specific prior written permission.

DISCLAIMER.

THIS SOFTWARE IS PROVIDED BY TI AND TI"S LICENSORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL TI AND TI"S LICENSORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

KUNBUS Sources (BSD-3-Clause License)
-------------------------------------
/*
* Copyright (c) 2020-2023, Kunbus GmbH
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice, this
* list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* 3. Neither the name of the copyright holder nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
* DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
*/

diff --git a/docs/motor_control_sdk_am263x_manifest.html b/docs/motor_control_sdk_am263x_manifest.html index 9fe9869..2598222 100644 --- a/docs/motor_control_sdk_am263x_manifest.html +++ b/docs/motor_control_sdk_am263x_manifest.html @@ -34,11 +34,11 @@

-2023-05-09 +2023-21-12

-Manifest ID - SRAS00010226 +Manifest ID - SRAS00010701

@@ -251,7 +251,7 @@ for such Software.

Motor Control SDK - 09.00.00 + 09.01.00 BSD-3-Clause @@ -282,6 +282,97 @@ for such Software.

+ + + +

+ Industrial Communications SDK AM263x Manifest Table +

+ +

+ See the Legend above for a description of these columns. +

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Software NameVersionLicense TypeDelivered AsModified by TI
+ Industrial Communications SDK + + 09.01.00 + + BSD-3-Clause + + Source and Binary + + N/A + Location + [as installed]/* +
Obtained from + Texas Instruments +
+ ICSS Firmware for EtherCAT Slave + + 5.5.x + + TI Text File + + Binary as a C array in header file + + N/A + Location + [as_installed]/source/industrial_comms/ethercat_slave/icss_fwhal/firmware/* +
Obtained from + Texas Instruments +
+ +

+

+

+ + + @@ -312,7 +403,7 @@ for such Software.

MCU+ SDK - - - - - - - - - - - - - - - -
- 09.00.00 + 09.01.00 BSD-3-Clause @@ -432,7 +523,7 @@ for such Software.

LWIP
- 2.1.2 + 2.2.0 BSD-3-Clause @@ -456,36 +547,6 @@ for such Software.

- LWIP Contrib - - 2.1.0 - - BSD-3-Clause - - Source - - No - Location - [as_installed]/source/networking/lwip/lwip-contrib/* -
Obtained from - git://git.savannah.gnu.org/lwip/lwip-contrib.git -
@@ -582,7 +643,7 @@ for such Software.

TIFS Firmware
- 9.0.0 + 9.1.0 TI Text File @@ -642,97 +703,6 @@ for such Software.

- - - - -

- Industrial Communications SDK AM263x Manifest Table -

- -

- See the Legend above for a description of these columns. -

- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Software NameVersionLicense TypeDelivered AsModified by TI
- Industrial Communications SDK - - 09.00.00 - - BSD-3-Clause - - Source and Binary - - N/A - Location - [as installed]/* -
Obtained from - Texas Instruments -
- ICSS Firmware for EtherCAT Slave - - 6.5.x - - TI Text File - - Binary as a C array in header file - - N/A - Location - [as_installed]/source/industrial_comms/ethercat_slave/icss_fwhal/firmware/* -
Obtained from - Texas Instruments -
- -

-

-

- -

Credits

@@ -748,18 +718,18 @@ for such Software.


Motor Control SDK (BSD-3-Clause License)
-------------------------------
/*
* Copyright (C) 2021-23 Texas Instruments Incorporated
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the
* distribution.
*
* Neither the name of Texas Instruments Incorporated nor the names of
* its contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/

-
-

- MCU PLUS SDK AM263x Licenses -


-
MCU+ SDK (BSD-3-Clause License)
-------------------------------
/*
* Copyright (C) 2021 Texas Instruments Incorporated
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the
* distribution.
*
* Neither the name of Texas Instruments Incorporated nor the names of
* its contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/


FreeRTOS Kernel, FreeRTOS Heap (MIT License)
--------------------------------------------
/*
* FreeRTOS Kernel V10.4.3
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of
* this software and associated documentation files (the "Software"), to deal in
* the Software without restriction, including without limitation the rights to
* use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
* the Software, and to permit persons to whom the Software is furnished to do so,
* subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
* FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
* COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*
* https://www.FreeRTOS.org
* https://github.com/FreeRTOS
*
*/


FreeRTOS POSIX (MIT License)
----------------------------
/*
* Amazon FreeRTOS POSIX V1.1.0
* Copyright (C) 2019 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of
* this software and associated documentation files (the "Software"), to deal in
* the Software without restriction, including without limitation the rights to
* use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
* the Software, and to permit persons to whom the Software is furnished to do so,
* subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
* FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
* COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*
* http://aws.amazon.com/freertos
* http://www.FreeRTOS.org
*/


FreeRTOS Posix Demo (MIT License)
---------------------------------
/*
* FreeRTOS POSIX Demo V1.0.0
* Copyright (C) 2017 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of
* this software and associated documentation files (the "Software"), to deal in
* the Software without restriction, including without limitation the rights to
* use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
* the Software, and to permit persons to whom the Software is furnished to do so,
* subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
* FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
* COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*
* http://aws.amazon.com/freertos
* http://www.FreeRTOS.org
*/


LWIP and LWIP Contrib (BSD-3-Clause License)
--------------------------------------------
/*
* Copyright (c) 2001, 2002 Swedish Institute of Computer Science.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
* 3. The name of the author may not be used to endorse or promote products
* derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS"" AND ANY EXPRESS OR IMPLIED
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
* SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
* OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
* IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
* OF SUCH DAMAGE.
*/
Tiny printf (MIT License)
-------------------------
///////////////////////////////////////////////////////////////////////////////
// \author (c) Marco Paland (info@paland.com)
// 2014-2019, PALANDesign Hannover, Germany
//
// \license The MIT License (MIT)
//
// Permission is hereby granted, free of charge, to any person obtaining a copy
// of this software and associated documentation files (the "Software"), to deal
// in the Software without restriction, including without limitation the rights
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
// copies of the Software, and to permit persons to whom the Software is
// furnished to do so, subject to the following conditions:
//
// The above copyright notice and this permission notice shall be included in
// all copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
//
// \brief Tiny printf, sprintf and (v)snprintf implementation, optimized for speed on
// embedded systems with a very limited resources. These routines are thread
// safe and reentrant!
// Use this instead of the bloated standard/newlib printf cause these use
// malloc for printf (and may not be thread safe).
//
///////////////////////////////////////////////////////////////////////////////


Xmodem, CRC16 CCITT (BSD-3-Clause License)
------------------------------------------
/*
* Copyright 2001-2021 Georges Menie (www.menie.org)
* All rights reserved.
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* * Neither the name of the University of California, Berkeley nor the
* names of its contributors may be used to endorse or promote products
* derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS"" AND ANY
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
* DISCLAIMED. IN NO EVENT SHALL THE REGENTS AND CONTRIBUTORS BE LIABLE FOR ANY
* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/

TIFS Firmware (TI TEXT FILE License)
------------------------------------------------------------------
Copyright (C) 2022 Texas Instruments Incorporated

All rights reserved not granted herein.

Limited License.

Texas Instruments Incorporated grants a world-wide, royalty-free, non-exclusive license under copyrights and patents it now or hereafter owns or controls to make, have made, use, import, offer to sell and sell ("Utilize") this software subject to the terms herein. With respect to the foregoing patent license, such license is granted solely to the extent that any such patent is necessary to Utilize the software alone. The patent license shall not apply to any combinations which include this software, other than combinations with devices manufactured by or for TI ("TI Devices"). No hardware patent is licensed hereunder.

Redistributions must preserve existing copyright notices and reproduce this license (including the above copyright notice and the disclaimer and (if applicable) source code license limitations below) in the documentation and/or other materials provided with the distribution

Redistribution and use in binary form, without modification, are permitted provided that the following conditions are met:

* No reverse engineering, decompilation, or disassembly of this software is permitted with respect to any software provided in binary form.

* any redistribution and use are licensed by TI for use only with TI Devices.

* Nothing shall obligate TI to provide you with source code for the software licensed and provided to you in object code.

If software source code is provided to you, modification and redistribution of the source code are permitted provided that the following conditions are met:

* any redistribution and use of the source code, including any resulting derivative works, are licensed by TI for use only with TI Devices.

* any redistribution and use of any object code compiled from the source code and any resulting derivative works, are licensed by TI for use only with TI Devices.

Neither the name of Texas Instruments Incorporated nor the names of its suppliers may be used to endorse or promote products derived from this software without specific prior written permission.

DISCLAIMER.

THIS SOFTWARE IS PROVIDED BY TI AND TI"S LICENSORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL TI AND TI"S LICENSORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.


mbedtls (Apache-2.0 License)
----------------------------
/*
* Copyright (C) 2006-2015, 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.
*/

Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/

TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION

1. Definitions.

"License" shall mean the terms and conditions for use, reproduction,
and distribution as defined by Sections 1 through 9 of this document.

"Licensor" shall mean the copyright owner or entity authorized by
the copyright owner that is granting the License.

"Legal Entity" shall mean the union of the acting entity and all
other entities that control, are controlled by, or are under common
control with that entity. For the purposes of this definition,
"control" means (i) the power, direct or indirect, to cause the
direction or management of such entity, whether by contract or
otherwise, or (ii) ownership of fifty percent (50%) or more of the
outstanding shares, or (iii) beneficial ownership of such entity.

"You" (or "Your") shall mean an individual or Legal Entity
exercising permissions granted by this License.

"Source" form shall mean the preferred form for making modifications,
including but not limited to software source code, documentation
source, and configuration files.

"Object" form shall mean any form resulting from mechanical
transformation or translation of a Source form, including but
not limited to compiled object code, generated documentation,
and conversions to other media types.

"Work" shall mean the work of authorship, whether in Source or
Object form, made available under the License, as indicated by a
copyright notice that is included in or attached to the work
(an example is provided in the Appendix below).

"Derivative Works" shall mean any work, whether in Source or Object
form, that is based on (or derived from) the Work and for which the
editorial revisions, annotations, elaborations, or other modifications
represent, as a whole, an original work of authorship. For the purposes
of this License, Derivative Works shall not include works that remain
separable from, or merely link (or bind by name) to the interfaces of,
the Work and Derivative Works thereof.

"Contribution" shall mean any work of authorship, including
the original version of the Work and any modifications or additions
to that Work or Derivative Works thereof, that is intentionally
submitted to Licensor for inclusion in the Work by the copyright owner
or by an individual or Legal Entity authorized to submit on behalf of
the copyright owner. For the purposes of this definition, "submitted"
means any form of electronic, verbal, or written communication sent
to the Licensor or its representatives, including but not limited to
communication on electronic mailing lists, source code control systems,
and issue tracking systems that are managed by, or on behalf of, the
Licensor for the purpose of discussing and improving the Work, but
excluding communication that is conspicuously marked or otherwise
designated in writing by the copyright owner as "Not a Contribution."

"Contributor" shall mean Licensor and any individual or Legal Entity
on behalf of whom a Contribution has been received by Licensor and
subsequently incorporated within the Work.

2. Grant of Copyright License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
copyright license to reproduce, prepare Derivative Works of,
publicly display, publicly perform, sublicense, and distribute the
Work and such Derivative Works in Source or Object form.

3. Grant of Patent License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
(except as stated in this section) patent license to make, have made,
use, offer to sell, sell, import, and otherwise transfer the Work,
where such license applies only to those patent claims licensable
by such Contributor that are necessarily infringed by their
Contribution(s) alone or by combination of their Contribution(s)
with the Work to which such Contribution(s) was submitted. If You
institute patent litigation against any entity (including a
cross-claim or counterclaim in a lawsuit) alleging that the Work
or a Contribution incorporated within the Work constitutes direct
or contributory patent infringement, then any patent licenses
granted to You under this License for that Work shall terminate
as of the date such litigation is filed.

4. Redistribution. You may reproduce and distribute copies of the
Work or Derivative Works thereof in any medium, with or without
modifications, and in Source or Object form, provided that You
meet the following conditions:

(a) You must give any other recipients of the Work or
Derivative Works a copy of this License; and

(b) You must cause any modified files to carry prominent notices
stating that You changed the files; and

(c) You must retain, in the Source form of any Derivative Works
that You distribute, all copyright, patent, trademark, and
attribution notices from the Source form of the Work,
excluding those notices that do not pertain to any part of
the Derivative Works; and

(d) If the Work includes a "NOTICE" text file as part of its
distribution, then any Derivative Works that You distribute must
include a readable copy of the attribution notices contained
within such NOTICE file, excluding those notices that do not
pertain to any part of the Derivative Works, in at least one
of the following places: within a NOTICE text file distributed
as part of the Derivative Works; within the Source form or
documentation, if provided along with the Derivative Works; or,
within a display generated by the Derivative Works, if and
wherever such third-party notices normally appear. The contents
of the NOTICE file are for informational purposes only and
do not modify the License. You may add Your own attribution
notices within Derivative Works that You distribute, alongside
or as an addendum to the NOTICE text from the Work, provided
that such additional attribution notices cannot be construed
as modifying the License.

You may add Your own copyright statement to Your modifications and
may provide additional or different license terms and conditions
for use, reproduction, or distribution of Your modifications, or
for any such Derivative Works as a whole, provided Your use,
reproduction, and distribution of the Work otherwise complies with
the conditions stated in this License.

5. Submission of Contributions. Unless You explicitly state otherwise,
any Contribution intentionally submitted for inclusion in the Work
by You to the Licensor shall be under the terms and conditions of
this License, without any additional terms or conditions.
Notwithstanding the above, nothing herein shall supersede or modify
the terms of any separate license agreement you may have executed
with Licensor regarding such Contributions.

6. Trademarks. This License does not grant permission to use the trade
names, trademarks, service marks, or product names of the Licensor,
except as required for reasonable and customary use in describing the
origin of the Work and reproducing the content of the NOTICE file.

7. Disclaimer of Warranty. Unless required by applicable law or
agreed to in writing, Licensor provides the Work (and each
Contributor provides its Contributions) on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied, including, without limitation, any warranties or conditions
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
PARTICULAR PURPOSE. You are solely responsible for determining the
appropriateness of using or redistributing the Work and assume any
risks associated with Your exercise of permissions under this License.

8. Limitation of Liability. In no event and under no legal theory,
whether in tort (including negligence), contract, or otherwise,
unless required by applicable law (such as deliberate and grossly
negligent acts) or agreed to in writing, shall any Contributor be
liable to You for damages, including any direct, indirect, special,
incidental, or consequential damages of any character arising as a
result of this License or out of the use or inability to use the
Work (including but not limited to damages for loss of goodwill,
work stoppage, computer failure or malfunction, or any and all
other commercial damages or losses), even if such Contributor
has been advised of the possibility of such damages.

9. Accepting Warranty or Additional Liability. While redistributing
the Work or Derivative Works thereof, You may choose to offer,
and charge a fee for, acceptance of support, warranty, indemnity,
or other liability obligations and/or rights consistent with this
License. However, in accepting such obligations, You may act only
on Your own behalf and on Your sole responsibility, not on behalf
of any other Contributor, and only if You agree to indemnify,
defend, and hold each Contributor harmless for any liability
incurred by, or claims asserted against, such Contributor by reason
of your accepting any such warranty or additional liability.

END OF TERMS AND CONDITIONS

APPENDIX: How to apply the Apache License to your work.

To apply the Apache License to your work, attach the following
boilerplate notice, with the fields enclosed by brackets "[]"
replaced with your own identifying information. (Don"t include
the brackets!) The text should be enclosed in the appropriate
comment syntax for the file format. We also recommend that a
file or class name and description of purpose be included on the
same "printed page" as the copyright notice for easier
identification within third-party archives.

Copyright [yyyy] [name of copyright owner]

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.

-

Industrial Communications SDK AM263x Licenses


Industrial Communications SDK (BSD-3-Clause License)
-------------------------------
/*
* Copyright (C) 2023 Texas Instruments Incorporated
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the
* distribution.
*
* Neither the name of Texas Instruments Incorporated nor the names of
* its contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/


ICSS Firmware (TI TEXT FILE License)
------------------------------------------------------------------
Copyright (C) 2017-2023 Texas Instruments Incorporated

All rights reserved not granted herein.

Limited License.

Texas Instruments Incorporated grants a world-wide, royalty-free, non-exclusive license under copyrights and patents it now or hereafter owns or controls to make, have made, use, import, offer to sell and sell ("Utilize") this software subject to the terms herein. With respect to the foregoing patent license, such license is granted solely to the extent that any such patent is necessary to Utilize the software alone. The patent license shall not apply to any combinations which include this software, other than combinations with devices manufactured by or for TI ("TI Devices"). No hardware patent is licensed hereunder.

Redistributions must preserve existing copyright notices and reproduce this license (including the above copyright notice and the disclaimer and (if applicable) source code license limitations below) in the documentation and/or other materials provided with the distribution

Redistribution and use in binary form, without modification, are permitted provided that the following conditions are met:

* No reverse engineering, decompilation, or disassembly of this software is permitted with respect to any software provided in binary form.

* any redistribution and use are licensed by TI for use only with TI Devices.

* Nothing shall obligate TI to provide you with source code for the software licensed and provided to you in object code.

If software source code is provided to you, modification and redistribution of the source code are permitted provided that the following conditions are met:

* any redistribution and use of the source code, including any resulting derivative works, are licensed by TI for use only with TI Devices.

* any redistribution and use of any object code compiled from the source code and any resulting derivative works, are licensed by TI for use only with TI Devices.

Neither the name of Texas Instruments Incorporated nor the names of its suppliers may be used to endorse or promote products derived from this software without specific prior written permission.

DISCLAIMER.

THIS SOFTWARE IS PROVIDED BY TI AND TI"S LICENSORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL TI AND TI"S LICENSORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

+
+

+ MCU PLUS SDK AM263x Licenses +


+
MCU+ SDK (BSD-3-Clause License)
-------------------------------
/*
* Copyright (C) 2021 Texas Instruments Incorporated
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the
* distribution.
*
* Neither the name of Texas Instruments Incorporated nor the names of
* its contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/


FreeRTOS Kernel, FreeRTOS Heap (MIT License)
--------------------------------------------
/*
* FreeRTOS Kernel V10.4.3
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of
* this software and associated documentation files (the "Software"), to deal in
* the Software without restriction, including without limitation the rights to
* use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
* the Software, and to permit persons to whom the Software is furnished to do so,
* subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
* FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
* COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*
* https://www.FreeRTOS.org
* https://github.com/FreeRTOS
*
*/


FreeRTOS POSIX (MIT License)
----------------------------
/*
* Amazon FreeRTOS POSIX V1.1.0
* Copyright (C) 2019 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of
* this software and associated documentation files (the "Software"), to deal in
* the Software without restriction, including without limitation the rights to
* use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
* the Software, and to permit persons to whom the Software is furnished to do so,
* subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
* FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
* COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*
* http://aws.amazon.com/freertos
* http://www.FreeRTOS.org
*/


FreeRTOS Posix Demo (MIT License)
---------------------------------
/*
* FreeRTOS POSIX Demo V1.0.0
* Copyright (C) 2017 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of
* this software and associated documentation files (the "Software"), to deal in
* the Software without restriction, including without limitation the rights to
* use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
* the Software, and to permit persons to whom the Software is furnished to do so,
* subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
* FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
* COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*
* http://aws.amazon.com/freertos
* http://www.FreeRTOS.org
*/


LWIP (BSD-3-Clause License)
--------------------------------------------
/*
* Copyright (c) 2001, 2002 Swedish Institute of Computer Science.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
* 3. The name of the author may not be used to endorse or promote products
* derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS"" AND ANY EXPRESS OR IMPLIED
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
* SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
* OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
* IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
* OF SUCH DAMAGE.
*/
Tiny printf (MIT License)
-------------------------
///////////////////////////////////////////////////////////////////////////////
// \author (c) Marco Paland (info@paland.com)
// 2014-2019, PALANDesign Hannover, Germany
//
// \license The MIT License (MIT)
//
// Permission is hereby granted, free of charge, to any person obtaining a copy
// of this software and associated documentation files (the "Software"), to deal
// in the Software without restriction, including without limitation the rights
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
// copies of the Software, and to permit persons to whom the Software is
// furnished to do so, subject to the following conditions:
//
// The above copyright notice and this permission notice shall be included in
// all copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
//
// \brief Tiny printf, sprintf and (v)snprintf implementation, optimized for speed on
// embedded systems with a very limited resources. These routines are thread
// safe and reentrant!
// Use this instead of the bloated standard/newlib printf cause these use
// malloc for printf (and may not be thread safe).
//
///////////////////////////////////////////////////////////////////////////////


Xmodem, CRC16 CCITT (BSD-3-Clause License)
------------------------------------------
/*
* Copyright 2001-2021 Georges Menie (www.menie.org)
* All rights reserved.
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* * Neither the name of the University of California, Berkeley nor the
* names of its contributors may be used to endorse or promote products
* derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS"" AND ANY
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
* DISCLAIMED. IN NO EVENT SHALL THE REGENTS AND CONTRIBUTORS BE LIABLE FOR ANY
* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/

TIFS Firmware (TI TEXT FILE License)
------------------------------------------------------------------
Copyright (C) 2022 Texas Instruments Incorporated

All rights reserved not granted herein.

Limited License.

Texas Instruments Incorporated grants a world-wide, royalty-free, non-exclusive license under copyrights and patents it now or hereafter owns or controls to make, have made, use, import, offer to sell and sell ("Utilize") this software subject to the terms herein. With respect to the foregoing patent license, such license is granted solely to the extent that any such patent is necessary to Utilize the software alone. The patent license shall not apply to any combinations which include this software, other than combinations with devices manufactured by or for TI ("TI Devices"). No hardware patent is licensed hereunder.

Redistributions must preserve existing copyright notices and reproduce this license (including the above copyright notice and the disclaimer and (if applicable) source code license limitations below) in the documentation and/or other materials provided with the distribution

Redistribution and use in binary form, without modification, are permitted provided that the following conditions are met:

* No reverse engineering, decompilation, or disassembly of this software is permitted with respect to any software provided in binary form.

* any redistribution and use are licensed by TI for use only with TI Devices.

* Nothing shall obligate TI to provide you with source code for the software licensed and provided to you in object code.

If software source code is provided to you, modification and redistribution of the source code are permitted provided that the following conditions are met:

* any redistribution and use of the source code, including any resulting derivative works, are licensed by TI for use only with TI Devices.

* any redistribution and use of any object code compiled from the source code and any resulting derivative works, are licensed by TI for use only with TI Devices.

Neither the name of Texas Instruments Incorporated nor the names of its suppliers may be used to endorse or promote products derived from this software without specific prior written permission.

DISCLAIMER.

THIS SOFTWARE IS PROVIDED BY TI AND TI"S LICENSORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL TI AND TI"S LICENSORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.


mbedtls (Apache-2.0 License)
----------------------------
/*
* Copyright (C) 2006-2015, 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.
*/

Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/

TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION

1. Definitions.

"License" shall mean the terms and conditions for use, reproduction,
and distribution as defined by Sections 1 through 9 of this document.

"Licensor" shall mean the copyright owner or entity authorized by
the copyright owner that is granting the License.

"Legal Entity" shall mean the union of the acting entity and all
other entities that control, are controlled by, or are under common
control with that entity. For the purposes of this definition,
"control" means (i) the power, direct or indirect, to cause the
direction or management of such entity, whether by contract or
otherwise, or (ii) ownership of fifty percent (50%) or more of the
outstanding shares, or (iii) beneficial ownership of such entity.

"You" (or "Your") shall mean an individual or Legal Entity
exercising permissions granted by this License.

"Source" form shall mean the preferred form for making modifications,
including but not limited to software source code, documentation
source, and configuration files.

"Object" form shall mean any form resulting from mechanical
transformation or translation of a Source form, including but
not limited to compiled object code, generated documentation,
and conversions to other media types.

"Work" shall mean the work of authorship, whether in Source or
Object form, made available under the License, as indicated by a
copyright notice that is included in or attached to the work
(an example is provided in the Appendix below).

"Derivative Works" shall mean any work, whether in Source or Object
form, that is based on (or derived from) the Work and for which the
editorial revisions, annotations, elaborations, or other modifications
represent, as a whole, an original work of authorship. For the purposes
of this License, Derivative Works shall not include works that remain
separable from, or merely link (or bind by name) to the interfaces of,
the Work and Derivative Works thereof.

"Contribution" shall mean any work of authorship, including
the original version of the Work and any modifications or additions
to that Work or Derivative Works thereof, that is intentionally
submitted to Licensor for inclusion in the Work by the copyright owner
or by an individual or Legal Entity authorized to submit on behalf of
the copyright owner. For the purposes of this definition, "submitted"
means any form of electronic, verbal, or written communication sent
to the Licensor or its representatives, including but not limited to
communication on electronic mailing lists, source code control systems,
and issue tracking systems that are managed by, or on behalf of, the
Licensor for the purpose of discussing and improving the Work, but
excluding communication that is conspicuously marked or otherwise
designated in writing by the copyright owner as "Not a Contribution."

"Contributor" shall mean Licensor and any individual or Legal Entity
on behalf of whom a Contribution has been received by Licensor and
subsequently incorporated within the Work.

2. Grant of Copyright License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
copyright license to reproduce, prepare Derivative Works of,
publicly display, publicly perform, sublicense, and distribute the
Work and such Derivative Works in Source or Object form.

3. Grant of Patent License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
(except as stated in this section) patent license to make, have made,
use, offer to sell, sell, import, and otherwise transfer the Work,
where such license applies only to those patent claims licensable
by such Contributor that are necessarily infringed by their
Contribution(s) alone or by combination of their Contribution(s)
with the Work to which such Contribution(s) was submitted. If You
institute patent litigation against any entity (including a
cross-claim or counterclaim in a lawsuit) alleging that the Work
or a Contribution incorporated within the Work constitutes direct
or contributory patent infringement, then any patent licenses
granted to You under this License for that Work shall terminate
as of the date such litigation is filed.

4. Redistribution. You may reproduce and distribute copies of the
Work or Derivative Works thereof in any medium, with or without
modifications, and in Source or Object form, provided that You
meet the following conditions:

(a) You must give any other recipients of the Work or
Derivative Works a copy of this License; and

(b) You must cause any modified files to carry prominent notices
stating that You changed the files; and

(c) You must retain, in the Source form of any Derivative Works
that You distribute, all copyright, patent, trademark, and
attribution notices from the Source form of the Work,
excluding those notices that do not pertain to any part of
the Derivative Works; and

(d) If the Work includes a "NOTICE" text file as part of its
distribution, then any Derivative Works that You distribute must
include a readable copy of the attribution notices contained
within such NOTICE file, excluding those notices that do not
pertain to any part of the Derivative Works, in at least one
of the following places: within a NOTICE text file distributed
as part of the Derivative Works; within the Source form or
documentation, if provided along with the Derivative Works; or,
within a display generated by the Derivative Works, if and
wherever such third-party notices normally appear. The contents
of the NOTICE file are for informational purposes only and
do not modify the License. You may add Your own attribution
notices within Derivative Works that You distribute, alongside
or as an addendum to the NOTICE text from the Work, provided
that such additional attribution notices cannot be construed
as modifying the License.

You may add Your own copyright statement to Your modifications and
may provide additional or different license terms and conditions
for use, reproduction, or distribution of Your modifications, or
for any such Derivative Works as a whole, provided Your use,
reproduction, and distribution of the Work otherwise complies with
the conditions stated in this License.

5. Submission of Contributions. Unless You explicitly state otherwise,
any Contribution intentionally submitted for inclusion in the Work
by You to the Licensor shall be under the terms and conditions of
this License, without any additional terms or conditions.
Notwithstanding the above, nothing herein shall supersede or modify
the terms of any separate license agreement you may have executed
with Licensor regarding such Contributions.

6. Trademarks. This License does not grant permission to use the trade
names, trademarks, service marks, or product names of the Licensor,
except as required for reasonable and customary use in describing the
origin of the Work and reproducing the content of the NOTICE file.

7. Disclaimer of Warranty. Unless required by applicable law or
agreed to in writing, Licensor provides the Work (and each
Contributor provides its Contributions) on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied, including, without limitation, any warranties or conditions
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
PARTICULAR PURPOSE. You are solely responsible for determining the
appropriateness of using or redistributing the Work and assume any
risks associated with Your exercise of permissions under this License.

8. Limitation of Liability. In no event and under no legal theory,
whether in tort (including negligence), contract, or otherwise,
unless required by applicable law (such as deliberate and grossly
negligent acts) or agreed to in writing, shall any Contributor be
liable to You for damages, including any direct, indirect, special,
incidental, or consequential damages of any character arising as a
result of this License or out of the use or inability to use the
Work (including but not limited to damages for loss of goodwill,
work stoppage, computer failure or malfunction, or any and all
other commercial damages or losses), even if such Contributor
has been advised of the possibility of such damages.

9. Accepting Warranty or Additional Liability. While redistributing
the Work or Derivative Works thereof, You may choose to offer,
and charge a fee for, acceptance of support, warranty, indemnity,
or other liability obligations and/or rights consistent with this
License. However, in accepting such obligations, You may act only
on Your own behalf and on Your sole responsibility, not on behalf
of any other Contributor, and only if You agree to indemnify,
defend, and hold each Contributor harmless for any liability
incurred by, or claims asserted against, such Contributor by reason
of your accepting any such warranty or additional liability.

END OF TERMS AND CONDITIONS

APPENDIX: How to apply the Apache License to your work.

To apply the Apache License to your work, attach the following
boilerplate notice, with the fields enclosed by brackets "[]"
replaced with your own identifying information. (Don"t include
the brackets!) The text should be enclosed in the appropriate
comment syntax for the file format. We also recommend that a
file or class name and description of purpose be included on the
same "printed page" as the copyright notice for easier
identification within third-party archives.

Copyright [yyyy] [name of copyright owner]

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.

+
diff --git a/docs_src/docs/api_guide/components/current_sense/current_sense.md b/docs_src/docs/api_guide/components/current_sense/current_sense.md index 3b33223..f80290f 100644 --- a/docs_src/docs/api_guide/components/current_sense/current_sense.md +++ b/docs_src/docs/api_guide/components/current_sense/current_sense.md @@ -44,6 +44,25 @@ ICSS %SDFM is a sigma delta interface for phase current measurement in high perf \image html SDFM_PIN_CONFLICT.png "PIN routing for SD channels" +## Datasheet +### Fast Detect Latency + - Fast Detect block starts comparison after the first 32 sample clocks. + - Latency measured for the 20MHz sigma delta clock is 1.632us. +\image html SDFM_FD_Latency.png "FD latency" + +### Task Time for Normal Current at 300MHz PRU Core Clk +Normal current processing time for its different execution flows +- Task time when only single update is enabled + - 320ns, without R5 interrupt and samples store in TCM memory + - 328ns, With R5 intruppt and smaples store in TCM memory +\image html SDFM_NC_Task_time_for_single_update.png "NC Task time for single update" +- Task time when double update is enabled + - 320ns, without R5 interrupt and samples store in TCM memory + - 336ns, With R5 intruppt and smaples store in TCM memory. + \image html SDFM_NC_Task_time_for_double_update.png "NC Task time for double update" +- Task time for continuous mode is 360ns +\image html SDFM_NC_Task_time_for_continuous_mode.png "NC Task time for continuous mode" +- Worst case Normal current task time = 360ns + 3-4 pru cycles time(Task switch, task exit & scratch pas switch) ## ICSS SDFM Design \subpage SDFM_DESIGN explains the design in detail. diff --git a/docs_src/docs/api_guide/images/current_sense/SDFM_FD_Latency.png b/docs_src/docs/api_guide/images/current_sense/SDFM_FD_Latency.png new file mode 100644 index 0000000000000000000000000000000000000000..88ae28603f8d5d16ae4a5117912c8243c1ed29ed GIT binary patch literal 30800 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 E0C9nJzyJUM literal 0 HcmV?d00001 diff --git a/docs_src/docs/api_guide/images/current_sense/SDFM_NC_Task_time_for_single_update.png b/docs_src/docs/api_guide/images/current_sense/SDFM_NC_Task_time_for_single_update.png new file mode 100644 index 0000000000000000000000000000000000000000..e7819547389f883c6f106e99dc8d8397ef1c7cda GIT binary patch literal 36534 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