8231db4c079d72d3cab087415f3929a0e9e4e9c6
1 /*
2 * Copyright (c) 2018-2020, Texas Instruments Incorporated
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 *
9 * * Redistributions of source code must retain the above copyright
10 * notice, this list of conditions and the following disclaimer.
11 *
12 * * Redistributions in binary form must reproduce the above copyright
13 * notice, this list of conditions and the following disclaimer in the
14 * documentation and/or other materials provided with the distribution.
15 *
16 * * Neither the name of Texas Instruments Incorporated nor the names of
17 * its contributors may be used to endorse or promote products derived
18 * from this software without specific prior written permission.
19 *
20 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
21 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
22 * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
23 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
24 * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
25 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
26 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
27 * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
28 * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
29 * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
30 * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31 */
32 /**
33 * \file V0/sciclient_defaultBoardcfg.c
34 *
35 * \brief File containing the boardcfg default data structure to
36 * send TISCI_MSG_BOARD_CONFIG message.
37 *
38 */
39 /* ========================================================================== */
40 /* Include Files */
41 /* ========================================================================== */
43 #include <ti/drv/sciclient/soc/sysfw/include/am65x/tisci_hosts.h>
44 #include <ti/drv/sciclient/soc/sysfw/include/am65x/tisci_boardcfg_constraints.h>
45 #include <ti/drv/sciclient/soc/V0/sciclient_defaultBoardcfg.h>
47 /* ========================================================================== */
48 /* Global Variables */
49 /* ========================================================================== */
51 #if defined (BUILD_MCU1_0)
52 const struct tisci_boardcfg gBoardConfigLow
53 __attribute__(( aligned(128), section(".boardcfg_data") )) =
54 {
55 /* tisci_boardcfg_abi_rev */
56 .rev = {
57 .tisci_boardcfg_abi_maj = TISCI_BOARDCFG_ABI_MAJ_VALUE,
58 .tisci_boardcfg_abi_min = TISCI_BOARDCFG_ABI_MIN_VALUE,
59 },
61 /* tisci_boardcfg_control */
62 .control = {
63 .subhdr = {
64 .magic = TISCI_BOARDCFG_CONTROL_MAGIC_NUM,
65 .size = sizeof(struct tisci_boardcfg_control),
66 },
67 /* Enable/disable support for System Firmware main isolation.
68 * If disabled, main isolation SCI message will be rejected with NAK.
69 */
70 .main_isolation_enable = 0x5A,
71 /* Host-ID allowed to send SCI-message for main isolation.
72 * If mismatch, SCI message will be rejected with NAK.
73 */
74 .main_isolation_hostid = TISCI_HOST_ID_R5_1,
75 },
77 /* tisci_boardcfg_sec_proxy */
78 .secproxy = {
79 .subhdr = {
80 .magic = TISCI_BOARDCFG_SECPROXY_MAGIC_NUM,
81 .size = sizeof(struct tisci_boardcfg_secproxy),
82 },
83 /* Memory allocation for messages scaling factor. In current design,
84 * only value of “1” is supported. For future design, a value of “2”
85 * would double all memory allocations and credits, “3” would triple,
86 * and so on.
87 */
88 .scaling_factor = 0x1,
89 /* Memory allocation for messages profile number. In current design,
90 * only a value of “1” is supported. “0” is always invalid due to
91 * fault tolerance.
92 */
93 .scaling_profile = 0x1,
94 /* Do not configure main nav secure proxy. This removes all MSMC memory
95 * demands from System Firmware but limits MPU channels to one set of
96 * secure and one set of insecure. In current design, supports only “0”.
97 */
98 .disable_main_nav_secure_proxy = 0,
99 },
101 /* tisci_boardcfg_msmc */
102 .msmc = {
103 .subhdr = {
104 .magic = TISCI_BOARDCFG_MSMC_MAGIC_NUM,
105 .size = sizeof(struct tisci_boardcfg_msmc),
106 },
107 /* If the whole memory is X MB the value you write to this field is n.
108 * The value of n sets the cache size as n * X/32. The value of n should
109 * be given in steps of 4, which makes the size of cache to be
110 * configured in steps on X/8 MB.
111 */
112 .msmc_cache_size = 0x00,
113 },
115 /* boardcfg_dbg_cfg */
116 .debug_cfg = {
117 .subhdr = {
118 .magic = TISCI_BOARDCFG_DBG_CFG_MAGIC_NUM,
119 .size = sizeof(struct tisci_boardcfg_dbg_cfg),
120 },
121 .trace_dst_enables = 0,
122 .trace_src_enables = 0,
123 /* This enables the trace for DMSC logging. Should be used only for
124 * debug. Comment below if sysfw trace is not needed */
125 /* .trace_dst_enables = (TISCI_BOARDCFG_TRACE_DST_UART0 | */
126 /* TISCI_BOARDCFG_TRACE_DST_ITM | */
127 /* TISCI_BOARDCFG_TRACE_DST_MEM), */
128 /* .trace_src_enables = (TISCI_BOARDCFG_TRACE_SRC_PM | */
129 /* TISCI_BOARDCFG_TRACE_SRC_RM | */
130 /* TISCI_BOARDCFG_TRACE_SRC_SEC | */
131 /* TISCI_BOARDCFG_TRACE_SRC_BASE | */
132 /* TISCI_BOARDCFG_TRACE_SRC_USER | */
133 /* TISCI_BOARDCFG_TRACE_SRC_SUPR), */
134 },
135 };
136 #endif