Linux Kernel
3.7.1
Main Page
Related Pages
Modules
Namespaces
Data Structures
Files
File List
Globals
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Groups
Pages
drivers
net
wireless
libertas
mesh.h
Go to the documentation of this file.
1
/*
2
* Contains all definitions needed for the Libertas' MESH implementation.
3
*/
4
#ifndef _LBS_MESH_H_
5
#define _LBS_MESH_H_
6
7
8
#include <
net/iw_handler.h
>
9
#include <
net/lib80211.h
>
10
11
#include "
host.h
"
12
#include "
dev.h
"
13
14
#ifdef CONFIG_LIBERTAS_MESH
15
16
struct
net_device
;
17
18
int
lbs_init_mesh
(
struct
lbs_private
*
priv
);
19
void
lbs_start_mesh
(
struct
lbs_private
*
priv
);
20
int
lbs_deinit_mesh
(
struct
lbs_private
*
priv
);
21
22
void
lbs_remove_mesh
(
struct
lbs_private
*
priv
);
23
24
static
inline
bool
lbs_mesh_activated
(
struct
lbs_private
*
priv
)
25
{
26
/* Mesh SSID is only programmed after successful init */
27
return
priv->mesh_ssid_len != 0;
28
}
29
30
int
lbs_mesh_set_channel
(
struct
lbs_private
*
priv
,
u8
channel
);
31
32
/* Sending / Receiving */
33
34
struct
rxpd
;
35
struct
txpd
;
36
37
struct
net_device
*
lbs_mesh_set_dev
(
struct
lbs_private
*
priv
,
38
struct
net_device
*
dev
,
struct
rxpd
*
rxpd
);
39
void
lbs_mesh_set_txpd
(
struct
lbs_private
*
priv
,
40
struct
net_device
*
dev
,
struct
txpd
*
txpd
);
41
42
43
/* Command handling */
44
45
struct
cmd_ds_command;
46
struct
cmd_ds_mesh_access
;
47
struct
cmd_ds_mesh_config
;
48
49
50
/* Ethtool statistics */
51
52
struct
ethtool_stats
;
53
54
void
lbs_mesh_ethtool_get_stats
(
struct
net_device
*
dev
,
55
struct
ethtool_stats
*
stats
,
uint64_t
*
data
);
56
int
lbs_mesh_ethtool_get_sset_count
(
struct
net_device
*
dev
,
int
sset);
57
void
lbs_mesh_ethtool_get_strings
(
struct
net_device
*
dev
,
58
uint32_t
stringset,
uint8_t
*
s
);
59
60
61
#else
62
63
#define lbs_init_mesh(priv)
64
#define lbs_deinit_mesh(priv)
65
#define lbs_start_mesh(priv)
66
#define lbs_add_mesh(priv)
67
#define lbs_remove_mesh(priv)
68
#define lbs_mesh_set_dev(priv, dev, rxpd) (dev)
69
#define lbs_mesh_set_txpd(priv, dev, txpd)
70
#define lbs_mesh_set_channel(priv, channel) (0)
71
#define lbs_mesh_activated(priv) (false)
72
73
#endif
74
75
76
77
#endif
Generated on Thu Jan 10 2013 14:12:03 for Linux Kernel by
1.8.2