FreeCalypso > hg > tcs211-l1-reconst
comparison chipsetsw/layer1/p_cfile/l1p_sync.c @ 335:e57ad7d45ea4
l1p_sync.c: reconstruction complete, both XIP and intram objects perfect match
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Sun, 29 Oct 2017 18:30:00 +0000 |
parents | 30427cc02e46 |
children |
comparison
equal
deleted
inserted
replaced
334:30427cc02e46 | 335:e57ad7d45ea4 |
---|---|
161 // No action within L1S. | 161 // No action within L1S. |
162 { | 162 { |
163 WORD8 i; | 163 WORD8 i; |
164 UWORD8 min_synchro_ts = 7; | 164 UWORD8 min_synchro_ts = 7; |
165 BOOL new_tbf_installed = FALSE; | 165 BOOL new_tbf_installed = FALSE; |
166 T_PACKET_TA *current_ta_config = NULL; | 166 T_PACKET_TA *current_ta_config; |
167 | 167 |
168 // In packet transfer mode, we only detect STI at block boundaries in order to udpate the | 168 // In packet transfer mode, we only detect STI at block boundaries in order to udpate the |
169 // ASET structure after the last Control of the previous TBF | 169 // ASET structure after the last Control of the previous TBF |
170 if (l1a_l1s_com.l1s_en_task[PDTCH] == TASK_ENABLED) | 170 if (l1a_l1s_com.l1s_en_task[PDTCH] == TASK_ENABLED) |
171 { | 171 { |
578 // Enable PTCCH task if required. | 578 // Enable PTCCH task if required. |
579 if((l1pa_l1ps_com.transfer.aset->packet_ta.ta_index != 255) && | 579 if((l1pa_l1ps_com.transfer.aset->packet_ta.ta_index != 255) && |
580 (l1pa_l1ps_com.transfer.aset->packet_ta.ta_tn != 255)) | 580 (l1pa_l1ps_com.transfer.aset->packet_ta.ta_tn != 255)) |
581 { | 581 { |
582 // No action when the configuration is the same as the current one. | 582 // No action when the configuration is the same as the current one. |
583 if(current_ta_config != NULL) | |
584 { | |
585 if((l1pa_l1ps_com.transfer.aset->packet_ta.ta_index != current_ta_config->ta_index) || | 583 if((l1pa_l1ps_com.transfer.aset->packet_ta.ta_index != current_ta_config->ta_index) || |
586 (l1pa_l1ps_com.transfer.aset->packet_ta.ta_tn != current_ta_config->ta_tn) || | 584 (l1pa_l1ps_com.transfer.aset->packet_ta.ta_tn != current_ta_config->ta_tn) || |
587 (l1a_l1s_com.l1s_en_task[PTCCH] == TASK_DISABLED)) | 585 (l1a_l1s_com.l1s_en_task[PTCCH] == TASK_DISABLED)) |
588 // The configuration is different than the current one or no PTCCH is currently running | 586 // The configuration is different than the current one or no PTCCH is currently running |
589 // (for example in packet idle) | 587 // (for example in packet idle) |
593 l1pa_l1ps_com.transfer.ptcch.request_dl = FALSE; | 591 l1pa_l1ps_com.transfer.ptcch.request_dl = FALSE; |
594 | 592 |
595 // Enable PTCCH task. | 593 // Enable PTCCH task. |
596 l1a_l1s_com.l1s_en_task[PTCCH] = TASK_ENABLED; | 594 l1a_l1s_com.l1s_en_task[PTCCH] = TASK_ENABLED; |
597 } | 595 } |
598 } | |
599 } | 596 } |
600 else | 597 else |
601 // PTCCH is not configured. | 598 // PTCCH is not configured. |
602 { | 599 { |
603 // Disable PTCCH task. | 600 // Disable PTCCH task. |
640 } | 637 } |
641 break; | 638 break; |
642 | 639 |
643 default: | 640 default: |
644 { | 641 { |
645 if(l1a_l1s_com.l1s_en_task[PDTCH] == TASK_ENABLED) | 642 /* |
643 * FreeCalypso: removal of the following line is | |
644 * TCS211 reconstruction | |
645 */ | |
646 //if(l1a_l1s_com.l1s_en_task[PDTCH] == TASK_ENABLED) | |
646 //In case of transition idle to transfer the Packet transfer mode is set when synchro is executed | 647 //In case of transition idle to transfer the Packet transfer mode is set when synchro is executed |
647 // Layer 1 internal mode is set to PACKET TRANSFER MODE. | 648 // Layer 1 internal mode is set to PACKET TRANSFER MODE. |
648 l1a_l1s_com.mode = PACKET_TRANSFER_MODE; | 649 l1a_l1s_com.mode = PACKET_TRANSFER_MODE; |
649 | 650 |
650 // Enable PDTCH task. | 651 // Enable PDTCH task. |
986 // initialize the TBF type for the confirmation msg | 987 // initialize the TBF type for the confirmation msg |
987 ((T_L1P_TBF_RELEASED *) msg->SigP)->tbf_type = l1pa_l1ps_com.transfer.tbf_release_param.released_tbf; | 988 ((T_L1P_TBF_RELEASED *) msg->SigP)->tbf_type = l1pa_l1ps_com.transfer.tbf_release_param.released_tbf; |
988 | 989 |
989 if (l1pa_l1ps_com.transfer.aset->allocated_tbf == NO_TBF) | 990 if (l1pa_l1ps_com.transfer.aset->allocated_tbf == NO_TBF) |
990 { | 991 { |
991 l1ps.read_param.assignment_id = 0x01; /* default non initialised value for next tbf */ | 992 /* |
993 * FreeCalypso: removal of the following line is | |
994 * TCS211 reconstruction | |
995 */ | |
996 //l1ps.read_param.assignment_id = 0x01; /* default non initialised value for next tbf */ | |
992 | 997 |
993 ((T_L1P_TBF_RELEASED *) msg->SigP)->released_all = TRUE; | 998 ((T_L1P_TBF_RELEASED *) msg->SigP)->released_all = TRUE; |
994 | 999 |
995 #if (DSP == 33) || (DSP == 34) || (DSP == 35) || (DSP == 36) || (DSP == 37) | 1000 #if (DSP == 33) || (DSP == 34) || (DSP == 35) || (DSP == 36) || (DSP == 37) |
996 // Correction of BUG1041: reset of multislot bit in d_bbctrl_gprs | 1001 // Correction of BUG1041: reset of multislot bit in d_bbctrl_gprs |