Wireshark 4.7.0
The Wireshark network protocol analyzer
Loading...
Searching...
No Matches
ttl.h
Go to the documentation of this file.
1
11#ifndef __W_TTL_H__
12#define __W_TTL_H__
13
14#include <stdint.h>
15#include "wtap.h"
16
25wtap_open_return_val ttl_open(wtap* wth, int* err, char** err_info);
26
33WS_DLL_PUBLIC int ttl_get_address_iface_type(uint16_t addr);
34
41WS_DLL_PUBLIC bool ttl_is_chb_addr(uint16_t addr);
42
50WS_DLL_PUBLIC uint16_t ttl_get_master_address(GHashTable* ht, uint16_t addr);
51
58WS_DLL_PUBLIC const char* ttl_get_cascade_name(uint16_t addr);
59
66WS_DLL_PUBLIC const char* ttl_get_device_name(uint16_t addr);
67
74WS_DLL_PUBLIC const char* ttl_get_function_name(uint16_t addr);
75
87WS_DLL_PUBLIC bool ttl_init_masters_from_pref_file(GHashTable* ht, const char* app_env_var_prefix);
88
100WS_DLL_PUBLIC bool ttl_init_names_from_pref_file(GHashTable* ht, const char* app_env_var_prefix);
101
102#define ttl_addr_get_cascade(x) (((x) >> 10) & 0x7)
103#define ttl_addr_get_device(x) (((x) >> 6) & 0xf)
104#define ttl_addr_get_function(x) ((x) & 0x3f)
105
106/*
107 * A TTL file is divided into two sections:
108 * 1. Header section
109 * 2. Trace Data section
110 *
111 * The Trace Data section is divided into blocks of fixes size (default: 2 MB).
112 *
113 * All multi-byte fields are stored as Little Endian.
114 */
115
116#define TTL_LOGFILE_INFO_SIZE 4080
117
118 /*
119 * The header of the file changed between versions. The real size is
120 * indicated by the header_size field, with the bare minimum being 16 bytes.
121 * The data after header_size (if any) is composed of two parts:
122 * 1. Log File information
123 * 2. XML describing the logger configuration used to create the log file
124 *
125 * The XML is assumed to be there only if the header size is bigger
126 * than 4096 bytes (i.e. Log File information is 4080 bytes in size).
127 */
128
129 /* TTL File Header */
130typedef struct ttl_fileheader {
131 uint8_t magic[4]; /* Magic Number - "TTL " */
132 uint32_t version; /* File Format version */
133 uint32_t block_size; /* Size of the blocks */
134 uint32_t header_size; /* Size of the complete header */
136
137/* TTL Entry Header */
138typedef struct ttl_entryheader {
139 uint16_t size_type; /* Type (4 bits) | Size (12 bits) */
140 uint16_t dest_addr; /* Meta 1 (3 bits) | Destination Address (13 bits) */
141 uint16_t src_addr; /* Meta 2 (3 bits) | Source Address (13 bits) */
142 uint16_t status_info; /* Meaning changes between types */
144
145#define TTL_BUS_DATA_ENTRY 0
146#define TTL_COMMAND_ENTRY 1
147#define TTL_BUS_RESERVED1_ENTRY 2
148#define TTL_JOURNAL_ENTRY 3
149#define TTL_SEGMENTED_MESSAGE_ENTRY 4
150#define TTL_SEND_FRAME_ENTRY 5
151#define TTL_PADDING_ENTRY 6
152#define TTL_SOFTWARE_DATA_ENTRY 7
153#define TTL_DROPPED_FRAMES_ENTRY 8
154
155/* The address is Cascade (3 bits) | Device (4 bits) | Function (6 bits) */
156#define TTL_ADDRESS_MASK 0x1FFF
157#define TTL_SIZE_MASK 0x0FFF
158#define TTL_META1_TIMESTAMP_SOURCE_MASK 0x2000
159#define TTL_META1_COMPRESSED_FORMAT_MASK 0x4000
160#define TTL_META1_FRAME_DUPLICATION_MARKER_MASK 0x8000
161
162#define TTL_LOGGER_DEVICE_FPGA 0
163#define TTL_LOGGER_DEVICE_ATOM 1
164#define TTL_LOGGER_DEVICE_TRICORE1 2
165#define TTL_LOGGER_DEVICE_TRICORE2 3
166#define TTL_LOGGER_DEVICE_TRICORE3 4
167#define TTL_LOGGER_DEVICE_TDA4x 5
168#define TTL_LOGGER_DEVICE_FPGAA 6
169#define TTL_LOGGER_DEVICE_FPGAB 7
170
171#define TTL_LOGGER_FPGA_FUNCTION_CORE 0
172#define TTL_LOGGER_FPGA_FUNCTION_EXT0_MOST25 1
173#define TTL_LOGGER_FPGA_FUNCTION_EXT0_MOST150 2
174#define TTL_LOGGER_FPGA_FUNCTION_ETHA_CH1 3
175#define TTL_LOGGER_FPGA_FUNCTION_ETHB_CH1 4
176#define TTL_LOGGER_FPGA_FUNCTION_FLEXRAY1A 5
177#define TTL_LOGGER_FPGA_FUNCTION_FLEXRAY1B 6
178#define TTL_LOGGER_FPGA_FUNCTION_FLEXRAY2A 7
179#define TTL_LOGGER_FPGA_FUNCTION_FLEXRAY2B 8
180#define TTL_LOGGER_FPGA_FUNCTION_FLEXRAY3A 9
181#define TTL_LOGGER_FPGA_FUNCTION_FLEXRAY3B 10
182#define TTL_LOGGER_FPGA_FUNCTION_CAN1 11
183#define TTL_LOGGER_FPGA_FUNCTION_CAN2 12
184#define TTL_LOGGER_FPGA_FUNCTION_CAN3 13
185#define TTL_LOGGER_FPGA_FUNCTION_CAN4 14
186#define TTL_LOGGER_FPGA_FUNCTION_CAN12 15
187#define TTL_LOGGER_FPGA_FUNCTION_CAN6 16
188#define TTL_LOGGER_FPGA_FUNCTION_CAN7 17
189#define TTL_LOGGER_FPGA_FUNCTION_CAN10 18
190#define TTL_LOGGER_FPGA_FUNCTION_CAN11 19
191#define TTL_LOGGER_FPGA_FUNCTION_CAN8 20
192#define TTL_LOGGER_FPGA_FUNCTION_CAN5 21
193#define TTL_LOGGER_FPGA_FUNCTION_CAN9 22
194#define TTL_LOGGER_FPGA_FUNCTION_EXT1_MOST25 23
195#define TTL_LOGGER_FPGA_FUNCTION_LIN10 24
196#define TTL_LOGGER_FPGA_FUNCTION_LIN3 25
197#define TTL_LOGGER_FPGA_FUNCTION_LIN5 26
198#define TTL_LOGGER_FPGA_FUNCTION_LIN4 27
199#define TTL_LOGGER_FPGA_FUNCTION_LIN11 28
200#define TTL_LOGGER_FPGA_FUNCTION_LIN1 29
201#define TTL_LOGGER_FPGA_FUNCTION_LIN7 30
202#define TTL_LOGGER_FPGA_FUNCTION_LIN8 31
203#define TTL_LOGGER_FPGA_FUNCTION_LIN12 32
204#define TTL_LOGGER_FPGA_FUNCTION_LIN6 33
205#define TTL_LOGGER_FPGA_FUNCTION_LIN2 34
206#define TTL_LOGGER_FPGA_FUNCTION_LIN9 35
207#define TTL_LOGGER_FPGA_FUNCTION_CAN13 36
208#define TTL_LOGGER_FPGA_FUNCTION_CAN14 37
209#define TTL_LOGGER_FPGA_FUNCTION_CAN15 38
210#define TTL_LOGGER_FPGA_FUNCTION_CAN16 39
211#define TTL_LOGGER_FPGA_FUNCTION_CAN17 40
212#define TTL_LOGGER_FPGA_FUNCTION_CAN18 41
213#define TTL_LOGGER_FPGA_FUNCTION_CAN19 42
214#define TTL_LOGGER_FPGA_FUNCTION_CAN20 43
215#define TTL_LOGGER_FPGA_FUNCTION_CAN21 44
216#define TTL_LOGGER_FPGA_FUNCTION_CAN22 45
217#define TTL_LOGGER_FPGA_FUNCTION_CAN23 46
218#define TTL_LOGGER_FPGA_FUNCTION_CAN24 47
219#define TTL_LOGGER_FPGA_FUNCTION_ETHA_CH2 48
220#define TTL_LOGGER_FPGA_FUNCTION_ETHB_CH2 49
221#define TTL_LOGGER_FPGA_FUNCTION_ETHA_CH3 50
222#define TTL_LOGGER_FPGA_FUNCTION_ETHB_CH3 51
223/* 5 unused */
224#define TTL_LOGGER_FPGA_FUNCTION_CAN_EXT_BOARD 57
225#define TTL_LOGGER_FPGA_FUNCTION_RESERVED1 58
226#define TTL_LOGGER_FPGA_FUNCTION_SLOT_CTRL 59
227#define TTL_LOGGER_FPGA_FUNCTION_DRAM 60
228#define TTL_LOGGER_FPGA_FUNCTION_SINK 61
229#define TTL_LOGGER_FPGA_FUNCTION_POWER_AGENT 62
230#define TTL_LOGGER_FPGA_FUNCTION_PKT_GENERATOR 63
231
232#define TTL_LOGGER_ATOM_FUNCTION_FRAME_DEVICE 0
233#define TTL_LOGGER_ATOM_FUNCTION_CHARACTER_DEVICE 1
234#define TTL_LOGGER_ATOM_FUNCTION_ATMEL 2
235#define TTL_LOGGER_ATOM_FUNCTION_ETHA 3
236#define TTL_LOGGER_ATOM_FUNCTION_ETHB 4
237
238#define TTL_LOGGER_TRICORE_FUNCTION_FLEXRAYA 1
239#define TTL_LOGGER_TRICORE_FUNCTION_FLEXRAYB 2
240
241#define TTL_LOGGER_TRICORE1_FUNCTION_CORE 0
242#define TTL_LOGGER_TRICORE1_FUNCTION_FLEXRAY1A TTL_LOGGER_TRICORE_FUNCTION_FLEXRAYA
243#define TTL_LOGGER_TRICORE1_FUNCTION_FLEXRAY1B TTL_LOGGER_TRICORE_FUNCTION_FLEXRAYB
244#define TTL_LOGGER_TRICORE1_FUNCTION_CAN1 3
245#define TTL_LOGGER_TRICORE1_FUNCTION_CAN2 4
246#define TTL_LOGGER_TRICORE1_FUNCTION_CAN3 5
247#define TTL_LOGGER_TRICORE1_FUNCTION_CAN4 6
248#define TTL_LOGGER_TRICORE1_FUNCTION_ANALOGOUT1 7
249#define TTL_LOGGER_TRICORE1_FUNCTION_DIGITALOUT6 8
250#define TTL_LOGGER_TRICORE1_FUNCTION_DIGITALOUT5 9
251#define TTL_LOGGER_TRICORE1_FUNCTION_RESERVED1 10
252#define TTL_LOGGER_TRICORE1_FUNCTION_RESERVED2 11
253#define TTL_LOGGER_TRICORE1_FUNCTION_SERIAL1 12
254#define TTL_LOGGER_TRICORE1_FUNCTION_SERIAL2 13
255#define TTL_LOGGER_TRICORE1_FUNCTION_ANALOGIN6 14
256#define TTL_LOGGER_TRICORE1_FUNCTION_ANALOGIN8 15
257#define TTL_LOGGER_TRICORE1_FUNCTION_ANALOGIN14 16
258#define TTL_LOGGER_TRICORE1_FUNCTION_ANALOGIN15 17
259#define TTL_LOGGER_TRICORE1_FUNCTION_ANALOGIN11 18
260#define TTL_LOGGER_TRICORE1_FUNCTION_DIGITALIN8 19
261#define TTL_LOGGER_TRICORE1_FUNCTION_DIGITALIN10 20
262#define TTL_LOGGER_TRICORE1_FUNCTION_DIGITALIN12 21
263#define TTL_LOGGER_TRICORE1_FUNCTION_DIGITALIN13 22
264#define TTL_LOGGER_TRICORE1_FUNCTION_DIGITALIN11 23
265#define TTL_LOGGER_TRICORE1_FUNCTION_KL15IN 24
266#define TTL_LOGGER_TRICORE1_FUNCTION_KL30IN 25
267#define TTL_LOGGER_TRICORE1_FUNCTION_FLEXRAY1 26
268#define TTL_LOGGER_TRICORE1_FUNCTION_FLEXRAY1AB 27
269
270#define TTL_LOGGER_TRICORE2_FUNCTION_CORE 0
271#define TTL_LOGGER_TRICORE2_FUNCTION_FLEXRAY2A TTL_LOGGER_TRICORE_FUNCTION_FLEXRAYA
272#define TTL_LOGGER_TRICORE2_FUNCTION_FLEXRAY2B TTL_LOGGER_TRICORE_FUNCTION_FLEXRAYB
273#define TTL_LOGGER_TRICORE2_FUNCTION_CAN12 3
274#define TTL_LOGGER_TRICORE2_FUNCTION_CAN6 4
275#define TTL_LOGGER_TRICORE2_FUNCTION_CAN7 5
276#define TTL_LOGGER_TRICORE2_FUNCTION_CAN10 6
277#define TTL_LOGGER_TRICORE2_FUNCTION_ANALOGOUT2 7
278#define TTL_LOGGER_TRICORE2_FUNCTION_DIGITALOUT4 8
279#define TTL_LOGGER_TRICORE2_FUNCTION_DIGITALOUT3 9
280#define TTL_LOGGER_TRICORE2_FUNCTION_RESERVED1 10
281#define TTL_LOGGER_TRICORE2_FUNCTION_RESERVED2 11
282#define TTL_LOGGER_TRICORE2_FUNCTION_SERIAL3 12
283#define TTL_LOGGER_TRICORE2_FUNCTION_SERIAL4 13
284#define TTL_LOGGER_TRICORE2_FUNCTION_ANALOGIN4 14
285#define TTL_LOGGER_TRICORE2_FUNCTION_ANALOGIN3 15
286#define TTL_LOGGER_TRICORE2_FUNCTION_ANALOGIN5 16
287#define TTL_LOGGER_TRICORE2_FUNCTION_ANALOGIN9 17
288#define TTL_LOGGER_TRICORE2_FUNCTION_ANALOGIN7 18
289#define TTL_LOGGER_TRICORE2_FUNCTION_DIGITALIN14 19
290#define TTL_LOGGER_TRICORE2_FUNCTION_DIGITALIN9 20
291#define TTL_LOGGER_TRICORE2_FUNCTION_DIGITALIN15 21
292#define TTL_LOGGER_TRICORE2_FUNCTION_DIGITALIN7 22
293#define TTL_LOGGER_TRICORE2_FUNCTION_DIGITALIN6 23
294/* 2 unused */
295#define TTL_LOGGER_TRICORE2_FUNCTION_FLEXRAY2 26
296#define TTL_LOGGER_TRICORE2_FUNCTION_FLEXRAY2AB 27
297
298#define TTL_LOGGER_TRICORE3_FUNCTION_CORE 0
299#define TTL_LOGGER_TRICORE3_FUNCTION_FLEXRAY3A TTL_LOGGER_TRICORE_FUNCTION_FLEXRAYA
300#define TTL_LOGGER_TRICORE3_FUNCTION_FLEXRAY3B TTL_LOGGER_TRICORE_FUNCTION_FLEXRAYB
301#define TTL_LOGGER_TRICORE3_FUNCTION_CAN11 3
302#define TTL_LOGGER_TRICORE3_FUNCTION_CAN8 4
303#define TTL_LOGGER_TRICORE3_FUNCTION_CAN5 5
304#define TTL_LOGGER_TRICORE3_FUNCTION_CAN9 6
305#define TTL_LOGGER_TRICORE3_FUNCTION_ANALOGOUT3 7
306#define TTL_LOGGER_TRICORE3_FUNCTION_DIGITALOUT2 8
307#define TTL_LOGGER_TRICORE3_FUNCTION_DIGITALOUT1 9
308#define TTL_LOGGER_TRICORE3_FUNCTION_RESERVED1 10
309#define TTL_LOGGER_TRICORE3_FUNCTION_RESERVED2 11
310#define TTL_LOGGER_TRICORE3_FUNCTION_SERIAL5 12
311#define TTL_LOGGER_TRICORE3_FUNCTION_SERIAL6 13
312#define TTL_LOGGER_TRICORE3_FUNCTION_ANALOGIN1 14
313#define TTL_LOGGER_TRICORE3_FUNCTION_ANALOGIN2 15
314#define TTL_LOGGER_TRICORE3_FUNCTION_ANALOGIN10 16
315#define TTL_LOGGER_TRICORE3_FUNCTION_ANALOGIN12 17
316#define TTL_LOGGER_TRICORE3_FUNCTION_ANALOGIN13 18
317#define TTL_LOGGER_TRICORE3_FUNCTION_DIGITALIN5 19
318#define TTL_LOGGER_TRICORE3_FUNCTION_DIGITALIN4 20
319#define TTL_LOGGER_TRICORE3_FUNCTION_DIGITALIN3 21
320#define TTL_LOGGER_TRICORE3_FUNCTION_DIGITALIN2 22
321#define TTL_LOGGER_TRICORE3_FUNCTION_DIGITALIN1 23
322/* 2 unused */
323#define TTL_LOGGER_TRICORE3_FUNCTION_FLEXRAY3 26
324#define TTL_LOGGER_TRICORE3_FUNCTION_FLEXRAY3AB 27
325
326#define TTL_LOGGER_TDA4x_FUNCTION_CORE 0
327#define TTL_LOGGER_TDA4x_FUNCTION_CHARACTER_DEVICE 1
328#define TTL_LOGGER_TDA4x_FUNCTION_CAN1 2
329#define TTL_LOGGER_TDA4x_FUNCTION_CAN2 3
330#define TTL_LOGGER_TDA4x_FUNCTION_CAN3 4
331#define TTL_LOGGER_TDA4x_FUNCTION_CAN4 5
332#define TTL_LOGGER_TDA4x_FUNCTION_CAN5 6
333#define TTL_LOGGER_TDA4x_FUNCTION_CAN6 7
334#define TTL_LOGGER_TDA4x_FUNCTION_CAN7 8
335#define TTL_LOGGER_TDA4x_FUNCTION_CAN8 9
336#define TTL_LOGGER_TDA4x_FUNCTION_CAN9 10
337#define TTL_LOGGER_TDA4x_FUNCTION_CAN10 11
338#define TTL_LOGGER_TDA4x_FUNCTION_CAN11 12
339#define TTL_LOGGER_TDA4x_FUNCTION_SERIAL1 13
340#define TTL_LOGGER_TDA4x_FUNCTION_SERIAL2 14
341#define TTL_LOGGER_TDA4x_FUNCTION_SERIAL3 15
342#define TTL_LOGGER_TDA4x_FUNCTION_SERIAL4 16
343#define TTL_LOGGER_TDA4x_FUNCTION_SERIAL5 17
344#define TTL_LOGGER_TDA4x_FUNCTION_SERIAL6 18
345#define TTL_LOGGER_TDA4x_FUNCTION_ANALOGIN1 19
346#define TTL_LOGGER_TDA4x_FUNCTION_ANALOGIN2 20
347#define TTL_LOGGER_TDA4x_FUNCTION_ANALOGIN3 21
348#define TTL_LOGGER_TDA4x_FUNCTION_ANALOGIN4 22
349#define TTL_LOGGER_TDA4x_FUNCTION_ANALOGIN5 23
350#define TTL_LOGGER_TDA4x_FUNCTION_ANALOGIN6 24
351#define TTL_LOGGER_TDA4x_FUNCTION_ANALOGOUT1 25
352#define TTL_LOGGER_TDA4x_FUNCTION_ANALOGOUT2 26
353#define TTL_LOGGER_TDA4x_FUNCTION_KL15IN 27
354#define TTL_LOGGER_TDA4x_FUNCTION_KL30IN 28
355#define TTL_LOGGER_TDA4x_FUNCTION_FLEXRAY1A 29
356#define TTL_LOGGER_TDA4x_FUNCTION_FLEXRAY1B 30
357#define TTL_LOGGER_TDA4x_FUNCTION_FLEXRAY1AB 31
358#define TTL_LOGGER_TDA4x_FUNCTION_CAN12 32
359#define TTL_LOGGER_TDA4x_FUNCTION_CAN13 33
360#define TTL_LOGGER_TDA4x_FUNCTION_CAN14 34
361#define TTL_LOGGER_TDA4x_FUNCTION_SERIAL7 35
362#define TTL_LOGGER_TDA4x_FUNCTION_SERIAL8 36
363#define TTL_LOGGER_TDA4x_FUNCTION_SERIAL9 37
364#define TTL_LOGGER_TDA4x_FUNCTION_SERIAL10 38
365
366#define TTL_LOGGER_FPGAA_FUNCTION_CORE 0
367#define TTL_LOGGER_FPGAA_FUNCTION_CAN1 1
368#define TTL_LOGGER_FPGAA_FUNCTION_CAN2 2
369#define TTL_LOGGER_FPGAA_FUNCTION_CAN3 3
370#define TTL_LOGGER_FPGAA_FUNCTION_CAN4 4
371#define TTL_LOGGER_FPGAA_FUNCTION_CAN5 5
372#define TTL_LOGGER_FPGAA_FUNCTION_CAN6 6
373#define TTL_LOGGER_FPGAA_FUNCTION_CAN7 7
374#define TTL_LOGGER_FPGAA_FUNCTION_CAN8 8
375#define TTL_LOGGER_FPGAA_FUNCTION_CAN9 9
376#define TTL_LOGGER_FPGAA_FUNCTION_CAN10 10
377#define TTL_LOGGER_FPGAA_FUNCTION_CAN11 11
378#define TTL_LOGGER_FPGAA_FUNCTION_LIN1 12
379#define TTL_LOGGER_FPGAA_FUNCTION_LIN2 13
380#define TTL_LOGGER_FPGAA_FUNCTION_LIN3 14
381#define TTL_LOGGER_FPGAA_FUNCTION_LIN4 15
382#define TTL_LOGGER_FPGAA_FUNCTION_LIN5 16
383#define TTL_LOGGER_FPGAA_FUNCTION_LIN6 17
384#define TTL_LOGGER_FPGAA_FUNCTION_LIN7 18
385#define TTL_LOGGER_FPGAA_FUNCTION_LIN8 19
386#define TTL_LOGGER_FPGAA_FUNCTION_LIN9 20
387#define TTL_LOGGER_FPGAA_FUNCTION_LIN10 21
388#define TTL_LOGGER_FPGAA_FUNCTION_LIN11 22
389#define TTL_LOGGER_FPGAA_FUNCTION_LIN12 23
390#define TTL_LOGGER_FPGAA_FUNCTION_LIN13 24
391#define TTL_LOGGER_FPGAA_FUNCTION_LIN14 25
392#define TTL_LOGGER_FPGAA_FUNCTION_LIN15 26
393#define TTL_LOGGER_FPGAA_FUNCTION_LIN16 27
394#define TTL_LOGGER_FPGAA_FUNCTION_FLEXRAY1A 28
395#define TTL_LOGGER_FPGAA_FUNCTION_FLEXRAY1B 29
396#define TTL_LOGGER_FPGAA_FUNCTION_SERIAL1 30
397#define TTL_LOGGER_FPGAA_FUNCTION_SERIAL2 31
398#define TTL_LOGGER_FPGAA_FUNCTION_SERIAL3 32
399#define TTL_LOGGER_FPGAA_FUNCTION_SERIAL4 33
400#define TTL_LOGGER_FPGAA_FUNCTION_SERIAL5 34
401#define TTL_LOGGER_FPGAA_FUNCTION_SERIAL6 35
402#define TTL_LOGGER_FPGAA_FUNCTION_SERIAL7 36
403#define TTL_LOGGER_FPGAA_FUNCTION_SERIAL8 37
404#define TTL_LOGGER_FPGAA_FUNCTION_SERIAL9 38
405#define TTL_LOGGER_FPGAA_FUNCTION_SERIAL10 39
406#define TTL_LOGGER_FPGAA_FUNCTION_CAN12 40
407#define TTL_LOGGER_FPGAA_FUNCTION_CAN13 41
408#define TTL_LOGGER_FPGAA_FUNCTION_CAN14 42
409/* 16 unused */
410#define TTL_LOGGER_FPGAA_FUNCTION_SLOT_CTRL 59
411#define TTL_LOGGER_FPGAA_FUNCTION_DRAM 60
412#define TTL_LOGGER_FPGAA_FUNCTION_SINK 61
413#define TTL_LOGGER_FPGAA_FUNCTION_POWER_AGENT 62
414#define TTL_LOGGER_FPGAA_FUNCTION_PKT_GENERATOR 63
415
416#define TTL_LOGGER_FPGAB_FUNCTION_ETHA_CH1 0
417#define TTL_LOGGER_FPGAB_FUNCTION_ETHB_CH1 1
418#define TTL_LOGGER_FPGAB_FUNCTION_AETH1a_CH1 2
419#define TTL_LOGGER_FPGAB_FUNCTION_AETH1b_CH1 3
420#define TTL_LOGGER_FPGAB_FUNCTION_AETH2a_CH1 4
421#define TTL_LOGGER_FPGAB_FUNCTION_AETH2b_CH1 5
422#define TTL_LOGGER_FPGAB_FUNCTION_AETH3a_CH1 6
423#define TTL_LOGGER_FPGAB_FUNCTION_AETH3b_CH1 7
424#define TTL_LOGGER_FPGAB_FUNCTION_AETH4a_CH1 8
425#define TTL_LOGGER_FPGAB_FUNCTION_AETH4b_CH1 9
426#define TTL_LOGGER_FPGAB_FUNCTION_AETH5a_CH1 10
427#define TTL_LOGGER_FPGAB_FUNCTION_AETH5b_CH1 11
428#define TTL_LOGGER_FPGAB_FUNCTION_AETH6a_CH1 12
429#define TTL_LOGGER_FPGAB_FUNCTION_AETH6b_CH1 13
430#define TTL_LOGGER_FPGAB_FUNCTION_ETHA_CH2 14
431#define TTL_LOGGER_FPGAB_FUNCTION_ETHB_CH2 15
432#define TTL_LOGGER_FPGAB_FUNCTION_AETH1a_CH2 16
433#define TTL_LOGGER_FPGAB_FUNCTION_AETH1b_CH2 17
434#define TTL_LOGGER_FPGAB_FUNCTION_AETH2a_CH2 18
435#define TTL_LOGGER_FPGAB_FUNCTION_AETH2b_CH2 19
436#define TTL_LOGGER_FPGAB_FUNCTION_AETH3a_CH2 20
437#define TTL_LOGGER_FPGAB_FUNCTION_AETH3b_CH2 21
438#define TTL_LOGGER_FPGAB_FUNCTION_AETH4a_CH2 22
439#define TTL_LOGGER_FPGAB_FUNCTION_AETH4b_CH2 23
440#define TTL_LOGGER_FPGAB_FUNCTION_AETH5a_CH2 24
441#define TTL_LOGGER_FPGAB_FUNCTION_AETH5b_CH2 25
442#define TTL_LOGGER_FPGAB_FUNCTION_AETH6a_CH2 26
443#define TTL_LOGGER_FPGAB_FUNCTION_AETH6b_CH2 27
444
445#define TTL_TAP_DEVICE_PT15_FPGA 0
446#define TTL_TAP_DEVICE_PT15_HPS_LINUX 1
447#define TTL_TAP_DEVICE_PT20_FPGA 2
448#define TTL_TAP_DEVICE_PT20_HPS_LINUX 3
449#define TTL_TAP_DEVICE_PC3_FPGA 4
450#define TTL_TAP_DEVICE_PC3_HPS_LINUX 5
451#define TTL_TAP_DEVICE_PC3_AURIX 6
452#define TTL_TAP_DEVICE_ZELDA_CANFD 7
453#define TTL_TAP_DEVICE_ZELDA_LIN 8
454#define TTL_TAP_DEVICE_ILLEGAL 15
455
456#define TTL_PT15_FPGA_FUNCTION_CORE 0
457#define TTL_PT15_FPGA_FUNCTION_CAN1 1
458#define TTL_PT15_FPGA_FUNCTION_CAN2 2
459#define TTL_PT15_FPGA_FUNCTION_BrdR1a 3
460#define TTL_PT15_FPGA_FUNCTION_BrdR1b 4
461#define TTL_PT15_FPGA_FUNCTION_BrdR2a 5
462#define TTL_PT15_FPGA_FUNCTION_BrdR2b 6
463#define TTL_PT15_FPGA_FUNCTION_BrdR3a 7
464#define TTL_PT15_FPGA_FUNCTION_BrdR3b 8
465#define TTL_PT15_FPGA_FUNCTION_BrdR4a 9
466#define TTL_PT15_FPGA_FUNCTION_BrdR4b 10
467#define TTL_PT15_FPGA_FUNCTION_BrdR5a 11
468#define TTL_PT15_FPGA_FUNCTION_BrdR5b 12
469#define TTL_PT15_FPGA_FUNCTION_BrdR6a 13
470#define TTL_PT15_FPGA_FUNCTION_BrdR6b 14
471/* 7 unused */
472#define TTL_PT15_FPGA_FUNCTION_MDIO 22
473
474#define TTL_PT20_FPGA_FUNCTION_CORE 0
475#define TTL_PT20_FPGA_FUNCTION_CAN1 1
476#define TTL_PT20_FPGA_FUNCTION_CAN2 2
477#define TTL_PT20_FPGA_FUNCTION_CAN3 3
478#define TTL_PT20_FPGA_FUNCTION_CAN4 4
479#define TTL_PT20_FPGA_FUNCTION_CAN5 5
480#define TTL_PT20_FPGA_FUNCTION_GbEth1a 6
481#define TTL_PT20_FPGA_FUNCTION_GbEth1b 7
482#define TTL_PT20_FPGA_FUNCTION_GbEth2a 8
483#define TTL_PT20_FPGA_FUNCTION_GbEth2b 9
484#define TTL_PT20_FPGA_FUNCTION_GbEth3a 10
485#define TTL_PT20_FPGA_FUNCTION_GbEth3b 11
486/* 10 unused */
487#define TTL_PT20_FPGA_FUNCTION_MDIO 22
488
489#define TTL_PC3_FPGA_FUNCTION_CORE 0
490/* 2 unused */
491#define TTL_PC3_FPGA_FUNCTION_BrdR1a 3
492#define TTL_PC3_FPGA_FUNCTION_BrdR1b 4
493
494#define TTL_PC3_AURIX_FUNCTION_CORE 0
495#define TTL_PC3_AURIX_FUNCTION_CAN1 1
496#define TTL_PC3_AURIX_FUNCTION_CAN2 2
497#define TTL_PC3_AURIX_FUNCTION_CAN3 3
498#define TTL_PC3_AURIX_FUNCTION_CAN4 4
499#define TTL_PC3_AURIX_FUNCTION_FLEXRAY1A 5
500#define TTL_PC3_AURIX_FUNCTION_FLEXRAY1B 6
501#define TTL_PC3_AURIX_FUNCTION_FLEXRAY2A 7
502#define TTL_PC3_AURIX_FUNCTION_FLEXRAY2B 8
503#define TTL_PC3_AURIX_FUNCTION_DIGITALIN1 9
504#define TTL_PC3_AURIX_FUNCTION_DIGITALIN2 10
505#define TTL_PC3_AURIX_FUNCTION_DIGITALOUT1 11
506#define TTL_PC3_AURIX_FUNCTION_DIGITALOUT2 12
507
508#define TTL_TAP_DEVICE_ZELDA_CORE 0
509
510#define TTL_TAP_DEVICE_ZELDA_CANFD1 1
511#define TTL_TAP_DEVICE_ZELDA_CANFD2 2
512#define TTL_TAP_DEVICE_ZELDA_CANFD3 3
513#define TTL_TAP_DEVICE_ZELDA_CANFD4 4
514#define TTL_TAP_DEVICE_ZELDA_CANFD5 5
515#define TTL_TAP_DEVICE_ZELDA_CANFD6 6
516#define TTL_TAP_DEVICE_ZELDA_CANFD7 7
517#define TTL_TAP_DEVICE_ZELDA_CANFD8 8
518#define TTL_TAP_DEVICE_ZELDA_CANFD9 9
519#define TTL_TAP_DEVICE_ZELDA_CANFD10 10
520#define TTL_TAP_DEVICE_ZELDA_CANFD11 11
521#define TTL_TAP_DEVICE_ZELDA_CANFD12 12
522#define TTL_TAP_DEVICE_ZELDA_CANFD13 13
523#define TTL_TAP_DEVICE_ZELDA_CANFD14 14
524#define TTL_TAP_DEVICE_ZELDA_CANFD15 15
525
526#define TTL_TAP_DEVICE_ZELDA_LIN1 1
527#define TTL_TAP_DEVICE_ZELDA_LIN2 2
528#define TTL_TAP_DEVICE_ZELDA_LIN3 3
529#define TTL_TAP_DEVICE_ZELDA_LIN4 4
530#define TTL_TAP_DEVICE_ZELDA_LIN5 5
531#define TTL_TAP_DEVICE_ZELDA_LIN6 6
532#define TTL_TAP_DEVICE_ZELDA_LIN7 7
533#define TTL_TAP_DEVICE_ZELDA_LIN8 8
534#define TTL_TAP_DEVICE_ZELDA_LIN9 9
535#define TTL_TAP_DEVICE_ZELDA_LIN10 10
536#define TTL_TAP_DEVICE_ZELDA_LIN11 11
537#define TTL_TAP_DEVICE_ZELDA_LIN12 12
538#define TTL_TAP_DEVICE_ZELDA_LIN13 13
539#define TTL_TAP_DEVICE_ZELDA_LIN14 14
540#define TTL_TAP_DEVICE_ZELDA_LIN15 15
541#define TTL_TAP_DEVICE_ZELDA_LIN16 16
542#define TTL_TAP_DEVICE_ZELDA_LIN17 17
543#define TTL_TAP_DEVICE_ZELDA_LIN18 18
544#define TTL_TAP_DEVICE_ZELDA_LIN19 19
545#define TTL_TAP_DEVICE_ZELDA_LIN20 20
546#define TTL_TAP_DEVICE_ZELDA_LIN21 21
547#define TTL_TAP_DEVICE_ZELDA_LIN22 22
548#define TTL_TAP_DEVICE_ZELDA_LIN23 23
549#define TTL_TAP_DEVICE_ZELDA_LIN24 24
550
551#define TTL_ETH_STATUS_VALID_FRAME 0x0001
552#define TTL_ETH_STATUS_CRC_ERROR_FRAME 0x0002
553#define TTL_ETH_STATUS_LENGTH_ERROR_FRAME 0x0004
554#define TTL_ETH_STATUS_PHY_ERROR_FRAME 0x0008
555#define TTL_ETH_STATUS_TX_ERROR_FRAME 0x0010
556#define TTL_ETH_STATUS_TX_FREEMEM_INFO_FRAME 0x2000
557#define TTL_ETH_STATUS_TX_FRAME 0x4000
558#define TTL_ETH_STATUS_PHY_STATUS 0x8000
559
560#define TTL_CAN_STATUS_VALID_BIT_MASK 0x0001
561#define TTL_CAN_STATUS_RTR_BIT_MASK 0x0002
562#define TTL_CAN_STATUS_BUSOFF_MASK 0x0004
563#define TTL_CAN_STATUS_MATCHED_BIT_MASK 0x0008
564#define TTL_CAN_STATUS_ERROR_CODE_MASK 0x0070
565#define TTL_CAN_STATUS_ERROR_CODE_POS 4
566#define TTL_CAN_STATUS_DLC_MASK 0x0F00
567#define TTL_CAN_STATUS_DLC_POS 8
568#define TTL_CAN_STATUS_IDE_BIT_MASK 0x1000
569#define TTL_CAN_STATUS_EDL_BIT_MASK 0x2000
570#define TTL_CAN_STATUS_BRS_BIT_MASK 0x4000
571#define TTL_CAN_STATUS_ESI_BIT_MASK 0x8000
572
573#define TTL_CAN_ERROR_NO_ERROR 0x0
574#define TTL_CAN_ERROR_STUFF_ERROR 0x1
575#define TTL_CAN_ERROR_FORM_ERROR 0x2
576#define TTL_CAN_ERROR_ACK_ERROR 0x3
577#define TTL_CAN_ERROR_BIT1_ERROR 0x4
578#define TTL_CAN_ERROR_BIT0_ERROR 0x5
579#define TTL_CAN_ERROR_CRC_ERROR 0x6
580#define TTL_CAN_ERROR_INVALID_DLC 0x7
581
582#define TTL_LIN_STATUS_PID_MASK 0x00ff
583#define TTL_LIN_ERROR_PARITY_ERROR 0x0100
584#define TTL_LIN_ERROR_SYNC_ERROR 0x0200
585#define TTL_LIN_ERROR_LIN2CHECKSUM_ERROR 0x0400
586#define TTL_LIN_ERROR_LIN1CHECKSUM_ERROR 0x0800
587#define TTL_LIN_ERROR_ANY_CHECKSUM (TTL_LIN_ERROR_LIN2CHECKSUM_ERROR | TTL_LIN_ERROR_LIN1CHECKSUM_ERROR)
588#define TTL_LIN_ERROR_NO_DATA_ERROR 0x1000
589#define TTL_LIN_ERROR_ABORT_ERROR 0x2000
590
591#define TTL_FLEXRAY_ITEM_MASK 0x0007
592#define TTL_FLEXRAY_ITEM_REGULAR_FRAME 0
593#define TTL_FLEXRAY_ITEM_ABORTED_FRAME 1
594#define TTL_FLEXRAY_ITEM_0_PULSE 2
595#define TTL_FLEXRAY_ITEM_1_PULSE 3
596#define TTL_FLEXRAY_ITEM_ERROR_INFORMATION 4
597#define TTL_FLEXRAY_MATCHED_MASK 0x0008
598#define TTL_FLEXRAY_FSS_ERROR_MASK 0x0020
599#define TTL_FLEXRAY_BSS_ERROR_MASK 0x0040
600#define TTL_FLEXRAY_FES_ERROR_MASK 0x0080
601#define TTL_FLEXRAY_FRAME_CRC_ERROR_MASK 0x0100
602#define TTL_FLEXRAY_HEADER_CRC_ERROR_MASK 0x0200
603#define TTL_FLEXRAY_IDLE_ERROR_MASK 0x0400
604
605#define TTL_SEGMENTED_MESSAGE_ENTRY_TYPE_INVALID 0x00000000
606#define TTL_SEGMENTED_MESSAGE_ENTRY_TYPE_FIRMWARE 0x00000001
607#define TTL_SEGMENTED_MESSAGE_ENTRY_TYPE_CONFIGURATION 0x00000002
608#define TTL_SEGMENTED_MESSAGE_ENTRY_TYPE_NESTED_FRAME 0x00000003
609
610#endif
611
612 /*
613 * Editor modelines - https://www.wireshark.org/tools/modelines.html
614 *
615 * Local variables:
616 * c-basic-offset: 4
617 * tab-width: 8
618 * indent-tabs-mode: nil
619 * End:
620 *
621 * vi: set shiftwidth=4 tabstop=8 expandtab:
622 * :indentSize=4:tabSize=8:noTabs=true:
623 */
Definition ttl.h:138
Definition ttl.h:130
Definition wtap_module.h:58
WS_DLL_PUBLIC const char * ttl_get_device_name(uint16_t addr)
Retrieves the device name corresponding to a given address.
Definition ttl.c:729
WS_DLL_PUBLIC const char * ttl_get_cascade_name(uint16_t addr)
Retrieves the cascade name corresponding to a given address.
Definition ttl.c:725
WS_DLL_PUBLIC uint16_t ttl_get_master_address(GHashTable *ht, uint16_t addr)
Retrieves the master address corresponding to a given address.
Definition ttl.c:183
wtap_open_return_val ttl_open(wtap *wth, int *err, char **err_info)
Open a TTL file.
Definition ttl.c:2679
WS_DLL_PUBLIC bool ttl_init_names_from_pref_file(GHashTable *ht, const char *app_env_var_prefix)
Initialize TTL names from preference file.
Definition ttl.c:2640
WS_DLL_PUBLIC int ttl_get_address_iface_type(uint16_t addr)
Determines the interface type based on the address.
Definition ttl.c:352
WS_DLL_PUBLIC const char * ttl_get_function_name(uint16_t addr)
Retrieves the function name corresponding to a given address.
Definition ttl.c:771
WS_DLL_PUBLIC bool ttl_is_chb_addr(uint16_t addr)
Checks if the given address corresponds to a CHB (Channel B) address.
Definition ttl.c:301
WS_DLL_PUBLIC bool ttl_init_masters_from_pref_file(GHashTable *ht, const char *app_env_var_prefix)
Initialize TTL masters from preference file.
Definition ttl.c:2567
wtap_open_return_val
For registering file types that we can open.
Definition wtap.h:1751