Instead of guessing what is the absolute timestamp of each symbol returned
from fronthaul, add absolute hyper frame from GPS Epoch to the O-RU. The
O-RU can calculate the absolute sample index from hyper frame reliably
regardless of the frame/slot/symbol ordering.
Add config file for 1x1 O-DU that matches the edited O-RU config.
Signed-off-by: Bartosz Podrygajlo <bartosz.podrygajlo@openairinterface.org>
Make fh_timer_tick robust against CLOCK_REALTIME jumps. In case of
forward jump the symbol callback will be called for each missed symbol.
In case of backwards jump the function will return without calling
any callbacks. This continues until the local timer catches up to the
last callback symbol.
Signed-off-by: Bartosz Podrygajlo <bartosz.podrygajlo@openairinterface.org>
Add an O-RU centered fronthaul library that includes components
from the fronthaul directory.
Signed-off-by: Bartosz Podrygajlo <bartosz.podrygajlo@openairinterface.org> and assisted-by Gemini
Test the new O-RU packet processor against PCAP capture.
There are two testcases added:
- test_oru_pcap_1 - which tests DL & UL fragmentation using jumbo frames (9600 mtu)
- test_oru_pcap_frag - which injects the same pcap but tests the mtu to 1500 to force
large amounts of UL UPlane fragments
Signed-off-by: Bartosz Podrygajlo <bartosz.podrygajlo@openairinterface.org> and assisted-by Gemini
This commit introduces the O-RU (O-RAN Radio Unit) packet processor
implementation for handling UL & DL C-plane and U-plane
Key features include:
- Processing of eCPRI headers and Section Type 1 radio app headers.
- Strict timing validation against T2a minimum and maximum bounds for
both C-plane and U-plane symbols.
- A DPDK ring-based job queue for managing symbol processing state
(`dl_symbol_job_t`) across multiple concurrent symbol windows.
- Reordering of received CP & UP data so that produced IQ is always
in order.
- Extraction and buffering of IQ samples for downlink.
- Supports up to 4 fragments per symbol
Signed-off-by: Bartosz Podrygajlo <bartosz.podrygajlo@openairinterface.org> and assisted-by Gemini
Added a library that encompasses all dpdk requirements for a single O-RU.
Signed-off-by: Bartosz Podrygajlo <bartosz.podrygajlo@openairinterface.org> and assisted-by Gemini
Added xran_pkt which is a library of imported ORAN/eCPRI packet utilities
from xran library.
- merged xran_up_api.h/c and xran_cp_api.h/c into xran_pkt_api.h/c.
- reformatted the code.
- added unit test
- added an optional executable xran_pcap_dump which can extract some
fields of an ORAN pcap capture to stdout
Signed-off-by: Bartosz Podrygajlo <bartosz.podrygajlo@openairinterface.org> and assisted-by Gemini
This commit introduces a set of component libraries that can
be used to implement packet processing library for 7.2 fronthaul
interface.
Signed-off-by: Bartosz Podrygajlo <bartosz.podrygajlo@openairinterface.org> and assisted-by Gemini