CC23x0R5DriverLibrary
hw_platform.h
Go to the documentation of this file.
1 /******************************************************************************
2  * Copyright (c) 2021-2023 Texas Instruments Incorporated. All rights reserved.
3  *
4  * Redistribution and use in source and binary forms, with or without
5  * modification, are permitted provided that the following conditions are met:
6  *
7  * 1) Redistributions of source code must retain the above copyright notice,
8  * this list of conditions and the following disclaimer.
9  *
10  * 2) Redistributions in binary form must reproduce the above copyright notice,
11  * this list of conditions and the following disclaimer in the documentation
12  * and/or other materials provided with the distribution.
13  *
14  * 3) Neither the name of the copyright holder nor the names of its contributors
15  * may be used to endorse or promote products derived from this software
16  * without specific prior written permission.
17  *
18  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
19  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
20  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
21  * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
22  * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
23  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
24  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
25  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
26  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
27  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
28  * POSSIBILITY OF SUCH DAMAGE.
29  ******************************************************************************/
30 #ifndef __HW_PLATFORM_H__
31 #define __HW_PLATFORM_H__
32 #include "hw_memmap.h"
33 #include "hw_pmctl.h"
34 
35 //*****************************************************************************
36 //
37 // Address, offset and constant definitions
38 //
39 //*****************************************************************************
40 // --- ROM definitions ---
42 #define ROM_FWREV_ADDR (ROM_BASE + 0x0048)
43 #define ROM_HAPI_BASE (ROM_BASE + 0x004C)
45 #define ROM_CRC_ADDR (ROM_BASE + ROM_SIZE - 4)
47 
48 // --- SRAM definitions ---
51 #define SRAMREP_MAGICWORD 0x40008100
52 
53 //*****************************************************************************
54 //
55 // Boot status definitions (available through PMCTL::BOOTSTA) in addition to
56 // the defines listed in hw_pmctl.h
57 //
58 //*****************************************************************************
59 // TODO: Move the two XX_START_INIT defines to hw_pmctl.h (LPRFROM-661).
61 #define PMCTL_BOOTSTA_BOOT_COMPLETE (PMCTL_BOOTSTA_FLAG_MODE_BLDR)
62 #define PMCTL_BOOTSTA_BLDR_START_INIT (PMCTL_BOOTSTA_FLAG_MODE_BLDR | 0x02)
64 #define PMCTL_BOOTSTA_BLDR_COMPLETE (PMCTL_BOOTSTA_FLAG_MODE_APP)
66 #define PMCTL_BOOTSTA_APP_START_INIT (PMCTL_BOOTSTA_FLAG_MODE_APP | 0x02)
68 
69 #if !(defined(__ASM_INCLUDE__))
70 // Only included in C files
71 
73 typedef union
74 {
75  uint32_t val32;
76  struct
77  {
78  uint32_t bCcfgValid:1;
79  uint32_t bAppCanBoot:1;
80  uint32_t bChipEraseAllowed:1;
81  uint32_t bParamsFromCcfg:1;
82  uint32_t bBldrAllowDbg:1;
83  uint32_t res0:27;
84  } bldr;
86 
87 #endif
88 
89 #endif // __HW_PLATFORM_H__
Data type for passing flags to bootloader/application entry function.
Definition: hw_platform.h:73
uint32_t val32
32b value of word
Definition: hw_platform.h:75