FreeCalypso > hg > fc-magnetite
view src/ui3/mfw/mfw_nmi.h @ 629:3231dd9b38c1
armio.c: make GPIOs 8 & 13 outputs driving 1 on all "classic" targets
Calypso GPIOs 8 & 13 are pinmuxed with MCUEN1 & MCUEN2, respectively,
and on powerup these pins are MCUEN, i.e., outputs driving 1. TI's code
for C-Sample and earlier turns them into GPIOs configured as outputs also
driving 1 - so far, so good - but TI's code for BOARD 41 (which covers
D-Sample, Leonardo and all real world Calypso devices derived from the
latter) switches them from MCUEN to GPIOs, but then leaves them as inputs.
Given that the hardware powerup state of these two pins is outputs driving 1,
every Calypso board design MUST be compatible with such driving; typically
these GPIO signals will be either unused and unconnected or connected as
outputs driving some peripheral. Turning these pins into GPIO inputs will
result in floating inputs on every reasonably-wired board, thus I am
convinced that this configuration is nothing but a bug on the part of
whoever wrote this code at TI.
This floating input bug had already been fixed earlier for GTA modem and
FCDEV3B targets; the present change makes the fix unconditional for all
"classic" targets. The newly affected targets are D-Sample, Leonardo,
Tango and GTM900.
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Thu, 02 Jan 2020 05:38:26 +0000 |
parents | e8ddbb0837ed |
children |
line wrap: on
line source
/* +--------------------------------------------------------------------+ | PROJECT: GSM-MFW (?) $Workfile:: mfw_nmi.h $| | $Author:: Vo $Revision:: 1 $| | CREATED: 07.10.98 $Modtime:: 21.10.99 12:18 $| | STATE : code | +--------------------------------------------------------------------+ PURPOSE : Internal definitions for network management History May 31, 2007 DR: OMAPS00133201 x0pleela Description: MS keeps searching networks and doesn't list available PLMNs after performing manual selection Solution : Modified the prototype of function nm_error_cops() */ #ifndef DEF_MFW_NMI_HEADER #define DEF_MFW_NMI_HEADER #define MAX_PREF_PLNM 8 #define MAX_PIN_COUNT 3 /* permit maximal entering for user */ #define MAX_PUK_COUNT 5 #define FIRST_SIM_INVAILD 1 #define SERVICE_OK 1 #define SERVICE_FAILURE 0 #define CMD_NOT_PRESENT 0 /* * Network Control Block */ typedef struct { T_MFW_EVENT emask; /* events of interest */ T_MFW_EVENT event; /* current event */ T_MFW_CB handler; T_MFW_NM_PARA para; } T_MFW_NM; EXTERN T_MFW_HND nm_install (T_MFW_HDR *w, T_MFW_HDR *h, T_MFW_NM *nm); EXTERN T_MFW_RES nm_remove (T_MFW_HDR *h); EXTERN void nm_activate (UBYTE result); #ifdef FF_2TO1_PS EXTERN void nm_mmi_parameters (T_SIM_imsi_field *imsi_field, T_SIM_pref_plmn *pref_plmn); #else EXTERN void nm_mmi_parameters (T_imsi_field *imsi_field); #endif EXTERN void nm_spn_cnf (USHORT error, T_EF_SPN *efspn); EXTERN void nm_ok_cops (void); //x0pleela 30 May, 2007 DR: OMAPS00133201 //Passing T_ACI_CME_ERR as parameter EXTERN void nm_error_cops ( T_ACI_CME_ERR err ); EXTERN void nm_req_imsi (UBYTE *imsi_id); EXTERN T_MFW nm_reg_flag_req (void); EXTERN void nm_ok_deregistration (void); EXTERN void nm_ok_pref_plmn (void); EXTERN void nm_error_pref_plmn (void); EXTERN void nm_sat_file_update (USHORT dataId); EXTERN void nm_ok_band (void); /*SPR919 - SH - added */ #endif