mirror of https://github.com/PentHertz/srsLTE.git
add macro for invalid RNTI 0x0
This commit is contained in:
parent
265037c202
commit
327aa97cfd
|
@ -71,6 +71,7 @@
|
||||||
typedef enum { SRSLTE_CP_NORM = 0, SRSLTE_CP_EXT } srslte_cp_t;
|
typedef enum { SRSLTE_CP_NORM = 0, SRSLTE_CP_EXT } srslte_cp_t;
|
||||||
typedef enum { SRSLTE_SF_NORM = 0, SRSLTE_SF_MBSFN } srslte_sf_t;
|
typedef enum { SRSLTE_SF_NORM = 0, SRSLTE_SF_MBSFN } srslte_sf_t;
|
||||||
|
|
||||||
|
#define SRSLTE_INVALID_RNTI 0x0 // TS 36.321 - Table 7.1-1 RNTI 0x0 isn't a valid DL RNTI
|
||||||
#define SRSLTE_CRNTI_START 0x000B
|
#define SRSLTE_CRNTI_START 0x000B
|
||||||
#define SRSLTE_CRNTI_END 0xFFF3
|
#define SRSLTE_CRNTI_END 0xFFF3
|
||||||
#define SRSLTE_RARNTI_START 0x0001
|
#define SRSLTE_RARNTI_START 0x0001
|
||||||
|
|
|
@ -370,10 +370,9 @@ int cc_worker::decode_pdcch_dl()
|
||||||
{
|
{
|
||||||
int nof_grants = 0;
|
int nof_grants = 0;
|
||||||
|
|
||||||
srslte_dci_dl_t dci[SRSLTE_MAX_CARRIERS] = {};
|
|
||||||
|
|
||||||
uint16_t dl_rnti = phy->stack->get_dl_sched_rnti(CURRENT_TTI);
|
uint16_t dl_rnti = phy->stack->get_dl_sched_rnti(CURRENT_TTI);
|
||||||
if (dl_rnti) {
|
if (dl_rnti != SRSLTE_INVALID_RNTI) {
|
||||||
|
srslte_dci_dl_t dci[SRSLTE_MAX_CARRIERS] = {};
|
||||||
|
|
||||||
/* Blind search first without cross scheduling then with it if enabled */
|
/* Blind search first without cross scheduling then with it if enabled */
|
||||||
for (int i = 0; i < (ue_dl_cfg.cfg.dci.cif_present ? 2 : 1) && !nof_grants; i++) {
|
for (int i = 0; i < (ue_dl_cfg.cfg.dci.cif_present ? 2 : 1) && !nof_grants; i++) {
|
||||||
|
|
|
@ -291,7 +291,8 @@ uint16_t mac::get_ul_sched_rnti(uint32_t tti)
|
||||||
if (uernti.crnti) {
|
if (uernti.crnti) {
|
||||||
return uernti.crnti;
|
return uernti.crnti;
|
||||||
}
|
}
|
||||||
return 0;
|
Error("Couldn't configure RNTI for UL transmission.\n");
|
||||||
|
return SRSLTE_INVALID_RNTI;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool mac::is_in_window(uint32_t tti, int* start, int* len)
|
bool mac::is_in_window(uint32_t tti, int* start, int* len)
|
||||||
|
@ -329,7 +330,7 @@ uint16_t mac::get_dl_sched_rnti(uint32_t tti)
|
||||||
// TODO: This scheduling decision belongs to RRC
|
// TODO: This scheduling decision belongs to RRC
|
||||||
if (si_window_length > 1) { // This is not a SIB1
|
if (si_window_length > 1) { // This is not a SIB1
|
||||||
if ((tti / 10) % 2 == 0 && (tti % 10) == 5) { // Skip subframe #5 for which SFN mod 2 = 0
|
if ((tti / 10) % 2 == 0 && (tti % 10) == 5) { // Skip subframe #5 for which SFN mod 2 = 0
|
||||||
return 0;
|
return SRSLTE_INVALID_RNTI;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Debug("SCHED: Searching SI-RNTI, tti=%d, window start=%d, length=%d\n", tti, si_window_start, si_window_length);
|
Debug("SCHED: Searching SI-RNTI, tti=%d, window start=%d, length=%d\n", tti, si_window_start, si_window_length);
|
||||||
|
@ -352,7 +353,9 @@ uint16_t mac::get_dl_sched_rnti(uint32_t tti)
|
||||||
Debug("SCHED: Searching P-RNTI\n");
|
Debug("SCHED: Searching P-RNTI\n");
|
||||||
return SRSLTE_PRNTI;
|
return SRSLTE_PRNTI;
|
||||||
}
|
}
|
||||||
return 0;
|
|
||||||
|
// turn off DCI search for this TTI
|
||||||
|
return SRSLTE_INVALID_RNTI;
|
||||||
}
|
}
|
||||||
|
|
||||||
void mac::bch_decoded_ok(uint8_t* payload, uint32_t len)
|
void mac::bch_decoded_ok(uint8_t* payload, uint32_t len)
|
||||||
|
|
Loading…
Reference in New Issue