Commit Graph

5022 Commits

Author SHA1 Message Date
Xavier Arteaga bf4ecc8064 Fix srsenb PHY and unit/component tests 2020-02-13 10:29:00 +01:00
Xavier Arteaga 7a20e3a51e Added boolean random generator 2020-02-13 10:29:00 +01:00
Xavier Arteaga f9c3dd2748 more fixes in the srsenb 2020-02-13 10:29:00 +01:00
Xavier Arteaga 5dbc96458a Sets PUCCH decode threshold as macro 2020-02-13 10:29:00 +01:00
Xavier Arteaga bc10943a2b Added get max TB from DCI format 2020-02-13 10:29:00 +01:00
Xavier Arteaga 231431f569 SRSENB: enabled CA PUCCH decode in eNb 2020-02-13 10:29:00 +01:00
Xavier Arteaga f10f64215e log_filter use stdout logger is NULL 2020-02-13 10:29:00 +01:00
Xavier Arteaga f6cf7780e8 Minor aesthetic corrections 2020-02-13 10:29:00 +01:00
Xavier Arteaga d66fdefbb3 Added more docs to PUCCH 1b CS resource selection 2020-02-13 10:29:00 +01:00
Xavier Arteaga 73c63b10f2 Fix compilation of dummy classes 2020-02-13 10:29:00 +01:00
Xavier Arteaga b4d1f737f3 Minor PUCCH 1b CS resouce selection fix 2020-02-13 10:29:00 +01:00
Xavier Arteaga db9cd1683a SRSENB: improved phy test 2020-02-13 10:29:00 +01:00
Xavier Arteaga fd29944bf9 [Temporal] Disabled by default enb phy test 2020-02-13 10:29:00 +01:00
Xavier Arteaga cd12307c91 SRSLTE: fix PUCCH 1b Channel selection resource 2020-02-13 10:29:00 +01:00
Xavier Arteaga 3f5c270fce SRSENB: added initial component PHY test 2020-02-13 10:29:00 +01:00
Xavier Arteaga 40772eae19 SRSENB: UE PHY dedicated takes a flat configuration structure 2020-02-13 10:29:00 +01:00
Xavier Arteaga 86a62c3584 removed unreachable code 2020-02-13 10:29:00 +01:00
Xavier Arteaga 1f762844ee Initial PUCCH format 3 decoder 2020-02-13 10:29:00 +01:00
Xavier Arteaga f935916e7c SRSUE: fix srsue_rf_test 2020-02-13 10:29:00 +01:00
Xavier Arteaga 35f4e5d69a Initial PUCCH 1B with channel selection 2020-02-13 10:29:00 +01:00
Francisco Paisana c76cdc6cea refactored the serving cell config procedure. there was one more state than it was needed. 2020-02-10 22:03:16 +01:00
Andre Puschmann 8a33fde8e7 adding GPS sync support to USRP capture example 2020-02-10 20:25:54 +01:00
Andre Puschmann 6cce22d6b8 add support for GPS-based sync to UE sync object 2020-02-10 20:25:54 +01:00
Andre Puschmann d62b835a4c sync USRP time to GPS when GPSDO is used as clock source 2020-02-10 20:25:54 +01:00
Francisco Paisana c9ac42f11d renamed rlc pdu / mac sdu allocate functions, and added some comments describing what these functions do 2020-02-10 16:55:18 +00:00
Francisco Paisana 87038375d5 fixed the building of MAC SDUs in the scheduler. Now, we ensure there is always space for the MAC subheader and RLC header. The MAC subheader is correctly discounted from the remaining bytes in a TB. 2020-02-10 16:55:18 +00:00
Francisco Paisana 089f72d573 ensure minimum tbs. If it cant do it, increase mcs until it can. 2020-02-10 16:55:18 +00:00
Andre Puschmann cccabdaf4f removing unneeded install targets for static libs (reported by Filipe) 2020-02-10 17:38:42 +01:00
Andre Puschmann 627dac49b0 log message when ASN1 couldn't unpack DL message 2020-02-10 12:17:08 +01:00
Francisco Paisana c8fc0d91b3 changed the supported cc list to a vector of structs 2020-02-07 15:06:46 +00:00
Francisco Paisana 42b15c7bed use common ue_cfg interface to set the ue antenna info 2020-02-07 15:06:46 +00:00
Francisco Paisana 5f557700f2 changed the sched::ue_cfg(...) function to allow diff configurations. The RRC now activates all carriers after rrc reconf complete 2020-02-07 15:06:46 +00:00
Francisco Paisana b66bc3a6b0 create a sched_interface struct for antenna info dedicated. This way we remove the asn1 as a dependency in the scheduler 2020-02-07 15:06:46 +00:00
Francisco Paisana 88a22e7dbf support cc cfg from rrc 2020-02-07 15:06:46 +00:00
Francisco Paisana 095d0cda5a fix regs leak 2020-02-07 15:06:46 +00:00
Francisco Paisana e86862611c update the scheduler interfaces to accommodate the configuration of multiple carriers 2020-02-07 15:06:46 +00:00
Francisco Paisana 73c528793f add interface changes to dummy classes and scheduler test 2020-02-07 15:06:46 +00:00
Francisco Paisana 2dc31ea440 added interface to configure multiple cells from the RRC 2020-02-07 15:06:46 +00:00
Andre Puschmann c7343cf6d8 protect sf_buffer from overrun in receive_samples
this patch adds a buffer len paramter to the receive_samples() call
that protects the (also) provided buffer from overflowing.

