David Rupprecht
0217bf5332
Fixed name space for rrc ue
3 years ago
David Rupprecht
fb92118bb7
Add 5G NAS infrastructure
3 years ago
David Rupprecht
505225d845
Added ue nas base class with security functions
3 years ago
David Rupprecht
7fa85ab336
Added nas test common file
3 years ago
Andre Puschmann
e0d9afc342
proc_ra: fix race detected with TSAN
...
rar_received is accessed from PHY worker and Stack thread
3 years ago
Codebot
516951c41c
Merge branch 'next' into agpl_next
...
# Conflicts:
# lib/include/srsran/interfaces/rrc_nr_interface_types.h
# lib/include/srsran/phy/enb/enb_dl_nr.h
# test/phy/nr_dl_flood.cc
3 years ago
Codebot
58ca99d22a
Adding AGPL copyright to new files
3 years ago
Codebot
585e3c51c1
Merge branch 'next' into agpl_next
...
# Conflicts:
# srsenb/hdr/phy/nr/cc_worker.h
# srsenb/hdr/phy/nr/sf_worker.h
# srsenb/src/phy/nr/cc_worker.cc
# srsenb/src/phy/nr/sf_worker.cc
# test/phy/nr_phy_test.cc
3 years ago
Ismael Gomez
4e39982a19
Fix TSAN warnings in UE ( #3021 )
...
* Protect PHY SR signal management in a class
* Protect intra_freq_meas vector
* Protect cell and srate shared variables in thread-safe classes
* srsue,srsenb: include TSAN options header
* Protect ue_rnti_t and rnti scheduling windows behind thread-safe classes
* Protect access to state variable in sync_state
* Protect access to metrics configuration
* Protect access to is_pending_sr
* Protect access to UE prach worker
* Protect UE mux
* Avoid unlocking mutex twice
* Fix data races in RF/ZMQ
* Fix data races in intra_measure and PHY
* Fix minor data races in MAC
* Make TSAN default behaviour to not halt on error
* Fix blocking in intra cell measurement
* Address comments
Co-authored-by: Andre Puschmann <andre@softwareradiosystems.com>
3 years ago
Pedro Alvarez
171d5727be
Moved lib RLC into it's own folder
3 years ago
Andre Puschmann
0a16f48869
gw: fix race condition
...
GW thread was checking the default_eps_bearer variable without
protection. RRC could update it when deleting DRB or receiving RRC
connection release.
3 years ago
Andre Puschmann
368c7b9e4f
ue,stack: clear all EPS bearers when going RRC idle
...
the EPS bearer manager was only informed when a single DRB
was removed but not when entering idle which requires to
remove all bearers.
This cause the service request to fail.
3 years ago
Andre Puschmann
5313fb99d6
tft: add helper to delete all TFTs for EPS bearer
...
when a EPS bearer is removed, all associated TFTs need
to be removed as well.
3 years ago
Andre Puschmann
483a216bd5
ue,stack: refactor handling of radio bearears in UE stack
...
this is a rather large commit that is hard to split because
it touches quite a few components.
It's a preparation patch for adding NR split bearers in the next
step.
We realized that managing RLC and PDCP bearers for both NR and LTE
in the same entity doesn't work. This is because we use the LCID
as a key for all accesses. With NR dual connectivity however we
can have the same LCID active at the same time for both LTE and NR
carriers.
The patch solves that by creating a dedicated NR instance for RLC/PDCP
in the stack. But then the question arises for UL traffic on, e.g. LCID 4
what PDCP instance the GW should use for pushing SDUs. It doesnt' know
that. And in fact it doesn't need to. It just needs to know EPS
bearer IDs. So the next change was to remove the knowledge of what
LCIDs are from the GW. Make is agnostic and only work on EPS bearer IDs.
The handling and mapping between EPS bearer IDs and LCIDs for LTE
or NR (mainly PDCP for pushing data) is done in the Stack because
it has access to both.
The NAS also has a EPS bearer map but only knows about default and
dedicated bearers. It doesn't know on which logical channels they
are transmitted.
3 years ago
Andre Puschmann
3f9c069ff7
ue_stack_lte: add RLC and PDCP entities for NR
3 years ago
David Rupprecht
d1d8500ce5
Add testcase for reconfiguration
3 years ago
Andre Puschmann
e2c496d825
srsue,mac: fix race between PHY and MAC when stopping UE
...
the issue let to unwanted log warning at the end of the UE
execution when the PHY was still pushing DL PDUs while MAC
was already stopped.
This fixes #3003
3 years ago
Ismael Gomez
e35a0d72fa
Revert UE changes
3 years ago
Ismael Gomez
dd9889e07c
Add carrier index to uplink PCAP captures
3 years ago
Codebot
d9cb5d01ff
Merge branch 'next' into agpl_next
3 years ago
Pedro Alvarez
299d2ee35d
Added interface to make the PDCP notify the RRC of integrity check
...
failures.
3 years ago
Codebot
73a61b884e
Merge branch 'next' into agpl_next
3 years ago
Andre Puschmann
aaffdeb326
rrc,rlc: add method to signal protocol failure to RRC
...
general-purpose method for lower layers to signal protocol
failures to higher layers, i.e. RRC.
In the current case, implement a direct release of the UE (enb) or
a reestablishment (UE).
3 years ago
Francisco
486823e5de
sched,bugfix: The PHR handling scheme now considers the number of PRBs of the UL grant that carried the PHR. Before, it was assuming the most conservative scenario of Nprb=1
3 years ago
Andre Puschmann
018c734b09
dl_harq: fix unlocking of unlocked mutex bug detected by TSAN
...
in the mac_test the tb_decoded() method was called twice for
the 2nd codeword, causig TSAN to complain about an unlocked mutex
being unlocked.
The patch resolves the potential issue only calling tb_decoded
for a grant/tb thas has a non-zero MCS.
The patch also adjusts the reset function to have a safe and "unsafe"
version to be called from inside the class, similar to other
classes where we do the same.
3 years ago
Andre Puschmann
b40867ffec
ue,rrc: add simple connection setup procedure
...
this is an attempt to fix #2850 by defering the transmission of
the connection setup complete until the PHY has applied
the dedicated config in the connection setup.
3 years ago
Codebot
5fe9a14aa5
Merge branch 'next' into agpl_next
4 years ago
David Rupprecht
8c194b887b
Allow NAS init function to fail
4 years ago
David Rupprecht
617fb2ba7e
Added default destructor for args
4 years ago
Codebot
887f1da10c
Merge branch 'next' into agpl_next
4 years ago
Codebot
aeb4a5fc9d
Merge branch 'next' into agpl_next
4 years ago
David Rupprecht
102a943171
Fixed naming srsLTE to srsRAN
4 years ago
David Rupprecht
fd451e8be3
Configure Short PDCP NR SN support
4 years ago
Codebot
0a15eeb57a
Adding AGPL copyright to new files
4 years ago
Codebot
1bb31e42ab
Merge branch 'next' into agpl_next
...
# Conflicts:
# lib/include/srsran/interfaces/nr_common_interface_types.h
4 years ago
Andre Puschmann
e3b77fd82a
rrc_nr: set timeout for NR cell measurement to 250ms
...
the low timout of 10ms was:
1) causing too frequent measurement reports
2) causes a MO ping test to fail where the ICMP request
was sent on the LTE carrier but never got a reply because
the MCG addition was inbetween
4 years ago
David Rupprecht
d2aa25d451
Added option for simulated measurement
4 years ago
Xavier Arteaga
715f8900a8
Selected NR RA procedure PRACH send timeout according to system frame number period from PRACH PHY tables
4 years ago
Andre Puschmann
4b3538aaa8
{dl,ul}_harq: fix metrics calculation
...
rewrite metrics calculation for NR HARQ and remove
unneeded operations.
4 years ago
Andre Puschmann
b6f2c80f66
mac_common: add helper method to get total buffer state
4 years ago
David Rupprecht
a064e85c54
rename common lte header
4 years ago
David Rupprecht
81ad72b0ff
Refactor srb and drb handling
4 years ago
David Rupprecht
91ff8a2e6d
Add rrc_nr to rlc init function
4 years ago
Andre Puschmann
c8d3e133dc
ue: bump default RRC release announced to 15
4 years ago
David Rupprecht
75cd5e65e5
Removed arfcn and freq, and nof_prbs from config file
4 years ago
Codebot
c7444949f8
Adding AGPL copyright to new files
4 years ago
Codebot
34dbee4c7d
Merge branch 'next' into agpl_next
4 years ago
David Rupprecht
bfe2ad98ef
Added parsing for NR DL HARQ cfg
4 years ago
Andre Puschmann
b9ae064338
mac_nr: add DL HARQ
...
this commit adds a complete DL HARQ entity to the MAC of the UE.
It also refactors demux into an own class and adapts the PHY-MAC
interface to use the new MAC capabilities.
4 years ago
David Rupprecht
fe8727050b
Added new rrc_nr to phy flattening functions and fixes
4 years ago
David Rupprecht
4c68c17bd3
Fixed log level of nr loggers to lte level and hex size
4 years ago
Andre Puschmann
44baea6666
mac_nr: add UL HARQ
...
this patch adds a basic UL HARQ entity for NR.
The patch also updates some interfaces between MAC/RA/HARQ,
i.e. get_temp_crnti().
It also adds a Msg3 unit test.
4 years ago
David Rupprecht
eeddbe69ce
Fixes repeating proc RA due to SR trigger
4 years ago
David Rupprecht
5a3a2a6d6f
Added functions for adding phr and tag config
4 years ago
Francisco
f7a8b8bf94
separate drb srb ids into separate enum types
4 years ago
Francisco
21718af3b6
avoid allocating std::string to get lcid radio bearer name. Refactored the lte radio bearer enum type
4 years ago
Codebot
c0282856d0
Merge branch 'next' into agpl_next
...
# Conflicts:
# srsue/test/mac_nr/mac_nr_test.cc
4 years ago
Andre Puschmann
cf696138d3
mac_nr: fix packing order of SDU and CEs
...
SDUs need to go first in the MAC PDU, followed by CEs
4 years ago
Andre Puschmann
7f415189f3
ue,mac: enable basic MAC metrics
...
this adds basic MAC metrics calculation for the DL NR MAC
4 years ago
Andre Puschmann
db496df1e6
mac_nr: add support for periodic BSR reporting
...
building on the previous refactor this patch now adds support
for peridoic BSR reporting (using short BSR). It furthermore does
the following changes:
* add BSR packing
* add proc_bsr_nr unit test
* move mac_nr test code into test folder under src (needs to be done with other test code too)
4 years ago
David Rupprecht
56e947bf27
Added functionality for releasing a NR bearer
4 years ago
David Rupprecht
cc6d8128ad
Added gw interface if it is running
4 years ago
David Rupprecht
7a481c40ab
Added mac prach nr proc error handling
4 years ago
David Rupprecht
f9ea02b6bf
Added functions for rrc reestablishing procedure if nr reconfig failes
4 years ago
Xavier Arteaga
01990c2e1d
SRSUE: Add PHY-MAC SR related interfaces
4 years ago
David Rupprecht
506adca930
Set eutra nr band info based config value
4 years ago
Codebot
045644ca96
Adding AGPL copyright to new files
4 years ago
Codebot
a047e13479
Merge branch 'next' into agpl_next
...
# Conflicts:
# lib/include/srsran/adt/adt_utils.h
4 years ago
Andre Puschmann
d135ae4d29
proc_bsr: initial BSR procedure for NR
...
* refactor some common methods to mac_common.cc
* add common mux_base class
* move UL PDU generation to mux class
* add logical channel registration to MAC, MUX, BSR
* add initial proc BSR
* add basic MAC NR test
* rework MAC interfaces
4 years ago
Francisco
d04a19f8bc
refactor - increase code reuse in adt files
4 years ago
Codebot
24290dcae2
Adding AGPL copyright to new files
4 years ago
Codebot
3fdcd5fe03
Merge branch 'next' into agpl_next
...
# Conflicts:
# cmake/modules/CheckFunctionExists.c
# cmake/modules/SRSLTEVersion.cmake
# lib/examples/cell_search.c
# lib/examples/cell_search_nbiot.c
# lib/examples/npdsch_enodeb.c
# lib/examples/npdsch_ue.c
# lib/examples/npdsch_ue_helper.cc
# lib/examples/npdsch_ue_helper.h
# lib/examples/pdsch_enodeb.c
# lib/examples/pdsch_ue.c
# lib/examples/pssch_ue.c
# lib/examples/synch_file.c
# lib/examples/usrp_capture.c
# lib/examples/usrp_capture_sync.c
# lib/examples/usrp_capture_sync_nbiot.c
# lib/examples/usrp_txrx.c
# lib/examples/zmq_remote_rx.c
# lib/include/srslte/asn1/rrc_nr_utils.h
# lib/include/srslte/config.h
# lib/include/srslte/phy/ch_estimation/chest_dl.h
# lib/include/srslte/phy/ch_estimation/chest_dl_nbiot.h
# lib/include/srslte/phy/ch_estimation/chest_sl.h
# lib/include/srslte/phy/ch_estimation/chest_ul.h
# lib/include/srslte/phy/ch_estimation/csi_rs.h
# lib/include/srslte/phy/ch_estimation/refsignal_dl.h
# lib/include/srslte/phy/ch_estimation/refsignal_dl_nbiot.h
# lib/include/srslte/phy/ch_estimation/refsignal_ul.h
# lib/include/srslte/phy/common/phy_common.h
# lib/include/srslte/phy/common/phy_common_sl.h
# lib/include/srslte/phy/enb/enb_dl.h
# lib/include/srslte/phy/enb/enb_dl_nr.h
# lib/include/srslte/phy/enb/enb_ul.h
# lib/include/srslte/phy/fec/turbo/turbodecoder.h
# lib/include/srslte/phy/io/format.h
# lib/include/srslte/phy/phch/dci.h
# lib/include/srslte/phy/phch/dci_nbiot.h
# lib/include/srslte/phy/phch/npbch.h
# lib/include/srslte/phy/phch/npdcch.h
# lib/include/srslte/phy/phch/npdsch.h
# lib/include/srslte/phy/phch/pbch.h
# lib/include/srslte/phy/phch/pcfich.h
# lib/include/srslte/phy/phch/pdcch.h
# lib/include/srslte/phy/phch/pdsch.h
# lib/include/srslte/phy/phch/pdsch_nr.h
# lib/include/srslte/phy/phch/phich.h
# lib/include/srslte/phy/phch/pmch.h
# lib/include/srslte/phy/phch/pscch.h
# lib/include/srslte/phy/phch/pucch.h
# lib/include/srslte/phy/phch/pusch.h
# lib/include/srslte/phy/phch/ra.h
# lib/include/srslte/phy/phch/ra_dl.h
# lib/include/srslte/phy/phch/ra_ul.h
# lib/include/srslte/phy/phch/sch.h
# lib/include/srslte/phy/phch/uci_cfg.h
# lib/include/srslte/phy/scrambling/scrambling.h
# lib/include/srslte/phy/sync/cfo.h
# lib/include/srslte/phy/sync/cp.h
# lib/include/srslte/phy/sync/pss.h
# lib/include/srslte/phy/sync/sss.h
# lib/include/srslte/phy/sync/ssss.h
# lib/include/srslte/phy/ue/ue_cell_search.h
# lib/include/srslte/phy/ue/ue_cell_search_nbiot.h
# lib/include/srslte/phy/ue/ue_dl.h
# lib/include/srslte/phy/ue/ue_dl_nbiot.h
# lib/include/srslte/phy/ue/ue_dl_nr.h
# lib/include/srslte/phy/ue/ue_mib.h
# lib/include/srslte/phy/ue/ue_sync.h
# lib/include/srslte/phy/ue/ue_sync_nbiot.h
# lib/include/srslte/phy/ue/ue_ul.h
# lib/include/srslte/phy/ue/ue_ul_nr.h
# lib/include/srslte/phy/utils/random.h
# lib/include/srslte/phy/utils/vector_simd.h
# lib/include/srslte/srslog/log_channel.h
# lib/include/srslte/srslte.h
# lib/include/srslte/version.h.in
# lib/include/srsran/adt/accumulators.h
# lib/include/srsran/adt/adt_utils.h
# lib/include/srsran/adt/bounded_bitset.h
# lib/include/srsran/adt/bounded_vector.h
# lib/include/srsran/adt/choice_type.h
# lib/include/srsran/adt/circular_array.h
# lib/include/srsran/adt/circular_buffer.h
# lib/include/srsran/adt/detail/index_sequence.h
# lib/include/srsran/adt/detail/type_utils.h
# lib/include/srsran/adt/expected.h
# lib/include/srsran/adt/interval.h
# lib/include/srsran/adt/mem_pool.h
# lib/include/srsran/adt/move_callback.h
# lib/include/srsran/adt/observer.h
# lib/include/srsran/adt/scope_exit.h
# lib/include/srsran/adt/span.h
# lib/include/srsran/asn1/asn1_utils.h
# lib/include/srsran/asn1/gtpc.h
# lib/include/srsran/asn1/gtpc_ies.h
# lib/include/srsran/asn1/gtpc_msg.h
# lib/include/srsran/asn1/ngap.h
# lib/include/srsran/asn1/rrc.h
# lib/include/srsran/asn1/rrc/bcch_msg.h
# lib/include/srsran/asn1/rrc/common.h
# lib/include/srsran/asn1/rrc/common_ext.h
# lib/include/srsran/asn1/rrc/dl_ccch_msg.h
# lib/include/srsran/asn1/rrc/dl_dcch_msg.h
# lib/include/srsran/asn1/rrc/ho_cmd.h
# lib/include/srsran/asn1/rrc/meascfg.h
# lib/include/srsran/asn1/rrc/paging.h
# lib/include/srsran/asn1/rrc/phy_ded.h
# lib/include/srsran/asn1/rrc/rr_common.h
# lib/include/srsran/asn1/rrc/rr_ded.h
# lib/include/srsran/asn1/rrc/rrc_asn1.h
# lib/include/srsran/asn1/rrc/security.h
# lib/include/srsran/asn1/rrc/si.h
# lib/include/srsran/asn1/rrc/uecap.h
# lib/include/srsran/asn1/rrc/ul_ccch_msg.h
# lib/include/srsran/asn1/rrc/ul_dcch_msg.h
# lib/include/srsran/asn1/rrc_nbiot.h
# lib/include/srsran/asn1/rrc_nr.h
# lib/include/srsran/asn1/rrc_utils.h
# lib/include/srsran/asn1/s1ap.h
# lib/include/srsran/asn1/s1ap_utils.h
# lib/include/srsran/build_info.h.in
# lib/include/srsran/common/backtrace.h
# lib/include/srsran/common/band_helper.h
# lib/include/srsran/common/basic_pnf.h
# lib/include/srsran/common/basic_vnf.h
# lib/include/srsran/common/basic_vnf_api.h
# lib/include/srsran/common/bcd_helpers.h
# lib/include/srsran/common/block_queue.h
# lib/include/srsran/common/buffer_pool.h
# lib/include/srsran/common/byte_buffer.h
# lib/include/srsran/common/common.h
# lib/include/srsran/common/common_helper.h
# lib/include/srsran/common/config_file.h
# lib/include/srsran/common/crash_handler.h
# lib/include/srsran/common/enb_events.h
# lib/include/srsran/common/epoll_helper.h
# lib/include/srsran/common/fsm.h
# lib/include/srsran/common/gen_mch_tables.h
# lib/include/srsran/common/int_helpers.h
# lib/include/srsran/common/interfaces_common.h
# lib/include/srsran/common/log_helper.h
# lib/include/srsran/common/mac_pcap.h
# lib/include/srsran/common/mac_pcap_base.h
# lib/include/srsran/common/mac_pcap_net.h
# lib/include/srsran/common/metrics_hub.h
# lib/include/srsran/common/multiqueue.h
# lib/include/srsran/common/nas_pcap.h
# lib/include/srsran/common/netsource_handler.h
# lib/include/srsran/common/network_utils.h
# lib/include/srsran/common/pcap.h
# lib/include/srsran/common/rlc_pcap.h
# lib/include/srsran/common/rwlock_guard.h
# lib/include/srsran/common/s1ap_pcap.h
# lib/include/srsran/common/s3g.h
# lib/include/srsran/common/security.h
# lib/include/srsran/common/signal_handler.h
# lib/include/srsran/common/singleton.h
# lib/include/srsran/common/ssl.h
# lib/include/srsran/common/stack_procedure.h
# lib/include/srsran/common/standard_streams.h
# lib/include/srsran/common/string_helpers.h
# lib/include/srsran/common/task_scheduler.h
# lib/include/srsran/common/test_common.h
# lib/include/srsran/common/thread_pool.h
# lib/include/srsran/common/threads.h
# lib/include/srsran/common/time_prof.h
# lib/include/srsran/common/timeout.h
# lib/include/srsran/common/timers.h
# lib/include/srsran/common/trace.h
# lib/include/srsran/common/tti_point.h
# lib/include/srsran/common/tti_sempahore.h
# lib/include/srsran/common/tti_sync.h
# lib/include/srsran/common/tti_sync_cv.h
# lib/include/srsran/common/zuc.h
# lib/include/srsran/interfaces/enb_command_interface.h
# lib/include/srsran/interfaces/enb_gtpu_interfaces.h
# lib/include/srsran/interfaces/enb_interfaces.h
# lib/include/srsran/interfaces/enb_mac_interfaces.h
# lib/include/srsran/interfaces/enb_metrics_interface.h
# lib/include/srsran/interfaces/enb_pdcp_interfaces.h
# lib/include/srsran/interfaces/enb_phy_interfaces.h
# lib/include/srsran/interfaces/enb_rlc_interfaces.h
# lib/include/srsran/interfaces/enb_rrc_interface_types.h
# lib/include/srsran/interfaces/enb_rrc_interfaces.h
# lib/include/srsran/interfaces/enb_s1ap_interfaces.h
# lib/include/srsran/interfaces/epc_interfaces.h
# lib/include/srsran/interfaces/gnb_interfaces.h
# lib/include/srsran/interfaces/mac_interface_types.h
# lib/include/srsran/interfaces/nr_common_interface_types.h
# lib/include/srsran/interfaces/pdcp_interface_types.h
# lib/include/srsran/interfaces/phy_interface_types.h
# lib/include/srsran/interfaces/radio_interfaces.h
# lib/include/srsran/interfaces/rlc_interface_types.h
# lib/include/srsran/interfaces/rrc_interface_types.h
# lib/include/srsran/interfaces/rrc_nr_interface_types.h
# lib/include/srsran/interfaces/sched_interface.h
# lib/include/srsran/interfaces/ue_gw_interfaces.h
# lib/include/srsran/interfaces/ue_interfaces.h
# lib/include/srsran/interfaces/ue_mac_interfaces.h
# lib/include/srsran/interfaces/ue_nas_interfaces.h
# lib/include/srsran/interfaces/ue_nr_interfaces.h
# lib/include/srsran/interfaces/ue_pdcp_interfaces.h
# lib/include/srsran/interfaces/ue_phy_interfaces.h
# lib/include/srsran/interfaces/ue_rlc_interfaces.h
# lib/include/srsran/interfaces/ue_rrc_interfaces.h
# lib/include/srsran/interfaces/ue_usim_interfaces.h
# lib/include/srsran/mac/mac_rar_pdu_nr.h
# lib/include/srsran/mac/mac_sch_pdu_nr.h
# lib/include/srsran/mac/pdu.h
# lib/include/srsran/mac/pdu_queue.h
# lib/include/srsran/phy/agc/agc.h
# lib/include/srsran/phy/ch_estimation/chest_common.h
# lib/include/srsran/phy/ch_estimation/dmrs_pdcch.h
# lib/include/srsran/phy/ch_estimation/dmrs_pucch.h
# lib/include/srsran/phy/ch_estimation/dmrs_sch.h
# lib/include/srsran/phy/ch_estimation/wiener_dl.h
# lib/include/srsran/phy/channel/ch_awgn.h
# lib/include/srsran/phy/channel/channel.h
# lib/include/srsran/phy/channel/delay.h
# lib/include/srsran/phy/channel/fading.h
# lib/include/srsran/phy/channel/hst.h
# lib/include/srsran/phy/channel/rlf.h
# lib/include/srsran/phy/common/phy_common_nr.h
# lib/include/srsran/phy/common/sequence.h
# lib/include/srsran/phy/common/timestamp.h
# lib/include/srsran/phy/common/zc_sequence.h
# lib/include/srsran/phy/dft/dft.h
# lib/include/srsran/phy/dft/dft_precoding.h
# lib/include/srsran/phy/dft/ofdm.h
# lib/include/srsran/phy/fec/block/block.h
# lib/include/srsran/phy/fec/cbsegm.h
# lib/include/srsran/phy/fec/convolutional/convcoder.h
# lib/include/srsran/phy/fec/convolutional/rm_conv.h
# lib/include/srsran/phy/fec/convolutional/viterbi.h
# lib/include/srsran/phy/fec/crc.h
# lib/include/srsran/phy/fec/ldpc/base_graph.h
# lib/include/srsran/phy/fec/ldpc/ldpc_common.h
# lib/include/srsran/phy/fec/ldpc/ldpc_decoder.h
# lib/include/srsran/phy/fec/ldpc/ldpc_encoder.h
# lib/include/srsran/phy/fec/ldpc/ldpc_rm.h
# lib/include/srsran/phy/fec/polar/polar_chanalloc.h
# lib/include/srsran/phy/fec/polar/polar_code.h
# lib/include/srsran/phy/fec/polar/polar_decoder.h
# lib/include/srsran/phy/fec/polar/polar_encoder.h
# lib/include/srsran/phy/fec/polar/polar_interleaver.h
# lib/include/srsran/phy/fec/polar/polar_rm.h
# lib/include/srsran/phy/fec/polar/test/polar_sets.h
# lib/include/srsran/phy/fec/polar/test/subchannel_allocation.h
# lib/include/srsran/phy/fec/softbuffer.h
# lib/include/srsran/phy/fec/turbo/rm_turbo.h
# lib/include/srsran/phy/fec/turbo/tc_interl.h
# lib/include/srsran/phy/fec/turbo/turbocoder.h
# lib/include/srsran/phy/fec/turbo/turbodecoder_gen.h
# lib/include/srsran/phy/fec/turbo/turbodecoder_impl.h
# lib/include/srsran/phy/fec/turbo/turbodecoder_iter.h
# lib/include/srsran/phy/fec/turbo/turbodecoder_sse.h
# lib/include/srsran/phy/fec/turbo/turbodecoder_win.h
# lib/include/srsran/phy/io/binsource.h
# lib/include/srsran/phy/io/filesink.h
# lib/include/srsran/phy/io/filesource.h
# lib/include/srsran/phy/io/netsink.h
# lib/include/srsran/phy/io/netsource.h
# lib/include/srsran/phy/mimo/layermap.h
# lib/include/srsran/phy/mimo/precoding.h
# lib/include/srsran/phy/modem/demod_hard.h
# lib/include/srsran/phy/modem/demod_soft.h
# lib/include/srsran/phy/modem/evm.h
# lib/include/srsran/phy/modem/mod.h
# lib/include/srsran/phy/modem/modem_table.h
# lib/include/srsran/phy/phch/cqi.h
# lib/include/srsran/phy/phch/csi.h
# lib/include/srsran/phy/phch/csi_cfg.h
# lib/include/srsran/phy/phch/dci_nr.h
# lib/include/srsran/phy/phch/mib_sl.h
# lib/include/srsran/phy/phch/npdsch_cfg.h
# lib/include/srsran/phy/phch/pdcch_nr.h
# lib/include/srsran/phy/phch/pdsch_cfg.h
# lib/include/srsran/phy/phch/phch_cfg_nr.h
# lib/include/srsran/phy/phch/prach.h
# lib/include/srsran/phy/phch/psbch.h
# lib/include/srsran/phy/phch/pssch.h
# lib/include/srsran/phy/phch/pucch_cfg.h
# lib/include/srsran/phy/phch/pucch_cfg_nr.h
# lib/include/srsran/phy/phch/pucch_nr.h
# lib/include/srsran/phy/phch/pucch_proc.h
# lib/include/srsran/phy/phch/pusch_cfg.h
# lib/include/srsran/phy/phch/pusch_nr.h
# lib/include/srsran/phy/phch/ra_dl_nr.h
# lib/include/srsran/phy/phch/ra_nbiot.h
# lib/include/srsran/phy/phch/ra_nr.h
# lib/include/srsran/phy/phch/ra_sl.h
# lib/include/srsran/phy/phch/ra_ul_nr.h
# lib/include/srsran/phy/phch/regs.h
# lib/include/srsran/phy/phch/sch_cfg_nr.h
# lib/include/srsran/phy/phch/sch_nr.h
# lib/include/srsran/phy/phch/sci.h
# lib/include/srsran/phy/phch/uci.h
# lib/include/srsran/phy/phch/uci_cfg_nr.h
# lib/include/srsran/phy/phch/uci_nr.h
# lib/include/srsran/phy/resampling/decim.h
# lib/include/srsran/phy/resampling/interp.h
# lib/include/srsran/phy/resampling/resample_arb.h
# lib/include/srsran/phy/resampling/resampler.h
# lib/include/srsran/phy/rf/rf.h
# lib/include/srsran/phy/rf/rf_utils.h
# lib/include/srsran/phy/sync/npss.h
# lib/include/srsran/phy/sync/nsss.h
# lib/include/srsran/phy/sync/psss.h
# lib/include/srsran/phy/sync/refsignal_dl_sync.h
# lib/include/srsran/phy/sync/sfo.h
# lib/include/srsran/phy/sync/sync.h
# lib/include/srsran/phy/sync/sync_nbiot.h
# lib/include/srsran/phy/ue/ue_mib_nbiot.h
# lib/include/srsran/phy/ue/ue_mib_sl.h
# lib/include/srsran/phy/ue/ue_phy.h
# lib/include/srsran/phy/utils/bit.h
# lib/include/srsran/phy/utils/cexptab.h
# lib/include/srsran/phy/utils/convolution.h
# lib/include/srsran/phy/utils/debug.h
# lib/include/srsran/phy/utils/filter.h
# lib/include/srsran/phy/utils/mat.h
# lib/include/srsran/phy/utils/phy_logger.h
# lib/include/srsran/phy/utils/primes.h
# lib/include/srsran/phy/utils/ringbuffer.h
# lib/include/srsran/phy/utils/simd.h
# lib/include/srsran/phy/utils/vector.h
# lib/include/srsran/radio/channel_mapping.h
# lib/include/srsran/radio/radio.h
# lib/include/srsran/radio/radio_base.h
# lib/include/srsran/radio/radio_metrics.h
# lib/include/srsran/radio/radio_null.h
# lib/include/srsran/radio/rf_buffer.h
# lib/include/srsran/radio/rf_timestamp.h
# lib/include/srsran/rrc/rrc_cfg_utils.h
# lib/include/srsran/srslog/context.h
# lib/include/srsran/srslog/detail/log_backend.h
# lib/include/srsran/srslog/detail/log_entry.h
# lib/include/srsran/srslog/detail/log_entry_metadata.h
# lib/include/srsran/srslog/detail/support/any.h
# lib/include/srsran/srslog/detail/support/error_string.h
# lib/include/srsran/srslog/detail/support/memory_buffer.h
# lib/include/srsran/srslog/detail/support/thread_utils.h
# lib/include/srsran/srslog/detail/support/tmp_utils.h
# lib/include/srsran/srslog/detail/support/work_queue.h
# lib/include/srsran/srslog/event_trace.h
# lib/include/srsran/srslog/formatter.h
# lib/include/srsran/srslog/logger.h
# lib/include/srsran/srslog/shared_types.h
# lib/include/srsran/srslog/sink.h
# lib/include/srsran/srslog/srslog.h
# lib/include/srsran/srslog/srslog_c.h
# lib/include/srsran/system/sys_metrics.h
# lib/include/srsran/system/sys_metrics_processor.h
# lib/include/srsran/test/ue_test_interfaces.h
# lib/include/srsran/upper/byte_buffer_queue.h
# lib/include/srsran/upper/gtpu.h
# lib/include/srsran/upper/ipv6.h
# lib/include/srsran/upper/pdcp.h
# lib/include/srsran/upper/pdcp_entity_base.h
# lib/include/srsran/upper/pdcp_entity_lte.h
# lib/include/srsran/upper/pdcp_entity_nr.h
# lib/include/srsran/upper/pdcp_metrics.h
# lib/include/srsran/upper/rlc.h
# lib/include/srsran/upper/rlc_am_base.h
# lib/include/srsran/upper/rlc_am_lte.h
# lib/include/srsran/upper/rlc_am_nr.h
# lib/include/srsran/upper/rlc_common.h
# lib/include/srsran/upper/rlc_metrics.h
# lib/include/srsran/upper/rlc_tm.h
# lib/include/srsran/upper/rlc_um_base.h
# lib/include/srsran/upper/rlc_um_lte.h
# lib/include/srsran/upper/rlc_um_nr.h
# lib/src/asn1/asn1_utils.cc
# lib/src/asn1/gtpc.cc
# lib/src/asn1/ngap.cc
# lib/src/asn1/rrc.cc
# lib/src/asn1/rrc/bcch_msg.cc
# lib/src/asn1/rrc/common.cc
# lib/src/asn1/rrc/common_ext.cc
# lib/src/asn1/rrc/dl_ccch_msg.cc
# lib/src/asn1/rrc/dl_dcch_msg.cc
# lib/src/asn1/rrc/ho_cmd.cc
# lib/src/asn1/rrc/meascfg.cc
# lib/src/asn1/rrc/paging.cc
# lib/src/asn1/rrc/phy_ded.cc
# lib/src/asn1/rrc/rr_common.cc
# lib/src/asn1/rrc/rr_ded.cc
# lib/src/asn1/rrc/security.cc
# lib/src/asn1/rrc/si.cc
# lib/src/asn1/rrc/uecap.cc
# lib/src/asn1/rrc/ul_ccch_msg.cc
# lib/src/asn1/rrc/ul_dcch_msg.cc
# lib/src/asn1/rrc_nbiot.cc
# lib/src/asn1/rrc_nr.cc
# lib/src/asn1/rrc_nr_utils.cc
# lib/src/asn1/rrc_utils.cc
# lib/src/asn1/s1ap.cc
# lib/src/common/arch_select.cc
# lib/src/common/backtrace.c
# lib/src/common/band_helper.cc
# lib/src/common/basic_vnf.cc
# lib/src/common/buffer_pool.cc
# lib/src/common/byte_buffer.cc
# lib/src/common/crash_handler.cc
# lib/src/common/enb_events.cc
# lib/src/common/gen_mch_tables.c
# lib/src/common/mac_pcap.cc
# lib/src/common/mac_pcap_base.cc
# lib/src/common/mac_pcap_net.cc
# lib/src/common/nas_pcap.cc
# lib/src/common/network_utils.cc
# lib/src/common/pcap.c
# lib/src/common/rlc_pcap.cc
# lib/src/common/s1ap_pcap.cc
# lib/src/common/s3g.cc
# lib/src/common/security.cc
# lib/src/common/standard_streams.cc
# lib/src/common/test/band_helper_test.cc
# lib/src/common/test/thread_pool_test.cc
# lib/src/common/test/thread_test.cc
# lib/src/common/thread_pool.cc
# lib/src/common/threads.c
# lib/src/common/time_prof.cc
# lib/src/common/tti_sync_cv.cc
# lib/src/common/version.c
# lib/src/common/zuc.cc
# lib/src/mac/mac_rar_pdu_nr.cc
# lib/src/mac/mac_sch_pdu_nr.cc
# lib/src/mac/pdu.cc
# lib/src/mac/pdu_queue.cc
# lib/src/phy/agc/agc.c
# lib/src/phy/ch_estimation/chest_common.c
# lib/src/phy/ch_estimation/chest_dl.c
# lib/src/phy/ch_estimation/chest_dl_nbiot.c
# lib/src/phy/ch_estimation/chest_sl.c
# lib/src/phy/ch_estimation/chest_ul.c
# lib/src/phy/ch_estimation/csi_rs.c
# lib/src/phy/ch_estimation/dmrs_pdcch.c
# lib/src/phy/ch_estimation/dmrs_pucch.c
# lib/src/phy/ch_estimation/dmrs_sch.c
# lib/src/phy/ch_estimation/refsignal_dl.c
# lib/src/phy/ch_estimation/refsignal_dl_nbiot.c
# lib/src/phy/ch_estimation/refsignal_ul.c
# lib/src/phy/ch_estimation/test/chest_nbiot_test_dl.c
# lib/src/phy/ch_estimation/test/chest_test_dl.c
# lib/src/phy/ch_estimation/test/chest_test_sl.c
# lib/src/phy/ch_estimation/test/chest_test_srs.c
# lib/src/phy/ch_estimation/test/chest_test_ul.c
# lib/src/phy/ch_estimation/test/csi_rs_test.c
# lib/src/phy/ch_estimation/test/dmrs_pdcch_test.c
# lib/src/phy/ch_estimation/test/dmrs_pdsch_test.c
# lib/src/phy/ch_estimation/test/refsignal_ul_test.c
# lib/src/phy/ch_estimation/wiener_dl.c
# lib/src/phy/channel/ch_awgn.c
# lib/src/phy/channel/channel.cc
# lib/src/phy/channel/delay.c
# lib/src/phy/channel/fading.c
# lib/src/phy/channel/gauss.c
# lib/src/phy/channel/gauss.h
# lib/src/phy/channel/hst.c
# lib/src/phy/channel/rlf.c
# lib/src/phy/channel/test/awgn_channel_test.c
# lib/src/phy/channel/test/delay_channel_test.c
# lib/src/phy/channel/test/fading_channel_test.c
# lib/src/phy/channel/test/hst_channel_test.c
# lib/src/phy/common/phy_common.c
# lib/src/phy/common/phy_common_nr.c
# lib/src/phy/common/phy_common_sl.c
# lib/src/phy/common/sequence.c
# lib/src/phy/common/test/sequence_test.c
# lib/src/phy/common/timestamp.c
# lib/src/phy/common/zc_sequence.c
# lib/src/phy/dft/dft_fftw.c
# lib/src/phy/dft/dft_precoding.c
# lib/src/phy/dft/ofdm.c
# lib/src/phy/dft/test/ofdm_test.c
# lib/src/phy/enb/enb_dl.c
# lib/src/phy/enb/enb_dl_nr.c
# lib/src/phy/enb/enb_ul.c
# lib/src/phy/fec/block/block.c
# lib/src/phy/fec/block/test/block_test.c
# lib/src/phy/fec/cbsegm.c
# lib/src/phy/fec/convolutional/convcoder.c
# lib/src/phy/fec/convolutional/parity.c
# lib/src/phy/fec/convolutional/parity.h
# lib/src/phy/fec/convolutional/test/viterbi_test.c
# lib/src/phy/fec/convolutional/test/viterbi_test.h
# lib/src/phy/fec/convolutional/viterbi.c
# lib/src/phy/fec/convolutional/viterbi37.h
# lib/src/phy/fec/crc.c
# lib/src/phy/fec/ldpc/base_graph.c
# lib/src/phy/fec/ldpc/ldpc_avx2_consts.h
# lib/src/phy/fec/ldpc/ldpc_avx512_consts.h
# lib/src/phy/fec/ldpc/ldpc_dec_all.h
# lib/src/phy/fec/ldpc/ldpc_dec_c.c
# lib/src/phy/fec/ldpc/ldpc_dec_c_avx2.c
# lib/src/phy/fec/ldpc/ldpc_dec_c_avx2_flood.c
# lib/src/phy/fec/ldpc/ldpc_dec_c_avx2long.c
# lib/src/phy/fec/ldpc/ldpc_dec_c_avx2long_flood.c
# lib/src/phy/fec/ldpc/ldpc_dec_c_avx512.c
# lib/src/phy/fec/ldpc/ldpc_dec_c_avx512long.c
# lib/src/phy/fec/ldpc/ldpc_dec_c_avx512long_flood.c
# lib/src/phy/fec/ldpc/ldpc_dec_c_flood.c
# lib/src/phy/fec/ldpc/ldpc_dec_f.c
# lib/src/phy/fec/ldpc/ldpc_dec_s.c
# lib/src/phy/fec/ldpc/ldpc_decoder.c
# lib/src/phy/fec/ldpc/ldpc_enc_all.h
# lib/src/phy/fec/ldpc/ldpc_enc_avx2.c
# lib/src/phy/fec/ldpc/ldpc_enc_avx2long.c
# lib/src/phy/fec/ldpc/ldpc_enc_avx512.c
# lib/src/phy/fec/ldpc/ldpc_enc_avx512long.c
# lib/src/phy/fec/ldpc/ldpc_enc_c.c
# lib/src/phy/fec/ldpc/ldpc_encoder.c
# lib/src/phy/fec/ldpc/ldpc_rm.c
# lib/src/phy/fec/ldpc/test/ldpc_chain_test.c
# lib/src/phy/fec/ldpc/test/ldpc_dec_avx2_test.c
# lib/src/phy/fec/ldpc/test/ldpc_dec_avx512_test.c
# lib/src/phy/fec/ldpc/test/ldpc_dec_c_test.c
# lib/src/phy/fec/ldpc/test/ldpc_dec_s_test.c
# lib/src/phy/fec/ldpc/test/ldpc_dec_test.c
# lib/src/phy/fec/ldpc/test/ldpc_enc_avx2_test.c
# lib/src/phy/fec/ldpc/test/ldpc_enc_avx512_test.c
# lib/src/phy/fec/ldpc/test/ldpc_enc_test.c
# lib/src/phy/fec/ldpc/test/ldpc_rm_chain_test.c
# lib/src/phy/fec/ldpc/test/ldpc_rm_test.c
# lib/src/phy/fec/polar/polar_chanalloc.c
# lib/src/phy/fec/polar/polar_code.c
# lib/src/phy/fec/polar/polar_decoder.c
# lib/src/phy/fec/polar/polar_decoder_ssc_all.c
# lib/src/phy/fec/polar/polar_decoder_ssc_all.h
# lib/src/phy/fec/polar/polar_decoder_ssc_c.c
# lib/src/phy/fec/polar/polar_decoder_ssc_c.h
# lib/src/phy/fec/polar/polar_decoder_ssc_c_avx2.c
# lib/src/phy/fec/polar/polar_decoder_ssc_c_avx2.h
# lib/src/phy/fec/polar/polar_decoder_ssc_f.c
# lib/src/phy/fec/polar/polar_decoder_ssc_f.h
# lib/src/phy/fec/polar/polar_decoder_ssc_s.c
# lib/src/phy/fec/polar/polar_decoder_ssc_s.h
# lib/src/phy/fec/polar/polar_decoder_vector.c
# lib/src/phy/fec/polar/polar_decoder_vector.h
# lib/src/phy/fec/polar/polar_decoder_vector_avx2.c
# lib/src/phy/fec/polar/polar_decoder_vector_avx2.h
# lib/src/phy/fec/polar/polar_encoder.c
# lib/src/phy/fec/polar/polar_encoder_avx2.c
# lib/src/phy/fec/polar/polar_encoder_avx2.h
# lib/src/phy/fec/polar/polar_encoder_pipelined.c
# lib/src/phy/fec/polar/polar_encoder_pipelined.h
# lib/src/phy/fec/polar/polar_interleaver.c
# lib/src/phy/fec/polar/polar_rm.c
# lib/src/phy/fec/polar/test/polar_chain_test.c
# lib/src/phy/fec/polar/test/polar_interleaver_gold.h
# lib/src/phy/fec/polar/test/polar_interleaver_test.c
# lib/src/phy/fec/polar/test/polar_sets.c
# lib/src/phy/fec/polar/test/polar_sets.h
# lib/src/phy/fec/polar/test/subchannel_allocation.c
# lib/src/phy/fec/polar/test/subchannel_allocation.h
# lib/src/phy/fec/softbuffer.c
# lib/src/phy/fec/test/crc_test.c
# lib/src/phy/fec/test/crc_test.h
# lib/src/phy/fec/turbo/rm_conv.c
# lib/src/phy/fec/turbo/rm_turbo.c
# lib/src/phy/fec/turbo/tc_interl_lte.c
# lib/src/phy/fec/turbo/tc_interl_umts.c
# lib/src/phy/fec/turbo/test/rm_conv_test.c
# lib/src/phy/fec/turbo/test/rm_turbo_test.c
# lib/src/phy/fec/turbo/test/turbocoder_test.c
# lib/src/phy/fec/turbo/test/turbodecoder_test.c
# lib/src/phy/fec/turbo/test/turbodecoder_test.h
# lib/src/phy/fec/turbo/turbocoder.c
# lib/src/phy/fec/turbo/turbodecoder.c
# lib/src/phy/fec/turbo/turbodecoder_gen.c
# lib/src/phy/fec/turbo/turbodecoder_sse.c
# lib/src/phy/fec/utils_avx2.h
# lib/src/phy/fec/utils_avx512.h
# lib/src/phy/io/binsource.c
# lib/src/phy/io/filesink.c
# lib/src/phy/io/filesource.c
# lib/src/phy/io/netsink.c
# lib/src/phy/io/netsource.c
# lib/src/phy/mimo/layermap.c
# lib/src/phy/mimo/precoding.c
# lib/src/phy/mimo/test/layermap_test.c
# lib/src/phy/mimo/test/pmi_select_test.c
# lib/src/phy/mimo/test/pmi_select_test.h
# lib/src/phy/mimo/test/precoder_test.c
# lib/src/phy/modem/demod_hard.c
# lib/src/phy/modem/demod_soft.c
# lib/src/phy/modem/hard_demod_lte.c
# lib/src/phy/modem/hard_demod_lte.h
# lib/src/phy/modem/lte_tables.c
# lib/src/phy/modem/lte_tables.h
# lib/src/phy/modem/mod.c
# lib/src/phy/modem/modem_table.c
# lib/src/phy/modem/test/modem_test.c
# lib/src/phy/modem/test/soft_demod_test.c
# lib/src/phy/phch/cqi.c
# lib/src/phy/phch/csi.c
# lib/src/phy/phch/dci.c
# lib/src/phy/phch/dci_nbiot.c
# lib/src/phy/phch/dci_nr.c
# lib/src/phy/phch/mib_sl.c
# lib/src/phy/phch/npbch.c
# lib/src/phy/phch/npdcch.c
# lib/src/phy/phch/npdsch.c
# lib/src/phy/phch/pbch.c
# lib/src/phy/phch/pcfich.c
# lib/src/phy/phch/pdcch.c
# lib/src/phy/phch/pdcch_nr.c
# lib/src/phy/phch/pdsch.c
# lib/src/phy/phch/pdsch_nr.c
# lib/src/phy/phch/phich.c
# lib/src/phy/phch/pmch.c
# lib/src/phy/phch/prach.c
# lib/src/phy/phch/prach_tables.h
# lib/src/phy/phch/prb_dl.c
# lib/src/phy/phch/prb_dl.h
# lib/src/phy/phch/psbch.c
# lib/src/phy/phch/pscch.c
# lib/src/phy/phch/pssch.c
# lib/src/phy/phch/pucch.c
# lib/src/phy/phch/pucch_cfg_nr.c
# lib/src/phy/phch/pucch_nr.c
# lib/src/phy/phch/pucch_proc.c
# lib/src/phy/phch/pusch.c
# lib/src/phy/phch/pusch_nr.c
# lib/src/phy/phch/ra.c
# lib/src/phy/phch/ra_dl.c
# lib/src/phy/phch/ra_dl_nr.c
# lib/src/phy/phch/ra_helper.h
# lib/src/phy/phch/ra_nbiot.c
# lib/src/phy/phch/ra_nr.c
# lib/src/phy/phch/ra_sl.c
# lib/src/phy/phch/ra_ul.c
# lib/src/phy/phch/ra_ul_nr.c
# lib/src/phy/phch/regs.c
# lib/src/phy/phch/sch.c
# lib/src/phy/phch/sch_nr.c
# lib/src/phy/phch/sci.c
# lib/src/phy/phch/sequences.c
# lib/src/phy/phch/tbs_tables.h
# lib/src/phy/phch/tbs_tables_nbiot.h
# lib/src/phy/phch/test/dci_nbiot_test.c
# lib/src/phy/phch/test/npbch_file_test.c
# lib/src/phy/phch/test/npbch_test.c
# lib/src/phy/phch/test/npdcch_file_test.c
# lib/src/phy/phch/test/npdcch_test.c
# lib/src/phy/phch/test/npdsch_npdcch_file_test.c
# lib/src/phy/phch/test/npdsch_test.c
# lib/src/phy/phch/test/pbch_file_test.c
# lib/src/phy/phch/test/pbch_test.c
# lib/src/phy/phch/test/pcfich_file_test.c
# lib/src/phy/phch/test/pcfich_test.c
# lib/src/phy/phch/test/pdcch_file_test.c
# lib/src/phy/phch/test/pdcch_nr_test.c
# lib/src/phy/phch/test/pdcch_test.c
# lib/src/phy/phch/test/pdsch_nr_test.c
# lib/src/phy/phch/test/pdsch_pdcch_file_test.c
# lib/src/phy/phch/test/pdsch_test.c
# lib/src/phy/phch/test/phich_file_test.c
# lib/src/phy/phch/test/phich_test.c
# lib/src/phy/phch/test/pmch_file_test.c
# lib/src/phy/phch/test/pmch_test.c
# lib/src/phy/phch/test/prach_test.c
# lib/src/phy/phch/test/prach_test_multi.c
# lib/src/phy/phch/test/prach_test_usrp.c
# lib/src/phy/phch/test/psbch_file_test.c
# lib/src/phy/phch/test/psbch_test.c
# lib/src/phy/phch/test/pscch_test.c
# lib/src/phy/phch/test/pssch_pscch_file_test.c
# lib/src/phy/phch/test/pssch_test.c
# lib/src/phy/phch/test/pucch_nr_test.c
# lib/src/phy/phch/test/pucch_test.c
# lib/src/phy/phch/test/pusch_nr_test.c
# lib/src/phy/phch/test/pusch_test.c
# lib/src/phy/phch/test/ra_nr_test.c
# lib/src/phy/phch/test/sch_nr_test.c
# lib/src/phy/phch/uci.c
# lib/src/phy/phch/uci_nr.c
# lib/src/phy/resampling/decim.c
# lib/src/phy/resampling/interp.c
# lib/src/phy/resampling/resample_arb.c
# lib/src/phy/resampling/resampler.c
# lib/src/phy/resampling/test/resample_arb_bench.c
# lib/src/phy/resampling/test/resample_arb_test.c
# lib/src/phy/resampling/test/resampler_test.c
# lib/src/phy/rf/rf_blade_imp.c
# lib/src/phy/rf/rf_blade_imp.h
# lib/src/phy/rf/rf_dev.h
# lib/src/phy/rf/rf_helper.h
# lib/src/phy/rf/rf_imp.c
# lib/src/phy/rf/rf_soapy_imp.c
# lib/src/phy/rf/rf_soapy_imp.h
# lib/src/phy/rf/rf_uhd_generic.h
# lib/src/phy/rf/rf_uhd_imp.cc
# lib/src/phy/rf/rf_uhd_imp.h
# lib/src/phy/rf/rf_uhd_rfnoc.h
# lib/src/phy/rf/rf_uhd_safe.h
# lib/src/phy/rf/rf_utils.c
# lib/src/phy/rf/rf_zmq_imp.c
# lib/src/phy/rf/rf_zmq_imp.h
# lib/src/phy/rf/rf_zmq_imp_rx.c
# lib/src/phy/rf/rf_zmq_imp_trx.h
# lib/src/phy/rf/rf_zmq_imp_tx.c
# lib/src/phy/rf/rf_zmq_test.c
# lib/src/phy/scrambling/scrambling.c
# lib/src/phy/scrambling/test/scrambling_test.c
# lib/src/phy/sync/cfo.c
# lib/src/phy/sync/cp.c
# lib/src/phy/sync/find_sss.c
# lib/src/phy/sync/gen_sss.c
# lib/src/phy/sync/npss.c
# lib/src/phy/sync/nsss.c
# lib/src/phy/sync/pss.c
# lib/src/phy/sync/psss.c
# lib/src/phy/sync/refsignal_dl_sync.c
# lib/src/phy/sync/sfo.c
# lib/src/phy/sync/sss.c
# lib/src/phy/sync/ssss.c
# lib/src/phy/sync/sync.c
# lib/src/phy/sync/sync_nbiot.c
# lib/src/phy/sync/test/cfo_test.c
# lib/src/phy/sync/test/npss_file.c
# lib/src/phy/sync/test/npss_test.c
# lib/src/phy/sync/test/npss_usrp.c
# lib/src/phy/sync/test/nsss_test.c
# lib/src/phy/sync/test/nsss_usrp.c
# lib/src/phy/sync/test/pss_file.c
# lib/src/phy/sync/test/pss_usrp.c
# lib/src/phy/sync/test/psss_file_test.c
# lib/src/phy/sync/test/sync_nbiot_test.c
# lib/src/phy/sync/test/sync_sl_test.c
# lib/src/phy/sync/test/sync_test.c
# lib/src/phy/ue/test/gen_ack_test.c
# lib/src/phy/ue/test/pucch_resource_test.c
# lib/src/phy/ue/test/ue_dl_nbiot_test.c
# lib/src/phy/ue/test/ue_mib_sync_test_nbiot_usrp.c
# lib/src/phy/ue/test/ue_sync_test_nbiot_usrp.c
# lib/src/phy/ue/ue_cell_search.c
# lib/src/phy/ue/ue_cell_search_nbiot.c
# lib/src/phy/ue/ue_dl.c
# lib/src/phy/ue/ue_dl_nbiot.c
# lib/src/phy/ue/ue_dl_nr.c
# lib/src/phy/ue/ue_mib.c
# lib/src/phy/ue/ue_mib_nbiot.c
# lib/src/phy/ue/ue_mib_sl.c
# lib/src/phy/ue/ue_sync.c
# lib/src/phy/ue/ue_sync_nbiot.c
# lib/src/phy/ue/ue_ul.c
# lib/src/phy/ue/ue_ul_nr.c
# lib/src/phy/utils/bit.c
# lib/src/phy/utils/cexptab.c
# lib/src/phy/utils/convolution.c
# lib/src/phy/utils/debug.c
# lib/src/phy/utils/filter.c
# lib/src/phy/utils/mat.c
# lib/src/phy/utils/phy_logger.c
# lib/src/phy/utils/primes.c
# lib/src/phy/utils/random.cpp
# lib/src/phy/utils/ringbuffer.c
# lib/src/phy/utils/test/dft_test.c
# lib/src/phy/utils/test/mat_test.c
# lib/src/phy/utils/test/ring_buffer_test.c
# lib/src/phy/utils/test/vector_test.c
# lib/src/phy/utils/vector.c
# lib/src/phy/utils/vector_simd.c
# lib/src/radio/channel_mapping.cc
# lib/src/radio/radio.cc
# lib/src/radio/test/benchmark_radio.cc
# lib/src/srslog/backend_worker.cpp
# lib/src/srslog/backend_worker.h
# lib/src/srslog/bundled/fmt/CMakeLists.txt
# lib/src/srslog/event_trace.cpp
# lib/src/srslog/formatters/CMakeLists.txt
# lib/src/srslog/formatters/json_formatter.cpp
# lib/src/srslog/formatters/json_formatter.h
# lib/src/srslog/formatters/text_formatter.cpp
# lib/src/srslog/formatters/text_formatter.h
# lib/src/srslog/log_backend_impl.h
# lib/src/srslog/object_repository.h
# lib/src/srslog/sinks/buffered_file_sink.h
# lib/src/srslog/sinks/file_sink.h
# lib/src/srslog/sinks/file_utils.h
# lib/src/srslog/sinks/stream_sink.h
# lib/src/srslog/srslog.cpp
# lib/src/srslog/srslog_c.cpp
# lib/src/srslog/srslog_instance.h
# lib/src/system/sys_metrics_processor.cc
# lib/src/upper/gtpu.cc
# lib/src/upper/pdcp.cc
# lib/src/upper/pdcp_entity_base.cc
# lib/src/upper/pdcp_entity_lte.cc
# lib/src/upper/pdcp_entity_nr.cc
# lib/src/upper/rlc.cc
# lib/src/upper/rlc_am_base.cc
# lib/src/upper/rlc_am_lte.cc
# lib/src/upper/rlc_am_nr.cc
# lib/src/upper/rlc_tm.cc
# lib/src/upper/rlc_um_base.cc
# lib/src/upper/rlc_um_lte.cc
# lib/src/upper/rlc_um_nr.cc
# lib/test/adt/bounded_bitset_test.cc
# lib/test/adt/bounded_vector_test.cc
# lib/test/adt/circular_buffer_test.cc
# lib/test/adt/expected_test.cc
# lib/test/adt/interval_test.cc
# lib/test/adt/mem_pool_test.cc
# lib/test/adt/observer_test.cc
# lib/test/adt/scope_exit_test.cc
# lib/test/adt/span_test.cc
# lib/test/asn1/asn1_utils_test.cc
# lib/test/asn1/nas_decoder.cc
# lib/test/asn1/ngap_test.cc
# lib/test/asn1/rrc_asn1_decoder.cc
# lib/test/asn1/rrc_test.cc
# lib/test/asn1/s1ap_test.cc
# lib/test/asn1/srsran_asn1_nas_test.cc
# lib/test/asn1/srsran_asn1_rrc_dl_ccch_test.cc
# lib/test/asn1/srsran_asn1_rrc_dl_dcch_test.cc
# lib/test/asn1/srsran_asn1_rrc_mcch_test.cc
# lib/test/asn1/srsran_asn1_rrc_meas_test.cc
# lib/test/asn1/srsran_asn1_rrc_nr_test.cc
# lib/test/asn1/srsran_asn1_rrc_ul_dcch_test.cc
# lib/test/common/bcd_helpers_test.cc
# lib/test/common/byte_buffer_queue_test.cc
# lib/test/common/choice_type_test.cc
# lib/test/common/fsm_test.cc
# lib/test/common/mac_pcap_net_test.cc
# lib/test/common/multiqueue_test.cc
# lib/test/common/network_utils_test.cc
# lib/test/common/pnf_bridge.cc
# lib/test/common/pnf_dummy.cc
# lib/test/common/stack_procedure_test.cc
# lib/test/common/task_scheduler_test.cc
# lib/test/common/test_eea1.cc
# lib/test/common/test_eea2.cc
# lib/test/common/test_eea3.cc
# lib/test/common/test_eia1.cc
# lib/test/common/test_eia3.cc
# lib/test/common/test_f12345.cc
# lib/test/common/timeout_test.cc
# lib/test/common/timer_test.cc
# lib/test/common/tti_point_test.cc
# lib/test/mac/mac_pcap_test.cc
# lib/test/mac/mac_pdu_nr_test.cc
# lib/test/mac/pdu_test.cc
# lib/test/phy/phy_dl_nr_test.c
# lib/test/phy/phy_dl_test.c
# lib/test/phy/pucch_ca_test.c
# lib/test/srslog/any_test.cpp
# lib/test/srslog/context_test.cpp
# lib/test/srslog/event_trace_test.cpp
# lib/test/srslog/file_sink_test.cpp
# lib/test/srslog/file_test_utils.h
# lib/test/srslog/file_utils_test.cpp
# lib/test/srslog/json_formatter_test.cpp
# lib/test/srslog/log_backend_test.cpp
# lib/test/srslog/log_channel_test.cpp
# lib/test/srslog/logger_test.cpp
# lib/test/srslog/srslog_test.cpp
# lib/test/srslog/test_dummies.h
# lib/test/srslog/testing_helpers.h
# lib/test/srslog/text_formatter_test.cpp
# lib/test/upper/pdcp_base_test.h
# lib/test/upper/pdcp_lte_test.h
# lib/test/upper/pdcp_lte_test_rx.cc
# lib/test/upper/pdcp_nr_test.h
# lib/test/upper/pdcp_nr_test_discard_sdu.cc
# lib/test/upper/pdcp_nr_test_rx.cc
# lib/test/upper/pdcp_nr_test_tx.cc
# lib/test/upper/rlc_am_control_test.cc
# lib/test/upper/rlc_am_data_test.cc
# lib/test/upper/rlc_am_nr_pdu_test.cc
# lib/test/upper/rlc_am_test.cc
# lib/test/upper/rlc_common_test.cc
# lib/test/upper/rlc_stress_test.cc
# lib/test/upper/rlc_test_common.h
# lib/test/upper/rlc_um_data_test.cc
# lib/test/upper/rlc_um_nr_pdu_test.cc
# lib/test/upper/rlc_um_nr_test.cc
# lib/test/upper/rlc_um_test.cc
# srsenb/hdr/cfg_parser.h
# srsenb/hdr/enb.h
# srsenb/hdr/metrics_csv.h
# srsenb/hdr/metrics_json.h
# srsenb/hdr/metrics_stdout.h
# srsenb/hdr/parser.h
# srsenb/hdr/phy/enb_phy_base.h
# srsenb/hdr/phy/lte/cc_worker.h
# srsenb/hdr/phy/lte/sf_worker.h
# srsenb/hdr/phy/lte/worker_pool.h
# srsenb/hdr/phy/nr/cc_worker.h
# srsenb/hdr/phy/nr/sf_worker.h
# srsenb/hdr/phy/nr/worker_pool.h
# srsenb/hdr/phy/phy.h
# srsenb/hdr/phy/phy_common.h
# srsenb/hdr/phy/phy_interfaces.h
# srsenb/hdr/phy/phy_metrics.h
# srsenb/hdr/phy/prach_worker.h
# srsenb/hdr/phy/txrx.h
# srsenb/hdr/phy/vnf_phy_nr.h
# srsenb/hdr/stack/enb_stack_base.h
# srsenb/hdr/stack/enb_stack_lte.h
# srsenb/hdr/stack/gnb_stack_nr.h
# srsenb/hdr/stack/mac/mac.h
# srsenb/hdr/stack/mac/mac_metrics.h
# srsenb/hdr/stack/mac/mac_nr.h
# srsenb/hdr/stack/mac/sched.h
# srsenb/hdr/stack/mac/sched_carrier.h
# srsenb/hdr/stack/mac/sched_common.h
# srsenb/hdr/stack/mac/sched_grid.h
# srsenb/hdr/stack/mac/sched_helpers.h
# srsenb/hdr/stack/mac/sched_phy_ch/sched_dci.h
# srsenb/hdr/stack/mac/sched_phy_ch/sched_result.h
# srsenb/hdr/stack/mac/sched_phy_ch/sf_cch_allocator.h
# srsenb/hdr/stack/mac/sched_ue.h
# srsenb/hdr/stack/mac/sched_ue_ctrl/sched_harq.h
# srsenb/hdr/stack/mac/sched_ue_ctrl/sched_lch.h
# srsenb/hdr/stack/mac/sched_ue_ctrl/sched_ue_cell.h
# srsenb/hdr/stack/mac/sched_ue_ctrl/tpc.h
# srsenb/hdr/stack/mac/schedulers/sched_base.h
# srsenb/hdr/stack/mac/schedulers/sched_time_pf.h
# srsenb/hdr/stack/mac/schedulers/sched_time_rr.h
# srsenb/hdr/stack/mac/ta.h
# srsenb/hdr/stack/mac/ue.h
# srsenb/hdr/stack/rrc/mac_controller.h
# srsenb/hdr/stack/rrc/rrc.h
# srsenb/hdr/stack/rrc/rrc_bearer_cfg.h
# srsenb/hdr/stack/rrc/rrc_cell_cfg.h
# srsenb/hdr/stack/rrc/rrc_config.h
# srsenb/hdr/stack/rrc/rrc_config_common.h
# srsenb/hdr/stack/rrc/rrc_metrics.h
# srsenb/hdr/stack/rrc/rrc_mobility.h
# srsenb/hdr/stack/rrc/rrc_nr.h
# srsenb/hdr/stack/rrc/rrc_ue.h
# srsenb/hdr/stack/rrc/ue_meas_cfg.h
# srsenb/hdr/stack/rrc/ue_rr_cfg.h
# srsenb/hdr/stack/upper/common_enb.h
# srsenb/hdr/stack/upper/gtpu.h
# srsenb/hdr/stack/upper/pdcp.h
# srsenb/hdr/stack/upper/pdcp_nr.h
# srsenb/hdr/stack/upper/rlc.h
# srsenb/hdr/stack/upper/rlc_nr.h
# srsenb/hdr/stack/upper/s1ap.h
# srsenb/hdr/stack/upper/s1ap_metrics.h
# srsenb/hdr/stack/upper/sdap.h
# srsenb/src/enb.cc
# srsenb/src/enb_cfg_parser.cc
# srsenb/src/enb_cfg_parser.h
# srsenb/src/main.cc
# srsenb/src/metrics_csv.cc
# srsenb/src/metrics_json.cc
# srsenb/src/metrics_stdout.cc
# srsenb/src/parser.cc
# srsenb/src/phy/lte/sf_worker.cc
# srsenb/src/phy/lte/worker_pool.cc
# srsenb/src/phy/nr/cc_worker.cc
# srsenb/src/phy/nr/sf_worker.cc
# srsenb/src/phy/nr/worker_pool.cc
# srsenb/src/phy/phy.cc
# srsenb/src/phy/phy_common.cc
# srsenb/src/phy/prach_worker.cc
# srsenb/src/phy/txrx.cc
# srsenb/src/phy/vnf_phy_nr.cc
# srsenb/src/stack/enb_stack_lte.cc
# srsenb/src/stack/gnb_stack_nr.cc
# srsenb/src/stack/mac/mac.cc
# srsenb/src/stack/mac/mac_nr.cc
# srsenb/src/stack/mac/sched.cc
# srsenb/src/stack/mac/sched_carrier.cc
# srsenb/src/stack/mac/sched_grid.cc
# srsenb/src/stack/mac/sched_helpers.cc
# srsenb/src/stack/mac/sched_phy_ch/sched_dci.cc
# srsenb/src/stack/mac/sched_phy_ch/sf_cch_allocator.cc
# srsenb/src/stack/mac/sched_ue.cc
# srsenb/src/stack/mac/sched_ue_ctrl/sched_harq.cc
# srsenb/src/stack/mac/sched_ue_ctrl/sched_lch.cc
# srsenb/src/stack/mac/sched_ue_ctrl/sched_ue_cell.cc
# srsenb/src/stack/mac/schedulers/sched_base.cc
# srsenb/src/stack/mac/schedulers/sched_time_pf.cc
# srsenb/src/stack/mac/schedulers/sched_time_rr.cc
# srsenb/src/stack/mac/ue.cc
# srsenb/src/stack/rrc/mac_controller.cc
# srsenb/src/stack/rrc/rrc.cc
# srsenb/src/stack/rrc/rrc_bearer_cfg.cc
# srsenb/src/stack/rrc/rrc_cell_cfg.cc
# srsenb/src/stack/rrc/rrc_mobility.cc
# srsenb/src/stack/rrc/rrc_nr.cc
# srsenb/src/stack/rrc/rrc_ue.cc
# srsenb/src/stack/rrc/ue_meas_cfg.cc
# srsenb/src/stack/rrc/ue_rr_cfg.cc
# srsenb/src/stack/upper/gtpu.cc
# srsenb/src/stack/upper/pdcp.cc
# srsenb/src/stack/upper/pdcp_nr.cc
# srsenb/src/stack/upper/rlc.cc
# srsenb/src/stack/upper/rlc_nr.cc
# srsenb/src/stack/upper/s1ap.cc
# srsenb/src/stack/upper/sdap.cc
# srsenb/test/common/dummy_classes.h
# srsenb/test/common/dummy_nr_classes.h
# srsenb/test/enb_metrics_test.cc
# srsenb/test/mac/sched_benchmark.cc
# srsenb/test/mac/sched_ca_test.cc
# srsenb/test/mac/sched_common_test_suite.cc
# srsenb/test/mac/sched_common_test_suite.h
# srsenb/test/mac/sched_dci_test.cc
# srsenb/test/mac/sched_grid_test.cc
# srsenb/test/mac/sched_lc_ch_test.cc
# srsenb/test/mac/sched_sim_ue.cc
# srsenb/test/mac/sched_sim_ue.h
# srsenb/test/mac/sched_test_common.cc
# srsenb/test/mac/sched_test_common.h
# srsenb/test/mac/sched_test_rand.cc
# srsenb/test/mac/sched_test_utils.h
# srsenb/test/mac/sched_tpc_test.cc
# srsenb/test/mac/sched_ue_ded_test_suite.cc
# srsenb/test/mac/sched_ue_ded_test_suite.h
# srsenb/test/phy/enb_phy_test.cc
# srsenb/test/rrc/rrc_nr_test.cc
# srsenb/test/upper/erab_setup_test.cc
# srsenb/test/upper/gtpu_test.cc
# srsenb/test/upper/plmn_test.cc
# srsenb/test/upper/rrc_meascfg_test.cc
# srsenb/test/upper/rrc_mobility_test.cc
# srsenb/test/upper/test_helpers.cc
# srsenb/test/upper/test_helpers.h
# srsepc/hdr/hss/hss.h
# srsepc/hdr/mbms-gw/mbms-gw.h
# srsepc/hdr/mme/mme.h
# srsepc/hdr/mme/mme_gtpc.h
# srsepc/hdr/mme/nas.h
# srsepc/hdr/mme/s1ap.h
# srsepc/hdr/mme/s1ap_common.h
# srsepc/hdr/mme/s1ap_ctx_mngmt_proc.h
# srsepc/hdr/mme/s1ap_erab_mngmt_proc.h
# srsepc/hdr/mme/s1ap_mngmt_proc.h
# srsepc/hdr/mme/s1ap_nas_transport.h
# srsepc/hdr/mme/s1ap_paging.h
# srsepc/hdr/spgw/gtpc.h
# srsepc/hdr/spgw/gtpu.h
# srsepc/hdr/spgw/spgw.h
# srsepc/src/hss/hss.cc
# srsepc/src/main.cc
# srsepc/src/mbms-gw/main.cc
# srsepc/src/mbms-gw/mbms-gw.cc
# srsepc/src/mme/mme.cc
# srsepc/src/mme/mme_gtpc.cc
# srsepc/src/mme/nas.cc
# srsepc/src/mme/s1ap.cc
# srsepc/src/mme/s1ap_ctx_mngmt_proc.cc
# srsepc/src/mme/s1ap_erab_mngmt_proc.cc
# srsepc/src/mme/s1ap_mngmt_proc.cc
# srsepc/src/mme/s1ap_nas_transport.cc
# srsepc/src/mme/s1ap_paging.cc
# srsepc/src/spgw/gtpc.cc
# srsepc/src/spgw/gtpu.cc
# srsepc/src/spgw/spgw.cc
# srsue/hdr/metrics_csv.h
# srsue/hdr/metrics_stdout.h
# srsue/hdr/phy/lte/cc_worker.h
# srsue/hdr/phy/lte/sf_worker.h
# srsue/hdr/phy/lte/worker_pool.h
# srsue/hdr/phy/nr/cc_worker.h
# srsue/hdr/phy/nr/sf_worker.h
# srsue/hdr/phy/nr/state.h
# srsue/hdr/phy/nr/worker_pool.h
# srsue/hdr/phy/phy.h
# srsue/hdr/phy/phy_common.h
# srsue/hdr/phy/phy_metrics.h
# srsue/hdr/phy/prach.h
# srsue/hdr/phy/scell/intra_measure.h
# srsue/hdr/phy/scell/scell_recv.h
# srsue/hdr/phy/scell/scell_state.h
# srsue/hdr/phy/scell/scell_sync.h
# srsue/hdr/phy/search.h
# srsue/hdr/phy/sfn_sync.h
# srsue/hdr/phy/sync.h
# srsue/hdr/phy/sync_state.h
# srsue/hdr/phy/ta_control.h
# srsue/hdr/phy/ue_lte_phy_base.h
# srsue/hdr/phy/ue_nr_phy_base.h
# srsue/hdr/phy/ue_phy_base.h
# srsue/hdr/phy/vnf_phy_nr.h
# srsue/hdr/stack/mac/demux.h
# srsue/hdr/stack/mac/dl_harq.h
# srsue/hdr/stack/mac/dl_sps.h
# srsue/hdr/stack/mac/mac.h
# srsue/hdr/stack/mac/mac_metrics.h
# srsue/hdr/stack/mac/mux.h
# srsue/hdr/stack/mac/proc.h
# srsue/hdr/stack/mac/proc_bsr.h
# srsue/hdr/stack/mac/proc_phr.h
# srsue/hdr/stack/mac/proc_ra.h
# srsue/hdr/stack/mac/proc_sr.h
# srsue/hdr/stack/mac/ul_harq.h
# srsue/hdr/stack/mac/ul_sps.h
# srsue/hdr/stack/mac_nr/mac_nr.h
# srsue/hdr/stack/mac_nr/mux_nr.h
# srsue/hdr/stack/rrc/phy_controller.h
# srsue/hdr/stack/rrc/rrc.h
# srsue/hdr/stack/rrc/rrc_cell.h
# srsue/hdr/stack/rrc/rrc_common.h
# srsue/hdr/stack/rrc/rrc_meas.h
# srsue/hdr/stack/rrc/rrc_metrics.h
# srsue/hdr/stack/rrc/rrc_nr.h
# srsue/hdr/stack/rrc/rrc_procedures.h
# srsue/hdr/stack/ue_stack_base.h
# srsue/hdr/stack/ue_stack_lte.h
# srsue/hdr/stack/ue_stack_nr.h
# srsue/hdr/stack/upper/gw.h
# srsue/hdr/stack/upper/gw_metrics.h
# srsue/hdr/stack/upper/nas.h
# srsue/hdr/stack/upper/nas_config.h
# srsue/hdr/stack/upper/nas_emm_state.h
# srsue/hdr/stack/upper/nas_idle_procedures.h
# srsue/hdr/stack/upper/nas_metrics.h
# srsue/hdr/stack/upper/pcsc_usim.h
# srsue/hdr/stack/upper/tft_packet_filter.h
# srsue/hdr/stack/upper/usim.h
# srsue/hdr/stack/upper/usim_base.h
# srsue/hdr/ue.h
# srsue/hdr/ue_metrics_interface.h
# srsue/src/main.cc
# srsue/src/metrics_csv.cc
# srsue/src/metrics_stdout.cc
# srsue/src/phy/lte/cc_worker.cc
# srsue/src/phy/lte/sf_worker.cc
# srsue/src/phy/lte/worker_pool.cc
# srsue/src/phy/nr/cc_worker.cc
# srsue/src/phy/nr/sf_worker.cc
# srsue/src/phy/nr/worker_pool.cc
# srsue/src/phy/phy.cc
# srsue/src/phy/phy_common.cc
# srsue/src/phy/prach.cc
# srsue/src/phy/scell/intra_measure.cc
# srsue/src/phy/scell/scell_recv.cc
# srsue/src/phy/search.cc
# srsue/src/phy/sfn_sync.cc
# srsue/src/phy/sync.cc
# srsue/src/phy/vnf_phy_nr.cc
# srsue/src/set_net_admin_caps.cc
# srsue/src/stack/mac/demux.cc
# srsue/src/stack/mac/dl_harq.cc
# srsue/src/stack/mac/mac.cc
# srsue/src/stack/mac/mux.cc
# srsue/src/stack/mac/proc_bsr.cc
# srsue/src/stack/mac/proc_phr.cc
# srsue/src/stack/mac/proc_ra.cc
# srsue/src/stack/mac/proc_sr.cc
# srsue/src/stack/mac/ul_harq.cc
# srsue/src/stack/mac_nr/mac_nr.cc
# srsue/src/stack/mac_nr/mux_nr.cc
# srsue/src/stack/rrc/phy_controller.cc
# srsue/src/stack/rrc/rrc.cc
# srsue/src/stack/rrc/rrc_cell.cc
# srsue/src/stack/rrc/rrc_meas.cc
# srsue/src/stack/rrc/rrc_nr.cc
# srsue/src/stack/rrc/rrc_procedures.cc
# srsue/src/stack/ue_stack_lte.cc
# srsue/src/stack/ue_stack_nr.cc
# srsue/src/stack/upper/gw.cc
# srsue/src/stack/upper/nas.cc
# srsue/src/stack/upper/nas_emm_state.cc
# srsue/src/stack/upper/nas_idle_procedures.cc
# srsue/src/stack/upper/pcsc_usim.cc
# srsue/src/stack/upper/tft_packet_filter.cc
# srsue/src/stack/upper/usim.cc
# srsue/src/stack/upper/usim_base.cc
# srsue/src/ue.cc
# srsue/test/mac_nr/proc_ra_nr_test.cc
# srsue/test/mac_test.cc
# srsue/test/metrics_test.cc
# srsue/test/phy/scell_search_test.cc
# srsue/test/phy/ue_phy_test.cc
# srsue/test/ttcn3/hdr/dut_utils.h
# srsue/test/ttcn3/hdr/lte_ttcn3_phy.h
# srsue/test/ttcn3/hdr/swappable_sink.h
# srsue/test/ttcn3/hdr/ttcn3_common.h
# srsue/test/ttcn3/hdr/ttcn3_drb_interface.h
# srsue/test/ttcn3/hdr/ttcn3_helpers.h
# srsue/test/ttcn3/hdr/ttcn3_interfaces.h
# srsue/test/ttcn3/hdr/ttcn3_ip_ctrl_interface.h
# srsue/test/ttcn3/hdr/ttcn3_ip_sock_interface.h
# srsue/test/ttcn3/hdr/ttcn3_port_handler.h
# srsue/test/ttcn3/hdr/ttcn3_srb_interface.h
# srsue/test/ttcn3/hdr/ttcn3_sys_interface.h
# srsue/test/ttcn3/hdr/ttcn3_syssim.h
# srsue/test/ttcn3/hdr/ttcn3_ue.h
# srsue/test/ttcn3/hdr/ttcn3_ut_interface.h
# srsue/test/ttcn3/src/lte_ttcn3_phy.cc
# srsue/test/ttcn3/src/ttcn3_dut.cc
# srsue/test/ttcn3/src/ttcn3_syssim.cc
# srsue/test/ttcn3/src/ttcn3_ue.cc
# srsue/test/ttcn3/test/rapidjson_test.cc
# srsue/test/ttcn3/test/ttcn3_if_handler_test.cc
# srsue/test/upper/nas_test.cc
# srsue/test/upper/pcsc_usim_test.cc
# srsue/test/upper/rrc_cell_test.cc
# srsue/test/upper/rrc_meas_test.cc
# srsue/test/upper/rrc_phy_ctrl_test.cc
# srsue/test/upper/rrc_reconfig_test.cc
# srsue/test/upper/tft_test.cc
# srsue/test/upper/ue_rrc_nr_test.cc
# srsue/test/upper/usim_test.cc
4 years ago
Andre Puschmann
bde7b49ca3
ue,mac_nr: add basic SR procedure
...
the current implementation support only one SR config
and doesn't support the prohibit timer
4 years ago
David Rupprecht
8c86d2084d
Adding NR phy config RRC parsing
...
Added error handling
Reworked flattening error handling
4 years ago
Andre Puschmann
1a0891df51
all: check return value of make_byte_buffer() and handle them safely
4 years ago
srsLTE codebot
80e17d2986
Merge branch 'next' into agpl_next
...
# Conflicts:
# lib/src/srslog/sinks/single_write_file_sink.h
4 years ago
Codebot
4523ee6087
rename srsLTE to srsRAN
4 years ago
Xavier Arteaga
2782d96170
SRSUE: compute speed from TA commands
4 years ago
srsLTE codebot
6ccccade9e
Merge branch 'next' into agpl_next
...
# Conflicts:
# lib/include/srslte/common/log.h
# lib/include/srslte/common/log_filter.h
# lib/include/srslte/common/logger.h
# lib/include/srslte/common/logger_srslog_wrapper.h
# lib/include/srslte/common/logmap.h
# lib/src/common/log_filter.cc
# lib/src/common/logger_srslog_wrapper.cc
# lib/src/common/logmap.cc
# lib/test/common/log_filter_test.cc
# lib/test/common/test_common_test.cc
4 years ago
Francisco
3e9f93eb8a
refactor - remove old log_filter and logmap libraries from the codebase
4 years ago
srsLTE codebot
d290fe9714
Merge branch 'next' into agpl_next
...
# Conflicts:
# srsue/src/phy/nr/state.cc
4 years ago
David Rupprecht
bb3e87302d
Added new pcap enable option and mac nr
4 years ago
Xavier Arteaga
1e55d68b55
Removed set RNTI from API
4 years ago
Francisco
b329e25bbb
move ue phy interfaces to separate interfaces header file
4 years ago
Francisco
13d805ef56
move ue rrc interfaces to separate interfaces header file
4 years ago
Francisco
b1706b9197
move ue nas interfaces to separate interfaces header file
4 years ago
Francisco
b8bd869d0f
move ue rlc interfaces to separate interfaces header file
4 years ago
Francisco
a988351f46
move ue pdcp interfaces to separate interfaces header file
4 years ago
Francisco
ea04104e8e
move ue gw interfaces to separate interfaces header file
4 years ago
Francisco
186285ffd3
move ue usim interfaces to separate interfaces header file
4 years ago
faluco
eaf20fa4f3
- Removed some logger injections in the ue app.
...
- Removed old logger setup code not needed anymore.
4 years ago
faluco
3ce7454105
- Remove old loggers from ue_stack_lte, ue gw.
...
- Remove old loggers setting up for these classes.
4 years ago
Codebot
eb8d47ab22
Adding AGPL copyright to new files
4 years ago
srsLTE codebot
3daa9f3fc3
Merge branch 'next' into agpl_next
...
# Conflicts:
# lib/include/srslte/common/mac_nr_pcap.h
# lib/include/srslte/phy/ue/ue_ul_nr_data.h
# lib/src/common/mac_nr_pcap.cc
# lib/src/phy/ue/ue_ul_nr_data.c
# srsenb/hdr/phy/lte/worker_pool.h
# srsenb/hdr/phy/nr/cc_worker.h
# srsenb/hdr/phy/nr/sf_worker.h
# srsenb/hdr/phy/nr/worker_pool.h
# srsenb/src/phy/lte/worker_pool.cc
# srsenb/src/phy/nr/cc_worker.cc
# srsenb/src/phy/nr/sf_worker.cc
# srsenb/src/phy/nr/worker_pool.cc
# srsue/hdr/phy/lte/worker_pool.h
# srsue/hdr/phy/nr/cc_worker.h
# srsue/hdr/phy/nr/sf_worker.h
# srsue/hdr/phy/nr/worker_pool.h
# srsue/hdr/stack/mac/mac_nr.h
# srsue/src/phy/lte/worker_pool.cc
# srsue/src/phy/nr/cc_worker.cc
# srsue/src/phy/nr/sf_worker.cc
# srsue/src/phy/nr/worker_pool.cc
# srsue/src/stack/mac/mac_nr.cc
4 years ago
Andre Puschmann
9c4146442a
mac,phy: refactor NR MAC/PHY UL data passing interface
...
inspired by accepted (but not yet merged) PR to include the
(unique_)byte_buffer_t for MAC/PHY interfacing, this patch adds
a few more useful bits to that. Buffer management for UL data is now
done in MAC and only a pointer to the data is passed in the UL action.
* Move Tx softbuffer to MAC (until UL HARQ class is ready)
* Remove temparal data member in cc_worker
* Remove memcpy after packing MAC PDU
4 years ago
David Rupprecht
f6f6ee406b
SRSUE NR: use correct rnti in rar and make NR proc ra
4 years ago
David Rupprecht
1fcd006a7c
fixed segfaulting
4 years ago
David Rupprecht
82a8dcc77a
Change interface to unique_byte_buffer
...
logging message for msg3 preparing
4 years ago
David Rupprecht
3af0342418
Added mux class and packing of msg3
4 years ago
Xavier Arteaga
760ad3a746
SRSUE: Interface stack and PHY for NR-RA procedure
4 years ago
David Rupprecht
0f1586dd2d
Deleted all HAVE_5GNR in CC and h files
...
CMakeList and travis yaml
4 years ago
David Rupprecht
1987ddd923
Added phy_nr to ue_stack_lte
4 years ago
David Rupprecht
24123313bf
Added MAC NR RA procedure with a minimal test case
4 years ago
Andre Puschmann
6eed6f622f
mac_nr: update RA related function in MAC/PHY interface
...
* expose interface to trigger PRACH from MAC
* indicate PRACH tx from PHY
* add temporary RAR PDU handling with Msg3 grant indication to PHY
4 years ago
Francisco
3265d940ec
remove byte buffer pool cached member variables as they are unnecessary now.
4 years ago
Francisco
0c7c317be5
refactor byte_buffer class and move it to separate file
4 years ago
Pedro Alvarez
bb0e31feda
Reduce log level of SDUs dropped in the stack to info. Added ul_dropped_sdus to stack metrics.
4 years ago
David Rupprecht
3dab82c42f
Added interface that allows to update the lcid in case of a nr reconfiguration
...
nr rrc updates gw lcid if reconf was received
4 years ago
faluco
821925a273
- Upgrade to srslog the loggers in lib/mac.
...
- Adapted users of these classes and tests.
4 years ago
Andre Puschmann
8e13f04684
mac_pcap: refactor MAC PCAP and include NR RAT into same object
...
after adding the thread-safe PCAP writer functionality to the EUTRA
MAC object it became clear that we don't wont to replicate the
same for the NR object.
This patch therefore refactors the class that now supports both EUTRA and
NR rats. The old mac_nr_pcap.[h/cc] has been deleted. All test-cases
and usages now use the new object that needs to pass the RAT type in
the ctor.
this patch addresses the last open point of #2160
4 years ago
faluco
d37a07a47f
Replaced loggers in buffer_pool.h
4 years ago
Andre Puschmann
ecf7eaec5c
ue_stack_lte: expose MAC NR interface for NSA configs
4 years ago
Andre Puschmann
f5c945dc2f
mac_nr: add interface to set C-RNTI and contention ID from RRC
...
used during contention-based/free RA
4 years ago
Andre Puschmann
1aadc5c53e
mac_nr: tiny cleanups of MAC class, use of new logger
4 years ago
Andre Puschmann
73cb0dabf2
mac_nr: move UE MAC class into own subfolder
...
this should simplify further MAC NR extensions and lead
to a more organized folder structure
4 years ago
Codebot
d5ee9a5200
Adding AGPL copyright to new files
4 years ago
Andre Puschmann
da9e3363f1
mac_pdu_nr: rename MAC PDU class for NR to adhere naming conventions
...
* mainly to have _nr as trailing name for filename and class
* also add "sch" to class and filename (RAR PDU will have extra class)
4 years ago
faluco
5981469f9f
Upgrade loggers in srsue ( #2163 )
...
* Replaced UE logger in the ue class.
* Replaced loggers in the main phy class and prach.
* Replaced loggers in phy common and ta_control.
* Replace loggers in cc and sf workers.
* Replaced loggers in intra_measure, scell_recv, search, sfn_sync, sync.
* Remove last uses of the old loggers in the main phy class.
* Remove stray newline in logs.
* Replaced loggers in ue gw.
* - Started to replace loggers in the ue stack.
- Replaced loggers in usim and pcsc.
- Adapted nas and usim tests.
* Replace loggers in nas.
* Added missing log init calls in two previously modified tests.
* Replaced logger in nas idle procs.
* Replaced loggers in nas emm state.
* Replaced loggers in tft packet filter and adapted tft test.
* Replaced loggers in main RRC class.
* Replaced loggers in RRC cell.
* Replaced loggers in RRC meas.
* Replaced loggers in rrc procedures.
* Started logger replacement in MAC layer, more precisely in demux and dl_harq classes.
Been unable to inject loggers in construction for dl_tb_process due to very weird static assertions in the std::vector code being the type not constructible which is not true, so instead use the main MAC logger directly.
* Replaced loggers in mac mux class.
* Replaced loggers in mac pro_bsr.
* Replaced loggers in mac proc phr.
* Replaced loggers in mac proc SR and RA.
* Replace loggers in mac UL HARQ.
* Replaced loggers in main ue stack class.
* Fixed nas test crashing due to a null string.
* Ported mac_test to use the new loggers.
* Removed TTI reporting for the PHY log as the old logger did.
* Replaced loggers in UE phy tests.
* Configure loggers in nas_test.
* Replaced loggers in rrc_meas_test.
* Replaced loggers in rrc_reconfig_test.
* Added missing newline in tft_test.
* Fix compilation errors in TTCN3 tests.
* Fix linker error detected in CI and warning.
* Replaced loggers in TTCN3 tests.
* Fix a text replace error in some log messages.
* Remove trailing newlines from log entries.
* Remove old logger from rrc.
* Flush backend before printing the test status.
* - Fix compilation error from previous rebase.
- Remove trailing newlines from some missing log entries.
4 years ago
srsLTE codebot
c9f48bce7b
Merge branch 'next' into agpl_next
...
# Conflicts:
# lib/include/srslte/phy/ch_estimation/ul_rs_tables.h
# lib/include/srslte/phy/ue/ue_dl_nr_data.h
# lib/src/phy/ue/ue_dl_nr_data.c
# srsue/test/ttcn3/hdr/swappable_log.h
4 years ago
Andre Puschmann
4709bacefd
srsue: add DL NR-ARFCN param
...
* add PHY param to set DL NR-ARFCN
* use new band_helper class to convert ARFCNs to supported bands
* signal supported NR bands in UE capabilities
4 years ago
David Rupprecht
9ccc36d4fa
Make fake measurement frequency depend on measurement config
4 years ago
David Rupprecht
1b19ee40e7
Added usim features for key derivation
4 years ago
David Rupprecht
ceda458bb3
Added MAC NR to EUTRA and NR with stack interfaces including MAC config build
...
Moved MAC logical channel config to MAC interface types
4 years ago
David Rupprecht
e0420049e3
Build infrastucture for reconfig
4 years ago
David Rupprecht
64299960bd
Added procedure for NR reconfiguration and RRC with NR complete
4 years ago
Andre Puschmann
a09fb95c25
proc_ra: protect RA procedure from concurrent thread access
...
that patch addreses issue #2199 by defering RA-related calls that
are executed from within PHY workers.
The time-critical bits of more complex functions such as tb_decoded()
are still executed in the PHY worker thread but the state machine
manipulation is defered.
4 years ago
Ismael Gomez
a6423442c2
Refactor NR RA files and fix header includes all over library ( #2162 )
...
* Refactor NR resource allocation classes. Use DCI instead of grant for dummy PDSCH UE/eNB test
* Minor refactors in NR workers and ue_dl
* Fix include issues
* fix compilation issues
4 years ago
David Rupprecht
1a10c783b5
Faking measurements
4 years ago
David Rupprecht
f7d313147a
Added infrastrukture for measurements
...
Init rrc_nr as part of the LTE stack
4 years ago
David Rupprecht
4305929ec7
Hardcoded NR/MRDC-Capabilities
4 years ago
David Rupprecht
b79eef0860
Introducing nr_rrc <-> rrc interface for eutra and nr cap query
4 years ago
David Rupprecht
9eb0b72cb4
Added rrc function has_nr_dc
4 years ago
Andre Puschmann
37fc1c59e3
fix DRB release logging
...
this caused wrong logs because the LCID was printed based on the assumption
that the DRB LCID is alwasy 2 + drb ID
Use drb_id as drb_cfg key
4 years ago
Andre Puschmann
910dc5af86
Merge branch 'next' into agpl_next
4 years ago
Andre Puschmann
c8801578df
gw: use std::chrono for metrics and fix nan display
...
* replace gettimeofday with std::chrono
* fix nan printing when nof_tti is zero (at startup)
4 years ago
David Rupprecht
81609d48dd
Added measurment report for interrat nr15
...
Added function for removing interrat triggers
4 years ago
David Rupprecht
5df2fb1fa1
Added rrc has nr neighbour cells
4 years ago
David Rupprecht
0e4d77da76
Refactor eutra reporting code and add report triggers for inter rat measurements
4 years ago
David Rupprecht
e4e67eebce
Added infrastucture to process measurments and evaluate interrat triggers
4 years ago
David Rupprecht
25e5b88704
Added NR range_to_value function and debug logging for measurements
4 years ago
David Rupprecht
ce4526a935
Extended measurements interrat nr r15 testcase with measurements
4 years ago
David Rupprecht
826dd32c89
Rename meas_cell to meas_cell_eutra
...
Added meas_cell_nr class
Make meas_cell list as template class
Inheritance rrc_cell to meas_cell_nr
Added process_new_cell_meas_nr function
4 years ago
David Rupprecht
62b558fccf
Move rat type to common header
...
Removed phy measurement from rrc interface phy
Updated rrc interface for handling measurements
4 years ago
Codebot
98425e0b2b
Adding AGPL copyright to new files
4 years ago
David Rupprecht
848496bb0f
Moved get_earfcn to srslte get_carrier_freq func
4 years ago
David Rupprecht
d4fb2dfb16
Added handling of inter rat measurement config function
...
Make report config more agonistic
4 years ago
David Rupprecht
f4b0042c10
Added minimal interrat and nr measurement testcase
...
Added the handling of nr_r15 meas config
Added seperate handling of reportConfig for eutra
4 years ago
Andre Puschmann
ab598dae3b
gw: calculate GW throughput based on TTI timing
...
similiar like the RLC patch, MAC TTIs are passed to GW so the
rx/tx rate can be calculated based on the LTE timing
4 years ago
Andre Puschmann
07d2bc4fe8
change license header to agnostic version with hint to root LICENSE file
4 years ago
Xavier Arteaga
f64c268a69
SRSUE: Refactored MAC/RRC SCell Activation/Deactivation
4 years ago
Pedro Alvarez
454162cea7
Deleted nas_interface_stack.
4 years ago
Pedro Alvarez
604e79214d
Changed NAS is_attached interface to is_registered.
4 years ago
Pedro Alvarez
5649ecaab0
Renamed nas_common.h to nas_config.h. Moved emm_state_t into nas_emm_state.h and nas_emm_state.cc.
4 years ago
Pedro Alvarez
96f39da5d7
Fixes for airplane simulator.
4 years ago
Pedro Alvarez
14844a168a
Created new class to hold all NAS states for the NAS state machine. Added EMM-DEREGISTERED substates and EMM-REGISTERED substates.
...
Decoupled PLMN selection, attach request and service request. Removed RRC connect procedure from NAS.
4 years ago
Andre Puschmann
2be85217fd
mac,ue: reset demux when restting MAC
...
this potentially fixes the issue we see during HO and RLF
under high DL load.
The issue happens because buffered DL PDUs are delivered to
RLC after reestablishing RLC that confuse the receiving
RLC entity bc the sequence numbers are very high, as opposed
to begin with zero again after reestablishment.
4 years ago
Andre Puschmann
7cf919e2af
Fix MAC PDU packing after sending Truncated BSR ( #2004 )
...
* mac_test: add extended TBSR unit test
unit test to MAC UL packing after sending a TBSR
this fixes the MAC issues described in issue #2002
* mux: fix updating of LCG buffer state after packing PDU
we've previously lowered the buffer state of the LCG according
to the bytes that have been scheduled, but not according to
those that have been actually included in the PDU.
* proc_bsr: fix LCG buffer state updating for TBSR
when sending a TBSR do not update the internal buffer
state of the BSR proc.
This caused issues because the buffer state for all LCG that
are not included in the TBSR are set to zero, although at least
one LCG does have data to transmit.
* rlc_am: include LCID when logging retx of SN
4 years ago
Francisco Paisana
510959b50f
update nr asn1 files, and asn1 tests
4 years ago
Andre Puschmann
082e002b67
nas: fix airplane mode simulation
...
the current implementation was somehow broken after a
NAS refactor. It was undetected because we didn't really
use it.
this fixes the simulation by using a single timer to simulate
airplane mode transitions.
the timer is rearmed in the timer_expire() function
if the correspondig event is set.
Has been tested to work well with, e.g.:
--sim.airplane_t_on_ms 5000 --sim.airplane_t_off_ms 10000
4 years ago
Andre Puschmann
fd5cde525c
proc_bsr: fix race condition in BSR reporting
...
fix for #1934
This fixes a race condition between Stack thread and DL
PDU processing that lead to updates of the RLC buffer that
are undetected by the BSR routine.
What happens is that in a UL SCH PDU all outstanding data is transmitted
and and a LBSR with all zero buffers is sent.
14:39:47.327301 [MAC ] [D] [ 3793] BSR: LCID=3 old_buffer=59
14:39:47.330600 [MAC ] [I] [ 3793] UL LCID=3 len=58 LBSR: b=0 0 0 0
Note that "old_buffer" isn't set to zero here.
At the same time (same TTI), the MAC PDU processing thread handles DL-SCH PDUs
that may generate new UL PDUs:
14:39:47.330749 [RLC ] [I] DRB1 Tx SDU (54 B, tx_sdu_queue_len=1)
14:39:47.330762 [RLC ] [I] DRB1 Tx SDU (54 B, tx_sdu_queue_len=2)
14:39:47.330775 [RLC ] [I] DRB1 Tx SDU (54 B, tx_sdu_queue_len=3)
..
Those PDUs are "new data" since the previous buffer state was zero.
Here is the race now between the threads, at the end of the bsr::step() function
old_buffer of each LCG is updated with the previous new_buffer, so
the buffer state of LCG=2 is now 59.
Now MAC starts the next TTI:
14:39:47.331910 [MAC ] [D] [ 3794] Running MAC tti=3794
14:39:47.331928 [MAC ] [D] [ 3794] Update Bj: lcid=0, Bj=0
14:39:47.331934 [MAC ] [D] [ 3794] Update Bj: lcid=1, Bj=0
14:39:47.331938 [MAC ] [D] [ 3794] Update Bj: lcid=2, Bj=0
14:39:47.331941 [MAC ] [D] [ 3794] Update Bj: lcid=3, Bj=-1752
14:39:47.331951 [MAC ] [D] [ 3794] BSR: LCID=0 update new buffer=0
14:39:47.331960 [MAC ] [D] [ 3794] BSR: LCID=1 update new buffer=0
14:39:47.331964 [MAC ] [D] [ 3794] BSR: LCID=2 update new buffer=0
14:39:47.331971 [MAC ] [D] [ 3794] BSR: LCID=3 update new buffer=335
14:39:47.331976 [MAC ] [D] [ 3794] BSR: check_new_data() -> get_buffer_state_lcg(0)=0
14:39:47.331980 [MAC ] [D] [ 3794] BSR: check_new_data() -> get_buffer_state_lcg(1)=0
14:39:47.331984 [MAC ] [D] [ 3794] BSR: check_new_data() -> get_buffer_state_lcg(2)=59
14:39:47.331988 [MAC ] [D] [ 3794] BSR: check_new_data() -> get_buffer_state_lcg(3)=0
14:39:47.331993 [MAC ] [D] [ 3794] BSR: LCID=0 old_buffer=0
14:39:47.332000 [MAC ] [D] [ 3794] BSR: LCID=1 old_buffer=0
14:39:47.332003 [MAC ] [D] [ 3794] BSR: LCID=2 old_buffer=0
14:39:47.332007 [MAC ] [D] [ 3794] BSR: LCID=3 old_buffer=335
And since the buffer state of LCG=2 isn't zero, the new data for LCID=3 of that LCG is considered.
So effectivly, the BSR missed the "empty" buffer state for a fraction of time and doesn't
consider the outgoing data generated in the same TTI as new. It therefore
doesn't transmit a BSR.
in which a BSR wasn't
4 years ago
Andre Puschmann
d5286e70aa
proc_bsr: refactor and add extra print_state() method
...
allows to call the print_state() routine from other places in the BSR
4 years ago
Francisco Paisana
514deaf25b
fix resetting of phy and mac during reestablishment
4 years ago
Andre Puschmann
a366500a78
rrc_proc: init cs_result to none
...
detected by Coverity CID 363053
4 years ago
Francisco Paisana
665b3996bb
now the phy controller handles the scenario where the phy cell selection failed to be initialized
4 years ago
Andre Puschmann
937067a205
proc_phr: rename start_periodic_timer() and make sure its only started if a valid config is present
4 years ago
Andre Puschmann
fab86382c1
mac,rrc: add interface to set SR config explicitly without touching any other MAC function
...
when releasing PUCCH/SRS (see 5.3.13 in 36.331) we need to reset the SR config as well.
In our case, SR is handled by MAC so we need to (re-)configure MAC, not all of
MAC though, just SR.
4 years ago
Francisco Paisana
e7239163e9
silence noisy unhandled in_sync_ev logs
4 years ago
Francisco Paisana
f185272367
added comments explaining the meaning of the cell reselection procedures
4 years ago
Francisco Paisana
49e7b8e36e
- Change periodicity of cell reselection after a new serving cell has been selected
...
- Enable PHY intra measurements during RRC_IDLE
4 years ago
Francisco Paisana
585d7c923a
refactor and simplification of cell selection procedure. Using now a SIB3 threshold to decide whether to select neighbor cell while in RRC_IDLE
4 years ago
Pedro Alvarez
5a4e71a6e4
Created k_enb_context structure that holds k_enb, NCC and NH to make it easier to restore context from failed handover.
4 years ago
Pedro Alvarez
bcb422736c
Save and restore NH on handover and handover failure.
4 years ago
Pedro Alvarez
3eb525563a
Fix issue reading MNC length in USIM.
4 years ago
Xavier Arteaga
6ae47b6510
SRSUE: Deafult PUCCH/SRS does not imply full PHY dedicated defaults
4 years ago
Pedro Alvarez
22a6dc305f
Moved common variables and functions from the usim and pcsc_usim classes into usim_base class.
4 years ago
Francisco Paisana
4ebe92f6a3
refactor phy configuration in the rrc to keep track of activated scells, and cells configurations
4 years ago
Francisco Paisana
d910c910a4
rrc::meas_cell now uses stack timers instead of system timers.
4 years ago
Francisco Paisana
023d32975a
avoid use of pointers to meas_cells in ho_proc as they may become dangling
4 years ago
Francisco Paisana
072b7be582
renamed rrc::cell_t to rrc::meas_cell
4 years ago
Andre Puschmann
0ef8e1fdac
rrc: include pci when logging serving cell measurement
...
this should facilitate easier log parsing and plotting
if the cell measurements _always_ include the PCI, even
in the case of the serving cell
15:49:11.357447 [RRC ] [I] MEAS: New measurement serving cell: earfcn=0, pci=1, rsrp=-11.52 dBm, cfo=+0.1 Hz
15:49:11.391610 [RRC ] [I] MEAS: New measurement serving cell: earfcn=0, pci=1, rsrp=-11.52 dBm, cfo=-0.4 Hz
15:49:11.427325 [RRC ] [I] MEAS: New measurement serving cell: earfcn=0, pci=1, rsrp=-11.52 dBm, cfo=-0.6 Hz
15:49:11.463101 [RRC ] [I] MEAS: New measurement serving cell: earfcn=0, pci=1, rsrp=-11.52 dBm, cfo=-0.7 Hz
15:49:11.499817 [RRC ] [I] MEAS: New measurement serving cell: earfcn=0, pci=1, rsrp=-11.51 dBm, cfo=+0.1 Hz
15:49:11.499828 [RRC ] [I] MEAS: New measurement neighbour cell: earfcn=2850, pci=0, rsrp=-12.16 dBm, cfo=-0.8 Hz
15:49:11.535027 [RRC ] [I] MEAS: New measurement serving cell: earfcn=0, pci=1, rsrp=-11.46 dBm, cfo=-0.8 Hz
15:49:11.571707 [RRC ] [I] MEAS: New measurement serving cell: earfcn=0, pci=1, rsrp=-11.46 dBm, cfo=-0.9 Hz
15:49:11.607932 [RRC ] [I] MEAS: New measurement serving cell: earfcn=0, pci=1, rsrp=-11.52 dBm, cfo=-0.8 Hz
4 years ago
Pedro Alvarez
2f0125ef4e
Fix issue recovering key state, when the first HO fails (specifically, is_first_ncc was not recovered). Minor improvements in key logging.
4 years ago
Francisco Paisana
1f2cca8909
in the rrc reconf procedure, handle the scenario where the rrc reconfiguration message does not config the phy
4 years ago
Francisco Paisana
c6f4776a6f
send the nassdus sooner in the rrc reconf procedure
4 years ago
Francisco Paisana
fc49b5a030
implemented rrc reconfiguration procedure that includes a continuation when phy configuration is complete
4 years ago
Francisco Paisana
b3eb9651d6
disable cqi in scells during handover procedure
4 years ago
Francisco Paisana
8a9a95a937
ensure sibs are acquired if cell selection calls cell search
4 years ago
Francisco Paisana
045f647914
fix edge case where serving cell is good enough for reestablishment but the sibs are not yet acquired
4 years ago
Francisco Paisana
5ecbe8fb17
cleanup of the reestablishment procedure state machine. It does not need to wait for the serving cell configuration because such procedure is already included in the cell selection procedure
4 years ago
Pedro Alvarez
b3bfe336a9
Make sure that remote address test has a ip mask
4 years ago
Sylvain Munaut
5783c01cbb
tf_packet_filter: Improve support for the different filter types
4 years ago
Francisco Paisana
0997daa7a0
now the handover procedure in the srsUE does not wait for the phy cell selection result. It only waits for the RA result
4 years ago
Pedro Alvarez
86f4d469c6
Added some functions to save and restore AS keys for the case of failed handover in the USIM
4 years ago
Francisco Paisana
cf89d6645b
add comments explaining each function of the reest procedure
4 years ago
Francisco Paisana
d068d594af
implemented rrc reestablishment procedure part after sending reest request
4 years ago
Francisco Paisana
73e21daeb2
refactor reestablishment procedure to more closely follow TS.
4 years ago
Andre Puschmann
1afc137032
[REBASE] Make PHY non-blocking and fefactor HO procedure ( #1753 )
...
* Make PHY non-blocking and fefactor HO procedure
* makes entire PHY non-blocking through command interface
* adds dedicated queue for cell_search/cell_select commands
* refactor HO procedure to run faster, in one stack cycle. Looks closer to the specs
* force ue to always apply SIB2 configuration during reestablishment
* Run update_measurements in all workers
Co-authored-by: Ismael Gomez <ismagom@gmail.com>
4 years ago
Francisco Paisana
7f8af023b8
added a callback that always gets triggered when the phy cell selection completes. This callback checks if cell selection failed, and if so, sets the rsrp of the selected cell to -infinity
4 years ago
Andre Puschmann
b616944a13
ue,rrc: fix security config during HO/reestablishment
...
we fix a number of very related issues for HO/reestablishment
in the success/error case:
* this patch removes the hard-coded check that intra-cell HO aren't
allowed. There are cases where eNBs use this method to update
the security context.
* the patch also fixes an issue after failed HO where the security context
of the source eNB should be used for the reestablishment.
* update security keys according to specs when mobilitycontrol
indicated change of key
4 years ago
Andre Puschmann
6827c2df21
rrc_meas: disable layer3 filtering until quantity config is received
...
the filter alpha was initialized to zero by default which causes an
issue because the first measurement for a cell can't be updated,
because the filtering function will always return the current value.
According to 36.331 Sec 5.5.3.2 Note 2, a k-value of 0 should turn
off filtering, which should be used as the default value until
an update is received from the network.
4 years ago
Ismael Gomez
f49fbd6d02
Fix the order of HO/reest measurement actions ( #1696 )
4 years ago