vrtsim: Refactor peer antenna configuration and taps_client
Refactor peer antenna configuration and taps_client
This commit addresses several architectural issues in vrtsim, specifically regarding how peer antenna counts are managed. Some additional changes were made to allow unit tests and several fixes were delivered.
Key changes:
- Refactored peer antenna management:
- Removed the redundant 'peer_info_t' structure which overlapped with ue_config and client_info.
- Added explicit 'peer_tx_ant' and 'peer_rx_ant' fields to vrtsim_state_t.
- Server now pulls peer info from the UE config, while Client pulls it from the GNB info published by the server.
-
Refactor taps_client to be thread safe
-
Fixed a bug where only the first antenna IQ was read from underlying SHM mechanism
-
Test / usability related changes:
- Added support for configurable SHM channel names via '--vrtsim.shm_channel_name' to prevent IPC conflicts between tests.
- Reduced the sleep() calls inside the code to reduce test runtime and speedup vrtsim connection initialization and cleanup
- Added a unit tests for:
- transpartent channel mode
- taps_client mode
- cirdb mode
Edited by Bartosz Podrygajlo