Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Reverted from v. 53

...

RDK-B Raspberrypi - Host SetUp and Build Instructions#BRaspberrypi-HostSetUpandBuildInstructions-YoctoBuildSteps

Repo Steps

To To  build, follow below instructions

Deck of Cards
startHiddenfalse
idRepo Steps
loopCardstrue


Card
idRepo Steps
labelDunfell Build


Code Block
languagebash
themeDJango
titleDunfell Build - Repo Steps
$ mkdir <workspace dir>
$ cd <workspace dir>
$ repo init -u https://code.rdkcentral.com/r/manifests -b dunfell -m rdkb-extsrc.xml 
$ repo sync -j`nproc` --no-clone-bundle



Card
idRepo Steps
labelMorty Build


Code Block
languagebash
themeDJango
titleMorty Build - Repo Steps
$ mkdir <workspace dir>
$ cd <workspace dir>
$ repo init -u https://code.rdkcentral.com/r/manifests -b rdk-next -m rdkb-extsrc.xml
$ repo sync -j`nproc` --no-clone-bundle




WanManager Bug Fixes


Code Block
languagebash
themeDJango
titleWanManager Fixes
$ cd ~/rdkb/components/opensource/ccsp/CcspEthAgent
$ 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

...

Distro Features

We are using the following distro features to enable rdkb wanmanager . Please add the following distro features into OEM to enable rdkb wanmanager in RPI machine configuration file,

  • rdkb_wan_manager : Used to enable RDK WanManager and json hal
Code Block
languagebash
titleraspberrypi-rdk-broadband.conf
DISTRO_FEATURES_append =  rdkb_wan_manager"

Also , we need to disable the GwProvapp-EthWan component in ccsp packagegroup . 

Code Block
languagebash
titlepackagegroup-ccsp-rdk-broadband.bbappend
GWPROVAPP = ""


Package Group

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),

...

  • 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.
  • JSON HAL server library can be used by the vendor application to receive actions from RDK WanManager application and do necessary action. The vendor application that has HAL server library integrated will receive the JSON rpc request from the RDK WanManager, process the request and sends the JSON based response back to the RDK WanManager. The HAL server also helps to dispatch asynchronous events to the RDK WanManager based on the event subscription.
  • Recipe-path for JSON HAL server(58865)


...

S.NoRecipe / Component NamesLayer Error/Warning/challengesRoot CauseAction 
1

ccsp-cr.bbappend

meta-cmf-raspberrypi

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. 

https://code.rdkcentral.com/r/c/rdk/components/generic/rdk-oe/meta-cmf-raspberrypi/+/58559/1/recipes-ccsp/ccsp/ccsp-cr.bbappend


2ccsp-psm.bbappendmeta-cmf-raspberrypi

Need to add wanmanager default DM values in PSM database

WanManager DM  parameters are not getting the default values from PSM DB


Need to add wanmanager default DM values in PSM databasehttps://code.rdkcentral.com/r/c/rdk/components/generic/rdk-oe/meta-cmf-raspberrypi/+/58559/1/recipes-ccsp/ccsp/ccsp-psm.bbappend
  3utopia.bbappendmeta-cmf-raspberrypi

Below gaps needs to be filled in rpi,

  •   Below initialization activities were done by GWP
    1. /var/run/firewall directory creation.
    2. copying files that are needed by CCSP modules -ccsp_msg.cfg and cp_subsys_ert.
    3. crontab related changes(soft link) 4
    .ipv6/conf/all/forwarding proc entry
  • LAN_start() in ccsp-gwprovapp-ethwan will set
  • sysevents viz. "lan-start", "bridge_mode" and "dhcp_server-resync".
  • Multiple sysevents were set in ccsp-gwprovappethwan: lan-status, wan-status, ethwan-initialized,eth_wan_enabled, wan_service-status, eth_wan_mac,current_ipv4_link_state, current_wan_state,wan_start_time, bridge_mode
  • LAN_start() in ccsp-gwprovapp-ethwan will set
  • sysevents viz. "lan-start", "bridge_mode" and "dhcp_server-resync".
  • Multiple sysevents were set in ccsp-gwprovappethwan: lan-status, wan-status, ethwan-initialized,eth_wan_enabled, wan_service-status, eth_wan_mac,current_ipv4_link_state, current_wan_state,wan_start_time, bridge_mode.
  • In service_wan, execute_dir /etc/utopia/post.d/ restart is being done once the address is set to the WAN interface.
