| # Copyright 2023 The Pigweed Authors |
| # |
| # 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 |
| # |
| # https://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. |
| |
| # This file contains Emboss packet definitions for extensions to the Bluetooth |
| # Host-Controller interface. These extensions are not standardized through the |
| # Bluetooth SIG. |
| # |
| # NOTE: The definitions below are incomplete. They get added as needed. |
| # This list will grow as we support more vendor features. |
| |
| import "hci.emb" as hci |
| |
| [$default byte_order: "LittleEndian"] |
| [(cpp) namespace: "pw::bluetooth::emboss"] |
| |
| # ======================= Android HCI extensions ======================== |
| # Documentation: https://source.android.com/devices/bluetooth/hci_requirements |
| |
| |
| # ============ Events ============ |
| |
| |
| struct LEMultiAdvtStateChangeSubevent: |
| -- LE multi-advertising state change subevent. |
| 0 [+hci.VendorDebugEvent.$size_in_bytes] hci.VendorDebugEvent vendor_event |
| $next [+1] UInt advertising_handle |
| -- Handle used to identify an advertising set. |
| |
| $next [+1] hci.StatusCode status |
| -- Reason for state change. Currently will always be 0x00. |
| -- 0x00: Connection received. |
| |
| $next [+2] UInt connection_handle |
| -- Handle used to identify the connection that caused the state change (i.e. |
| -- advertising instance to be disabled). Value will be 0xFFFF if invalid. |