gawaskar kanagaraj / Mbed 2 deprecated Nucleo_printf

Dependencies:   mbed

Committer:
gawas
Date:
Fri Aug 23 16:43:44 2019 +0000
Revision:
0:ccdea31d8eba
init funtion;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
gawas 0:ccdea31d8eba 1 #include <stdint.h>
gawas 0:ccdea31d8eba 2
gawas 0:ccdea31d8eba 3 #include "xml_data.h"
gawas 0:ccdea31d8eba 4 #include "kernel/circular_buffer.h"
gawas 0:ccdea31d8eba 5 #include "kernel/ports.h"
gawas 0:ccdea31d8eba 6
gawas 0:ccdea31d8eba 7 port_t p_yellow_toggler[1] = {{
gawas 0:ccdea31d8eba 8 .is_queuing_port = true,
gawas 0:ccdea31d8eba 9 .q_buf = {
gawas 0:ccdea31d8eba 10 .WAITING_PROCESSES = 0,
gawas 0:ccdea31d8eba 11 .PORT_DIRECTION = SOURCE,
gawas 0:ccdea31d8eba 12 Q_MESSAGE_BUFFER(32, 32),
gawas 0:ccdea31d8eba 13 },
gawas 0:ccdea31d8eba 14 .portname = "yellow_print",
gawas 0:ccdea31d8eba 15 },};
gawas 0:ccdea31d8eba 16
gawas 0:ccdea31d8eba 17 port_t p_red_toggler[1] = {{
gawas 0:ccdea31d8eba 18 .is_queuing_port = true,
gawas 0:ccdea31d8eba 19 .q_buf = {
gawas 0:ccdea31d8eba 20 .WAITING_PROCESSES = 0,
gawas 0:ccdea31d8eba 21 .PORT_DIRECTION = SOURCE,
gawas 0:ccdea31d8eba 22 Q_MESSAGE_BUFFER(32, 32),
gawas 0:ccdea31d8eba 23 },
gawas 0:ccdea31d8eba 24 .portname = "red_print",
gawas 0:ccdea31d8eba 25 },};
gawas 0:ccdea31d8eba 26
gawas 0:ccdea31d8eba 27 port_t p_stio_sys[1] = {{
gawas 0:ccdea31d8eba 28 .is_queuing_port = true,
gawas 0:ccdea31d8eba 29 .q_buf = {
gawas 0:ccdea31d8eba 30 .WAITING_PROCESSES = 0,
gawas 0:ccdea31d8eba 31 .PORT_DIRECTION = DESTINATION,
gawas 0:ccdea31d8eba 32 Q_MESSAGE_BUFFER(32, 32),
gawas 0:ccdea31d8eba 33 },
gawas 0:ccdea31d8eba 34 .portname = "sys_stio",
gawas 0:ccdea31d8eba 35 },};
gawas 0:ccdea31d8eba 36
gawas 0:ccdea31d8eba 37 port_t p_evil[1] = {{
gawas 0:ccdea31d8eba 38 .is_queuing_port = true,
gawas 0:ccdea31d8eba 39 .q_buf = {
gawas 0:ccdea31d8eba 40 .WAITING_PROCESSES = 0,
gawas 0:ccdea31d8eba 41 .PORT_DIRECTION = DESTINATION,
gawas 0:ccdea31d8eba 42 Q_MESSAGE_BUFFER(1, 1),
gawas 0:ccdea31d8eba 43 },
gawas 0:ccdea31d8eba 44 .portname = "temp",
gawas 0:ccdea31d8eba 45 },};
gawas 0:ccdea31d8eba 46
gawas 0:ccdea31d8eba 47 partition_t partitions[5] = {{
gawas 0:ccdea31d8eba 48 .id = 0,
gawas 0:ccdea31d8eba 49 .partitionname = "idle",
gawas 0:ccdea31d8eba 50 .criticality = LEVEL_E,
gawas 0:ccdea31d8eba 51 .systempartion = false,
gawas 0:ccdea31d8eba 52 .entrypoint = &idle_main,
gawas 0:ccdea31d8eba 53 .nb_ports = 0,
gawas 0:ccdea31d8eba 54 .ports = 0,
gawas 0:ccdea31d8eba 55 },{
gawas 0:ccdea31d8eba 56 .id = 1,
gawas 0:ccdea31d8eba 57 .partitionname = "yellow_toggler",
gawas 0:ccdea31d8eba 58 .criticality = LEVEL_A,
gawas 0:ccdea31d8eba 59 .systempartion = false,
gawas 0:ccdea31d8eba 60 .entrypoint = &yellow_toggler_main,
gawas 0:ccdea31d8eba 61 .nb_ports = 1,
gawas 0:ccdea31d8eba 62 .ports = p_yellow_toggler,
gawas 0:ccdea31d8eba 63 },{
gawas 0:ccdea31d8eba 64 .id = 2,
gawas 0:ccdea31d8eba 65 .partitionname = "red_toggler",
gawas 0:ccdea31d8eba 66 .criticality = LEVEL_A,
gawas 0:ccdea31d8eba 67 .systempartion = false,
gawas 0:ccdea31d8eba 68 .entrypoint = &red_toggler_main,
gawas 0:ccdea31d8eba 69 .nb_ports = 1,
gawas 0:ccdea31d8eba 70 .ports = p_red_toggler,
gawas 0:ccdea31d8eba 71 },{
gawas 0:ccdea31d8eba 72 .id = 3,
gawas 0:ccdea31d8eba 73 .partitionname = "stio_sys",
gawas 0:ccdea31d8eba 74 .criticality = LEVEL_A,
gawas 0:ccdea31d8eba 75 .systempartion = true,
gawas 0:ccdea31d8eba 76 .entrypoint = &stdio_sys_main,
gawas 0:ccdea31d8eba 77 .nb_ports = 1,
gawas 0:ccdea31d8eba 78 .ports = p_stio_sys,
gawas 0:ccdea31d8eba 79 },{
gawas 0:ccdea31d8eba 80 .id = 4,
gawas 0:ccdea31d8eba 81 .partitionname = "evil",
gawas 0:ccdea31d8eba 82 .criticality = LEVEL_A,
gawas 0:ccdea31d8eba 83 .systempartion = false,
gawas 0:ccdea31d8eba 84 .entrypoint = &evil_main,
gawas 0:ccdea31d8eba 85 .nb_ports = 1,
gawas 0:ccdea31d8eba 86 .ports = p_evil,
gawas 0:ccdea31d8eba 87 },};
gawas 0:ccdea31d8eba 88
gawas 0:ccdea31d8eba 89 mem_req_t memoryp_dummy_1[2] = {{
gawas 0:ccdea31d8eba 90 .type = CODE,
gawas 0:ccdea31d8eba 91 .size = 8000,
gawas 0:ccdea31d8eba 92 .access = READ_ONLY,
gawas 0:ccdea31d8eba 93 .address = 0x8010000,
gawas 0:ccdea31d8eba 94 },{
gawas 0:ccdea31d8eba 95 .type = DATA,
gawas 0:ccdea31d8eba 96 .size = 8000,
gawas 0:ccdea31d8eba 97 .access = READ_WRITE,
gawas 0:ccdea31d8eba 98 .address = 0x20010000,
gawas 0:ccdea31d8eba 99 },};
gawas 0:ccdea31d8eba 100
gawas 0:ccdea31d8eba 101 mem_req_t memoryp_dummy_2[2] = {{
gawas 0:ccdea31d8eba 102 .type = CODE,
gawas 0:ccdea31d8eba 103 .size = 8000,
gawas 0:ccdea31d8eba 104 .access = READ_ONLY,
gawas 0:ccdea31d8eba 105 .address = 0x8012000,
gawas 0:ccdea31d8eba 106 },{
gawas 0:ccdea31d8eba 107 .type = DATA,
gawas 0:ccdea31d8eba 108 .size = 8000,
gawas 0:ccdea31d8eba 109 .access = READ_WRITE,
gawas 0:ccdea31d8eba 110 .address = 0x20012000,
gawas 0:ccdea31d8eba 111 },};
gawas 0:ccdea31d8eba 112
gawas 0:ccdea31d8eba 113 mem_req_t memoryp_stio_sys[2] = {{
gawas 0:ccdea31d8eba 114 .type = CODE,
gawas 0:ccdea31d8eba 115 .size = 8000,
gawas 0:ccdea31d8eba 116 .access = READ_ONLY,
gawas 0:ccdea31d8eba 117 .address = 0x8014000,
gawas 0:ccdea31d8eba 118 },{
gawas 0:ccdea31d8eba 119 .type = DATA,
gawas 0:ccdea31d8eba 120 .size = 8000,
gawas 0:ccdea31d8eba 121 .access = READ_WRITE,
gawas 0:ccdea31d8eba 122 .address = 0x20014000,
gawas 0:ccdea31d8eba 123 },};
gawas 0:ccdea31d8eba 124
gawas 0:ccdea31d8eba 125 mem_req_t memoryp_evil[2] = {{
gawas 0:ccdea31d8eba 126 .type = CODE,
gawas 0:ccdea31d8eba 127 .size = 8000,
gawas 0:ccdea31d8eba 128 .access = READ_ONLY,
gawas 0:ccdea31d8eba 129 .address = 0x8016000,
gawas 0:ccdea31d8eba 130 },{
gawas 0:ccdea31d8eba 131 .type = DATA,
gawas 0:ccdea31d8eba 132 .size = 8000,
gawas 0:ccdea31d8eba 133 .access = READ_WRITE,
gawas 0:ccdea31d8eba 134 .address = 0x20016000,
gawas 0:ccdea31d8eba 135 },};
gawas 0:ccdea31d8eba 136
gawas 0:ccdea31d8eba 137 part_mem_t partition_memory[4] = {{
gawas 0:ccdea31d8eba 138 .id = 1,
gawas 0:ccdea31d8eba 139 .partitionname = "dummy_1",
gawas 0:ccdea31d8eba 140 .arr_size = 2,
gawas 0:ccdea31d8eba 141 .memory_arr = memoryp_dummy_1,
gawas 0:ccdea31d8eba 142 .mem_offset = 1024,
gawas 0:ccdea31d8eba 143 },{
gawas 0:ccdea31d8eba 144 .id = 2,
gawas 0:ccdea31d8eba 145 .partitionname = "dummy_2",
gawas 0:ccdea31d8eba 146 .arr_size = 2,
gawas 0:ccdea31d8eba 147 .memory_arr = memoryp_dummy_2,
gawas 0:ccdea31d8eba 148 .mem_offset = 1024,
gawas 0:ccdea31d8eba 149 },{
gawas 0:ccdea31d8eba 150 .id = 3,
gawas 0:ccdea31d8eba 151 .partitionname = "stio_sys",
gawas 0:ccdea31d8eba 152 .arr_size = 2,
gawas 0:ccdea31d8eba 153 .memory_arr = memoryp_stio_sys,
gawas 0:ccdea31d8eba 154 .mem_offset = 1024,
gawas 0:ccdea31d8eba 155 },{
gawas 0:ccdea31d8eba 156 .id = 4,
gawas 0:ccdea31d8eba 157 .partitionname = "evil",
gawas 0:ccdea31d8eba 158 .arr_size = 2,
gawas 0:ccdea31d8eba 159 .memory_arr = memoryp_evil,
gawas 0:ccdea31d8eba 160 .mem_offset = 1024,
gawas 0:ccdea31d8eba 161 },};
gawas 0:ccdea31d8eba 162
gawas 0:ccdea31d8eba 163 const uint32_t majorFrameSeconds = 20000;
gawas 0:ccdea31d8eba 164
gawas 0:ccdea31d8eba 165 const window_schedule windowp_yellow_toggler[2] = {{
gawas 0:ccdea31d8eba 166 .id = 1,
gawas 0:ccdea31d8eba 167 .windowstartmilliseconds = 0,
gawas 0:ccdea31d8eba 168 .windowdurationmilliseconds = 2000,
gawas 0:ccdea31d8eba 169 .partitionperiodstart = true,
gawas 0:ccdea31d8eba 170 },{
gawas 0:ccdea31d8eba 171 .id = 2,
gawas 0:ccdea31d8eba 172 .windowstartmilliseconds = 10000,
gawas 0:ccdea31d8eba 173 .windowdurationmilliseconds = 2000,
gawas 0:ccdea31d8eba 174 .partitionperiodstart = true,
gawas 0:ccdea31d8eba 175 },};
gawas 0:ccdea31d8eba 176
gawas 0:ccdea31d8eba 177 const window_schedule windowp_red_toggler[2] = {{
gawas 0:ccdea31d8eba 178 .id = 1,
gawas 0:ccdea31d8eba 179 .windowstartmilliseconds = 3000,
gawas 0:ccdea31d8eba 180 .windowdurationmilliseconds = 1000,
gawas 0:ccdea31d8eba 181 .partitionperiodstart = true,
gawas 0:ccdea31d8eba 182 },{
gawas 0:ccdea31d8eba 183 .id = 2,
gawas 0:ccdea31d8eba 184 .windowstartmilliseconds = 13000,
gawas 0:ccdea31d8eba 185 .windowdurationmilliseconds = 1000,
gawas 0:ccdea31d8eba 186 .partitionperiodstart = true,
gawas 0:ccdea31d8eba 187 },};
gawas 0:ccdea31d8eba 188
gawas 0:ccdea31d8eba 189 const window_schedule windowp_stio_sys[2] = {{
gawas 0:ccdea31d8eba 190 .id = 1,
gawas 0:ccdea31d8eba 191 .windowstartmilliseconds = 4000,
gawas 0:ccdea31d8eba 192 .windowdurationmilliseconds = 3000,
gawas 0:ccdea31d8eba 193 .partitionperiodstart = true,
gawas 0:ccdea31d8eba 194 },{
gawas 0:ccdea31d8eba 195 .id = 2,
gawas 0:ccdea31d8eba 196 .windowstartmilliseconds = 14000,
gawas 0:ccdea31d8eba 197 .windowdurationmilliseconds = 3000,
gawas 0:ccdea31d8eba 198 .partitionperiodstart = true,
gawas 0:ccdea31d8eba 199 },};
gawas 0:ccdea31d8eba 200
gawas 0:ccdea31d8eba 201 const window_schedule windowp_evil[1] = {{
gawas 0:ccdea31d8eba 202 .id = 1,
gawas 0:ccdea31d8eba 203 .windowstartmilliseconds = 18000,
gawas 0:ccdea31d8eba 204 .windowdurationmilliseconds = 2000,
gawas 0:ccdea31d8eba 205 .partitionperiodstart = true,
gawas 0:ccdea31d8eba 206 },};
gawas 0:ccdea31d8eba 207
gawas 0:ccdea31d8eba 208 const partition_schedule partition_schedules[4] = {{
gawas 0:ccdea31d8eba 209 .id = 1,
gawas 0:ccdea31d8eba 210 .partitionname = "yellow_toggler",
gawas 0:ccdea31d8eba 211 .peroidseconds = 100,
gawas 0:ccdea31d8eba 212 .perioddurationseconds = 20,
gawas 0:ccdea31d8eba 213 .numWindows = 2,
gawas 0:ccdea31d8eba 214 .window_arr = windowp_yellow_toggler,
gawas 0:ccdea31d8eba 215 },{
gawas 0:ccdea31d8eba 216 .id = 2,
gawas 0:ccdea31d8eba 217 .partitionname = "red_toggler",
gawas 0:ccdea31d8eba 218 .peroidseconds = 100,
gawas 0:ccdea31d8eba 219 .perioddurationseconds = 10,
gawas 0:ccdea31d8eba 220 .numWindows = 2,
gawas 0:ccdea31d8eba 221 .window_arr = windowp_red_toggler,
gawas 0:ccdea31d8eba 222 },{
gawas 0:ccdea31d8eba 223 .id = 3,
gawas 0:ccdea31d8eba 224 .partitionname = "stio_sys",
gawas 0:ccdea31d8eba 225 .peroidseconds = 100,
gawas 0:ccdea31d8eba 226 .perioddurationseconds = 30,
gawas 0:ccdea31d8eba 227 .numWindows = 2,
gawas 0:ccdea31d8eba 228 .window_arr = windowp_stio_sys,
gawas 0:ccdea31d8eba 229 },{
gawas 0:ccdea31d8eba 230 .id = 4,
gawas 0:ccdea31d8eba 231 .partitionname = "evil",
gawas 0:ccdea31d8eba 232 .peroidseconds = 200,
gawas 0:ccdea31d8eba 233 .perioddurationseconds = 20,
gawas 0:ccdea31d8eba 234 .numWindows = 1,
gawas 0:ccdea31d8eba 235 .window_arr = windowp_evil,
gawas 0:ccdea31d8eba 236 },};
gawas 0:ccdea31d8eba 237
gawas 0:ccdea31d8eba 238 port_t *stio_channel_ports[3] = {
gawas 0:ccdea31d8eba 239 &p_red_toggler[0],
gawas 0:ccdea31d8eba 240 &p_yellow_toggler[0],
gawas 0:ccdea31d8eba 241 &p_stio_sys[0],};
gawas 0:ccdea31d8eba 242
gawas 0:ccdea31d8eba 243 channel_t connection_table[1] = {{
gawas 0:ccdea31d8eba 244 .id = 1,
gawas 0:ccdea31d8eba 245 .channelname = "stio_channel",
gawas 0:ccdea31d8eba 246 .nb_ports = 3,
gawas 0:ccdea31d8eba 247 .ports = stio_channel_ports,
gawas 0:ccdea31d8eba 248 },};
gawas 0:ccdea31d8eba 249
gawas 0:ccdea31d8eba 250