blob: b50b4a6d94a4b77cb2b094d2d218105b7febce6e [file] [log] [blame]
rjw6c1fd8f2022-11-30 14:33:01 +08001/*****************************************************************************
2* Copyright Statement:
3* --------------------
4* This software is protected by Copyright and the information contained
5* herein is confidential. The software may not be copied and the information
6* contained herein may not be used or disclosed except with the written
7* permission of MediaTek Inc. (C) 2005
8*
9* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
10* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
11* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
12* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
13* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
14* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
15* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
16* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
17* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
18* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
19* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
20* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
21*
22* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
23* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
24* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
25* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
26* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
27*
28* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
29* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
30* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
31* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
32* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
33*
34*****************************************************************************/
35
36/*****************************************************************************
37 *
38 * Filename:
39 * ---------
40 * feature_def.h
41 *
42 * Project:
43 * --------
44 * MAUI
45 *
46 * Description:
47 * ------------
48 * Feature combination definition
49 *
50 * Author:
51 * -------
52 * -------
53 *
54 *============================================================================
55 * HISTORY
56 * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
57 *------------------------------------------------------------------------------
58 * removed!
59 * removed!
60 * removed!
61 *
62 * removed!
63 * removed!
64 *
65 * removed!
66 * removed!
67 * removed!
68 *
69 * removed!
70 * removed!
71 * removed!
72 * removed!
73 * removed!
74 * removed!
75 *
76 * removed!
77 * removed!
78 *
79 * removed!
80 * removed!
81 * removed!
82 *
83 * removed!
84 * removed!
85 * removed!
86 *
87 * removed!
88 * removed!
89 * removed!
90 *
91 * removed!
92 * removed!
93 * removed!
94 *
95 * removed!
96 * removed!
97 * removed!
98 *
99 * removed!
100 * removed!
101 * removed!
102 *
103 * removed!
104 * removed!
105 * removed!
106 *
107 * removed!
108 * removed!
109 * removed!
110 * removed!
111 *
112 * removed!
113 * removed!
114 * removed!
115 *
116 * removed!
117 * removed!
118 * removed!
119 *
120 * removed!
121 * removed!
122 * removed!
123 *
124 * removed!
125 * removed!
126 * removed!
127 *
128 *------------------------------------------------------------------------------
129 * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
130 *============================================================================
131 ****************************************************************************/
132
133#ifndef _FEATURE_DEF_H_
134#define _FEATURE_DEF_H_
135
136/* Features that will be referred by bootloader and FlashTool */
137#define MAUI_FC_NONE 0x0000
138#define MAUI_FC_SECURE 0x0001
139#define MAUI_FC_FOTA 0x0002
140#define MAUI_FC_NOR_FLASH_BOOTING 0x0004
141#define MAUI_FC_USBDL 0x0008
142#define MAUI_FC_SW_ROOT_KEY_IN_BL 0x0010
143#define MAUI_FC_MBA 0x0020
144#define MAUI_FC_SYSDRV_ON_NAND 0x0040
145#define MAUI_FC_SECURE_RO 0x0080
146#define MAUI_FC_USBDL_IN_BOOTROM 0x0100
147#define MAUI_FC_EXT_BL_UPDATE 0x0200
148#define MAUI_FC_SPLIT_BIN_SUPPORT 0x0400
149#define MAUI_FC_FAST_LOGO 0x0800
150#define MAUI_FC_DUAL_IMAGE 0x01000000 // bit[31:24] for MT6290
151
152//Define feature combination flag
153#ifdef __MTK_SECURE_PLATFORM__
154#define SECURE_SWITCH MAUI_FC_SECURE
155#else
156#define SECURE_SWITCH 0
157#endif
158
159#ifdef __FOTA_DM__
160#define FOTA_SWITCH MAUI_FC_FOTA
161#else
162#define FOTA_SWITCH 0
163#endif
164
165#ifdef __NOR_FLASH_BOOTING__
166#define NOR_FLASH_BOOTING_SWITCH MAUI_FC_NOR_FLASH_BOOTING
167#else
168#define NOR_FLASH_BOOTING_SWITCH 0
169#endif
170
171#if defined(__USB_DOWNLOAD__) || defined(__UART_DOWNLOAD__)
172#define USBDL_SWITCH MAUI_FC_USBDL
173#else
174#define USBDL_SWITCH 0
175#endif
176
177#ifdef __MULTIPLE_BINARY_FILES__
178#define MBA_SWITCH MAUI_FC_MBA
179#else
180#define MBA_SWITCH 0
181#endif
182
183#if defined(__BIND_TO_CHIP__) || defined(__BIND_TO_KEY__)
184#define SW_ROOT_KEY_IN_BL_SWITCH MAUI_FC_SW_ROOT_KEY_IN_BL
185#else
186#define SW_ROOT_KEY_IN_BL_SWITCH 0
187#endif
188
189#if defined (__FS_SYSDRV_ON_NAND__) && !defined (_NAND_FLASH_BOOTING_)
190#define SYSDRV_ON_NAND_SWITCH MAUI_FC_SYSDRV_ON_NAND
191#else
192#define SYSDRV_ON_NAND_SWITCH 0
193#endif
194
195#define SECURE_RO_ENABLE_SWITCH 0
196
197
198#ifdef __USBDL_IN_BOOTROM__
199#define USBDL_IN_BOOTROM_SWITCH MAUI_FC_USBDL_IN_BOOTROM
200#else
201#define USBDL_IN_BOOTROM_SWITCH 0
202#endif
203
204#ifdef __EXT_BL_UPDATE__
205#define EXT_BL_UPDATE_SWITCH MAUI_FC_EXT_BL_UPDATE
206#else
207#define EXT_BL_UPDATE_SWITCH 0
208#endif
209
210#ifdef __SPLIT_BINARY__
211#define SPLIT_BIN_SUPPORT_SWITCH MAUI_FC_SPLIT_BIN_SUPPORT
212#else
213#define SPLIT_BIN_SUPPORT_SWITCH 0
214#endif
215
216#ifdef __FAST_LOGO__
217#define FAST_LOGO_SWITCH MAUI_FC_FAST_LOGO
218#else
219#define FAST_LOGO_SWITCH 0
220#endif
221
222#define DUAL_IMAGE_SWITCH 0
223
224
225
226#define FEATURE_COMBINATION (SECURE_SWITCH | FOTA_SWITCH | NOR_FLASH_BOOTING_SWITCH | USBDL_SWITCH | SW_ROOT_KEY_IN_BL_SWITCH | MBA_SWITCH | SYSDRV_ON_NAND_SWITCH | SECURE_RO_ENABLE_SWITCH | USBDL_IN_BOOTROM_SWITCH | EXT_BL_UPDATE_SWITCH | SPLIT_BIN_SUPPORT_SWITCH | FAST_LOGO_SWITCH | DUAL_IMAGE_SWITCH)
227#define FEATURE_COMBINATINO_EX (0)
228
229
230#define MIN_FLASHTOOL_VER_REQURIEMENT (0x00000003)
231
232#endif /* _FEATURE_DEF_H_ */
233