Bluetooth: Mesh: Redefine callback registration

There is a problem with the previous method, that is,
we use the same label(bt_mesh_subnet_cb_subnet_evt) and
put it in the same section, which is not friendly for debugging.

Signed-off-by: Lingao Meng <menglingao@xiaomi.com>
This commit is contained in:
Lingao Meng 2021-08-13 14:10:45 +08:00 committed by Christopher Friedt
commit 4a8a1577ef
6 changed files with 19 additions and 11 deletions

View file

@ -602,7 +602,9 @@ static void subnet_evt(struct bt_mesh_subnet *sub, enum bt_mesh_key_evt evt)
}
}
BT_MESH_SUBNET_CB_DEFINE(subnet_evt);
BT_MESH_SUBNET_CB_DEFINE(app_keys) = {
.evt_handler = subnet_evt,
};
void bt_mesh_app_keys_reset(void)
{

View file

@ -423,7 +423,9 @@ static void subnet_evt(struct bt_mesh_subnet *sub, enum bt_mesh_key_evt evt)
}
}
BT_MESH_SUBNET_CB_DEFINE(subnet_evt);
BT_MESH_SUBNET_CB_DEFINE(beacon) = {
.evt_handler = subnet_evt,
};
void bt_mesh_beacon_init(void)
{

View file

@ -1305,7 +1305,9 @@ static void subnet_evt(struct bt_mesh_subnet *sub, enum bt_mesh_key_evt evt)
}
}
BT_MESH_SUBNET_CB_DEFINE(subnet_evt);
BT_MESH_SUBNET_CB_DEFINE(friend) = {
.evt_handler = subnet_evt,
};
int bt_mesh_friend_init(void)
{

View file

@ -640,7 +640,9 @@ static void subnet_evt(struct bt_mesh_subnet *sub, enum bt_mesh_key_evt evt)
}
}
BT_MESH_SUBNET_CB_DEFINE(subnet_evt);
BT_MESH_SUBNET_CB_DEFINE(gatt_services) = {
.evt_handler = subnet_evt,
};
static void proxy_ccc_changed(const struct bt_gatt_attr *attr, uint16_t value)
{

View file

@ -1075,7 +1075,9 @@ static void subnet_evt(struct bt_mesh_subnet *sub, enum bt_mesh_key_evt evt)
}
}
BT_MESH_SUBNET_CB_DEFINE(subnet_evt);
BT_MESH_SUBNET_CB_DEFINE(lpn) = {
.evt_handler = subnet_evt,
};
int bt_mesh_lpn_init(void)
{

View file

@ -76,13 +76,11 @@ struct bt_mesh_subnet_cb {
*
* @brief Register a subnet event callback.
*
* @param _handler Handler function, see @ref bt_mesh_subnet_cb::evt_handler.
* @param _name Handler name.
*/
#define BT_MESH_SUBNET_CB_DEFINE(_handler) \
#define BT_MESH_SUBNET_CB_DEFINE(_name) \
static const STRUCT_SECTION_ITERABLE( \
bt_mesh_subnet_cb, _CONCAT(bt_mesh_subnet_cb_, _handler)) = { \
.evt_handler = (_handler), \
}
bt_mesh_subnet_cb, _CONCAT(bt_mesh_subnet_cb_, _name))
/** @brief Reset all Network keys. */
void bt_mesh_net_keys_reset(void);