annotate src/cs/layer1/tm_cust0/l1tm_tpu10.c @ 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 cc44352c702f
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
399
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
1 /************* Revision Controle System Header *************
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
2 * GSM Layer 1 software
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
3 * L1TM_TPU10.C
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
4 *
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
5 * Filename l1tm_tpu10.c
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
6 * Version 1.4
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
7 * Date 01/10/03
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
8 *
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
9 ************* Revision Controle System Header *************/
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
10
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
11 #include "l1_confg.h"
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
12 #if (TESTMODE && (RF==10))
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
13
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
14 #include "tm_defs.h"
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
15 #include "l1_const.h"
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
16 #include "l1_types.h"
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
17
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
18 #include "l1tm_defty.h"
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
19 #include "l1tm_cust.h"
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
20 #include "l1tm_tpu10.h"
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
21
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
22 #if (AUDIO_TASK == 1)
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
23 #include "l1audio_const.h"
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
24 #include "l1audio_cust.h"
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
25 #include "l1audio_defty.h"
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
26 #endif
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
27
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
28 #if (L1_GTT == 1)
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
29 #include "l1gtt_const.h"
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
30 #include "l1gtt_defty.h"
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
31 #endif
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
32
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
33 #include "l1_defty.h"
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
34 #include "l1_msgty.h"
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
35 #include "l1_tabs.h"
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
36
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
37 #include "l1tm_msgty.h"
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
38 #include "l1tm_varex.h"
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
39
400
cc44352c702f l1tm_tpu10.c: s/ANALOG/ANLG_FAM/
Mychaela Falconia <falcon@freecalypso.org>
parents: 399
diff changeset
40 #if ((ANLG_FAM == 1) || (ANLG_FAM == 2) || (ANLG_FAM == 3))
399
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
41 #include "spi_drv.h"
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
42 #endif
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
43
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
44 #include "sys_types.h"
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
45 #include "general.h"
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
46 #include "l1_time.h"
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
47 #include "tpudrv.h"
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
48 #include "tpudrv10.h"
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
49 #include <string.h>
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
50
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
51 // Import band configuration from Flash module (need to replace by an access function)
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
52
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
53
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
54 // External function prototypes
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
55
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
56 void Cust_tm_tpu_table_write (T_TM_RETURN *tm_return, WORD8 index, UWORD8 size, UWORD8 table[])
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
57 {
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
58 /*
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
59 INDICES BETWEEN in [0..63] RANGE ARE RESERVED FOR TI RF MODULE
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
60 */
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
61
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
62
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
63 // fill in the cid
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
64 tm_return->cid = TPU_TABLE_WRITE;
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
65
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
66 switch (index)
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
67 {
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
68 default:
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
69 tm_return->size = 0;
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
70 tm_return->status = E_BADINDEX;
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
71 break;
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
72 } // end of switch
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
73 }
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
74
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
75 void Cust_tm_tpu_table_read (T_TM_RETURN *tm_return, WORD8 index)
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
76 {
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
77 /*
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
78 INDICES BETWEEN in [0..63] RANGE ARE RESERVED FOR TI RF MODULE
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
79 */
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
80
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
81 // fill in the cid
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
82 tm_return->cid = TPU_TABLE_READ;
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
83
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
84 switch (index)
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
85 {
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
86 default:
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
87 tm_return->size = 0;
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
88 tm_return->status = E_BADINDEX;
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
89 break;
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
90 } // end of switch
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
91 }
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
92
a7150a25086a l1tm_tpu10.c: initial import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
93 #endif //TESTMODE