-
Notifications
You must be signed in to change notification settings - Fork 6.5k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Bluetooth: Mesh: Bridge Configuration Client API
Adding documentation and function calles for the API's in Bridge Configuration Client model. Signed-off-by: Ingar Kulbrandstad <[email protected]>
- Loading branch information
Showing
8 changed files
with
468 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,86 @@ | ||
/* | ||
* Copyright (c) 2024 Nordic Semiconductor ASA | ||
* | ||
* SPDX-License-Identifier: Apache-2.0 | ||
*/ | ||
|
||
#ifndef ZEPHYR_INCLUDE_BLUETOOTH_MESH_BRG_CFG_H__ | ||
#define ZEPHYR_INCLUDE_BLUETOOTH_MESH_BRG_CFG_H__ | ||
|
||
#include <stdint.h> | ||
#include <stdbool.h> | ||
|
||
#ifdef __cplusplus | ||
extern "C" { | ||
#endif | ||
|
||
/** | ||
* @defgroup bt_mesh_brg_cfg Bridge Configuration common header | ||
* @ingroup bt_mesh | ||
* @{ | ||
*/ | ||
|
||
#define BT_MESH_SUBNET_BRIDGE_DISABLED 0x00 | ||
#define BT_MESH_SUBNET_BRIDGE_ENABLED 0x01 | ||
|
||
/** Bridging Table state entry corresponding to a entry in the Bridging Table. */ | ||
struct bridging_table_entry { | ||
/** Allowed directions for the bridged traffic (or bridged traffic not allowed) */ | ||
uint8_t directions; | ||
/** NetKey Index of the first subnet */ | ||
uint16_t net_idx_1; | ||
/** NetKey Index of the second subnet */ | ||
uint16_t net_idx_2; | ||
/** Address of the node in the first subnet */ | ||
uint16_t addr_1; | ||
/** Address of the node in the second subnet */ | ||
uint16_t addr_2; | ||
}; | ||
|
||
/** Bridging Table Status response */ | ||
struct bt_mesh_bridging_table_status { | ||
/** Status Code of the requesting message */ | ||
uint8_t status; | ||
/** Requested Bridging Table entry */ | ||
struct bridging_table_entry entry; | ||
}; | ||
|
||
struct bt_mesh_filter_netkey { | ||
uint16_t filter: 2, /* Filter applied to the set of pairs of NetKey Indexes */ | ||
prohibited: 2, /* Prohibited */ | ||
net_idx: 12; /* NetKey Index used for filtering or ignored */ | ||
}; | ||
|
||
/** Bridged Subnets List response */ | ||
struct bt_mesh_bridged_subnets_list { | ||
/** Filter applied NetKey Indexes, and NetKey Index used for filtering. */ | ||
struct bt_mesh_filter_netkey net_idx_filter; | ||
/** Start offset in units of bridges */ | ||
uint8_t start_idx; | ||
/** Pointer to allocated buffer for storing filtered of NetKey Indexes */ | ||
struct net_buf_simple *list; | ||
}; | ||
|
||
/** Bridging Table List response */ | ||
struct bt_mesh_bridging_table_list { | ||
/** Status Code of the requesting message */ | ||
uint8_t status; | ||
/** NetKey Index of the first subnet */ | ||
uint16_t net_idx_1; | ||
/** NetKey Index of the second subnet */ | ||
uint16_t net_idx_2; | ||
/** Start offset in units of bridges */ | ||
uint16_t start_idx; | ||
/** Pointer to allocated buffer for storing list of bridged addresses and directions */ | ||
struct net_buf_simple *list; | ||
}; | ||
|
||
/** | ||
* @} | ||
*/ | ||
|
||
#ifdef __cplusplus | ||
} | ||
#endif | ||
|
||
#endif /* ZEPHYR_INCLUDE_BLUETOOTH_MESH_BRG_CFG_H__ */ |
Oops, something went wrong.