mirror of https://github.com/PentHertz/srsLTE.git
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.
This commit is contained in:
parent
e7239163e9
commit
fab86382c1
|
@ -462,7 +462,12 @@ public:
|
|||
/* Instructs the MAC to start receiving an MCH */
|
||||
virtual void mch_start_rx(uint32_t lcid) = 0;
|
||||
|
||||
virtual void set_config(srslte::mac_cfg_t& mac_cfg) = 0;
|
||||
/* Set entire MAC config */
|
||||
virtual void set_config(srslte::mac_cfg_t& mac_cfg) = 0;
|
||||
|
||||
/* Update SR config only for PUCCH release */
|
||||
virtual void set_config(srslte::sr_cfg_t& sr_cfg) = 0;
|
||||
|
||||
virtual void set_rach_ded_cfg(uint32_t preamble_index, uint32_t prach_mask) = 0;
|
||||
|
||||
virtual void get_rntis(ue_rnti_t* rntis) = 0;
|
||||
|
|
|
@ -84,6 +84,7 @@ public:
|
|||
|
||||
/******** set/get MAC configuration ****************/
|
||||
void set_config(mac_cfg_t& mac_cfg);
|
||||
void set_config(sr_cfg_t& sr_cfg);
|
||||
void set_contention_id(uint64_t uecri);
|
||||
|
||||
/******* interface from demux object ****************/
|
||||
|
|
|
@ -602,6 +602,13 @@ void mac::set_mbsfn_config(uint32_t nof_mbsfn_services)
|
|||
phy_mbsfn_cfg.nof_mbsfn_services = nof_mbsfn_services;
|
||||
}
|
||||
|
||||
// Only reset SR config
|
||||
void mac::set_config(sr_cfg_t& sr_cfg)
|
||||
{
|
||||
Info("Setting SR configuration\n");
|
||||
sr_procedure.set_config(sr_cfg);
|
||||
}
|
||||
|
||||
void mac::set_config(mac_cfg_t& mac_cfg)
|
||||
{
|
||||
Info("Setting configuration\n");
|
||||
|
|
|
@ -2449,7 +2449,7 @@ void rrc::set_phy_default_pucch_srs()
|
|||
|
||||
// SR configuration affects to MAC SR too
|
||||
current_mac_cfg.sr_cfg.reset();
|
||||
mac->set_config(current_mac_cfg);
|
||||
mac->set_config(current_mac_cfg.sr_cfg);
|
||||
}
|
||||
|
||||
void rrc::set_mac_default()
|
||||
|
|
|
@ -159,6 +159,7 @@ public:
|
|||
void mch_start_rx(uint32_t lcid) override {}
|
||||
|
||||
void set_config(srslte::mac_cfg_t& mac_cfg) override {}
|
||||
void set_config(srslte::sr_cfg_t& sr_cfg) override {}
|
||||
void set_rach_ded_cfg(uint32_t preamble_index, uint32_t prach_mask) override {}
|
||||
|
||||
void get_rntis(ue_rnti_t* rntis) override {}
|
||||
|
|
Loading…
Reference in New Issue