1 /* Broadcom NetXtreme-C/E network driver.
2  *
3  * Copyright (c) 2018 Broadcom Inc
4  *
5  * This program is free software; you can redistribute it and/or modify
6  * it under the terms of the GNU General Public License as published by
7  * the Free Software Foundation.
8  */
9 
10 #ifndef BNXT_COREDUMP_H
11 #define BNXT_COREDUMP_H
12 
13 struct bnxt_coredump_segment_hdr {
14 	__u8 signature[4];
15 	__le32 component_id;
16 	__le32 segment_id;
17 	__le32 flags;
18 	__u8 low_version;
19 	__u8 high_version;
20 	__le16 function_id;
21 	__le32 offset;
22 	__le32 length;
23 	__le32 status;
24 	__le32 duration;
25 	__le32 data_offset;
26 	__le32 instance;
27 	__le32 rsvd[5];
28 };
29 
30 struct bnxt_coredump_record {
31 	__u8 signature[4];
32 	__le32 flags;
33 	__u8 low_version;
34 	__u8 high_version;
35 	__u8 asic_state;
36 	__u8 rsvd0[5];
37 	char system_name[32];
38 	__le16 year;
39 	__le16 month;
40 	__le16 day;
41 	__le16 hour;
42 	__le16 minute;
43 	__le16 second;
44 	__le16 utc_bias;
45 	__le16 rsvd1;
46 	char commandline[256];
47 	__le32 total_segments;
48 	__le32 os_ver_major;
49 	__le32 os_ver_minor;
50 	__le32 rsvd2;
51 	char os_name[32];
52 	__le16 end_year;
53 	__le16 end_month;
54 	__le16 end_day;
55 	__le16 end_hour;
56 	__le16 end_minute;
57 	__le16 end_second;
58 	__le16 end_utc_bias;
59 	__le32 asic_id1;
60 	__le32 asic_id2;
61 	__le32 coredump_status;
62 	__u8 ioctl_low_version;
63 	__u8 ioctl_high_version;
64 	__le16 rsvd3[313];
65 };
66 #endif
67