RDK Resources
[*RDK Preferred*]
Code Management Facility
RDK Forums
[RDK Conferences]
RDK Support
Archives
Papers & Presentations Archive
...
Deck of Cards | ||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||||||||||||||
|
...
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
$ cd ~/rdkb/components/opensource/ccsp/CcspEthAgent MACHINE=raspberrypi-rdk-broadband source meta-cmf-raspberrypi/setup-environment $ git fetch https://code.rdkcentral.com/r/rdkb/components/opensource/ccsp/CcspEthAgent refs/changes/98/58898/2 && git cherry-pick FETCH_HEAD $ cd ~/rdkb/components/generic/json-rpc $ git fetch https://code.rdkcentral.com/r/rdkb/components/generic/json-rpc refs/changes/91/58891/1 && git cherry-pick FETCH_HEAD $ cd ~/rdk/components/generic/rdk_logger $ git fetch https://code.rdkcentral.com/r/rdk/components/generic/rdk_logger refs/changes/85/58885/1 && git cherry-pick FETCH_HEAD $ cd ~/rdkb/components/opensource/ccsp/CcspPandM $ git fetch https://code.rdkcentral.com/r/rdkb/components/opensource/ccsp/CcspPandM refs/changes/51/58951/1 && git cherry-pick FETCH_HEAD $ cd ~/meta-cmf-broadband $ git fetch https://code.rdkcentral.com/r/rdk/components/generic/rdk-oe/meta-cmf-broadband refs/changes/65/58865/2 && git cherry-pick FETCH_HEAD $ cd ~/meta-cmf-raspberrypi $ git fetch https://code.rdkcentral.com/r/rdk/components/generic/rdk-oe/meta-cmf-raspberrypi refs/changes/26/59026/2 && git cherry-pick FETCH_HEAD |
Note : The above bug fixes changes are temporary given as instructions. This is not required once the change is gets merged into the appropriate repo.
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
$ MACHINE=raspberrypi-rdk-broadband source meta-cmf-raspberrypi/setup-environment
$ bitbake rdk-generic-broadband-image |
We will get the following rdk-wanmanager compilation errors While bitbaking the target image,
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
../../../git/source/WanManager/wanmgr_interface_sm.c:720:62: error: macro "LOG_CONSOLE" passed 3 arguments, but takes just 0
LOG_CONSOLE("%s Wan_init_complete:%d\n",buffer,uptime);
^
../../../git/source/WanManager/wanmgr_interface_sm.c:720:9: error: 'LOG_CONSOLE' undeclared (first use in this function)
LOG_CONSOLE("%s Wan_init_complete:%d\n",buffer,uptime);
^~~~~~~~~~~
|
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
$ cd ~/build-raspberrypi-rdk-broadband/tmp/work/cortexa7t2hf-neon-vfpv4-rdk-linux-gnueabi/rdk-wanmanager/1.99+gitAUTOINC+b6db33d891-r0/git/source
$ git fetch https://code.rdkcentral.com/r/rdkb/components/opensource/ccsp/RdkWanManager refs/changes/00/58500/2 && git cherry-pick FETCH_HEAD
$ bitbake rdk-wanmanager -c compile -f
$ bitbake rdk-generic-broadband-image |
Note: The above bug fixes changes are temporary given as instructions. This is not required once the change is gets merged into the appropriate repo.
Following diagram depicts the flow of control among the components,
Gliffy Diagram | ||||||
---|---|---|---|---|---|---|
|
Code Block | ||||
---|---|---|---|---|
| ||||
<project name="rdkb/components/opensource/ccsp/RdkWanManager" revision="rdk-next"/>
<project name="rdkb/components/generic/json-rpc" revision="rdk-next"/> |
Note : RdkWanManager Project will be added in RPI Manifest , Once the RdkWanManager Compilation error changes are merged in rdk-next(58500)
We enabled WanManager CFLAGS in below file in rpi(meta-cmf-raspberrypi) layer,
Code Block | ||||
---|---|---|---|---|
| ||||
CFLAGS_append += "${@bb.utils.contains('DISTRO_FEATURES', 'rdkb_wan_manager', ' -DFEATURE_RDKB_WAN_MANAGER ', '', d)}" |
We are using the following distro features to enable rdkb wanmanager in RPI machine configuration file,
Code Block | ||||
---|---|---|---|---|
| ||||
DISTRO_FEATURES_append = " rdkb_wan_manager" |
Also , we need to disable the GwProvapp-EthWan component in ccsp packagegroup .
Code Block | ||||
---|---|---|---|---|
| ||||
GWPROVAPP = "" |
bitbake rdk-generic-broadband-image |
Following diagram depicts the flow of control among the components,
Gliffy Diagram | ||||||||
---|---|---|---|---|---|---|---|---|
|
Code Block | ||||
---|---|---|---|---|
| ||||
<project name="rdkb/components/opensource/ccsp/RdkWanManager" revision="rdk-next"/>
<project name="rdkb/components/generic/json-rpc" revision="rdk-next"/> |
We enabled WanManager CFLAGS in below file in rpi(meta-cmf-raspberrypi) layerTo enable the RDKB Wanmanager components, added those components into the final build target. So, We have added those components into the ccsp packagegroup(58865),
Code Block | |||||
---|---|---|---|---|---|
| |||||
CFLAGSRDEPENDS_packagegroup-rdk-ccsp-broadband_append += " ${@bb.utils.contains('DISTRO_FEATURES', 'rdkb_wan_manager', ' rdk-wanmanager json-hal-lib hal-json-ethsw-DFEATURE_RDKB_WAN_MANAGER ', '', d)} " |
d)}" |
We are using the following distro features to enable rdkb wanmanager in RPI machine configuration file,
Code Block | ||||
---|---|---|---|---|
| ||||
DISTRO_FEATURES_append = " rdkb_wan_manager" |
Also , we need to disable the GwProvapp-EthWan component in ccsp packagegroup .
Code Block | ||||
---|---|---|---|---|
| ||||
GWPROVAPP = "" |
To enable the RDKB Wanmanager components, added those components into the final build target. So, We have added those components into the ccsp packagegroup(58865),
Code Block | ||||
---|---|---|---|---|
| ||||
RDEPENDS_packagegroup-rdk-ccsp-broadband_append = " ${@bb.utils.contains('DISTRO_FEATURES', 'rdkb_wan_manager', ' rdk-wanmanager json-hal-lib hal-json-ethsw', '', d)} " |
Recipe-path for JSON HAL server(58865)
$ ~/meta-cmf-broadband/recipes-ccsp/hal/hal-json-ethsw.bbCode Block | ||||
---|---|---|---|---|
| ||||
CFLAGS_append += "${@bb.utils.contains('DISTRO_FEATURES', 'rdkb_wan_manager', ' -D_WAN_MANAGER_ENABLED_', '', d)}" |
...
S.No | Recipe / Component Names | Layer | Error/Warning/challenges | Root Cause | Action | |||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | ccsp-cr.bbappend | CcspEthAgent will start once it gets the signal status from CR but CR is taking long time to send the Signal status . | CR is waiting to get the MTA System_Ready Signal but MTA is not supported for RPI. | |||||||||||
2 | ccsp-psm.bbappend | meta-cmf-raspberrypi | WanManager DM parameters are not getting the default values from PSM DB | Need to add wanmanager default DM values in PSM database | https://code.rdkcentral.com/r/c/rdk/components/generic/rdk-oe/meta-cmf-raspberrypi/+/58559/1/recipes-ccsp/ccsp/ccsp-psm.bbappend | |||||||||
3 | utopia.bbappend | meta-cmf-raspberrypi | Below gaps needs to be filled in rpi,
|
| https://code.rdkcentral.com/r/c/rdk/components/generic/rdk-oe/meta-cmf-raspberrypi/+/58554/1/recipes-ccsp/util/utopia.bbappend | |||||||||
4 | system_defaults (utopia recipe) | meta-cmf-raspberrypi | Added WanManager default values to syscfg.db | These default values are used by PAM | https://code.rdkcentral.com/r/c/rdk/components/generic/rdk-oe/meta-cmf-raspberrypi/+/58567/1/recipes-ccsp/util/utopia/system_defaults | |||||||||
5 | ccsp-p-and-m.bbappend | meta-cmf-raspberrypi | 210629-12:11:47.500509 [mod=PAM, lvl=WARN] [tid=8164] Found an unresolved api: Client_GetEntryCount | PandM DM was not loading after the WanManager Integration Device.DHCPv6.Client.{i} and Device.DHCPv4.Client.{i}. was | https://code.rdkcentral.com/r/c/rdk/components/generic/rdk-oe/meta-cmf-raspberrypi/+/58681/2/recipes-ccsp/ccsp/ccsp-p-and-m.bbappend | |||||||||
6 | RdkWanManager | RdkWanManager fails to build with the folloiwing errors: | ../../../git/source/WanManager/wanmgr_interface_sm.c:720:62: error: macro LOG_CONSOLE passed 3 arguments, but takes just 0 | 720 | LOG_CONSOLE(%s Wan_init_complete:%d\n,buffer,uptime); | | ^ | In file included from ../../../git/source/WanManager/wanmgr_interface_sm.c:31: | from ../../../git/source/WanManager/wanmgr_platforminterface_eventssm.hc:48: note: macro LOG_CONSOLE defined here | 48 | #define LOG_CONSOLE() | | | 31: | ../../../git/source/WanManager/wanmgr_interfaceplatform_smevents.ch:72048: 9: error: LOG_CONSOLE undeclared (first use in this function) | 720 | LOG_CONSOLE(%s Wan_init_complete:%d\n,buffer,uptime); | |note: macro LOG_CONSOLE defined here | 48 | #define LOG_CONSOLE() api is not defined | https://code.rdkcentral.com/r/c/rdkb/components/opensource/ccsp/RdkWanManager/+/58500 | 7 | ccsp-common-library.bbappend | meta-cmf-raspberrypi | ccsp-gwprov-app starts initialization scripts utopia_init.sh | | | | ../../../git/source/WanManager/wanmgr_interface_sm.c:720:9: error: LOG_CONSOLE undeclared (first use in this function) | 720 | LOG_CONSOLE(%s Wan_init_complete:%d\n,buffer,uptime); | | | LOG_CONSOLE () api is not defined Added utopia.service to call utopia_init.sh utopia_init.sh needs to be started before starting of the RdkWanManager executable | https://code.rdkcentral.com/r/c/rdkrdkb/components/genericopensource/rdk-oe/meta-cmf-raspberrypiccsp/RdkWanManager/+/58899https://code.rdkcentral.com/r/c/rdk/components/generic/rdk-oe/meta-cmf-raspberrypi/+/58899/5/recipes-ccsp/ccsp/ccsp58500 | ||||
7 | ccsp-common-library/utopia.service | 8 | hal | hal | Device.X_RDK_WanManager.CPEInterface.1.Wan.LinkStatus is getting Incorrect value . | bbappend | meta-cmf-raspberrypi | ccsp-gwprov-app starts initialization scripts utopia_init.sh | Added utopia.service to call utopia_init.sh utopia_init.sh needs to be started before starting of the RdkWanManager executable Eth Hal will configure interface and monitor the link. CcspEthAgent will subscribe for ‘EthInterfaceStatus’ event so that it can receive the notification form Vendor Software (i.e. Eth Hal)whenever physical link event change. | https://code.rdkcentral.com/r/c/rdkbrdk/devicescomponents/raspberrypi/hal/+/58846/1/source/json-ethsw/hal-json-ethsw.cgeneric/rdk-oe/meta-cmf-raspberrypi/+/58899 https://code.rdkcentral.com/r/c/rdk/components/generic/rdk-oe/meta-cmf-broadbandraspberrypi/+/5886558899/25/recipes-ccsp/halccsp/halccsp-jsoncommon-ethswlibrary/utopia.bbservice | ||||
98 | hal | hal | Device.X_RDK_WanManager. /CPEInterface.1. /Wan. ./../../../../../../../rdkb/components/opensource/ccsp/CcspEthAgent/source/TR-181/board_sbapi/cosa_ethernet_apis.c:651: error: undefined reference to 'GWP_GetEthWanLinkStatus'collect2: error: ld returned 1 exit status Makefile:423: recipe for target 'CcspEthAgent' failed | GWP_GetEthWanLinkStatus() is not defined in eth hal. Earlier, it was defined in GWP-EthWan | https://code.rdkcentral.com/r/c/rdkb/devices/raspberrypi/hal/+/58785/1/source/hal-ethsw/ccsp_hal_ethsw.c | LinkStatus is getting Incorrect value . |
| |||||||
9 | hal | hal | ../../../../../../../../../../rdkb/components/opensource/ccsp/CcspEthAgent/source/TR-181/board_sbapi/cosa_ethernet_apis.c:651: error: undefined reference to 'GWP_GetEthWanLinkStatus' collect2: error: ld returned 1 exit status Makefile:423: recipe for target 'CcspEthAgent' failed | GWP_GetEthWanLinkStatus() is not defined in eth hal. Earlier, it was defined in GWP-EthWan | 10 | rdk-logger | rdk_logger | WANMANAGERLog.txt is not created in /rdklogs/logs folder | rdkb_debug.ini and rdkb_log4crc files needs to be updated | https://code.rdkcentral.com/r/c/rdkrdkb/componentsdevices/genericraspberrypi/rdk_loggerhal/+/58885 | 11 | json-rpc | Json-rpc | ../git58785/1/source/jsonhal-ethsw/ccsp_hal-json-_ethsw.c:31:10: fatal error: json_rpc_common.h: No such file or directory 31 #include "json_rpc_common.h" compilation terminated.json_rpc_common.h required for hal-json-ethsw recipe compilation |
10 | rdk-logger | rdk_logger | WANMANAGERLog.txt is not created in /rdklogs/logs folder | rdkb_debug.ini and rdkb_log4crc files needs to be updated | https://code.rdkcentral.com/r/c/rdkbrdk/components/generic/json-rpcrdk_logger/+/5889158885 | |||||||||
1211 | CcspEthAgent | CcspEthAgent | Device.X_RDK_WanManager.CPEInterface.1.Wan.LinkStatus , Device.X_RDK_WanManager.CPEInterface.1.Phy.Path & Device.X_RDK_WanManager.CPEInterface.1.Phy.Status is getting Incorrect values . | 1.Fix for erouter0 interface bring up 2.Notifying EthAgent for the link event based on wan_physical_ifname 3.Fix to avoid CR ready check which is causing 1min delay in the ip-assignment flow for ETH. 4.Parameter instance correction for subscribeEvent | https://code.rdkcentral.com/r/c/rdkb/components/opensource/ccsp/CcspEthAgent/+/58898 | |||||||||
1312 | CcspPandM | CcspPandM | ../../../../../../../../../../rdkb/components/opensource/ccsp/CcspPandM/source-arm/TR-181/board_sbapi/cosa_dhcpv6_apis.c:8411:56: error: 'hub4_preferred_lft' undeclared (first use in this function) 8411 dhcpv6_data.prefixPltime = hub4_preferred_lft; ^~~~~~~~~~~~~~~~~~ ../../../../../../../../../../rdkb/components/opensource/ccsp/CcspPandM/source-arm/TR-181/board_sbapi/cosa_dhcpv6_apis.c:8411:56: note: each undeclared identifier is reported only once for each function it appears in ../../../../../../../../../../rdkb/components/opensource/ccsp/CcspPandM/source-arm/TR-181/board_sbapi/cosa_dhcpv6_apis.c:8412:56: error: 'hub4_valid_lft' undeclared (first use in this function) 8412 dhcpv6_data.prefixVltime = hub4_valid_lft; ^~~~~~~~~~~~~~ | hub4_preferred_lft , hub4_valid_lft are not declared properly in pam | https://code.rdkcentral.com/r/c/rdkb/components/opensource/ccsp/CcspPandM/+/58951 |
...
Following systemd service file's status needs to be verfiy,
...
Using dmcli commands to verify the LinkStatus(CcspEthAgent will pass the LinkStatus to WanManager )
...