# 1 "../application/oee_tasks/payload-manager/payload-manager.c" # 1 "" 1 # 1 "" 3 # 390 "" 3 # 1 "" 1 # 1 "" 2 # 1 "/home/oee_dev-002/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/source/ti/ti_wisunfan/mbed_config/ws_router/mbed_config.h" 1 /* * mbed SDK * Copyright (c) 2017 ARM Limited * * 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. */ # 27 "/home/oee_dev-002/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/source/ti/ti_wisunfan/mbed_config/ws_router/mbed_config.h" // #define MBED_CONF_NANOSTACK_HAL_CRITICAL_SECTION_USABLE_FROM_INTERRUPT 0 // #define MBED_CONF_NANOSTACK_HAL_EVENT_LOOP_THREAD_STACK_SIZE 6144 # 40 "/home/oee_dev-002/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/source/ti/ti_wisunfan/mbed_config/ws_router/mbed_config.h" // #define MBED_CONF_MBED_MESH_APP_WISUN_NETWORK_SIZE 1 // Macros // #define NS_USE_EXTERNAL_MBED_TLS // defined by library:nanostack # 2 "" 2 # 1 "../application/oee_tasks/payload-manager/payload-manager.c" 2 # 1 "../application/oee_tasks/payload-manager/payload-manager.h" 1 /* Define declaration */ # 1 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/lib/clang/15.0.7/include/stdint.h" 1 3 /*===---- stdint.h - Standard header for sized integer types --------------===*\ * * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. * See https://llvm.org/LICENSE.txt for license information. * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception * \*===----------------------------------------------------------------------===*/ // AIX system headers need stdint.h to be re-enterable while _STD_TYPES_T // is defined until an inclusion of it without _STD_TYPES_T occurs, in which // case the header guard macro is defined. /* If we're hosted, fall back to the system's stdint.h, which might have * additional definitions. */ // C99 7.18.3 Limits of other integer types // // Footnote 219, 220: C++ implementations should define these macros only when // __STDC_LIMIT_MACROS is defined before is included. // // Footnote 222: C++ implementations should define these macros only when // __STDC_CONSTANT_MACROS is defined before is included. // // C++11 [cstdint.syn]p2: // // The macros defined by are provided unconditionally. In particular, // the symbols __STDC_LIMIT_MACROS and __STDC_CONSTANT_MACROS (mentioned in // footnotes 219, 220, and 222 in the C standard) play no role in C++. // // C11 removed the problematic footnotes. // // Work around this inconsistency by always defining those macros in C++ mode, // so that a C library implementation which follows the C99 standard can be // used in C++. # 52 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/lib/clang/15.0.7/include/stdint.h" 3 # 1 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/stdint.h" 1 3 /*****************************************************************************/ /* STDINT.H */ /* */ /* Copyright (c) 2002 Texas Instruments Incorporated */ /* http://www.ti.com/ */ /* */ /* 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. */ /* */ /*****************************************************************************/ # 1 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/_ti_config.h" 1 3 /*****************************************************************************/ /* _ti_config.h */ /* */ /* Copyright (c) 2017 Texas Instruments Incorporated */ /* http://www.ti.com/ */ /* */ /* 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. */ /* */ /*****************************************************************************/ /*Unsupported pragmas are omitted */ # 59 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/_ti_config.h" 3 /* Hide uses of the TI proprietary macros behind other macros. Implementations that don't implement these features should leave these macros undefined. */ # 86 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/_ti_config.h" 3 /* Common definitions */ # 100 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/_ti_config.h" 3 /* C */ /* C11 */ # 129 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/_ti_config.h" 3 /* _TI_NOEXCEPT_CPP14 is defined to noexcept only when compiling for C++14. It is intended to be used for functions like abort and atexit that are supposed to be declared noexcept only in C++14 mode. */ /* Target-specific definitions */ # 1 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/linkage.h" 1 3 /*****************************************************************************/ /* linkage.h v##### */ /* Copyright (c) 1998@%%%% Texas Instruments Incorporated */ /*****************************************************************************/ /* No modifiers are needed to access code or data */ /*--------------------------------------------------------------------------*/ /* Define _IDECL ==> how inline functions are declared */ /*--------------------------------------------------------------------------*/ # 140 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/_ti_config.h" 2 3 # 41 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/stdint.h" 2 3 /* no code before #include */ /* prefer functions to macros */ # 1 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/_stdint40.h" 1 3 /*****************************************************************************/ /* _STDINT40.H */ /* */ /* Copyright (c) 2018 Texas Instruments Incorporated */ /* http://www.ti.com/ */ /* */ /* 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. */ /* */ /*****************************************************************************/ /* prefer functions to macros */ # 54 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/_stdint40.h" 3 /* According to footnotes in the 1999 C standard, "C++ implementations should define these macros only when __STDC_LIMIT_MACROS is defined before is included." */ # 47 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/stdint.h" 2 3 # 1 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/sys/stdint.h" 1 3 /*- * SPDX-License-Identifier: BSD-2-Clause-FreeBSD * * Copyright (c) 2001 Mike Barcroft * 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. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR 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 AUTHOR 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. * * $FreeBSD$ */ # 1 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/sys/cdefs.h" 1 3 /*- * SPDX-License-Identifier: BSD-3-Clause * * Copyright (c) 1991, 1993 * The Regents of the University of California. All rights reserved. * * This code is derived from software contributed to Berkeley by * Berkeley Software Design, 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 University 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 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. * * @(#)cdefs.h 8.8 (Berkeley) 1/9/95 * $FreeBSD$ */ # 48 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/sys/cdefs.h" 3 /* * Testing against Clang-specific extensions. */ # 75 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/sys/cdefs.h" 3 /* * This code has been put in place to help reduce the addition of * compiler specific defines in FreeBSD code. It helps to aid in * having a compiler-agnostic source tree. */ # 113 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/sys/cdefs.h" 3 /* * Compiler memory barriers, specific to gcc and clang. */ # 127 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/sys/cdefs.h" 3 /* XXX: if __GNUC__ >= 2: not tested everywhere originally, where replaced */ # 158 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/sys/cdefs.h" 3 /* * Macro to test if we're using a specific version of gcc or later. */ /* * The __CONCAT macro is used to concatenate parts of symbol names, e.g. * with "#define OLD(foo) __CONCAT(old,foo)", OLD(foo) produces oldfoo. * The __CONCAT macro is a bit tricky to use if it must work in non-ANSI * mode -- there must be no spaces between its arguments, and for nested * __CONCAT's, all the __CONCAT's must be at the left. __CONCAT can also * concatenate double-quoted strings produced by the __STRING macro, but * this only works with ANSI C. * * __XSTRING is like __STRING, but it expands any macros in its argument * first. It is only available with ANSI C. */ # 225 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/sys/cdefs.h" 3 /* * Compiler-dependent macros to help declare dead (non-returning) and * pure (no side effects) functions, and unused variables. They are * null except for versions of gcc that are known to support the features * properly (old versions of gcc-2 supported the dead and pure features * in a different (wrong) way). If we do not provide an implementation * for a given compiler, let the compile fail if it is told to use * a feature that we cannot live without. */ /* * TI ADD - check that __GNUC__ is defined before referencing it to avoid * generating an error when __GNUC__ treated as zero warning is * promoted to an error via -pdse195 option. */ # 279 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/sys/cdefs.h" 3 /* * Keywords added in C11. */ # 349 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/sys/cdefs.h" 3 /* * Emulation of C11 _Generic(). Unlike the previously defined C11 * keywords, it is not possible to implement this using exactly the same * syntax. Therefore implement something similar under the name * __generic(). Unlike _Generic(), this macro can only distinguish * between a single type, so it requires nested invocations to * distinguish multiple cases. */ # 368 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/sys/cdefs.h" 3 /* * C99 Static array indices in function parameter declarations. Syntax such as: * void bar(int myArray[static 10]); * is allowed in C99 but not in C++. Define __min_size appropriately so * headers using it can be compiled in either language. Use like this: * void bar(int myArray[__min_size(10)]); */ # 423 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/sys/cdefs.h" 3 /* XXX: should use `#if __STDC_VERSION__ < 199901'. */ # 433 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/sys/cdefs.h" 3 /* C++11 exposes a load of C99 stuff */ # 444 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/sys/cdefs.h" 3 /* * GCC 2.95 provides `__restrict' as an extension to C90 to support the * C99-specific `restrict' type qualifier. We happen to use `__restrict' as * a way to define the `restrict' type qualifier without disturbing older * software that is unaware of C99 keywords. * The TI compiler supports __restrict in all compilation modes. */ # 461 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/sys/cdefs.h" 3 /* * GNU C version 2.96 adds explicit branch prediction so that * the CPU back-end can hint the processor and also so that * code blocks can be reordered such that the predicted path * sees a more linear flow, thus improving cache behavior, etc. * * The following two macros provide us with a way to utilize this * compiler feature. Use __predict_true() if you expect the expression * to evaluate to true, and __predict_false() if you expect the * expression to evaluate to false. * * A few notes about usage: * * * Generally, __predict_false() error condition checks (unless * you have some _strong_ reason to do otherwise, in which case * document it), and/or __predict_true() `no-error' condition * checks, assuming you want to optimize for the no-error case. * * * Other than that, if you don't know the likelihood of a test * succeeding from empirical or other `hard' evidence, don't * make predictions. * * * These are meant to be used in places that are run `a lot'. * It is wasteful to make predictions in code that is run * seldomly (e.g. at subsystem initialization time) as the * basic block reordering that this affects can often generate * larger code. */ # 507 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/sys/cdefs.h" 3 /* * We define this here since , , and * require it. */ # 527 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/sys/cdefs.h" 3 /* * Given the pointer x to the member m of the struct s, return * a pointer to the containing structure. When using GCC, we first * assign pointer x to a local variable, to check that its type is * compatible with member m. */ # 543 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/sys/cdefs.h" 3 /* * Compiler-dependent macros to declare that functions take printf-like * or scanf-like arguments. They are null except for versions of gcc * that are known to support the features properly (old versions of gcc-2 * didn't permit keeping the keywords out of the application namespace). */ # 567 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/sys/cdefs.h" 3 /* Compiler-dependent macros that rely on FreeBSD-specific extensions. */ # 628 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/sys/cdefs.h" 3 /* * Embed the rcs id of a source file in the resulting library. Note that in * more recent ELF binutils, we use .ident allowing the ID to be stripped. * Usage: * __FBSDID("$FreeBSD$"); */ # 686 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/sys/cdefs.h" 3 /*- * The following definitions are an extension of the behavior originally * implemented in , but with a different level of granularity. * POSIX.1 requires that the macros we test be defined before any standard * header file is included. * * Here's a quick run-down of the versions: * defined(_POSIX_SOURCE) 1003.1-1988 * _POSIX_C_SOURCE == 1 1003.1-1990 * _POSIX_C_SOURCE == 2 1003.2-1992 C Language Binding Option * _POSIX_C_SOURCE == 199309 1003.1b-1993 * _POSIX_C_SOURCE == 199506 1003.1c-1995, 1003.1i-1995, * and the omnibus ISO/IEC 9945-1: 1996 * _POSIX_C_SOURCE == 200112 1003.1-2001 * _POSIX_C_SOURCE == 200809 1003.1-2008 * * In addition, the X/Open Portability Guide, which is now the Single UNIX * Specification, defines a feature-test macro which indicates the version of * that specification, and which subsumes _POSIX_C_SOURCE. * * Our macros begin with two underscores to avoid namespace screwage. */ /* Deal with IEEE Std. 1003.1-1990, in which _POSIX_C_SOURCE == 1. */ /* Deal with IEEE Std. 1003.2-1992, in which _POSIX_C_SOURCE == 2. */ /* Deal with various X/Open Portability Guides and Single UNIX Spec. */ # 738 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/sys/cdefs.h" 3 /* * Deal with all versions of POSIX. The ordering relative to the tests above is * important. */ # 769 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/sys/cdefs.h" 3 /*- * Deal with _ANSI_SOURCE: * If it is defined, and no other compilation environment is explicitly * requested, then define our internal feature-test macros to zero. This * makes no difference to the preprocessor (undefined symbols in preprocessing * expressions are defined to have value zero), but makes it more convenient for * a test program to print out the values. * * If a program mistakenly defines _ANSI_SOURCE and some other macro such as * _POSIX_C_SOURCE, we will assume that it wants the broader compilation * environment (and in fact we will never get here). */ # 808 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/sys/cdefs.h" 3 /* User override __EXT1_VISIBLE */ # 822 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/sys/cdefs.h" 3 /* * Old versions of GCC use non-standard ARM arch symbols; acle-compat.h * translates them to __ARM_ARCH and the modern feature symbols defined by ARM. */ /* * Nullability qualifiers: currently only supported by Clang. */ # 845 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/sys/cdefs.h" 3 /* * Type Safety Checking * * Clang provides additional attributes to enable checking type safety * properties that cannot be enforced by the C type system. */ # 863 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/sys/cdefs.h" 3 /* * Lock annotations. * * Clang provides support for doing basic thread-safety tests at * compile-time, by marking which locks will/should be held when * entering/leaving a functions. * * Furthermore, it is also possible to annotate variables and structure * members to enforce that they are only accessed when certain locks are * held. */ /* Structure implements a lock. */ /* Function acquires an exclusive or shared lock. */ /* Function attempts to acquire an exclusive or shared lock. */ /* Function releases a lock. */ /* Function asserts that an exclusive or shared lock is held. */ /* Function requires that an exclusive or shared lock is or is not held. */ /* Function should not be analyzed. */ /* Guard variables and structure members by lock. */ # 37 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/sys/stdint.h" 2 3 # 1 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/sys/_types.h" 1 3 /*- * SPDX-License-Identifier: BSD-2-Clause-FreeBSD * * Copyright (c) 2002 Mike Barcroft * 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. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR 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 AUTHOR 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. * * $FreeBSD$ */ # 1 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/machine/_types.h" 1 3 /*- * SPDX-License-Identifier: BSD-4-Clause * * Copyright (c) 2002 Mike Barcroft * Copyright (c) 1990, 1993 * The Regents of the University of California. 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. All advertising materials mentioning features or use of this software * must display the following acknowledgement: * This product includes software developed by the University of * California, Berkeley and its contributors. * 4. Neither the name of the University 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 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. * * From: @(#)ansi.h 8.2 (Berkeley) 1/4/94 * From: @(#)types.h 8.3 (Berkeley) 1/5/94 * $FreeBSD$ */ # 58 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/machine/_types.h" 3 /* Always use POSIX epoch for time_t */ /* Unless AEABI portability mode or user indicates __TI_TIME_USES_64 = 0, */ /* use 64bit time_t and redirect all time routines to 64bit variants. */ # 71 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/machine/_types.h" 3 /* * Basic types upon which most other types are built. */ typedef signed char __int8_t; typedef unsigned char __uint8_t; typedef short __int16_t; typedef unsigned short __uint16_t; typedef int __int32_t; typedef unsigned int __uint32_t; __extension__ /* LONGLONG */ typedef long long __int64_t; __extension__ /* LONGLONG */ typedef unsigned long long __uint64_t; /* * Standard type definitions. */ typedef __uint32_t __clock_t; /* clock()... */ typedef __int32_t __critical_t; typedef double __double_t; typedef float __float_t; typedef __int32_t __intfptr_t; typedef __int64_t __intmax_t; typedef __int32_t __intptr_t; typedef __int32_t __int_fast8_t; typedef __int32_t __int_fast16_t; typedef __int32_t __int_fast32_t; typedef __int64_t __int_fast64_t; typedef __int8_t __int_least8_t; typedef __int16_t __int_least16_t; typedef __int32_t __int_least32_t; typedef __int64_t __int_least64_t; typedef __int32_t __ptrdiff_t; /* ptr1 - ptr2 */ typedef __int32_t __register_t; typedef __int32_t __segsz_t; /* segment size (in pages) */ typedef __uint32_t __size_t; /* sizeof() */ typedef __int32_t __ssize_t; /* byte count or error */ typedef __int64_t __time_t; /* time()... */ typedef __uint32_t __uintfptr_t; typedef __uint64_t __uintmax_t; typedef __uint32_t __uintptr_t; typedef __uint32_t __uint_fast8_t; typedef __uint32_t __uint_fast16_t; typedef __uint32_t __uint_fast32_t; typedef __uint64_t __uint_fast64_t; typedef __uint8_t __uint_least8_t; typedef __uint16_t __uint_least16_t; typedef __uint32_t __uint_least32_t; typedef __uint64_t __uint_least64_t; typedef __uint32_t __u_register_t; typedef __uint32_t __vm_offset_t; typedef __uint32_t __vm_paddr_t; typedef __uint32_t __vm_size_t; typedef int __WCHAR_T_TYPE__; typedef __WCHAR_T_TYPE__ ___wchar_t; # 150 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/machine/_types.h" 3 # 1 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/machine/_limits.h" 1 3 /*- * SPDX-License-Identifier: BSD-3-Clause * * Copyright (c) 1988, 1993 * The Regents of the University of California. 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 University 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 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. * * @(#)limits.h 8.3 (Berkeley) 1/4/94 * $FreeBSD$ */ # 43 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/machine/_limits.h" 3 /* * According to ANSI (section 2.2.4.2), the values below must be usable by * #if preprocessing directives. Additionally, the expression must have the * same type as would an expression that is an object of the corresponding * type converted according to the integral promotions. The subtraction for * INT_MIN, etc., is so the value is not unsigned; e.g., 0x80000000 is an * unsigned int for 32-bit two's complement ANSI compilers (section 3.1.3.2). */ # 71 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/machine/_limits.h" 3 /* max value for an unsigned long long */ # 83 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/machine/_limits.h" 3 /* Quads and long longs are the same size. Ensure they stay in sync. */ /* Minimum signal stack size. */ # 151 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/machine/_types.h" 2 3 /* * POSIX target specific _off_t type definition */ typedef long _off_t; /* * Unusual type definitions. */ typedef __builtin_va_list __va_list; /* internally known to gcc */ typedef __va_list __gnuc_va_list; /* compatibility w/GNU headers*/ # 36 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/sys/_types.h" 2 3 /* * Standard type definitions. */ typedef __int32_t __blksize_t; /* file block size */ typedef __int64_t __blkcnt_t; /* file block count */ typedef __int32_t __clockid_t; /* clock_gettime()... */ typedef __uint32_t __fflags_t; /* file flags */ typedef __uint64_t __fsblkcnt_t; typedef __uint64_t __fsfilcnt_t; typedef __uint32_t __gid_t; typedef __int64_t __id_t; /* can hold a gid_t, pid_t, or uid_t */ typedef __uint64_t __ino_t; /* inode number */ typedef long __key_t; /* IPC key (for Sys V IPC) */ typedef __int32_t __lwpid_t; /* Thread ID (a.k.a. LWP) */ typedef __uint16_t __mode_t; /* permissions */ typedef int __accmode_t; /* access permissions */ typedef int __nl_item; typedef __uint64_t __nlink_t; /* link count */ typedef _off_t __off_t; /* file offset (target-specific) */ typedef __int64_t __off64_t; /* file offset (always 64-bit) */ typedef __int32_t __pid_t; /* process [group] */ typedef __int64_t __rlim_t; /* resource limit - intentionally */ /* signed, because of legacy code */ /* that uses -1 for RLIM_INFINITY */ typedef __uint8_t __sa_family_t; typedef __uint32_t __socklen_t; typedef long __suseconds_t; /* microseconds (signed) */ typedef struct __timer *__timer_t; /* timer_gettime()... */ typedef struct __mq *__mqd_t; /* mq_open()... */ typedef __uint32_t __uid_t; typedef unsigned int __useconds_t; /* microseconds (unsigned) */ typedef int __cpuwhich_t; /* which parameter for cpuset. */ typedef int __cpulevel_t; /* level parameter for cpuset. */ typedef int __cpusetid_t; /* cpuset identifier. */ /* * Unusual type definitions. */ /* * rune_t is declared to be an ``int'' instead of the more natural * ``unsigned long'' or ``long''. Two things are happening here. It is not * unsigned so that EOF (-1) can be naturally assigned to it and used. Also, * it looks like 10646 will be a 31 bit standard. This means that if your * ints cannot hold 32 bits, you will be in trouble. The reason an int was * chosen over a long is that the is*() and to*() routines take ints (says * ANSI C), but they use __ct_rune_t instead of int. * * NOTE: rune_t is not covered by ANSI nor other standards, and should not * be instantiated outside of lib/libc/locale. Use wchar_t. wint_t and * rune_t must be the same type. Also, wint_t should be able to hold all * members of the largest character set plus one extra value (WEOF), and * must be at least 16 bits. */ typedef int __ct_rune_t; /* arg type for ctype funcs */ typedef __ct_rune_t __rune_t; /* rune_t (see above) */ typedef __ct_rune_t __wint_t; /* wint_t (see above) */ /* Clang already provides these types as built-ins, but only in C++ mode. */ typedef __uint_least16_t __char16_t; typedef __uint_least32_t __char32_t; /* In C++11, char16_t and char32_t are built-in types. */ typedef struct { long long __max_align1 __attribute__((aligned(_Alignof(long long)))); long double __max_align2 __attribute__((aligned(_Alignof(long double)))); } __max_align_t; typedef __uint64_t __dev_t; /* device number */ typedef __uint32_t __fixpt_t; /* fixed point number */ /* * mbstate_t is an opaque object to keep conversion state during multibyte * stream conversions. */ # 150 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/sys/_types.h" 3 typedef union { char __mbstate8[128]; __int64_t _mbstateL; /* for alignment */ } __mbstate_t; typedef __uintmax_t __rman_res_t; /* * When the following macro is defined, the system uses 64-bit inode numbers. * Programs can use this to avoid including , with its associated * namespace pollution. */ # 38 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/sys/stdint.h" 2 3 # 1 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/machine/_stdint.h" 1 3 /*- * SPDX-License-Identifier: BSD-2-Clause-NetBSD * * Copyright (c) 2001, 2002 Mike Barcroft * Copyright (c) 2001 The NetBSD Foundation, Inc. * All rights reserved. * * This code is derived from software contributed to The NetBSD Foundation * by Klaus Klein. * * 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. * * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. 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 FOUNDATION 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. * * $FreeBSD$ */ /* 19.4 is issued for macros that are defined in terms of other macros. */ # 65 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/machine/_stdint.h" 3 /* * ISO/IEC 9899:1999 * 7.18.2.1 Limits of exact-width integer types */ /* Minimum values of exact-width signed integer types. */ /* Maximum values of exact-width signed integer types. */ /* Maximum values of exact-width unsigned integer types. */ /* * ISO/IEC 9899:1999 * 7.18.2.2 Limits of minimum-width integer types */ /* Minimum values of minimum-width signed integer types. */ /* Maximum values of minimum-width signed integer types. */ /* Maximum values of minimum-width unsigned integer types. */ /* * ISO/IEC 9899:1999 * 7.18.2.3 Limits of fastest minimum-width integer types */ /* Minimum values of fastest minimum-width signed integer types. */ /* Maximum values of fastest minimum-width signed integer types. */ /* Maximum values of fastest minimum-width unsigned integer types. */ /* * ISO/IEC 9899:1999 * 7.18.2.4 Limits of integer types capable of holding object pointers */ /* * ISO/IEC 9899:1999 * 7.18.2.5 Limits of greatest-width integer types */ /* * ISO/IEC 9899:1999 * 7.18.3 Limits of other integer types */ /* Limits of ptrdiff_t. */ /* Limits of sig_atomic_t. */ /* Limit of size_t. */ /* Limits of wint_t. */ # 40 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/sys/stdint.h" 2 3 # 1 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/sys/_stdint.h" 1 3 /*- * SPDX-License-Identifier: BSD-2-Clause-FreeBSD * * Copyright (c) 2011 David E. O'Brien * Copyright (c) 2001 Mike Barcroft * 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. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR 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 AUTHOR 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. * * $FreeBSD$ */ typedef __int8_t int8_t; typedef __int16_t int16_t; typedef __int32_t int32_t; typedef __int64_t int64_t; typedef __uint8_t uint8_t; typedef __uint16_t uint16_t; typedef __uint32_t uint32_t; typedef __uint64_t uint64_t; typedef __intptr_t intptr_t; typedef __uintptr_t uintptr_t; typedef __intmax_t intmax_t; typedef __uintmax_t uintmax_t; # 41 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/sys/stdint.h" 2 3 typedef __int_least8_t int_least8_t; typedef __int_least16_t int_least16_t; typedef __int_least32_t int_least32_t; typedef __int_least64_t int_least64_t; typedef __uint_least8_t uint_least8_t; typedef __uint_least16_t uint_least16_t; typedef __uint_least32_t uint_least32_t; typedef __uint_least64_t uint_least64_t; typedef __int_fast8_t int_fast8_t; typedef __int_fast16_t int_fast16_t; typedef __int_fast32_t int_fast32_t; typedef __int_fast64_t int_fast64_t; typedef __uint_fast8_t uint_fast8_t; typedef __uint_fast16_t uint_fast16_t; typedef __uint_fast32_t uint_fast32_t; typedef __uint_fast64_t uint_fast64_t; /* GNU and Darwin define this and people seem to think it's portable */ # 74 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/sys/stdint.h" 3 /* Limits of wchar_t. */ /* ISO/IEC 9899:2011 K.3.4.4 */ # 49 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/stdint.h" 2 3 # 53 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/lib/clang/15.0.7/include/stdint.h" 2 3 # 6 "../application/oee_tasks/payload-manager/payload-manager.h" 2 # 1 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/lib/clang/15.0.7/include/stdbool.h" 1 3 /*===---- stdbool.h - Standard header for booleans -------------------------=== * * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. * See https://llvm.org/LICENSE.txt for license information. * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception * *===-----------------------------------------------------------------------=== */ # 7 "../application/oee_tasks/payload-manager/payload-manager.h" 2 # 1 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/string.h" 1 3 /*****************************************************************************/ /* string.h */ /* */ /* Copyright (c) 1993 Texas Instruments Incorporated */ /* http://www.ti.com/ */ /* */ /* 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. */ /* */ /*****************************************************************************/ # 50 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/string.h" 3 /* standard types required for standard headers */ /* #includes required for implementation */ /* standard headers must define standard names */ /* standard headers must define standard names */ # 66 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/string.h" 3 typedef unsigned int size_t; /* macros required for implementation */ # 86 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/string.h" 3 static __inline size_t strlen(const char *string); # 95 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/string.h" 3 static __inline char *strcpy(char * restrict dest, const char * restrict src); static __inline char *strncpy(char * restrict dest, const char * restrict src, size_t n); static __inline char *strcat(char * restrict string1, const char * restrict string2); static __inline char *strncat(char * restrict dest, const char * restrict src, size_t n); static __inline char *strchr(const char *string, int c); static __inline char *strrchr(const char *string, int c); int strcmp(const char *string1, const char *string2); static __inline int strncmp(const char *string1, const char *string2, size_t n); int strcoll(const char *string1, const char *_string2); size_t strxfrm(char * restrict to, const char * restrict from, size_t n); char *strpbrk(const char *string, const char *chs); size_t strspn(const char *string, const char *chs); size_t strcspn(const char *string, const char *chs); char *strstr(const char *string1, const char *string2); char *strtok(char * restrict str1, const char * restrict str2); char *strerror(int _errno); char *strdup(const char *string); void *memmove(void *s1, const void *s2, size_t n); void *memccpy(void *dest, const void *src, int ch, size_t count); /* false positives due to builtin declarations */ void *memcpy(void * restrict s1, const void * restrict s2, size_t n); static __inline int memcmp(const void *cs, const void *ct, size_t n); static __inline void *memchr(const void *cs, int c, size_t n); void *memset(void *mem, int ch, size_t length); # 212 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/string.h" 3 /* macros required for implementation */ # 224 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/string.h" 3 /* functions */ /* MISRA exceptions to avoid changing inline versions of the functions that would be linked in instead of included inline at different mf levels */ /* these functions are very well-tested, stable, and efficient; it would introduce a high risk to implement new, separate MISRA versions just for the inline headers */ /* keep names intact */ /* false positive on use of char type */ /* need to define inline functions */ /* use implicit casts */ /* need casts */ /* casting away const required for standard impl */ /* avoid changing expressions */ /* avoid changing expressions */ /* avoid changing expressions */ /* avoid changing expressions */ /* avoid changing expressions */ /* ++/-- needed for reasonable implementation */ /* avoid changing expressions */ /* use multiple return points */ /* use non-compound statements */ /* use non-compound statements */ /* pointer arithmetic needed for reasonable impl */ /* false positive returning pointer-typed param */ static __inline size_t strlen(const char *string) { size_t n = (size_t)-1; const char *s = string; do n++; while (*s++); return n; } static __inline size_t strnlen_s(const char *string, size_t maxLen) { size_t n = (size_t)-1; const char *s = string; do n++; while (s && *s++ && (n < maxLen)); return n; } static __inline char *strcpy(char * restrict dest, const char * restrict src) { char *d = dest; const char *s = src; while ((*d++ = *s++)); return dest; } static __inline char *strncpy(char * restrict dest, const char * restrict src, size_t n) { if (n) { char *d = dest; const char *s = src; while ((*d++ = *s++) && --n); /* COPY STRING */ if (n-- > 1) do *d++ = '\0'; while (--n); /* TERMINATION PADDING */ } return dest; } static __inline char *strcat(char * restrict string1, const char * restrict string2) { char *s1 = string1; const char *s2 = string2; while (*s1) s1++; /* FIND END OF STRING */ while ((*s1++ = *s2++)); /* APPEND SECOND STRING */ return string1; } static __inline char *strncat(char * restrict dest, const char * restrict src, size_t n) { if (n) { char *d = dest; const char *s = src; while (*d) d++; /* FIND END OF STRING */ while (n--) if (!(*d++ = *s++)) return dest; /* APPEND SECOND STRING */ *d = 0; } return dest; } static __inline char *strchr(const char *string, int c) { char tch, ch = c; const char *s = string; for (;;) { if ((tch = *s) == ch) return (char *) s; if (!tch) return (char *) 0; s++; } } static __inline char *strrchr(const char *string, int c) { char tch, ch = c; char *result = 0; const char *s = string; for (;;) { if ((tch = *s) == ch) result = (char *) s; if (!tch) break; s++; } return result; } # 384 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/string.h" 3 static __inline int strncmp(const char *string1, const char *string2, size_t n) { if (n) { const char *s1 = string1; const char *s2 = string2; unsigned char cp; int result; do if ((result = (unsigned char)*s1++ - (cp = (unsigned char)*s2++))) return result; while (cp && --n); } return 0; } static __inline int memcmp(const void *cs, const void *ct, size_t n) { if (n) { const unsigned char *mem1 = (unsigned char *)cs; const unsigned char *mem2 = (unsigned char *)ct; int cp1, cp2; while ((cp1 = *mem1++) == (cp2 = *mem2++) && --n); return cp1 - cp2; } return 0; } static __inline void *memchr(const void *cs, int c, size_t n) { if (n) { const unsigned char *mem = (unsigned char *)cs; unsigned char ch = c; do if ( *mem == ch ) return (void *)mem; else mem++; while (--n); } return 0; } # 453 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/string.h" 3 /*----------------------------------------------------------------------------*/ /* If sys/cdefs.h is available, go ahead and include it. xlocale.h assumes */ /* this file will have already included sys/cdefs.h. */ /*----------------------------------------------------------------------------*/ /*----------------------------------------------------------------------------*/ /* Include xlocale/_string.h if POSIX is enabled. This will expose the */ /* xlocale string interface. */ /*----------------------------------------------------------------------------*/ # 1 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/xlocale/_string.h" 1 3 /*- * SPDX-License-Identifier: BSD-2-Clause-FreeBSD * * Copyright (c) 2011, 2012 The FreeBSD Foundation * 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. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR 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 AUTHOR 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. * * $FreeBSD$ */ typedef struct _xlocale *locale_t; /* * This file is included from both string.h and xlocale.h. We need to expose * the declarations unconditionally if we are included from xlocale.h, but only * if we are in POSIX2008 mode if included from string.h. */ /* * POSIX2008 functions */ int strcoll_l(const char *, const char *, locale_t); size_t strxfrm_l(char *, const char *, size_t, locale_t); /* * xlocale extensions */ # 468 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/string.h" 2 3 char *stpcpy(char * restrict, const char * restrict); char *stpncpy(char * restrict, const char * restrict, size_t); # 8 "../application/oee_tasks/payload-manager/payload-manager.h" 2 # 1 "/home/oee_dev-002/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/source/ti/drivers/dpl/SemaphoreP.h" 1 /* * Copyright (c) 2015-2023, Texas Instruments Incorporated * 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 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. */ /** ============================================================================ * @file SemaphoreP.h * * @brief Semaphore module for the RTOS Porting Interface * * Semaphores can be counting semaphores or binary semaphores. Counting * semaphores keep track of the number of times the semaphore has been posted * with post functions. This is useful, for example, if you have a group of * resources that are shared between tasks. Such tasks might call pend() to see * if a resource is available before using one. A count of zero for a counting * semaphore denotes that it is not available. A positive count denotes * how many times a SemaphoreP_pend can be called before it is blocked (or * returns SemaphoreP_TIMEOUT). * * Binary semaphores can have only two states: available (count = 1) and * unavailable (count = 0). They can be used to share a single resource * between tasks. They can also be used for a basic signalling mechanism, where * the semaphore can be posted multiple times. Binary semaphores do not keep * track of the count; they simply track whether the semaphore has been posted * or not. * * ============================================================================ */ # 1 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/lib/clang/15.0.7/include/stddef.h" 1 3 /*===---- stddef.h - Basic type definitions --------------------------------=== * * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. * See https://llvm.org/LICENSE.txt for license information. * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception * *===-----------------------------------------------------------------------=== */ # 17 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/lib/clang/15.0.7/include/stddef.h" 3 /* Always define miscellaneous pieces when modules are available. */ # 26 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/lib/clang/15.0.7/include/stddef.h" 3 /* __need_wint_t is intentionally not defined here. */ /* Always define ptrdiff_t when modules are available. */ typedef int ptrdiff_t; /* Always define size_t when modules are available. */ typedef unsigned int size_t; /* ISO9899:2011 7.20 (C11 Annex K): Define rsize_t if __STDC_WANT_LIB_EXT1__ is * enabled. */ # 66 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/lib/clang/15.0.7/include/stddef.h" 3 /* Always define wchar_t when modules are available. */ typedef int wchar_t; # 102 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/lib/clang/15.0.7/include/stddef.h" 3 # 1 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/lib/clang/15.0.7/include/__stddef_max_align_t.h" 1 3 /*===---- __stddef_max_align_t.h - Definition of max_align_t for modules ---=== * * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. * See https://llvm.org/LICENSE.txt for license information. * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception * *===-----------------------------------------------------------------------=== */ # 18 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/lib/clang/15.0.7/include/__stddef_max_align_t.h" 3 // Define 'max_align_t' to match the GCC definition. typedef struct { long long __clang_max_align_nonce1 __attribute__((__aligned__(__alignof__(long long)))); long double __clang_max_align_nonce2 __attribute__((__aligned__(__alignof__(long double)))); } max_align_t; # 103 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/lib/clang/15.0.7/include/stddef.h" 2 3 /* Some C libraries expect to see a wint_t here. Others (notably MinGW) will use __WINT_TYPE__ directly; accommodate both by requiring __need_wint_t */ # 62 "/home/oee_dev-002/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/source/ti/drivers/dpl/SemaphoreP.h" 2 /*! * @brief Number of bytes greater than or equal to the size of any RTOS * SemaphoreP object. * * NoRTOS: 16 * BIOS 6.x: 28 * BIOS 7.x: 28 * FreeRTOS: 80 */ /*! * @brief SemaphoreP structure. * * Opaque structure that should be large enough to hold any of the * RTOS specific SemaphoreP objects. */ typedef union SemaphoreP_Struct { uint32_t dummy; /*!< Align object */ uint8_t data[(80)]; } SemaphoreP_Struct; /*! * @brief Wait forever define */ /*! * @brief No wait define */ /*! * @brief Status codes for SemaphoreP APIs (for backwards compatibility) */ typedef enum { /*! API completed successfully */ SemaphoreP_OK = 0, /*! API failed because of a timeout */ SemaphoreP_TIMEOUT = -1 } SemaphoreP_Status; /*! * @brief Opaque client reference to an instance of a SemaphoreP * * A SemaphoreP_Handle returned from the ::SemaphoreP_create represents that * instance and is used in the other instance based functions (e.g. * ::SemaphoreP_post or ::SemaphoreP_pend, etc.). */ typedef void *SemaphoreP_Handle; /*! * @brief Mode of the semaphore */ typedef enum { SemaphoreP_Mode_COUNTING = 0x0, SemaphoreP_Mode_BINARY = 0x1 } SemaphoreP_Mode; /*! * @brief Basic SemaphoreP Parameters * * Structure that contains the parameters are passed into ::SemaphoreP_create * when creating a SemaphoreP instance. The ::SemaphoreP_Params_init function * should be used to initialize the fields to default values before the * application sets the fields manually. The SemaphoreP default parameters are * noted in SemaphoreP_Params_init. */ typedef struct { SemaphoreP_Mode mode; /*!< Mode for the semaphore */ void (*callback)(void); /*!< Callback while pending for semaphore post */ } SemaphoreP_Params; /*! * @brief Default SemaphoreP instance parameters * * SemaphoreP_defaultParams represents the default parameters that are * used when creating or constructing a SemaphoreP instance. * SemaphoreP_Params_init() will use the contents of this structure for * initializing the SemaphoreP_Params instance. * * SemaphoreP_defaultParams is exposed to the application for the purpose * of allowing the application to change the default parameters for all * SemaphoreP instances created thereafter. The main intent for allowing * the default parameters to be changed is for setting a semaphore's * callback function to Power_idleFunc(), so that the SOC can enter low * power mode when pending on a semaphore. */ extern SemaphoreP_Params SemaphoreP_defaultParams; /* * SemaphoreP construct APIs can only be used if one of the OS's * is defined. For FreeRTOS, configSUPPORT_STATIC_ALLOCATION also * has to be set to 1 in FreeRTOSConfig.h. */ extern SemaphoreP_Handle SemaphoreP_construct(SemaphoreP_Struct *handle, unsigned int count, SemaphoreP_Params *params); extern SemaphoreP_Handle SemaphoreP_constructBinary(SemaphoreP_Struct *handle, unsigned int count); extern void SemaphoreP_destruct(SemaphoreP_Struct *semP); /*! * @brief Function to create a semaphore. * * @param count Initial count of the semaphore. For binary semaphores, * only values of 0 or 1 are valid. * * @param params Pointer to the instance configuration parameters. NULL * denotes to use the default parameters (SemaphoreP default * parameters as noted in ::SemaphoreP_Params_init. * * @return A SemaphoreP_Handle on success or a NULL on an error */ extern SemaphoreP_Handle SemaphoreP_create(unsigned int count, SemaphoreP_Params *params); /*! * @brief Function to create a binary semaphore. * * This can be used instead of SemaphoreP_create() to create a binary * semaphore. * * @param count Initial count of the binary semaphore. Only values * of 0 or 1 are valid. * * @return A SemaphoreP_Handle on success or a NULL on an error */ extern SemaphoreP_Handle SemaphoreP_createBinary(unsigned int count); /*! * @brief Function to create a binary semaphore. * * This can be used instead of SemaphoreP_create() to create a binary * semaphore. * * @param count Initial count of the binary semaphore. Only values * of 0 or 1 are valid. * @param callback Callback while pending for semaphore post * * @return A SemaphoreP_Handle on success or a NULL on an error */ extern SemaphoreP_Handle SemaphoreP_createBinaryCallback(unsigned int count, void (*callback)(void)); /*! * @brief Function to delete a semaphore. * * @param handle A SemaphoreP_Handle returned from ::SemaphoreP_create */ extern void SemaphoreP_delete(SemaphoreP_Handle handle); /*! * @brief Initialize params structure to default values. * * The default parameters are: * - mode: SemaphoreP_Mode_COUNTING * - name: NULL * * @param params Pointer to the instance configuration parameters. */ extern void SemaphoreP_Params_init(SemaphoreP_Params *params); /*! * @brief Function to pend (wait) on a semaphore. * * @param handle A SemaphoreP_Handle returned from ::SemaphoreP_create * * @param timeout Timeout (in ClockP ticks) to wait for the semaphore to * be posted (signalled). * * @return Status of the functions * - SemaphoreP_OK: Obtained the semaphore * - SemaphoreP_TIMEOUT: Timed out. Semaphore was not obtained. */ extern SemaphoreP_Status SemaphoreP_pend(SemaphoreP_Handle handle, uint32_t timeout); /*! * @brief Function to post (signal) a semaphore from task of ISR context. * * @param handle A SemaphoreP_Handle returned from ::SemaphoreP_create */ extern void SemaphoreP_post(SemaphoreP_Handle handle); # 9 "../application/oee_tasks/payload-manager/payload-manager.h" 2 // #include "network-interface.h" // #include "nvs-datapoint.h" /* Typedef Struct definition */ typedef struct { uint32_t timestamp; uint64_t status; float data[32]; uint32_t packet_id; int8_t rssi; } dataPoint_t; typedef struct { dataPoint_t buffer[3]; int top; // próximo slot livre int count; // quantos elementos estão salvos // Mutex de proteção de acesso SemaphoreP_Struct mutex; SemaphoreP_Handle mutexHandle; // Semáforo de contagem para controle de dados disponíveis SemaphoreP_Struct countSem; SemaphoreP_Handle countSemHandle; } dataStack_t; /* Functions prototypes */ void *payloadManagerThread(void *arg0); _Bool dataStack_pop(dataPoint_t *outData); void dataStack_push(dataPoint_t *newData); // void handle_commands_task(void *pvParameters); // char *create_packet(dataPoint_t packet_data); // void parse_system_parameters(char *parameters); // void parse_funcModule_parameters(char *parameters); // // void to_lowercase(char *dest, const char *src); # 2 "../application/oee_tasks/payload-manager/payload-manager.c" 2 # 1 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/lib/clang/15.0.7/include/stddef.h" 1 3 /*===---- stddef.h - Basic type definitions --------------------------------=== * * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. * See https://llvm.org/LICENSE.txt for license information. * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception * *===-----------------------------------------------------------------------=== */ # 4 "../application/oee_tasks/payload-manager/payload-manager.c" 2 # 1 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/stdio.h" 1 3 /*****************************************************************************/ /* STDIO.H */ /* */ /* Copyright (c) 1993 Texas Instruments Incorporated */ /* http://www.ti.com/ */ /* */ /* 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. */ /* */ /*****************************************************************************/ # 47 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/stdio.h" 3 # 1 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/lib/clang/15.0.7/include/stdarg.h" 1 3 /*===---- stdarg.h - Variable argument handling ----------------------------=== * * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. * See https://llvm.org/LICENSE.txt for license information. * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception * *===-----------------------------------------------------------------------=== */ typedef __builtin_va_list va_list; /* GCC always defines __va_copy, but does not define va_copy unless in c99 mode * or -ansi is not specified, since it was not part of C90. */ # 48 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/stdio.h" 2 3 /* reuse of standard macros/objects/funcs */ /* redefining reserved identifiers */ /* use function instead of function-like macro */ /* macros should have only simple expansions */ /* include should follow directive or comment */ /* parameters without names */ /* use size/sign-specific typedefs */ /*---------------------------------------------------------------------------*/ /* Attributes are only available in relaxed ANSI mode. */ /*---------------------------------------------------------------------------*/ # 69 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/stdio.h" 3 /****************************************************************************/ /* TYPES THAT ANSI REQUIRES TO BE DEFINED */ /****************************************************************************/ # 81 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/stdio.h" 3 struct __sFILE { int fd; /* File descriptor */ unsigned char* buf; /* Pointer to start of buffer */ unsigned char* pos; /* Position in buffer */ unsigned char* bufend; /* Pointer to end of buffer */ unsigned char* buff_stop; /* Pointer to last read char in buffer */ unsigned int flags; /* File status flags (see below) */ }; typedef struct __sFILE FILE; # 107 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/stdio.h" 3 typedef long fpos_t; /* For C6x, long type can be 40-bits, so we use int to get 32-bit off_t. */ typedef long off_t; /****************************************************************************/ /* DEVICE AND STREAM RELATED MACROS */ /****************************************************************************/ /****************************************************************************/ /* MACROS THAT DEFINE AND USE FILE STATUS FLAGS */ /****************************************************************************/ # 174 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/stdio.h" 3 /****************************************************************************/ /* MACROS THAT ANSI REQUIRES TO BE DEFINED */ /****************************************************************************/ # 203 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/stdio.h" 3 /******** END OF ANSI MACROS ************************************************/ /****************************************************************************/ /* DEVICE AND STREAM RELATED DATA STRUCTURES AND MACROS */ /****************************************************************************/ extern FILE _ftable[10]; extern char __TI_tmpnams[10][16]; /****************************************************************************/ /* FUNCTION DEFINITIONS - ANSI */ /****************************************************************************/ /****************************************************************************/ /* OPERATIONS ON FILES */ /****************************************************************************/ extern int remove(const char *_file); extern int rename(const char *_old, const char *_new); extern FILE *tmpfile(void); extern char *tmpnam(char *_s); /****************************************************************************/ /* FILE ACCESS FUNCTIONS */ /****************************************************************************/ extern int fclose(FILE * restrict _fp); extern FILE *fopen(const char * restrict _fname, const char * restrict _mode); extern FILE *fdopen(int _fildes, const char * restrict _mode); extern FILE *freopen(const char * restrict _fname, const char * restrict _mode, FILE * restrict _fp); extern void setbuf(FILE * restrict _fp, char * restrict _buf); extern int setvbuf(FILE * restrict _fp, char * restrict _buf, int _type, size_t _size); extern int fflush(FILE *_fp); /****************************************************************************/ /* FORMATTED INPUT/OUTPUT FUNCTIONS */ /****************************************************************************/ extern int fprintf(FILE * restrict _fp, const char * restrict _format, ...) __attribute__((__format__ (__printf__, 2, 3))); extern int fscanf(FILE * restrict _fp, const char * restrict _fmt, ...) __attribute__((__format__ (__scanf__, 2, 3))); extern int printf(const char * restrict _format, ...) __attribute__((__format__ (__printf__, 1, 2))); extern int scanf(const char * restrict _fmt, ...) __attribute__((__format__ (__scanf__, 1, 2))); extern int sprintf(char * restrict _string, const char * restrict _format, ...) __attribute__((__format__ (__printf__, 2, 3))); extern int snprintf(char * restrict _string, size_t _n, const char * restrict _format, ...) __attribute__((__format__ (__printf__, 3, 4))); extern int sscanf(const char * restrict _str, const char * restrict _fmt, ...) __attribute__((__format__ (__scanf__, 2, 3))); extern int vfprintf(FILE * restrict _fp, const char * restrict _format, va_list _ap) __attribute__((__format__ (__printf__, 2, 0))); extern int vfscanf(FILE * restrict _fp, const char * restrict _fmt, va_list _ap) __attribute__((__format__ (__scanf__, 2, 0))); extern int vprintf(const char * restrict _format, va_list _ap) __attribute__((__format__ (__printf__, 1, 0))); extern int vscanf(const char * restrict _format, va_list _ap) __attribute__((__format__ (__scanf__, 1, 0))); extern int vsprintf(char * restrict _string, const char * restrict _format, va_list _ap) __attribute__((__format__ (__printf__, 2, 0))); extern int vsnprintf(char * restrict _string, size_t _n, const char * restrict _format, va_list _ap) __attribute__((__format__ (__printf__, 3, 0))); extern int vsscanf(const char * restrict _str, const char * restrict _fmt, va_list _ap) __attribute__((__format__ (__scanf__, 2, 0))); extern int asprintf(char **, const char *, ...) __attribute__((__format__ (__printf__, 2, 3))); extern int vasprintf(char **, const char *, va_list) __attribute__((__format__ (__printf__, 2, 0))); /****************************************************************************/ /* CHARACTER INPUT/OUTPUT FUNCTIONS */ /****************************************************************************/ extern int fgetc(FILE *_fp); extern char *fgets(char * restrict _ptr, int _size, FILE * restrict _fp); extern int fputc(int _c, FILE *_fp); extern int fputs(const char * restrict _ptr, FILE * restrict _fp); extern int getc(FILE *_p); extern int getchar(void); extern char *gets(char *_ptr); extern int putc(int _x, FILE *_fp); extern int putchar(int _x); extern int puts(const char *_ptr); extern int ungetc(int _c, FILE *_fp); /****************************************************************************/ /* DIRECT INPUT/OUTPUT FUNCTIONS */ /****************************************************************************/ extern size_t fread(void * restrict _ptr, size_t _size, size_t _count, FILE * restrict _fp); extern size_t fwrite(const void * restrict _ptr, size_t _size, size_t _count, FILE * restrict _fp); /****************************************************************************/ /* FILE POSITIONING FUNCTIONS */ /****************************************************************************/ extern int fgetpos(FILE * restrict _fp, fpos_t * restrict _pos); extern int fseek(FILE *_fp, long _offset, int _ptrname); extern int fseeko(FILE *_fp, off_t _offset, int _ptrname); extern int fsetpos(FILE * restrict _fp, const fpos_t * restrict _pos); extern long ftell(FILE *_fp); extern off_t ftello(FILE *_fp); extern void rewind(FILE *_fp); /****************************************************************************/ /* ERROR-HANDLING FUNCTIONS */ /****************************************************************************/ extern void clearerr(FILE *_fp); extern int feof(FILE *_fp); extern int ferror(FILE *_fp); extern void perror(const char *_s); # 362 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/stdio.h" 3 /*----------------------------------------------------------------------------*/ /* If sys/cdefs.h is available, go ahead and include it. xlocale.h assumes */ /* this file will have already included sys/cdefs.h. */ /*----------------------------------------------------------------------------*/ /*----------------------------------------------------------------------------*/ /* If sys/_types.h is available, include it. xlocale.h assumes this file will */ /* have already provided a definition of __va_list. */ /*----------------------------------------------------------------------------*/ /*----------------------------------------------------------------------------*/ /* Include xlocale/_stdio.h if xlocale.h has already been included. This is */ /* to conform with FreeBSD's xlocale implementation. */ /*----------------------------------------------------------------------------*/ # 5 "../application/oee_tasks/payload-manager/payload-manager.c" 2 # 1 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/stdlib.h" 1 3 /*****************************************************************************/ /* stdlib.h */ /* */ /* Copyright (c) 1993 Texas Instruments Incorporated */ /* http://www.ti.com/ */ /* */ /* 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. */ /* */ /*****************************************************************************/ # 51 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/stdlib.h" 3 /*---------------------------------------------------------------------------*/ /* Support for alloca is available in glibc stdlib.h by default. */ /* We'll do the same for clang-based compilers since LLVM supports a */ /* built-in for the alloca implementation. */ /*---------------------------------------------------------------------------*/ # 1 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/alloca.h" 1 3 /*****************************************************************************/ /* alloca.h */ /* */ /* Copyright (c) 2020 Texas Instruments Incorporated */ /* http://www.ti.com/ */ /* */ /* 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. */ /* */ /*****************************************************************************/ # 58 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/stdlib.h" 2 3 /* standard types required for standard headers */ /* need to define inline function */ /* #includes required for implementation */ /* need function-like macros */ /* standard headers must define standard names */ /* standard headers must define standard names */ /*---------------------------------------------------------------------------*/ /* Attributes are only available in relaxed ANSI mode. */ /*---------------------------------------------------------------------------*/ # 84 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/stdlib.h" 3 /* keep names intact */ typedef struct { int quot, rem; } div_t; typedef struct { int quot, rem; } ldiv_t; # 100 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/stdlib.h" 3 typedef struct { long long quot, rem; } lldiv_t; # 129 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/stdlib.h" 3 typedef int __WCHAR_T_TYPE__; typedef __WCHAR_T_TYPE__ wchar_t; # 143 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/stdlib.h" 3 /*---------------------------------------------------------------*/ /* NOTE - Normally, abs, labs, and fabs are expanded inline, so */ /* no formal definition is really required. However, ANSI */ /* requires that they exist as separate functions, so */ /* they are supplied in the library. The prototype is */ /* here mainly for documentation. */ /*---------------------------------------------------------------*/ /* false positives due to builtin declarations */ int abs(int _val); long labs(long _val); long long llabs(long long _val); int atoi(const char *_st); long atol(const char *_st); long long atoll(const char *_st); char *ltoa(long val, char * buffer, int radix); static __inline double atof(const char *_st); long strtol(const char * restrict _st, char ** restrict _endptr, int _base); unsigned long strtoul(const char * restrict _st, char ** restrict _endptr, int _base); long long strtoll(const char * restrict _st, char ** restrict _endptr, int _base); unsigned long long strtoull(const char * restrict _st, char ** restrict _endptr, int _base); float strtof(const char * restrict _st, char ** restrict _endptr); double strtod(const char * restrict _st, char ** restrict _endptr); long double strtold(const char * restrict _st, char ** restrict _endptr); int rand(void); void srand(unsigned _seed); void *calloc(size_t _num, size_t _size) __attribute__((malloc)); void *malloc(size_t _size) __attribute__((malloc)); void *realloc(void *_ptr, size_t _size); void free(void *_ptr); void *memalign(size_t _aln, size_t _size) __attribute__((malloc)); void *aligned_alloc(size_t _aln, size_t _size) __attribute__((malloc)); void __TI_heap_stats(void); void *__TI_heap_check(void); size_t __TI_heap_total_available(void); size_t __TI_heap_largest_available(void); _Noreturn void abort(void) ; typedef void (*__TI_atexit_fn)(void); int atexit(__TI_atexit_fn _func) ; typedef int (*__TI_compar_fn)(const void *_a,const void *_b); void *bsearch(const void *_key, const void *_base, size_t _nmemb, size_t _size, __TI_compar_fn compar); void qsort(void *_base, size_t _nmemb, size_t _size, __TI_compar_fn compar); _Noreturn void exit(int _status); _Noreturn void _Exit(int _status); _Noreturn void quick_exit(int _status); int at_quick_exit(__TI_atexit_fn _func) ; div_t div(int _numer, int _denom); ldiv_t ldiv(long _numer, long _denom); lldiv_t lldiv(long long _numer, long long _denom); char *getenv(const char *_string); int system(const char *_name); int mblen(const char *_s, size_t _n); size_t mbstowcs(wchar_t * restrict _dest, const char * restrict _src, size_t _n); int mbtowc(wchar_t * restrict _dest, const char * restrict _src, size_t _n); size_t wcstombs(char * restrict _dest, const wchar_t * restrict _src, size_t _n); int wctomb(char *_s, wchar_t _wc); # 254 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/stdlib.h" 3 static __inline double atof(const char *_st) { return strtod(_st, (char **)0); } # 297 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/stdlib.h" 3 /* C2000-specific additions to header implemented with #include */ # 451 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/stdlib.h" 3 /* FreeBSD library requires code outside of the include guard */ /*----------------------------------------------------------------------------*/ /* If sys/cdefs.h is available, go ahead and include it. xlocale.h assumes */ /* this file will have already included sys/cdefs.h. */ /*----------------------------------------------------------------------------*/ /*----------------------------------------------------------------------------*/ /* Include xlocale/_stdlib.h if xlocale.h has already been included. This */ /* comes from FreeBSD's stdlib.h. */ /*----------------------------------------------------------------------------*/ /*----------------------------------------------------------------------------*/ /* The _TI_PROPRIETARY_PRAGMA macro exoands to a C99 _Pragma operator. */ /* The _Pragma statement is handled after the Pragma itself causing unexpected */ /* warnings due to the diagnostic state being popped. This is done to suppress */ /* unexpected 19.15 misra warnings. */ /*----------------------------------------------------------------------------*/ # 6 "../application/oee_tasks/payload-manager/payload-manager.c" 2 # 1 "/home/oee_dev-002/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/source/ti/posix/ticlang/unistd.h" 1 /* * Copyright (c) 2015-2022 Texas Instruments Incorporated - http://www.ti.com * 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 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. */ /* * ======== unistd.h ======== */ /* compiler vendor check */ # 1 "/home/oee_dev-002/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/source/ti/posix/ticlang/sys/types.h" 1 /* * Copyright (c) 2017-2022 Texas Instruments Incorporated - http://www.ti.com * 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 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. */ /* * ======== sys/types.h ======== */ /* compiler vendor check */ # 1 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/lib/clang/15.0.7/include/stddef.h" 1 3 /*===---- stddef.h - Basic type definitions --------------------------------=== * * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. * See https://llvm.org/LICENSE.txt for license information. * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception * *===-----------------------------------------------------------------------=== */ # 48 "/home/oee_dev-002/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/source/ti/posix/ticlang/sys/types.h" 2 /* toolchain header file */ # 1 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/../../include/c/sys/types.h" 1 3 /*- * SPDX-License-Identifier: BSD-3-Clause * * Copyright (c) 1982, 1986, 1991, 1993, 1994 * The Regents of the University of California. All rights reserved. * (c) UNIX System Laboratories, Inc. * All or some portions of this file are derived from material licensed * to the University of California by American Telephone and Telegraph * Co. or Unix System Laboratories, Inc. and are reproduced herein with * the permission of UNIX System Laboratories, 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 University 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 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. * * @(#)types.h 8.6 (Berkeley) 2/19/95 * $FreeBSD$ */ /* Machine type dependent parameters. */ # 1 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/machine/endian.h" 1 3 /*- * SPDX-License-Identifier: BSD-3-Clause * * Copyright (c) 2001 David E. O'Brien * * 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 University 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 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. * * @(#)endian.h 8.1 (Berkeley) 6/10/93 * $NetBSD: endian.h,v 1.7 1999/08/21 05:53:51 simonb Exp $ * $FreeBSD$ */ /* * Definitions for byte order, according to byte significance from low * address to high. */ # 47 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/../../include/c/sys/types.h" 2 3 typedef unsigned char u_char; typedef unsigned short u_short; typedef unsigned int u_int; typedef unsigned long u_long; typedef unsigned short ushort; /* Sys V compatibility */ typedef unsigned int uint; /* Sys V compatibility */ /* * XXX POSIX sized integrals that should appear only in . */ typedef __uint8_t u_int8_t; /* unsigned integrals (deprecated) */ typedef __uint16_t u_int16_t; typedef __uint32_t u_int32_t; typedef __uint64_t u_int64_t; typedef __uint64_t u_quad_t; /* quads (deprecated) */ typedef __int64_t quad_t; typedef quad_t * qaddr_t; typedef char * caddr_t; /* core address */ typedef const char * c_caddr_t; /* core address, pointer to const */ typedef __blksize_t blksize_t; typedef __cpuwhich_t cpuwhich_t; typedef __cpulevel_t cpulevel_t; typedef __cpusetid_t cpusetid_t; typedef __blkcnt_t blkcnt_t; typedef __clock_t clock_t; typedef __clockid_t clockid_t; typedef __critical_t critical_t; /* Critical section value */ typedef __int64_t daddr_t; /* disk address */ typedef __dev_t dev_t; /* device number or struct cdev */ typedef __fflags_t fflags_t; /* file flags */ typedef __fixpt_t fixpt_t; /* fixed point number */ typedef __fsblkcnt_t fsblkcnt_t; typedef __fsfilcnt_t fsfilcnt_t; typedef __gid_t gid_t; /* group id */ typedef __uint32_t in_addr_t; /* base type for internet address */ typedef __uint16_t in_port_t; typedef __id_t id_t; /* can hold a uid_t or pid_t */ typedef __ino_t ino_t; /* inode number */ typedef __key_t key_t; /* IPC key (for Sys V IPC) */ typedef __lwpid_t lwpid_t; /* Thread ID (a.k.a. LWP) */ typedef __mode_t mode_t; /* permissions */ typedef __accmode_t accmode_t; /* access permissions */ typedef __nlink_t nlink_t; /* link count */ # 184 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/../../include/c/sys/types.h" 3 typedef __off64_t off64_t; /* file offset (alias) */ typedef __pid_t pid_t; /* process id */ typedef __register_t register_t; typedef __rlim_t rlim_t; /* resource limit */ typedef __int64_t sbintime_t; typedef __segsz_t segsz_t; /* segment size (in pages) */ # 211 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/../../include/c/sys/types.h" 3 typedef __ssize_t ssize_t; typedef __suseconds_t suseconds_t; /* microseconds (signed) */ typedef __time_t time_t; typedef __timer_t timer_t; typedef __mqd_t mqd_t; typedef __u_register_t u_register_t; typedef __uid_t uid_t; /* user id */ typedef __useconds_t useconds_t; /* microseconds (unsigned) */ typedef unsigned long cap_ioctl_t; struct cap_rights; typedef struct cap_rights cap_rights_t; typedef __vm_offset_t vm_offset_t; typedef __int64_t vm_ooffset_t; typedef __vm_paddr_t vm_paddr_t; typedef __uint64_t vm_pindex_t; typedef __vm_size_t vm_size_t; typedef __rman_res_t rman_res_t; # 303 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/../../include/c/sys/types.h" 3 /* * The following are all things that really shouldn't exist in this header, * since its purpose is to provide typedefs, not miscellaneous doodads. */ # 315 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/../../include/c/sys/types.h" 3 /* * Population count algorithm using SWAR approach * - "SIMD Within A Register". */ static __inline __uint16_t __bitcount16(__uint16_t _x) { _x = (_x & 0x5555) + ((_x & 0xaaaa) >> 1); _x = (_x & 0x3333) + ((_x & 0xcccc) >> 2); _x = (_x + (_x >> 4)) & 0x0f0f; _x = (_x + (_x >> 8)) & 0x00ff; return (_x); } static __inline __uint32_t __bitcount32(__uint32_t _x) { _x = (_x & 0x55555555) + ((_x & 0xaaaaaaaa) >> 1); _x = (_x & 0x33333333) + ((_x & 0xcccccccc) >> 2); _x = (_x + (_x >> 4)) & 0x0f0f0f0f; _x = (_x + (_x >> 8)); _x = (_x + (_x >> 16)) & 0x000000ff; return (_x); } # 358 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/../../include/c/sys/types.h" 3 static __inline __uint64_t __bitcount64(__uint64_t _x) { return (__bitcount32(_x >> 32) + __bitcount32(_x)); } # 372 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/../../include/c/sys/types.h" 3 # 1 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/sys/select.h" 1 3 /*- * SPDX-License-Identifier: BSD-3-Clause * * Copyright (c) 1992, 1993 * The Regents of the University of California. 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 University 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 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. * * $FreeBSD$ */ # 1 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/sys/_sigset.h" 1 3 /*- * SPDX-License-Identifier: BSD-3-Clause * * Copyright (c) 1982, 1986, 1989, 1991, 1993 * The Regents of the University of California. All rights reserved. * (c) UNIX System Laboratories, Inc. * All or some portions of this file are derived from material licensed * to the University of California by American Telephone and Telegraph * Co. or Unix System Laboratories, Inc. and are reproduced herein with * the permission of UNIX System Laboratories, 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 University 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 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. * * @(#)signal.h 8.4 (Berkeley) 5/4/95 * $FreeBSD$ */ /* * sigset_t macros. */ typedef struct __sigset { __uint32_t __bits[4]; } __sigset_t; # 41 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/sys/select.h" 2 3 # 1 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/sys/_timeval.h" 1 3 /*- * SPDX-License-Identifier: BSD-2-Clause-FreeBSD * * Copyright (c) 2002 Mike Barcroft * 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. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR 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 AUTHOR 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. * * $FreeBSD$ */ # 46 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/sys/_timeval.h" 3 /* * Structure returned by gettimeofday(2) system call, and used in other calls. */ struct timeval { time_t tv_sec; /* seconds */ suseconds_t tv_usec; /* and microseconds */ }; # 42 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/sys/select.h" 2 3 # 1 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/sys/timespec.h" 1 3 /*- * SPDX-License-Identifier: BSD-3-Clause * * Copyright (c) 1982, 1986, 1993 * The Regents of the University of California. 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 University 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 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. * * @(#)time.h 8.5 (Berkeley) 5/4/95 * from: FreeBSD: src/sys/sys/time.h,v 1.43 2000/03/20 14:09:05 phk Exp * $FreeBSD$ */ # 1 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/sys/_timespec.h" 1 3 /*- * SPDX-License-Identifier: BSD-3-Clause * * Copyright (c) 1982, 1986, 1993 * The Regents of the University of California. 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 University 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 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. * * @(#)time.h 8.5 (Berkeley) 5/4/95 * from: FreeBSD: src/sys/sys/time.h,v 1.43 2000/03/20 14:09:05 phk Exp * $FreeBSD$ */ # 46 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/sys/_timespec.h" 3 struct timespec { time_t tv_sec; /* seconds */ long tv_nsec; /* and nanoseconds */ }; # 41 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/sys/timespec.h" 2 3 # 56 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/sys/timespec.h" 3 /* * Structure defined by POSIX.1b to be like a itimerval, but with * timespecs. Used in the timer_*() system calls. */ struct itimerspec { struct timespec it_interval; struct timespec it_value; }; # 43 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/sys/select.h" 2 3 typedef unsigned long __fd_mask; typedef __fd_mask fd_mask; typedef __sigset_t sigset_t; /* * Select uses bit masks of file descriptors in longs. These macros * manipulate such bit fields (the filesystem macros use chars). * FD_SETSIZE may be defined by the user, but the default here should * be enough for most uses. */ # 73 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/sys/select.h" 3 typedef struct fd_set { __fd_mask __fds_bits[(((1024) + (((sizeof(__fd_mask) * 8)) - 1)) / ((sizeof(__fd_mask) * 8)))]; } fd_set; # 100 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/sys/select.h" 3 int pselect(int, fd_set *restrict, fd_set *restrict, fd_set *restrict, const struct timespec *restrict, const sigset_t *restrict); /* XXX missing restrict type-qualifier */ int select(int, fd_set *, fd_set *, fd_set *, struct timeval *); # 373 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/../../include/c/sys/types.h" 2 3 /* * These declarations belong elsewhere, but are repeated here and in * to give broken programs a better chance of working with * 64-bit off_t's. */ int ftruncate(int, off_t); off_t lseek(int, off_t, int); void * mmap(void *, size_t, int, int, int, off_t); int truncate(const char *, off_t); # 52 "/home/oee_dev-002/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/source/ti/posix/ticlang/sys/types.h" 2 # 1 "/home/oee_dev-002/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/source/ti/posix/ticlang/sys/_internal.h" 1 /* * Copyright (c) 2017-2022 Texas Instruments Incorporated - http://www.ti.com * 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 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. */ /* * ======== sys/_internal.h ======== * Vendor specific internal details */ /* compiler vendor check */ # 54 "/home/oee_dev-002/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/source/ti/posix/ticlang/sys/_internal.h" /* These opaque object types replicate the kernel internal object * structures. They are used in a union when defining an opaque * object in order to guarantee the opaque object is correctly sized * and aligned with respect to the kernel objects. */ enum Opaque_Mode { Opaque_Mode_1, Opaque_Mode_2, Opaque_Mode_3, Opaque_Mode_4 }; struct Opaque_Struct__; struct Opaque_QueueElem { struct Opaque_QueueElem *volatile next; struct Opaque_QueueElem *volatile prev; }; struct Opaque_QueueStruct { struct Opaque_QueueElem __f0; struct Opaque_Struct__ *__f1; }; struct sysbios_Semaphore { struct Opaque_Struct__ *__f0; unsigned int __f1; enum Opaque_Mode __f2; volatile uint_least16_t __f3; struct Opaque_QueueStruct __f4; struct Opaque_Struct__ *__f5; }; struct freertos_Semaphore { void *__f0; }; struct sysbios_Barrier { struct sysbios_Semaphore sem; int count; int pendCount; }; struct freertos_Barrier { int count; int pendCount; struct Opaque_Struct__ *waitList; struct Opaque_Struct__ *last; }; struct sysbios_Mutex { struct Opaque_Struct__ *owner; int lockCnt; int type; struct sysbios_Semaphore sem; struct Opaque_Struct__ *mpo; }; struct freertos_Mutex { int protocol; void *owner; int type; void *sem; /* struct freertos_Semaphore */ }; struct sysbios_RWLock { struct sysbios_Semaphore sem; struct sysbios_Semaphore readSem; int activeReaderCnt; int blockedReaderCnt; void *owner; }; struct freertos_RWLock { struct freertos_Semaphore sem; struct freertos_Semaphore readSem; int activeReaderCnt; int blockedReaderCnt; void *owner; }; struct sysbios_Cond { struct Opaque_QueueStruct waitList; uint32_t clockId; }; struct freertos_Cond { struct Opaque_QueueElem waitList; uint32_t clockId; }; # 54 "/home/oee_dev-002/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/source/ti/posix/ticlang/sys/types.h" 2 /* ************************************************************************* * posix types ************************************************************************* */ /* * ======== pthread_attr_t ======== */ typedef struct pthread_attr_t { int priority; void *stack; size_t stacksize; size_t guardsize; int detachstate; } pthread_attr_t; typedef uint32_t pthread_barrierattr_t; typedef uint32_t pthread_condattr_t; typedef void *pthread_key_t; typedef struct pthread_mutexattr_t { int type; int protocol; int prioceiling; } pthread_mutexattr_t; typedef uint32_t pthread_rwlockattr_t; typedef void *pthread_t; typedef union { struct sysbios_Barrier sysbios; struct freertos_Barrier freertos; } pthread_barrier_t; typedef union { struct sysbios_Cond sysbios; struct freertos_Cond freertos; } pthread_cond_t; typedef union { struct sysbios_Mutex sysbios; struct freertos_Mutex freertos; } pthread_mutex_t; typedef uint32_t pthread_once_t; typedef union { struct sysbios_RWLock sysbios; struct freertos_RWLock freertos; } pthread_rwlock_t; struct _pthread_cleanup_context { pthread_t thread; void (*fxn)(void *); void *arg; int cancelType; struct _pthread_cleanup_context *next; }; # 48 "/home/oee_dev-002/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/source/ti/posix/ticlang/unistd.h" 2 extern unsigned sleep(unsigned seconds); extern int usleep(useconds_t useconds); # 7 "../application/oee_tasks/payload-manager/payload-manager.c" 2 # 1 "/home/oee_dev-002/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/source/ti/devices/DeviceFamily.h" 1 /* * Copyright (c) 2017-2024, Texas Instruments Incorporated * 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 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. */ /** ============================================================================ * @file DeviceFamily.h * * @brief Infrastructure to select correct driverlib path and identify devices * * This module enables the selection of the correct driverlib path for the current * device. It also facilitates the use of per-device conditional compilation * to enable minor variations in drivers between devices. * * In order to use this functionality, DeviceFamily_XYZ must be defined as one of * the supported values. The DeviceFamily_ID and DeviceFamily_DIRECTORY defines * are set based on DeviceFamily_XYZ. */ # 53 "/home/oee_dev-002/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/source/ti/devices/DeviceFamily.h" /* * DeviceFamily_ID_XYZ values. * * DeviceFamily_ID may be used in the preprocessor for conditional compilation. * DeviceFamily_ID is set to one of these values based on the top level * DeviceFamily_XYZ define. */ # 85 "/home/oee_dev-002/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/source/ti/devices/DeviceFamily.h" /* * DeviceFamily_PARENT_XYZ values. * * DeviceFamily_PARENT may be used in the preprocessor for conditional * compilation. DeviceFamily_PARENT is set to one of these values based * on the top-level DeviceFamily_XYZ define. */ # 101 "/home/oee_dev-002/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/source/ti/devices/DeviceFamily.h" /* * Lookup table that sets DeviceFamily_ID, DeviceFamily_DIRECTORY, and * DeviceFamily_PARENT based on the DeviceFamily_XYZ define. * If DeviceFamily_XYZ is undefined, a compiler error is thrown. If * multiple DeviceFamily_XYZ are defined, the first one encountered is used. */ # 234 "/home/oee_dev-002/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/source/ti/devices/DeviceFamily.h" /* Ensure that only one DeviceFamily was specified */ # 245 "/home/oee_dev-002/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/source/ti/devices/DeviceFamily.h" /*! * @brief Macro to include correct driverlib path. * * @pre DeviceFamily_XYZ which sets DeviceFamily_DIRECTORY must be defined * first. * * @param x A token containing the path of the file to include based on * the root device folder. The preceding forward slash must be * omitted. For example: * - #include DeviceFamily_constructPath(inc/hw_memmap.h) * - #include DeviceFamily_constructPath(driverlib/uart.h) * * @return Returns an include path. * */ # 9 "../application/oee_tasks/payload-manager/payload-manager.c" 2 # 1 "/home/oee_dev-002/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/source/ti/devices/cc13x4_cc26x4/inc/hw_fcfg1.h" 1 /****************************************************************************** * Filename: hw_fcfg1_h * * Copyright (c) 2015 - 2017, Texas Instruments Incorporated * 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 ORGANIZATION 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. * ******************************************************************************/ //***************************************************************************** // // This section defines the register offsets of // FCFG1 component // //***************************************************************************** // Misc configurations // Internal // Internal // Internal // Internal // Internal // Internal // Internal // Internal // Internal // Internal // Internal // Internal // Internal // Internal // Internal // Internal // Internal // Internal // Internal // Internal // Internal // Internal // Internal // IO Configuration // User Identification. // Internal // Internal // Internal // MAC BLE Address 0 // MAC BLE Address 1 // MAC IEEE 802.15.4 Address 0 // MAC IEEE 802.15.4 Address 1 // Miscellaneous Trim Parameters // Internal // IcePick Device Identification // Factory Configuration (FCFG1) Revision // Misc OTP Data // Internal // Internal // AUX_ADC Gain in Absolute Reference Mode // AUX_ADC Gain in Relative Reference Mode // AUX_ADC Temperature Offsets in Absolute Reference Mode // Internal // Internal // Internal // Internal // Internal // Internal // OSC Configuration // Internal // Internal // Shadow of EFUSE:DIE_ID_0 register // Shadow of EFUSE:DIE_ID_1 register // Shadow of EFUSE:DIE_ID_2 register // Shadow of EFUSE:DIE_ID_3 register // Internal // Internal // Internal // Oscillator configuration // Internal // Internal // Internal // Internal // Internal // Internal // Internal //***************************************************************************** // // Register: FCFG1_O_MISC_CONF_1 // //***************************************************************************** // Field: [7:0] DEVICE_MINOR_REV // // HW minor revision number (a value of 0xFF shall be treated equally to 0x00). // Any test of this field by SW should be implemented as a 'greater or equal' // comparison as signed integer. // Value may change without warning. //***************************************************************************** // // Register: FCFG1_O_MISC_CONF_2 // //***************************************************************************** // Field: [7:0] HPOSC_COMP_P3 // // Internal. Only to be used through TI provided API. //***************************************************************************** // // Register: FCFG1_O_HPOSC_MEAS_5 // //***************************************************************************** // Field: [31:16] HPOSC_D5 // // Internal. Only to be used through TI provided API. // Field: [15:8] HPOSC_T5 // // Internal. Only to be used through TI provided API. // Field: [7:0] HPOSC_DT5 // // Internal. Only to be used through TI provided API. //***************************************************************************** // // Register: FCFG1_O_HPOSC_MEAS_4 // //***************************************************************************** // Field: [31:16] HPOSC_D4 // // Internal. Only to be used through TI provided API. // Field: [15:8] HPOSC_T4 // // Internal. Only to be used through TI provided API. // Field: [7:0] HPOSC_DT4 // // Internal. Only to be used through TI provided API. //***************************************************************************** // // Register: FCFG1_O_HPOSC_MEAS_3 // //***************************************************************************** // Field: [31:16] HPOSC_D3 // // Internal. Only to be used through TI provided API. // Field: [15:8] HPOSC_T3 // // Internal. Only to be used through TI provided API. // Field: [7:0] HPOSC_DT3 // // Internal. Only to be used through TI provided API. //***************************************************************************** // // Register: FCFG1_O_HPOSC_MEAS_2 // //***************************************************************************** // Field: [31:16] HPOSC_D2 // // Internal. Only to be used through TI provided API. // Field: [15:8] HPOSC_T2 // // Internal. Only to be used through TI provided API. // Field: [7:0] HPOSC_DT2 // // Internal. Only to be used through TI provided API. //***************************************************************************** // // Register: FCFG1_O_HPOSC_MEAS_1 // //***************************************************************************** // Field: [31:16] HPOSC_D1 // // Internal. Only to be used through TI provided API. // Field: [15:8] HPOSC_T1 // // Internal. Only to be used through TI provided API. // Field: [7:0] HPOSC_DT1 // // Internal. Only to be used through TI provided API. //***************************************************************************** // // Register: FCFG1_O_CONFIG_CC26_FE // //***************************************************************************** // Field: [31:28] IFAMP_IB // // Internal. Only to be used through TI provided API. // Field: [27:24] LNA_IB // // Internal. Only to be used through TI provided API. // Field: [23:19] IFAMP_TRIM // // Internal. Only to be used through TI provided API. // Field: [18:14] CTL_PA0_TRIM // // Internal. Only to be used through TI provided API. // Field: [13] PATRIMCOMPLETE_N // // Internal. Only to be used through TI provided API. // Field: [12] RSSITRIMCOMPLETE_N // // Internal. Only to be used through TI provided API. // Field: [7:0] RSSI_OFFSET // // Internal. Only to be used through TI provided API. //***************************************************************************** // // Register: FCFG1_O_CONFIG_CC13_FE // //***************************************************************************** // Field: [31:28] IFAMP_IB // // Internal. Only to be used through TI provided API. // Field: [27:24] LNA_IB // // Internal. Only to be used through TI provided API. // Field: [23:19] IFAMP_TRIM // // Internal. Only to be used through TI provided API. // Field: [18:14] CTL_PA0_TRIM // // Internal. Only to be used through TI provided API. // Field: [13] PATRIMCOMPLETE_N // // Internal. Only to be used through TI provided API. // Field: [12] RSSITRIMCOMPLETE_N // // Internal. Only to be used through TI provided API. // Field: [7:0] RSSI_OFFSET // // Internal. Only to be used through TI provided API. //***************************************************************************** // // Register: FCFG1_O_CONFIG_RF_COMMON // //***************************************************************************** // Field: [31] DISABLE_CORNER_CAP // // Internal. Only to be used through TI provided API. // Field: [30:25] SLDO_TRIM_OUTPUT // // Internal. Only to be used through TI provided API. // Field: [21] PA20DBMTRIMCOMPLETE_N // // Internal. Only to be used through TI provided API. // Field: [20:16] CTL_PA_20DBM_TRIM // // Internal. Only to be used through TI provided API. // Field: [15:9] RFLDO_TRIM_OUTPUT // // Internal. Only to be used through TI provided API. // Field: [8:6] QUANTCTLTHRES // // Internal. Only to be used through TI provided API. // Field: [5:0] DACTRIM // // Internal. Only to be used through TI provided API. //***************************************************************************** // // Register: FCFG1_O_CONFIG_SYNTH_DIV2_CC26_2G4 // //***************************************************************************** // Field: [31:28] MIN_ALLOWED_RTRIM // // Internal. Only to be used through TI provided API. // Field: [27:12] RFC_MDM_DEMIQMC0 // // Internal. Only to be used through TI provided API. // Field: [11:6] LDOVCO_TRIM_OUTPUT // // Internal. Only to be used through TI provided API. // Field: [5] RFC_MDM_DEMIQMC0_TRIMCOMPLETE_N // // Internal. Only to be used through TI provided API. # 608 "/home/oee_dev-002/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/source/ti/devices/cc13x4_cc26x4/inc/hw_fcfg1.h" //***************************************************************************** // // Register: FCFG1_O_CONFIG_SYNTH_DIV2_CC13_2G4 // //***************************************************************************** // Field: [31:28] MIN_ALLOWED_RTRIM // // Internal. Only to be used through TI provided API. // Field: [27:12] RFC_MDM_DEMIQMC0 // // Internal. Only to be used through TI provided API. // Field: [11:6] LDOVCO_TRIM_OUTPUT // // Internal. Only to be used through TI provided API. // Field: [5] RFC_MDM_DEMIQMC0_TRIMCOMPLETE_N // // Internal. Only to be used through TI provided API. # 646 "/home/oee_dev-002/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/source/ti/devices/cc13x4_cc26x4/inc/hw_fcfg1.h" //***************************************************************************** // // Register: FCFG1_O_CONFIG_SYNTH_DIV2_CC26_1G // //***************************************************************************** // Field: [31:28] MIN_ALLOWED_RTRIM // // Internal. Only to be used through TI provided API. // Field: [27:12] RFC_MDM_DEMIQMC0 // // Internal. Only to be used through TI provided API. // Field: [11:6] LDOVCO_TRIM_OUTPUT // // Internal. Only to be used through TI provided API. // Field: [5] RFC_MDM_DEMIQMC0_TRIMCOMPLETE_N // // Internal. Only to be used through TI provided API. # 684 "/home/oee_dev-002/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/source/ti/devices/cc13x4_cc26x4/inc/hw_fcfg1.h" //***************************************************************************** // // Register: FCFG1_O_CONFIG_SYNTH_DIV2_CC13_1G // //***************************************************************************** // Field: [31:28] MIN_ALLOWED_RTRIM // // Internal. Only to be used through TI provided API. // Field: [27:12] RFC_MDM_DEMIQMC0 // // Internal. Only to be used through TI provided API. // Field: [11:6] LDOVCO_TRIM_OUTPUT // // Internal. Only to be used through TI provided API. // Field: [5] RFC_MDM_DEMIQMC0_TRIMCOMPLETE_N // // Internal. Only to be used through TI provided API. # 722 "/home/oee_dev-002/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/source/ti/devices/cc13x4_cc26x4/inc/hw_fcfg1.h" //***************************************************************************** // // Register: FCFG1_O_CONFIG_SYNTH_DIV4_CC26 // //***************************************************************************** // Field: [31:28] MIN_ALLOWED_RTRIM // // Internal. Only to be used through TI provided API. // Field: [27:12] RFC_MDM_DEMIQMC0 // // Internal. Only to be used through TI provided API. // Field: [11:6] LDOVCO_TRIM_OUTPUT // // Internal. Only to be used through TI provided API. // Field: [5] RFC_MDM_DEMIQMC0_TRIMCOMPLETE_N // // Internal. Only to be used through TI provided API. # 760 "/home/oee_dev-002/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/source/ti/devices/cc13x4_cc26x4/inc/hw_fcfg1.h" //***************************************************************************** // // Register: FCFG1_O_CONFIG_SYNTH_DIV4_CC13 // //***************************************************************************** // Field: [31:28] MIN_ALLOWED_RTRIM // // Internal. Only to be used through TI provided API. // Field: [27:12] RFC_MDM_DEMIQMC0 // // Internal. Only to be used through TI provided API. // Field: [11:6] LDOVCO_TRIM_OUTPUT // // Internal. Only to be used through TI provided API. // Field: [5] RFC_MDM_DEMIQMC0_TRIMCOMPLETE_N // // Internal. Only to be used through TI provided API. # 798 "/home/oee_dev-002/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/source/ti/devices/cc13x4_cc26x4/inc/hw_fcfg1.h" //***************************************************************************** // // Register: FCFG1_O_CONFIG_SYNTH_DIV5 // //***************************************************************************** // Field: [31:28] MIN_ALLOWED_RTRIM // // Internal. Only to be used through TI provided API. // Field: [27:12] RFC_MDM_DEMIQMC0 // // Internal. Only to be used through TI provided API. // Field: [11:6] LDOVCO_TRIM_OUTPUT // // Internal. Only to be used through TI provided API. // Field: [5] RFC_MDM_DEMIQMC0_TRIMCOMPLETE_N // // Internal. Only to be used through TI provided API. //***************************************************************************** // // Register: FCFG1_O_CONFIG_SYNTH_DIV6_CC26 // //***************************************************************************** // Field: [31:28] MIN_ALLOWED_RTRIM // // Internal. Only to be used through TI provided API. // Field: [27:12] RFC_MDM_DEMIQMC0 // // Internal. Only to be used through TI provided API. // Field: [11:6] LDOVCO_TRIM_OUTPUT // // Internal. Only to be used through TI provided API. // Field: [5] RFC_MDM_DEMIQMC0_TRIMCOMPLETE_N // // Internal. Only to be used through TI provided API. # 873 "/home/oee_dev-002/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/source/ti/devices/cc13x4_cc26x4/inc/hw_fcfg1.h" //***************************************************************************** // // Register: FCFG1_O_CONFIG_SYNTH_DIV6_CC13 // //***************************************************************************** // Field: [31:28] MIN_ALLOWED_RTRIM // // Internal. Only to be used through TI provided API. // Field: [27:12] RFC_MDM_DEMIQMC0 // // Internal. Only to be used through TI provided API. // Field: [11:6] LDOVCO_TRIM_OUTPUT // // Internal. Only to be used through TI provided API. // Field: [5] RFC_MDM_DEMIQMC0_TRIMCOMPLETE_N // // Internal. Only to be used through TI provided API. # 911 "/home/oee_dev-002/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/source/ti/devices/cc13x4_cc26x4/inc/hw_fcfg1.h" //***************************************************************************** // // Register: FCFG1_O_CONFIG_SYNTH_DIV10 // //***************************************************************************** // Field: [31:28] MIN_ALLOWED_RTRIM // // Internal. Only to be used through TI provided API. // Field: [27:12] RFC_MDM_DEMIQMC0 // // Internal. Only to be used through TI provided API. // Field: [11:6] LDOVCO_TRIM_OUTPUT // // Internal. Only to be used through TI provided API. // Field: [5] RFC_MDM_DEMIQMC0_TRIMCOMPLETE_N // // Internal. Only to be used through TI provided API. # 949 "/home/oee_dev-002/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/source/ti/devices/cc13x4_cc26x4/inc/hw_fcfg1.h" //***************************************************************************** // // Register: FCFG1_O_CONFIG_SYNTH_DIV12_CC26 // //***************************************************************************** // Field: [31:28] MIN_ALLOWED_RTRIM // // Internal. Only to be used through TI provided API. // Field: [27:12] RFC_MDM_DEMIQMC0 // // Internal. Only to be used through TI provided API. // Field: [11:6] LDOVCO_TRIM_OUTPUT // // Internal. Only to be used through TI provided API. // Field: [5] RFC_MDM_DEMIQMC0_TRIMCOMPLETE_N // // Internal. Only to be used through TI provided API. # 987 "/home/oee_dev-002/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/source/ti/devices/cc13x4_cc26x4/inc/hw_fcfg1.h" //***************************************************************************** // // Register: FCFG1_O_CONFIG_SYNTH_DIV12_CC13 // //***************************************************************************** // Field: [31:28] MIN_ALLOWED_RTRIM // // Internal. Only to be used through TI provided API. // Field: [27:12] RFC_MDM_DEMIQMC0 // // Internal. Only to be used through TI provided API. // Field: [11:6] LDOVCO_TRIM_OUTPUT // // Internal. Only to be used through TI provided API. // Field: [5] RFC_MDM_DEMIQMC0_TRIMCOMPLETE_N // // Internal. Only to be used through TI provided API. # 1025 "/home/oee_dev-002/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/source/ti/devices/cc13x4_cc26x4/inc/hw_fcfg1.h" //***************************************************************************** // // Register: FCFG1_O_CONFIG_SYNTH_DIV15 // //***************************************************************************** // Field: [31:28] MIN_ALLOWED_RTRIM // // Internal. Only to be used through TI provided API. // Field: [27:12] RFC_MDM_DEMIQMC0 // // Internal. Only to be used through TI provided API. // Field: [11:6] LDOVCO_TRIM_OUTPUT // // Internal. Only to be used through TI provided API. // Field: [5] RFC_MDM_DEMIQMC0_TRIMCOMPLETE_N // // Internal. Only to be used through TI provided API. # 1063 "/home/oee_dev-002/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/source/ti/devices/cc13x4_cc26x4/inc/hw_fcfg1.h" //***************************************************************************** // // Register: FCFG1_O_CONFIG_SYNTH_DIV30 // //***************************************************************************** // Field: [31:28] MIN_ALLOWED_RTRIM // // Internal. Only to be used through TI provided API. // Field: [27:12] RFC_MDM_DEMIQMC0 // // Internal. Only to be used through TI provided API. // Field: [11:6] LDOVCO_TRIM_OUTPUT // // Internal. Only to be used through TI provided API. // Field: [5] RFC_MDM_DEMIQMC0_TRIMCOMPLETE_N // // Internal. Only to be used through TI provided API. # 1101 "/home/oee_dev-002/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/source/ti/devices/cc13x4_cc26x4/inc/hw_fcfg1.h" //***************************************************************************** // // Register: FCFG1_O_IOCONF // //***************************************************************************** // Field: [6:0] GPIO_CNT // // Number of available DIOs. //***************************************************************************** // // Register: FCFG1_O_USER_ID // //***************************************************************************** // Field: [31:28] PG_REV // // Field used to distinguish revisions of the device // Field: [27:26] VER // // Version number. // // 0x0: Bits [25:12] of this register has the stated meaning. // // Any other setting indicate a different encoding of these bits. // Field: [25] PA // // 0: Does not support 20dBm PA // 1: Supports 20dBM PA // Field: [23] CC13 // // 0: CC26x4x10 device type // 1: CC13x4x10 device type // Field: [22:19] SEQUENCE // // Sequence. // // Used to differentiate between marketing/orderable product where other fields // of this register are the same (temp range, flash size, voltage range etc) // Field: [18:16] PKG // // Package type. // // 0x2: 7x7mm QFN (RGZ) package // 0x7: 8x8mm QFN (RSK) package // // Other values are reserved for future use. // Packages available for a specific device are shown in the device datasheet. // Field: [15:12] PROTOCOL // // Protocols supported. // // 0x1: BLE // 0x2: RF4CE // 0x4: Zigbee/6lowpan // 0x8: Proprietary // // More than one protocol can be supported on same device - values above are // then combined. //***************************************************************************** // // Register: FCFG1_O_FLASH_OTP_DATA3 // //***************************************************************************** // Field: [2:0] FLASH_SIZE // // Internal. Only to be used through TI provided API. //***************************************************************************** // // Register: FCFG1_O_ANA2_TRIM // //***************************************************************************** // Field: [31] RCOSCHFCTRIMFRACT_EN // // Internal. Only to be used through TI provided API. // Field: [30:26] RCOSCHFCTRIMFRACT // // Internal. Only to be used through TI provided API. // Field: [24:23] SET_RCOSC_HF_FINE_RESISTOR // // Internal. Only to be used through TI provided API. // Field: [22] ATESTLF_UDIGLDO_IBIAS_TRIM // // Internal. Only to be used through TI provided API. // Field: [21:15] NANOAMP_RES_TRIM // // Internal. Only to be used through TI provided API. // Field: [14:12] DCDC_DRV_DS // // Internal. Only to be used through TI provided API. // Field: [11] DITHER_EN // // Internal. Only to be used through TI provided API. // Field: [10:8] DCDC_IPEAK // // Internal. Only to be used through TI provided API. // Field: [7:6] DEAD_TIME_TRIM // // Internal. Only to be used through TI provided API. // Field: [5:3] DCDC_LOW_EN_SEL // // Internal. Only to be used through TI provided API. // Field: [2:0] DCDC_HIGH_EN_SEL // // Internal. Only to be used through TI provided API. //***************************************************************************** // // Register: FCFG1_O_LDO_TRIM // //***************************************************************************** // Field: [28:24] VDDR_TRIM_SLEEP // // Internal. Only to be used through TI provided API. // Field: [18:16] GLDO_CURSRC // // Internal. Only to be used through TI provided API. // Field: [12:11] ITRIM_DIGLDO_LOAD // // Internal. Only to be used through TI provided API. // Field: [10:8] ITRIM_UDIGLDO // // Internal. Only to be used through TI provided API. // Field: [2:0] VTRIM_DELTA // // Internal. Only to be used through TI provided API. //***************************************************************************** // // Register: FCFG1_O_MAC_BLE_0 // //***************************************************************************** // Field: [31:0] ADDR_0_31 // // The first 32-bits of the 64-bit MAC BLE address //***************************************************************************** // // Register: FCFG1_O_MAC_BLE_1 // //***************************************************************************** // Field: [31:0] ADDR_32_63 // // The last 32-bits of the 64-bit MAC BLE address //***************************************************************************** // // Register: FCFG1_O_MAC_15_4_0 // //***************************************************************************** // Field: [31:0] ADDR_0_31 // // The first 32-bits of the 64-bit MAC 15.4 address //***************************************************************************** // // Register: FCFG1_O_MAC_15_4_1 // //***************************************************************************** // Field: [31:0] ADDR_32_63 // // The last 32-bits of the 64-bit MAC 15.4 address //***************************************************************************** // // Register: FCFG1_O_MISC_TRIM // //***************************************************************************** // Field: [16:12] TRIM_RECHARGE_COMP_OFFSET // // Internal. Only to be used through TI provided API. // Field: [11:8] TRIM_RECHARGE_COMP_REFLEVEL // // Internal. Only to be used through TI provided API. // Field: [7:0] TEMPVSLOPE // // Signed byte value representing the TEMP slope with battery voltage, in // degrees C / V, with four fractional bits. //***************************************************************************** // // Register: FCFG1_O_RCOSC_HF_TEMPCOMP // //***************************************************************************** // Field: [31:24] FINE_RESISTOR // // Internal. Only to be used through TI provided API. // Field: [23:16] CTRIM // // Internal. Only to be used through TI provided API. // Field: [15:8] CTRIMFRACT_QUAD // // Internal. Only to be used through TI provided API. // Field: [7:0] CTRIMFRACT_SLOPE // // Internal. Only to be used through TI provided API. //***************************************************************************** // // Register: FCFG1_O_ICEPICK_DEVICE_ID // //***************************************************************************** // Field: [31:28] PG_REV // // Field used to distinguish revisions of the device. // Field: [27:12] WAFER_ID // // Field used to identify silicon die. // Field: [11:0] MANUFACTURER_ID // // Manufacturer code. // // 0x02F: Texas Instruments //***************************************************************************** // // Register: FCFG1_O_FCFG1_REVISION // //***************************************************************************** // Field: [31:0] REV // // The revision number of the FCFG1 layout. This value will be read by // application SW in order to determine which FCFG1 parameters that have valid // values. This revision number must be incremented by 1 before any devices are // to be produced if the FCFG1 layout has changed since the previous production // of devices. // Value migth change without warning. //***************************************************************************** // // Register: FCFG1_O_MISC_OTP_DATA // //***************************************************************************** // Field: [31:28] RCOSC_HF_ITUNE // // Internal. Only to be used through TI provided API. // Field: [27:20] RCOSC_HF_CRIM // // Internal. Only to be used through TI provided API. // Field: [19:15] PER_M // // Internal. Only to be used through TI provided API. // Field: [14:12] PER_E // // Internal. Only to be used through TI provided API. //***************************************************************************** // // Register: FCFG1_O_CONFIG_IF_ADC // //***************************************************************************** // Field: [31:28] FF2ADJ // // Internal. Only to be used through TI provided API. // Field: [27:24] FF3ADJ // // Internal. Only to be used through TI provided API. // Field: [23:20] INT3ADJ // // Internal. Only to be used through TI provided API. // Field: [19:16] FF1ADJ // // Internal. Only to be used through TI provided API. // Field: [15:14] AAFCAP // // Internal. Only to be used through TI provided API. // Field: [13:10] INT2ADJ // // Internal. Only to be used through TI provided API. // Field: [9:5] IFDIGLDO_TRIM_OUTPUT // // Internal. Only to be used through TI provided API. // Field: [4:0] IFANALDO_TRIM_OUTPUT // // Internal. Only to be used through TI provided API. //***************************************************************************** // // Register: FCFG1_O_CONFIG_OSC_TOP // //***************************************************************************** // Field: [29:26] XOSC_HF_ROW_Q12 // // Internal. Only to be used through TI provided API. // Field: [25:10] XOSC_HF_COLUMN_Q12 // // Internal. Only to be used through TI provided API. // Field: [9:2] RCOSCLF_CTUNE_TRIM // // Internal. Only to be used through TI provided API. // Field: [1:0] RCOSCLF_RTUNE_TRIM // // Internal. Only to be used through TI provided API. //***************************************************************************** // // Register: FCFG1_O_SOC_ADC_ABS_GAIN // //***************************************************************************** // Field: [15:0] SOC_ADC_ABS_GAIN_TEMP1 // // SOC_ADC gain in absolute reference mode at temperature 1 (30C). Calculated // in production test.. //***************************************************************************** // // Register: FCFG1_O_SOC_ADC_REL_GAIN // //***************************************************************************** // Field: [15:0] SOC_ADC_REL_GAIN_TEMP1 // // SOC_ADC gain in relative reference mode at temperature 1 (30C). Calculated // in production test.. //***************************************************************************** // // Register: FCFG1_O_SOC_ADC_OFFSET_INT // //***************************************************************************** // Field: [23:16] SOC_ADC_REL_OFFSET_TEMP1 // // SOC_ADC offset in relative reference mode at temperature 1 (30C). Signed // 8-bit number. Calculated in production test.. // Field: [7:0] SOC_ADC_ABS_OFFSET_TEMP1 // // SOC_ADC offset in absolute reference mode at temperature 1 (30C). Signed // 8-bit number. Calculated in production test.. //***************************************************************************** // // Register: FCFG1_O_SOC_ADC_REF_TRIM_AND_OFFSET_EXT // //***************************************************************************** // Field: [5:0] SOC_ADC_REF_VOLTAGE_TRIM_TEMP1 // // Internal. Only to be used through TI provided API. //***************************************************************************** // // Register: FCFG1_O_AMPCOMP_TH1 // //***************************************************************************** // Field: [23:18] HPMRAMP3_LTH // // Internal. Only to be used through TI provided API. // Field: [15:10] HPMRAMP3_HTH // // Internal. Only to be used through TI provided API. // Field: [9:6] IBIASCAP_LPTOHP_OL_CNT // // Internal. Only to be used through TI provided API. // Field: [5:0] HPMRAMP1_TH // // Internal. Only to be used through TI provided API. //***************************************************************************** // // Register: FCFG1_O_AMPCOMP_TH2 // //***************************************************************************** // Field: [31:26] LPMUPDATE_LTH // // Internal. Only to be used through TI provided API. // Field: [23:18] LPMUPDATE_HTM // // Internal. Only to be used through TI provided API. // Field: [15:10] ADC_COMP_AMPTH_LPM // // Internal. Only to be used through TI provided API. // Field: [7:2] ADC_COMP_AMPTH_HPM // // Internal. Only to be used through TI provided API. //***************************************************************************** // // Register: FCFG1_O_AMPCOMP_CTRL1 // //***************************************************************************** // Field: [30] AMPCOMP_REQ_MODE // // Internal. Only to be used through TI provided API. // Field: [23:20] IBIAS_OFFSET // // Internal. Only to be used through TI provided API. // Field: [19:16] IBIAS_INIT // // Internal. Only to be used through TI provided API. // Field: [15:8] LPM_IBIAS_WAIT_CNT_FINAL // // Internal. Only to be used through TI provided API. // Field: [7:4] CAP_STEP // // Internal. Only to be used through TI provided API. // Field: [3:0] IBIASCAP_HPTOLP_OL_CNT // // Internal. Only to be used through TI provided API. //***************************************************************************** // // Register: FCFG1_O_ANABYPASS_VALUE2 // //***************************************************************************** // Field: [13:0] XOSC_HF_IBIASTHERM // // Internal. Only to be used through TI provided API. //***************************************************************************** // // Register: FCFG1_O_VOLT_TRIM // //***************************************************************************** // Field: [28:24] VDDR_TRIM_HH // // Internal. Only to be used through TI provided API. // Field: [20:16] VDDR_TRIM_H // // Internal. Only to be used through TI provided API. // Field: [12:8] VDDR_TRIM_SLEEP_H // // Internal. Only to be used through TI provided API. // Field: [4:0] TRIMBOD_H // // Internal. Only to be used through TI provided API. //***************************************************************************** // // Register: FCFG1_O_OSC_CONF // //***************************************************************************** // Field: [29] ADC_SH_VBUF_EN // // Trim value for DDI_0_OSC:ADCDOUBLERNANOAMPCTL.ADC_SH_VBUF_EN. // Field: [28] ADC_SH_MODE_EN // // Trim value for DDI_0_OSC:ADCDOUBLERNANOAMPCTL.ADC_SH_MODE_EN. // Field: [27] ATESTLF_RCOSCLF_IBIAS_TRIM // // Trim value for DDI_0_OSC:ATESTCTL.ATESTLF_RCOSCLF_IBIAS_TRIM. // Field: [26:25] XOSCLF_REGULATOR_TRIM // // Trim value for DDI_0_OSC:LFOSCCTL.XOSCLF_REGULATOR_TRIM. // Field: [24:21] XOSCLF_CMIRRWR_RATIO // // Trim value for DDI_0_OSC:LFOSCCTL.XOSCLF_CMIRRWR_RATIO. // Field: [20:19] XOSC_HF_FAST_START // // Trim value for DDI_0_OSC:CTL1.XOSC_HF_FAST_START. // Field: [18] XOSC_OPTION // // 0: XOSC_HF unavailable (may not be bonded out) // 1: XOSC_HF available (default) // Field: [17] HPOSC_OPTION // // Internal. Only to be used through TI provided API. // Field: [16] HPOSC_BIAS_HOLD_MODE_EN // // Internal. Only to be used through TI provided API. // Field: [15:12] HPOSC_CURRMIRR_RATIO // // Internal. Only to be used through TI provided API. // Field: [11:8] HPOSC_BIAS_RES_SET // // Internal. Only to be used through TI provided API. // Field: [7] HPOSC_FILTER_EN // // Internal. Only to be used through TI provided API. // Field: [6:5] HPOSC_BIAS_RECHARGE_DELAY // // Internal. Only to be used through TI provided API. // Field: [2:1] HPOSC_SERIES_CAP // // Internal. Only to be used through TI provided API. // Field: [0] HPOSC_DIV3_BYPASS // // Internal. Only to be used through TI provided API. //***************************************************************************** // // Register: FCFG1_O_FREQ_OFFSET // //***************************************************************************** // Field: [31:16] HPOSC_COMP_P0 // // Internal. Only to be used through TI provided API. // Field: [15:8] HPOSC_COMP_P1 // // Internal. Only to be used through TI provided API. // Field: [7:0] HPOSC_COMP_P2 // // Internal. Only to be used through TI provided API. //***************************************************************************** // // Register: FCFG1_O_MISC_OTP_DATA_1 // //***************************************************************************** // Field: [28:27] PEAK_DET_ITRIM // // Internal. Only to be used through TI provided API. // Field: [26:24] HP_BUF_ITRIM // // Internal. Only to be used through TI provided API. // Field: [23:22] LP_BUF_ITRIM // // Internal. Only to be used through TI provided API. // Field: [21:20] DBLR_LOOP_FILTER_RESET_VOLTAGE // // Internal. Only to be used through TI provided API. // Field: [19:10] HPM_IBIAS_WAIT_CNT // // Internal. Only to be used through TI provided API. // Field: [9:4] LPM_IBIAS_WAIT_CNT // // Internal. Only to be used through TI provided API. // Field: [3:0] IDAC_STEP // // Internal. Only to be used through TI provided API. //***************************************************************************** // // Register: FCFG1_O_SHDW_DIE_ID_0 // //***************************************************************************** // Field: [31:0] ID_31_0 // // Shadow of DIE_ID_0 register in eFuse row number 5 //***************************************************************************** // // Register: FCFG1_O_SHDW_DIE_ID_1 // //***************************************************************************** // Field: [31:0] ID_63_32 // // Shadow of DIE_ID_1 register in eFuse row number 6 //***************************************************************************** // // Register: FCFG1_O_SHDW_DIE_ID_2 // //***************************************************************************** // Field: [31:0] ID_95_64 // // Shadow of DIE_ID_2 register in eFuse row number 7 //***************************************************************************** // // Register: FCFG1_O_SHDW_DIE_ID_3 // //***************************************************************************** // Field: [31:0] ID_127_96 // // Shadow of DIE_ID_3 register in eFuse row number 8 //***************************************************************************** // // Register: FCFG1_O_SHDW_SCAN_MCU3_SEC // //***************************************************************************** // Field: [31:24] SECURITY // // Internal. Only to be used through TI provided API. // Field: [22:11] ULL_MCU_RAM_0_REP // // Internal. Only to be used through TI provided API. // Field: [10:0] ULL_MCU_RAM_1_REP_1 // // Internal. Only to be used through TI provided API. //***************************************************************************** // // Register: FCFG1_O_SHDW_SCAN_DATA1_CRC // //***************************************************************************** // Field: [31] FLASH_RDY // // Internal. Only to be used through TI provided API. // Field: [8:1] CRC // // Internal. Only to be used through TI provided API. // Field: [0] TAP_DAP_LOCK_N // // Internal. Only to be used through TI provided API. //***************************************************************************** // // Register: FCFG1_O_SHDW_ANA_TRIM // //***************************************************************************** // Field: [30] ALT_VDDR_TRIM // // Internal. Only to be used through TI provided API. // Field: [29] DET_LOGIC_DIS // // Internal. Only to be used through TI provided API. // Field: [28:27] BOD_BANDGAP_TRIM_CNF_EXT // // Internal. Only to be used through TI provided API. // Field: [26:25] BOD_BANDGAP_TRIM_CNF // // Internal. Only to be used through TI provided API. // Field: [24] VDDR_ENABLE_PG1 // // Internal. Only to be used through TI provided API. // Field: [23] VDDR_OK_HYS // // Internal. Only to be used through TI provided API. // Field: [22:21] IPTAT_TRIM // // Internal. Only to be used through TI provided API. // Field: [20:16] VDDR_TRIM // // Internal. Only to be used through TI provided API. // Field: [15:11] TRIMBOD_INTMODE // // Internal. Only to be used through TI provided API. // Field: [10:6] TRIMBOD_EXTMODE // // Internal. Only to be used through TI provided API. // Field: [5:0] TRIMTEMP // // Internal. Only to be used through TI provided API. //***************************************************************************** // // Register: FCFG1_O_OSC_CONF1 // //***************************************************************************** // Field: [31:28] RCOSC_MF_BIAS_HTEMP // // Defines the MF_BIAS trim code to use for high temp. // Only valid if RCOSC_MF_SINGLE_TRIM_METHOD == 0 // Field: [27] RCOSC_MF_TEMP_DEPEND_MODE // // Defines whether dual trim was needed: // // 0: Dual trims needed on this chip // 1: Dual trims not needed on this chip // Field: [26] RCOSC_MF_SINGLE_TRIM_METHOD // // Defines trim method used: // // 0: Dual trim method // 1: Single trim method // Field: [3:0] RCOSC_MF_BIAS_ADJ // // Value is written to DDI_0_OSC:RCOSCMFCTL.RCOSC_MF_BIAS_ADJ by boot FW while // in safezone. //***************************************************************************** // // Register: FCFG1_O_DAC_BIAS_CNF // //***************************************************************************** // Field: [17:12] LPM_TRIM_IOUT // // Internal. Only to be used through TI provided API. // Field: [11:9] LPM_BIAS_WIDTH_TRIM // // Internal. Only to be used through TI provided API. // Field: [8] LPM_BIAS_BACKUP_EN // // Internal. Only to be used through TI provided API. //***************************************************************************** // // Register: FCFG1_O_TFW_PROBE // //***************************************************************************** // Field: [31:0] REV // // Internal. Only to be used through TI provided API. //***************************************************************************** // // Register: FCFG1_O_TFW_FT // //***************************************************************************** // Field: [31:0] REV // // Internal. Only to be used through TI provided API. //***************************************************************************** // // Register: FCFG1_O_DAC_CAL0 // //***************************************************************************** // Field: [31:16] SOC_DAC_VOUT_CAL_DECOUPLE_C2 // // Internal. Only to be used through TI provided API. // Field: [15:0] SOC_DAC_VOUT_CAL_DECOUPLE_C1 // // Internal. Only to be used through TI provided API. //***************************************************************************** // // Register: FCFG1_O_DAC_CAL1 // //***************************************************************************** // Field: [31:16] SOC_DAC_VOUT_CAL_PRECH_C2 // // Internal. Only to be used through TI provided API. // Field: [15:0] SOC_DAC_VOUT_CAL_PRECH_C1 // // Internal. Only to be used through TI provided API. //***************************************************************************** // // Register: FCFG1_O_DAC_CAL2 // //***************************************************************************** // Field: [31:16] SOC_DAC_VOUT_CAL_ADCREF_C2 // // Internal. Only to be used through TI provided API. // Field: [15:0] SOC_DAC_VOUT_CAL_ADCREF_C1 // // Internal. Only to be used through TI provided API. //***************************************************************************** // // Register: FCFG1_O_DAC_CAL3 // //***************************************************************************** // Field: [31:16] SOC_DAC_VOUT_CAL_VDDS_C2 // // Internal. Only to be used through TI provided API. // Field: [15:0] SOC_DAC_VOUT_CAL_VDDS_C1 // // Internal. Only to be used through TI provided API. # 10 "../application/oee_tasks/payload-manager/payload-manager.c" 2 # 1 "/home/oee_dev-002/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/source/ti/devices/cc13x4_cc26x4/inc/hw_memmap.h" 1 /****************************************************************************** * Filename: hw_memmap_h * * Copyright (c) 2015 - 2017, Texas Instruments Incorporated * 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 ORGANIZATION 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. * ******************************************************************************/ //***************************************************************************** // // The following are defines for the base address of the memories and // peripherals on the CPU_MMAP interface // //***************************************************************************** # 11 "../application/oee_tasks/payload-manager/payload-manager.c" 2 # 1 "/home/oee_dev-002/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/source/ti/devices/cc13x4_cc26x4/inc/hw_types.h" 1 /****************************************************************************** * Filename: hw_types.h * * Description: Common types and macros. * * Copyright (c) 2015 - 2022, Texas Instruments Incorporated * 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 ORGANIZATION 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. * ******************************************************************************/ # 1 "/home/oee_dev-002/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/source/ti/devices/cc13x4_cc26x4/inc/../inc/hw_chip_def.h" 1 /****************************************************************************** * Filename: hw_chip_def.h * * Description: Defines for device properties. * * Copyright (c) 2015 - 2022, Texas Instruments Incorporated * 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 ORGANIZATION 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. * ******************************************************************************/ //***************************************************************************** // //! \addtogroup config_api //! @{ // //***************************************************************************** //***************************************************************************** // // If building with a C++ compiler, make all of the definitions in this header // have a C binding. // //***************************************************************************** //***************************************************************************** // // Define CC_CHIP_ID code used in the following macros defined at the bottom: // CC_GET_CHIP_FAMILY/DEVICE/PACKAGE/HWREV // //***************************************************************************** /* CC2620F128 */ # 216 "/home/oee_dev-002/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/source/ti/devices/cc13x4_cc26x4/inc/../inc/hw_chip_def.h" //***************************************************************************** // // Mark the end of the C bindings section for C++ compilers. // //***************************************************************************** //***************************************************************************** // //! Close the Doxygen group. //! @} // //***************************************************************************** # 43 "/home/oee_dev-002/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/source/ti/devices/cc13x4_cc26x4/inc/hw_types.h" 2 //***************************************************************************** // // Common driverlib types // //***************************************************************************** typedef void (* FPTR_VOID_VOID_T) (void); typedef void (* FPTR_VOID_UINT8_T) (uint8_t); //***************************************************************************** // // This symbol forces simple driverlib functions to be inlined in the code // instead of using function calls. // //***************************************************************************** //***************************************************************************** // // C99 types only allows bitfield defintions on certain datatypes. // //***************************************************************************** typedef unsigned int __UINT32; //***************************************************************************** // // Macros for direct hardware access. // // If using these macros the programmer should be aware of any limitations to // the address accessed i.e. if it supports word and/or byte access. // //***************************************************************************** // Word (32 bit) access to address x // Read example : my32BitVar = HWREG(base_addr + offset) ; // Write example : HWREG(base_addr + offset) = my32BitVar ; // Half word (16 bit) access to address x // Read example : my16BitVar = HWREGH(base_addr + offset) ; // Write example : HWREGH(base_addr + offset) = my16BitVar ; // Byte (8 bit) access to address x // Read example : my8BitVar = HWREGB(base_addr + offset) ; // Write example : HWREGB(base_addr + offset) = my8BitVar ; # 12 "../application/oee_tasks/payload-manager/payload-manager.c" 2 # 1 "/home/oee_dev-002/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/source/ti/drivers/dpl/ClockP.h" 1 /* * Copyright (c) 2016-2024, Texas Instruments Incorporated * 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 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. */ /** ============================================================================ * @file ClockP.h * * @brief Clock interface for the RTOS Porting Interface * * The ClockP module can be used to schedule functions that run at intervals * specified in the underlying kernel's system ticks. ClockP instances are * one-shot. The one-shot function will be run once * after the specified period has elapsed since calling #ClockP_start(). * * The ClockP module can also be used to obtain the period of the kernel's * system tick in micro seconds. This is useful for determining the number of * ticks needed for setting a Clock object's period. * * When using the TI-RTOS kernel, ClockP functions are run at software * interrupt level. With FreeRTOS, the ClockP functions are either run by a * timer service task with priority configured by the application, or in * hardware interrupt directly, depending on the device platform. * * ============================================================================ */ # 1 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/lib/clang/15.0.7/include/stddef.h" 1 3 /*===---- stddef.h - Basic type definitions --------------------------------=== * * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. * See https://llvm.org/LICENSE.txt for license information. * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception * *===-----------------------------------------------------------------------=== */ # 60 "/home/oee_dev-002/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/source/ti/drivers/dpl/ClockP.h" 2 /*! * @brief Number of bytes greater than or equal to the size of any RTOS * ClockP object. * * NoRTOS: 32 (biggest of the HW-specific ClockP instance structs) * BIOS 6.x: 40 * BIOS 7.x: 36 * FreeRTOS: 68 */ /*! * @brief ClockP structure. * * Opaque structure that should be large enough to hold any of the * RTOS specific ClockP objects. */ typedef union ClockP_Struct { uint32_t dummy; /*!< Align object */ uint8_t data[(68)]; } ClockP_Struct; /*! * @brief Frequency-in-hertz struct */ typedef struct { uint32_t hi; /*!< most significant 32-bits of frequency */ uint32_t lo; /*!< least significant 32-bits of frequency */ } ClockP_FreqHz; /*! * @brief Status codes for ClockP APIs */ typedef enum { ClockP_OK = 0, ClockP_FAILURE = -1 } ClockP_Status; /*! * @brief Opaque client reference to an instance of a ClockP * * A #ClockP_Handle returned from #ClockP_create() or #ClockP_construct() * represents that instance. It is then is used in the other instance based * functions (e.g. #ClockP_start(), #ClockP_stop(), etc.). */ typedef void *ClockP_Handle; /*! * @brief Prototype for a ClockP callback function. */ typedef void (*ClockP_Fxn)(uintptr_t arg); /*! * @brief Basic ClockP Parameters * * Structure that contains the parameters passed into #ClockP_create() or * #ClockP_construct() when creating a ClockP instance. The * #ClockP_Params_init() function should be used to initialize the fields to * default values before the application sets the fields manually. The ClockP * default parameters are noted in #ClockP_Params_init(). * * The default startFlag is false, meaning the user will have to call * #ClockP_start(). If startFlag is true, the clock instance will be * started automatically when it is created. * * The default value of period is 0, indicating a one-shot clock object. * A non-zero period indicates the clock function will be called * periodically at the period rate (in system clock ticks), after the * clock is initially started and set to expire with the 'timeout' * argument. */ typedef struct { _Bool startFlag; /*!< Start immediately after instance is created. */ uint32_t period; /*!< Period of clock object. */ uintptr_t arg; /*!< Argument passed to the clock function. */ } ClockP_Params; /*! * @brief Function to construct a clock object. * * @param clockP Pointer to #ClockP_Struct object. * @param timeout The startup timeout, if supported by the RTOS. * @param clockFxn Function called when timeout or period expires. * * @param params Pointer to the instance configuration parameters. NULL * denotes to use the default parameters. The ClockP default * parameters are noted in #ClockP_Params_init(). * * @return A #ClockP_Handle on success or NULL on an error. */ extern ClockP_Handle ClockP_construct(ClockP_Struct *clockP, ClockP_Fxn clockFxn, uint32_t timeout, ClockP_Params *params); /*! * @brief Function to destruct a clock object * * @param clockP Pointer to a #ClockP_Struct object that was passed to * #ClockP_construct(). * * The clock object must be stopped before calling destruct. */ extern void ClockP_destruct(ClockP_Struct *clockP); /*! * @brief Function to create a clock object. * * This function will allocate memory for the instance's #ClockP_Struct. * * @param clockFxn Function called when timeout or period expires. * @param timeout The startup timeout, if supported by the RTOS. * @param params Pointer to the instance configuration parameters. NULL * denotes to use the default parameters. The ClockP default * parameters are noted in #ClockP_Params_init(). * * @return A #ClockP_Handle on success or NULL on an error. */ extern ClockP_Handle ClockP_create(ClockP_Fxn clockFxn, uint32_t timeout, ClockP_Params *params); /*! * @brief Function to delete a clock. * * @param handle A #ClockP_Handle returned from #ClockP_create() * * The clock object must be stopped before calling delete. */ extern void ClockP_delete(ClockP_Handle handle); /*! * @brief Get CPU frequency in Hertz * * @param freq Pointer to the FreqHz structure */ extern void ClockP_getCpuFreq(ClockP_FreqHz *freq); /*! * @brief Get the system tick period in number of micro seconds. * * @return The kernel's system tick period in micro seconds. */ extern uint32_t ClockP_getSystemTickPeriod(void); /*! * @brief Get the current tick value in number of system ticks. * * The value returned will wrap back to zero after it reaches the max * value that can be stored in 32 bits. * * @return Time in system clock ticks */ extern uint32_t ClockP_getSystemTicks(void); /*! * @brief Get the current tick value in number of system ticks. * * The value returned will wrap back to zero after it reaches the max * value that can be stored in 64 bits. * * @return Time in system clock ticks */ extern uint64_t ClockP_getSystemTicks64(void); /*! * @brief Get number of ClockP tick periods expected to expire between * now and the next interrupt from the timer peripheral * * Returns the number of ClockP tick periods that are expected to expire * between now and the next interrupt from the timer peripheral. * * Used internally by various Power modules * * @return Count in ticks */ extern uint32_t ClockP_getTicksUntilInterrupt(void); /*! * @brief Get timeout of clock instance. * * @param handle A #ClockP_Handle returned from #ClockP_create() or * #ClockP_construct() * * Returns the remaining time in clock ticks if the instance has * been started. If the clock is not active, the initial timeout value * is returned. * * @return Remaining timeout in clock ticks. */ extern uint32_t ClockP_getTimeout(ClockP_Handle handle); /*! * @brief Determine if a clock object is currently active (i.e., running) * * @param handle A #ClockP_Handle returned from #ClockP_create() or * #ClockP_construct() * * Returns true if the clock object is currently active, otherwise * returns false. * * @return active state */ extern _Bool ClockP_isActive(ClockP_Handle handle); /*! * @brief Initialize params structure to default values. * * The default parameters are: * - startFlag: false * - period: 0 * - arg: 0 * * @param params Pointer to the configuration parameters instance. */ extern void ClockP_Params_init(ClockP_Params *params); /*! * @brief Function to overwrite ClockP callback function and arg * * @param handle A #ClockP_Handle returned from #ClockP_create() or * #ClockP_construct() * @param clockFxn Function called when timeout or period expires. * @param arg Argument passed to \c clockFxn */ extern void ClockP_setFunc(ClockP_Handle handle, ClockP_Fxn clockFxn, uintptr_t arg); /*! * @brief Set the initial timeout * * @param handle A #ClockP_Handle returned from #ClockP_create() or * #ClockP_construct() * @param timeout Initial timeout in ClockP ticks * * Cannot be used to set the initial timeout if the clock has been started. */ extern void ClockP_setTimeout(ClockP_Handle handle, uint32_t timeout); /*! * @brief Set the clock period * * @param handle A #ClockP_Handle returned from #ClockP_create() or * #ClockP_construct() * @param period Periodic interval in ClockP ticks * * Cannot be used to set the clock period to zero. */ extern void ClockP_setPeriod(ClockP_Handle handle, uint32_t period); /*! * @brief Function to start a clock. * * @remark In some implementations, it may not always be possible to * to start a ClockP object with maximum timeout. This situation can * occur when a very fast tick period is used, and when #ClockP_start() * is called (by another ISR, by a higher-priority SwiP, or within a * clock function) while ClockP is in-process of servicing its timeout * queue. In this case the timeout of the newly-started object may * occur in the near future rather than in the far future. For * one-shot objects there will be a single early timeout; for periodic * objects there will be an early timeout, but the next timeout will * occur correctly offset from the first timeout. This condition is * due to a ClockP tick count wrap, and only occurs when there is a * very fast ClockP tick period such that there are virtual ClockP * tick period increments between the last timer interrupt to the * invocation of #ClockP_start(). For example, if the ClockP tick * period is 10 usec, and if the ClockP tick count is 0x10000005 when * the interrupt occurs, and if there are 3 intervening tick periods * (30 usec) before the call to #ClockP_start() in a clock function, * then the future timeout will be computed as * 0x10000005 + 3 + 0xFFFFFFFF = 0x10000007, only 2 ticks in the * future. In this case, the maximum timeout should be limited to * 0xFFFFFFFD to achieve the maximum delay from the last timer * interrupt. * * @param handle A #ClockP_Handle returned from #ClockP_create() or * #ClockP_construct() */ extern void ClockP_start(ClockP_Handle handle); /*! * @brief Function to stop a clock. * * @param handle A #ClockP_Handle returned from #ClockP_create() or * #ClockP_construct() * * It is ok to call #ClockP_stop() for a clock that has not been started. */ extern void ClockP_stop(ClockP_Handle handle); /*! * @brief Set delay in micro seconds * * @param usec A duration in micro seconds */ extern void ClockP_usleep(uint32_t usec); /*! * @brief Set delay in seconds * * @param sec A duration in seconds */ extern void ClockP_sleep(uint32_t sec); # 13 "../application/oee_tasks/payload-manager/payload-manager.c" 2 # 1 "/home/oee_dev-002/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/kernel/tirtos7/packages/xdc/runtime/Types.h" 1 # 1 "/home/oee_dev-002/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/kernel/tirtos7/packages/ti/sysbios/runtime/Types.h" 1 /* * Copyright (c) 2020, Texas Instruments Incorporated - http://www.ti.com * 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 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. * */ /*! * @file ti/sysbios/runtime/Types.h * @brief Basic constants and types * * This module defines basic constants and types used throughout the * SYS/BIOS. */ /* * ======== Types.h ======== */ # 1 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/lib/clang/15.0.7/include/stddef.h" 1 3 /*===---- stddef.h - Basic type definitions --------------------------------=== * * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. * See https://llvm.org/LICENSE.txt for license information. * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception * *===-----------------------------------------------------------------------=== */ # 50 "/home/oee_dev-002/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/kernel/tirtos7/packages/ti/sysbios/runtime/Types.h" 2 /* * legacy TI tools pre-define "__TI_COMPILER_VERSION__" * TI clang tools pre-define "__ti_version__" * we should stop using __ti__, but until then ... */ /*! @cond NODOC */ /* BIOS 6.x compatibility, use -Dxdc_std__include to disable */ # 1 "/home/oee_dev-002/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/kernel/tirtos7/packages/xdc/std.h" 1 /* * Copyright (c) 2020, Texas Instruments Incorporated - http://www.ti.com * 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 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. * */ /* * ======== std.h ======== */ # 1 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/lib/clang/15.0.7/include/stddef.h" 1 3 /*===---- stddef.h - Basic type definitions --------------------------------=== * * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. * See https://llvm.org/LICENSE.txt for license information. * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception * *===-----------------------------------------------------------------------=== */ # 43 "/home/oee_dev-002/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/kernel/tirtos7/packages/xdc/std.h" 2 /* * legacy TI tools pre-define "__TI_COMPILER_VERSION__" * TI clang tools pre-define "__ti_version__" * we should stop using__ti__, but until then ... */ # 63 "/home/oee_dev-002/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/kernel/tirtos7/packages/xdc/std.h" typedef _Bool xdc_Bool; typedef char xdc_Char; typedef unsigned char xdc_UChar; typedef short xdc_Short; typedef unsigned short xdc_UShort; typedef int xdc_Int; typedef unsigned int xdc_UInt; typedef long xdc_Long; typedef unsigned long xdc_ULong; typedef long long xdc_LLong; typedef unsigned long long xdc_ULLong; typedef float xdc_Float; typedef double xdc_Double; typedef long double xdc_LDouble; typedef size_t xdc_SizeT; typedef va_list xdc_VaList; /* Generic Extended Types */ typedef void *xdc_Ptr; typedef const void *xdc_CPtr; typedef char *xdc_String; typedef const char *xdc_CString; #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-Wpragmas" #pragma GCC diagnostic ignored "-Wstrict-prototypes" typedef int (*xdc_Fxn)(); /* function pointer */ #pragma GCC diagnostic pop typedef intptr_t xdc_IArg; typedef uintptr_t xdc_UArg; /* 8-bit types are not supported on some targets */ typedef int8_t xdc_Int8; typedef uint8_t xdc_UInt8; typedef uint8_t xdc_Bits8; typedef int16_t xdc_Int16; typedef uint16_t xdc_UInt16; typedef uint16_t xdc_Bits16; typedef int32_t xdc_Int32; typedef uint32_t xdc_UInt32; typedef uint32_t xdc_Bits32; /* 32-bit types are not supported on some targets */ typedef int64_t xdc_Int64; typedef uint64_t xdc_UInt64; typedef uint64_t xdc_Bits64; /* conversion macros (inline functions) */ static inline xdc_Ptr xdc_iargToPtr(xdc_IArg a) { return ((xdc_Ptr)a); } static inline xdc_Ptr xdc_uargToPtr(xdc_UArg a) { return ((xdc_Ptr)a); } static inline xdc_Fxn xdc_iargToFxn(xdc_IArg a) { return ((xdc_Fxn)a); } static inline xdc_Fxn xdc_uargToFxn(xdc_UArg a) { return ((xdc_Fxn)a); } /* * functions to efficiently convert a single precision float to an IArg * and vice-versa while maintaining client type safety * * Here the assumption is that sizeof(Float) <= sizeof(IArg); */ typedef union { xdc_Float f; xdc_IArg a; } xdc_FloatData; static inline xdc_IArg xdc_floatToArg(xdc_Float f) { xdc_FloatData u; u.f = f; return (u.a); } static inline xdc_Float xdc_argToFloat(xdc_IArg a) { xdc_FloatData u; u.a = a; return (u.f); } /* * short names ... */ # 164 "/home/oee_dev-002/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/kernel/tirtos7/packages/xdc/std.h" typedef xdc_Bool Bool; typedef xdc_Char Char; typedef xdc_UChar UChar; typedef xdc_Short Short; typedef xdc_UShort UShort; typedef xdc_Int Int; typedef xdc_UInt UInt; typedef xdc_Long Long; typedef xdc_ULong ULong; typedef xdc_LLong LLong; typedef xdc_ULLong ULLong; typedef xdc_Float Float; typedef xdc_Double Double; typedef xdc_LDouble LDouble; typedef xdc_SizeT SizeT; typedef xdc_VaList VaList; typedef xdc_Ptr Ptr; typedef xdc_CPtr CPtr; typedef xdc_String String; typedef xdc_CString CString; typedef xdc_Fxn Fxn; typedef xdc_IArg IArg; typedef xdc_UArg UArg; /* 8-bit types are not supported on some targets */ typedef xdc_Int8 Int8; typedef xdc_UInt8 UInt8; typedef xdc_Bits8 Bits8; typedef xdc_Int16 Int16; typedef xdc_UInt16 UInt16; typedef xdc_Bits16 Bits16; typedef xdc_Int32 Int32; typedef xdc_UInt32 UInt32; typedef xdc_Bits32 Bits32; /* 32-bit types are not supported on some targets */ typedef xdc_Int64 Int64; typedef xdc_UInt64 UInt64; typedef xdc_Bits64 Bits64; /* DEPRECATED Aliases */ typedef xdc_UArg Arg; typedef xdc_UInt8 Uint8; typedef xdc_UInt16 Uint16; typedef xdc_UInt32 Uint32; typedef xdc_UInt Uns; /* these macros are used when building in the package.bld flow */ /* * ======== xdc__CODESECT ======== * Code-Section Directive * * Targets can optionally #define xdc__CODESECT in their specific * std.h files. This directive is placed in front of all * "extern" function declarations, and specifies a section-name in * which to place this function. This approach * provides more control on combining/organizing groups of * related functions into a single named sub-section (e.g., * "init-code") If this macro is not defined by the target, an * empty definition is used instead. */ /* * ======== xdc__META ======== * Embed unreferenced string in the current file * * Strings emebdded via xdc__META can be placed in a section that is * _not_ loaded on the target but are, nevertheless, part of the * executable and available to loaders. * * Different targets may define this macro in a way that places these * strings in an output section that is not loaded (and therefore does * not takeup space on the target). Unless the target provides a * definition of xdc__META, the definition below simply defines * as string constant in the current file. */ # 66 "/home/oee_dev-002/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/kernel/tirtos7/packages/ti/sysbios/runtime/Types.h" 2 # 1 "/home/oee_dev-002/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/kernel/tirtos7/packages/ti/sysbios/runtime/Types_defs.h" 1 /* * Copyright (c) 2020, Texas Instruments Incorporated * 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 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. */ /* * ======== Types_defs.h ======== */ /* @cond LONG_NAMES */ # 70 "/home/oee_dev-002/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/kernel/tirtos7/packages/ti/sysbios/runtime/Types_defs.h" /* @endcond */ # 69 "/home/oee_dev-002/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/kernel/tirtos7/packages/ti/sysbios/runtime/Types.h" 2 /*! @endcond */ /*! * @brief 64-bit timestamp struct * * Some platforms only support 32-bit timestamps. In this case, the most * significant 32-bits are always set to 0. */ typedef struct { /*! * @brief most significant 32-bits of timestamp */ uint32_t hi; /*! * @brief least significant 32-bits of timestamp */ uint32_t lo; } ti_sysbios_runtime_Types_Timestamp64; /*! * @brief 64-bit frequency struct (in Hz) * * Some platforms only support 32-bit frequency. In this case, the most * significant 32-bits are always set to 0. */ typedef struct { /*! * @brief most significant 32-bits of frequency */ uint32_t hi; /*! * @brief least significant 32-bits of frequency */ uint32_t lo; } ti_sysbios_runtime_Types_FreqHz; /*! @cond NODOC */ typedef int (*ti_sysbios_runtime_Types_Fxn)(); /* conversion macros (inline functions) */ static inline void * ti_sysbios_runtime_Types_iargToPtr(intptr_t a) { return ((void *)a); } static inline void * ti_sysbios_runtime_Types_uargToPtr(uintptr_t a) { return ((void *)a); } static inline ti_sysbios_runtime_Types_Fxn ti_sysbios_runtime_Types_iargToFxn(intptr_t a) { return ((ti_sysbios_runtime_Types_Fxn)a); } static inline ti_sysbios_runtime_Types_Fxn ti_sysbios_runtime_Types_uargToFxn(uintptr_t a) { return ((ti_sysbios_runtime_Types_Fxn)a); } /* * functions to efficiently convert a single precision float to an IArg * and vice-versa while maintaining client type safety * * Here the assumption is that sizeof(Float) <= sizeof(IArg); */ typedef union { float f; intptr_t a; } ti_sysbios_runtime_Types_FloatData; static inline intptr_t ti_sysbios_runtime_Types_floatToArg(float f) { ti_sysbios_runtime_Types_FloatData u; u.f = f; return (u.a); } static inline float ti_sysbios_runtime_Types_argToFloat(intptr_t a) { ti_sysbios_runtime_Types_FloatData u; u.a = a; return (u.f); } /*! @endcond */ /*! @cond NODOC */ # 1 "/home/oee_dev-002/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/kernel/tirtos7/packages/ti/sysbios/runtime/Types_defs.h" 1 /* * Copyright (c) 2020, Texas Instruments Incorporated * 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 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. */ /* * ======== Types_defs.h ======== */ /* @cond LONG_NAMES */ # 70 "/home/oee_dev-002/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/kernel/tirtos7/packages/ti/sysbios/runtime/Types_defs.h" /* @endcond */ # 170 "/home/oee_dev-002/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/kernel/tirtos7/packages/ti/sysbios/runtime/Types.h" 2 /*! @endcond */ # 2 "/home/oee_dev-002/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/kernel/tirtos7/packages/xdc/runtime/Types.h" 2 # 15 "../application/oee_tasks/payload-manager/payload-manager.c" 2 /* OEE includes */ # 1 "../application/oee_tasks/payload-manager/../utils/device_info.h" 1 # 1 "/home/oee_dev-002/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/source/ti/posix/ticlang/time.h" 1 /* * Copyright (c) 2017-2022 Texas Instruments Incorporated - http://www.ti.com * 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 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. */ /* * ======== time.h ======== */ /* compiler vendor check */ # 1 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/lib/clang/15.0.7/include/stddef.h" 1 3 /*===---- stddef.h - Basic type definitions --------------------------------=== * * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. * See https://llvm.org/LICENSE.txt for license information. * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception * *===-----------------------------------------------------------------------=== */ # 48 "/home/oee_dev-002/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/source/ti/posix/ticlang/time.h" 2 /* local header files */ # 1 "/home/oee_dev-002/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/source/ti/posix/ticlang/signal.h" 1 /* * Copyright (c) 2017-2022 Texas Instruments Incorporated - http://www.ti.com * 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 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. */ /* * ======== signal.h ======== */ /* compiler vendor check */ # 49 "/home/oee_dev-002/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/source/ti/posix/ticlang/signal.h" /* include toolchain's header file */ # 1 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/../../include/c/signal.h" 1 3 /*- * Copyright (c) 1982, 1986, 1989, 1991, 1993 * The Regents of the University of California. All rights reserved. * (c) UNIX System Laboratories, Inc. * * Copyright (c) 2014-2014 Texas Instruments Incorporated * * All or some portions of this file are derived from material licensed * to the University of California by American Telephone and Telegraph * Co. or Unix System Laboratories, Inc. and are reproduced herein with * the permission of UNIX System Laboratories, 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. * 4. Neither the name of the University 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 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. * * @(#)signal.h 8.4 (Berkeley) 5/4/95 * $FreeBSD: release/10.0.0/sys/sys/signal.h 233519 2012-03-26 19:12:09Z rmh $ */ # 56 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/../../include/c/signal.h" 3 int raise(int); typedef void __sighandler_t(int); # 80 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/../../include/c/signal.h" 3 __sighandler_t *signal(int s, __sighandler_t * t); typedef int sig_atomic_t; # 51 "/home/oee_dev-002/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/source/ti/posix/ticlang/signal.h" 2 # 68 "/home/oee_dev-002/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/source/ti/posix/ticlang/signal.h" /* ************************************************************************* * signal types ************************************************************************* */ /* * ======== sigval ======== */ union sigval { int sival_int; /* integer signal value */ void *sival_ptr; /* pointer signal value */ }; /* Deprecated. This typedef is for compatibility with old SDKs. It is * not part of the POSIX standard. It will be removed in a future * release. TIRTOS-1317 */ typedef union sigval sigval; /* * ======== sigevent ======== */ struct sigevent { int sigev_notify; /* notification type */ int sigev_signo; /* signal number */ union sigval sigev_value; /* signal value */ void (*sigev_notify_function)(union sigval val); /* notify function */ pthread_attr_t *sigev_notify_attributes; /* notify attributes */ }; /* Deprecated. This typedef is for compatibility with old SDKs. It is * not part of the POSIX standard. It will be removed in a future * release. TIRTOS-1317 */ typedef struct sigevent sigevent; # 52 "/home/oee_dev-002/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/source/ti/posix/ticlang/time.h" 2 /* toolchain header files */ # 1 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/../../include/c/time.h" 1 3 /*****************************************************************************/ /* time.h */ /* */ /* Copyright (c) 1990 Texas Instruments Incorporated */ /* http://www.ti.com/ */ /* */ /* 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. */ /* */ /*****************************************************************************/ # 1 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/abi_prefix.h" 1 3 /*****************************************************************************/ /* ABI_PREFIX.H */ /* */ /* Copyright (c) 2016 Texas Instruments Incorporated */ /* http://www.ti.com/ */ /* */ /* 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. */ /* */ /*****************************************************************************/ # 43 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/../../include/c/time.h" 2 3 # 64 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/../../include/c/time.h" 3 /* Use sys/_types.h for clock_t and time_t if it exists */ # 76 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/../../include/c/time.h" 3 typedef __int64_t __time64_t; typedef __uint32_t __time32_t; # 122 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/../../include/c/time.h" 3 /*---------------------------------------------------------------------------*/ /* The ARM ABI says __aeabi_CLOCKS_PER_SEC is a const int. C99 says that */ /* CLOCKS_PER_SEC is a constant of type clock_t. Therefore on ARM we define */ /* type of __clocks_per_sec_t as int and for all other targets it is clock_t */ /*---------------------------------------------------------------------------*/ typedef int __clocks_per_sec_t; extern const __clocks_per_sec_t __aeabi_CLOCKS_PER_SEC; struct tm { int tm_sec; /* seconds after the minute - [0,59] */ int tm_min; /* minutes after the hour - [0,59] */ int tm_hour; /* hours after the midnight - [0,23] */ int tm_mday; /* day of the month - [1,31] */ int tm_mon; /* months since January - [0,11] */ int tm_year; /* years since 1900 */ int tm_wday; /* days since Sunday - [0,6] */ int tm_yday; /* days since Jan 1st - [0,365] */ int tm_isdst; /* Daylight Savings Time flag */ }; /*************************************************************************/ /* TIME ZONE STRUCTURE DEFINITION */ /*************************************************************************/ typedef struct { short daylight; long timezone; /* seconds WEST of UTC. Strange but traditional */ char tzname[4]; char dstname[4]; } TZ; extern TZ _tz; /****************************************************************************/ /* FUNCTION DECLARATIONS. (NOTE : clock AND time ARE SYSTEM SPECIFIC) */ /****************************************************************************/ clock_t clock(void); __time32_t __time32(__time32_t *_timer); __time32_t __mktime32(struct tm *_tptr); double __difftime32(__time32_t _time1, __time32_t _time0); static __inline char *__ctime32(const __time32_t *_timer); struct tm *__gmtime32(const __time32_t *_timer); struct tm *__localtime32(const __time32_t *_timer); __time64_t __time64(__time64_t *_timer); __time64_t __mktime64(struct tm *_tptr); double __difftime64(__time64_t _time1, __time64_t _time0); static __inline char *__ctime64(const __time64_t *_timer); struct tm *__gmtime64(const __time64_t *_timer); struct tm *__localtime64(const __time64_t *_timer); char *asctime(const struct tm *_timeptr); size_t strftime(char * restrict _out, size_t _maxsize, const char * restrict _format, const struct tm * restrict _timeptr); static __inline char *__ctime32(const __time32_t *timer) { return asctime(__localtime32(timer)); } static __inline char *__ctime64(const __time64_t *timer) { return asctime(__localtime64(timer)); } /*-----------------------------------------------------------------------*/ /* The user may define __TI_TIME_USES_64=1 to redirect all time */ /* functions to time64 functions. */ /*-----------------------------------------------------------------------*/ static __inline time_t time(time_t *timer) { return __time64(timer); } static __inline time_t mktime(struct tm *tptr) { return __mktime64(tptr); } static __inline double difftime(time_t time1, time_t time0) { return __difftime64(time1, time0); } static __inline char *ctime(const time_t *timer) { return __ctime64(timer); } static __inline struct tm *gmtime(const time_t *timer) { return __gmtime64(timer); } static __inline struct tm *localtime(const time_t *timer) { return __localtime64(timer); } # 236 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/../../include/c/time.h" 3 /*---------------------------------------------------------------------------*/ /* A header file conforming to ARM CLIB ABI (GENC-003539) should */ /* define _AEABI_PORTABLE when _AEABI_PORTABILITY_LEVEL is defined. */ /*---------------------------------------------------------------------------*/ /*----------------------------------------------------------------------------*/ /* If sys/cdefs.h is available, go ahead and include it. xlocale.h assumes */ /* this file will have already included sys/cdefs.h. */ /*----------------------------------------------------------------------------*/ /*----------------------------------------------------------------------------*/ /* Include xlocale/_time.h if POSIX is enabled. This will expose the */ /* xlocale time interface. */ /*----------------------------------------------------------------------------*/ # 1 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/xlocale/_time.h" 1 3 /*- * SPDX-License-Identifier: BSD-2-Clause-FreeBSD * * Copyright (c) 2011, 2012 The FreeBSD Foundation * All rights reserved. * * This software was developed by David Chisnall under sponsorship from * the FreeBSD Foundation. * * 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. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR 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 AUTHOR 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. * * $FreeBSD$ */ /* * This file is included from both locale.h and xlocale.h. We need to expose * the declarations unconditionally if we are included from xlocale.h, but only * if we are in POSIX2008 mode if included from locale.h. */ size_t strftime_l(char * restrict, size_t, const char * restrict, const struct tm * restrict, locale_t) __attribute__((__format__ (__strftime__, 3, 0))); # 260 "/home/oee_dev-002/ti/ti_cgt_tiarmclang_3.2.2.LTS/include/c/../../include/c/time.h" 2 3 # 56 "/home/oee_dev-002/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/source/ti/posix/ticlang/time.h" 2 /* * Timer support. */ /* * CLOCK_REALTIME represents the realtime clock for the system. For this * clock, clock_gettime() returns the time since the beginning of the * Epoch. SYS/BIOS implements clock_gettime() and clock_settime() with * the ti.sysbios.hal.Seconds module for CLOCK_REALTIME. */ /* * CLOCK_MONOTONIC represents a system clock that cannot be set via * clock_settime(). For SYS/BIOS, CLOCK_MONOTONIC represents the * ti.sysbios.knl.Clock system clock. */ # 88 "/home/oee_dev-002/ti/simplelink_cc13xx_cc26xx_sdk_8_30_01_01/source/ti/posix/ticlang/time.h" /* * For clockId = CLOCK_REALTIME, clock_gettime() and clock_settime() use * the BIOS Seconds module to get/set the time. Before using clock_gettime() * with clockId = CLOCK_REALTIME, the Seconds module must be initialized. * This can be done by either calling clock_settime(CLOCK_REALTIME,...), * or Seconds_set(). * For clockId = CLOCK_MONOTONIC, clock_gettime() returns a time based on * ti.sysbios.knl.Clock ticks. */ extern int clock_gettime(clockid_t clockId, struct timespec *ts); extern int clock_nanosleep(clockid_t clock_id, int flags, const struct timespec *rqtp, struct timespec *rmtp); /* * Only clockId = CLOCK_REALTIME is supported for clock_settime(). Only * the value of ts->tv_sec is used is used in clock_settime(). * Returns EINVAL if clockId = CLOCK_MONOTONIC. */ extern int clock_settime(clockid_t clockId, const struct timespec *ts); /* * Create a timer based on the BIOS Clock module. To reduce code size, * the clockId parameter is ignored. */ extern int timer_create(clockid_t clockId, struct sigevent *evp, timer_t *timerid); extern int timer_delete(timer_t timerid); extern int timer_gettime(timer_t timerid, struct itimerspec *its); extern int timer_settime(timer_t timerid, int flags, const struct itimerspec *value, struct itimerspec *ovalue); extern int nanosleep(const struct timespec *rqtp, struct timespec *rmtp); # 8 "../application/oee_tasks/payload-manager/../utils/device_info.h" 2 /* Error Struct * Each bit corresponds to an specif error * If the bit is 0, means the everything is ok * If the bit is 1, means that an error occurred; * The max number of error parameters is 32 * Parameters: * BIT0 - CONNECTION STATUS * BIT1 - SERVER STATUS * BIT2 - MEMORY WORKING STATUS * BIT3 - MAIN POWER SOURCE STATUS * BIT4 - PAYLOAD MANAGER TASK STATUS * BIT5 - TIME SYNCHRONIZATION STATUS * BIT6 - COMMUNICATION MANAGEMENT TASK STATUS * BIT7 to BIT15 - Reserved for System * BIT16 to BIT47 - Available ERROR status to use with the function module * BIT48 to BIT63 - Available ERROR status to use with the function module * GEN1 used to leave the last bit as FORBIDDEN, bit I still dont know if it is necessary and the reason for that */ typedef uint64_t lib_status_t; /* For now, the system error names are the same as Gen1 */ typedef enum { NO_ERR = 0x0000000000000000, // 0 CONNECTION = 0x0000000000000001, // BIT 0 SERVER = 0x0000000000000002, // BIT 1 SERVER_UPSTREAM_SYNC = 0x0000000000000004, // BIT 2 TOKEN_REFRESH = 0x0000000000000008, // BIT 3 MAIN_PWR_SRC = 0x0000000000000010, // BIT 4 FUNC_MODULE_NOT_DETECTED = 0x0000000000000020, // BIT 5 GET_TIMESTAMP = 0x0000000000000040, // BIT 6 FUNCTION_MODULE_ERR_1 = 0x0000000000010000, // BIT 16 FUNCTION_MODULE_ERR_2 = 0x0000000000020000, // BIT 17 FUNCTION_MODULE_ERR_3 = 0x0000000000040000, // BIT 18 FUNCTION_MODULE_ERR_4 = 0x0000000000080000, // BIT 19 FUNCTION_MODULE_ERR_5 = 0x0000000000100000, // BIT 20 FUNCTION_MODULE_ERR_6 = 0x0000000000200000, // BIT 21 FUNCTION_MODULE_ERR_7 = 0x0000000000400000, // BIT 22 FUNCTION_MODULE_ERR_8 = 0x0000000000800000, // BIT 23 FUNCTION_MODULE_ERR_9 = 0x0000000001000000, // BIT 24 FUNCTION_MODULE_ERR_10 = 0x0000000002000000, // BIT 25 FUNCTION_MODULE_ERR_11 = 0x0000000004000000, // BIT 26 FUNCTION_MODULE_ERR_12 = 0x0000000008000000, // BIT 27 FUNCTION_MODULE_ERR_13 = 0x0000000010000000, // BIT 28 FUNCTION_MODULE_ERR_14 = 0x0000000020000000, // BIT 29 FUNCTION_MODULE_ERR_15 = 0x0000000040000000, // BIT 30 FUNCTION_MODULE_ERR_16 = 0x0000000080000000, // BIT 31 FUNCTION_MODULE_ERR_17 = 0x0000000100000000, // BIT 32 FUNCTION_MODULE_ERR_18 = 0x0000000200000000, // BIT 33 FUNCTION_MODULE_ERR_19 = 0x0000000400000000, // BIT 34 FUNCTION_MODULE_ERR_20 = 0x0000000800000000, // BIT 35 FUNCTION_MODULE_ERR_21 = 0x0000001000000000, // BIT 36 FUNCTION_MODULE_ERR_22 = 0x0000002000000000, // BIT 37 FUNCTION_MODULE_ERR_23 = 0x0000004000000000, // BIT 38 FUNCTION_MODULE_ERR_24 = 0x0000008000000000, // BIT 39 FUNCTION_MODULE_ERR_25 = 0x0000010000000000, // BIT 40 FUNCTION_MODULE_ERR_26 = 0x0000020000000000, // BIT 41 FUNCTION_MODULE_ERR_27 = 0x0000040000000000, // BIT 42 FUNCTION_MODULE_ERR_28 = 0x0000080000000000, // BIT 43 FUNCTION_MODULE_ERR_29 = 0x0000100000000000, // BIT 44 FUNCTION_MODULE_ERR_30 = 0x0000200000000000, // BIT 45 FUNCTION_MODULE_ERR_31 = 0x0000400000000000, // BIT 46 FUNCTION_MODULE_ERR_32 = 0x0000800000000000, // BIT 47 FUNCTION_MODULE_WARN_1 = 0x0001000000000000, // BIT 48 FUNCTION_MODULE_WARN_2 = 0x0002000000000000, // BIT 49 FUNCTION_MODULE_WARN_3 = 0x0004000000000000, // BIT 50 FUNCTION_MODULE_WARN_4 = 0x0008000000000000, // BIT 51 FUNCTION_MODULE_WARN_5 = 0x0010000000000000, // BIT 52 FUNCTION_MODULE_WARN_6 = 0x0020000000000000, // BIT 53 FUNCTION_MODULE_WARN_7 = 0x0040000000000000, // BIT 54 FUNCTION_MODULE_WARN_8 = 0x0080000000000000, // BIT 55 FUNCTION_MODULE_WARN_9 = 0x0100000000000000, // BIT 56 FUNCTION_MODULE_WARN_10 = 0x0200000000000000, // BIT 57 FUNCTION_MODULE_WARN_11 = 0x0400000000000000, // BIT 58 FUNCTION_MODULE_WARN_12 = 0x0800000000000000, // BIT 59 FUNCTION_MODULE_WARN_13 = 0x1000000000000000, // BIT 60 FUNCTION_MODULE_WARN_14 = 0x2000000000000000, // BIT 61 FUNCTION_MODULE_WARN_15 = 0x4000000000000000, // BIT 62 FUNCTION_MODULE_WARN_16 = 0x8000000000000000, // BIT 63 } lib_status_param_t; typedef struct { // char commissioning_wifi_ssid[33]; // char commissioning_wifi_pswd[33]; // char last_funcModule[3]; uint8_t leds_intensity; uint16_t send_interval; uint16_t measure_interval; uint16_t checkAdmin_interval; char network_name[33]; } minDevice_Param_t; typedef struct { char name[5]; // char energy_module_type[13]; char hw_version[10]; uint8_t fw_version[3]; uint8_t last_reset_reason; uint8_t num_of_variables; uint8_t num_of_parameters; // uint8_t num_of_commands; // uint16_t operation_mode; uint16_t time_to_read; uint16_t battery; // uint32_t func_mod_id; int signal_strength; uint32_t boot_timestamp; uint32_t obtained_timestamp; lib_status_t device_status; } minDevice_Data_t; /* * FUNCTIONS */ /** * @brief Function to return the bit value of an error parameter * * @note Use this to check error in a parameter * * @param[in] parameter Error parameter bit in the error_sts variable * * @returns The bit value of a specified parameter * */ lib_status_t lib_status_get_flag_value(lib_status_param_t parameter); /** * @brief Function to set a flag error (bit_n = 1) into the error status * "n" depends on the parameter informed * * @note Use this when a error occurred in a parameter * * @param[in] parameter Error parameter bit in the error_sts variable * * @returns NONE * */ void lib_status_set_flag(lib_status_param_t parameter); /** * @brief Function to unset a flag error (bit_n = 0) into the error status * "n" depends on the parameter informed * @note Use this when the parameter is working properly * * @param[in] parameter Error parameter bit in the error_sts variable * * @returns NONE */ void lib_status_clear_flag(lib_status_param_t parameter); /** * @brief Function to return the entire error status variable * * @note Use this to get the value of the original status variable to avoid * value change while processing the data; * * @param NONE * * @returns the Error Status value containing all parameters * */ lib_status_t lib_status_get_curr_value(); /** * @brief Function to return true if there is at least one error status activated * * @note Use this to know if any error bit is set to know what must be the * next state * * @param NONE * * @returns True if any error bit is set or False if none error bit is set * */ _Bool lib_status_check_any_error(); /** * @brief Function to return True if among all the error bits only the Connection/Server * bits are set * * @note Use this to know if any error bit is set to know what must be the * next state * * @param NONE * * @returns 1 if any error bit is set or 0 if none error bit is set * */ _Bool lib_status_check_only_connection_error(); _Bool lib_status_check_connection_error(); /** * @brief Function to return True if among all the status bits there is any * warning bit set * * @note Use this to know if any warning bit is set to know what must be the * next state * * @param NONE * * @returns 1 if any warning bit is set or 0 if none warning bit is set * */ _Bool lib_status_check_warnings(); uint8_t lib_status_get_system_bits_error(); /* Timestamp */ uint32_t get_boot_timestamp(void); uint32_t get_current_timestamp(void); void update_timestamp(uint32_t new_timestamp); int get_seconds2wait(uint16_t interval); /* Intervals */ uint16_t get_measure_interval(); void update_measure_interval(uint16_t meas_int); uint16_t get_send_interval(); void update_send_interval(uint16_t send_int); # 18 "../application/oee_tasks/payload-manager/payload-manager.c" 2 # 1 "../application/oee_tasks/payload-manager/../utils/oee_utils.h" 1 void init_oeeDebug(); void oeeDebug(const char *format, ...); # 19 "../application/oee_tasks/payload-manager/payload-manager.c" 2 /* Extern variables used to CoAP communication with border router */ extern volatile _Bool connectedFlg; char thing_alias[12]; dataPoint_t dataPoint = {.packet_id = 0}; static dataStack_t dataStack; void updateThingAlias() { uint32_t macAddrLsb = (*((volatile unsigned long *)(0x50000800 + 0x000002F0))); uint32_t macAddrMsb = (*((volatile unsigned long *)(0x50000800 + 0x000002F4))); uint8_t mac[8]; mac[0] = (macAddrMsb >> 24) & 0xFF; mac[1] = (macAddrMsb >> 16) & 0xFF; mac[2] = (macAddrMsb >> 8) & 0xFF; mac[3] = (macAddrMsb >> 0) & 0xFF; mac[4] = (macAddrLsb >> 24) & 0xFF; mac[5] = (macAddrLsb >> 16) & 0xFF; mac[6] = (macAddrLsb >> 8) & 0xFF; mac[7] = (macAddrLsb >> 0) & 0xFF; // oeeDebug("Init"); // for (int i = 0; i < 8; i++) { // oeeDebug("%x", mac[i]); // } // oeeDebug("End"); snprintf(thing_alias, sizeof(thing_alias), "%s-%x%x%x%x", "io", mac[4], mac[5], mac[6], mac[7]); // oeeDebug("%s", thing_alias); } void dataStack_init(void) { SemaphoreP_Params semParams; // Inicializa o mutex (binário) SemaphoreP_Params_init(&semParams); semParams.mode = SemaphoreP_Mode_BINARY; dataStack.mutexHandle = SemaphoreP_construct(&dataStack.mutex, 1, &semParams); // disponível no início // if (dataStack.mutexHandle == NULL) { // // lidar com erro // } // Inicializa o semáforo de contagem SemaphoreP_Params_init(&semParams); semParams.mode = SemaphoreP_Mode_COUNTING; dataStack.countSemHandle = SemaphoreP_construct(&dataStack.countSem, 0, &semParams); // começa vazio // if (dataStack.countSemHandle == NULL) { // // lidar com erro // } dataStack.top = -1; dataStack.count = 0; } void dataStack_push(dataPoint_t *newData) { SemaphoreP_pend(dataStack.mutexHandle, ~(0)); if (dataStack.count == 3) { // Remove o mais antigo (posição 0), move tudo uma posição para baixo memmove(&dataStack.buffer[0], &dataStack.buffer[1], sizeof(dataPoint_t) * (3 - 1)); dataStack.top = 3 - 1; dataStack.count = 3 - 1; } memcpy(&dataStack.buffer[dataStack.top], newData, sizeof(dataPoint_t)); dataStack.top++; dataStack.count++; SemaphoreP_post(dataStack.mutexHandle); SemaphoreP_post(dataStack.countSemHandle); // sinaliza que há novo dado } _Bool dataStack_pop(dataPoint_t *outData) { // Espera até que tenha algo pra ler SemaphoreP_pend(dataStack.countSemHandle, ~(0)); // Espera até que o mutex esteja liberado SemaphoreP_pend(dataStack.mutexHandle, ~(0)); if (dataStack.count == 0) { SemaphoreP_post(dataStack.mutexHandle); return 0; } dataStack.top--; dataStack.count--; memcpy(outData, &dataStack.buffer[dataStack.top], sizeof(dataPoint_t)); SemaphoreP_post(dataStack.mutexHandle); return 1; } void *payloadManagerThread(void *arg0) { dataStack_init(); updateThingAlias(); oeeDebug("PayloadManager task running"); while (get_boot_timestamp() <= 0) { sleep(5); } while (1) { if(connectedFlg) { sleep(get_seconds2wait(get_send_interval())); // sleep(10); //debug oeeDebug("Creating dataPoint"); /* Create dataPoint */ dataPoint.timestamp = get_current_timestamp(); dataPoint.status = /*lib_status_get_curr_value()*/ (uint64_t)15; dataPoint.packet_id++; dataPoint.rssi = /*get_network_signal_quality()*/ 19; // oeeDebug("Timestamp: %d", dataPoint.timestamp); // oeeDebug("Status: %d", dataPoint.status); // oeeDebug("Cnt: %d", dataPoint.packet_id); // oeeDebug("RSSI: %d", dataPoint.rssi); dataStack_push(&dataPoint); oeeDebug("DataPoint created and pushed to stack"); lib_status_clear_flag(CONNECTION); } else { // oeeDebug("Payload manager waiting connection"); sleep(10); } } return ((void*)0); }