~ubuntu-branches/debian/wheezy/linux-2.6/wheezy

« back to all changes in this revision

Viewing changes to drivers/staging/ath6kl/os/linux/include/export_hci_transport.h

  • Committer: Bazaar Package Importer
  • Author(s): Ben Hutchings, Ben Hutchings, Aurelien Jarno, Martin Michlmayr
  • Date: 2011-04-06 13:53:30 UTC
  • mfrom: (43.1.5 sid)
  • Revision ID: james.westby@ubuntu.com-20110406135330-wjufxhd0tvn3zx4z
Tags: 2.6.38-3
[ Ben Hutchings ]
* [ppc64] Add to linux-tools package architectures (Closes: #620124)
* [amd64] Save cr4 to mmu_cr4_features at boot time (Closes: #620284)
* appletalk: Fix bugs introduced when removing use of BKL
* ALSA: Fix yet another race in disconnection
* cciss: Fix lost command issue
* ath9k: Fix kernel panic in AR2427
* ses: Avoid kernel panic when lun 0 is not mapped
* PCI/ACPI: Report ASPM support to BIOS if not disabled from command line

[ Aurelien Jarno ]
* rtlwifi: fix build when PCI is not enabled.

[ Martin Michlmayr ]
* rtlwifi: Eliminate udelay calls with too large values (Closes: #620204)

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
//------------------------------------------------------------------------------
 
2
// Copyright (c) 2009-2010 Atheros Corporation.  All rights reserved.
 
3
// 
 
4
//
 
5
// Permission to use, copy, modify, and/or distribute this software for any
 
6
// purpose with or without fee is hereby granted, provided that the above
 
7
// copyright notice and this permission notice appear in all copies.
 
8
//
 
9
// THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
 
10
// WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
 
11
// MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
 
12
// ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
 
13
// WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
 
14
// ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
 
15
// OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
 
16
//
 
17
//
 
18
//------------------------------------------------------------------------------
 
19
//==============================================================================
 
20
// HCI bridge implementation
 
21
//
 
22
// Author(s): ="Atheros"
 
23
//==============================================================================
 
24
 
 
25
#include "hci_transport_api.h"
 
26
#include "common_drv.h"
 
27
 
 
28
extern HCI_TRANSPORT_HANDLE (*_HCI_TransportAttach)(void *HTCHandle, HCI_TRANSPORT_CONFIG_INFO *pInfo);
 
29
extern void (*_HCI_TransportDetach)(HCI_TRANSPORT_HANDLE HciTrans);
 
30
extern A_STATUS    (*_HCI_TransportAddReceivePkts)(HCI_TRANSPORT_HANDLE HciTrans, HTC_PACKET_QUEUE *pQueue);
 
31
extern A_STATUS    (*_HCI_TransportSendPkt)(HCI_TRANSPORT_HANDLE HciTrans, HTC_PACKET *pPacket, A_BOOL Synchronous);
 
32
extern void        (*_HCI_TransportStop)(HCI_TRANSPORT_HANDLE HciTrans);
 
33
extern A_STATUS    (*_HCI_TransportStart)(HCI_TRANSPORT_HANDLE HciTrans);
 
34
extern A_STATUS    (*_HCI_TransportEnableDisableAsyncRecv)(HCI_TRANSPORT_HANDLE HciTrans, A_BOOL Enable);
 
35
extern A_STATUS    (*_HCI_TransportRecvHCIEventSync)(HCI_TRANSPORT_HANDLE HciTrans, 
 
36
                                          HTC_PACKET           *pPacket,
 
37
                                          int                  MaxPollMS);
 
38
extern A_STATUS    (*_HCI_TransportSetBaudRate)(HCI_TRANSPORT_HANDLE HciTrans, A_UINT32 Baud);
 
39
extern A_STATUS    (*_HCI_TransportEnablePowerMgmt)(HCI_TRANSPORT_HANDLE HciTrans, A_BOOL Enable);
 
40
 
 
41
 
 
42
#define HCI_TransportAttach(HTCHandle, pInfo)   \
 
43
            _HCI_TransportAttach((HTCHandle), (pInfo))
 
44
#define HCI_TransportDetach(HciTrans)    \
 
45
            _HCI_TransportDetach(HciTrans)
 
46
#define HCI_TransportAddReceivePkts(HciTrans, pQueue)   \
 
47
            _HCI_TransportAddReceivePkts((HciTrans), (pQueue))
 
48
#define HCI_TransportSendPkt(HciTrans, pPacket, Synchronous)  \
 
49
            _HCI_TransportSendPkt((HciTrans), (pPacket), (Synchronous))
 
50
#define HCI_TransportStop(HciTrans)  \
 
51
            _HCI_TransportStop((HciTrans))
 
52
#define HCI_TransportStart(HciTrans)  \
 
53
            _HCI_TransportStart((HciTrans))
 
54
#define HCI_TransportEnableDisableAsyncRecv(HciTrans, Enable)   \
 
55
            _HCI_TransportEnableDisableAsyncRecv((HciTrans), (Enable))
 
56
#define HCI_TransportRecvHCIEventSync(HciTrans, pPacket, MaxPollMS)   \
 
57
            _HCI_TransportRecvHCIEventSync((HciTrans), (pPacket), (MaxPollMS))
 
58
#define HCI_TransportSetBaudRate(HciTrans, Baud)    \
 
59
            _HCI_TransportSetBaudRate((HciTrans), (Baud))
 
60
#define HCI_TransportEnablePowerMgmt(HciTrans, Enable)    \
 
61
            _HCI_TransportEnablePowerMgmt((HciTrans), (Enable))
 
62
 
 
63
 
 
64
extern A_STATUS ar6000_register_hci_transport(HCI_TRANSPORT_CALLBACKS *hciTransCallbacks);
 
65
 
 
66
extern A_STATUS ar6000_get_hif_dev(HIF_DEVICE *device, void *config);
 
67
 
 
68
extern A_STATUS ar6000_set_uart_config(HIF_DEVICE *hifDevice, A_UINT32 scale, A_UINT32 step);
 
69
 
 
70
/* get core clock register settings
 
71
 * data: 0 - 40/44MHz
 
72
 *       1 - 80/88MHz
 
73
 *       where (5G band/2.4G band)
 
74
 * assume 2.4G band for now
 
75
 */
 
76
extern A_STATUS ar6000_get_core_clock_config(HIF_DEVICE *hifDevice, A_UINT32 *data);