FreeCalypso > hg > fc-tourmaline
view src/ui/bmi/mmiBlkManager.h @ 303:f76436d19a7a default tip
!GPRS config: fix long-standing AT+COPS chance hanging bug
There has been a long-standing bug in FreeCalypso going back years:
sometimes in the AT command bring-up sequence of an ACI-only MS,
the AT+COPS command would produce only a power scan followed by
cessation of protocol stack activity (only L1 ADC traces), instead
of the expected network search sequence. This behaviour was seen
in different FC firmware versions going back to Citrine, and seemed
to follow some law of chance, not reliably repeatable.
This bug has been tracked down and found to be specific to !GPRS
configuration, stemming from our TCS2/TCS3 hybrid and reconstruction
of !GPRS support that was bitrotten in TCS3.2/LoCosto version.
ACI module psa_mms.c, needed only for !GPRS, was missing in the TCS3
version and had to be pulled from TCS2 - but as it turns out,
there is a new field in the MMR_REG_REQ primitive that needs to be
set correctly, and that psa_mms.c module is the place where this
initialization needed to be added.
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Thu, 08 Jun 2023 08:23:37 +0000 |
parents | 62480f597962 |
children |
line wrap: on
line source
#ifndef _MMI_BLKMANAGER_H_ #define _MMI_BLKMANAGER_H_ /******************************************************************************* CONDAT (UK) ******************************************************************************** This software product is the property of Condat (UK) Ltd and may not be disclosed to any third party without the express permission of the owner. ******************************************************************************** $Project name: Basic MMI $Project code: BMI (6349) $Module: PhoneBook $File: MmiBlkManager.h $Revision: 1.0 $Author: Condat(UK) $Date: 25/10/00 ******************************************************************************** Description: The block manager is responsible for creating and initialising the structures and tables to allow access to the strings, icons sounds and vibrations required by the MMI. Each of these items is effectively a contiguous block of memory, which is accessed via a block resource. Each of the block resources are provided by this package ******************************************************************************** $History: MmiBlkManager.h 25/10/00 Original Condat(UK) BMI version. $End *******************************************************************************/ #include "mmiBlkResources.h" /* Define the block resources we are dealing with, for now just identify the sounds icons and vibrations, and fill the rest with languages. We don't actually care what these are for now, they're just placeholders */ #define ALLOC_MEMORY mfwAlloc #define FREE_MEMORY mfwFree #define MMI_LANG_0 0 #define MMI_LANG_1 1 #define MMI_LANG_2 2 #define MMI_LANG_3 3 #define MMI_LANG_4 4 #define MMI_LANG_5 5 #define MMI_LANG_6 6 #define MMI_LANG_7 7 #define MMI_LANG_8 8 #define MMI_LANG_9 9 #define MMI_LANG_10 10 #define MMI_LANG_11 11 #define MMI_LANG_12 12 #define MMI_SOUNDS 13 #define MMI_ICONS 14 #define MMI_MOVES 15 /* Define initialise and shutdown methods */ tBlkHandle mmibm_Initialise( tBlkHandle BlkBase, int NumEntries ); void mmibm_ShutDown( tBlkHandle *BlkHandle ); /* Since this module will be managing each of the block handlers for each of the resources, we need to be able to supply the appropriate handle for any given type to the calling routine. */ tBlkHandle mmibm_SupplyResourceHandler( tBlkHandle ManagerHandle, tBlkId Id ); /* Added to remove warning Aug - 11 */ EXTERN U8 *mfwAlloc (U32 size); /* End - Remove warning */ /******************************************************************************* End of File *******************************************************************************/ #endif