1 /* SPDX-License-Identifier: ISC */
2 /* Copyright (C) 2023 MediaTek Inc. */
9 struct mt7996_coredump
{
16 /* time-of-day stamp */
18 /* time-of-day stamp, nano-seconds */
22 /* firmware version */
23 char fw_ver
[ETHTOOL_FWVERS_LEN
];
30 /* program counters */
40 struct mt7996_coredump_mem
{
45 struct mt7996_mem_hdr
{
51 struct mt7996_mem_region
{
58 #ifdef CONFIG_DEV_COREDUMP
60 const struct mt7996_mem_region
*
61 mt7996_coredump_get_mem_layout(struct mt7996_dev
*dev
, u32
*num
);
62 struct mt7996_crash_data
*mt7996_coredump_new(struct mt7996_dev
*dev
);
63 int mt7996_coredump_submit(struct mt7996_dev
*dev
);
64 int mt7996_coredump_register(struct mt7996_dev
*dev
);
65 void mt7996_coredump_unregister(struct mt7996_dev
*dev
);
67 #else /* CONFIG_DEV_COREDUMP */
69 static inline const struct mt7996_mem_region
*
70 mt7996_coredump_get_mem_layout(struct mt7996_dev
*dev
, u32
*num
)
75 static inline int mt7996_coredump_submit(struct mt7996_dev
*dev
)
81 mt7996_crash_data
*mt7996_coredump_new(struct mt7996_dev
*dev
)
86 static inline int mt7996_coredump_register(struct mt7996_dev
*dev
)
91 static inline void mt7996_coredump_unregister(struct mt7996_dev
*dev
)
95 #endif /* CONFIG_DEV_COREDUMP */
97 #endif /* _COREDUMP_H_ */