1 /**************************************************************************** 2 **+-----------------------------------------------------------------------+** 3 **| |** 4 **| Copyright(c) 1998 - 2008 Texas Instruments. All rights reserved. |** 5 **| All rights reserved. |** 6 **| |** 7 **| Redistribution and use in source and binary forms, with or without |** 8 **| modification, are permitted provided that the following conditions |** 9 **| are met: |** 10 **| |** 11 **| * Redistributions of source code must retain the above copyright |** 12 **| notice, this list of conditions and the following disclaimer. |** 13 **| * Redistributions in binary form must reproduce the above copyright |** 14 **| notice, this list of conditions and the following disclaimer in |** 15 **| the documentation and/or other materials provided with the |** 16 **| distribution. |** 17 **| * Neither the name Texas Instruments nor the names of its |** 18 **| contributors may be used to endorse or promote products derived |** 19 **| from this software without specific prior written permission. |** 20 **| |** 21 **| THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |** 22 **| "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |** 23 **| LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |** 24 **| A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |** 25 **| OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |** 26 **| SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |** 27 **| LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |** 28 **| DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |** 29 **| THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |** 30 **| (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |** 31 **| OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |** 32 **| |** 33 **+-----------------------------------------------------------------------+** 34 ****************************************************************************/ 35 36 /***************************************************************************/ 37 /* */ 38 /* MODULE: HwInit.h */ 39 /* PURPOSE: HwInit module Header file */ 40 /* */ 41 /***************************************************************************/ 42 #ifndef _HW_INIT_H_ 43 #define _HW_INIT_H_ 44 45 #include "osTIType.h" 46 47 48 /* State-Machine States */ 49 typedef enum 50 { 51 HW_INIT_STATE_IDLE, /* */ 52 HW_INIT_STATE_WAIT_BUS, /* */ 53 HW_INIT_STATE_DL_FW_CMPLT /* */ 54 } hwInitSmState_e; 55 56 /* Callback function definition for EndOfRecovery */ 57 typedef void (* EndOfHwInitCB_t)(TI_HANDLE CBObj); 58 59 /* The module object. */ 60 typedef struct 61 { 62 /* Handles */ 63 TI_HANDLE hOs; 64 TI_HANDLE hReport; 65 TI_HANDLE hRecoveryCtrl; 66 TI_HANDLE hWhalBus; 67 TI_HANDLE hHwCtrl; 68 TI_HANDLE hTNETWIF; 69 TI_HANDLE hBusTxn; 70 71 EndOfHwInitCB_t endOfHwInitCB; 72 BOOL recoveryProcess; 73 74 hwInitSmState_e smState; /* The current state of the SM. */ 75 76 PUINT8 FwBuf; /* Firmware Image ptr */ 77 UINT32 FwLastAddr; /* Firmware Image length */ 78 PUINT8 EEPROMBuf; /* EEPROM Image ptr */ 79 UINT32 EEPROMLen; /* EEPROM Image length */ 80 81 82 } hwInit_t; 83 84 85 #endif /* _HW_INIT_H_ */ 86