FreeCalypso > hg > fc-tourmaline
comparison src/ui/mfw/mfw_cb.c @ 3:67bfe9f274f6
src/ui: import of src/ui3 from Magnetite
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Fri, 16 Oct 2020 06:33:10 +0000 |
parents | |
children | 92abb46dc1ba |
comparison
equal
deleted
inserted
replaced
2:3a14ee9a9843 | 3:67bfe9f274f6 |
---|---|
1 /* | |
2 +--------------------------------------------------------------------+ | |
3 | PROJECT: GSM-MFW (8417) $Workfile:: Mfw_cb.c $| | |
4 | $Author:: Ak $Revision:: 1 $| | |
5 | CREATED: 13.10.98 $Modtime:: 10.04.00 15:01 $| | |
6 | CREATED: 13.10.98 $Modtime:: 20.01.00 14:29 $| | |
7 | STATE : code | | |
8 +--------------------------------------------------------------------+ | |
9 | |
10 MODULE : MFW_CB | |
11 | |
12 PURPOSE : This modul contains the functions for call back. | |
13 | |
14 | |
15 $History:: Mfw_cb.c $ | |
16 Aug 07, 2007 DR:OMAPS00137726 x0066814(Geetha) | |
17 Description:HPLMN Manual Selection at power on -unable to perform manual selection at power ON | |
18 Solution: In rAT_PlusCME, under case AT_CMD_NRG, added the code to list PLMN if Manual is the | |
19 network regieteration mode during bootup. | |
20 | |
21 May 31, 2007 DR: OMAPS00133201 x0pleela | |
22 Description: MS keeps searching networks and doesn't list available PLMNs after | |
23 performing manual selection | |
24 Solution : In function rAT_PlusCME(), for commands AT_CMD_COPS and | |
25 AT_CMD_NRG, passing the error code as parameter to function | |
26 nm_error_cops() | |
27 | |
28 June 05, 2007 DR:OMAPS00133241 x0061560(sateeshg) | |
29 Description:ASTEC29607,SIM:The sim card should not return 9240 still. | |
30 Solution :Error indication from Aci E_PHB_ERROR sent to mmi. | |
31 | |
32 | |
33 May 10 2007 DR:OMAPS00127983 x066814 | |
34 Description: PSTN caller name not displayed on MS | |
35 Solution: Added the following functions: | |
36 1. set_cnap_name() | |
37 2. get_cnap_name() | |
38 3. send_cnap_name_information_mmi() | |
39 Using these functions, added the code for rAT_PercentCNAP. | |
40 | |
41 Oct 05, 2006 ER: OMAPS00094496 x0061088(Prachi) | |
42 Description:Enhance RSSI to 3 parameters: Strength, quality, min-access-level | |
43 Solution:To solve the ER OMAPS0094496, rAT_PercentCSQ() is now receving four | |
44 parameters i.e. RSSI,Bit Error rate, Actual level, Minimum access level and also | |
45 rAT_PercentCSQ() is checking if actual level is less than minimum level and then | |
46 calls globalSignalUpdate() to show the signal strength. | |
47 | |
48 | |
49 Aug 01, 2006 DR: OMAPS00082374 x0pleela | |
50 Description: EONS Failures - unexpected output from the MMI: 2 carriers; on the top always T-Mobile | |
51 Solution: a) Added the functionality which was removed before for rat_%CSTAT | |
52 | |
53 Jun 23, 2006 DR: OMAPS00082374 x0pleela | |
54 Description: EONS Failures - unexpected output from the MMI: 2 carriers; on the top always T-Mobile | |
55 Solution: a) Removed the usage of global variable gEons_alloc_active | |
56 b) Removed the call to function set_opn_sel_done(TRUE); in func rat_%CNIV | |
57 c) Removed the functionality added before for rat_%CSTAT | |
58 | |
59 July 17, 2006 DR: OMAPS00082792 x0039928 | |
60 Description:Changes to be done in MMI for Move all entries from SIM to FFS (Defect 76492) | |
61 Solution: Ready signal is sent to MMI when rAT_Ok is called by ACI for CPBW command | |
62 | |
63 June 02, 2006 DR: OMAPS00078005 x0021334 | |
64 Descripton: Test for NITZ (Network Identity and Timezone) support - No New time was displayed | |
65 Solution: New Time/Date received from network is sent to MFW by lower layer by invoking 'rAT_PercentCTZV' | |
66 function. This function has now been implemented to pass on the received values to MMI | |
67 for user confirmation and RTC updation. | |
68 | |
69 May 18, 2006 DR: OMAPS00070657 x0pleela | |
70 Description: CPHS feature on Locosto-Lite | |
71 Solution: Function "sendCPWIEvt" is called in rAT_PercentCPVWI to handle voice mail indication | |
72 | |
73 xrashmic 1 Jul, 2006 OMAPS00075784 | |
74 Changed U8 to T_ACI_CME_ERR in rAT_PlusCME | |
75 | |
76 June 15, 2006 OMAPS00079492 x0043642 | |
77 Description : FT TMO (wk20/06) TC 9.1, 9.2 Multi Party, MS fails to return to idle mode | |
78 Solution : call set_cmdHold() to assign MFW_CM_DISCONNECT_ALL to variable cmd_hold | |
79 when ATH command is entered. | |
80 | |
81 May 15, 2006 DVT: OMAPS00077751 x0043642 | |
82 Description: MFW needs to implement rAT_PercentSATT needed for SAT class E | |
83 Solution: Define a function rAT_PercentSATT() | |
84 May 15, 2006 DR: OMAPS00067919 x0pleela | |
85 Description: SIMP:On repeat Depersonalisation with invalid password MEPD unblock key should | |
86 be asked not Puk1. | |
87 Solution:Made the following changes | |
88 1. Added functionality for rAT_PlusCPIN | |
89 2. Made code changss in rat_plusCME for SIMP | |
90 | |
91 May 10, 2006 REF: DRT OMAPS00075829 xdeepadh | |
92 Description: Submission of ACI and SAP changes for Imaging ERs | |
93 Solution: Using the mechanism where MFW can receive primitives without | |
94 ACI to know about it. | |
95 | |
96 | |
97 Apr 24, 2006 ERT: OMAPS00067603 x0043642 | |
98 Description: Engineering mode | |
99 Solution: Handle the response from ACI (through rAT_percentEINFO). | |
100 | |
101 | |
102 Mar 15, 2006 ER: OMAPS00067709 x0pleela | |
103 Description: Voice Buffering implementation on C+ for PTT via PCM API | |
104 Solution: Functions rAT_NO_CARRIER, rAT_NO_ANSWER | |
105 Changes: update the reason for calling record_stop | |
106 | |
107 * Mar 23, 2006 REF:DR OMAPS00069173 a0393213 | |
108 * Description: GSM - MOC - AT USB - Live Network . Display problem when a MO call is made through AT interface | |
109 * Solution: misplaced break statement corrected | |
110 | |
111 | |
112 Feb 15, 2006 ER: OMAPS00065203 x0pleela | |
113 Description: Cingular Operator Name Prioritization implementation required | |
114 Solution: Incorporated review comments | |
115 - Removed global variable gOper_sel_done added earlier | |
116 | |
117 Feb 09, 2006 ER: OMAPS00065203 x0pleela | |
118 Description: Cingular Operator Name Prioritization implementation required | |
119 Solution: Implemented functionality for rAT_PercentCNIV | |
120 Implemented functionality for rAT_PercentCSTAT | |
121 | |
122 | |
123 * | |
124 * Nov 02, 2005 DR OMAPS00052132 xdeepadh | |
125 * Bug:Not able to access the SMS inbox and also not able to send SMS in Locosto Lite build | |
126 * Fix: The ATI Enums usage has been put under the FF_ATI flag | |
127 | |
128 Nov 03, 2005 DR: OMAPS00052032 - xpradipg | |
129 Description : Locosto: SIMP - integration of issues submitted by solDel on | |
130 ME Personalization - changes as per the new interfaces | |
131 Solution : The return value of sAT_PlusCLCK of AT_EXCT is handled and | |
132 a please wait screen is displayed until the response is recieved | |
133 | |
134 * | |
135 * June 01, 2005 REF: CRR 31559 x0021334 | |
136 * Description: TCS2.1.1 SW not buildable without engineering mode | |
137 * Solution: Engineering Mode specific functions are guarded by 'FF_EM_MODE' flag | |
138 * | |
139 * x0018858 24 Mar, 2005 MMI-FIX-11321 | |
140 * Issue Description :- If the inbox is full and a new message is receivd, no indication is received. | |
141 * Fix: Added support for handling indication when message box is full and | |
142 * there is a pending message. | |
143 | |
144 * x0047685, May 22 2006 | |
145 * Added R99 CC Interface changes. | |
146 * rAT_PercentCMGRS moved under REL99 flag. | |
147 * | |
148 * ***************** Version 51 ***************** | |
149 * User: Vo Date: 20.01.00 Time: 14:30 | |
150 * Updated in $/GSM/Condat/MS/SRC/MFW | |
151 * | |
152 * ***************** Version 50 ***************** | |
153 * User: Vo Date: 20.01.00 Time: 12:24 | |
154 * Updated in $/GSM/Condat/MS/SRC/MFW | |
155 * | |
156 * ***************** Version 49 ***************** | |
157 * User: Vo Date: 14.01.00 Time: 20:02 | |
158 * Updated in $/GSM/Condat/MS/SRC/MFW | |
159 * New: Save the setting for SMS parameter and cell broadcast | |
160 * parameter | |
161 * | |
162 * ***************** Version 48 ***************** | |
163 * User: Vo Date: 10.01.00 Time: 16:15 | |
164 * Updated in $/GSM/Condat/MS/SRC/MFW | |
165 * | |
166 * ***************** Version 47 ***************** | |
167 * User: Ak Date: 5.01.00 Time: 13:27 | |
168 * Updated in $/GSM/Condat/MS/SRC/MFW | |
169 * | |
170 * ***************** Version 46 ***************** | |
171 * User: Vo Date: 22.12.99 Time: 15:47 | |
172 * Updated in $/GSM/Condat/MS/SRC/MFW | |
173 * add "call id" for disconnect | |
174 * | |
175 * ***************** Version 45 ***************** | |
176 * User: Sab Date: 2.12.99 Time: 9:25 | |
177 * Updated in $/GSM/Condat/MS/SRC/MFW | |
178 * Why: Improvement. | |
179 * What: Implementation of phonebook ready indication. | |
180 * | |
181 * ***************** Version 44 ***************** | |
182 * User: Vo Date: 11.11.99 Time: 14:31 | |
183 * Updated in $/GSM/Condat/MS/SRC/MFW | |
184 * New: DTMF | |
185 * | |
186 * ***************** Version 43 ***************** | |
187 * User: Vo Date: 21.10.99 Time: 13:05 | |
188 * Updated in $/GSM/Condat/MS/SRC/MFW | |
189 * new implemention for command CPOL | |
190 * | |
191 * ***************** Version 42 ***************** | |
192 * User: Vo Date: 10.09.99 Time: 19:14 | |
193 * Updated in $/GSM/DEV/MS/SRC/MFW | |
194 * Add CNUM and USSD | |
195 * | |
196 * ***************** Version 41 ***************** | |
197 * User: Vo Date: 30.08.99 Time: 13:25 | |
198 * Updated in $/GSM/DEV/MS/SRC/MFW | |
199 * AoC | |
200 * PIN unblock | |
201 * call held | |
202 * | |
203 * ***************** Version 39 ***************** | |
204 * User: Vo Date: 16.07.99 Time: 13:50 | |
205 * Updated in $/GSM/DEV/MS/SRC/MFW | |
206 * | |
207 * ***************** Version 38 ***************** | |
208 * User: Es Date: 6.07.99 Time: 12:02 | |
209 * Updated in $/GSM/DEV/MS/SRC/MFW | |
210 * | |
211 * ***************** Version 37 ***************** | |
212 * User: Vo Date: 2.07.99 Time: 19:02 | |
213 * Updated in $/GSM/DEV/MS/SRC/MFW | |
214 * | |
215 * ***************** Version 36 ***************** | |
216 * User: Vo Date: 2.07.99 Time: 15:25 | |
217 * Updated in $/GSM/DEV/MS/SRC/MFW | |
218 * | |
219 * ***************** Version 35 ***************** | |
220 * User: Vo Date: 22.06.99 Time: 12:53 | |
221 * Updated in $/GSM/DEV/MS/SRC/MFW | |
222 * | |
223 * ***************** Version 34 ***************** | |
224 * User: Vo Date: 21.06.99 Time: 20:59 | |
225 * Updated in $/GSM/DEV/MS/SRC/MFW | |
226 * | |
227 * ***************** Version 32 ***************** | |
228 * User: Vo Date: 14.06.99 Time: 13:56 | |
229 * Updated in $/GSM/DEV/MS/SRC/MFW | |
230 * | |
231 * ***************** Version 31 ***************** | |
232 * User: Vo Date: 14.06.99 Time: 10:06 | |
233 * Updated in $/GSM/DEV/MS/SRC/MFW | |
234 * | |
235 * ***************** Version 30 ***************** | |
236 * User: Vo Date: 1.06.99 Time: 14:46 | |
237 * Updated in $/GSM/DEV/MS/SRC/MFW | |
238 * | |
239 * ***************** Version 29 ***************** | |
240 * User: Vo Date: 20.05.99 Time: 17:26 | |
241 * Updated in $/GSM/DEV/MS/SRC/MFW | |
242 * | |
243 * ***************** Version 28 ***************** | |
244 * User: Vo Date: 28.04.99 Time: 16:11 | |
245 * Updated in $/GSM/DEV/MS/SRC/MFW | |
246 * | |
247 * ***************** Version 26 ***************** | |
248 * User: Vo Date: 31.03.99 Time: 14:09 | |
249 * Updated in $/GSM/DEV/MS/SRC/MFW | |
250 * | |
251 * ***************** Version 24 ***************** | |
252 * User: Vo Date: 15.03.99 Time: 13:40 | |
253 * Updated in $/GSM/DEV/MS/SRC/MFW | |
254 * | |
255 * ***************** Version 23 ***************** | |
256 * User: Vo Date: 11.03.99 Time: 18:32 | |
257 * Updated in $/GSM/DEV/MS/SRC/MFW | |
258 * | |
259 * ***************** Version 22 ***************** | |
260 * User: Es Date: 20.02.99 Time: 11:55 | |
261 * Updated in $/GSM/DEV/MS/SRC/MFW | |
262 * | |
263 * ***************** Version 21 ***************** | |
264 * User: Vo Date: 17.02.99 Time: 19:03 | |
265 * Updated in $/GSM/DEV/MS/SRC/MFW | |
266 * | |
267 * ***************** Version 20 ***************** | |
268 * User: Vo Date: 12.02.99 Time: 18:59 | |
269 * Updated in $/GSM/DEV/MS/SRC/MFW | |
270 * | |
271 * ***************** Version 19 ***************** | |
272 * User: Vo Date: 9.02.99 Time: 14:54 | |
273 * Updated in $/GSM/DEV/MS/SRC/MFW | |
274 * | |
275 * ***************** Version 18 ***************** | |
276 * User: Vo Date: 13.01.99 Time: 11:01 | |
277 * Updated in $/GSM/DEV/MS/SRC/MFW | |
278 * | |
279 * ***************** Version 17 ***************** | |
280 * User: Vo Date: 8.01.99 Time: 14:31 | |
281 * Updated in $/GSM/DEV/MS/SRC/MFW | |
282 * | |
283 * ***************** Version 16 ***************** | |
284 * User: Es Date: 17.12.98 Time: 17:25 | |
285 * Updated in $/GSM/DEV/MS/SRC/MFW | |
286 * | |
287 * ***************** Version 15 ***************** | |
288 * User: Es Date: 9.12.98 Time: 15:12 | |
289 * Updated in $/GSM/DEV/MS/SRC/MFW | |
290 * | |
291 * ***************** Version 14 ***************** | |
292 * User: Es Date: 9.12.98 Time: 14:19 | |
293 * Updated in $/GSM/DEV/MS/SRC/MFW | |
294 * added some needed 'rAT_' functions (as dummies) | |
295 * | |
296 * ***************** Version 13 ***************** | |
297 * User: Es Date: 8.12.98 Time: 16:53 | |
298 * Updated in $/GSM/DEV/MS/SRC/MFW | |
299 * | |
300 * ***************** Version 11 ***************** | |
301 * User: Vo Date: 27.11.98 Time: 13:19 | |
302 * Updated in $/GSM/DEV/MS/SRC/MFW | |
303 * | |
304 * ***************** Version 10 ***************** | |
305 * User: Vo Date: 24.11.98 Time: 21:40 | |
306 * Updated in $/GSM/DEV/MS/SRC/MFW | |
307 * first successful compilation of MFW | |
308 * | |
309 * ***************** Version 9 ***************** | |
310 * User: Vo Date: 13.11.98 Time: 16:21 | |
311 * Updated in $/GSM/DEV/MS/SRC/MFW | |
312 * | |
313 * ***************** Version 8 ***************** | |
314 * User: Vo Date: 12.11.98 Time: 13:46 | |
315 * Updated in $/GSM/DEV/MS/SRC/MFW | |
316 | | |
317 | ***************** Version 7 ***************** | |
318 | User: Le Date: 11.11.98 Time: 14:47 | |
319 | Updated in $/GSM/DEV/MS/SRC/MFW | |
320 | | |
321 | ***************** Version 6 ***************** | |
322 | User: Le Date: 11.11.98 Time: 13:35 | |
323 | Updated in $/GSM/DEV/MS/SRC/MFW | |
324 | | |
325 | ***************** Version 5 ***************** | |
326 | User: Le Date: 10.11.98 Time: 16:07 | |
327 | Updated in $/GSM/DEV/MS/SRC/MFW | |
328 | | |
329 | ***************** Version 4 ***************** | |
330 | User: Le Date: 10.11.98 Time: 11:08 | |
331 | Updated in $/GSM/DEV/MS/SRC/MFW | |
332 | | |
333 | ***************** Version 3 ***************** | |
334 | User: Le Date: 27.10.98 Time: 15:59 | |
335 | Updated in $/GSM/DEV/MS/SRC/MFW | |
336 | | |
337 | ***************** Version 2 ***************** | |
338 | User: Le Date: 21.10.98 Time: 16:20 | |
339 | Updated in $/GSM/DEV/MS/SRC/MFW | |
340 | | |
341 | ***************** Version 1 ***************** | |
342 | User: Le Date: 21.10.98 Time: 10:33 | |
343 | Created in $/GSM/DEV/MS/SRC/MFW | |
344 */ | |
345 | |
346 #define ENTITY_MFW | |
347 | |
348 #include <string.h> | |
349 #include <stdio.h> | |
350 #include <stdlib.h> | |
351 | |
352 #if defined (NEW_FRAME) | |
353 | |
354 #include "typedefs.h" | |
355 #include "Vsi.h" | |
356 #include "PEI.H" | |
357 #include "custom.h" | |
358 #include "gsm.h" | |
359 | |
360 #else | |
361 | |
362 #include "STDDEFS.H" | |
363 #include "custom.h" | |
364 #include "gsm.h" | |
365 #include "Vsi.h" | |
366 | |
367 #endif | |
368 | |
369 #if 0 /* FreeCalypso */ | |
370 #include"rfs/rfs_api.h" | |
371 #endif | |
372 | |
373 #include "mfw_mfw.h" | |
374 #include "mfw_nm.h" | |
375 #include "mfw_sim.h" | |
376 #include "mfw_simi.h" | |
377 #include "mfw_sima.h" | |
378 #include "mfw_nmi.h" | |
379 #include "mfw_phb.h" | |
380 #include "mfw_phbi.h" | |
381 #include "mfw_cm.h" | |
382 #include "mfw_cmi.h" | |
383 #include "mfw_sms.h" | |
384 #include "mfw_smsi.h" | |
385 #ifdef FF_CPHS_REL4 | |
386 #include "mfw_cphs.h" | |
387 #endif | |
388 | |
389 // June 02, 2006 DR: OMAPS00078005 x0021334 | |
390 #ifdef FF_TIMEZONE | |
391 #include "mfw_td.h" | |
392 #endif | |
393 | |
394 #include "drv_key.h" | |
395 | |
396 | |
397 #include "ksd.h" | |
398 #include "psa.h" | |
399 | |
400 #if defined (FAX_AND_DATA) | |
401 #include "aci_fd.h" | |
402 #endif | |
403 | |
404 #include "cmh.h" | |
405 #include "phb.h" | |
406 #include "cmh_phb.h" | |
407 #include "psa_sim.h" | |
408 | |
409 #include "mfw_ss.h" | |
410 #include "mfw_ssi.h" | |
411 | |
412 // ADDED BY RAVI - 7-10-2005 | |
413 #if (defined(FF_2TO1_PS) || (BOARD == 61)) | |
414 #define GPRS TI_GPRS | |
415 #endif | |
416 // END ADDITION BY RAVI - 7-10-2005 | |
417 | |
418 #include "aci_all.h" | |
419 #include "aci_cmh.h" /* include types declared in ACI */ | |
420 #include "ati_cmd.h" | |
421 #include "aci_cmd.h" | |
422 #include "aci.h" | |
423 #include "dti_conn_mng.h" | |
424 #include "dti_cntrl_mng.h" | |
425 | |
426 #ifdef GPRS /* kgt 12-05-2001 */ | |
427 | |
428 #include "gaci.h" /* include types declared in GACI */ | |
429 /*#include "gaci_cmh.h" include types declared in GACI */ | |
430 #include "mfw_gprs.h" | |
431 #endif /* GPRS */ | |
432 | |
433 #include "Mfw_band.h" /* SPR919 - SH */ | |
434 | |
435 #ifdef FF_CPHS | |
436 #include "cphs.h" | |
437 #endif /* ff_cphs */ | |
438 | |
439 //x0pleela 20 Mar, 2006 ER:OMAPS00067709 | |
440 #ifdef FF_PCM_VM_VB | |
441 #include "mfw_aud.h" | |
442 #endif | |
443 | |
444 | |
445 #ifdef NEPTUNE_BOARD /*EngMode */ | |
446 #include "mfw_em.h" | |
447 | |
448 UBYTE RssiVal; | |
449 #endif | |
450 | |
451 | |
452 | |
453 | |
454 | |
455 #if defined(FF_MMI_CAMERA_APP) ||defined(FF_MMI_FILEMANAGER) | |
456 #include "msl/inc/msl_api.h" | |
457 #include "mfw_fm.h" | |
458 #endif | |
459 | |
460 #include "aci.h" | |
461 //May 10, 2006 REF: DRT OMAPS00075829 xdeepadh | |
462 #include "mfw_cb.h" | |
463 | |
464 | |
465 LOCAL void mfw_format_plmn_name(UBYTE dcs,UBYTE *in, UBYTE in_length, | |
466 UBYTE *out, UBYTE max_out_length); | |
467 | |
468 | |
469 /*May 10,2007 DR:OMAP00127983 x0066814(Geetha)-begin*/ | |
470 /*size of the name when converted from 7bit to 8bit alphabet*/ | |
471 #define CNAP_EXPANDED_SIZE (((sizeof(BUF_nameString)+1)*8)/7) | |
472 //function to get the name from rAT_PercentCNAP | |
473 void set_cnap_name(T_namePresentationAllowed *cnap_name_info ); | |
474 //function to give the name from set_cnap_name to MMI | |
475 GLOBAL T_MFW_PHB_TEXT *get_cnap_name(); | |
476 GLOBAL T_MFW_PHB_TEXT cnap_name; | |
477 | |
478 typedef enum | |
479 { | |
480 CNAP_PRES_ALLOWED = 0, | |
481 CNAP_PRES_RESTRICTED, | |
482 CNAP_NAME_UNAVAILABLE, | |
483 CNAP_NAME_PRES_RESTRICTED | |
484 } T_ATI_CNAP_PRESENTATION;//possible presentation modes for CNAP | |
485 | |
486 GLOBAL BOOL CALL_NAME_NETWORK = FALSE;//implies that name is not sent via network(rAT_%CNAP) | |
487 //Function to process the data sent from rAT_PercentCNAP based on presentation mode for CNAP | |
488 LOCAL void send_cnap_name_information_mmi(T_ATI_CNAP_PRESENTATION pres_mode, | |
489 T_callingName *NameId); | |
490 /*May 10,2007 DR:OMAP00127983 x0066814(Geetha)-end*/ | |
491 /********* currently not used ***************************************/ | |
492 extern void sate_error(T_ACI_CME_ERR error); // ADDED BY RAVI - 29-11-2005 | |
493 GLOBAL void rAT_PlusCSMS (T_ACI_CSMS_SERV service, | |
494 T_ACI_CSMS_SUPP mt, | |
495 T_ACI_CSMS_SUPP mo, | |
496 T_ACI_CSMS_SUPP bm) {} | |
497 | |
498 //x0pleela 21 Apr, 2006 DR: OMAPS00067919 | |
499 //Requesting for any of the SIMP category pin if enabled based on the "code" | |
500 GLOBAL void rAT_PlusCPIN (T_ACI_CPIN_RSLT code) | |
501 { | |
502 #ifdef SIM_PERS | |
503 TRACE_FUNCTION("rAT_PlusCPIN()"); | |
504 sim_simlock_cpin_code(code ); | |
505 #endif | |
506 } | |
507 | |
508 GLOBAL void rAT_PlusCLCK ( T_ACI_CLSSTAT * clsStaLst) {} | |
509 GLOBAL void rAT_PlusCIMI (CHAR *imsi) {} | |
510 GLOBAL void rAT_PlusCCFC (T_ACI_CCFC_SET* setting) {} | |
511 GLOBAL void rAT_PlusCLIR (T_ACI_CLIR_MOD mode, T_ACI_CLIR_STAT stat) {} | |
512 GLOBAL void rAT_PercentCOLR ( T_ACI_COLR_STAT stat) {} | |
513 GLOBAL void rAT_PlusCRSM ( SHORT sw1, | |
514 SHORT sw2, | |
515 SHORT rspLen, | |
516 UBYTE *rsp ) {} | |
517 GLOBAL void rAT_PlusCSIM ( SHORT rspLen, | |
518 UBYTE *rsp ) {} | |
519 | |
520 GLOBAL void rAT_PlusCNUM (T_ACI_CNUM_MSISDN *msisdn, UBYTE num) | |
521 { | |
522 #ifdef FF_CPHS_REL4 | |
523 static UBYTE count = 0; | |
524 UBYTE i; | |
525 | |
526 TRACE_FUNCTION("rAT_PlusCNUM"); | |
527 for(i = 0; i < 2; i++) | |
528 { | |
529 count = count + check_msp_rec(&msisdn[i],count); | |
530 } | |
531 if (count == 2) | |
532 qAT_PlusCNUM(CMD_SRC_LCL, 1); | |
533 else | |
534 send_msp_signal(count); | |
535 #endif | |
536 } | |
537 | |
538 GLOBAL void rAT_PlusCCWV ( T_ACI_CCWV_CHRG charge ) {} | |
539 | |
540 GLOBAL void rAT_PercentALS(T_ACI_ALS_MOD ALSmode) {} /* has to be implemented in MFW */ | |
541 | |
542 | |
543 /* May 15, 2006 REF:ER OMAPS00077751 */ | |
544 | |
545 #ifdef NEPTUNE_BOARD | |
546 EXTERN void set_cmdHold(int command); | |
547 EXTERN int globalSignalUpdate(U8 value); | |
548 EXTERN void sendCPWIEvt(UBYTE flag_set, USHORT line); | |
549 EXTERN void cmhMM_CnvrtPLMN2INT( const T_PS_plmn_id *plmn, | |
550 USHORT * mccBuf, | |
551 USHORT * mncBuf ); | |
552 #endif /* NEPTUNE_BOARD */ | |
553 /* End - remove warning Aug -11 */ | |
554 /* May 15, 2006 REF:ER OMAPS00077751 */ | |
555 | |
556 #ifdef NEPTUNE_BOARD | |
557 /******************************************************************************* | |
558 | |
559 $Function: rAT_PercentSATT | |
560 | |
561 $Description:CallBack function, needed for target builds with SAT class E enabled | |
562 | |
563 $Returns: void | |
564 | |
565 $Arguments: T_ACI_CMD_SRC srcId | |
566 T_ACI_SATT_CS cause | |
567 | |
568 *******************************************************************************/ | |
569 | |
570 GLOBAL void rAT_PercentSATT( T_ACI_CMD_SRC srcId, T_ACI_SATT_CS cause ) | |
571 { | |
572 TRACE_FUNCTION("rAT_PercentSATT"); | |
573 } | |
574 #endif | |
575 | |
576 // ADDED BY RAVI - ACI CHANGES - 6-10-2005 | |
577 #if (BOARD == 61) | |
578 GLOBAL void rAT_PlusCKEV( T_ACI_CKEV_VALUES sCkevValues, | |
579 T_ACI_CMER_MODE_TYPE mode) {} | |
580 GLOBAL void rAT_PercentCPKY(CHAR *keys, SHORT time, SHORT pause) {} | |
581 #endif | |
582 // END OF ADDITION - 6-10-2005 | |
583 | |
584 /*to be removed | |
585 #ifndef FF_2TO1_PS | |
586 GLOBAL void rAT_PercentRDL(T_ACI_CC_REDIAL_STATE state) {} | |
587 GLOBAL void rAT_PercentRDLB(T_ACI_CC_RDL_BLACKL_STATE state) {} | |
588 GLOBAL void rAT_PercentCSTAT(T_ACI_STATE_MSG msgType) {} | |
589 GLOBAL void rAT_PercentCPRSM (T_ACI_CPRSM_MOD mode) {} | |
590 #else | |
591 #endif */ | |
592 | |
593 | |
594 /* SPR#1985 - SH - This is now implemented in mfw_cm.c */ | |
595 /*GLOBAL void rAT_PercentCTYI (T_ACI_CTTY_NEG neg, | |
596 T_ACI_CTTY_TRX trx) {}*/ | |
597 | |
598 /********* current define *******************************************/ | |
599 #ifdef SIM_TOOLKIT | |
600 extern char mfwSatMoAccepted; | |
601 #endif | |
602 | |
603 #ifdef SIM_PERS | |
604 EXTERN T_MFW_SIMP_CLCK_FLAG sim_unlock_in_prog; | |
605 #endif | |
606 | |
607 //x0018858 24 Mar, 2005 MMI-FIX-11321 | |
608 //Added a global variable and a function to retreive any pending message. | |
609 //begin - x0018858 24 Mar, 2005 MMI-FIX-11321 | |
610 UBYTE isMessageWaiting = FALSE; | |
611 | |
612 /* | |
613 +--------------------------------------------------------------------+ | |
614 | PROJECT: GSM-MFW (8417) MODULE: MFW_CB | | |
615 | STATE : code ROUTINE: sms_check_message_pending | |
616 +--------------------------------------------------------------------+ | |
617 PURPOSE : To retreive the status from server wrt to any pending message. | |
618 */ | |
619 UBYTE sms_check_message_pending(void) | |
620 { | |
621 TRACE_EVENT_P1(" the message status is -- %d", isMessageWaiting); | |
622 return isMessageWaiting; | |
623 } | |
624 | |
625 ///end - x0018858 24 Mar, 2005 MMI-FIX-11321 | |
626 | |
627 /* | |
628 +--------------------------------------------------------------------+ | |
629 | PROJECT: GSM-MFW (8417) MODULE: MFW_CB | | |
630 | STATE : code ROUTINE: rAT_OK | | |
631 +--------------------------------------------------------------------+ | |
632 | |
633 | |
634 PURPOSE : OK indication from ACI | |
635 | |
636 */ | |
637 | |
638 GLOBAL void rAT_OK ( T_ACI_AT_CMD cmdId ) | |
639 { | |
640 | |
641 TRACE_EVENT_P1("rAT_OK %d",cmdId); | |
642 switch ((int)cmdId) | |
643 { | |
644 case AT_CMD_CFUN: | |
645 sim_ok_cfun (); | |
646 break; | |
647 | |
648 case AT_CMD_CPBW: | |
649 // July 17, 2006 DR: OMAPS00082792 x0039928 | |
650 phb_signal(E_PHB_READY, 0); | |
651 break; | |
652 | |
653 case AT_CMD_COPS: | |
654 nm_ok_cops (); | |
655 break; | |
656 | |
657 case AT_CMD_NRG: | |
658 nm_ok_cops (); | |
659 break; | |
660 | |
661 case AT_CMD_PVRF: | |
662 sim_ok_cpin (); | |
663 break; | |
664 | |
665 case AT_CMD_CPIN: | |
666 sim_ok_cpin (); | |
667 break; | |
668 | |
669 case AT_CMD_A: | |
670 cm_ok_connect(); | |
671 break; | |
672 | |
673 case AT_CMD_CMGD: | |
674 /* JVJ SPR1119 apparently not needed since the rAT_PlusCMGD() already handles it */ | |
675 TRACE_EVENT("ACI has deleted SMS!!"); | |
676 sms_ok_delete (); | |
677 /*Issue 1432: 01/10/2002: Needed as called by ACI instead of rAT_PlusCMGD if concatenated SMS */ | |
678 break; | |
679 | |
680 case AT_CMD_CMGR: | |
681 sms_ok_change (); | |
682 break; | |
683 | |
684 case AT_CMD_CHUP: | |
685 cm_ok_disconnect(CMD_SRC_LCL, 0); | |
686 break; | |
687 | |
688 case AT_CMD_H: | |
689 cm_ok_disconnect(CMD_SRC_LCL, 0); | |
690 break; | |
691 | |
692 case AT_CMD_ABRT: | |
693 cm_ok_disconnect(CMD_SRC_LCL, 0); | |
694 break; | |
695 | |
696 case AT_CMD_D: | |
697 cm_ok_connect(); | |
698 break; | |
699 | |
700 case AT_CMD_CPWD: | |
701 sim_ok_cpinc(); | |
702 break; | |
703 | |
704 case AT_CMD_CHLD: | |
705 cm_result_cmd(CMD_SRC_LCL, Present); | |
706 break; | |
707 | |
708 case AT_CMD_CLCK: | |
709 #ifdef SIM_PERS | |
710 // Nov 03, 2005 DR: OMAPS00052032 - xpradipg | |
711 // if the flag is set then SIM Personalization has triggered the CLCK | |
712 if( (sim_unlock_in_prog EQ SIMP_BOOTUP) OR | |
713 (sim_unlock_in_prog EQ SIMP_MENU ) ) | |
714 { | |
715 mfw_simlock_continue(TRUE); | |
716 sim_unlock_in_prog = SIMP_NONE; | |
717 } | |
718 else | |
719 #endif | |
720 ss_ok_clck(); | |
721 break; | |
722 | |
723 case AT_CMD_CCFC: | |
724 break; | |
725 | |
726 case AT_CMD_CCWA: | |
727 break; | |
728 | |
729 case KSD_CMD_CB: | |
730 case KSD_CMD_CF: | |
731 case KSD_CMD_CL: | |
732 case KSD_CMD_CW: | |
733 case KSD_CMD_PWD: | |
734 case KSD_CMD_UBLK: | |
735 ss_ok_string(cmdId); | |
736 break; | |
737 | |
738 case AT_CMD_CPUC: | |
739 case AT_CMD_CAMM: | |
740 case AT_CMD_CACM: | |
741 cm_ok_aoc(cmdId); | |
742 break; | |
743 | |
744 case AT_CMD_CUSD: | |
745 case KSD_CMD_USSD: | |
746 ss_ok_ussd(cmdId); | |
747 break; | |
748 case AT_CMD_CMGL: | |
749 sms_ok_CMGL(); | |
750 break; | |
751 case AT_CMD_CPMS: | |
752 case AT_CMD_CMGW: | |
753 case AT_CMD_CMSS: | |
754 case AT_CMD_CMGS: | |
755 break; | |
756 | |
757 case AT_CMD_CPOL: | |
758 nm_ok_pref_plmn(); | |
759 break; | |
760 | |
761 case AT_CMD_VTS: | |
762 cm_ok_dtmf(); | |
763 break; | |
764 | |
765 case AT_CMD_CSAS: | |
766 sms_ok_csas(); | |
767 break; | |
768 | |
769 #ifdef GPRS /* KGT 12-05-2001 */ | |
770 case AT_CMD_CGATT: | |
771 case AT_CMD_CGDCONT: | |
772 case AT_CMD_CGACT: | |
773 case AT_CMD_CGQREQ: | |
774 case AT_CMD_CGQMIN: | |
775 case AT_CMD_CGDATA: | |
776 case AT_CMD_CGPADDR: | |
777 case AT_CMD_CGAUTO: | |
778 case AT_CMD_CGANS: | |
779 case AT_CMD_CGCLASS: | |
780 case AT_CMD_CGEREP: | |
781 case AT_CMD_CGREG: | |
782 case AT_CMD_CGSMS: | |
783 gprs_ok(cmdId); | |
784 break; | |
785 #endif /* GPRS */ | |
786 | |
787 /* SPR919 - SH*/ | |
788 case AT_CMD_BAND: | |
789 nm_ok_band(); | |
790 break; | |
791 /*MC, SPR 1392, call deflection successful*/ | |
792 case AT_CMD_CTFR: | |
793 cm_ok_CTFR(); | |
794 | |
795 /* Marcus: CCBS: 14/11/2002: Start */ | |
796 case AT_CMD_CCBS: | |
797 TRACE_EVENT("AT_CMD_CCBS"); | |
798 cm_ccbs_ok(); | |
799 break; | |
800 /* Marcus: CCBS: 14/11/2002: Start */ | |
801 /*a0393213 cphs rel4*/ | |
802 #ifdef FF_CPHS_REL4 | |
803 case AT_CMD_P_CFIS: | |
804 { | |
805 T_MFW_SIMOP_STATUS result=MFW_SIMOP_WRITE_OK; | |
806 sendCPHSSignal(E_CPHS_SET_DV_STAT,&result); | |
807 } | |
808 #endif | |
809 default: | |
810 break; | |
811 } | |
812 } | |
813 | |
814 | |
815 /* | |
816 +--------------------------------------------------------------------+ | |
817 | PROJECT: GSM-MFW (8417) MODULE: MFW_CB | | |
818 | STATE : code ROUTINE: rAT_PlusCME | | |
819 +--------------------------------------------------------------------+ | |
820 | |
821 | |
822 PURPOSE : Error indication from ACI | |
823 | |
824 */ | |
825 | |
826 GLOBAL void rAT_PlusCME ( T_ACI_AT_CMD cmdId, T_ACI_CME_ERR err ) | |
827 { | |
828 TRACE_EVENT_P2("rAT_PlusCME(cmdId %d, err %d)",cmdId, err); | |
829 | |
830 switch ((int)cmdId) /*a0393213 lint warnings removal - typecasting done*/ | |
831 { | |
832 //x0061560 Date May16,07 (sateeshg) OMAPS00133241 | |
833 case AT_CMD_CPBW: | |
834 phb_signal(E_PHB_ERROR, 0); | |
835 break; | |
836 case AT_CMD_COPS: | |
837 //x0pleela 30 May, 2007 DR: OMAPS00133201 | |
838 //Passing the error code | |
839 nm_error_cops ((T_ACI_CME_ERR)err); | |
840 break; | |
841 | |
842 case AT_CMD_NRG: | |
843 /*Aug 07, 2007 DR:OMAPS00137726 x0066814(Geetha)*/ | |
844 TRACE_EVENT_P1("CME ERROR VALUE in NRG: %d",err); | |
845 if( (nm_get_mode() == NM_MANUAL) && | |
846 ((err == CME_ERR_NoServ) ||(err == CME_ERR_LimServ) ||(err ==CME_ERR_Unknown))) | |
847 { | |
848 nm_get_plmn_list_during_bootup(); | |
849 } | |
850 else | |
851 { | |
852 //x0pleela 30 May, 2007 DR: OMAPS00133201 | |
853 //Passing the error code | |
854 nm_error_cops ((T_ACI_CME_ERR)err); | |
855 } | |
856 break; | |
857 case AT_CMD_CFUN: | |
858 /* OMAPS00075177 - 17,Apr-2006 */ | |
859 /* Signature of the function has been changed from U8 to T_ACI_CME_ERR. | |
860 because, when calling this function, it is converting from T_ACI_CME_ERR to U8. | |
861 It is loosing the negative values( the enum T_ACI_CME_ERR has negative values ) | |
862 */ | |
863 sim_error_cfun ((T_ACI_CME_ERR)err); | |
864 break; | |
865 | |
866 case AT_CMD_CPIN: | |
867 sim_error_cpin ((T_ACI_CME_ERR)err); | |
868 break; | |
869 | |
870 case AT_CMD_PVRF: | |
871 sim_error_cpin ((T_ACI_CME_ERR)err); | |
872 break; | |
873 | |
874 case AT_CMD_CHLD: | |
875 cm_result_cmd(CMD_SRC_LCL, NotPresent); | |
876 break; | |
877 | |
878 case AT_CMD_CLCK: | |
879 #ifdef SIM_PERS | |
880 //x0pleela 27 Apr, 2006 DR: OMAPS00067919 | |
881 if(sim_unlock_in_prog EQ SIMP_BOOTUP) | |
882 { | |
883 //xrashmic 1 Jul, 2006 OMAPS00075784 | |
884 //Changed U8 to T_ACI_CME_ERR | |
885 sim_error_cfun ((T_ACI_CME_ERR)err); | |
886 } | |
887 | |
888 // Nov 03, 2005 DR: OMAPS00052032 - xpradipg | |
889 // if the flag is set then SIM Personalization has triggered the CLCK | |
890 else if(sim_unlock_in_prog EQ SIMP_MENU) | |
891 { | |
892 sim_unlock_in_prog = SIMP_NONE; /*a0393213 compiler warnings removal - FALSE changed to SIMP_NONE*/ | |
893 mfw_simlock_continue(SIMP_NONE); | |
894 } | |
895 else | |
896 #endif | |
897 ss_error_clck(); | |
898 break; | |
899 | |
900 case AT_CMD_CPWD: | |
901 sim_error_cpinc(); | |
902 break; | |
903 | |
904 case KSD_CMD_CB: | |
905 case KSD_CMD_CF: | |
906 case KSD_CMD_CL: | |
907 case KSD_CMD_CW: | |
908 case KSD_CMD_PWD: | |
909 case KSD_CMD_UBLK: | |
910 ss_error_string(cmdId, err); | |
911 break; | |
912 | |
913 case AT_CMD_CPUC: | |
914 case AT_CMD_CAMM: | |
915 case AT_CMD_CACM: | |
916 cm_error_aoc(cmdId, err); | |
917 break; | |
918 | |
919 case AT_CMD_CNUM: | |
920 phb_read_upn_eeprom(); | |
921 break; | |
922 | |
923 case AT_CMD_CUSD: | |
924 case KSD_CMD_USSD: | |
925 ss_error_ussd(cmdId, err); | |
926 break; | |
927 | |
928 case AT_CMD_CPOL: | |
929 nm_error_pref_plmn(); | |
930 break; | |
931 | |
932 case AT_CMD_VTS: | |
933 cm_error_dtmf(); | |
934 break; | |
935 | |
936 case AT_CMD_D: | |
937 cm_error_dial(err); | |
938 break; | |
939 | |
940 case AT_CMD_CLAN: | |
941 #ifdef FF_2TO1_PS | |
942 sim_read_lp_cnf(CAUSE_SIM_EF_INVALID,NULL); | |
943 #else | |
944 sim_read_lp_cnf(SIM_CAUSE_EF_INVALID,NULL); | |
945 #endif | |
946 break; | |
947 | |
948 #ifdef GPRS /* KGT 12-05-2001 */ | |
949 case AT_CMD_CGATT: | |
950 case AT_CMD_CGDCONT: | |
951 case AT_CMD_CGACT: | |
952 case AT_CMD_CGQREQ: | |
953 case AT_CMD_CGQMIN: | |
954 case AT_CMD_CGDATA: | |
955 case AT_CMD_CGPADDR: | |
956 case AT_CMD_CGAUTO: | |
957 case AT_CMD_CGANS: | |
958 case AT_CMD_CGCLASS: | |
959 case AT_CMD_CGEREP: | |
960 case AT_CMD_CGREG: | |
961 case AT_CMD_CGSMS: | |
962 gprs_error(cmdId, err); | |
963 break; | |
964 #endif /* GPRS */ | |
965 | |
966 /* Marcus: CCBS: 14/11/2002: Start */ | |
967 case AT_CMD_CCBS: | |
968 TRACE_EVENT("AT_CMD_CCBS"); | |
969 cm_ccbs_error(); | |
970 break; | |
971 | |
972 case AT_CMD_H: | |
973 cm_error_disconnect(); | |
974 break; | |
975 /* Marcus: CCBS: 14/11/2002: Start */ | |
976 | |
977 /*MC, SPR 1392, call deflection error*/ | |
978 case AT_CMD_CTFR: | |
979 cm_error_CTFR(); | |
980 break; | |
981 | |
982 /*SPR#2321 - DS - Handle SAT errors */ | |
983 case AT_CMD_SATE: | |
984 sate_error(err); | |
985 break; | |
986 } | |
987 } | |
988 | |
989 | |
990 | |
991 /* | |
992 +--------------------------------------------------------------------+ | |
993 | PROJECT: GSM-MFW (8417) MODULE: MFW_CB | | |
994 | STATE : code ROUTINE: rAT_NO_CARRIER | | |
995 +--------------------------------------------------------------------+ | |
996 | |
997 | |
998 PURPOSE : No Carrier indication from ACI | |
999 | |
1000 */ | |
1001 | |
1002 GLOBAL void rAT_NO_CARRIER( T_ACI_AT_CMD cmdId, SHORT cId ) | |
1003 { | |
1004 TRACE_FUNCTION ("rAT_NO_CARRIER()"); | |
1005 | |
1006 //x0pleela 14 Mar, 2006 ER:OMAPS00067709 | |
1007 #ifdef FF_PCM_VM_VB | |
1008 //update the reason for calling record_stop | |
1009 if( get_voice_memo_type() EQ VOICE_BUFFERING ) | |
1010 set_voice_buffering_rec_stop_reason(CALLED_PARTY_END_CALL); | |
1011 #endif | |
1012 | |
1013 #ifndef GPRS /* kgt 12-05-2001 */ | |
1014 cm_error_connect(cId); | |
1015 #else /* GPRS */ | |
1016 cm_error_connect(cId); | |
1017 #endif /* GPRS */ | |
1018 } | |
1019 | |
1020 /* | |
1021 +--------------------------------------------------------------------+ | |
1022 | PROJECT: GSM-MFW (8417) MODULE: MFW_CB | | |
1023 | STATE : code ROUTINE: rAT_BUSY | | |
1024 +--------------------------------------------------------------------+ | |
1025 | |
1026 | |
1027 PURPOSE : Connect indication from ACI | |
1028 | |
1029 */ | |
1030 | |
1031 GLOBAL void rAT_BUSY ( T_ACI_AT_CMD cmdId, SHORT cId ) | |
1032 { | |
1033 TRACE_FUNCTION ("rAT_BUSY()"); | |
1034 | |
1035 #ifndef GPRS /* kgt 12-05-2001 */ | |
1036 cm_error_connect(cId); | |
1037 #else /* GPRS */ | |
1038 cm_error_connect(cId); | |
1039 #endif /* GPRS */ | |
1040 } | |
1041 | |
1042 | |
1043 /* | |
1044 +--------------------------------------------------------------------+ | |
1045 | PROJECT: GSM-MFW (8417) MODULE: MFW_CB | | |
1046 | STATE : code ROUTINE: rAT_NO_ANSWER | | |
1047 +--------------------------------------------------------------------+ | |
1048 | |
1049 | |
1050 PURPOSE : Connect indication from ACI | |
1051 | |
1052 */ | |
1053 | |
1054 GLOBAL void rAT_NO_ANSWER ( T_ACI_AT_CMD cmdId, SHORT cId ) | |
1055 { | |
1056 TRACE_FUNCTION ("rAT_NO_ANSWER()"); | |
1057 | |
1058 //x0pleela 07 Mar, 2006 ER:OMAPS00067709 | |
1059 #ifdef FF_PCM_VM_VB | |
1060 //update the reason for calling record_stop | |
1061 if( get_voice_memo_type() EQ VOICE_BUFFERING ) | |
1062 set_voice_buffering_rec_stop_reason(CALLED_PARTY_NOT_AVAILABLE); | |
1063 #endif | |
1064 | |
1065 #ifndef GPRS /* kgt 12-05-2001 */ | |
1066 cm_error_connect(cId); | |
1067 #else /* GPRS */ | |
1068 cm_error_connect(cId); | |
1069 #endif /* GPRS */ | |
1070 } | |
1071 | |
1072 | |
1073 /* | |
1074 +--------------------------------------------------------------------+ | |
1075 | PROJECT: GSM-MFW (8417) MODULE: MFW_CB | | |
1076 | STATE : code ROUTINE: rAT_NO_DIALTONE | | |
1077 +--------------------------------------------------------------------+ | |
1078 | |
1079 | |
1080 PURPOSE : Connect indication from ACI | |
1081 | |
1082 */ | |
1083 | |
1084 GLOBAL void rAT_NO_DIALTONE ( void ) | |
1085 { | |
1086 TRACE_FUNCTION ("rAT_NO_DIALTONE()"); | |
1087 } | |
1088 | |
1089 | |
1090 /* | |
1091 +--------------------------------------------------------------------+ | |
1092 | PROJECT: GSM-MFW (8417) MODULE: MFW_CB | | |
1093 | STATE : code ROUTINE: rAT_CONNECT | | |
1094 +--------------------------------------------------------------------+ | |
1095 | |
1096 | |
1097 PURPOSE : Connect indication from ACI, only for data call | |
1098 | |
1099 */ | |
1100 | |
1101 GLOBAL void rAT_CONNECT ( T_ACI_AT_CMD cmdId, | |
1102 T_ACI_BS_SPEED speed, | |
1103 SHORT cId ) | |
1104 { | |
1105 TRACE_FUNCTION ("rAT_CONNECT()"); | |
1106 | |
1107 #ifndef GPRS /* kgt 12-05-2001 */ | |
1108 | |
1109 if (speed==11) | |
1110 cm_wap_data_connected(); | |
1111 else | |
1112 cm_data_connect(cId); | |
1113 #else /* GPRS */ | |
1114 cm_data_connect(cId); | |
1115 #endif /* GPRS */ | |
1116 } | |
1117 | |
1118 | |
1119 /* | |
1120 +------------------------------------------------------------------+ | |
1121 | PROJECT : GSM-MFW (8417) MODULE : MFW_CB | | |
1122 | STATE : code ROUTINE : rAT_PlusCSSI | | |
1123 +------------------------------------------------------------------+ | |
1124 | |
1125 | |
1126 PURPOSE : Supplementary service notifications | |
1127 | |
1128 */ | |
1129 | |
1130 void rAT_PlusCSSI(T_ACI_CSSI_CODE code, SHORT index) | |
1131 { | |
1132 TRACE_FUNCTION("rAT_PlusCSSI()"); | |
1133 | |
1134 if (code == CSSI_CODE_NotPresent) | |
1135 return; | |
1136 | |
1137 ss_notify(ss_cvtCssiCodes(code), index, 0, 0); | |
1138 } | |
1139 | |
1140 | |
1141 /* | |
1142 +------------------------------------------------------------------+ | |
1143 | PROJECT : GSM-MFW (8417) MODULE : MFW_CB | | |
1144 | STATE : code ROUTINE : rAT_PlusCSSU | | |
1145 +------------------------------------------------------------------+ | |
1146 | |
1147 | |
1148 PURPOSE : Supplementary service notifications | |
1149 | |
1150 */ | |
1151 | |
1152 void rAT_PlusCSSU ( T_ACI_CSSU_CODE code, | |
1153 SHORT index, | |
1154 CHAR *number, | |
1155 T_ACI_TOA *type, | |
1156 CHAR *subaddr, | |
1157 T_ACI_TOS *satype) | |
1158 { | |
1159 TRACE_FUNCTION("rAT_PlusCSSU()"); | |
1160 | |
1161 if (code == CSSU_CODE_NotPresent) | |
1162 return; | |
1163 | |
1164 else if ((code == CSSU_CODE_OnHold) OR | |
1165 (code == CSSU_CODE_Retrieved)) | |
1166 cm_notify(code, index, (UBYTE *)number); | |
1167 | |
1168 else | |
1169 ss_notify(ss_cvtCssuCodes(code), | |
1170 index, | |
1171 (UBYTE *)number, | |
1172 (UBYTE *)subaddr); | |
1173 } | |
1174 | |
1175 | |
1176 /* | |
1177 +------------------------------------------------------------------+ | |
1178 | PROJECT : GSM-MFW (8417) MODULE : MFW_CB | | |
1179 | STATE : code ROUTINE : rAT_PercentRLOG | | |
1180 +------------------------------------------------------------------+ | |
1181 | |
1182 | |
1183 PURPOSE : | |
1184 | |
1185 */ | |
1186 | |
1187 void rAT_PercentRLOG(T_ACI_RLOG *rslt) | |
1188 { | |
1189 T_MFW_CM_CALL_STAT stat; | |
1190 UBYTE ton; | |
1191 UBYTE mode; | |
1192 | |
1193 TRACE_FUNCTION("rAT_PercentRLOG()"); | |
1194 | |
1195 | |
1196 TRACE_EVENT_P1("rslt->dest %d",rslt->dest); | |
1197 TRACE_EVENT_P1("rslt->atRslt %d",rslt->atRslt); | |
1198 | |
1199 | |
1200 if (rslt->dest > CMD_SRC_LCL) | |
1201 { | |
1202 switch (rslt->atRslt) | |
1203 { | |
1204 case RLOG_RSLT_OK: | |
1205 TRACE_EVENT_P1("rslt->rsltPrm.rOK.cmdId %d", rslt->rsltPrm.rOK.cmdId); | |
1206 if (rslt->rsltPrm.rOK.cmdId EQ AT_CMD_A | |
1207 OR rslt->rsltPrm.rOK.cmdId EQ AT_CMD_D) | |
1208 cm_rmt_ok_connect(); | |
1209 if (rslt->rsltPrm.rOK.cmdId EQ AT_CMD_H | |
1210 OR rslt->rsltPrm.rOK.cmdId EQ AT_CMD_CHUP) | |
1211 { | |
1212 //NM Berlin / UK integration 21.09.01 | |
1213 //Nov 02, 2005 DR OMAPS00052132 xdeepadh | |
1214 //The usage of ATI enum is put under the flag FF_ATI | |
1215 #if defined (FF_ATI) || defined (NEPTUNE_BOARD) | |
1216 /*June 15, 2006 DR:OMAPS00079492 x0043642 */ | |
1217 /* Set cmd_hold variable to MFW_CM_DISCONNECT_ALL to end all calls*/ | |
1218 set_cmdHold(MFW_CM_DISCONNECT_ALL); | |
1219 cm_ok_disconnect(CMD_SRC_ATI_1, rslt->rsltPrm.rOK.cId); | |
1220 #endif | |
1221 } | |
1222 if (rslt->rsltPrm.rOK.cmdId EQ AT_CMD_ABRT) | |
1223 { | |
1224 if (cm_search_callStat(rslt->rsltPrm.rOK.cId, &stat, &ton, &mode) == CM_OK) | |
1225 { | |
1226 if (stat == CALL_DEACTIVE) | |
1227 { | |
1228 //NM Berlin / UK integration 21.09.01 | |
1229 //Nov 02, 2005 DR OMAPS00052132 xdeepadh | |
1230 //The usage of ATI enum is put under the flag FF_ATI | |
1231 #ifdef FF_ATI | |
1232 cm_ok_disconnect(CMD_SRC_ATI_1, rslt->rsltPrm.rOK.cId); | |
1233 #endif //FF_ATI | |
1234 } | |
1235 } | |
1236 } | |
1237 if (rslt->rsltPrm.rOK.cmdId EQ AT_CMD_CHLD) | |
1238 { | |
1239 //NM Berlin / UK integration 21.09.01 | |
1240 //Nov 02, 2005 DR OMAPS00052132 xdeepadh | |
1241 //The usage of ATI enum is put under the flag FF_ATI | |
1242 #ifdef FF_ATI | |
1243 cm_result_cmd(CMD_SRC_ATI_1, Present); | |
1244 #endif //FF_ATI | |
1245 } | |
1246 | |
1247 #ifdef GPRS /* JVJ 10-10-02 */ | |
1248 /* SH - GPRS*/ | |
1249 switch(rslt->rsltPrm.rOK.cmdId) | |
1250 { | |
1251 case AT_CMD_CGDCONT: | |
1252 case AT_CMD_CGQREQ: | |
1253 case AT_CMD_CGQMIN: | |
1254 case AT_CMD_CGATT: | |
1255 case AT_CMD_CGACT: | |
1256 case AT_CMD_CGDATA: | |
1257 case AT_CMD_CGPADDR: | |
1258 case AT_CMD_CGAUTO: | |
1259 case AT_CMD_CGANS: | |
1260 case AT_CMD_CGCLASS: | |
1261 case AT_CMD_CGEREP: | |
1262 case AT_CMD_CGREG: | |
1263 case AT_CMD_CGSMS: | |
1264 case AT_CMD_SNCNT: | |
1265 case AT_CMD_P_CGREG: | |
1266 gprs_ok((T_ACI_AT_CMD)rslt->rsltPrm.rOK.cId); | |
1267 break; | |
1268 } | |
1269 /* end SH */ | |
1270 #endif | |
1271 //Mar 23, 2006 DR OMAPS00069173 Prabakar R | |
1272 //break was put inside #ifdef GPRS. it has been moved outside | |
1273 break; | |
1274 case RLOG_RSLT_NoCarrier: | |
1275 #ifdef GPRS /* JVJ 10-10-02 */ | |
1276 /* SH - don't send to CM for GPRS call*/ | |
1277 if (rslt->rsltPrm.rNO_CARRIER.cmdId == AT_CMD_CGDATA) | |
1278 { | |
1279 gprs_err_connect(rslt->rsltPrm.rNO_CARRIER.cId); | |
1280 } | |
1281 else | |
1282 #endif | |
1283 cm_rmt_error_connect(rslt->rsltPrm.rNO_CARRIER.cId); | |
1284 | |
1285 break; | |
1286 case RLOG_RSLT_Busy: | |
1287 /* SH - don't send to CM for GPRS call*/ | |
1288 #ifdef GPRS /* JVJ 10-10-02 */ | |
1289 if (rslt->rsltPrm.rBUSY.cmdId == AT_CMD_CGDATA) | |
1290 gprs_err_connect(rslt->rsltPrm.rBUSY.cId); | |
1291 else | |
1292 #endif | |
1293 cm_rmt_error_connect(rslt->rsltPrm.rBUSY.cId); | |
1294 break; | |
1295 | |
1296 case RLOG_RSLT_NoAnswer: | |
1297 /* SH - don't send to CM for GPRS call*/ | |
1298 #ifdef GPRS /* JVJ 10-10-02 */ | |
1299 if (rslt->rsltPrm.rNO_ANSWER.cmdId == AT_CMD_CGDATA) | |
1300 gprs_err_connect(rslt->rsltPrm.rNO_ANSWER.cId); | |
1301 else | |
1302 #endif | |
1303 cm_rmt_error_connect(rslt->rsltPrm.rNO_ANSWER.cId); | |
1304 break; | |
1305 | |
1306 case RLOG_RSLT_Connect: | |
1307 //NM | |
1308 //merged latest version of MFW from Berlin | |
1309 //only related with NO_ASCIIZ | |
1310 //code 1: was replaced by code 2 | |
1311 //keep it still comment out the code 1 | |
1312 //by reason of problem swap the codes | |
1313 | |
1314 //code 1: | |
1315 //cm_data_connect(rslt->rsltPrm.rCONNECT.cId); | |
1316 | |
1317 /* notify MMI of connect by external MMI */ | |
1318 //code 2: | |
1319 | |
1320 /* SH - don't send to CM for GPRS call*/ | |
1321 #ifdef GPRS /* JVJ 10-10-02 */ | |
1322 if (rslt->rsltPrm.rCONNECT.cmdId == AT_CMD_CGDATA) | |
1323 gprs_connect(rslt->rsltPrm.rCONNECT.cId); | |
1324 else | |
1325 /* SH end */ | |
1326 #endif | |
1327 cm_rmt_ok_connect(); /* VO ???: to be changed (needs E_CM_CONNECT) */ | |
1328 | |
1329 | |
1330 break; | |
1331 #ifdef GPRS /* JVJ 10-10-02 */ | |
1332 case RLOG_RSLT_CME: | |
1333 /* SH - GPRS*/ | |
1334 TRACE_FUNCTION_P1("rslt->rsltPrm.rOK.cmdId=%d",rslt->rsltPrm.rOK.cmdId); | |
1335 switch(rslt->rsltPrm.rOK.cmdId) | |
1336 { | |
1337 case AT_CMD_CGDCONT: | |
1338 case AT_CMD_CGQREQ: | |
1339 case AT_CMD_CGQMIN: | |
1340 case AT_CMD_CGATT: | |
1341 case AT_CMD_CGACT: | |
1342 case AT_CMD_CGDATA: | |
1343 case AT_CMD_CGPADDR: | |
1344 case AT_CMD_CGAUTO: | |
1345 case AT_CMD_CGANS: | |
1346 case AT_CMD_CGCLASS: | |
1347 case AT_CMD_CGEREP: | |
1348 case AT_CMD_CGREG: | |
1349 case AT_CMD_CGSMS: | |
1350 case AT_CMD_SNCNT: | |
1351 case AT_CMD_P_CGREG: | |
1352 gprs_error(rslt->rsltPrm.rCME.cmdId,rslt->rsltPrm.rCME.err); | |
1353 break; | |
1354 //CQ-16432 start | |
1355 case AT_CMD_CPWD: | |
1356 TRACE_FUNCTION("AT_CMD_CPWD"); | |
1357 ss_sat_passwdReqd(rslt->rsltPrm.rCME.cmdId,rslt->rsltPrm.rCME.err); | |
1358 break; | |
1359 //CQ-16432 end | |
1360 } | |
1361 /* end SH */ | |
1362 break; | |
1363 #endif | |
1364 } | |
1365 } | |
1366 } | |
1367 | |
1368 | |
1369 /* | |
1370 +------------------------------------------------------------------+ | |
1371 | PROJECT : GSM-MFW (8417) MODULE : MFW_CB | | |
1372 | STATE : code ROUTINE : rAT_PercentCLOG | | |
1373 +------------------------------------------------------------------+ | |
1374 | |
1375 | |
1376 PURPOSE : | |
1377 | |
1378 */ | |
1379 | |
1380 void rAT_PercentCLOG(T_ACI_CLOG *cmd) | |
1381 { | |
1382 TRACE_FUNCTION("rAT_PercentCLOG() in mfw"); | |
1383 | |
1384 if (cmd->retCode NEQ AT_CMPL AND cmd->retCode NEQ AT_EXCT) | |
1385 return; | |
1386 | |
1387 switch (cmd->cmdType) | |
1388 { | |
1389 case CLOG_TYPE_Set: | |
1390 switch ((int)(cmd->atCmd)) /*a0393213 lint warnings removal - typecast done*/ | |
1391 { | |
1392 case AT_CMD_D: | |
1393 if (cmd->cmdPrm.sD.simCallCtrl NEQ D_SIMCC_ACTIVE_CHECK) | |
1394 cm_AT_D(cmd); | |
1395 break; | |
1396 #ifdef SIM_TOOLKIT | |
1397 case AT_CMD_A: | |
1398 if (mfwSatMoAccepted) | |
1399 { /* ES!! accepted SAT Call */ | |
1400 mfwSatMoAccepted = 0; | |
1401 cm_AT_D(cmd); | |
1402 } | |
1403 break; | |
1404 #endif | |
1405 | |
1406 case KSD_CMD_CB: | |
1407 case KSD_CMD_CF: | |
1408 case KSD_CMD_CW: | |
1409 case KSD_CMD_CL: | |
1410 case KSD_CMD_PWD: | |
1411 case KSD_CMD_UBLK: | |
1412 case KSD_CMD_USSD: | |
1413 case AT_CMD_CUSD: | |
1414 ss_command_info(cmd); | |
1415 break; | |
1416 | |
1417 case AT_CMD_CHLD: | |
1418 cm_AT_CHLD(cmd); | |
1419 break; | |
1420 | |
1421 default: | |
1422 break; | |
1423 } | |
1424 break; | |
1425 | |
1426 case CLOG_TYPE_Query: | |
1427 break; | |
1428 | |
1429 case CLOG_TYPE_Test: | |
1430 break; | |
1431 } | |
1432 } | |
1433 | |
1434 | |
1435 /* | |
1436 +--------------------------------------------------------------------+ | |
1437 | PROJECT: GSM-MFW (8417) MODULE: MFW_CB | | |
1438 | STATE : code ROUTINE: rAT_PercentDRV | | |
1439 +--------------------------------------------------------------------+ | |
1440 | |
1441 | |
1442 PURPOSE : Driver indication from layer 1 | |
1443 | |
1444 */ | |
1445 | |
1446 GLOBAL void rAT_PercentDRV( T_ACI_DRV_DEV device, | |
1447 T_ACI_DRV_FCT function, | |
1448 UBYTE val1, | |
1449 UBYTE val2) | |
1450 { | |
1451 TRACE_FUNCTION ("rAT_PercentDRV()"); | |
1452 //ES!! check device & function !! | |
1453 | |
1454 | |
1455 drvKeyUpDown(val2,val1); //ES!! val2 korrekt ? | |
1456 } | |
1457 | |
1458 /* | |
1459 +--------------------------------------------------------------------+ | |
1460 | PROJECT: GSM-MFW (8417) MODULE: MFW_CB | | |
1461 | STATE : code ROUTINE: send_cnap_name_information_mmi | | |
1462 +--------------------------------------------------------------------+ | |
1463 | |
1464 | |
1465 PURPOSE : Function to process the data sent from rAT_PercentCNAP based on presentation mode for CNAP | |
1466 | |
1467 */ | |
1468 /*May 10,2007 DR:OMAP00127983 x0066814(Geetha)-begin*/ | |
1469 LOCAL void send_cnap_name_information_mmi(T_ATI_CNAP_PRESENTATION pres_mode, | |
1470 T_callingName *NameId) | |
1471 { | |
1472 T_namePresentationAllowed *cnap_name_info = NULL; | |
1473 | |
1474 TRACE_FUNCTION("send_cnap_name_information()"); | |
1475 | |
1476 switch(pres_mode) | |
1477 { | |
1478 case(CNAP_PRES_ALLOWED): | |
1479 TRACE_EVENT("CNAP: name presentation is allowed"); | |
1480 CALL_NAME_NETWORK=TRUE;//implies that name is got from rAT_%CNAP | |
1481 cnap_name_info = &(NameId->namePresentationAllowed); | |
1482 break; | |
1483 | |
1484 case(CNAP_NAME_PRES_RESTRICTED): | |
1485 case(CNAP_NAME_UNAVAILABLE): | |
1486 case(CNAP_PRES_RESTRICTED): | |
1487 TRACE_EVENT("CNAP: name presentation is restricted/unavilable"); | |
1488 break; | |
1489 | |
1490 default: | |
1491 TRACE_ERROR("CNAP: wrong presentation mode"); | |
1492 return; | |
1493 } | |
1494 set_cnap_name(cnap_name_info); | |
1495 } | |
1496 | |
1497 /* | |
1498 +--------------------------------------------------------------------+ | |
1499 | PROJECT: GSM-MFW (8417) MODULE: MFW_CB | | |
1500 | STATE : code ROUTINE: set_cnap_name | | |
1501 +--------------------------------------------------------------------+ | |
1502 | |
1503 | |
1504 PURPOSE : function to get the name from rAT_PercentCNAP | |
1505 | |
1506 */ | |
1507 void set_cnap_name(T_namePresentationAllowed *cnap_name_info ) | |
1508 { | |
1509 TRACE_FUNCTION("set_cnap_name"); | |
1510 if(cnap_name_info EQ NULL) | |
1511 { | |
1512 TRACE_ERROR("CNAP cnap_name_info is NULL"); | |
1513 return; | |
1514 } | |
1515 | |
1516 if ((cnap_name_info->v_dataCodingScheme) AND | |
1517 (cnap_name_info->v_lengthInCharacters) AND | |
1518 (cnap_name_info->v_nameString)) | |
1519 { | |
1520 UBYTE expanded_len=0; | |
1521 UBYTE *cnap_name_expanded = NULL; | |
1522 UBYTE dcs; | |
1523 TRACE_FUNCTION("All values present"); | |
1524 cnap_name_expanded=mfwAlloc(CNAP_EXPANDED_SIZE+1); | |
1525 dcs =(UBYTE)cnap_name_info->dataCodingScheme; | |
1526 | |
1527 if( cmh_getAlphabetCb( (UBYTE)dcs ) EQ 0 ) /* 7bit alphabet */ | |
1528 { | |
1529 TRACE_FUNCTION("/* 7bit alphabet */"); | |
1530 expanded_len = | |
1531 utl_cvt7To8((UBYTE *)cnap_name_info->nameString.b_nameString, | |
1532 (UBYTE)cnap_name_info->lengthInCharacters, | |
1533 cnap_name_expanded, | |
1534 0 ); | |
1535 } | |
1536 else | |
1537 { | |
1538 TRACE_FUNCTION("/* 8bit alphabet */"); | |
1539 memcpy( cnap_name_expanded, | |
1540 (UBYTE *)cnap_name_info->nameString.b_nameString, | |
1541 (UBYTE)cnap_name_info->lengthInCharacters ); | |
1542 expanded_len = (UBYTE)cnap_name_info->lengthInCharacters; | |
1543 } | |
1544 cnap_name.len= (UBYTE)expanded_len; | |
1545 #ifdef NO_ASCIIZ | |
1546 memcpy(cnap_name.data,cnap_name_expanded,sizeof(cnap_name.data)); | |
1547 #else | |
1548 strcpy(cnap_name.data,cnap_name_expanded); | |
1549 #endif | |
1550 TRACE_EVENT_P1("cnap_name.data: %s",cnap_name.data); | |
1551 mfwFree(cnap_name_expanded, CNAP_EXPANDED_SIZE+1); | |
1552 } | |
1553 return; | |
1554 } | |
1555 | |
1556 /* | |
1557 +--------------------------------------------------------------------+ | |
1558 | PROJECT: GSM-MFW (8417) MODULE: MFW_CB | | |
1559 | STATE : code ROUTINE: get_cnap_name | | |
1560 +--------------------------------------------------------------------+ | |
1561 | |
1562 | |
1563 PURPOSE : function to give the name from set_cnap_name to MMI | |
1564 | |
1565 */ | |
1566 GLOBAL T_MFW_PHB_TEXT * get_cnap_name() | |
1567 { | |
1568 TRACE_FUNCTION("get_cnap_name"); | |
1569 return &cnap_name; | |
1570 } | |
1571 | |
1572 /* | |
1573 +--------------------------------------------------------------------+ | |
1574 | PROJECT: GSM-MFW (8417) MODULE: MFW_CB | | |
1575 | STATE : code ROUTINE: rAT_PercentCNAP | | |
1576 +--------------------------------------------------------------------+ | |
1577 | |
1578 PURPOSE : handles rAT_PercentCNAP call back | |
1579 | |
1580 */ | |
1581 | |
1582 GLOBAL void rAT_PercentCNAP ( T_callingName *NameId,T_ACI_CNAP_STATUS status) | |
1583 { | |
1584 | |
1585 TRACE_FUNCTION("rAT_PercentCNAP()"); | |
1586 TRACE_EVENT_P1("NameId: %d",NameId); | |
1587 if(NameId NEQ NULL) | |
1588 { | |
1589 if(NameId->v_namePresentationAllowed) | |
1590 { | |
1591 send_cnap_name_information_mmi(CNAP_PRES_ALLOWED, NameId); | |
1592 return; | |
1593 } | |
1594 | |
1595 if(NameId->v_presentationRestricted) | |
1596 { | |
1597 send_cnap_name_information_mmi(CNAP_PRES_RESTRICTED, NameId); | |
1598 return; | |
1599 } | |
1600 | |
1601 if(NameId->v_nameUnavailable) | |
1602 { | |
1603 send_cnap_name_information_mmi(CNAP_NAME_UNAVAILABLE, NameId); | |
1604 return; | |
1605 } | |
1606 | |
1607 if(NameId->v_namePresentationRestricted) | |
1608 { | |
1609 send_cnap_name_information_mmi(CNAP_NAME_PRES_RESTRICTED, NameId); | |
1610 return; | |
1611 } | |
1612 } | |
1613 } | |
1614 /*May 10,2007 DR:OMAP00127983 x0066814(Geetha) -end*/ | |
1615 /* | |
1616 +--------------------------------------------------------------------+ | |
1617 | PROJECT : MODULE : MFW_ACI_DUMMY | | |
1618 | STATE : code ROUTINE : rAT_PlusCLAN | | |
1619 +--------------------------------------------------------------------+ | |
1620 | |
1621 PURPOSE : handles AT_PlusCLAN call back | |
1622 | |
1623 */ | |
1624 | |
1625 GLOBAL void rAT_PlusCLAN (T_ACI_LAN_SUP *CLang ) | |
1626 { | |
1627 TRACE_FUNCTION("rAT_PlusCLAN()"); | |
1628 | |
1629 #ifdef FF_2TO1_PS /* kgt 12-05-2001 */ | |
1630 sim_read_lp_cnf(CAUSE_SIM_NO_ERROR,CLang); | |
1631 #else | |
1632 sim_read_lp_cnf(SIM_NO_ERROR,CLang); | |
1633 #endif | |
1634 | |
1635 } | |
1636 | |
1637 /* | |
1638 +--------------------------------------------------------------------+ | |
1639 | PROJECT : MODULE : MFW_ACI_DUMMY | | |
1640 | STATE : code ROUTINE : rAT_PlusCLAE | | |
1641 +--------------------------------------------------------------------+ | |
1642 | |
1643 PURPOSE : handles AT_PlusCLAE call back | |
1644 | |
1645 */ | |
1646 | |
1647 GLOBAL void rAT_PlusCLAE (T_ACI_LAN_SUP *CLang ) | |
1648 { | |
1649 TRACE_FUNCTION("rAT_PlusCLAE()"); | |
1650 } | |
1651 | |
1652 /* | |
1653 +--------------------------------------------------------------------+ | |
1654 | PROJECT : ACI/MMI MODULE : ACI_RET | | |
1655 | STATE : code ROUTINE : rAT_PercentCSQ | | |
1656 +--------------------------------------------------------------------+ | |
1657 | |
1658 PURPOSE : handles rAT_PercentCSQ call back | |
1659 | |
1660 Shen,Chao | |
1661 | |
1662 */ | |
1663 | |
1664 //Oct 05, 2006 ER: OMAPS00094496 x0061088(Prachi) | |
1665 #ifdef FF_PS_RSSI | |
1666 #define MMI_MIN_RXLEV_FAULT 99 | |
1667 GLOBAL void rAT_PercentCSQ (UBYTE rssi, UBYTE ber, UBYTE actlevel, UBYTE min_access_level) | |
1668 #else | |
1669 GLOBAL void rAT_PercentCSQ (UBYTE rssi, UBYTE ber, UBYTE actlevel) | |
1670 #endif | |
1671 { | |
1672 | |
1673 static UBYTE prelevel=0; | |
1674 #ifdef NEPTUNE_BOARD | |
1675 RssiVal = rssi; | |
1676 #endif | |
1677 | |
1678 TRACE_FUNCTION("rAT_PercentCSQ()"); | |
1679 #ifdef FF_PS_RSSI | |
1680 if((min_access_level NEQ MMI_MIN_RXLEV_FAULT) AND (rssi < min_access_level )) | |
1681 { | |
1682 globalSignalUpdate(0); | |
1683 prelevel = 0; | |
1684 } | |
1685 else | |
1686 #endif | |
1687 if( prelevel != actlevel ) | |
1688 { | |
1689 globalSignalUpdate(actlevel); | |
1690 prelevel = actlevel; | |
1691 } | |
1692 | |
1693 } | |
1694 | |
1695 | |
1696 | |
1697 #ifdef FF_CPHS | |
1698 /* | |
1699 +--------------------------------------------------------------------+ | |
1700 | PROJECT : MODULE : MFW_ACI_DUMMY | | |
1701 | STATE : code ROUTINE : rAT_PercentCPVWI | | |
1702 +--------------------------------------------------------------------+ | |
1703 | |
1704 PURPOSE : handles AT_PercentCPVWI call back | |
1705 | |
1706 */ | |
1707 | |
1708 GLOBAL void rAT_PercentCPVWI ( UBYTE flag_set, | |
1709 USHORT line) | |
1710 { | |
1711 TRACE_FUNCTION("rAT_PercentCPVWI()"); | |
1712 //18 May, 2006 DR: OMAPS00070657 x0pleela | |
1713 //Send this event when there is any voice mail | |
1714 sendCPWIEvt(flag_set, line); | |
1715 } | |
1716 | |
1717 /* | |
1718 +--------------------------------------------------------------------+ | |
1719 | PROJECT : MODULE : MFW_ACI_DUMMY | | |
1720 | STATE : code ROUTINE : rAT_PercentCPNUMS | | |
1721 +--------------------------------------------------------------------+ | |
1722 | |
1723 PURPOSE : handles AT_PercentCPNUMS call back | |
1724 | |
1725 */ | |
1726 GLOBAL void rAT_PercentCPNUMS(UBYTE element_index, | |
1727 UBYTE index_level, | |
1728 CHAR *alpha_tag, | |
1729 CHAR *number, | |
1730 BOOL premium_flag, | |
1731 BOOL network_flag, | |
1732 UBYTE type_of_address) | |
1733 { | |
1734 } | |
1735 | |
1736 | |
1737 /* | |
1738 +--------------------------------------------------------------------+ | |
1739 | PROJECT : MODULE : MFW_ACI_DUMMY | | |
1740 | STATE : code ROUTINE : rAT_PercentCPCFU | | |
1741 +--------------------------------------------------------------------+ | |
1742 | |
1743 PURPOSE : handles AT_PercentCPCFU call back | |
1744 | |
1745 */ | |
1746 GLOBAL void rAT_PercentCPCFU(UBYTE flag_set, | |
1747 T_CPHS_LINES line) | |
1748 {} | |
1749 | |
1750 | |
1751 /* | |
1752 +--------------------------------------------------------------------+ | |
1753 | PROJECT : MODULE : MFW_ACI_DUMMY | | |
1754 | STATE : code ROUTINE : rAT_PercentCPROAM | | |
1755 +--------------------------------------------------------------------+ | |
1756 | |
1757 PURPOSE : handles AT_PercentCPROAM call back | |
1758 | |
1759 */ | |
1760 GLOBAL void rAT_PercentCPROAM(UBYTE roam_status) | |
1761 {} | |
1762 | |
1763 #endif /* FF_CPHS */ | |
1764 | |
1765 /* | |
1766 +--------------------------------------------------------------------+ | |
1767 | PROJECT : MODULE : MFW_ACI_DUMMY | | |
1768 | STATE : code ROUTINE : rAT_PlusCIEV | | |
1769 +--------------------------------------------------------------------+ | |
1770 | |
1771 PURPOSE : dummy for +CIEV unsolicited message | |
1772 | |
1773 */ | |
1774 GLOBAL void rAT_PlusCIEV( T_ACI_MM_CIND_VAL_TYPE sCindValues, | |
1775 T_ACI_MM_CMER_VAL_TYPE sCmerSettings ) | |
1776 { | |
1777 TRACE_FUNCTION("rAT_PlusCIEV()"); | |
1778 | |
1779 //x0018858 24 Mar, 2005 MMI-FIX-11321 | |
1780 //Added a switch statement to handle the indication received. | |
1781 //begin - x0018858 24 Mar, 2005 MMI-FIX-11321 | |
1782 | |
1783 switch(sCmerSettings.sCmerIndParam) | |
1784 { | |
1785 case CMER_INDICATOR_INVALID: | |
1786 case CMER_INDICATOR_0: | |
1787 case CMER_INDICATOR_1: | |
1788 break; | |
1789 case CMER_INDICATOR_2: | |
1790 { | |
1791 switch (sCindValues.sCindSmsFullParam) | |
1792 { | |
1793 case CIND_SMSFULL_INDICATOR_INVALID: | |
1794 break; | |
1795 case CIND_SMSFULL_INDICATOR_MEMFULL: | |
1796 TRACE_FUNCTION("CIND_SMSFULL_INDICATOR_MEMFULL"); | |
1797 isMessageWaiting = TRUE; | |
1798 break; | |
1799 case CIND_SMSFULL_INDICATOR_MEMAVAIL: | |
1800 TRACE_FUNCTION("CIND_SMSFULL_INDICATOR_MEMAVAIL"); | |
1801 isMessageWaiting = FALSE; | |
1802 break; | |
1803 case CIND_SMSFULL_INDICATOR_MAX: | |
1804 default: | |
1805 break; | |
1806 } | |
1807 } | |
1808 case CMER_INDICATOR_TYPE_MAX: | |
1809 default: | |
1810 { | |
1811 break; | |
1812 } | |
1813 } | |
1814 //end - x0018858 24 Mar, 2005 MMI-FIX-11321 | |
1815 } | |
1816 | |
1817 /* | |
1818 +--------------------------------------------------------------------+ | |
1819 | PROJECT : GSM-F&D (8411) MODULE : MFW_CB | | |
1820 | STATE : code ROUTINE : mfw_format_plmn_name | | |
1821 +--------------------------------------------------------------------+ | |
1822 | |
1823 PURPOSE : Decodes PLMN name to remote source format | |
1824 | |
1825 */ | |
1826 | |
1827 void mfw_format_plmn_name(UBYTE dcs,UBYTE *in, UBYTE in_length, UBYTE *out, UBYTE max_out_length) | |
1828 { | |
1829 USHORT size_of_plmn_name; | |
1830 UBYTE dest_len=0; | |
1831 UBYTE buf[33]; | |
1832 | |
1833 memset(buf,33,0); | |
1834 if(dcs ==0) /*GSM default */ | |
1835 { | |
1836 dest_len = utl_cvt7To8(in,in_length,buf,0); | |
1837 utl_chsetFromGsm(buf,dest_len,out,max_out_length,&size_of_plmn_name,GSM_ALPHA_Def); | |
1838 memset(buf, 0, 33); | |
1839 } | |
1840 else if(dcs ==1) /*UCS2 */ | |
1841 { | |
1842 utl_hexFromGsm(in,in_length,out,max_out_length,&size_of_plmn_name,GSM_ALPHA_Def,CSCS_ALPHA_7_Bit); | |
1843 | |
1844 } | |
1845 } | |
1846 | |
1847 | |
1848 | |
1849 #ifndef FF_2TO1_PS/* | |
1850 +--------------------------------------------------------------------+ | |
1851 | PROJECT : MODULE : MFW_ACI_DUMMY | | |
1852 | STATE : code ROUTINE : rAT_PercentCNIV | | |
1853 +--------------------------------------------------------------------+ | |
1854 | |
1855 PURPOSE : dummy for %CNIV unsolicited message | |
1856 | |
1857 */ | |
1858 //x0pleela 09 Feb, 2006 ER:OMAPS00065203 | |
1859 GLOBAL void rAT_PercentCNIV (T_MMR_INFO_IND *mmr_info_ind) | |
1860 { | |
1861 T_MFW_NETWORK_STRUCT plmn_netw_data; | |
1862 SHORT mcc = 0; | |
1863 SHORT mnc = 0; | |
1864 | |
1865 TRACE_FUNCTION("rAT_PercentCNIV()"); | |
1866 | |
1867 //copy plmn info into plmn_netw_data from mmr_info_ind | |
1868 memset(&plmn_netw_data, 0, sizeof(T_MFW_NETWORK_STRUCT) ); | |
1869 | |
1870 if (mmr_info_ind->plmn.v_plmn) | |
1871 { | |
1872 cmhMM_CnvrtPLMN2INT( mmr_info_ind->plmn.mcc, | |
1873 mmr_info_ind->plmn.mnc, | |
1874 &mcc, &mnc ); | |
1875 } | |
1876 /* build numeric plmn representation */ | |
1877 if ((mnc & 0x000F) EQ 0x000F) | |
1878 { | |
1879 sprintf((char*)&plmn_netw_data.network_numeric, "%d%d", | |
1880 mcc, (mnc & 0x0FF0) >> 4); | |
1881 } | |
1882 else | |
1883 { | |
1884 sprintf((char*)&plmn_netw_data.network_numeric, "%d%d", mcc, mnc); | |
1885 } | |
1886 //Apr 13, 2007 DRT:OMAPS00122739 x0066814(Geetha) | |
1887 if (mmr_info_ind->short_name.v_name) /* short name */ | |
1888 { | |
1889 TRACE_FUNCTION(" SHORT NAME "); | |
1890 mfw_format_plmn_name(mmr_info_ind->short_name.dcs,(UBYTE*)mmr_info_ind->short_name.text, | |
1891 mmr_info_ind->short_name.c_text, (UBYTE *)plmn_netw_data.network_short.data, 33); | |
1892 } | |
1893 | |
1894 if (mmr_info_ind->full_name.v_name) /* full name */ | |
1895 { | |
1896 TRACE_FUNCTION(" Long NAME "); | |
1897 mfw_format_plmn_name(mmr_info_ind->full_name.dcs,(UBYTE*)mmr_info_ind->full_name.text, | |
1898 mmr_info_ind->full_name.c_text, (UBYTE *)plmn_netw_data.network_long.data, 33); | |
1899 } | |
1900 | |
1901 plmn_netw_data.opn_read_from = NM_NITZ; | |
1902 | |
1903 nm_get_network_data(&plmn_netw_data); | |
1904 } | |
1905 | |
1906 #else | |
1907 /* DMPS MMREG SAP */ | |
1908 GLOBAL void rAT_PercentCNIV (T_MMREG_INFO_IND *mmr_info_ind) | |
1909 { | |
1910 T_MFW_NETWORK_STRUCT plmn_netw_data; | |
1911 SHORT mcc = 0; | |
1912 SHORT mnc = 0; | |
1913 | |
1914 TRACE_FUNCTION("rAT_PercentCNIV()"); | |
1915 | |
1916 /* copy plmn info into plmn_netw_data from mmr_info_ind */ | |
1917 memset(&plmn_netw_data, 0, sizeof(T_MFW_NETWORK_STRUCT)); | |
1918 | |
1919 if (mmr_info_ind->v_plmn_id) | |
1920 { | |
1921 cmhMM_CnvrtPLMN2INT( &(mmr_info_ind->plmn_id), (USHORT *)&mcc, (USHORT *)&mnc ); | |
1922 } | |
1923 /* build numeric plmn representation */ | |
1924 if ((mnc & 0x000F) EQ 0x000F) | |
1925 { | |
1926 sprintf((char*)&plmn_netw_data.network_numeric, "%d%d", | |
1927 mcc, (mnc & 0x0FF0) >> 4); | |
1928 | |
1929 } | |
1930 else | |
1931 { | |
1932 sprintf((char*)&plmn_netw_data.network_numeric, "%d%d", mcc, mnc); | |
1933 | |
1934 } | |
1935 | |
1936 if (mmr_info_ind->v_short_net_name AND /* short name only */ | |
1937 !mmr_info_ind->v_full_net_name) | |
1938 { | |
1939 TRACE_FUNCTION(" SHORT NAME "); | |
1940 #ifdef NO_ASCIIZ | |
1941 memcpy(plmn_netw_data.network_short.data, | |
1942 mmr_info_ind->short_net_name.text, | |
1943 mmr_info_ind->short_net_name.c_text); | |
1944 #else | |
1945 strcpy(plmn_netw_data.network_short, (char*)mmr_info_ind->short_net_name.text); | |
1946 #endif | |
1947 } | |
1948 else if (!mmr_info_ind->v_short_net_name AND | |
1949 mmr_info_ind->v_full_net_name) /* full name only */ | |
1950 { | |
1951 TRACE_FUNCTION(" LONG NAME "); | |
1952 #ifdef NO_ASCIIZ | |
1953 memcpy( plmn_netw_data.network_long.data, | |
1954 mmr_info_ind->full_net_name.text, | |
1955 mmr_info_ind->full_net_name.c_text); | |
1956 #else | |
1957 strcpy( plmn_netw_data.network_long, (char*)mmr_info_ind->full_net_name.text ); | |
1958 #endif | |
1959 } | |
1960 else if (mmr_info_ind->v_short_net_name AND | |
1961 mmr_info_ind->v_full_net_name) | |
1962 { | |
1963 TRACE_FUNCTION(" LONG AND SHORT "); | |
1964 #ifdef NO_ASCIIZ | |
1965 memcpy( plmn_netw_data.network_long.data, | |
1966 mmr_info_ind->full_net_name.text, | |
1967 mmr_info_ind->full_net_name.c_text); | |
1968 memcpy( plmn_netw_data.network_short.data, | |
1969 mmr_info_ind->short_net_name.text, | |
1970 mmr_info_ind->short_net_name.c_text); | |
1971 #else | |
1972 strcpy( plmn_netw_data.network_long, (char*)mmr_info_ind->full_net_name.text ); | |
1973 strcpy( plmn_netw_data.network_short, (char*)mmr_info_ind->short_net_name.text); | |
1974 #endif | |
1975 } | |
1976 else | |
1977 { | |
1978 TRACE_EVENT("No name found"); | |
1979 } | |
1980 | |
1981 plmn_netw_data.opn_read_from = NM_NITZ; | |
1982 | |
1983 nm_get_network_data(&plmn_netw_data); | |
1984 } | |
1985 | |
1986 #endif | |
1987 /* | |
1988 +--------------------------------------------------------------------+ | |
1989 | PROJECT : MODULE : MFW_ACI_DUMMY | | |
1990 | STATE : code ROUTINE : rAT_PercentCCCN | | |
1991 +--------------------------------------------------------------------+ | |
1992 | |
1993 PURPOSE : | |
1994 */ | |
1995 GLOBAL void rAT_PercentCCCN ( T_ACI_FAC_DIR tDirection, | |
1996 SHORT cId, | |
1997 #ifdef FF_2TO1_PS | |
1998 T_NAS_fac_inf *acFie ) | |
1999 #else | |
2000 T_MNCC_fac_inf *acFie ) | |
2001 #endif | |
2002 { | |
2003 TRACE_FUNCTION ("rAT_PercentCCCN ()"); | |
2004 } | |
2005 | |
2006 /* | |
2007 +--------------------------------------------------------------------+ | |
2008 | PROJECT : MODULE : MFW_ACI_DUMMY | | |
2009 | STATE : code ROUTINE : rAT_PercentCSSN | | |
2010 +--------------------------------------------------------------------+ | |
2011 | |
2012 PURPOSE : | |
2013 */ | |
2014 GLOBAL void rAT_PercentCSSN ( T_ACI_FAC_DIR tDirection, | |
2015 T_ACI_FAC_TRANS_TYPE tType, | |
2016 #ifdef FF_2TO1_PS | |
2017 T_NAS_fac_inf *acFie ) | |
2018 #else | |
2019 T_MNCC_fac_inf *acFie ) | |
2020 #endif | |
2021 { | |
2022 TRACE_FUNCTION ("rAT_PercentCSSN ()"); | |
2023 } | |
2024 | |
2025 | |
2026 #if defined (REL99) || defined (FF_2TO1_PS) | |
2027 | |
2028 /* | |
2029 +--------------------------------------------------------------------+ | |
2030 | PROJECT : MODULE : MFW_ACI_DUMMY | | |
2031 | STATE : code ROUTINE : rAT_PercentCMGRS | | |
2032 +--------------------------------------------------------------------+ | |
2033 | |
2034 PURPOSE : | |
2035 */ | |
2036 GLOBAL void rAT_PercentCMGRS ( T_ACI_CMGRS_MODE mode, | |
2037 UBYTE tp_mr, | |
2038 UBYTE resend_count, | |
2039 UBYTE max_retrans ) | |
2040 { | |
2041 TRACE_FUNCTION ("rAT_PercentCMGRS ()"); | |
2042 } | |
2043 | |
2044 #endif /* REL99 OR FF_2TO1_PS*/ | |
2045 /* | |
2046 +--------------------------------------------------------------------+ | |
2047 | PROJECT : MODULE : MFW_ACI_DUMMY | | |
2048 | STATE : code ROUTINE : rAT_PercentRDLB | | |
2049 +--------------------------------------------------------------------+ | |
2050 | |
2051 PURPOSE : | |
2052 */ | |
2053 GLOBAL void rAT_PercentRDLB ( T_ACI_CC_RDL_BLACKL_STATE state ) | |
2054 { | |
2055 TRACE_FUNCTION ("rAT_PercentRDLB ()"); | |
2056 } | |
2057 /* | |
2058 +--------------------------------------------------------------------+ | |
2059 | PROJECT : MODULE : MFW_ACI_DUMMY | | |
2060 | STATE : code ROUTINE : rAT_PercentCPRSM | | |
2061 +--------------------------------------------------------------------+ | |
2062 | |
2063 PURPOSE : | |
2064 */ | |
2065 | |
2066 GLOBAL void rAT_PercentCPRSM ( T_ACI_CPRSM_MOD mode ) | |
2067 { | |
2068 TRACE_FUNCTION ("rAT_PercentCPRSM ()"); | |
2069 } | |
2070 | |
2071 /* | |
2072 +--------------------------------------------------------------------+ | |
2073 | PROJECT : MODULE : MFW_ACI_DUMMY | | |
2074 | STATE : code ROUTINE : rAT_PercentCSTAT | | |
2075 +--------------------------------------------------------------------+ | |
2076 | |
2077 PURPOSE : | |
2078 */ | |
2079 | |
2080 //x0pleela 13 Feb, 2006 | |
2081 //Querying for EONS data when %CSTAT returns EONS ready | |
2082 | |
2083 GLOBAL void rAT_PercentCSTAT ( T_ACI_STATE_MSG msgType ) | |
2084 { | |
2085 #ifndef NEPTUNE_BOARD | |
2086 T_MFW_NETWORK_STRUCT plmn_eons_data; | |
2087 #endif | |
2088 | |
2089 TRACE_FUNCTION ("rAT_PercentCSTAT ()"); | |
2090 #ifndef NEPTUNE_BOARD | |
2091 memset(&plmn_eons_data, 0, sizeof(T_MFW_NETWORK_STRUCT) ); | |
2092 if( (msgType.entityId EQ STATE_MSG_EONS ) AND | |
2093 (msgType.entityState EQ ENTITY_STATUS_Ready) ) | |
2094 { | |
2095 nm_get_COPN(&plmn_eons_data); | |
2096 | |
2097 //send E_NM_OPN event | |
2098 nm_get_network_data(&plmn_eons_data); | |
2099 } | |
2100 #endif | |
2101 | |
2102 } | |
2103 | |
2104 | |
2105 /* | |
2106 +--------------------------------------------------------------------+ | |
2107 | PROJECT : MODULE : MFW_ACI_DUMMY | | |
2108 | STATE : code ROUTINE : rAT_PercentRDL | | |
2109 +--------------------------------------------------------------------+ | |
2110 | |
2111 PURPOSE : | |
2112 */ | |
2113 | |
2114 GLOBAL void rAT_PercentRDL ( T_ACI_CC_REDIAL_STATE state ) | |
2115 { | |
2116 TRACE_FUNCTION ("rAT_PercentRDL ()"); | |
2117 } | |
2118 | |
2119 #ifndef FF_2TO1_PS | |
2120 /* | |
2121 +--------------------------------------------------------------------+ | |
2122 | PROJECT : MODULE : MFW_ACI_DUMMY | | |
2123 | STATE : code ROUTINE : rAT_PercentCMGR | | |
2124 +--------------------------------------------------------------------+ | |
2125 | |
2126 PURPOSE : | |
2127 */ | |
2128 | |
2129 GLOBAL void rAT_PercentCMGR ( T_ACI_CMGL_SM* sm, | |
2130 T_ACI_CMGR_CBM * cbm) | |
2131 { | |
2132 TRACE_FUNCTION ("rAT_PercentCMGR ()"); | |
2133 } | |
2134 | |
2135 /* | |
2136 +--------------------------------------------------------------------+ | |
2137 | PROJECT : MODULE : MFW_ACI_DUMMY | | |
2138 | STATE : code ROUTINE : rAT_PercentCMGL | | |
2139 +--------------------------------------------------------------------+ | |
2140 | |
2141 PURPOSE : | |
2142 */ | |
2143 | |
2144 GLOBAL void rAT_PercentCMGL ( T_ACI_CMGL_SM * smLst) | |
2145 { | |
2146 TRACE_FUNCTION ("rAT_PercentCMGL ()"); | |
2147 } | |
2148 | |
2149 | |
2150 /* | |
2151 +--------------------------------------------------------------------+ | |
2152 | PROJECT : MODULE : MFW_ACI_DUMMY | | |
2153 | STATE : code ROUTINE : rAT_* | | |
2154 +--------------------------------------------------------------------+ | |
2155 | |
2156 PURPOSE : Following functions MOved from ATI. (ati_ret.c) | |
2157 */ | |
2158 | |
2159 | |
2160 GLOBAL void rAT_PercentCREG ( T_ACI_CREG_STAT status, | |
2161 USHORT lac, | |
2162 USHORT cid, | |
2163 T_ACI_P_CREG_GPRS_IND gprs_ind) | |
2164 { | |
2165 TRACE_FUNCTION("rAT_PercentCREG()"); | |
2166 } | |
2167 | |
2168 #if defined (MFW) || defined (SMI) | |
2169 #ifdef FF_TIMEZONE | |
2170 GLOBAL void rAT_PlusCTZV ( S32 timezone ) | |
2171 { | |
2172 TRACE_FUNCTION("rAT_PlusCTZV()"); | |
2173 } | |
2174 #else | |
2175 GLOBAL void rAT_PlusCTZV ( UBYTE* timezone ) | |
2176 { | |
2177 TRACE_FUNCTION("rAT_PlusCTZV()"); | |
2178 } | |
2179 #endif | |
2180 #endif | |
2181 | |
2182 | |
2183 // June 02, 2006 DR: OMAPS00078005 x0021334 | |
2184 // Descripton: Test for NITZ (Network Identity and Timezone) support - No New time was displayed | |
2185 // Solution: New Time/Date received from network is sent to MFW by lower layer by invoking 'rAT_PercentCTZV' | |
2186 // function. This function has now been implemented to pass on the received values to MMI | |
2187 // for user confirmation and RTC updation. | |
2188 /* | |
2189 +--------------------------------------------------------------------+ | |
2190 | PROJECT : MODULE : MFW_ACI_DUMMY | | |
2191 | STATE : code ROUTINE : rAT_PercentCTZV | | |
2192 +--------------------------------------------------------------------+ | |
2193 | |
2194 PURPOSE : | |
2195 */ | |
2196 #if defined (MFW) || defined (SMI) | |
2197 GLOBAL void rAT_PercentCTZV (T_MMR_INFO_IND *mmr_info_ind, S32 timezone ) | |
2198 { | |
2199 #ifdef FF_TIMEZONE | |
2200 T_MFW_TIME_IND currclock; | |
2201 #endif | |
2202 | |
2203 TRACE_FUNCTION("rAT_PercentCTZV()"); | |
2204 | |
2205 #ifdef FF_TIMEZONE | |
2206 // Copy time related data received from network to 'currclock' | |
2207 // to be passed to MMI. | |
2208 | |
2209 currclock.hour = mmr_info_ind->time.hour; | |
2210 currclock.minute = mmr_info_ind->time.minute; | |
2211 currclock.second = mmr_info_ind->time.second; | |
2212 | |
2213 // Copy date related data received from network to 'currclock' | |
2214 // to be passed to MMI. | |
2215 currclock.day = mmr_info_ind->time.day; | |
2216 currclock.month = mmr_info_ind->time.month; | |
2217 currclock.year = mmr_info_ind->time.year; | |
2218 | |
2219 // Pass time and date info to MMI | |
2220 nm_set_network_time(&currclock); | |
2221 #endif | |
2222 } | |
2223 #endif | |
2224 | |
2225 /* | |
2226 +--------------------------------------------------------------------+ | |
2227 | PROJECT : GSM-PS (6147) MODULE : | | |
2228 | STATE : code ROUTINE : | | |
2229 +--------------------------------------------------------------------+ | |
2230 | |
2231 PURPOSE : dummy function, needs not to be used. | |
2232 */ | |
2233 GLOBAL void rAT_Z ( void ){} | |
2234 | |
2235 /* | |
2236 +--------------------------------------------------------------------+ | |
2237 | PROJECT : MODULE : MFW_ACI_DUMMY | | |
2238 | STATE : code ROUTINE : rAT_* | | |
2239 +--------------------------------------------------------------------+ | |
2240 | |
2241 PURPOSE : Following functions MOved from ACI. (ati_em_ret.c) | |
2242 */ | |
2243 | |
2244 // June 01, 2005 REF: CRR 31559 x0021334 | |
2245 // Description: TCS2.1.1 SW not buildable without engineering mode | |
2246 // Solution: Engineering Mode specific functions are guarded by 'FF_EM_MODE' flag | |
2247 | |
2248 #ifndef NEPTUNE_BOARD | |
2249 #ifdef FF_EM_MODE | |
2250 GLOBAL void rAT_PercentEM ( /*UBYTE srcId,*/ T_EM_VAL *val_tmp ) | |
2251 { | |
2252 } | |
2253 | |
2254 GLOBAL void rAT_PercentEMET ( /*UBYTE srcId,*/ T_EM_VAL val_tmp ) | |
2255 { | |
2256 | |
2257 } | |
2258 | |
2259 GLOBAL void rAT_PercentEMETS ( UBYTE entity ) | |
2260 { | |
2261 } | |
2262 #endif | |
2263 #else | |
2264 #ifdef TI_PS_FF_EM | |
2265 GLOBAL void rAT_PercentEM ( /*UBYTE srcId,*/ T_EM_VAL *val_tmp ) | |
2266 { | |
2267 } | |
2268 | |
2269 GLOBAL void rAT_PercentEMET ( /*UBYTE srcId,*/ T_EM_VAL val_tmp ) | |
2270 { | |
2271 | |
2272 } | |
2273 | |
2274 GLOBAL void rAT_PercentEMETS ( UBYTE entity ) | |
2275 { | |
2276 } | |
2277 #endif | |
2278 #endif /*FF_EM_MODE*/ | |
2279 | |
2280 /* | |
2281 +--------------------------------------------------------------------+ | |
2282 | PROJECT : MODULE : MFW_ACI_DUMMY | | |
2283 | STATE : code ROUTINE : rAT_* | | |
2284 +--------------------------------------------------------------------+ | |
2285 | |
2286 PURPOSE : Following functions MOved from ACI. (ati_cphs.c) | |
2287 */ | |
2288 | |
2289 | |
2290 | |
2291 #ifndef MFW | |
2292 #ifndef FF_MMI_RIV | |
2293 /* dummy in case of SMI */ | |
2294 GLOBAL void rAT_PercentCPNUMS(UBYTE element_index, | |
2295 UBYTE index_level, | |
2296 CHAR *alpha_tag, | |
2297 CHAR *number, | |
2298 BOOL premium_flag, | |
2299 BOOL network_flag, | |
2300 UBYTE type_of_address) | |
2301 { | |
2302 } | |
2303 #endif /*ndef FF_MMI_RIV */ | |
2304 #endif /* ndef MFW */ | |
2305 | |
2306 #ifndef MFW | |
2307 #ifndef FF_MMI_RIV | |
2308 /* dummy in case of SMI */ | |
2309 GLOBAL void rAT_PercentCPROAM(UBYTE roam_status) | |
2310 {} | |
2311 #endif /* ndef FF_MMI_RIV */ | |
2312 #endif /* ndef MFW */ | |
2313 | |
2314 #ifndef MFW | |
2315 #ifndef FF_MMI_RIV | |
2316 /* dummy in case of SMI */ | |
2317 GLOBAL void rAT_PercentCPVWI ( UBYTE flag_set, | |
2318 USHORT line) | |
2319 { } | |
2320 #endif /* FF_MMI_RIV */ | |
2321 #endif /* MFW */ | |
2322 #endif /*FF_2TO1_PS*/ | |
2323 | |
2324 /* | |
2325 +--------------------------------------------------------------------+ | |
2326 | PROJECT : GSM-F&D (8411) MODULE : MFW_ACI_DUMMY | | |
2327 | STATE : code ROUTINE : rAT_PercentMBI | | |
2328 +--------------------------------------------------------------------+ | |
2329 | |
2330 PURPOSE : handles callback for %MBI, which queries the mailbox identifiers | |
2331 */ | |
2332 #ifdef FF_CPHS_REL4 | |
2333 GLOBAL void rAT_PercentMBI(T_ACI_MBI* mbi) | |
2334 { | |
2335 T_MFW_CPHS_REL4_MBI mfw_mbi; | |
2336 mfw_mbi.voice=mbi->mbdn_id_voice; | |
2337 mfw_mbi.fax=mbi->mbdn_id_fax; | |
2338 mfw_mbi.electronic=mbi->mbdn_id_email; | |
2339 mfw_mbi.other=mbi->mbdn_id_other; | |
2340 mfw_mbi.valid=1; /*1 means valid*/ | |
2341 | |
2342 /*need to send MBI signal to BMI*/ | |
2343 sendCPHSSignal(E_CPHS_REL4_GET_MBI, &mfw_mbi); | |
2344 } | |
2345 | |
2346 /* | |
2347 +--------------------------------------------------------------------+ | |
2348 | PROJECT : GSM-F&D (8411) MODULE : MFW_ACI_DUMMY | | |
2349 | STATE : code ROUTINE : rAT_PercentMBI | | |
2350 +--------------------------------------------------------------------+ | |
2351 | |
2352 PURPOSE : handles callback for %MBI, which queries the mailbox identifiers | |
2353 */ | |
2354 | |
2355 GLOBAL void rAT_PercentMBDN(T_ACI_MBDN* mbdn) | |
2356 { | |
2357 | |
2358 /*send MBDN signal to BMI*/ | |
2359 sendCPHSSignal(E_CPHS_REL4_GET_MBDN,mbdn); | |
2360 } | |
2361 | |
2362 | |
2363 extern T_MFW_CPHS_REL4_MWIS mwis_stat[4]; | |
2364 /* | |
2365 +--------------------------------------------------------------------+ | |
2366 | PROJECT : GSM-F&D (8411) MODULE : MFW_ACI_DUMMY | | |
2367 | STATE : code ROUTINE : rAT_PercentMWIS| | |
2368 +--------------------------------------------------------------------+ | |
2369 | |
2370 PURPOSE : handles callback for %MWIS, which queries the message waiting status*/ | |
2371 | |
2372 GLOBAL void rAT_PercentMWIS(T_ACI_MWIS_MWI* mwis) | |
2373 { | |
2374 /*send MBDN signal to BMI*/ | |
2375 int profile; | |
2376 static UBYTE count = 1; | |
2377 | |
2378 // memcpy(mwis_stat[count - 1],mwis,sizeof(T_MFW_CPHS_REL4_MWIS)); | |
2379 mwis_stat[count-1].mwisStat = mwis->mwiStat; | |
2380 mwis_stat[count-1].voicemail = mwis->mwis_count_voice; | |
2381 mwis_stat[count-1].fax = mwis->mwis_count_fax; | |
2382 mwis_stat[count-1].electronic = mwis->mwis_count_email; | |
2383 mwis_stat[count-1].other = mwis->mwis_count_other; | |
2384 | |
2385 | |
2386 if(count == mfw_cphs_get_no_profile()) | |
2387 sendCPHSSignal(E_CPHS_GET_VC_STAT,0); | |
2388 else | |
2389 count++; | |
2390 } | |
2391 | |
2392 /* | |
2393 +--------------------------------------------------------------------+ | |
2394 | PROJECT : GSM-F&D (8411) MODULE : MFW_ACI_DUMMY | | |
2395 | STATE : code ROUTINE : rAT_PercentMWI| | |
2396 +--------------------------------------------------------------------+ | |
2397 | |
2398 PURPOSE : handles callback for %MWI. This function is called whenever message waiting status is received*/ | |
2399 GLOBAL void rAT_PercentMWI(UBYTE msp_id,T_ACI_MWIS_MWI* mwis) | |
2400 { | |
2401 TRACE_FUNCTION("rAT_PercentMWI()"); | |
2402 // memcpy(mwis_stat[msp_id - 1],mwis,sizeof(T_MFW_CPHS_REL4_MWIS)); | |
2403 mwis_stat[msp_id - 1].mwisStat = mwis->mwiStat; | |
2404 mwis_stat[msp_id - 1].voicemail = mwis->mwis_count_voice; | |
2405 mwis_stat[msp_id - 1].fax = mwis->mwis_count_fax; | |
2406 mwis_stat[msp_id - 1].electronic = mwis->mwis_count_email; | |
2407 mwis_stat[msp_id - 1].other = mwis->mwis_count_other; | |
2408 | |
2409 sendCPHSSignal(E_CPHS_GET_VC_STAT,0); | |
2410 } | |
2411 | |
2412 #endif | |
2413 | |
2414 | |
2415 | |
2416 /* | |
2417 +--------------------------------------------------------------------+ | |
2418 | PROJECT : GSM-F&D (8411) MODULE : MFW_ACI_DUMMY | | |
2419 | STATE : code ROUTINE : rAT_PlusCLVL | | |
2420 +--------------------------------------------------------------------+ | |
2421 | |
2422 PURPOSE : handles callback for +CLVL querying the volume | |
2423 */ | |
2424 | |
2425 GLOBAL void rAT_PlusCLVL(U8 drvVol) | |
2426 { | |
2427 TRACE_FUNCTION ("rAT_PlusCLVL()"); | |
2428 | |
2429 return; | |
2430 } | |
2431 | |
2432 /* | |
2433 +--------------------------------------------------------------------+ | |
2434 | PROJECT : GSM-F&D (8411) MODULE : MFW_ACI_DUMMY | | |
2435 | STATE : code ROUTINE : rAT_PlusCRSL | | |
2436 +--------------------------------------------------------------------+ | |
2437 | |
2438 PURPOSE : handles callback for +CRSL querying the volume | |
2439 */ | |
2440 | |
2441 GLOBAL void rAT_PlusCRSL(U8 drvVol) | |
2442 { | |
2443 TRACE_FUNCTION ("rAT_PlusCRSL()"); | |
2444 | |
2445 return; | |
2446 } | |
2447 | |
2448 /* | |
2449 +--------------------------------------------------------------------+ | |
2450 | PROJECT : GSM-F&D (8411) MODULE : MFW_ACI_DUMMY | | |
2451 | STATE : code ROUTINE : rAT_PlusCMUT | | |
2452 +--------------------------------------------------------------------+ | |
2453 | |
2454 PURPOSE : handles callback for +CMUT querying the volume | |
2455 */ | |
2456 | |
2457 GLOBAL void rAT_PlusCMUT(U8 drvMute) | |
2458 { | |
2459 TRACE_FUNCTION ("rAT_PlusCMUT()"); | |
2460 | |
2461 return; | |
2462 } | |
2463 | |
2464 /* Mar 14, 2006 REF:ER OMAPS00070811 */ | |
2465 #ifdef NEPTUNE_BOARD | |
2466 /* | |
2467 +--------------------------------------------------------------------+ | |
2468 | PROJECT : GSM-F&D (8411) MODULE : MFW_ACI_DUMMY | | |
2469 | STATE : code ROUTINE : rAT_PercentCMGR | | |
2470 +--------------------------------------------------------------------+ | |
2471 | |
2472 */ | |
2473 GLOBAL void rAT_PercentCMGR ( T_ACI_CMGL_SM* sm, | |
2474 T_ACI_CMGR_CBM* cbm ) | |
2475 { | |
2476 TRACE_FUNCTION ("rAT_PercentCMGR()"); | |
2477 } | |
2478 | |
2479 /* | |
2480 +--------------------------------------------------------------------+ | |
2481 | PROJECT : GSM-F&D (8411) MODULE : MFW_ACI_DUMMY | | |
2482 | STATE : code ROUTINE : rAT_PercentCMGL | | |
2483 +--------------------------------------------------------------------+ | |
2484 | |
2485 PURPOSE : | |
2486 */ | |
2487 GLOBAL void rAT_PercentCMGL ( T_ACI_CMGL_SM * smLst ) | |
2488 { | |
2489 TRACE_FUNCTION ("rAT_PercentCMGL()"); | |
2490 } | |
2491 | |
2492 #endif | |
2493 | |
2494 #if defined(TI_UMTS) && defined(TI_PS_3GPP_R5) | |
2495 /* | |
2496 +--------------------------------------------------------------------+ | |
2497 | PROJECT : GSM-F&D (8411) MODULE : MFW_ACI_DUMMY | | |
2498 | STATE : code ROUTINE : rAT_PercentMMCI | | |
2499 +--------------------------------------------------------------------+ | |
2500 | |
2501 PURPOSE : handles callback for %MMCC indication cc service change | |
2502 fallback case ( SCUDIF) | |
2503 */ | |
2504 | |
2505 GLOBAL void rAT_PercentMMCI ( T_ACI_MMCI_STAT state) | |
2506 { | |
2507 TRACE_FUNCTION("rAT_PercentMMCI()"); | |
2508 | |
2509 return; | |
2510 } | |
2511 | |
2512 #endif /* TI_UMTS && TI_PS_3GPP_R5 */ | |
2513 | |
2514 | |
2515 #ifdef TI_PS_FF_EM | |
2516 | |
2517 GLOBAL void rAT_PercentEINFO (U16 offset, U16 length, T_ENG_INFO_REQ *eng_info_req) | |
2518 { | |
2519 TRACE_FUNCTION("rAT_PercentEINFO()"); | |
2520 Mfw_em_response_EINFO(eng_info_req); | |
2521 } | |
2522 | |
2523 GLOBAL void rAT_PercentESINFO (U16 offset, U16 length, T_ENG_INFO_STATIC_REQ *eng_info_static_req) | |
2524 { | |
2525 TRACE_FUNCTION("rAT_PercentESINFO()"); | |
2526 Mfw_em_response_ESINFO(eng_info_static_req); | |
2527 } | |
2528 | |
2529 #endif /* TI_PS_FF_EM */ | |
2530 | |
2531 /*a0393213 cphs rel4*/ | |
2532 | |
2533 /* | |
2534 +--------------------------------------------------------------------+ | |
2535 | PROJECT : GSM-F&D (8411) MODULE : ACI_RET | | |
2536 | STATE : code ROUTINE : rAT_PercentCFIS | | |
2537 +--------------------------------------------------------------------+ | |
2538 | |
2539 PURPOSE : handles rAT_PercentCFIS call back | |
2540 PARAMETERS : cfis - Call forward indication status | |
2541 */ | |
2542 #ifdef FF_CPHS_REL4 | |
2543 GLOBAL void rAT_PercentCFIS ( T_ACI_CFIS_CFU *cfis ) | |
2544 { | |
2545 T_MFW_CPHS_REL4_DV_STAT divert_status; | |
2546 TRACE_FUNCTION("rAT_PercentCFIS()"); | |
2547 | |
2548 if(cfis->cfuStat & 0x01) /*first bit corresponds to voice*/ | |
2549 divert_status.voice=MFW_CFLAG_SET; | |
2550 else | |
2551 divert_status.voice=MFW_CFLAG_NOTSet; | |
2552 | |
2553 if(cfis->cfuStat & 0x02) /*second bit corresponds to fax*/ | |
2554 divert_status.fax=MFW_CFLAG_SET; | |
2555 else | |
2556 divert_status.fax=MFW_CFLAG_NOTSet; | |
2557 | |
2558 if(cfis->cfuStat & 0x04) /*third bit corresponds to data*/ | |
2559 divert_status.data=MFW_CFLAG_SET; | |
2560 else | |
2561 divert_status.data=MFW_CFLAG_NOTSet; | |
2562 | |
2563 memcpy(divert_status.voice_dialling_number,cfis->number,PHB_MAX_LEN); | |
2564 | |
2565 TRACE_EVENT_P4("voice %x, fax %x, data %x, number %s", | |
2566 divert_status.voice,divert_status.fax,divert_status.data, | |
2567 divert_status.voice_dialling_number); | |
2568 | |
2569 sendCPHSSignal(E_CPHS_GET_DV_STAT,&divert_status); | |
2570 } | |
2571 #endif /* FF_CPHS_REL4 */ | |
2572 | |
2573 | |
2574 //May 10, 2006 REF: DRT OMAPS00075829 xdeepadh | |
2575 //Using the mechanism where MFW can receive primitives without | |
2576 // ACI to know about it | |
2577 #if defined(FF_MMI_FILEMANAGER)||defined(FF_MMI_CAMERA_APP) | |
2578 /* | |
2579 +------------------------------------------------------------------------------ | |
2580 | Function : mslPrimHandler | |
2581 +------------------------------------------------------------------------------ | |
2582 | Description : This fn is the premitieve handler for MSL | |
2583 | | |
2584 | Parameters : opc-opc code | |
2585 | data - data | |
2586 | | |
2587 | | |
2588 | Return : TRUE/FALSE | |
2589 +------------------------------------------------------------------------------ | |
2590 */ | |
2591 GLOBAL BOOL mslPrimHandler (USHORT opc, void * data) | |
2592 { | |
2593 TRACE_FUNCTION ("mslPrimHandler"); | |
2594 TRACE_EVENT_P1("opc is %x",opc); | |
2595 | |
2596 if (opc EQ MSL_MMI_IND) | |
2597 { | |
2598 Mslil_msl_mmi_ind((T_MSL_MMI_IND*)data); | |
2599 return TRUE; | |
2600 } | |
2601 | |
2602 return FALSE; | |
2603 | |
2604 } | |
2605 | |
2606 /* | |
2607 +------------------------------------------------------------------------------ | |
2608 | Function : Mslil_msl_mmi_ind | |
2609 +------------------------------------------------------------------------------ | |
2610 | Description : This fn is called when msl_mmi_ind is received | |
2611 | | |
2612 | Parameters : msl_mmi_ind - MSL_MMI_IND primitive structure | |
2613 | | |
2614 | Return : void | |
2615 +------------------------------------------------------------------------------ | |
2616 */ | |
2617 | |
2618 GLOBAL void Mslil_msl_mmi_ind ( T_MSL_MMI_IND *msl_mmi_ind) | |
2619 { | |
2620 | |
2621 U32 ucp=msl_mmi_ind->ucp; | |
2622 /*a0393213 compiler warnings removal - removed variable status*/ | |
2623 | |
2624 TRACE_FUNCTION ("Mslil_msl_mmi_ind"); | |
2625 | |
2626 switch(ucp) | |
2627 { | |
2628 #ifdef FF_MMI_CAMERA_APP | |
2629 case MSL_UCP_IMGCAP:/*MSL_UCP_IMGCAP*/ | |
2630 mfw_msl_cam_cb(msl_mmi_ind->message, msl_mmi_ind->appData); | |
2631 break; | |
2632 #endif | |
2633 #ifdef FF_MMI_FILEMANAGER | |
2634 case MSL_UCP_IMGTHMB:/*MSL_UCP_IMGTHMB*/ | |
2635 //Call the mmi cb for imagethumbnail. | |
2636 mfw_fm_thmb_mslcb(msl_mmi_ind->message, msl_mmi_ind->appData); | |
2637 break; | |
2638 case MSL_UCP_IMGVIEW:/*MSL_UCP_IMGPREVIEW*/ | |
2639 //Call the mmi cb for magepreview. | |
2640 mfw_fm_view_mslcb(msl_mmi_ind->message, msl_mmi_ind->appData); | |
2641 break; | |
2642 #endif | |
2643 } | |
2644 | |
2645 PFREE(msl_mmi_ind); | |
2646 } | |
2647 | |
2648 /* | |
2649 +------------------------------------------------------------------------------ | |
2650 | Function : Msl_mslil_Callback | |
2651 +------------------------------------------------------------------------------ | |
2652 | Description : This function should be called by other MSL functions when a callback is to be called | |
2653 | | |
2654 | Parameters : handle - MSL handle | |
2655 | ucp_type - Use case pipeline type | |
2656 | appData - application specific data | |
2657 | message - status message | |
2658 | | |
2659 | Return : void | |
2660 | | |
2661 +------------------------------------------------------------------------------ | |
2662 */ | |
2663 | |
2664 void Msl_mslil_Callback(void* handle, U32 ucp_type, U32 tCMd, U32 tStatus) | |
2665 { | |
2666 #if defined (NEW_FRAME) | |
2667 EXTERN T_HANDLE hCommACI; | |
2668 #else | |
2669 EXTERN T_VSI_CHANDLE hCommACI; | |
2670 #endif | |
2671 | |
2672 PALLOC(msl_mmi_ind,MSL_MMI_IND); | |
2673 TRACE_FUNCTION ("Msl_mslil_Callback"); | |
2674 msl_mmi_ind->ucp = ucp_type; | |
2675 msl_mmi_ind->handle = (U32)handle; | |
2676 msl_mmi_ind->message = tCMd; | |
2677 msl_mmi_ind->appData = (U32)tStatus; | |
2678 | |
2679 #if defined (NEW_FRAME) | |
2680 PSENDX(ACI,msl_mmi_ind); | |
2681 #else | |
2682 #if defined (_TMS470) | |
2683 vsi_c_send("",hCommACI,D2P(msl_mmi_ind), | |
2684 sizeof(T_PRIM_HEADER)+sizeof(T_MSL_MMI_IND)); | |
2685 #else | |
2686 PSEND(ACI,msl_mmi_ind); | |
2687 #endif | |
2688 #endif | |
2689 | |
2690 return; | |
2691 } | |
2692 | |
2693 #endif //#if defined(FF_MMI_FILEMANAGER)||defined(FF_MMI_CAMERA_APP) | |
2694 /* EOF */ | |
2695 |