C MIP-SDK
mip_sdk_base.h
Go to the documentation of this file.
00001 
00002 //
00006 //
00008 //
00009 // External dependencies:
00010 //
00011 //  
00012 // 
00014 //
00017 //
00027 //
00029 
00030 #ifndef _MIP_BASE_DESC_H
00031 #define _MIP_BASE_DESC_H
00032 
00033 
00035 //
00036 //Include Files
00037 //
00039 
00040 #include "mip.h"
00041 #include "mip_sdk_interface.h"
00042 
00044 //
00045 // Defines
00046 //
00049 
00050 
00052 //
00053 // Descriptor Set designator - used in the Desc Set field of the MIP header
00054 //
00056 
00057 #define MIP_BASE_COMMAND_DESC_SET                                               0x01
00058 
00060 // BASE COMMAND DESCRIPTORS (command desc are < 0x80)
00062 
00063 #define MIP_CMD_DESC_BASE_PING                                          0x01     
00064 #define MIP_CMD_DESC_BASE_SET_TO_IDLE                                   0x02     
00065 #define MIP_CMD_DESC_BASE_GET_DEVICE_INFO               0x03     
00066 #define MIP_CMD_DESC_BASE_GET_DEVICE_DESCRIPTORS        0x04     
00067 #define MIP_CMD_DESC_BASE_BUILT_IN_TEST                 0x05    
00068 #define MIP_CMD_DESC_BASE_RESUME                                        0x06
00069 
00070 #define MIP_CMD_DESC_BASE_GPS_TIME_BROADCAST            0x71
00071 #define MIP_CMD_DESC_BASE_FIRMWARE_UPDATE               0x7D     
00072 #define MIP_CMD_DESC_BASE_SOFT_RESET                    0x7E     
00073 #define MIP_CMD_DESC_BASE_PRODUCTION_TEST               0x7F     
00074 
00076 // BASE REPLY DESCRIPTORS (reply desc are >= 0x80)
00078 
00079 #define MIP_REPLY_DESC_BASE_DEVICE_INFO                                 0x81    
00080 #define MIP_REPLY_DESC_BASE_DEVICE_DESCRIPTORS                  0x82    
00081 #define MIP_REPLY_DESC_BASE_BUILT_IN_TEST                       0x83    
00082 
00083 
00085 // COMMAND SECURITY VALUES
00087 
00088 #define MIP_CMD_FIRMWARE_UPDATE_SECURITY_VAL            0x374EA822
00089 #define MIP_CMD_PRODUCTION_TEST_SECURITY_VAL            0xD3C4A133
00090 
00091 
00092 
00093 
00095 //
00096 // Structures
00097 //
00099 
00100 #pragma pack(1)
00101 
00102 #define BASE_DEVICE_INFO_PARAM_LENGTH 8  // 8 x 16 bits (16 characters)
00103 
00105 // Device Information
00107 
00108 typedef struct _base_device_info_field
00109 {
00110  u16 firmware_version;
00111  u16 model_name[BASE_DEVICE_INFO_PARAM_LENGTH];
00112  u16 model_number[BASE_DEVICE_INFO_PARAM_LENGTH];
00113  u16 serial_number[BASE_DEVICE_INFO_PARAM_LENGTH];
00114  u16 lotnumber[BASE_DEVICE_INFO_PARAM_LENGTH];
00115  u16 device_options[BASE_DEVICE_INFO_PARAM_LENGTH];
00116 }base_device_info_field;
00117 
00118 #pragma pack()
00119 
00120 
00122 //
00123 // Function Prototypes
00124 //
00126 
00127 
00128 u16 mip_base_cmd_ping(mip_interface *device_interface);
00129 u16 mip_base_cmd_idle(mip_interface *device_interface);
00130 u16 mip_base_cmd_get_device_info(mip_interface *device_interface, base_device_info_field *device_info);
00131 u16 mip_base_cmd_get_device_supported_descriptors(mip_interface *device_interface, u8 *response_buffer, u16 *response_size);
00132 u16 mip_base_cmd_built_in_test(mip_interface *device_interface, u32 *bit_result);
00133 u16 mip_base_cmd_resume(mip_interface *device_interface);
00134 u16 mip_base_cmd_reset_device(mip_interface *device_interface);
00135 
00136 
00137 #endif
 All Data Structures Files Functions Defines