comparison L1/dsp/leadapi.h @ 0:75a11d740a02

initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
author Mychaela Falconia <falcon@freecalypso.org>
date Thu, 09 Jun 2016 00:02:41 +0000
parents
children
comparison
equal deleted inserted replaced
-1:000000000000 0:75a11d740a02
1 /*******************************************************************************
2 TEXAS INSTRUMENTS INCORPORATED PROPRIETARY INFORMATION
3
4 Property of Texas Instruments -- For Unrestricted Internal Use Only
5 Unauthorized reproduction and/or distribution is strictly prohibited. This
6 product is protected under copyright law and trade secret law as an
7 unpublished work. Created 1987, (C) Copyright 1997 Texas Instruments. All
8 rights reserved.
9
10
11 Filename : leadapi.h
12
13 Description : Boot the LEAD - header file
14
15 Target : ARM
16
17 Project :
18
19 Author : A0917556
20
21 Version number : 1.8
22
23 Date and time : 02/22/01 11:54:48
24
25 Previous delta : 01/22/01 10:32:42
26
27 SCCS file : /db/gsm_asp/db_ht96/dsp_0/gsw/rel_0/mcu_l1/release_gprs/RELEASE_GPRS/drivers1/common/SCCS/s.leadapi.h
28
29 Sccs Id (SID) : '@(#) leadapi.h 1.8 02/22/01 11:54:48 '
30
31
32 *****************************************************************************/
33
34 #undef NULL // appease gcc
35 #define NULL 0
36
37 #define APIF_ADDR 0xFFD00000L
38 #define BASE_API_ARM APIF_ADDR /* API RAM for ARM */
39 #if (CHIPSET == 4)
40 #define BASE_API_LEAD 0xE800 /* API RAM for Lead */
41 #elif (CHIPSET == 7) || (CHIPSET == 8) || (CHIPSET == 10) || (CHIPSET == 11) || (CHIPSET == 12)
42 #define BASE_API_LEAD 0xE000 /* API RAM for Lead */
43 #else
44 #define BASE_API_LEAD 0xF800 /* API RAM for Lead */
45 #endif
46
47 #define DOWNLOAD_EXT_PAGE (APIF_ADDR + 0x0FF8) /* Address of the extended DSP page of the */
48 #define DOWNLOAD_SIZE (APIF_ADDR + 0x0FFA) /* Address of the download size variable */
49 #define DOWNLOAD_ADDR (APIF_ADDR + 0x0FFC) /* Address of the download address variable */
50 #define DOWNLOAD_STATUS (APIF_ADDR + 0x0FFE) /* Address of the download status variable */
51
52 /* Maximum size of a block which can be copied into the API RAM */
53
54 #define MAX_BLOCK_SIZE 0x7F0
55 #define MAX_UINT 65535
56
57 /* Possible values for the download status */
58
59 #define LEAD_READY 1
60 #define BLOCK_READY 2
61 #define PROGRAM_DONE 3
62 #define PAGE_SELECTION 4
63
64
65 // Constants for timeout
66 #define LA_TIMEOUT 10000
67 #define LA_SUCCESS 0
68 #define LA_ERR_TIMEOUT 1
69
70 // Constants for error
71 #define LA_BAD_EXT_VALUE 2
72 #define LA_BAD_VERSION 3
73 #define LA_BAD_TAG 4
74
75 // Prototypes
76 void LA_InitialLeadBoot16(const unsigned char bootCode[]);
77 void LA_InitialLeadBoot(const unsigned char bootCode[]);
78 short LA_LoadPage16(const unsigned char code[], SYS_UWORD16 page, SYS_UWORD16 start);
79 short LA_LoadPage(const unsigned char code[], SYS_UWORD16 page, SYS_UWORD16 start);
80 void LA_ResetLead(void);
81 void LA_StartLead(SYS_UWORD16 pll);
82
83 extern const unsigned char bootCode[];
84
85 /*
86 * Global variables
87 */
88 #ifdef LEADAPI_C
89 #define LA_GLOBAL
90 #else
91 #define LA_GLOBAL extern
92 #endif
93
94 LA_GLOBAL volatile unsigned leadInt;