RT-AC56 3.0.0.4.374.37 core
[tomato.git] / release / src-rt-6.x.4708 / linux / linux-2.6.36 / drivers / staging / ti-st / bt_drv.h
bloba0beebec84656e5b59b8a4c2ab4da8c99f7c9907
1 /*
2 * Texas Instrument's Bluetooth Driver For Shared Transport.
4 * Bluetooth Driver acts as interface between HCI CORE and
5 * TI Shared Transport Layer.
7 * Copyright (C) 2009 Texas Instruments
9 * This program is free software; you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License version 2 as
11 * published by the Free Software Foundation.
13 * This program is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 * GNU General Public License for more details.
18 * You should have received a copy of the GNU General Public License
19 * along with this program; if not, write to the Free Software
20 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
24 #ifndef _BT_DRV_H
25 #define _BT_DRV_H
27 /* Bluetooth Driver Version */
28 #define VERSION "1.0"
30 /* Defines number of seconds to wait for reg completion
31 * callback getting called from ST (in case,registration
32 * with ST returns PENDING status)
34 #define BT_REGISTER_TIMEOUT msecs_to_jiffies(6000) /* 6 sec */
36 /* BT driver's local status */
37 #define BT_DRV_RUNNING 0
38 #define BT_ST_REGISTERED 1
40 /* BT driver operation structure */
41 struct hci_st {
43 /* hci device pointer which binds to bt driver */
44 struct hci_dev *hdev;
46 /* used locally,to maintain various BT driver status */
47 unsigned long flags;
49 /* to hold ST registration callback status */
50 char streg_cbdata;
52 /* write function pointer of ST driver */
53 long (*st_write) (struct sk_buff *);
55 /* Wait on comepletion handler needed to synchronize
56 * hci_st_open() and hci_st_registration_completion_cb()
57 * functions.*/
58 struct completion wait_for_btdrv_reg_completion;
61 #endif