Skip to end of metadata
Go to start of metadata

This page contains step by step tutorials to get you started with installing and running the Bronze Release features.


SMO Installation

The goal of this tutorial is to install and run the Service Management Orchestrator

Near Realtime RIC Installation 

The goal of this tutorial is to install and run the Near Realtime RIC 

Hello World xApp Use Case Flows

This is a step by step tutorial to on-board, deploy and run a Hello World xApp in a Near Realtime RAN Intelligent Controller (RIC) instance.

How to onboard, deploy and run a Hello World xApp on RIC Video (18 minutes)

Running A1 and O1 Use Case Flows

The goal of this tutorial is to run the A1 and O1 interfaces 

Figure 1: Demo deployment architecture

Bronze Demonstrations

Deployment

Minimum deployment for running Bronze use case demos.

SMO Cluster:

  • ONAP "Lite" (Minimalistic for running SDNC/SDNR for RSAC Bronze O1)
    • Minimum replicas
    • VES collector is deployed standalone in ricaux namespace (w/o rest of DCAE, using a helm chart derived from the ONAP VES Cloudify Blueprint)
  • Non RT RIC

Near RT RIC Cluster:

  • Near RT RIC Platform
  • Near RT RIC Applications

Videos

Figure 2: O-RAN architecture overview

In the O-RAN architecture, the radio side includes Near-RT RIC, O-CU-CP, O-CU-UP, O-DU, and O-RU. The management side includes Service Management and Orchestration Framework that contains a Non-RT-RIC function.

O-RAN Alliance Components Definition

For the purposes of the present document, the terms and definitions given in 3GPP TR 21.905 [1] and the following apply. A term defined in the present document takes precedence over the definition of the same term, if any, in 3GPP TR 21.905 [1].

near-RT RIC: O-RAN near-real-time RAN Intelligent Controller: a logical function that enables near-real-time control and optimization of O-RAN elements and resources via fine-grained data collection and actions over E2 interface.

non-RT RIC: O-RAN non-real-time RAN Intelligent Controller: a logical function that enables non-real-time control and optimization of RAN elements and resources, AI/ML workflow including model training and updates, and policy-based guidance of applications/features in near-RT RIC.

NMS: A Network Management System

O-CU: O-RAN Central Unit: a logical node hosting RRC, SDAP and PDCP protocols

O-CU-CP: O-RAN Central Unit – Control Plane: a logical node hosting the RRC and the control plane part of the PDCP protocol

O-CU-UP: O-RAN Central Unit – User Plane: a logical node hosting the user plane part of the PDCP protocol and the SDAP protocol

O-DU: O-RAN Distributed Unit: a logical node hosting RLC/MAC/High-PHY layers based on a lower layer functional split.

O-RU: O-RAN Radio Unit: a logical node hosting Low-PHY layer and RF processing based on a lower layer functional split. This is similar to 3GPP’s “TRP” or “RRH” but more specific in including the Low-PHY layer (FFT/iFFT, PRACH extraction).

O1: Interface between management entities in Service Management and Orchestration Framework and O-RAN managed elements, for operation and management, by which FCAPS management, Software management, File management shall be achieved.

O1*: Interface between Service Management and Orchestration Framework and Infrastructure Management Framework supporting O-RAN virtual network functions.

xAPP: Independent software plug-in to the Near-RT RIC platform to provide functional extensibility to the RAN by third parties.

  • No labels

