1/****************************************************************************** 2 * 3 * Copyright (C) 2009-2012 Broadcom Corporation 4 * 5 * Licensed under the Apache License, Version 2.0 (the "License"); 6 * you may not use this file except in compliance with the License. 7 * You may obtain a copy of the License at: 8 * 9 * http://www.apache.org/licenses/LICENSE-2.0 10 * 11 * Unless required by applicable law or agreed to in writing, software 12 * distributed under the License is distributed on an "AS IS" BASIS, 13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 * See the License for the specific language governing permissions and 15 * limitations under the License. 16 * 17 ******************************************************************************/ 18 19/****************************************************************************** 20 * 21 * Filename: userial.h 22 * 23 * Description: Contains definitions used for serial port controls 24 * 25 ******************************************************************************/ 26 27#ifndef USERIAL_H 28#define USERIAL_H 29 30/****************************************************************************** 31** Constants & Macros 32******************************************************************************/ 33 34/**** port IDs ****/ 35#define USERIAL_PORT_1 0 36#define USERIAL_PORT_2 1 37#define USERIAL_PORT_3 2 38#define USERIAL_PORT_4 3 39#define USERIAL_PORT_5 4 40#define USERIAL_PORT_6 5 41#define USERIAL_PORT_7 6 42#define USERIAL_PORT_8 7 43#define USERIAL_PORT_9 8 44#define USERIAL_PORT_10 9 45#define USERIAL_PORT_11 10 46#define USERIAL_PORT_12 11 47#define USERIAL_PORT_13 12 48#define USERIAL_PORT_14 13 49#define USERIAL_PORT_15 14 50#define USERIAL_PORT_16 15 51#define USERIAL_PORT_17 16 52#define USERIAL_PORT_18 17 53 54typedef enum { 55 USERIAL_OP_INIT, 56 USERIAL_OP_RXFLOW_ON, 57 USERIAL_OP_RXFLOW_OFF, 58} userial_ioctl_op_t; 59 60/****************************************************************************** 61** Type definitions 62******************************************************************************/ 63 64/****************************************************************************** 65** Extern variables and functions 66******************************************************************************/ 67 68/****************************************************************************** 69** Functions 70******************************************************************************/ 71 72/******************************************************************************* 73** 74** Function userial_init 75** 76** Description Initializes the userial driver 77** 78** Returns TRUE/FALSE 79** 80*******************************************************************************/ 81uint8_t userial_init(void); 82 83/******************************************************************************* 84** 85** Function userial_open 86** 87** Description Open Bluetooth device with the port ID 88** 89** Returns TRUE/FALSE 90** 91*******************************************************************************/ 92uint8_t userial_open(uint8_t port); 93 94/******************************************************************************* 95** 96** Function userial_read 97** 98** Description Read data from the userial port 99** 100** Returns Number of bytes actually read from the userial port and 101** copied into p_data. This may be less than len. 102** 103*******************************************************************************/ 104uint16_t userial_read(uint16_t msg_id, uint8_t *p_buffer, uint16_t len); 105 106/******************************************************************************* 107** 108** Function userial_write 109** 110** Description Write data to the userial port 111** 112** Returns Number of bytes actually written to the userial port. This 113** may be less than len. 114** 115*******************************************************************************/ 116uint16_t userial_write(uint16_t msg_id, uint8_t *p_data, uint16_t len); 117 118/******************************************************************************* 119** 120** Function userial_close 121** 122** Description Close the userial port 123** 124** Returns None 125** 126*******************************************************************************/ 127void userial_close(void); 128 129/******************************************************************************* 130** 131** Function userial_ioctl 132** 133** Description ioctl inteface 134** 135** Returns None 136** 137*******************************************************************************/ 138void userial_ioctl(userial_ioctl_op_t op, void *p_data); 139 140#endif /* USERIAL_H */ 141 142