2
2
* Required functions exported by the port-specific (os-dependent) driver
3
3
* to common (os-independent) driver code.
5
* Copyright 2008, Broadcom Corporation
5
* Copyright (C) 2010, Broadcom Corporation
6
6
* All Rights Reserved.
8
* Unless you and Broadcom execute a separate written software license
9
* agreement governing use of this software, this software is licensed to you
10
* under the terms of the GNU General Public License version 2, available at
11
* http://www.gnu.org/licenses/old-licenses/gpl-2.0.html (the "GPL"), with the
12
* following added to such license:
13
* As a special exception, the copyright holders of this software give you
14
* permission to link this software with independent modules, regardless of the
15
* license terms of these independent modules, and to copy and distribute the
16
* resulting executable under terms of your choice, provided that you also meet,
17
* for each linked independent module, the terms and conditions of the license
18
* of that module. An independent module is a module which is not derived from
21
8
* THIS SOFTWARE IS OFFERED "AS IS", AND BROADCOM GRANTS NO WARRANTIES OF ANY
22
9
* KIND, EXPRESS OR IMPLIED, BY STATUTE, COMMUNICATION OR OTHERWISE. BROADCOM
23
10
* SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
24
11
* FOR A SPECIFIC PURPOSE OR NONINFRINGEMENT CONCERNING THIS SOFTWARE.
26
* $Id: wl_export.h,v 1.66.4.7 2009/01/21 21:48:41 Exp $
13
* $Id: wl_export.h,v 1.78 2009/04/07 18:54:52 Exp $
29
16
#ifndef _wl_export_h_
34
22
extern void wl_init(struct wl_info *wl);
35
23
extern uint wl_reset(struct wl_info *wl);
36
24
extern void wl_intrson(struct wl_info *wl);
37
25
extern uint32 wl_intrsoff(struct wl_info *wl);
38
26
extern void wl_intrsrestore(struct wl_info *wl, uint32 macintmask);
39
27
extern void wl_event(struct wl_info *wl, char *ifname, wlc_event_t *e);
28
extern void wl_event_sync(struct wl_info *wl, char *ifname, wlc_event_t *e);
40
29
extern int wl_up(struct wl_info *wl);
41
30
extern void wl_down(struct wl_info *wl);
42
31
extern void wl_dump_ver(struct wl_info *wl, struct bcmstrbuf *b);
43
32
extern void wl_txflowcontrol(struct wl_info *wl, bool state, int prio);
44
33
extern bool wl_alloc_dma_resources(struct wl_info *wl, uint dmaddrwidth);
35
#ifndef LINUX_WLUSER_POSTMOGRIFY_REMOVAL
47
38
extern struct wl_timer *wl_init_timer(struct wl_info *wl, void (*fn)(void* arg), void *arg,
49
40
extern void wl_free_timer(struct wl_info *wl, struct wl_timer *timer);
50
41
extern void wl_add_timer(struct wl_info *wl, struct wl_timer *timer, uint ms, int periodic);
51
42
extern bool wl_del_timer(struct wl_info *wl, struct wl_timer *timer);
54
45
extern void wl_sendup(struct wl_info *wl, struct wl_if *wlif, void *p, int numpkt);
55
46
extern char *wl_ifname(struct wl_info *wl, struct wl_if *wlif);
47
extern struct wl_if *wl_add_if(struct wl_info *wl, struct wlc_if* wlcif, uint unit,
48
struct ether_addr *remote);
49
extern void wl_del_if(struct wl_info *wl, struct wl_if *wlif);
57
51
extern void wl_monitor(struct wl_info *wl, wl_rxsts_t *rxsts, void *p);
58
52
extern void wl_set_monitor(struct wl_info *wl, int val);