Xavier Arteaga
307c27dc30
srsLTE: ZMQ renamed struct field
2019-12-23 22:57:37 +01:00
Xavier Arteaga
2d98f92823
srsLTE: upgraded ZMQ for supporting frequency selection
2019-12-23 22:57:37 +01:00
Xavier Arteaga
0134d47ee8
SRSUE: clear EARFCN list if the list is not empty
2019-12-23 22:57:37 +01:00
Xavier Arteaga
11eafa8ab4
srsLTE: FFTW wisdom gets loaded and saved by default
2019-12-23 22:57:37 +01:00
Xavier Arteaga
892ece8cdd
srsLTE: reduce number of SF for rf_zmq_test
2019-12-23 22:57:37 +01:00
Xavier Arteaga
c92dce71b7
srsLTE: AGC only uses boundaries for requesting gain to Radio
2019-12-23 22:57:37 +01:00
Xavier Arteaga
097f492430
srsLTE: fix ZMQ RF module gain
2019-12-23 22:57:37 +01:00
Andre Puschmann
9f281b621e
Merge pull request #880 from softwareradiosystems/next_merge_master3
...
Merge master into next before merge (after 32bit fixes)
2019-12-23 22:56:55 +01:00
Andre Puschmann
9e1b8bc95e
disabling certain PHY DL tests that aren't working on ARM due to Turbo issues
2019-12-20 18:54:41 +01:00
Andre Puschmann
30eb808015
Merge branch 'master' into next_merge_master3
2019-12-20 17:49:55 +01:00
Pedro Alvarez
6d4303cd94
Added option to force 32bit compilation (useful for debug). Fixed various warnings when compiling in a 32 bit arch.
2019-12-20 17:33:55 +01:00
Xavier Arteaga
a96a7fe20a
Removed srsue_phy from thread_test
2019-12-19 13:01:05 +01:00
Xavier Arteaga
089a5e21dc
Label test that memcheck is excessively long
2019-12-19 13:01:05 +01:00
Xavier Arteaga
b1c4cd7189
srsLTE: removed timout in tti semaphore
2019-12-19 13:01:05 +01:00
Xavier Arteaga
6bef91a788
srsLTE: TTI sempahore wait for all resuses wait code.
2019-12-19 13:01:05 +01:00
Xavier Arteaga
ad46fc006f
srsLTE: Fix thread memory leak. Moved test. Fix CLang warnings.
2019-12-19 13:01:05 +01:00
Xavier Arteaga
a7e92c384e
srsLTE: applied minor comments in tti semaphore
2019-12-19 13:01:05 +01:00
Xavier Arteaga
d2c6dda025
SRSUE: Avoid sf_worker return without calling worker_end
2019-12-19 13:01:05 +01:00
Xavier Arteaga
447ede327c
srsLTE: removed unused argument
2019-12-19 13:01:05 +01:00
Xavier Arteaga
384c420c7c
SRSUE: fix phy workers concurrency issue
2019-12-19 13:01:05 +01:00
Xavier Arteaga
173defd676
srsLTE: Execute load and save FFTW wisdom automatically
2019-12-19 13:01:05 +01:00
Xavier Arteaga
dc7ac0a8d6
SRSUE: Updated PHY test
2019-12-19 13:01:05 +01:00
Xavier Arteaga
6895bfa70a
SRSUE initial PHY worker test
2019-12-19 13:01:05 +01:00
Xavier Arteaga
9c51af491a
SRSUE: phy default arguments are set in constructor
2019-12-19 13:01:05 +01:00
Andre Puschmann
d60d8fead4
update GH action and Travis config
...
- enable Ninja in builds
- build clang/gcc
- build on Ubuntu 16.04 in GH
- build on Bionic in Travis
2019-12-18 20:48:56 +01:00
Francisco Paisana
2eb6145b99
reset carriers on each set_cfg call
2019-12-18 16:06:21 +01:00
Andre Puschmann
7e294f7325
move common helper for eNB tests into own header file and split mobility and erab tests
2019-12-18 15:27:42 +01:00
Andre Puschmann
75672324b9
fix RRC connection reconfig for new bearer
...
this fixes the packing of a RRC connection reconfig after creating
a new ERAB
it also adds a PDCP config factory based on the received request
2019-12-18 15:27:42 +01:00
Andre Puschmann
41be303f27
fixing NAS PCAP ctor
2019-12-18 13:27:48 +01:00
yagoda
845c0fc2c0
fixing lcid issue with eMBMS, adding MRNTI user to stdout metrics
2019-12-18 12:18:58 +01:00
Tiago Ferreira Alves
3fed21ce3e
PSSS and SSSS implementation
2019-12-18 11:27:10 +01:00
Andre Puschmann
476f970ee1
replace FIXME with TODO
2019-12-18 11:25:56 +01:00
Andre Puschmann
f874722cfb
fix error handling in UE init
...
previously we've returned the init() function when a sublayer
init failed. This leaves the pointers to the layers unset which, in turn,
breaks the stop() call for the UE
2019-12-18 11:25:36 +01:00
Andre Puschmann
0d1c8021f9
fix radio_multi interface if radio vector is still empty
2019-12-18 11:25:36 +01:00
Andre Puschmann
4a9e3728c9
add condtional variable for PHY initialization and configuration
...
adding a cond variable and mutex to protect init and (re-)config of PHY
currently this is only used during init. If the stack couldn't be
initialized but the PHY init thread was already started, we need to
properly wait until this is done
2019-12-18 11:25:36 +01:00
Andre Puschmann
705cd3c211
fix typos spotted by aleksander0m
2019-12-17 16:54:02 +01:00
Andre Puschmann
3127f59b4c
wait with init of GUI until cell is found and initialized
...
with the stack refactor we've introduced a regression in which
the GUI was started too early when no cell was found yet.
this caused the GUI to be initilized with only one Tx port. When connecting
to a cell with ports, the GUI plotter would then write
into unitialized memory.
2019-12-16 21:03:08 +01:00
Andre Puschmann
4f5e991480
fix typo in RLC AM
2019-12-16 17:16:15 +01:00
Pedro Alvarez
c5979f59eb
Clang format UE, eNB and lib ( #850 )
...
* Clang-formated UE, eNB and lib.
* Fixed compiling errors from clang-format.
* Fix linking issues introduced by clang-format
* Fix poor formating in initializing arrays of arrays.
* Fix mistake in conflict resolution on rm_turbo.c
* Re-apply clang format to gtpc_ies.h
2019-12-16 16:04:22 +01:00
Andre Puschmann
2ed2e35aa7
fixing two size_t printfs
2019-12-16 14:06:26 +01:00
Andre Puschmann
4433c238e3
enable clang-8 on travis
2019-12-16 14:06:26 +01:00
Vasil Velichkov
87a0a25c18
M2AP: Align 8 bits in liblte_m2ap_unpack_protocolie_singlecontainer
...
Alignment with more then 8 bits is unusual for APER encoding.
It seems clangs uses different packing for the LIBLTE_BIT_MSG_STRUCT
struct then gcc and puts more bytes between N_bits and header.
typedef struct {
uint32 N_bits;
uint8 header[LIBLTE_MSG_HEADER_OFFSET];
uint8 msg[LIBLTE_MAX_MSG_SIZE_BITS];
} LIBLTE_BIT_MSG_STRUCT __attribute__((aligned(8)));
Fixes a failure in srslte_asn1_m2ap_test when compiled with clang
272: Test command: lib/test/asn1/srslte_asn1_m2ap_test
272: Test timeout computed to be: 1500
272: 03:47:13.189195 [M2AP] [I] M2 Setup Request original message
272: 0000: 00 05 00 37 00 00 03 00 0d 00 08 00 00 f1 10 00
272: 0010: 1a 2d 00 00 0e 40 0a 03 80 65 6e 62 31 61 32 64
272: 0020: 30 00 0f 00 16 00 00 10 00 11 00 00 f1 10 1a 2d
272: 0030: 00 10 27 10 01 02 00 01 02 00 02
272: [m2_setup_request_test][Line 95]: FAIL at (plmn_id[0] & 0x0F) == 0 && (plmn_id[0] & 0xF0) >> 4 == 0 && (plmn_id[1] & 0x0F) == 1
1/1 Test #272 : srslte_asn1_m2ap_test ............***Failed 0.00 sec
2019-12-16 14:06:26 +01:00
Vasil Velichkov
07c620c084
travis: Test with both gcc and clang
2019-12-16 14:06:26 +01:00
Vasil Velichkov
72f04a31b6
Fix typo in -Wno-parentheses
...
This fixes the following clang's warning
warning: unknown warning option '-Wno-parantheses'; did you mean
'-Wno-parentheses'? [-Wunknown-warning-option]
2019-12-16 14:06:26 +01:00
Andre Puschmann
0d3710176d
remove -Werror=incompatible-pointer-types as CXX flag
...
seems to be only a valid C flag
2019-12-16 14:06:26 +01:00
Andre Puschmann
42080e59f1
remove std::move when returning freshly created unique_ptr
2019-12-16 14:06:26 +01:00
Andre Puschmann
c7ee887170
add factory function for creating PDCP config
2019-12-16 14:06:26 +01:00
Francisco Paisana
5b4c42ac77
pass argument by pointer to avoid gcc4.8 issue
2019-12-16 14:06:26 +01:00
Vasil Velichkov
ef9d16a3cf
PHY: Initialize pucch3_w_n_oc_5 using precomputed constants when compiled with clang
...
Fixes the following clang-7's error
srsLTE/lib/src/phy/phch/pucch.c:307:9: error: initializer element is not a compile-time constant
{1, cexpf(I * 2 * M_PI / 5), cexpf(I * 4 * M_PI / 5), cexpf(I * 6 * M_PI / 5), cexpf(I * 8 * M_PI / 5)},
^~~~~~~~~~~~~~~~~~~~~~~
Add SRSLTE_PUCCH_FORMAT_3 in the pucch_test
2019-12-16 14:06:26 +01:00
Vasil Velichkov
a44671fc77
PHY: Manually unroll loops that use _mm_extract_epi(8/16)
...
clang does not unroll those loops even though it supports the
-funroll-loops command line option, adding various #pragma unroll
options also does not help.
The unroll is needed to make the second argument a constant integer.
Enable the SSE/AVX turbo rate matching when compiling in debug mode.
srsLTE/lib/src/phy/fec/rm_turbo.c:590:33: error: argument to '__builtin_ia32_vec_ext_v16qi' must be a constant integer
int8_t x = (int8_t) _mm_extract_epi8(xVal, j+8);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib64/clang/7.0.1/include/smmintrin.h:1048:23: note: expanded from macro '_mm_extract_epi8'
(int)(unsigned char)__builtin_ia32_vec_ext_v16qi((__v16qi)(__m128i)(X), \
^
srsLTE/lib/src/phy/fec/rm_turbo.c:591:35: error: argument to '__builtin_ia32_vec_ext_v8hi' must be a constant integer
uint16_t l = (uint16_t) _mm_extract_epi16(lutVal2, j);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib64/clang/7.0.1/include/emmintrin.h:4273:24: note: expanded from macro '_mm_extract_epi16'
(int)(unsigned short)__builtin_ia32_vec_ext_v8hi((__v8hi)(__m128i)(a), \
2019-12-16 14:06:26 +01:00