You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 7 Next »

Scope

Goal of this document helps RDK-B community to Port Unified-easy-mesh on to their Gateway/Extender platforms

Test EM on Raspbian OS

Use cases

  • ControllerAgent
    Banana Pi R4Banana Pi R4
    Banana Pi R4RPI4
    RPI4Banana Pi R4

Generic Porting stages

  • Yocto support
  • New cli migration
  • Golang support
  • Segmentation faults fixing

Current state

  • Done

    • Brought up yocto support
    • Supported build configuration
    • Compiled EM code with legacy cli
    • Observerving segmentation faults due to yocto compiler being too strict about memory and stack
      • Fix #1 - https://github.com/rdkcentral/unified-wifi-mesh/commit/3fd8e4bac0b86c4a92f804791e318265fc78a6d5
      • Other crashes (Will retest the same in new cli)
        • <<OneWifiMeshCli>>: reset erouter0 bananapi encode_config_reset:354: {


        • void em_cmd_t::init(dm_easy_mesh_t *dm)
          {
              m_em_candidates = queue_create();
              m_data_model.init();
              m_data_model = *dm; //--------- segmentation fault only in RDK-B,Not in raspbian - pls refer - platform agnostic c++ code section
          }

        •  
        • (gdb) bt #0  0x0000000000417fb8 in em_cmd_t::init (this=this@entry=0x7f8b4b7010, dm=dm@entry=0x7f8b7fe690)     at ../../../git/src/ctrl/../../src/cmd/em_cmd.cpp:127 #1  0x0000000000418764 in em_cmd_t::em_cmd_t (this=0x7f8b4b7010, type=em_cmd_type_reset,     param=<error reading variable: Cannot access memory at address 0x7ffc9a6470>, dm=...)     at ../../../git/src/ctrl/../../src/cmd/em_cmd.cpp:703 Backtrace stopped: Cannot access memory at address 0x7ffc9a63f8

  • Ongoing

    • Golang support in RDK-B added
    • ongoing with latest cli in progress
      • Creating yocto recipe to compile cli go code from yocto
      • Will retest the crashes and update 

Next phase

  • Optimizing mariaDB - Target to keep size < 10 MB

Gateway specific steps

  • EasyMesh controller integration - On Going
  • Test with BPI R4 controller & RPI4 Agent - TBD
  • Test with with BPI R4 controller & BPI R4 agent - TBD

Extender specific steps

  • OSS image with SoC specific changes done
  • Integration of OneWifi on going
  • EasyMesh Agent - To start after Onewifi integration
  • Testing with RPI4 controller and BPI R4 Extender

Platform agnostic c++ coding

References






  • No labels