1 //--------------------------------------------------------
\r
4 // Melfas MMS100 Series Download base v1.0 2010.04.05
\r
7 //--------------------------------------------------------
\r
10 #ifndef __MELFAS_FIRMWARE_DOWNLOAD_H__
\r
11 #define __MELFAS_FIRMWARE_DOWNLOAD_H__
\r
15 //=====================================================================
\r
17 // MELFAS Firmware download pharameters
\r
19 //=====================================================================
\r
21 #define MELFAS_TRANSFER_LENGTH (32/8) // Fixed value
\r
22 #define MELFAS_FIRMWARE_MAX_SIZE (32*1024)
\r
24 #define MELFAS_2CHIP_DOWNLOAD_ENABLE 0 // 0 : 1Chip Download, 1: 2Chip Download
\r
26 //----------------------------------------------------
\r
28 //----------------------------------------------------
\r
29 #define ISP_MODE_ERASE_FLASH 0x01
\r
30 #define ISP_MODE_SERIAL_WRITE 0x02
\r
31 #define ISP_MODE_SERIAL_READ 0x03
\r
32 #define ISP_MODE_NEXT_CHIP_BYPASS 0x04
\r
35 //----------------------------------------------------
\r
36 // Return values of download function
\r
37 //----------------------------------------------------
\r
38 #define MCSDL_RET_SUCCESS 0x00
\r
39 #define MCSDL_RET_ERASE_FLASH_VERIFY_FAILED 0x01
\r
40 #define MCSDL_RET_PROGRAM_VERIFY_FAILED 0x02
\r
42 #define MCSDL_RET_PROGRAM_SIZE_IS_WRONG 0x10
\r
43 #define MCSDL_RET_VERIFY_SIZE_IS_WRONG 0x11
\r
44 #define MCSDL_RET_WRONG_BINARY 0x12
\r
46 #define MCSDL_RET_READING_HEXFILE_FAILED 0x21
\r
47 #define MCSDL_RET_FILE_ACCESS_FAILED 0x22
\r
48 #define MCSDL_RET_MELLOC_FAILED 0x23
\r
50 #define MCSDL_RET_WRONG_MODULE_REVISION 0x30
\r
53 //----------------------------------------------------
\r
54 // When you can't control VDD nor CE.
\r
56 // Then Melfas Chip can prepare chip reset.
\r
57 //----------------------------------------------------
\r
59 #define MELFAS_USE_PROTOCOL_COMMAND_FOR_DOWNLOAD 0 // If 'enable download command' i s needed ( Pinmap dependent option ).
\r
61 //============================================================
\r
63 // Port setting. ( Melfas preset this value. )
\r
65 //============================================================
\r
67 // If want to set Enable : Set to 1
\r
69 #define MCSDL_USE_CE_CONTROL 1
\r
70 #define MCSDL_USE_VDD_CONTROL 1
\r
71 #define MCSDL_USE_RESETB_CONTROL 1
\r
73 void mcsdl_vdd_on(void);
\r
74 void mcsdl_vdd_off(void);
\r
77 #define GPIO_TOUCH_INT 19
\r
78 #define GPIO_I2C0_SCL 30
\r
79 #define GPIO_I2C0_SDA 29
\r
82 /* Touch Screen Interface Specification Multi Touch (V0.5) */
\r
85 #define MCSTS_STATUS_REG 0x00 //Status
\r
86 #define MCSTS_MODE_CONTROL_REG 0x01 //Mode Control
\r
87 #define MCSTS_RESOL_HIGH_REG 0x02 //Resolution(High Byte)
\r
88 #define MCSTS_RESOL_X_LOW_REG 0x08 //Resolution(X Low Byte)
\r
89 #define MCSTS_RESOL_Y_LOW_REG 0x0a //Resolution(Y Low Byte)
\r
90 #define MCSTS_INPUT_INFO_REG 0x10 //Input Information
\r
91 #define MCSTS_POINT_HIGH_REG 0x11 //Point(High Byte)
\r
92 #define MCSTS_POINT_X_LOW_REG 0x12 //Point(X Low Byte)
\r
93 #define MCSTS_POINT_Y_LOW_REG 0x13 //Point(Y Low Byte)
\r
94 #define MCSTS_STRENGTH_REG 0x14 //Strength
\r
95 #define MCSTS_MODULE_VER_REG 0x30 //H/W Module Revision
\r
96 #define MCSTS_FIRMWARE_VER_REG 0x31 //F/W Version
\r
100 //============================================================
\r
102 // Porting factors for Baseband
\r
104 //============================================================
\r
106 #include "mcs8000_download_porting.h"
\r
109 //----------------------------------------------------
\r
111 //----------------------------------------------------
\r
113 int mcsdl_download_binary_data(void); // with binary type .c file.
\r
114 int mcsdl_download_binary_file(void); // with binary type .bin file.
\r
116 #if MELFAS_ENABLE_DELAY_TEST // For initial porting test.
\r
117 void mcsdl_delay_test(INT32 nCount);
\r
121 #endif //#ifndef __MELFAS_FIRMWARE_DOWNLOAD_H__
\r