diff options
author | ravindranath <ravindranathx.doddi@intel.com> | 2013-03-19 11:35:44 -0400 |
---|---|---|
committer | Ricardo Cerqueira <cyanogenmod@cerqueira.org> | 2013-07-14 02:52:57 +0100 |
commit | 382f7fb0f87989dfa109913c34e3ef1ae32b452d (patch) | |
tree | e18b322016da84801a707a5430464798eef3d63c /hci/include | |
parent | a59fa7ff822e7b0a726f55e12e99b1a1f984ee5f (diff) | |
download | external_bluetooth_bluedroid-382f7fb0f87989dfa109913c34e3ef1ae32b452d.zip external_bluetooth_bluedroid-382f7fb0f87989dfa109913c34e3ef1ae32b452d.tar.gz external_bluetooth_bluedroid-382f7fb0f87989dfa109913c34e3ef1ae32b452d.tar.bz2 |
Support USB HCI
Issue: AXIA-1459
Change-Id: Ie4cc5766446774a0bae3bbf7d9baa5f44e814f59
Signed-off-by: Ravindranath Doddi <ravindranathx.doddi@intel.com>
Signed-off-by: Krishnan V <krishnanx.vaidyanathan.venkitakrishnan@intel.com>
Signed-off-by: Daniel Leung <daniel.leung@intel.com>
Signed-off-by: Matt Gumbel <matthew.k.gumbel@intel.com>
Diffstat (limited to 'hci/include')
-rw-r--r-- | hci/include/usb.h | 140 |
1 files changed, 140 insertions, 0 deletions
diff --git a/hci/include/usb.h b/hci/include/usb.h new file mode 100644 index 0000000..2be07b9 --- /dev/null +++ b/hci/include/usb.h @@ -0,0 +1,140 @@ +/****************************************************************************** + * + * Copyright (C) 2009-2012 Broadcom Corporation + * Portions of file: Copyright (C) 2013, Intel Corporation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at: + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +/****************************************************************************** + * + * Filename: usb.h + * + * Description: Contains definitions used for usb serial port controls + * + ******************************************************************************/ + +#ifndef USB_H +#define USB_H + +/****************************************************************************** +** Constants & Macros +******************************************************************************/ +/* + * Below are the interfaces to usb driver. At present, either USB is supported + * or UART is supported. + */ +#define usb_init userial_init +#define usb_open userial_open +#define usb_write userial_write +#define usb_read userial_read +#define usb_close userial_close +#define usb_ioctl userial_ioctl +#define usb_ioctl_op_t userial_ioctl_op_t + +#define BT_USB_DEVICE_INFO(cl, sc, pr) \ + .bDevClass = (cl), \ + .bDevSubClass = (sc), \ + .bDevProtocol = (pr) + +typedef enum { + USERIAL_OP_INIT, + USERIAL_OP_RXFLOW_ON, + USERIAL_OP_RXFLOW_OFF, +} userial_ioctl_op_t; + +/****************************************************************************** +** Type definitions +******************************************************************************/ + +struct bt_usb_device { + uint8_t bDevClass; + uint8_t bDevSubClass; + uint8_t bDevProtocol; +}; + +/****************************************************************************** +** Functions +******************************************************************************/ + +/******************************************************************************* +** +** Function usb_init +** +** Description Initializes the usb driver +** +** Returns TRUE/FALSE +** +*******************************************************************************/ +uint8_t usb_init(void); + +/******************************************************************************* +** +** Function usb_open +** +** Description Open Bluetooth device with the port ID +** +** Returns TRUE/FALSE +** +*******************************************************************************/ +uint8_t usb_open(uint8_t port); + +/******************************************************************************* +** +** Function usb_read +** +** Description Read data from the usb port +** +** Returns Number of bytes actually read from the usb port and +** copied into p_data. This may be less than len. +** +*******************************************************************************/ +uint16_t usb_read(uint16_t msg_id, uint8_t *p_buffer, uint16_t len); + +/******************************************************************************* +** +** Function usb_write +** +** Description Write data to the usb port +** +** Returns Number of bytes actually written to the usb port. This +** may be less than len. +** +*******************************************************************************/ +uint16_t usb_write(uint16_t msg_id, uint8_t *p_data, uint16_t len); + +/******************************************************************************* +** +** Function usb_close +** +** Description Close the usb port +** +** Returns None +** +*******************************************************************************/ +void usb_close(void); + +/******************************************************************************* +** +** Function usb_ioctl +** +** Description ioctl inteface +** +** Returns None +** +*******************************************************************************/ +void usb_ioctl(usb_ioctl_op_t op, void *p_data); + +#endif /* USB_H */ + |