https://code.rdkcentral.com/r/c/rdk/components/generic/rdk-oe/meta-cmf-raspberrypi/+/58554/1/recipes-ccsp/util/utopia.bbappend
  4system_defaults (utopia recipe)meta-cmf-raspberrypiAdded WanManager default values to syscfg.dbThese default values are used by PAMhttps://code.rdkcentral.com/r/c/rdk/components/generic/rdk-oe/meta-cmf-raspberrypi/+/58567/1/recipes-ccsp/util/utopia/system_defaults
  5ccsp-p-and-m.bbappendmeta-cmf-raspberrypi

210629-12:11:47.500509 [mod=PAM, lvl=WARN] [tid=8164] Found an unresolved api: Client_GetEntryCount
210629-12:11:47.500664 [mod=PAM, lvl=WARN] [tid=8164] Found an unresolved api: SentOption_GetEntryCount
210629-12:11:47.500810 [mod=PAM, lvl=WARN] [tid=8164] Found an unresolved api: Client3_GetEntryCount
210629-12:11:47.500950 [mod=PAM, lvl=WARN] [tid=8164] Found an unresolved api: Server2_GetEntryCount
210629-12:11:47.501602 [mod=PAM, lvl=WARN] [tid=8164] resolving APIs in xml file failed!                             
210629-12:11:47.501708 [mod=PAM, lvl=WARN] [tid=8164] DslhDmagntLoadDataModelXML -- failed, error = -1!

PandM DM was not loading after the WanManager Integration

Device.DHCPv6.Client.{i} and Device.DHCPv4.Client.{i}. was
moved to the WanManager . But the DMs was not removed from PAM XML file.

https://code.rdkcentral.com/r/c/rdk/components/generic/rdk-oe/meta-cmf-raspberrypi/+/58681/2/recipes-ccsp/ccsp/ccsp-p-and-m.bbappend
 6RdkWanManager

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: | ../../../git/source/WanManager/wanmgr_platform_events.h:48: note: macro LOG_CONSOLE defined here | 48 | #define LOG_CONSOLE() | | | ../../../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 definedhttps://code.rdkcentral.com/r/c/rdkb/components/opensource/ccsp/RdkWanManager/+/58500
 7ccsp-common-library.bbappendmeta-cmf-raspberrypiccsp-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

https://code.rdkcentral.com/r/c/rdk/components/generic/rdk-oe/meta-cmf-raspberrypi/+/58899


https://code.rdkcentral.com/r/c/rdk/components/generic/rdk-oe/meta-cmf-raspberrypi/+/58899/5/recipes-ccsp/ccsp/ccsp-common-library/utopia.service

halhal

Device.X_RDK_WanManager.CPEInterface.1.Wan.LinkStatus is getting Incorrect value .

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/rdkb/devices/raspberrypi/hal/+/58846/1/source/json-ethsw/hal-json-ethsw.c

https://code.rdkcentral.com/r/c/rdk/components/generic/rdk-oe/meta-cmf-broadband/+/58865/2/recipes-ccsp/hal/hal-json-ethsw.bb

9halhal../../../../../../../../../../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-EthWanhttps://code.rdkcentral.com/r/c/rdkb/devices/raspberrypi/hal/+/58785/1/source/hal-ethsw/ccsp_hal_ethsw.c
10rdk-loggerrdk_loggerWANMANAGERLog.txt is not created in /rdklogs/logs folderrdkb_debug.ini and rdkb_log4crc files needs to be updated https://code.rdkcentral.com/r/c/rdk/components/generic/rdk_logger/+/58885
11json-rpcJson-rpc../git/source/json-ethsw/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 compilationhttps://code.rdkcentral.com/r/c/rdkb/components/generic/json-rpc/+/58891
12CcspEthAgentCcspEthAgentDevice.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
13CcspPandMCcspPandM../../../../../../../../../../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 pamhttps://code.rdkcentral.com/r/c/rdkb/components/opensource/ccsp/CcspPandM/+/58951

...