Mistake on this page?
Report an issue in GitHub or email us
Data Structures | Macros | Typedefs | Enumerations | Functions
bb_ble_int.h File Reference

Internal BLE baseband interface file. More...

#include "bb_ble_api.h"
#include "bb_ble_api_op.h"
#include "pal_bb_ble.h"
#include "pal_bb.h"
#include "ll_defs.h"
#include "wsf_assert.h"
#include "wsf_math.h"
#include "cfg_mac_ble.h"

Go to the source code of this file.

Data Structures

struct  bbBleCtrlBlk_t
 BB control block. More...
 

Macros

#define BB_ADVB_MAX_LEN   WSF_MAX(BB_FIXED_ADVB_PKT_LEN, LL_ADVB_MAX_LEN)
 Maximum length of an advertising packet. More...
 
#define BB_ISR_START()    bbIsrStartTime = PalBbGetCurrentTime()
 Mark the start of an ISR. More...
 
#define BB_ISR_MARK(x)    x = WSF_MAX(x, PalBbGetCurrentTime() - bbIsrStartTime)
 Mark the ISR duration, recording the high watermark. More...
 

Typedefs

typedef void(* bbBleExecOpFn_t) (BbOpDesc_t *pBod, BbBleData_t *pBle)
 Execution operation function. More...
 

Enumerations

Functions

void bbBleRegisterOp (uint8_t opType, bbBleExecOpFn_t execOpCback, bbBleExecOpFn_t cancelOpCback)
 Register operation handlers. More...
 
static void bbBleClrIfs (void)
 Clear IFS in operation. More...
 
static void bbBleSetTifs (void)
 Set TIFS in operation. More...
 
static void bbBleSetAbsIfs (uint32_t ifsTime, PalBbBleChan_t *pIfsChan)
 Set absolute time IFS in operation. More...
 

Detailed Description

Internal BLE baseband interface file.

Copyright (c) 2013-2019 Arm Ltd. All Rights Reserved.

Copyright (c) 2019-2020 Packetcraft, Inc.

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.

Definition in file bb_ble_int.h.

Macro Definition Documentation

#define BB_ADVB_MAX_LEN   WSF_MAX(BB_FIXED_ADVB_PKT_LEN, LL_ADVB_MAX_LEN)

Maximum length of an advertising packet.

Definition at line 46 of file bb_ble_int.h.

#define BB_ISR_MARK (   x)    x = WSF_MAX(x, PalBbGetCurrentTime() - bbIsrStartTime)

Mark the ISR duration, recording the high watermark.

Definition at line 52 of file bb_ble_int.h.

#define BB_ISR_START ( )    bbIsrStartTime = PalBbGetCurrentTime()

Mark the start of an ISR.

Definition at line 49 of file bb_ble_int.h.

Typedef Documentation

typedef void(* bbBleExecOpFn_t) (BbOpDesc_t *pBod, BbBleData_t *pBle)

Execution operation function.

Definition at line 77 of file bb_ble_int.h.

Enumeration Type Documentation

anonymous enum

Event states for advertising operations.

Enumerator
BB_EVT_STATE_TX_ADV_IND 

Advertising indication.

BB_EVT_STATE_RX_SCAN_OR_CONN_INIT 

Scan or connection init packet.

BB_EVT_STATE_TX_SCAN_OR_CONN_RSP 

Scan or connection response.

BB_EVT_STATE_TX_CHAIN_IND 

Chain indication.

Definition at line 55 of file bb_ble_int.h.

anonymous enum

Event states for scanning operations.

Enumerator
BB_EVT_STATE_RX_ADV_IND 

Advertising indication.

BB_EVT_STATE_TX_SCAN_OR_CONN_INIT 

Scan or connection init packet.

BB_EVT_STATE_RX_SCAN_OR_CONN_RSP 

Scan or connection response.

BB_EVT_STATE_RX_CHAIN_IND 

Chain indication.

Definition at line 64 of file bb_ble_int.h.

Function Documentation

static void bbBleClrIfs ( void  )
static

Clear IFS in operation.

The BB may choose not to enable IFS after the next Tx or Rx.

Definition at line 135 of file bb_ble_int.h.

void bbBleRegisterOp ( uint8_t  opType,
bbBleExecOpFn_t  execOpCback,
bbBleExecOpFn_t  cancelOpCback 
)

Register operation handlers.

Parameters
opTypeOperation type.
execOpCbackExecute operation callback.
cancelOpCbackCancel operation callback.
static void bbBleSetAbsIfs ( uint32_t  ifsTime,
PalBbBleChan_t pIfsChan 
)
static

Set absolute time IFS in operation.

Parameters
ifsTimeDue time of the next PDU.
pIfsChanChannel of the next PDU.

The BB must enable IFS with absolute time after the next Tx or Rx.

Definition at line 165 of file bb_ble_int.h.

static void bbBleSetTifs ( void  )
static

Set TIFS in operation.

The BB must enable TIFS after the next Tx or Rx.

Definition at line 149 of file bb_ble_int.h.

Important Information for this Arm website

This site uses cookies to store information on your computer. By continuing to use our site, you consent to our cookies. If you are not happy with the use of these cookies, please review our Cookie Policy to learn how they can be disabled. By disabling cookies, some features of the site will not work.