FreeCalypso > hg > fc-tourmaline
comparison src/ui/mfw/mfw_mme.c @ 69:77321341946c
first-pass implementation of UI to FCHG connection
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Fri, 23 Oct 2020 03:39:22 +0000 |
parents | 7c7fe9d0ea7c |
children | 7160f0d005d2 |
comparison
equal
deleted
inserted
replaced
68:e9a4b683f697 | 69:77321341946c |
---|---|
144 #include "mfw_ffs.h" /*OMAPS00098881 x0039928(sumanth)*/ | 144 #include "mfw_ffs.h" /*OMAPS00098881 x0039928(sumanth)*/ |
145 //xashmic 9 Sep 2006, OMAPS00092732 | 145 //xashmic 9 Sep 2006, OMAPS00092732 |
146 #ifdef FF_MMI_USBMS | 146 #ifdef FF_MMI_USBMS |
147 #include "usb/usb_api.h" | 147 #include "usb/usb_api.h" |
148 #endif | 148 #endif |
149 #include "fchg/fchg_api.h" | |
149 | 150 |
150 //x0pleela 01 Apr, 2007 ER: OMAPS00122561 | 151 //x0pleela 01 Apr, 2007 ER: OMAPS00122561 |
151 #ifdef FF_PHONE_LOCK | 152 #ifdef FF_PHONE_LOCK |
152 #include "mfw_sim.h" | 153 #include "mfw_sim.h" |
153 #endif //FF_PHONE_LOCK | 154 #endif //FF_PHONE_LOCK |
182 | 183 |
183 | 184 |
184 static int mmeCommand (U32 cmd, void *h); | 185 static int mmeCommand (U32 cmd, void *h); |
185 | 186 |
186 /* driver callbacks */ | 187 /* driver callbacks */ |
187 static void pwrCb (drv_SignalID_Type *signal_params); | 188 static void pwrCb (enum fchg_event); |
188 static void rxCb (drv_SignalID_Type *signal_params); | 189 static void rxCb (drv_SignalID_Type *signal_params); |
189 static void rtcCb (drv_SignalID_Type *signal_params); | 190 static void rtcCb (drv_SignalID_Type *signal_params); |
190 | 191 |
191 /* Added to remove warning Aug - 11 */ | 192 /* Added to remove warning Aug - 11 */ |
192 EXTERN UBYTE dspl_Enable (UBYTE in_Enable); | 193 EXTERN UBYTE dspl_Enable (UBYTE in_Enable); |
424 battLevel = 0; | 425 battLevel = 0; |
425 battState = 0; | 426 battState = 0; |
426 hdsPresence = 0; | 427 hdsPresence = 0; |
427 | 428 |
428 | 429 |
429 pwr_Init(pwrCb); //power driver | 430 fchg_register_event_handler(pwrCb); /* battery driver */ |
430 rx_Init(rxCb); //fieldstrength driver | 431 rx_Init(rxCb); //fieldstrength driver |
431 light_Init(); //light emitting driver | 432 light_Init(); //light emitting driver |
432 // xpradipg - LOCOSTO-ENH-31895 : 23 June 2005 | 433 // xpradipg - LOCOSTO-ENH-31895 : 23 June 2005 |
433 #ifdef FF_MMI_AUDIO_PROFILE | 434 #ifdef FF_MMI_AUDIO_PROFILE |
434 audio_Init(audio_device_config); | 435 audio_Init(audio_device_config); |
435 #else | 436 #else |
436 audio_Init(hdsCb); //audio driver | 437 audio_Init(hdsCb); //audio driver |
437 #endif | 438 #endif |
438 | |
439 mmeBattInfo ( 10, 0); | |
440 | 439 |
441 mmeRxInfo(5,0); | 440 mmeRxInfo(5,0); |
442 | 441 |
443 /* install prim handler */ | 442 /* install prim handler */ |
444 pSlot = aci_create((T_PRIM_HANDLER)mmePrimHandler,NULL); | 443 pSlot = aci_create((T_PRIM_HANDLER)mmePrimHandler,NULL); |
776 PURPOSE : configure battery level information | 775 PURPOSE : configure battery level information |
777 | 776 |
778 | 777 |
779 */ | 778 */ |
780 | 779 |
780 #if 0 /* removed in FreeCalypso */ | |
781 void mmeBattInfo ( U8 intervalls, U16 level) | 781 void mmeBattInfo ( U8 intervalls, U16 level) |
782 { | 782 { |
783 pwr_DCB_Type pwr_DCB; | 783 pwr_DCB_Type pwr_DCB; |
784 | 784 |
785 if (level > 255) level = 255; | 785 if (level > 255) level = 255; |
787 pwr_DCB.RangeMin = (U8) level; /* low level threshold */ | 787 pwr_DCB.RangeMin = (U8) level; /* low level threshold */ |
788 pwr_DCB.RangeMax = 100; /* 100 Percent */ | 788 pwr_DCB.RangeMax = 100; /* 100 Percent */ |
789 pwr_DCB.Steps = intervalls; /* n Steps */ | 789 pwr_DCB.Steps = intervalls; /* n Steps */ |
790 pwr_SetConfig(&pwr_DCB); | 790 pwr_SetConfig(&pwr_DCB); |
791 } | 791 } |
792 #endif | |
792 | 793 |
793 | 794 |
794 /* | 795 /* |
795 +--------------------------------------------------------------------+ | 796 +--------------------------------------------------------------------+ |
796 | PROJECT : MMI-Framework (8417) MODULE : MFW_MME | | 797 | PROJECT : MMI-Framework (8417) MODULE : MFW_MME | |
1040 mmeSignal(MfwMmeSignal,level); | 1041 mmeSignal(MfwMmeSignal,level); |
1041 return TRUE; /* processed by MME, delete */ | 1042 return TRUE; /* processed by MME, delete */ |
1042 case MMI_BATTERY_IND: | 1043 case MMI_BATTERY_IND: |
1043 level = ((T_MMI_BATTERY_IND *) data)->volt; | 1044 level = ((T_MMI_BATTERY_IND *) data)->volt; |
1044 state = ((T_MMI_BATTERY_IND *) data)->temp; | 1045 state = ((T_MMI_BATTERY_IND *) data)->temp; |
1045 if (battLevel != level) | 1046 if (level != FCHG_BATT_BARS_CHARGING && battLevel != level) |
1046 { | 1047 { |
1047 battLevel = level; | 1048 battLevel = level; |
1048 mmeSignal(MfwMmeBattery,level); | 1049 mmeSignal(MfwMmeBattery,level); |
1049 } | 1050 } |
1050 if (battState != state) | 1051 /* is it a new state or an event? */ |
1052 if (state >= BATT_EVENT_CHARGER_PLUG) | |
1053 { | |
1054 mmeSignal(MfwMmeBaState,state); | |
1055 } | |
1056 else if (battState != state) | |
1051 { | 1057 { |
1052 battState = state; | 1058 battState = state; |
1053 mmeSignal(MfwMmeBaState,state); | 1059 mmeSignal(MfwMmeBaState,state); |
1054 } | 1060 } |
1055 return TRUE; /* processed by MME, delete */ | 1061 return TRUE; /* processed by MME, delete */ |
1185 | 1191 |
1186 PURPOSE : Called by battery driver | 1192 PURPOSE : Called by battery driver |
1187 | 1193 |
1188 */ | 1194 */ |
1189 | 1195 |
1190 static void pwrCb (drv_SignalID_Type *signal_params) | 1196 static void pwrCb (enum fchg_event fchg_event) |
1191 { | 1197 { |
1192 pwr_Status_Type *para; | 1198 struct fchg_user_state fchg_data; |
1193 PALLOC(battery_ind, MMI_BATTERY_IND); | 1199 PALLOC(battery_ind, MMI_BATTERY_IND); |
1194 | 1200 |
1195 para = (pwr_Status_Type *) signal_params->UserData; | 1201 fchg_get_current_state(&fchg_data); |
1196 battery_ind->volt = para->BatteryLevel; | 1202 battery_ind->volt = fchg_data.batt_bars; |
1197 battery_ind->temp = para->Status; | 1203 if (fchg_event == FCHG_EVENT_CHARGER_PLUG) { |
1204 battery_ind->temp = BATT_EVENT_CHARGER_PLUG; | |
1205 } else { | |
1206 switch (fchg_data.chg_state) { | |
1207 case FCHG_STATE_CI_CHARGING: | |
1208 case FCHG_STATE_CV_CHARGING: | |
1209 battery_ind->temp = BATT_STATE_CHARGING; | |
1210 break; | |
1211 case FCHG_STATE_READY_TO_RECHARGE: | |
1212 battery_ind->temp = BATT_STATE_CHARGING_COMPLETE; | |
1213 break; | |
1214 default: | |
1215 battery_ind->temp = BATT_STATE_NO_CHARGING; | |
1216 } | |
1217 } | |
1198 | 1218 |
1199 PSENDX(ACI,battery_ind); | 1219 PSENDX(ACI,battery_ind); |
1200 } | 1220 } |
1201 | 1221 |
1202 | 1222 |