currently each call to srslte_ue_sync_zerocopy() which then calls receive_samples()
relies on a buffer that is "big enough". But that buffer is sometimes
2 subframes, sometimes 3 or 5, sometimes has space for the maximum PRB size, sometimes
only for 6 PRBs (i.e. during cell search).

By extending the interface to pass the buffer size we can make sure that
only samples are received that actually fit inside the provided buffer.
2020-02-07 10:21:30 +01:00
Andre Puschmann 23bab1f207 fix potential segfault when overrunning char array
this fixed an issue when printing many neighbor cells because
the calculation of the remaining length can be negative
2020-02-07 10:20:12 +01:00
Andre Puschmann 0e337a01c3 fix SRB2 security handling in SS 2020-02-07 10:20:12 +01:00
Andre Puschmann 7c1b4c1f12 add support for IMEISV when requesting UE idendity 2020-02-07 10:19:42 +01:00
Jason Tang e15eb936fa Support multiple SoapySDR devices using soapy=# device_arg 2020-02-07 10:16:15 +01:00
Ismael Gomez f2851b037e Fix concurrency issue in set_crnti() 2020-02-06 20:30:09 +01:00
Pau Espin Pedrol 2f3a125757 srsue: fix trailing whitespace 2020-02-06 16:19:40 +01:00
Pau Espin Pedrol 4949df257e Proper shutdown on SIGHUP
If a process exits and has a controlling terminal, everything under
it gets a SIGHUP by the kernel. That's the case for instance when
running a srsUE over ssh with some specific parameters. As a result,
when the ssh client is killed, SIGHUP is sent to srsUE, which will be
killed immediatelly without proper release, which means in turn that log
buffers are not flushed.
Let's do proper shutdown when SIGHUP is received so that everyone can
get log files.
2020-02-06 16:19:40 +01:00
Pau Espin Pedrol 64de92183b epc: Drop signal(SIGKILL) calls
SIGKILL cannot be intercepted by apps, so it's useless adding a signal
handler for them. I'm pretty sure the signal() function is erroring in
this scenarios. From signal() man page:
"The signals SIGKILL and SIGSTOP cannot be caught or ignored."
2020-02-06 16:19:40 +01:00
Andre Puschmann ed179fd311 timers: rename value() to time_elapsed()
this seems to be better readable than value() since
we've sometimes confused it with the timeout value
2020-02-06 14:40:47 +01:00
Andre Puschmann b085a8eabf rework debug log when getting buffer state in RLC AM
also adds some description to RLC functions being called
from outside the stack thread
2020-02-06 14:40:47 +01:00
Andre Puschmann 4932fb8719 fix value() return in timers when timer is expired
this makes sure that value() never returns a value larger
than the timer duration
2020-02-06 14:40:47 +01:00