1 /****************************************************************************** 2 * 3 * Copyright (C) 2009-2014 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 * 22 * This file contains the NFA HCI related definitions from the 23 * specification. 24 * 25 ******************************************************************************/ 26 27 #ifndef NFA_HCI_DEFS_H 28 #define NFA_HCI_DEFS_H 29 30 /* Static gates */ 31 #define NFA_HCI_LOOP_BACK_GATE 0x04 32 #define NFA_HCI_IDENTITY_MANAGEMENT_GATE 0x05 33 34 #define NFA_HCI_FIRST_HOST_SPECIFIC_GENERIC_GATE 0x10 35 #define NFA_HCI_LAST_HOST_SPECIFIC_GENERIC_GATE 0xEF 36 #define NFA_HCI_FIRST_PROP_GATE 0xF0 37 #define NFA_HCI_LAST_PROP_GATE 0xFF 38 39 /* Generic Gates */ 40 #define NFA_HCI_CONNECTIVITY_GATE 0x41 41 42 /* Static pipes */ 43 #define NFA_HCI_LINK_MANAGEMENT_PIPE 0x00 44 #define NFA_HCI_ADMIN_PIPE 0x01 45 46 /* Dynamic pipe range */ 47 #define NFA_HCI_FIRST_DYNAMIC_PIPE 0x02 48 #define NFA_HCI_LAST_DYNAMIC_PIPE 0x6F 49 50 /* host_table */ 51 #define NFA_HCI_HOST_CONTROLLER 0x00 52 #define NFA_HCI_DH_HOST 0x01 53 #define NFA_HCI_UICC_HOST 0x02 54 55 /* Type of instruction */ 56 #define NFA_HCI_COMMAND_TYPE 0x00 57 #define NFA_HCI_EVENT_TYPE 0x01 58 #define NFA_HCI_RESPONSE_TYPE 0x02 59 60 /* Chaining bit value */ 61 #define NFA_HCI_MESSAGE_FRAGMENTATION 0x00 62 #define NFA_HCI_NO_MESSAGE_FRAGMENTATION 0x01 63 64 /* NFA HCI commands */ 65 66 /* Commands for all gates */ 67 #define NFA_HCI_ANY_SET_PARAMETER 0x01 68 #define NFA_HCI_ANY_GET_PARAMETER 0x02 69 #define NFA_HCI_ANY_OPEN_PIPE 0x03 70 #define NFA_HCI_ANY_CLOSE_PIPE 0x04 71 72 /* Admin gate commands */ 73 #define NFA_HCI_ADM_CREATE_PIPE 0x10 74 #define NFA_HCI_ADM_DELETE_PIPE 0x11 75 #define NFA_HCI_ADM_NOTIFY_PIPE_CREATED 0x12 76 #define NFA_HCI_ADM_NOTIFY_PIPE_DELETED 0x13 77 #define NFA_HCI_ADM_CLEAR_ALL_PIPE 0x14 78 #define NFA_HCI_ADM_NOTIFY_ALL_PIPE_CLEARED 0x15 79 80 /* Connectivity gate command */ 81 #define NFA_HCI_CON_PRO_HOST_REQUEST 0x10 82 83 84 /* NFA HCI responses */ 85 #define NFA_HCI_ANY_OK 0x00 86 #define NFA_HCI_ANY_E_NOT_CONNECTED 0x01 87 #define NFA_HCI_ANY_E_CMD_PAR_UNKNOWN 0x02 88 #define NFA_HCI_ANY_E_NOK 0x03 89 #define NFA_HCI_ADM_E_NO_PIPES_AVAILABLE 0x04 90 #define NFA_HCI_ANY_E_REG_PAR_UNKNOWN 0x05 91 #define NFA_HCI_ANY_E_PIPE_NOT_OPENED 0x06 92 #define NFA_HCI_ANY_E_CMD_NOT_SUPPORTED 0x07 93 #define NFA_HCI_ANY_E_INHIBITED 0x08 94 #define NFA_HCI_ANY_E_TIMEOUT 0x09 95 #define NFA_HCI_ANY_E_REG_ACCESS_DENIED 0x0A 96 #define NFA_HCI_ANY_E_PIPE_ACCESS_DENIED 0x0B 97 98 /* NFA HCI Events */ 99 #define NFA_HCI_EVT_HCI_END_OF_OPERATION 0x01 100 #define NFA_HCI_EVT_POST_DATA 0x02 101 #define NFA_HCI_EVT_HOT_PLUG 0x03 102 103 104 /* NFA HCI Connectivity gate Events */ 105 #define NFA_HCI_EVT_CONNECTIVITY 0x10 106 #define NFA_HCI_EVT_TRANSACTION 0x12 107 #define NFA_HCI_EVT_OPERATION_ENDED 0x13 108 109 /* Host controller Admin gate registry identifiers */ 110 #define NFA_HCI_SESSION_IDENTITY_INDEX 0x01 111 #define NFA_HCI_MAX_PIPE_INDEX 0x02 112 #define NFA_HCI_WHITELIST_INDEX 0x03 113 #define NFA_HCI_HOST_LIST_INDEX 0x04 114 115 /* Host controller and DH Link management gate registry identifier */ 116 #define NFA_HCI_REC_ERROR_INDEX 0x02 117 118 /* DH Identity management gate registry identifier */ 119 #define NFA_HCI_VERSION_SW_INDEX 0x01 120 #define NFA_HCI_VERSION_HW_INDEX 0x03 121 #define NFA_HCI_VENDOR_NAME_INDEX 0x04 122 #define NFA_HCI_MODEL_ID_INDEX 0x05 123 #define NFA_HCI_HCI_VERSION_INDEX 0x02 124 #define NFA_HCI_GATES_LIST_INDEX 0x06 125 126 127 #endif /* NFA_HCI_DEFS_H */ 128