mirror of https://github.com/PentHertz/srsLTE.git
SRSLTE: fix PUCCH 1b Channel selection resource
This commit is contained in:
parent
3f5c270fce
commit
cd12307c91
|
@ -1310,7 +1310,12 @@ int srslte_pucch_cs_resources(srslte_pucch_cfg_t* cfg, srslte_uci_cfg_t* uci_cfg
|
|||
// If grant has been scheduled in PCell
|
||||
if (uci_cfg->ack[i].grant_cc_idx == 0) {
|
||||
for (uint32_t j = 0; j < uci_cfg->ack[i].nof_acks && k < SRSLTE_PUCCH_CS_MAX_ACK; j++) {
|
||||
n_pucch_i[k++] = uci_cfg->ack[i].ncce[0] + cfg->N_pucch_1 + j;
|
||||
if (k % 2 == 0) {
|
||||
n_pucch_i[k] = cfg->n1_pucch_an_cs[uci_cfg->ack[i].tpc_for_pucch][k / 2];
|
||||
} else {
|
||||
n_pucch_i[k] = uci_cfg->ack[i].ncce[0] + cfg->N_pucch_1 + 1;
|
||||
}
|
||||
k++;
|
||||
}
|
||||
} else {
|
||||
for (uint32_t j = 0; j < uci_cfg->ack[i].nof_acks; j++) {
|
||||
|
|
|
@ -1008,14 +1008,14 @@ static void gen_ack_fdd(srslte_pdsch_ack_t* ack_info, srslte_uci_data_t* uci_dat
|
|||
uci_data->cfg.cqi.data_enable = false;
|
||||
|
||||
//
|
||||
for (int i = 0; i < 2; i++) {
|
||||
for (int i = 0; i < ack_info->nof_cc; i++) {
|
||||
uci_data->cfg.ack[i].nof_acks = (tb_count != 0) ? nof_tb : 0;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
// For 2 or more configured cells, report nof_tb per carrier except if there are no HARQ-ACK bits to report, in
|
||||
// which case we set to 0
|
||||
for (int i = 0; i < 2; i++) {
|
||||
for (int i = 0; i < ack_info->nof_cc; i++) {
|
||||
uci_data->cfg.ack[i].nof_acks = (tb_count != 0) ? nof_tb : 0;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -959,7 +959,7 @@ int srslte_ue_ul_encode(srslte_ue_ul_t* q, srslte_ul_sf_cfg_t* sf, srslte_ue_ul_
|
|||
|
||||
/* If all bits are DTX, do not transmit HARQ */
|
||||
if (dtx_count == srslte_uci_cfg_total_ack(&cfg->ul_cfg.pusch.uci_cfg)) {
|
||||
for (int i = 0; i < 2; i++) { // Format 1b-CS only supports 2 CC
|
||||
for (int i = 0; i < SRSLTE_MAX_CARRIERS; i++) {
|
||||
cfg->ul_cfg.pusch.uci_cfg.ack[i].nof_acks = 0;
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue