diff options
author | Jonathan Herman <hermanjl@cs.unc.edu> | 2013-01-22 10:38:37 -0500 |
---|---|---|
committer | Jonathan Herman <hermanjl@cs.unc.edu> | 2013-01-22 10:38:37 -0500 |
commit | fcc9d2e5a6c89d22b8b773a64fb4ad21ac318446 (patch) | |
tree | a57612d1888735a2ec7972891b68c1ac5ec8faea /drivers/net/wireless/bcm4329/include/msgtrace.h | |
parent | 8dea78da5cee153b8af9c07a2745f6c55057fe12 (diff) |
Diffstat (limited to 'drivers/net/wireless/bcm4329/include/msgtrace.h')
-rw-r--r-- | drivers/net/wireless/bcm4329/include/msgtrace.h | 72 |
1 files changed, 72 insertions, 0 deletions
diff --git a/drivers/net/wireless/bcm4329/include/msgtrace.h b/drivers/net/wireless/bcm4329/include/msgtrace.h new file mode 100644 index 00000000000..1479086dba3 --- /dev/null +++ b/drivers/net/wireless/bcm4329/include/msgtrace.h | |||
@@ -0,0 +1,72 @@ | |||
1 | /* | ||
2 | * Trace messages sent over HBUS | ||
3 | * | ||
4 | * Copyright (C) 1999-2010, Broadcom Corporation | ||
5 | * | ||
6 | * Unless you and Broadcom execute a separate written software license | ||
7 | * agreement governing use of this software, this software is licensed to you | ||
8 | * under the terms of the GNU General Public License version 2 (the "GPL"), | ||
9 | * available at http://www.broadcom.com/licenses/GPLv2.php, with the | ||
10 | * following added to such license: | ||
11 | * | ||
12 | * As a special exception, the copyright holders of this software give you | ||
13 | * permission to link this software with independent modules, and to copy and | ||
14 | * distribute the resulting executable under terms of your choice, provided that | ||
15 | * you also meet, for each linked independent module, the terms and conditions of | ||
16 | * the license of that module. An independent module is a module which is not | ||
17 | * derived from this software. The special exception does not apply to any | ||
18 | * modifications of the software. | ||
19 | * | ||
20 | * Notwithstanding the above, under no circumstances may you combine this | ||
21 | * software in any way with any other Broadcom software provided under a license | ||
22 | * other than the GPL, without Broadcom's express prior written consent. | ||
23 | * | ||
24 | * $Id: msgtrace.h,v 1.1.2.4 2009/01/27 04:09:40 Exp $ | ||
25 | */ | ||
26 | |||
27 | #ifndef _MSGTRACE_H | ||
28 | #define _MSGTRACE_H | ||
29 | |||
30 | #ifndef _TYPEDEFS_H_ | ||
31 | #include <typedefs.h> | ||
32 | #endif | ||
33 | |||
34 | |||
35 | /* This marks the start of a packed structure section. */ | ||
36 | #include <packed_section_start.h> | ||
37 | |||
38 | #define MSGTRACE_VERSION 1 | ||
39 | |||
40 | /* Message trace header */ | ||
41 | typedef BWL_PRE_PACKED_STRUCT struct msgtrace_hdr { | ||
42 | uint8 version; | ||
43 | uint8 spare; | ||
44 | uint16 len; /* Len of the trace */ | ||
45 | uint32 seqnum; /* Sequence number of message. Useful if the messsage has been lost | ||
46 | * because of DMA error or a bus reset (ex: SDIO Func2) | ||
47 | */ | ||
48 | uint32 discarded_bytes; /* Number of discarded bytes because of trace overflow */ | ||
49 | uint32 discarded_printf; /* Number of discarded printf because of trace overflow */ | ||
50 | } BWL_POST_PACKED_STRUCT msgtrace_hdr_t; | ||
51 | |||
52 | #define MSGTRACE_HDRLEN sizeof(msgtrace_hdr_t) | ||
53 | |||
54 | /* The hbus driver generates traces when sending a trace message. This causes endless traces. | ||
55 | * This flag must be set to TRUE in any hbus traces. The flag is reset in the function msgtrace_put. | ||
56 | * This prevents endless traces but generates hasardous lost of traces only in bus device code. | ||
57 | * It is recommendat to set this flag in macro SD_TRACE but not in SD_ERROR for avoiding missing | ||
58 | * hbus error traces. hbus error trace should not generates endless traces. | ||
59 | */ | ||
60 | extern bool msgtrace_hbus_trace; | ||
61 | |||
62 | typedef void (*msgtrace_func_send_t)(void *hdl1, void *hdl2, uint8 *hdr, | ||
63 | uint16 hdrlen, uint8 *buf, uint16 buflen); | ||
64 | |||
65 | extern void msgtrace_sent(void); | ||
66 | extern void msgtrace_put(char *buf, int count); | ||
67 | extern void msgtrace_init(void *hdl1, void *hdl2, msgtrace_func_send_t func_send); | ||
68 | |||
69 | /* This marks the end of a packed structure section. */ | ||
70 | #include <packed_section_end.h> | ||
71 | |||
72 | #endif /* _MSGTRACE_H */ | ||