GNU Linux-libre 4.19.264-gnu1
[releases.git] / drivers / net / ethernet / broadcom / bnxt / bnxt_coredump.h
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