60 Comments

  1. Hello, Is there O-DU LOW guidance?

    1. Because O-DU LOW code needs a special building environment which did not get completed in Bronze time frame, there is no additional info, other than the scripts and dockerfile in the o-du/phy repo, available at this point.  

  2. Anonymous

    Hi all,

    Could someone please provide the detail instructions on how to build and execute O-DU High and make it interact with RIC?

  3. There are two places you can find such info:

    1.  o-du/l2 repo, docs directory, README file;

    2. it/dep repo, demos/bronze directory, odu-high.sh demo script.


    Lusheng

  4. Anonymous

    Hi All,


    I am trying to build the sample application for ODU L1 Low. In the build steps I could see this step "export XRAN_DIR=`pwd`/flexran_xran", but I couldnt find any such folder from the git repo. Could you please let me know if I am using the correct repo (https://github.com/o-ran-sc/o-du-phy.git)


    I am getting the following error when building fhi_lib. Could you please help me with this.

    [root@localhost fhi_lib]# sh build.sh
    Number of commandline arguments: 0
    MLOG folder is set. Enable MLOG (MLOG_DIR=/root/flexran_l1_sw/libs/mlog)
    Building xRAN Library
    LIBXRANSO = 0
    MLOG = 1
    ============================================================================================
    Building ./build/libxran.so
    RTE_TARGET = x86_64-native-linuxapp-icc
    ============================================================================================
    [BUILD] lib : libxran
    [DEP] libxran.dep
    In file included from /root/o-du-phy/fhi_lib//lib/ethernet/ethdi.c(67):
    /root/o-du-phy/fhi_lib//lib/api/xran_mlog_lnx.h(28): catastrophic error: cannot open source file "mlog_lnx.h"
    #include <mlog_lnx.h>
    ^

    make: *** [__dep__/root/o-du-phy/fhi_lib//lib/ethernet/ethdi.c] Error 4
    "make $COMMAND_LINE MLOG=${MLOG} LIBXRANSO=${LIBXRANSO}" command exited with code 2.


    Thanks and Regards,

    Abhilash


    1. Hi

      Were you able to solve this issue? 

      We are also facing similar issue.

      We are trying to build ODU-L project and we could build wls_lib and FAPI library.

      To build FHI_Lib, we need to set MLOG_DIR, we are not able to find any 'mlog' folder.

      We used https://gerrit.o-ran-sc.org/r/o-du/phy.git and https://github.com/intel/FlexRAN.git to clone the code.

      We tried setting the MLOG_DIR as /home/user/new_odu/phy/fhi_lib/app/src:/home/user/new_odu/phy/fhi_lib/lib/api, but we see below error.

      [user@IA-platform fhi_lib]$ ./build.sh
      Number of commandline arguments: 0
      MLOG folder is set. Enable MLOG (MLOG_DIR=/home/user/new_odu/phy/fhi_lib/app/src:/home/user/new_odu/phy/fhi_lib/lib/api)
      Building xRAN Library
      LIBXRANSO = 0
      MLOG = 1
      ============================================================================================
      Building ./build/libxran.so
      RTE_TARGET = x86_64-native-linuxapp-icc
      ============================================================================================
      [BUILD] lib : libxran
      [CC] /home/user/odu-low/phy/fhi_lib/lib/ethernet/ethdi.o
      In file included from /home/user/odu-low/phy/fhi_lib/lib/ethernet/ethdi.c(67):
      /home/user/odu-low/phy/fhi_lib/lib/api/xran_mlog_lnx.h(28): catastrophic error: cannot open source file "mlog_lnx.h"
      #include <mlog_lnx.h>
      ^

      compilation aborted for /home/user/odu-low/phy/fhi_lib/lib/ethernet/ethdi.c (code 4)
      make: *** [build/obj//home/user/odu-low/phy/fhi_lib/lib/ethernet/ethdi.o] Error 4
      "make $COMMAND_LINE MLOG=${MLOG} LIBXRANSO=${LIBXRANSO}" command exited with code 2.
      [user@IA-platform fhi_lib]$


      we are following this link: https://docs.o-ran-sc.org/projects/o-ran-sc-o-du-phy/en/latest/Setup-Configuration_fh.html#a-4-install-and-configure-sample-application


  5. Anonymous

    Hi all,

    Is there anyway to simulate packet flow in O-DU HIGH? There seems to be only some initialization requests and establishment of protocols when the application is run.

    Also is it possible to integrate the CU from OAI with O-DU from ORAN? Since the CU already exists in OAI with the F1 interface.

    Thanks and Regards,

    Wen Kai

    1. Interested in this question as well.

  6. Anonymous

    Dear all, currently it seems not possible to compile du-low project without the older intel system_studio_2020_u2 compiler. The problem is that it we cannot get community licenses anymore as Intel moved to oneapi package which has a compiler not supported by O-Ran. In fact, when I tried to compile dpkg with the latest intel compiler it gave me many errors. Is it possible to make such community license file available? Otherwise it's not possible to compile dpkg again due to compiler error (segmentation fault). 

    1. Intel compiler just updated, we will follow to update O-DU Low SW in the down release time zone.

      1. Anonymous

        Hi, Zhimin Yuan will intel flexran github be updated for cherry release? Currently DU-LOW documentation is not updated.

  7. Hi, I'm also facing the same issue.

    1. Intel compiler just updated, we will follow to update O-DU Low SW in the down release time zone.

  8. Anonymous

    Hi, I am using O_DU low project can we use different NIC, we have Intel Corporation Ethernet 10G 2P X520 Adapter. I am not able to create VF's on this NIC though.

    1. Anonymous

      Check if your PC has SR-IOV and ACS enabled on BIOS. Initially you don't need to enable sr-iov. You can just bind the ethernet adaptor to dpdk vfio-pci driver and you should be able to use the PF itself for a simple deployment. (Intel Core i9-X series also offers AVX512 support in case you don't want to spend 10000USD+ on Xeon servers, but it, unfortunately, has no SR-IOV support that I'm aware).

  9. Hi,

    I have  installed SMO and near-RT RIC in 2 separate  VMS and deployed HelloWorld xAPP. Also, have run A1 and O1 use cases. Next I want to try is run some tests with CU, DU and RU.

    While I see mention of  O-DU scripts being, I dont see steps defined for trying out the DU functionality.                                   

    - Is DU  required to be run in a separate VM?
    - Are there any documented steps for running the DU functionality?
    -  There is a video on setting up O-DU high. Is this video still applicable?

    Would appreciate inputs in above areas to try out all functions of   O-RAN.

    Thank you.

    Pavan                                                                                       

    1. Anonymous

      Hi Pavan, there is DU-Low is DU-High. Currently, you don't require a VM, although it's recommended centos for the deployment.

      Unfortunately, DU-Low requires contacting intel first to acquire documentation on the l1app. I'm not sure if on public release it's even possible to deploy with a real O-RU.

      DU-HIGH: https://docs.o-ran-sc.org/en/latest/projects.html#o-ran-distributed-unit-low-layers-odulow

      DU-LOW: https://docs.o-ran-sc.org/projects/o-ran-sc-o-du-phy/en/latest/Assumptions_Dependencies.html

      1. Anonymous

        Hi,

        I can only see a bronze tag for the Intel FlexRAN binaries - is there going to be a cherry one or are the bronze ones supported in the cherry o-ran release?

        Thanks

        1. Anonymous

          Hi, everything can be downloaded in the tarball on this page: Cherry Release (Dec 2020)

          Look on the right corner "Get Cherry". The o-ran-sc part 1, contains the phy folder which corresponds to du-low and l2 folder to du-high.

          The DU-High-Low integration steps is documented here: O-DU High and Low Integration

          I'll briefly describe the unofficial steps to compile the latest release fully without missing steps:

          1. The getting started tutorial for du-low (link) is outdated, as such follow the instructions on the docker file itself (phy/Dockerfile), not on the website.
          2. You will need an outdated intel compiler (2020_u2) to compile DPDK, with a community license.lic (share your email so I can send it to you).
          3. You will need an outdated octave version to compile some of their test files, you can use a docker for that (simexp/octave:3.8.1).
          4. If you want to get the latest DU-LOW release (newer than cherry) you can git clone "https://gerrit.o-ran-sc.org/r/o-du/phy
          5. I've made a script that automates the installation on Ubuntu 18.04/20.04. It will download dpdk, googletest and intel flexran binary, install intel compiler from a public link. Study it to adjust to your environment: https://pastebin.com/vjeKTAhf
            (Cherry release must be extracted to oran folder, so you have oran/phy there.

          Disclaimer: Don't follow any DU-LOW tutorial if you do not have an Intel or ORAN contact which can provide you with intel flexran documentation. Otherwise you will not be able to configure l1app to deploy du-low with real O-RU devices. The O-RAN public release so far does support COTS deployment.
          I highly suggest getting the Intel Distribution of OpenNESS which has automated containers to deploy O-RAN with updated l1app and their documentation and dpdk source code to communicate with real O-RU devices.


          1. I have compiled both Odu low and high on a Ubuntu18.04 VM. I am trying to run steps shown in the recording for odu high and low integration. Are these steps suppsed to work on Ubuntu VM, I am facing some issues.

            ./l1.sh: line 104: chkconfig: command not found
            ./l1.sh: line 105: echo: write error: Unknown error 524
            ./l1.sh: line 110: echo: write error: Input/output error

            1. Anonymous

              chkconfig is not present in ubuntu 18.04, only on centos. You can comment those lines on l1.sh to avoid such errors.

              1. Thank you for the information. I am now running l1.sh as root and not get the following errors:

                ./l1.sh: line 110: echo: write error: Input/output error
                ./l1.sh: line 110: echo: write error: Input/output error


                using configuration file phycfg_timer.xml
                >> Running... ./l1app table 0 1 --cfgfile=phycfg_timer.xml
                ./l1.sh: line 137: 1484 Illegal instruction (core dumped) ./l1app table 0 1 --cfgfile=phycfg_timer.xml
                Cleanup after [PID] 1473

                Not sure if something has gone during building du-low.


                1. Anonymous

                  Oh, are you not using a XEON gold cpu or Intel Core i9-X series?
                  Your cou needs to support AVX-512 instruction set (Skylake or Cascade lake CPUs). Otherwise you will get exactly this error.

                  1. I am using a VM on AWS to run DU. Is it possible to run it on VM or we need to run this on a physical machine with Xeon gold cpu or Intel Core i9-X processors?

                    1. You are not logged in. Any changes you make will be marked as anonymous. You may want to Log In if you already have an account.
                    1. Anonymous

                      You can run on VM, but your AWS instance must support AVX-512. Last time I used Google cloud trial period. There you can select the exact CPU model for your instance.

                      1. There is a C5 instance available on AWS that supports AVX-512 instructions.

          2. Hello,

            Please help me understand that by running o-du low and high is there an end-2-end use case that can be tried, i.e. run a configuration from smo->near-rt ric->du-high->du-low->cu-stub (if possible)

          3. Hi,

            I am getting the following error on starting du-low. I am running it on AWS instance which supports AVX-512 instructions. Please share if you know the fix for it.

            FlexRAN SDK bblib_srs_cestimate_5gnr version sdk-20.04-0-g47e69c30
            FlexRAN SDK bblib_zf_matrix_gen version sdk-20.04-0-g47e69c30
            FlexRAN SDK bblib_beamforming_dl_expand version sdk-20.04-0-g47e69c30

            =========================
            5GNR PHY Application
            =========================
            mlockall failed: Cannot allocate memory
            Cleanup after [PID] 8656


            Pavan

            1. Anonymous

              Hi, make sure you have hugepages enabled on your kernel. You can do so by adding a kernel parameters to GRUB. 

              Edit /etc/default/grub and append the following to the GRUB_CMDLINE_LINUX:

              default_hugepagesz=1G hugepagesz=1G hugepages=4

              This will consume 4GB of your RAM immediately. You can read more here: https://github.com/intel/FlexRAN#os-configuration

              1. I am presently using Ubuntu18.04 for running DU. The link you have shared mentions using CentOS7.5. Is it recommended to switch to CentOS7.5 or Ubuntu should also work?

                Pavan

          4. Hi,
            Is there docker image available for O-DU on any repository?
            Pavan

            1. Hi Pavan,

              I know some time has passed and I was wondering if you were successful with the execution of the O-DU High? I've tried executing on locally compiled code and also through the docker images provided at: User Guide — o-du-l2 master documentation (o-ran-sc.org)

              I was not successful with either method. I'm also on an Ubuntu 18.04 VM.

              1. Hi Travis,

                I could successfully build du-low and also could create its docker image. I did it on CentOS 7 VM. I could build Du-high, which is quite straight forward. I am pasting a response below that helped me to get du-low working. Try to follow these steps. If you want to build du-low and plan to use this script https://pastebin.com/vjeKTAhf, u will need to make minor changes to make it work on CentOS 7. 
                Let me know if this helps.
                Pavan

                ==================================================================

                Hi, everything can be downloaded in the tarball on this page: Cherry Release (Dec 2020)

                Look on the right corner "Get Cherry". The o-ran-sc part 1, contains the phy folder which corresponds to du-low and l2 folder to du-high.

                The DU-High-Low integration steps is documented here: O-DU High and Low Integration

                I'll briefly describe the unofficial steps to compile the latest release fully without missing steps:

                1. The getting started tutorial for du-low (link) is outdated, as such follow the instructions on the docker file itself (phy/Dockerfile), not on the website.
                2. You will need an outdated intel compiler (2020_u2) to compile DPDK, with a community license.lic (share your email so I can send it to you).
                3. You will need an outdated octave version to compile some of their test files, you can use a docker for that (simexp/octave:3.8.1).
                4. If you want to get the latest DU-LOW release (newer than cherry) you can git clone "https://gerrit.o-ran-sc.org/r/o-du/phy
                5. I've made a script that automates the installation on Ubuntu 18.04/20.04. It will download dpdk, googletest and intel flexran binary, install intel compiler from a public link. Study it to adjust to your environment: https://pastebin.com/vjeKTAhf
                  (Cherry release must be extracted to oran folder, so you have oran/phy there.

                Disclaimer: Don't follow any DU-LOW tutorial if you do not have an Intel or ORAN contact which can provide you with intel flexran documentation. Otherwise you will not be able to configure l1app to deploy du-low with real O-RU devices. The O-RAN public release so far does support COTS deployment.
                I highly suggest getting the Intel Distribution of OpenNESS which has automated containers to deploy O-RAN with updated l1app and their documentation and dpdk source code to communicate with real O-RU devices.

                1. So at the moment, I'm just trying to get the DU-High working. I was able to build the cu_stub, ric_stub, and odu-high just fine, but when trying to execute it in these steps: User Guide — o-du-l2 master documentation (o-ran-sc.org), I'm not having much luck. Have you tried executing the DU-High yet?

          5. Hi,
            I have used the script you have provided:  https://pastebin.com/vjeKTAhf .

            1. In this script I see that you build dpdk using gcc compiler. Shouldn't it be built with icc compiler? The env var RTE_TARGET is intially set for gcc and it gets used to build dpdk. 
            2. While building fhi_lib, wls_lib, fapi_5g, RTE_TARGET gets set for icc, but then there is no dpdk libraries built for icc target.

            Kindly let me know if we need to build dpdk first with icc and then build oran libraries. InI am wondering if I have missed something.

          6. Hi,

            first of all, thanks for sharing your experience to build O-DU Low project and successfully deploy O-DU Low project in Ubuntu. 

            I would like to add more comments based on yours.

            1. the tutorial of O-DU low project in the OSC document is matching with the releases. three parts of the documents 

            (1)https://github.com/intel/FlexRAN (for BIOS/OS/docker configuration)

            (2)https://docs.o-ran-sc.org/projects/o-ran-sc-o-du-phy/en/latest/index.html(open interface lib build)

            (3)O-DU High and Low Integration (O-DU low and O-DU high integration)

            1. all the Intel compiler and dpdk build steps are in the above second tutorial "build prerequisite" chapter.
            2. the ICC compiler was replaced by oneAPI recently, and oneAPI will not need license file anymore.  we are evaluating to upgrade O-DU Low project accordingly.
            3. regard to integrate with O-RU devices, it was planned in the "D" release. we will update the tutorial once we verify it.  

            We will be very glad if you could give us comments which help us improve O-DU low documents. and your name is showed up as anonymous, do you mind to let me know your contact? 


            Thanks,

            Zhimin 

            1. Hi Zhimin Yuansorry for the late reply.

              About comments to help to improve O-DU low documents, I'm not sure what to do in this regard since the current documentation is outdated and documenting flexran configuration file would breach Intel NDA, but I can maybe help push some documentation commit with an automated du-low installation script or the current docker deployment for du-low. Feel free to contact me via my email separately for this matter. I'd like to contribute. Regards.

      2. Hi,

        Thank you very much for responding. 

        • If we dont require a VM for DU, do you mean we can run it within nearRT-RIC?
        • Can I still deploy and run DU-high & low in a VM by following the instructions provided in the links you have shared?
        • how about the CU functionality, is there anything available to deploy and run CU-CP and CU-UP?

        You are shown as anonymous, would be great to know your name as well (smile) 

        Once again thank you.

        Pavan

        1. Anonymous

          • Theorically Yes, I haven't tried, but usually you could just connect them via loopback (but the near-RIC instance needs to see the PF or the VFs that DU-LOW requires). Alternativelly you can deploy them on separate docker containers and connect them via "docker network connect" command (or not if you use the default docker network).
          • The script I shared only compiles du-low but yes to your question. However, If you run on VM you will need to create a VFs (via sr-iov support) and assign them to the VM or alternatively perform pci-passthrough via vfio-pci driver so the VM can see the PF directly. Important here is that you can use docker to do so: just pass --privileged --network=host when starting the container (via docker run command) and the docker can use the PF directly and create VFs (given that your motherboard support sr-iov). 
          • Not sure as I haven't tested those O-RAN components, but I guess you will have to run their docker script to check what functionalities are present.
  10. Anonymous

    hi,
    I have been installed the bronze version SMO&RICPLT cluster,but now i want to update the bronze version to cherry version,Is there any relevant procedure guide,any one can help me?

    Thank you.

    1. That is exactly i am looking for.

  11. Hi

    I am new to ORAN SC. I want to install and run ORAN Cherry setup on my Ubuntu VM. We are facing some issues. Also it is not clear whether we need 1 machine only or we need 2 machines to setup the nodes like RIC-APP and RIC-AUX. Can someone please guide here or share some documentation link which details about these aspects.

    Thanks in advance.

  12. Hello, 

    I am interested in knowing if the O-CU-CP and O-CU-UP implementations/simulations are available in the O-RAN-SC project. Please let me know 

    Thanks in advance  

  13. mhz

    Hello,

    How O-RAN software will be used once it is fully installed?

    Is there any documentation on how to manipulate O-RAN functionalities?

  14. Anonymous

    Hello,Is it posssible  to share the 2020_u2 community license.lic?

  15. Anonymous

    Hello,

    I'm interested in CU functionality.

    Unfortunately it's very hard to find out method to build and execute the CU layer.

    Is there any document or instruction for it. pls share it.

    Thanks in advance.

  16. Anonymous

    Hi,

    We are trying to run sample application of DU and RU following the link https://docs.o-ran-sc.org/projects/o-ran-sc-o-du-phy/en/latest/Setup-Configuration_fh.html#a-1-setup-configuration.

    While we are launching the application we are getting Error: "Loading file ./usecase/mu0_10mhz/ant_0.bin to DL IFFT IN IQ Samples in binary format: can't open file ./usecase/mu0_10mhz/ant_0.bin!".

    We learnt from oran documentation on ODU-L that Octave software is required for generating IQ samples for that.

    Can someone guide us on how to generate those samples using Octave.

  17. Hi Team,


    We could launch Flexran sample-app on 2 different servers (one used as DU and another one as RU).

    We followed this link: https://docs.o-ran-sc.org/projects/o-ran-sc-o-du-phy/en/latest/Setup-Configuration_fh.html

    and added probing and dpdk binding for the VFs on both servers.

    But we don't see any Rx counter and the Rx IQ samples shows (0,0) only.


    VF[0] 0000:17:02.0
    VF[1] 0000:17:02.1
    IQ files size is 40 slots
    app_xran_get_num_rbs: RAN [5G NR] nNumerology[0] nBandwidth[10] nAbsFrePointA[2645460] numRBs[52]
    app_xran_get_num_rbs: RAN [5G NR] nNumerology[0] nBandwidth[10] nAbsFrePointA[2525460] numRBs[52]
    app_xran_get_num_rbs: RAN [5G NR] nNumerology[0] nBandwidth[10] nAbsFrePointA[2645460] numRBs[52]
    app_xran_get_num_rbs: RAN [5G NR] nNumerology[0] nBandwidth[10] nAbsFrePointA[2525460] numRBs[52]
    app_xran_get_num_rbs: RAN [5G NR] nNumerology[0] nBandwidth[10] nAbsFrePointA[2525460] numRBs[52]
    Loading file ./usecase/mu0_10mhz/ant_0.bin to DL IFFT IN IQ Samples in binary format: Reading IQ samples from file: File Size: 1397760 [Buffer Size: 1397760]
    from addr (0x7fe23007e010) size (1397760) bytes num (1397760)
    Loading file ./usecase/mu0_10mhz/ant_1.bin to DL IFFT IN IQ Samples in binary format: Reading IQ samples from file: File Size: 1397760 [Buffer Size: 1397760]
    from addr (0x7fe1ddd7a010) size (1397760) bytes num (1397760)
    Loading file ./usecase/mu0_10mhz/ant_2.bin to DL IFFT IN IQ Samples in binary format: Reading IQ samples from file: File Size: 1397760 [Buffer Size: 1397760]
    from addr (0x7fe1ddc24010) size (1397760) bytes num (1397760)
    Loading file ./usecase/mu0_10mhz/ant_3.bin to DL IFFT IN IQ Samples in binary format: Reading IQ samples from file: File Size: 1397760 [Buffer Size: 1397760]
    from addr (0x7fe1ddace010) size (1397760) bytes num (1397760)
    Storing DL IFFT IN IQ Samples in human readable format to file ./logs/o-du-play_ant0.txt: from addr (0x7fe23007e010) size (1397760) IQ num (349440)
    Storing DL IFFT IN IQ Samples in binary format to file ./logs/o-du-play_ant0.bin: from addr (0x7fe23007e010) size (698880) bytes num (698880)
    Storing DL IFFT IN IQ Samples in human readable format to file ./logs/o-du-play_ant1.txt: from addr (0x7fe1ddd7a010) size (1397760) IQ num (349440)
    Storing DL IFFT IN IQ Samples in binary format to file ./logs/o-du-play_ant1.bin: from addr (0x7fe1ddd7a010) size (698880) bytes num (698880)
    Storing DL IFFT IN IQ Samples in human readable format to file ./logs/o-du-play_ant2.txt: from addr (0x7fe1ddc24010) size (1397760) IQ num (349440)
    Storing DL IFFT IN IQ Samples in binary format to file ./logs/o-du-play_ant2.bin: from addr (0x7fe1ddc24010) size (698880) bytes num (698880)
    Storing DL IFFT IN IQ Samples in human readable format to file ./logs/o-du-play_ant3.txt: from addr (0x7fe1ddace010) size (1397760) IQ num (349440)
    Storing DL IFFT IN IQ Samples in binary format to file ./logs/o-du-play_ant3.bin: from addr (0x7fe1ddace010) size (698880) bytes num (698880)
    TX: Convert S16 I and S16 Q to network byte order for XRAN Ant: [0]
    TX: Convert S16 I and S16 Q to network byte order for XRAN Ant: [1]
    TX: Convert S16 I and S16 Q to network byte order for XRAN Ant: [2]
    TX: Convert S16 I and S16 Q to network byte order for XRAN Ant: [3]
    app_xran_get_num_rbs: RAN [5G NR] nNumerology[0] nBandwidth[10] nAbsFrePointA[2645460] numRBs[52]
    app_xran_get_num_rbs: RAN [5G NR] nNumerology[0] nBandwidth[10] nAbsFrePointA[2525460] numRBs[52]
    System clock (rdtsc) resolution 2095077612 [Hz]
    Ticks per us 2095
    xran_init: MTU 9600
    total cores 144 c_mask 0x21 core 5 [id] system_core 0 [id] pkt_proc_core 0x0 [mask] pkt_aux_core 0 [id] timing_core 5 [id]
    xran_ethdi_init_dpdk_io: Calling rte_eal_init:wls_0 -c 0x21 -n2 --iova-mode=pa --socket-mem=8192 --socket-limit=8192 --proc-type=auto --file-prefix wls_0 -w 0000:00:00.0
    EAL: Detected 128 lcore(s)
    EAL: Detected 4 NUMA nodes
    EAL: Auto-detected process type: PRIMARY
    EAL: Multi-process socket /var/run/dpdk/wls_0/mp_socket
    EAL: Selected IOVA mode 'PA'
    EAL: Probing VFIO support...
    EAL: VFIO support initialized
    EAL: PCI device 0000:17:02.0 on NUMA socket 0
    EAL: probe driver: 8086:154c net_i40e_vf
    EAL: using IOMMU type 1 (Type 1)


    initializing port 0 for TX, drv=net_i40e_vf
    Port 0 MAC: 00 11 22 33 44 66
    Port 0: nb_rxd 4096 nb_txd 4096


    Checking link status portid [0] EAL: PCI device 0000:17:02.1 on NUMA socket 0
    EAL: probe driver: 8086:154c net_i40e_vf


    initializing port 1 for TX, drv=net_i40e_vf
    Port 1 MAC: 00 11 22 33 44 66
    Port 1: nb_rxd 4096 nb_txd 4096


    Checking link status portid [1] vf 0 local SRC MAC: 00 11 22 33 44 66
    vf 0 remote DST MAC: 00 11 22 33 44 55
    vf 1 local SRC MAC: 00 11 22 33 44 66
    vf 1 remote DST MAC: 00 11 22 33 44 55
    FFT Order 10
    app_xran_cal_nrarfcn: nCenterFreq[2650140] nDeltaFglobal[5] nFoffs[0] nNoffs[0] nNRARFCN[530028]
    DL center freq 2650140 DL NR-ARFCN 530028
    app_xran_cal_nrarfcn: nCenterFreq[2530140] nDeltaFglobal[5] nFoffs[0] nNoffs[0] nNRARFCN[506028]
    UL center freq 2530140 UL NR-ARFCN 506028
    XRAN front haul xran_mm_init
    xran_sector_get_instances [0]: CC 0 handle 0x135f8c00
    Handle: 0x118cd918 Instance: 0x135f8c00
    init_xran [0]: CC 0 handle 0x135f8c00
    Sucess xran_mm_init
    nSectorNum 1
    nSectorIndex[0] = 0
    ru_0_cc_0_idx_0: [ handle 0x135f8c00 0 0 ] [nPoolIndex 0] nNumberOfBuffers 2240 nBufferSize 15696
    CC:[ handle 0x135f8c00 ru 0 cc_idx 0 ] [nPoolIndex 0] mb pool 0x2ea4f6b00
    ru_0_cc_0_idx_1: [ handle 0x135f8c00 0 0 ] [nPoolIndex 1] nNumberOfBuffers 35840 nBufferSize 24
    CC:[ handle 0x135f8c00 ru 0 cc_idx 0 ] [nPoolIndex 1] mb pool 0x2e80d17c0
    ru_0_cc_0_idx_2: [ handle 0x135f8c00 0 0 ] [nPoolIndex 2] nNumberOfBuffers 2240 nBufferSize 48416
    CC:[ handle 0x135f8c00 ru 0 cc_idx 0 ] [nPoolIndex 2] mb pool 0x2e6b1f180
    ru_0_cc_0_idx_3: [ handle 0x135f8c00 0 0 ] [nPoolIndex 3] nNumberOfBuffers 2240 nBufferSize 15696
    CC:[ handle 0x135f8c00 ru 0 cc_idx 0 ] [nPoolIndex 3] mb pool 0x2e00f1e40
    ru_0_cc_0_idx_4: [ handle 0x135f8c00 0 0 ] [nPoolIndex 4] nNumberOfBuffers 35840 nBufferSize 24
    CC:[ handle 0x135f8c00 ru 0 cc_idx 0 ] [nPoolIndex 4] mb pool 0x2ddcccb00
    ru_0_cc_0_idx_5: [ handle 0x135f8c00 0 0 ] [nPoolIndex 5] nNumberOfBuffers 2240 nBufferSize 48416
    CC:[ handle 0x135f8c00 ru 0 cc_idx 0 ] [nPoolIndex 5] mb pool 0x2dc71a4c0
    ru_0_cc_0_idx_6: [ handle 0x135f8c00 0 0 ] [nPoolIndex 6] nNumberOfBuffers 2240 nBufferSize 8192
    CC:[ handle 0x135f8c00 ru 0 cc_idx 0 ] [nPoolIndex 6] mb pool 0x2d5ced180
    ru_0_cc_0_idx_7: [ handle 0x135f8c00 0 0 ] [nPoolIndex 7] nNumberOfBuffers 2240 nBufferSize 15696
    CC:[ handle 0x135f8c00 ru 0 cc_idx 0 ] [nPoolIndex 7] mb pool 0x2d48a5b40
    init_xran_iq_content
    xran_open: 5G NR Category A
    xRAN open PRACH config: Numerology 0 ConfIdx 189, preambleFmrt 7 startsymb 0, numSymbol 2, occassionsInPrachSlot 7
    PRACH: x 1 y[0] 0, y[1] 0 prach slot: 1 .. 6 ..
    PRACH start symbol 0 lastsymbol 13
    xran_open: interval_us=1000
    XRAN_UP_VF: 0x0000
    XRAN_CP_VF: 0x0001
    ----------------------------------------
    MLog Info: virt=0x0000000000000000 size=0
    ----------------------------------------
    Start XRAN traffic
    Set debug stop 1, debug stop count 0
    xran_timing_source_thread [CPU 5] [PID: 136561]
    O-DU: thread_run start time: 12/09/21 10:19:42.000000004 UTC [1000]
    Start C-plane DL 200 us after TTI [trigger on sym 3]
    Start C-plane UL 440 us after TTI [trigger on sym 7]
    Start U-plane DL 400 us before OTA [offset in sym -5]
    Start U-plane UL 360 us OTA [offset in sym 6]
    C-plane to U-plane delay 200 us after TTI
    Start Sym timer 142857 ns
    interval_us 1000
    +---------------------------------------+
    | Press 1 to start 5G NR XRAN traffic |
    | Press 2 reserved for future use |
    | Press 3 to quit |
    +---------------------------------------+
    [o-du][rx 0 pps 0 kbps 0][tx 0 pps 0 kbps 0] [on_time 0 early 0 late 0 corrupt 0 pkt_dupl 0 Total 0] IO Util: 66.31 %
    [o-du][rx 0 pps 0 kbps 0][tx 0 pps 0 kbps 0] [on_time 0 early 0 late 0 corrupt 0 pkt_dupl 0 Total 0] IO Util: 66.27 %
    [o-du][rx 0 pps 0 kbps 0][tx 0 pps 0 kbps 0] [on_time 0 early 0 late 0 corrupt 0 pkt_dupl 0 Total 0] IO Util: 66.32 %
    [o-du][rx 0 pps 0 kbps 0][tx 0 pps 0 kbps 0] [on_time 0 early 0 late 0 corrupt 0 pkt_dupl 0 Total 0] IO Util: 66.30 %
    [o-du][rx 0 pps 0 kbps 0][tx 43956 pps 43956 kbps 0] [on_time 0 early 0 late 0 corrupt 0 pkt_dupl 0 Total 0] IO Util: 66.92 %
    [o-du][rx 0 pps 0 kbps 0][tx 108760 pps 64804 kbps 1089406] [on_time 0 early 0 late 0 corrupt 0 pkt_dupl 0 Total 0] IO Util: 67.08 %
    [o-du][rx 0 pps 0 kbps 0][tx 173564 pps 64804 kbps 1134374] [on_time 0 early 0 late 0 corrupt 0 pkt_dupl 0 Total 0] IO Util: 67.03 %
    [o-du][rx 0 pps 0 kbps 0][tx 238368 pps 64804 kbps 1134374] [on_time 0 early 0 late 0 corrupt 0 pkt_dupl 0 Total 0] IO Util: 67.03 %
    [o-du][rx 0 pps 0 kbps 0][tx 303172 pps 64804 kbps 1134374] [on_time 0 early 0 late 0 corrupt 0 pkt_dupl 0 Total 0] IO Util: 67.02 %
    [o-du][rx 0 pps 0 kbps 0][tx 367976 pps 64804 kbps 1134374] [on_time 0 early 0 late 0 corrupt 0 pkt_dupl 0 Total 0] IO Util: 67.03 %
    [o-du][rx 0 pps 0 kbps 0][tx 432784 pps 64808 kbps 1134374] [on_time 0 early 0 late 0 corrupt 0 pkt_dupl 0 Total 0] IO Util: 67.02 %
    [o-du][rx 0 pps 0 kbps 0][tx 497588 pps 64804 kbps 1134374] [on_time 0 early 0 late 0 corrupt 0 pkt_dupl 0 Total 0] IO Util: 67.02 %
    [o-du][rx 0 pps 0 kbps 0][tx 562392 pps 64804 kbps 1134374] [on_time 0 early 0 late 0 corrupt 0 pkt_dupl 0 Total 0] IO Util: 67.02 %
    [o-du][rx 0 pps 0 kbps 0][tx 627196 pps 64804 kbps 1134374] [on_time 0 early 0 late 0 corrupt 0 pkt_dupl 0 Total 0] IO Util: 67.01 %
    [o-du][rx 0 pps 0 kbps 0][tx 692004 pps 64808 kbps 1134374] [on_time 0 early 0 late 0 corrupt 0 pkt_dupl 0 Total 0] IO Util: 67.03 %
    STOP:[1639045200.000000078]
    Closing timing source thread...
    [o-du][rx 0 pps 0 kbps 0][tx 710236 pps 18232 kbps 1134374] [on_time 0 early 0 late 0 corrupt 0 pkt_dupl 0 Total 0] IO Util: 67.01 %
    get_xran_iq_content
    Closing l1 app... Ending all threads...
    Failed at xran_mm_destroy, status -2
    Dump IQs...
    RX: Convert S16 I and S16 Q to cpu byte order from XRAN Ant: [0]
    RX: Convert S16 I and S16 Q to cpu byte order from XRAN Ant: [1]
    RX: Convert S16 I and S16 Q to cpu byte order from XRAN Ant: [2]
    RX: Convert S16 I and S16 Q to cpu byte order from XRAN Ant: [3]
    Storing UL FFT OUT IQ Samples in human readable format to file ./logs/o-du-rx_log_ant0.txt: from addr (0x7fe1dd978010) size (1397760) IQ num (349440)
    Storing UL FFT OUT IQ Samples in binary format to file ./logs/o-du-rx_log_ant0.bin: from addr (0x7fe1dd978010) size (698880) bytes num (698880)
    Storing UL FFT OUT IQ Samples in human readable format to file ./logs/o-du-rx_log_ant1.txt: from addr (0x7fe1dd822010) size (1397760) IQ num (349440)
    Storing UL FFT OUT IQ Samples in binary format to file ./logs/o-du-rx_log_ant1.bin: from addr (0x7fe1dd822010) size (698880) bytes num (698880)
    Storing UL FFT OUT IQ Samples in human readable format to file ./logs/o-du-rx_log_ant2.txt: from addr (0x7fe1dd6cc010) size (1397760) IQ num (349440)
    Storing UL FFT OUT IQ Samples in binary format to file ./logs/o-du-rx_log_ant2.bin: from addr (0x7fe1dd6cc010) size (698880) bytes num (698880)
    Storing UL FFT OUT IQ Samples in human readable format to file ./logs/o-du-rx_log_ant3.txt: from addr (0x7fe1dd576010) size (1397760) IQ num (349440)
    Storing UL FFT OUT IQ Samples in binary format to file ./logs/o-du-rx_log_ant3.bin: from addr (0x7fe1dd576010) size (698880) bytes num (698880)
    PRACH: Convert S16 I and S16 Q to cpu byte order from XRAN Ant: [0]
    PRACH: Convert S16 I and S16 Q to cpu byte order from XRAN Ant: [1]
    PRACH: Convert S16 I and S16 Q to cpu byte order from XRAN Ant: [2]
    PRACH: Convert S16 I and S16 Q to cpu byte order from XRAN Ant: [3]
    Storing PRACH FFT OUT IQ Samples in human readable format to file ./logs/o-du-prach_log_ant0.txt: from addr (0x7fe1dd127010) size (4515840) IQ num (1128960)
    Storing PRACH FFT OUT IQ Samples in binary format to file ./logs/o-du-prach_log_ant0.bin: from addr (0x7fe1dd127010) size (2257920) bytes num (2257920)
    Storing PRACH FFT OUT IQ Samples in human readable format to file ./logs/o-du-prach_log_ant1.txt: from addr (0x7fe1dccd8010) size (4515840) IQ num (1128960)
    Storing PRACH FFT OUT IQ Samples in binary format to file ./logs/o-du-prach_log_ant1.bin: from addr (0x7fe1dccd8010) size (2257920) bytes num (2257920)
    Storing PRACH FFT OUT IQ Samples in human readable format to file ./logs/o-du-prach_log_ant2.txt: from addr (0x7fe1dc889010) size (4515840) IQ num (1128960)
    Storing PRACH FFT OUT IQ Samples in binary format to file ./logs/o-du-prach_log_ant2.bin: from addr (0x7fe1dc889010) size (2257920) bytes num (2257920)
    Storing PRACH FFT OUT IQ Samples in human readable format to file ./logs/o-du-prach_log_ant3.txt: from addr (0x7fe1dc43a010) size (4515840) IQ num (1128960)
    Storing PRACH FFT OUT IQ Samples in binary format to file ./logs/o-du-prach_log_ant3.bin: from addr (0x7fe1dc43a010) size (2257920) bytes num (2257920)
    [root@localhost app]#


    Can anyone help in capturing the packets while running sample-app?

    Or is there any change required?


    Thank you.


    Regards,

    Rajisha

    1. We are able to capture the packets in infra level, without dpdk binding we could capture using wireshark on the interface.

      But after binding to dpdk, we tried using dpdk-pdump, we see below errors.


      [root@localhost bin]# ./dpdk-pdump -- --pdump 'port=0,queue=*'
      EAL: Detected 128 lcore(s)
      EAL: Detected 4 NUMA nodes
      EAL: Multi-process socket /var/run/dpdk/rte/mp_socket_280381_9f53d52f16e0
      EAL: failed to send to (/var/run/dpdk/rte/mp_socket) due to Connection refused
      EAL: Fail to send request /var/run/dpdk/rte/mp_socket:bus_vdev_mp
      vdev_scan(): Failed to request vdev from primary
      EAL: Selected IOVA mode 'PA'
      EAL: Probing VFIO support...
      EAL: failed to send to (/var/run/dpdk/rte/mp_socket) due to Connection refused
      EAL: Fail to send request /var/run/dpdk/rte/mp_socket:eal_vfio_mp_sync
      EAL: cannot request default container fd
      EAL: VFIO support could not be initialized



      1. We could see Rx packets also if we launch sample-app simultaneously on both DU and RU servers.

        Thank you.

  18. Hi Team,

    We are trying to integrate ODU-Low and Benetel RU (n78 frequency). What all configurations we have to make

    from DU side to ensure we can send some ecpri packets with IQ samples and receive it through benetel RU .

    Thanks in advance.

  19. Anonymous

    I would love to see a youtube tutorial on how to install this software. The documentation doesnt work and only results in error after error. 

  20. Anonymous

    Hi,

    The latest version of the o-du phy from git builds the libwls which has void* WLS_Open(const char *ifacename, unsigned int mode, uint64_t *nWlsMacMemorySize, uint64_t *nWlsPhyMemorySize);

    The latest version of odu-l2 building the odu to integrate with the odu-low (make odu PHY=INTEL_L1 MACHINE=BIT64 MODE=FDD) is failing with

    /home/oran/odu-high/l2/src/mt/mt_ss.c:916:4: error: too few arguments to function ‘WLS_Open’

    hdl = WLS_Open(WLS_DEVICE_NAME, WLS_MASTER_CLIENT, WLS_MEM_SIZE);

    is there a different code base / branch of the odu-l2? I'm getting it from git clone "https://gerrit.o-ran-sc.org/r/o-du/l2"

    of do I need to downgrade my phy install, and if so which is the right version to use?

    Thanks.


    1. Hi 

      Did you get any update on this?

      We are also seeing the same issue and we came to know from community that, the ODU-H testing with new L1 is yet to be done and it is planned for June release only.

      Regards,

      Rajisha

  21. Anonymous

    Hi,

    I'm using the master gerrit branch, and could install the near-RT RIC without problem, but the SMO is another story.

    root@nonrtric:~# sudo dep/bin/deploy-nonrtric dep/nonrtric/RECIPE_EXAMPLE/example_recipe.yaml
    [...]
    helm install -f dep/nonrtric/RECIPE_EXAMPLE/example_recipe.yaml --namespace nonrtric  r3-dev-nonrtric /root/dep/bin/../nonrtric/helm/nonrtric
    Error: unable to build kubernetes objects from release manifest: unable to recognize "": no matches for kind "Ingress" in version "networking.k8s.io/v1"
    


    Even changing the path in the templates in "dep/nonrtric/helm/informationservice/templates/ingress.yaml", we another issue:

    helm install -f dep/nonrtric/RECIPE_EXAMPLE/example_recipe.yaml --namespace nonrtric r3-dev-nonrtric /root/dep/bin/../nonrtric/helm/nonrtric Error: unable to build kubernetes objects from release manifest: error validating "": error validating data: unexpected GroupVersion string: networking.k8s.io/v1/Ingre


    Any idea on how to fix it?


    Thank you in advance!


  22. Anonymous

    Hi,

    I've got the latest FlexRAN binary, and latest O-DU-low and O-DU-high, along with dpdk 20.11.1

    I'm running:

    ./l1.sh -xran

    ./oran_5g_fapi.sh --cfg=oran_5g_fapi.cfg

    ./cu_stub

    ./ric_stub

    and ./odu (compiled with PHY=INTEL_L1 MACHINE=BIT64 MODE=FDD)

    Everything all connects, and messages are passed about, but when the l1 process receives the PHY_START_REQ it asserts and exits.

    PHY>welcome to application console

    Received MSG_TYPE_PHY_CONFIG_REQ: 0
    Processing MSG_TYPE_PHY_CONFIG_REQ: 0
    read_table: File table/common/pss_table.bin of size 381 read_size: 381
    read_table: File table/common/sss_table.bin of size 128016 read_size: 128016
    read_table: File table/common/srs_zc_36_plus.bin of size 905916 read_size: 905916
    read_table: File table/common/pucch_zc_36_plus.bin of size 383040 read_size: 383040
    set_slot_type SlotPattern:
    Slot: 0
    0 FD

    PHYDI-INIT[from 2] PhyInstance: 0

    ---------------------------------------------------------
    Global Variables:
    ---------------------------------------------------------
    gCarrierAggLevel: 0
    gCarrierAggLevelInit: 1
    gSupportedAVX2 1
    ---------------------------------------------------------


    Received MSG_TYPE_PHY_START_REQ: 0
    Processing MSG_TYPE_PHY_START_REQ: 0
    MLogRestart
    MLogOpen: filename(l1mlog.bin) mlogSubframes (128), mlogCores(40), mlogSize(10000) mlog_mask (-1)
    mlogSubframes (128), mlogCores(40), mlogSize(10000)
    localMLogTimerInit
    System clock (rdtsc) resolution 1197187935 [Hz]
    Ticks per us 1197
    MLog Storage: 0x7fbc7f980100 -> 0x7fbc82a56830 [ 51210032 bytes ]
    localMLogFreqReg: 1197. Storing: 1197
    Mlog Open successful

    ----------------------------------------------------------------------------
    mem_mgr_display_size:
    Num Memory Alloc: 2,480
    Total Memory Size: 361,587,888
    ----------------------------------------------------------------------------


    PHYDI-START[from 2] PhyInstance: 0, Mode: 1, Count: 4294967295, Period: 0, NumSlotPerSfn: 10
    wls_srs_heap_print: HeapStorage[0x2feddda00] HeapSize[402653184] FreeBlock[0x2fee5df00] FreeSize[402127616]
    Block[0] -> [0x2fee5df00..0x316ddda00] Magic[0xdeadc0de] Size[402127616] Next[(nil)]
    5GNR Timer Mode
    timer_init: coreBind: 0, corePriority: 96, corePolicy: 1

    ---- ASSERT---

    RC:0x00000000
    File:auxlib/timer/aux_timer.c
    Row :477
    MLogPrint: ext_filename((null).bin)
    Opening MLog File: l1mlog-c0.bin
    MLog file l1mlog-c0.bin closed
    Mlog Print successful

    segv ooops @ (nil) from core: 2
    Segmentation Fault!
    info.si_signo = 11
    info.si_errno = 0
    begin stopping phy (0)...phydi_stop[from 2]: phyInstance: -1, sendStop: 1, phyIdStart: 0, phyIdStop: 1
    PHY_STOP PhyInstance[0] PhyState[0] PhyStartMode[1] PhyStateCount[0]
    Send MSG_TYPE_PHY_STOP_RESP[0]
    Cleanup after [PID] 37937


    When I look in the FAPI debug, I'm seeing this:

    EAL: VFIO support initialized

    vdev_probe(): failed to initialize baseband_turbo_sw device

    EAL: Bus (vdev) probe failed.

    so I'm guessing that the SW Turbo PMD isn't installed correctly? In the DPDK documentation, it's got a section on installing the FlexRAN SDK https://doc.dpdk.org/guides-20.11/bbdevs/turbo_sw.html

    but it then talks about the version of SDK being compatible with dpdk 19, and the rest of the o-ran software is using dpdk 20. There is a sdk directory in the FlexRAN I installed from github, but it doesn't have the same source files or makefiles as the SDK download.


    Has anyone got any suggestions on what to try next?


    1. Hi

      We also faced the same issue while running L1. We are not using FPGA, so we modified the FEC Mode to use as SW FECMode in phycfg_timer.xml.

      And we still see issue with ODU build with latest FlexRAN. We used https://gerrit.o-ran-sc.org/r/o-du/l2 to clone odu-h code(this still uses dpdk19 version). 

      From community what we came to know that, yet to test the ODU-H with new L1 and now it is out of sync.

      Could you please share the ODU-H(L2) details which you used .

      Thank you.


      Regards,

      Rajisha

    2. Hi 

      Could you please update on the ODU-H code and build steps which you followed.


      The latest version of the o-du phy from git builds the libwls which has void* WLS_Open(const char *ifacename, unsigned int mode, uint64_t *nWlsMacMemorySize, uint64_t *nWlsPhyMemorySize);

      The latest version of odu-l2 building the odu to integrate with the odu-low (make odu PHY=INTEL_L1 MACHINE=BIT64 ) is failing with

      /home/oran/odu-high/l2/src/mt/mt_ss.c:916:4: error: too few arguments to function ‘WLS_Open’

      hdl = WLS_Open(WLS_DEVICE_NAME, WLS_MASTER_CLIENT, WLS_MEM_SIZE);


      And ODU-H is referring to dpdk19.11 version ,but the new L1 is pointing to dpdk.20.11 version.


      Regards,

      Rajisha