@@ -684,7 +684,6 @@ static struct bt_mesh_health_cli health_cli = {
684684};
685685
686686
687- #ifdef CONFIG_BT_MESH_LARGE_COMP_DATA_SRV
688687static uint8_t health_tests [] = {
689688 BT_MESH_HEALTH_TEST_INFO (COMPANY_ID_LF , 6 , 0x01 , 0x02 , 0x03 , 0x04 , 0x34 ,
690689 0x15 ),
@@ -718,13 +717,9 @@ static const struct bt_mesh_models_metadata_entry health_srv_meta_alt[] = {
718717 },
719718 BT_MESH_MODELS_METADATA_END ,
720719};
721- #endif
722720
723721static struct bt_mesh_health_srv health_srv = {
724722 .cb = & health_srv_cb ,
725- #ifdef CONFIG_BT_MESH_LARGE_COMP_DATA_SRV
726- .metadata = health_srv_meta ,
727- #endif
728723};
729724
730725BT_MESH_HEALTH_PUB_DEFINE (health_pub , CUR_FAULTS_MAX );
@@ -1027,7 +1022,63 @@ static uint8_t proxy_solicit(const void *cmd, uint16_t cmd_len,
10271022static const struct bt_mesh_model root_models [] = {
10281023 BT_MESH_MODEL_CFG_SRV ,
10291024 BT_MESH_MODEL_CFG_CLI (& cfg_cli ),
1030- BT_MESH_MODEL_HEALTH_SRV (& health_srv , & health_pub ),
1025+ BT_MESH_MODEL_HEALTH_SRV (& health_srv , & health_pub , health_srv_meta ),
1026+ BT_MESH_MODEL_HEALTH_CLI (& health_cli ),
1027+ #if defined(CONFIG_BT_MESH_SAR_CFG_SRV )
1028+ BT_MESH_MODEL_SAR_CFG_SRV ,
1029+ #endif
1030+ #if defined(CONFIG_BT_MESH_SAR_CFG_CLI )
1031+ BT_MESH_MODEL_SAR_CFG_CLI (& sar_cfg_cli ),
1032+ #endif
1033+ #if defined(CONFIG_BT_MESH_LARGE_COMP_DATA_SRV )
1034+ BT_MESH_MODEL_LARGE_COMP_DATA_SRV ,
1035+ #endif
1036+ #if defined(CONFIG_BT_MESH_LARGE_COMP_DATA_CLI )
1037+ BT_MESH_MODEL_LARGE_COMP_DATA_CLI (& lcd_cli ),
1038+ #endif
1039+ #if defined(CONFIG_BT_MESH_OP_AGG_SRV )
1040+ BT_MESH_MODEL_OP_AGG_SRV ,
1041+ #endif
1042+ #if defined(CONFIG_BT_MESH_OP_AGG_CLI )
1043+ BT_MESH_MODEL_OP_AGG_CLI ,
1044+ #endif
1045+ #if defined(CONFIG_BT_MESH_RPR_CLI )
1046+ BT_MESH_MODEL_RPR_CLI (& rpr_cli ),
1047+ #endif
1048+ #if defined(CONFIG_BT_MESH_RPR_SRV )
1049+ BT_MESH_MODEL_RPR_SRV ,
1050+ #endif
1051+ #if defined(CONFIG_BT_MESH_DFD_SRV )
1052+ BT_MESH_MODEL_DFD_SRV (& dfd_srv ),
1053+ #endif
1054+ #if defined(CONFIG_BT_MESH_DFU_SRV )
1055+ BT_MESH_MODEL_DFU_SRV (& dfu_srv ),
1056+ #endif
1057+ #if defined(CONFIG_BT_MESH_BLOB_CLI ) && !defined (CONFIG_BT_MESH_DFD_SRV )
1058+ BT_MESH_MODEL_BLOB_CLI (& blob_cli ),
1059+ #endif
1060+ #if defined(CONFIG_BT_MESH_PRIV_BEACON_SRV )
1061+ BT_MESH_MODEL_PRIV_BEACON_SRV ,
1062+ #endif
1063+ #if defined(CONFIG_BT_MESH_PRIV_BEACON_CLI )
1064+ BT_MESH_MODEL_PRIV_BEACON_CLI (& priv_beacon_cli ),
1065+ #endif
1066+ #if defined(CONFIG_BT_MESH_OD_PRIV_PROXY_CLI )
1067+ BT_MESH_MODEL_OD_PRIV_PROXY_CLI (& od_priv_proxy_cli ),
1068+ #endif
1069+ #if defined(CONFIG_BT_MESH_SOL_PDU_RPL_CLI )
1070+ BT_MESH_MODEL_SOL_PDU_RPL_CLI (& srpl_cli ),
1071+ #endif
1072+ #if defined(CONFIG_BT_MESH_OD_PRIV_PROXY_SRV )
1073+ BT_MESH_MODEL_OD_PRIV_PROXY_SRV ,
1074+ #endif
1075+
1076+ };
1077+
1078+ static const struct bt_mesh_model root_models_alt [] = {
1079+ BT_MESH_MODEL_CFG_SRV ,
1080+ BT_MESH_MODEL_CFG_CLI (& cfg_cli ),
1081+ BT_MESH_MODEL_HEALTH_SRV (& health_srv , & health_pub , health_srv_meta_alt ),
10311082 BT_MESH_MODEL_HEALTH_CLI (& health_cli ),
10321083#if defined(CONFIG_BT_MESH_SAR_CFG_SRV )
10331084 BT_MESH_MODEL_SAR_CFG_SRV ,
@@ -1100,6 +1151,10 @@ static const struct bt_mesh_elem elements[] = {
11001151 BT_MESH_ELEM (0 , root_models , vnd_models ),
11011152};
11021153
1154+ static const struct bt_mesh_elem elements_alt [] = {
1155+ BT_MESH_ELEM (0 , root_models_alt , vnd_models ),
1156+ };
1157+
11031158static void link_open (bt_mesh_prov_bearer_t bearer )
11041159{
11051160 struct btp_mesh_prov_link_open_ev ev ;
@@ -1247,8 +1302,8 @@ static const struct bt_mesh_comp comp = {
12471302
12481303static const struct bt_mesh_comp comp_alt = {
12491304 .cid = CID_LOCAL ,
1250- .elem = elements ,
1251- .elem_count = ARRAY_SIZE (elements ),
1305+ .elem = elements_alt ,
1306+ .elem_count = ARRAY_SIZE (elements_alt ),
12521307 .vid = 2 ,
12531308};
12541309
@@ -1414,9 +1469,6 @@ static uint8_t init(const void *cmd, uint16_t cmd_len,
14141469 err = bt_mesh_init (& prov , & comp );
14151470 } else {
14161471 LOG_WRN ("Loading alternative comp data" );
1417- #ifdef CONFIG_BT_MESH_LARGE_COMP_DATA_SRV
1418- health_srv .metadata = health_srv_meta_alt ;
1419- #endif
14201472 err = bt_mesh_init (& prov , & comp_alt );
14211473 }
14221474
0 commit comments