1/*
2 * Copyright (c) 2014 Broadcom Corporation
3 *
4 * Permission to use, copy, modify, and/or distribute this software for any
5 * purpose with or without fee is hereby granted, provided that the above
6 * copyright notice and this permission notice appear in all copies.
7 *
8 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
9 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
10 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
11 * SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
12 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION
13 * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
14 * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
15 */
16
17#ifndef _vendor_h_
18#define _vendor_h_
19
20#define BROADCOM_OUI	0x001018
21
22enum brcmf_vndr_cmds {
23	BRCMF_VNDR_CMDS_UNSPEC,
24	BRCMF_VNDR_CMDS_DCMD,
25	BRCMF_VNDR_CMDS_LAST
26};
27
28/**
29 * enum brcmf_nlattrs - nl80211 message attributes
30 *
31 * @BRCMF_NLATTR_LEN: message body length
32 * @BRCMF_NLATTR_DATA: message body
33 */
34enum brcmf_nlattrs {
35	BRCMF_NLATTR_UNSPEC,
36
37	BRCMF_NLATTR_LEN,
38	BRCMF_NLATTR_DATA,
39
40	__BRCMF_NLATTR_AFTER_LAST,
41	BRCMF_NLATTR_MAX = __BRCMF_NLATTR_AFTER_LAST - 1
42};
43
44/**
45 * struct brcmf_vndr_dcmd_hdr - message header for cfg80211 vendor command dcmd
46 *				support
47 *
48 * @cmd: common dongle cmd definition
49 * @len: length of expecting return buffer
50 * @offset: offset of data buffer
51 * @set: get or set request(optional)
52 * @magic: magic number for verification
53 */
54struct brcmf_vndr_dcmd_hdr {
55	uint cmd;
56	int len;
57	uint offset;
58	uint set;
59	uint magic;
60};
61
62extern const struct wiphy_vendor_command brcmf_vendor_cmds[];
63
64#endif /* _vendor_h_ */
65