-
Notifications
You must be signed in to change notification settings - Fork 14
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
RDKBDEV-2227 : EasyMesh Controller Phase 2
Reason for change: Airties Easymesh team continue to work on new or missing features, improvements and bug fixes. This commit merges those changes. A highlight of changes is as follows: Added rbus implementation of Device.WiFi.DataElements with the following objects: .DataElements.Network, .Network.SSID, .Network.Device, .Device.MultiAPDevice, .MultiAPDevice.Backhaul, .Backhaul.Stats, .Device.CACStatus, .CACStatus.CACAvailableChannel, .CACStatus.CACNonOccupancyChannel, .CACStatus.CACActiveChannel, .Device.Radio, .Radio.BackhaulSta, .Radio.Capabilities, .Capabilities.CapableOperatingClassProfile, .Radio.MultiAPRadio, .Radio.CurrentOperatingClassProfile, .Radio.ScanResult, .ScanResult.OpClassScan, .OpClassScan.ChannelScan, .ChannelScan.NeighborBSS, .Radio.BSS, .BSS.STA, .STA.MultiAPSTA, .MultiAPSTA.SteeringSummaryStats, .MultiAPSTA.SteeringHistory, .Radio.UnassociatedSTA, .Device.X_AIRTIES_Ethernet, .X_AIRTIES_Ethernet.Interface, .Interface.Device, .Interface.Device.X_AIRTIES_DeviceInfo, .X_AIRTIES_DeviceInfo.MemoryStatus, .X_AIRTIES_DeviceInfo.ProcessStatus, with the following methods: .Network.SetSSID, .Network.Device.X_AIRTIES_UnassociatedStaLinkMetricsQuery, .Radio.ChannelScanRequest, .MultiAPRadio.ChannelScan, .MultiAPRadio.FullScan, .BSS.X_AIRTIES_ClientAssocControl, .STA.X_AIRTIES_BeaconMetricsQuery, .STA.ClientSteer, .MultiAPSTA.Disassociate, and with the following events: .DataElements.AssociationEvent, .DataElements.DisassociationEvent, .DataElements.FailedConnectionEvent Controller main is moved to ssp, ssp is the main entry point now. Partially implemented two way synchronization between SSID Profiles and Device.WiFi. Persistent Storage of RDK (PSM) handling added, config values and modified profiles are kept there and initialized from stored values. Topology tree, arraylist, timer, logging, memory allocation, channel set, cli and subscription related improvements. Switched to dynamically allocated ssid profiles. Easymesh extensions for ethernet interfaces, ethernet devices and vitals added. Code refactoring in various levels, formatting and code clean-up. Improved, cleaned and fixed autotools files. Updated systemd service file to make emctl start properly. WiFi Hal version 3 support added, but in order for ssid sync to work properly and receive notifications, CcspWifiAgent must be up to date with required patches applied(RDKBDEV-2226). Added log level for ssp. Local hash(53458421fe5baa2e7e2be2924eafa5c30ca75686) Known Issues: MAX_OBJECT_NAME_LENGTH of rbus, which is bound to RTMSG_HEADER_MAX_TOPIC_LENGTH (128) is not enough for some of the elements of NeighborBSS. So they are truncated as for now. SetSSID method is not fully implemented regarding Device.WiFi.SSID sync. Test Procedure: Use recommended setup and check for onboarding of devices with Easymesh agent. Use CLI or GUI to modify. Wiki pages will be updated to test Northbound APIs. Risks: Moderate Change-Id: I985c10c6b78c3243bded952ac6ac9f20512a2f06 Signed-off-by: Engin Akca <[email protected]>
- Loading branch information
Showing
115 changed files
with
17,251 additions
and
4,250 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
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 |
---|---|---|
|
@@ -6,6 +6,6 @@ | |
|
||
SUBDIRS = libplatform \ | ||
ieee1905 \ | ||
ssp \ | ||
controller \ | ||
ssp \ | ||
tools |
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
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
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,37 @@ | ||
/* | ||
* Copyright (c) 2019-2022 AirTies Wireless Networks | ||
* | ||
* Licensed under the BSD+Patent License. | ||
*/ | ||
|
||
#ifndef MAP_CTRL_EMEX_TLV_HANDLER_H_ | ||
#define MAP_CTRL_EMEX_TLV_HANDLER_H_ | ||
|
||
#include "map_data_model.h" | ||
#include "i1905.h" | ||
|
||
/* Feature IDs reported in Feature Profile */ | ||
enum emex_feature_ids { | ||
MAP_EMEX_FEATURE_UNUSED = 0x0000, | ||
MAP_EMEX_FEATURE_DEVICE_METRICS, /* 0x0001 */ | ||
MAP_EMEX_FEATURE_IEEE1905_1_14, /* 0x0002 */ | ||
MAP_EMEX_FEATURE_DEVICE_INFO, /* 0x0003 */ | ||
MAP_EMEX_FEATURE_ETH_STATS, /* 0x0004 */ | ||
}; | ||
|
||
map_emex_common_feature_list_t *controller_get_emex_common_feature_list(void); | ||
bool map_emex_agent_is_feature_supported(map_ale_info_t *ale, uint16_t id); | ||
bool map_emex_common_is_feature_supported(uint16_t id); | ||
|
||
bool map_emex_is_valid_tlv(i1905_vendor_specific_tlv_t* vendor_tlv); | ||
int8_t map_emex_parse_tlv(map_ale_info_t* ale, i1905_vendor_specific_tlv_t* vendor_tlv); | ||
int8_t map_emex_get_emex_tlv(map_ale_info_t *ale, uint16_t emex_tlv_type, | ||
i1905_vendor_specific_tlv_t *vendor_specific_tlv); | ||
|
||
int map_emex_handle_cmdu_pre(map_ale_info_t *ale, i1905_cmdu_t *cmdu); | ||
int map_emex_handle_cmdu_post(map_ale_info_t *ale, i1905_cmdu_t *cmdu); | ||
|
||
int8_t map_emex_init(void); | ||
void map_emex_fini(void); | ||
|
||
#endif /* MAP_CTRL_EMEX_TLV_HANDLER_H_ */ |
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,24 @@ | ||
/* | ||
* Copyright (c) 2023 AirTies Wireless Networks | ||
* | ||
* Licensed under the BSD+Patent License. | ||
*/ | ||
|
||
#ifndef MAP_CTRL_NBAPI_H_ | ||
#define MAP_CTRL_NBAPI_H_ | ||
|
||
#include "map_data_model.h" | ||
|
||
typedef enum { | ||
NB_OK = 0, /**< success */ | ||
NB_EFAIL, /**< failure */ | ||
NB_ENOMEM, /**< out of memory */ | ||
NB_EINVAL, /**< invalid arguments */ | ||
NB_ENOENT, /**< does not exist */ | ||
} nb_retcode_t; | ||
|
||
int map_ctrl_nbapi_init(void); | ||
|
||
void map_ctrl_nbapi_fini(void); | ||
|
||
#endif /* MAP_CTRL_NBAPI_H_ */ |
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
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
Oops, something went wrong.