WIP

Scope

Target is to define a mechanism to select one of the remote management option while making rdk-b build.current we enable all remote management agents

Existing mechanism

  • TBD

Proposed mechanism

  • Default

    • All remote management components need to be under a distro by default
    • All remote management distro's will be disabled by default
    • User should have an option to select one of the agent at one time.
    • sktop25q4em/meta-cmf-bananapi$ git diff setup-environment-refboard-rdkb 
      diff --git a/setup-environment-refboard-rdkb b/setup-environment-refboard-rdkb
      index afb958a..1ff4110 100644
      --- a/setup-environment-refboard-rdkb
      +++ b/setup-environment-refboard-rdkb
      @@ -28,6 +28,28 @@ if [ -e "${_TOPDIR}/meta-cmf-filogic/setup-environment-release" ]; then
              source meta-cmf-filogic/setup-environment-release
       fi
       
      +# Prompt for cellular hybrid support
      +echo ""
      +echo "Do you want to enable Cellular Hybrid Hal support (rndis/modem)?"
      +echo "1) Yes - Enable cellular_hybrid_support"
      +echo "2) No  - Keep it disabled (default)"
      +read -p "Please enter your choice [1-2]: " cellular_choice
      +
      +case $cellular_choice in
      +    1)
      +        echo "Cellular hybrid support will be enabled"
      +        export ENABLE_CELLULAR_HYBRID=yes
      +        ;;
      +    2|"")
      +        echo "Cellular hybrid support will be disabled (default)"
      +        export ENABLE_CELLULAR_HYBRID=no
      +        ;;
      +    *)
      +        echo "Invalid choice. Cellular hybrid support will be disabled (default)"
      +        export ENABLE_CELLULAR_HYBRID=no
      +        ;;
      +esac
      +
       if [[ -z $(grep 'meta-rdk-broadband-apps' conf/bblayers.conf) ]] && [[ -d  ../meta-rdk-broadband-apps ]]
       then
           cat >> conf/bblayers.conf <<EOF
      @@ -96,6 +118,12 @@ if [ "X$FEATURE_TYPE" == "XEasyMesh" ] && [ "X$WITHOUT_ALSAP" == "Xyes" ]; then
           sed -i 's/$al_mac/$br_mac/g' ${_TOPDIR}/meta-cmf-broadband/recipes-ccsp/unified-wifi-mesh/files/setup_mysql_db_post.sh
       fi
       
      +# Enable cellular hybrid support if selected
      +if [ "X$ENABLE_CELLULAR_HYBRID" == "Xyes" ]; then
      +    sed -i '/cellular_hybrid_support/s/^#//' ${_TOPDIR}/meta-cmf-bananapi/conf/distro/include/rdk-bpi.inc
      +    echo "Cellular hybrid support feature enabled in rdk-bpi.inc"
      +fi
      +
           sed -i 's|SYSTEMD_SERVICE:${PN}:remove_broadband = "dropbear.service"|SYSTEMD_SERVICE:${PN}:remove_broadband = "${@bb.utils.contains('\''DISTRO_FEATURES'\'', '\''em_extender'\'', '\'' '\'','\''dropbear.service'\'', d)}"|' \
       ${_TOPDIR}/meta-cmf-filogic/recipes-rdkb/sysint-broadband/sysint-broadband.bbappend
       
      cpokur625@dvm-yocto4-docker-cpokur625:~/rdkbdesktop25q4em/meta-cmf-bananapi$ 
      cpokur625@dvm-yocto4-docker-cpokur625:~/rdkbdesktop25q4em/meta-cmf-bananapi$ 
      cpokur625@dvm-yocto4-docker-cpokur625:~/rdkbdesktop25q4em/meta-cmf-bananapi$ cd ..
      cpokur625@dvm-yocto4-docker-cpokur625:~/rdkbdesktop25q4em$ 
      cpokur625@dvm-yocto4-docker-cpokur625:~/rdkbdesktop25q4em$ vi meta-cmf-bananapi/conf/distro/include/rdk-bpi.inc 
      cpokur625@dvm-yocto4-docker-cpokur625:~/rdkbdesktop25q4em$ cd meta-cmf-bananapi/conf/distro/
      cpokur625@dvm-yocto4-docker-cpokur625:~/rdkbdesktop25q4em/meta-cmf-bananapi/conf/distro$ cd include/
      cpokur625@dvm-yocto4-docker-cpokur625:~/rdkbdesktop25q4em/meta-cmf-bananapi/conf/distro/include$ git diff rdk-bpi
      fatal: ambiguous argument 'rdk-bpi': unknown revision or path not in the working tree.
      Use '--' to separate paths from revisions, like this:
      'git <command> [<revision>...] -- [<file>...]'
      cpokur625@dvm-yocto4-docker-cpokur625:~/rdkbdesktop25q4em/meta-cmf-bananapi/conf/distro/include$ git diff rdk-bpi.inc 
      diff --git a/conf/distro/include/rdk-bpi.inc b/conf/distro/include/rdk-bpi.inc
      index 9708f56..b7af464 100644
      --- a/conf/distro/include/rdk-bpi.inc
      +++ b/conf/distro/include/rdk-bpi.inc
      @@ -46,9 +46,9 @@ DISTRO_FEATURE_append = " telco_voice_feature_enable_persist"
       DISTRO_FEATURES_remove = " lan0_as_wan"
       
       #Need to enable below distro once required changes are merged 
      -#DISTRO_FEATURES_append = " EasyMesh"
      -#DISTRO_FEATURES_append = " sta_manager"
      -#DISTRO_FEATURES_append = " with_alsap"
      +DISTRO_FEATURES_append = " EasyMesh"
      +DISTRO_FEATURES_append = " sta_manager"
      +DISTRO_FEATURES_append = " with_alsap"
       PREFERRED_VERSION_go = "1.24.%"
       
       #Enable wps support
      @@ -62,7 +62,9 @@ DISTRO_FEATURES_append = " kernel6-6"
       
       DISTRO_FEATURES_append = " CONFIG_IEEE80211BE"
       
      -#DISTRO_FEATURES_append = " generic_mlo"
      +DISTRO_FEATURES_append = " generic_mlo"
       
       #Enable the below DISTRO to enable Hybrid Hal(rndis/modem) for cellular devices
       #DISTRO_FEATURES_append_broadband = " cellular_hybrid_support"
      +
      +DISTRO_FEATURES_append = " rrd"
      cpokur625@dvm-yocto4-docker-cpokur625:~/rdkbdesktop25q4em/meta-cmf-bananapi/conf/distro/include$ cd ..
      cpokur625@dvm-yocto4-docker-cpokur625:~/rdkbdesktop25q4em/meta-cmf-bananapi/conf/distro$ cd ..
      cpokur625@dvm-yocto4-docker-cpokur625:~/rdkbdesktop25q4em/meta-cmf-bananapi/conf$ cd ..
      cpokur625@dvm-yocto4-docker-cpokur625:~/rdkbdesktop25q4em/meta-cmf-bananapi$ cd ..
      cpokur625@dvm-yocto4-docker-cpokur625:~/rdkbdesktop25q4em$ source meta-cmf-bananapi/setup-environment-refboard-rdkb 
       1) meta-cmf-bananapi/conf/machine/bananapi4-rdk-broadband-ap-extender.conf	24) meta-cmf-filogic/conf/machine/filogic880-logan-be7200-2024q1-dunfell.conf
       2) meta-cmf-bananapi/conf/machine/bananapi4-rdk-broadband.conf			25) meta-cmf-filogic/conf/machine/filogic880-logan-be7200-7988d.conf
       3) meta-cmf-filogic/conf/machine/filogic655-logan-be3600-mt7987-mt7990.conf	26) meta-cmf-filogic/conf/machine/filogic880-logan-be7200-ccn34.conf
       4) meta-cmf-filogic/conf/machine/filogic830-32bit.conf				27) meta-cmf-filogic/conf/machine/filogic880-logan-be7200.conf
       5) meta-cmf-filogic/conf/machine/filogic830.conf				28) meta-cmf-filogic/conf/machine/filogic880-logan-ccn34.conf
       6) meta-cmf-filogic/conf/machine/filogic830-onewifi.conf			29) meta-cmf-filogic/conf/machine/filogic880-logan.conf
       7) meta-cmf-filogic/conf/machine/filogic830-swpath.conf			30) meta-cmf-filogic/conf/machine/filogic880-swpath.conf
       8) meta-cmf-filogic/conf/machine/filogic850-kernel6-6.conf			31) meta-cmf-filogic/conf/machine/mt7987_mac80211.conf
       9) meta-cmf-filogic/conf/machine/filogic860.conf				32) meta-cmf-filogic/conf/machine/mt7987_mac80211_iap.conf
      10) meta-cmf-filogic/conf/machine/filogic860-kernel6-6.conf			33) meta-cmf-filogic/conf/machine/mt7987-mt7990-be19000-2024q1-dunfell.conf
      11) meta-cmf-filogic/conf/machine/filogic860-logan-sdb-be3600-7988d-ccn34.conf	34) meta-cmf-filogic/conf/machine/mt7987-mt7992-be7200-2024q1-dunfell.conf
      12) meta-cmf-filogic/conf/machine/filogic860-logan-sdb-be3600-7988d.conf	35) meta-filogic/conf/machine/filogic-32bit.conf
      13) meta-cmf-filogic/conf/machine/filogic880-bpi-r4.conf			36) meta-filogic/conf/machine/filogic6-6.conf
      14) meta-cmf-filogic/conf/machine/filogic880.conf				37) meta-filogic/conf/machine/filogic.conf
      15) meta-cmf-filogic/conf/machine/filogic880-kernel6-6-bpi-r4.conf		38) meta-jz-mips/conf/machine/creator-ci20.conf
      16) meta-cmf-filogic/conf/machine/filogic880-kernel6-6.conf			39) openembedded-core/meta/conf/machine/qemuarm64.conf
      17) meta-cmf-filogic/conf/machine/filogic880-logan_2022q3-ccn34.conf		40) openembedded-core/meta/conf/machine/qemuarm.conf
      18) meta-cmf-filogic/conf/machine/filogic880-logan_2022q3.conf			41) openembedded-core/meta/conf/machine/qemuarmv5.conf
      19) meta-cmf-filogic/conf/machine/filogic880-logan_2022q3-eagle-mp4.conf	42) openembedded-core/meta/conf/machine/qemuriscv32.conf
      20) meta-cmf-filogic/conf/machine/filogic880-logan-be19000-2024q1-dunfell.conf	43) openembedded-core/meta/conf/machine/qemuriscv64.conf
      21) meta-cmf-filogic/conf/machine/filogic880-logan-be7200-1pcie.conf		44) openembedded-core/meta/conf/machine/qemux86-64.conf
      22) meta-cmf-filogic/conf/machine/filogic880-logan-be7200-2023q2-1pcie.conf	45) openembedded-core/meta/conf/machine/qemux86.conf
      23) meta-cmf-filogic/conf/machine/filogic880-logan-be7200-2023q2.conf		46) openembedded-core/meta-selftest/conf/machine/qemux86copy.conf
      Please enter your choice of machine [1..46]: 2
      
      Common targets are:
          core-image-minimal
          rdk-oss-image
          rdk-generic-hybrid-image
          rdk-generic-mediaclient-image
          rdk-generic-broadband-image
          rdk-generic-camera-image
          rdk-generic-broadband-tdk-image
          rdk-generic-broadband-dev-image
          rdk-generic-hybrid-dev-image
          rdk-generic-mediaclient-dev-image
      
      You can also run generated qemu images with a command like 'runqemu qemuarm'
      
      Config files already exist in folder build-bananapi4-rdk-broadband/conf/, they were not modified.
      Manifest Name = rdkb-bpi-extsrc.xml
      
      Do you want to enable Cellular Hybrid Hal support (rndis/modem)?
      1) Yes - Enable cellular_hybrid_support
      2) No  - Keep it disabled (default)
      Please enter your choice [1-2]: 1
      Cellular hybrid support will be enabled
      Cellular hybrid support feature enabled in rdk-bpi.inc
      Both bl2 and fip binaries are present in local workspace for 6.6 kernel.
      cpokur625@dvm-yocto4-docker-cpokur625:~/rdkbdesktop25q4em/build-bananapi4-rdk-broadband$ cd ../meta-cmf-bananapi/conf/distro/include/
      cpokur625@dvm-yocto4-docker-cpokur625:~/rdkbdesktop25q4em/meta-cmf-bananapi/conf/distro/include$ git diff rdk-bpi.inc 
      diff --git a/conf/distro/include/rdk-bpi.inc b/conf/distro/include/rdk-bpi.inc
      index 9708f56..f0b0d9d 100644
      --- a/conf/distro/include/rdk-bpi.inc
      +++ b/conf/distro/include/rdk-bpi.inc
      @@ -46,9 +46,9 @@ DISTRO_FEATURE_append = " telco_voice_feature_enable_persist"
       DISTRO_FEATURES_remove = " lan0_as_wan"
       
       #Need to enable below distro once required changes are merged 
      -#DISTRO_FEATURES_append = " EasyMesh"
      -#DISTRO_FEATURES_append = " sta_manager"
      -#DISTRO_FEATURES_append = " with_alsap"
      +DISTRO_FEATURES_append = " EasyMesh"
      +DISTRO_FEATURES_append = " sta_manager"
      +DISTRO_FEATURES_append = " with_alsap"
       PREFERRED_VERSION_go = "1.24.%"
       
       #Enable wps support
      @@ -62,7 +62,9 @@ DISTRO_FEATURES_append = " kernel6-6"
       
       DISTRO_FEATURES_append = " CONFIG_IEEE80211BE"
       
      -#DISTRO_FEATURES_append = " generic_mlo"
      +DISTRO_FEATURES_append = " generic_mlo"
       
       #Enable the below DISTRO to enable Hybrid Hal(rndis/modem) for cellular devices
      -#DISTRO_FEATURES_append_broadband = " cellular_hybrid_support"
      +DISTRO_FEATURES_append_broadband = " cellular_hybrid_support"
      +
      +DISTRO_FEATURES_append = " rrd"
      cpokur625@dvm-yocto4-docker-cpokur625:~/rdkbdesktop25q4em/meta-cmf-bananapi/conf/distro/include$ 
      cpokur625@dvm-yocto4-docker-cpokur625:~/rdkbdesktop25q4em/meta-cmf-bananapi/conf/distro/include$ 
      cpokur625@dvm-yocto4-docker-cpokur625:~/rdkbdesktop25q4em/meta-cmf-bananapi/conf/distro/include$ 
      cpokur625@dvm-yocto4-docker-cpokur625:~/rdkbdesktop25q4em/meta-cmf-bananapi/conf/distro/include$ 
      cpokur625@dvm-yocto4-docker-cpokur625:~/rdkbdesktop25q4em/meta-cmf-bananapi/conf/distro/include$ cd ..
      cpokur625@dvm-yocto4-docker-cpokur625:~/rdkbdesktop25q4em/meta-cmf-bananapi/conf/distro$ cd ..
      cpokur625@dvm-yocto4-docker-cpokur625:~/rdkbdesktop25q4em/meta-cmf-bananapi/conf$ cd ..
      cpokur625@dvm-yocto4-docker-cpokur625:~/rdkbdesktop25q4em/meta-cmf-bananapi$ cd ..
      cpokur625@dvm-yocto4-docker-cpokur625:~/rdkbdesktop25q4em$ 

Block diagram

  • configrem

Testing

  • TBD

References

  • TBD






  • No labels