tizen 2.4 release
[profile/mobile/platform/kernel/u-boot-tm1.git] / include / configs / sp7730ga.h
1 /*
2  * (C) Copyright 2009 DENX Software Engineering
3  * Author: John Rigby <jrigby@gmail.com>
4  *
5  * This program is free software; you can redistribute it and/or
6  * modify it under the terms of the GNU General Public License as
7  * published by the Free Software Foundation; either version 2 of
8  * the License, or (at your option) any later version.
9  *
10  * This program is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13  * GNU General Public License for more details.
14  *
15  * You should have received a copy of the GNU General Public License
16  * along with this program; if not, write to the Free Software
17  * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
18  * MA 02111-1307 USA
19  */
20
21 #ifndef __CONFIG_H
22 #define __CONFIG_H
23 //only used in fdl2 .in uart download, the debug infors  from  serial will break the download process.
24 #define CONFIG_FDL2_PRINT        0
25 #define BOOT_NATIVE_LINUX        1
26 #define BOOT_NATIVE_LINUX_MODEM  1
27 //#define CALIBRATION_FLAG         0x897FFC00
28 //#define       CALIBRATION_FLAG_WCDMA   0x93FFEC00
29 #define CONFIG_SILENT_CONSOLE
30 #define CONFIG_GPIOLIB 1
31 //#define NAND_DEBUG  
32 //#define DEBUG
33 #define U_BOOT_SPRD_VER 1
34 /*#define SPRD_EVM_TAG_ON 1*/
35 #ifdef SPRD_EVM_TAG_ON
36 #define SPRD_EVM_ADDR_START 0x00026000
37 #define SPRD_EVM_TAG(_x) (*(((unsigned long *)SPRD_EVM_ADDR_START)+_x) = *(volatile unsigned long *)0x87003004)
38 #endif
39 #define CONFIG_L2_OFF                   1
40
41 #define BOOT_DEBUG 1
42
43 #define BOOT_PART "boot"
44 //#define BOOT_PART "kernel"
45 #define RECOVERY_PART "recovery"
46 #define UBIPAC_PART  "ubipac"
47
48 /*
49  * SPREADTRUM BIGPHONE board - SoC Configuration
50  */
51 #define CONFIG_SP8830
52 #define CONFIG_SC8830
53
54 #define CONFIG_SP7730GA
55 #define CONFIG_SP8830WCN
56
57
58 #define CONFIG_SUPPORT_W
59 #define WDSP_ADR        0x90020000
60 #define WFIXNV_ADR      0x90240000
61 #define WRUNTIMENV_ADR  0x90280000
62 #define WMODEM_ADR      0x90300000
63 #define CONFIG_SUPPORT_WIFI
64 #define WCNMODEM_ADR      0x94060000
65 #define WCNFIXNV_ADR      0x94000000
66 #define WCNRUNTIMENV_ADR  0x94020000
67 #define CONFIG_AUTODLOADER
68
69 #define CHIP_ENDIAN_LITTLE
70 #define _LITTLE_ENDIAN 1
71
72 #define CONFIG_RAM512M
73
74 /*
75 #define CONFIG_EMMC_BOOT
76 */
77
78 #ifdef  CONFIG_EMMC_BOOT
79 #define EMMC_SECTOR_SIZE 512
80 #define CONFIG_MMC
81
82 #define CONFIG_FS_EXT4
83 #define CONFIG_EXT4_WRITE
84 #define CONFIG_CMD_EXT4
85 #define CONFIG_CMD_EXT4_WRITE
86
87 //#define CONFIG_TIGER_MMC
88 #define CONFIG_UEFI_PARTITION
89 #define CONFIG_EFI_PARTITION
90 #define CONFIG_EXT4_SPARSE_DOWNLOAD
91 //#define CONFIG_EMMC_SPL
92 #define CONFIG_SYS_EMMC_U_BOOT_SECTOR_NUM ((CONFIG_SYS_NAND_U_BOOT_SIZE+EMMC_SECTOR_SIZE-1)/EMMC_SECTOR_SIZE)
93
94 #endif
95
96 /*
97  * MMC definition
98  */
99 #define CONFIG_CMD_MMC
100 #ifdef  CONFIG_CMD_MMC
101 #define CONFIG_CMD_FAT                  1
102 #define CONFIG_FAT_WRITE                1
103 #define CONFIG_MMC                      1
104 #define CONFIG_GENERIC_MMC              1
105 #define CONFIG_SDHCI                    1
106 #define CONFIG_SDHCI_CTRL_NO_HISPD     1 /* disable high speed control */
107 #define CONFIG_SYS_MMC_MAX_BLK_COUNT    0x1000
108 #define CONFIG_MMC_SDMA                 1
109 #define CONFIG_MV_SDHCI                 1
110 #define CONFIG_DOS_PARTITION            1
111 #define CONFIG_EFI_PARTITION            1
112 #define CONFIG_SYS_MMC_NUM              1
113 #define CONFIG_SYS_MMC_BASE             {0x20600000}
114 #define CONFIG_SYS_SD_BASE              0x20300000
115 #endif
116
117 #define BB_DRAM_TYPE_256MB_32BIT
118
119 #define CONFIG_SYS_HZ                   1000
120 #define CONFIG_SPRD_TIMER_CLK           1000 /*32768*/
121
122 //#define CONFIG_SYS_HUSH_PARSER
123
124 #ifdef CONFIG_SYS_HUSH_PARSER
125 #define CONFIG_SYS_PROMPT_HUSH_PS2 "> "
126 #endif
127
128 #define FIXNV_SIZE              (2*128 * 1024)
129 #define WMODEM_SIZE             (0x800000)
130 #define WDSP_SIZE               (0x200000)
131 #define WCNMODEM_SIZE           (0x100000)
132 #define VMJALUNA_SIZE           (0x64000) /* 400K */
133 #define RUNTIMENV_SIZE          (3*128 * 1024)
134 #define CONFIG_SPL_LOAD_LEN     (0x6000)
135
136
137 /*#define CMDLINE_NEED_CONV */
138
139 #define WATCHDOG_LOAD_VALUE     0x4000
140 #define CONFIG_SYS_STACK_SIZE   0x400
141 //#define CONFIG_SYS_TEXT_BASZE  0x80f00000
142
143 //#define       CONFIG_SYS_MONITOR_LEN          (256 << 10)     /* 256 kB for U-Boot */
144
145 /* NAND BOOT is the only boot method */
146 #define CONFIG_NAND_U_BOOT
147 #define DYNAMIC_CRC_TABLE
148 /* Start copying real U-boot from the second page */
149 #define CONFIG_SYS_NAND_U_BOOT_OFFS     0x40000
150 #define CONFIG_SYS_NAND_U_BOOT_SIZE     0x8A000
151 #define RAM_TYPPE_IS_SDRAM      0
152 //#define FPGA_TRACE_DOWNLOAD //for download image from trace
153
154 /* Load U-Boot to this address */
155 #define CONFIG_SYS_NAND_U_BOOT_DST      0x8f800000
156 #define CONFIG_SYS_NAND_U_BOOT_START    CONFIG_SYS_NAND_U_BOOT_DST
157 #define CONFIG_SYS_SDRAM_BASE 0x80000000
158 #define CONFIG_SYS_SDRAM_END (CONFIG_SYS_SDRAM_BASE + 256*1024*1024)
159
160 #ifdef CONFIG_NAND_SPL
161 #define CONFIG_SYS_INIT_SP_ADDR         (CONFIG_SYS_SDRAM_END - 0x40000)
162 #else
163
164 #define CONFIG_MMU_TABLE_ADDR (0x00020000)
165 #define CONFIG_SYS_INIT_SP_ADDR     \
166         (CONFIG_SYS_SDRAM_END - 0x10000 - GENERATED_GBL_DATA_SIZE)
167
168 #define CONFIG_SKIP_LOWLEVEL_INIT
169 #endif
170
171 #define CONFIG_HW_WATCHDOG
172 //#define CONFIG_AUTOBOOT //used for FPGA test, auto boot other image
173 //#define CONFIG_DISPLAY_CPUINFO
174
175 #define CONFIG_CMDLINE_TAG              1       /* enable passing of ATAGs */
176 #define CONFIG_SETUP_MEMORY_TAGS        1
177 #define CONFIG_INITRD_TAG               1
178
179 /*
180  * Memory Info
181  */
182 /* malloc() len */
183 #define CONFIG_SYS_MALLOC_LEN           (2 << 20)       /* 1 MiB */
184 /*
185  * Board has 2 32MB banks of DRAM but there is a bug when using
186  * both so only the first is configured
187  */
188 #define CONFIG_NR_DRAM_BANKS    1
189
190 #define PHYS_SDRAM_1            0x80000000
191 #define PHYS_SDRAM_1_SIZE       0x10000000
192 #if (CONFIG_NR_DRAM_BANKS == 2)
193 #define PHYS_SDRAM_2            0x90000000
194 #define PHYS_SDRAM_2_SIZE       0x10000000
195 #endif
196 /* 8MB DRAM test */
197 #define CONFIG_SYS_MEMTEST_START        PHYS_SDRAM_1
198 #define CONFIG_SYS_MEMTEST_END          (PHYS_SDRAM_1+0x0800000)
199 #define CONFIG_STACKSIZE        (256 * 1024)    /* regular stack */
200
201 /*
202  * Serial Info
203  */
204 #define CONFIG_SPRD_UART                1
205 #define CONFIG_SYS_SC8800X_UART1        1
206 #define CONFIG_CONS_INDEX       1       /* use UART0 for console */
207 #define CONFIG_BAUDRATE         115200  /* Default baud rate */
208 #define CONFIG_SYS_BAUDRATE_TABLE       { 9600, 19200, 38400, 57600, 115200 }
209 #define CONFIG_SPRD_SPI
210 #define CONFIG_SPRD_I2C
211 #define CONFIG_SC8830_I2C
212 /*
213  * Flash & Environment
214  */
215 /* No NOR flash present */
216 #define CONFIG_SYS_MONITOR_LEN ((CONFIG_SYS_NAND_U_BOOT_OFFS)+(CONFIG_SYS_NAND_U_BOOT_SIZE))
217 #define CONFIG_SYS_NO_FLASH     1
218 #define CONFIG_ENV_IS_NOWHERE
219 #define CONFIG_ENV_SIZE         (128 * 1024)    
220 /*
221 #define CONFIG_ENV_IS_IN_NAND
222 #define CONFIG_ENV_OFFSET       CONFIG_SYS_MONITOR_LEN
223 #define CONFIG_ENV_OFFSET_REDUND        (CONFIG_ENV_OFFSET + CONFIG_ENV_SIZE)
224 */
225
226 /* DDR */
227 #define DDR_CLK 464
228 //---these three macro below,only one can be open
229 //#define DDR_LPDDR1
230 #define DDR_LPDDR2
231 //#define DDR_DDR3
232
233 //#define DDR_AUTO_DETECT
234 #define DDR_TYPE DRAM_LPDDR2_1CS_4G_X32
235 //#define DDR_TYPE DRAM_LPDDR2_1CS_8G_X32
236 //#define DDR_TYPE DRAM_LPDDR2_2CS_8G_X32
237 //#define DDR_TYPE DRAM_LPDDR2_2CS_16G_X32
238 //#define DDR_TYPE DRAM_DDR3_1CS_2G_X8_4P
239 //#define DDR_TYPE DRAM_DDR3_1CS_4G_X16_2P
240
241 #define DDR3_DLL_ON TRUE
242 //#define DLL_BYPASS
243 #define DDR_APB_CLK 128
244 #define DDR_DFS_SUPPORT
245 #define DDR_DFS_VAL_BASE 0X1c00
246
247 //#define DDR_SCAN_SUPPORT
248 #define MEM_IO_DS LPDDR2_DS_40R
249
250 #define PUBL_LPDDR1_DS PUBL_LPDDR1_DS_48OHM
251 #define PUBL_LPDDR2_DS PUBL_LPDDR2_DS_40OHM
252 #define PUBL_DDR3_DS   PUBL_DDR3_DS_34OHM
253
254
255
256 /* NAND */
257 #define CONFIG_NAND_SC8830
258 #define CONFIG_SPRD_NAND_REGS_BASE      (0x20B00000)
259 #define CONFIG_SYS_MAX_NAND_DEVICE      1
260 #define CONFIG_SYS_NAND_BASE            (0x20B00000)
261 //#define CONFIG_JFFS2_NAND
262 //#define CONFIG_SPRD_NAND_HWECC
263 #define CONFIG_SYS_NAND_HW_ECC
264 #define CONFIG_SYS_NAND_LARGEPAGE
265 //#define CONFIG_SYS_NAND_5_ADDR_CYCLE
266
267 #define CONFIG_SYS_64BIT_VSPRINTF
268
269 #define CONFIG_CMD_MTDPARTS
270 #define CONFIG_MTD_PARTITIONS
271 #define CONFIG_MTD_DEVICE
272 #define CONFIG_CMD_UBI
273 #define CONFIG_RBTREE
274
275 #define CONFIG_CMD_UBIFS
276 #define CONFIG_LZO
277 #ifdef CONFIG_CMD_UBIFS
278 #define CONFIG_FS_UBIFS
279 #endif
280
281 /* U-Boot general configuration */
282 #define CONFIG_SYS_PROMPT       "=> "   /* Monitor Command Prompt */
283 #define CONFIG_SYS_CBSIZE       1024    /* Console I/O Buffer Size  */
284 /* Print buffer sz */
285 #define CONFIG_SYS_PBSIZE       (CONFIG_SYS_CBSIZE + \
286                 sizeof(CONFIG_SYS_PROMPT) + 16)
287 #define CONFIG_SYS_MAXARGS      32      /* max number of command args */
288 /* Boot Argument Buffer Size */
289 #define CONFIG_SYS_BARGSIZE     CONFIG_SYS_CBSIZE
290 #define CONFIG_CMDLINE_EDITING
291 #define CONFIG_SYS_LONGHELP
292
293 /* support OS choose */
294 #undef CONFIG_BOOTM_NETBSD 
295 #undef CONFIG_BOOTM_RTEMS
296
297 /* U-Boot commands */
298 #include <config_cmd_default.h>
299 #define CONFIG_CMD_NAND
300 #undef CONFIG_CMD_FPGA
301 #undef CONFIG_CMD_LOADS
302 #undef CONFIG_CMD_NET
303 #undef CONFIG_CMD_NFS
304 #undef CONFIG_CMD_SETGETDCR
305
306 #define CONFIG_ENV_OVERWRITE
307
308 #ifdef SPRD_EVM_TAG_ON
309 #define CONFIG_BOOTDELAY        0
310 #else
311 #define CONFIG_BOOTDELAY        0
312 #define CONFIG_ZERO_BOOTDELAY_CHECK
313 #endif
314
315 #define CONFIG_LOADADDR         (CONFIG_SYS_TEXT_BASE - CONFIG_SYS_MALLOC_LEN - 4*1024*1024)    /* loadaddr env var */
316 #define CONFIG_SYS_LOAD_ADDR    CONFIG_LOADADDR
317
318 #define xstr(s) str(s)
319 #define str(s)  #s
320
321 #ifdef CONFIG_RAM512M
322 #define MEM_INIT_PARA "mem=512M"
323 #elif defined(CONFIG_RAM256M)
324 #define MEM_INIT_PARA "mem=256M"
325 //#elif defined(CONFIG_RAMxxxM)
326 ////#define MEM_INIT_PARA "mem=xxxM" //xxx maybe 1024 etc
327 #else
328 #error "CONFIG_RAMxxxM macro must be defined"
329 #endif
330 #define MTDIDS_DEFAULT "nand0=sprd-nand"
331 //#define MTDPARTS_DEFAULT "mtdparts=sprd-nand:256k(spl),512k(2ndbl),256k(params),512k(vmjaluna),10m(modem),3840k(fixnv),3840k(backupfixnv),5120k(dsp),3840k(runtimenv),10m(boot),10m(recovery),250m(system),180m(userdata),20m(cache),256k(misc),1m(boot_logo),1m(fastboot_logo),3840k(productinfo),512k(kpanic)"
332 #define MTDPARTS_DEFAULT "mtdparts=sprd-nand:256k(spl),768k(2ndbl),512k(kpanic),-(ubipac)"
333 #define CONFIG_BOOTARGS MEM_INIT_PARA" loglevel=1 console=ttyS1,115200n8 init=/init " MTDPARTS_DEFAULT
334
335 #define COPY_LINUX_KERNEL_SIZE  (0x600000)
336 #define LINUX_INITRD_NAME       "modem"
337
338 #define CONFIG_BOOTCOMMAND "cboot normal"
339 #define CONFIG_EXTRA_ENV_SETTINGS                               ""      
340
341 #ifdef CONFIG_CMD_NET
342 #define CONFIG_IPADDR 192.168.10.2
343 #define CONFIG_SERVERIP 192.168.10.5
344 #define CONFIG_NETMASK 255.255.255.0
345 #define CONFIG_USBNET_DEVADDR 26:03:ee:00:87:9f
346 #define CONFIG_USBNET_HOSTADDR 9a:04:c7:d6:30:d0
347
348
349 #define CONFIG_NET_MULTI
350 #define CONFIG_CMD_DNS
351 #define CONFIG_CMD_NFS
352 #define CONFIG_CMD_RARP
353 #define CONFIG_CMD_PING
354 /*#define CONFIG_CMD_SNTP */
355 #endif
356
357 #define CONFIG_USB_CORE_IP_293A
358 #define CONFIG_USB_GADGET_SC8800G
359 #define CONFIG_USB_DWC
360 #define CONFIG_USB_GADGET_DUALSPEED
361 //#define CONFIG_USB_ETHER
362 #define CONFIG_CMD_FASTBOOT
363 #define SCRATCH_ADDR    (CONFIG_SYS_SDRAM_BASE + 0x100000)
364 #define FB_DOWNLOAD_BUF_SIZE           (CONFIG_SYS_NAND_U_BOOT_DST - SCRATCH_ADDR-0x800000)
365 #define SCRATCH_ADDR_EXT1              (CONFIG_SYS_NAND_U_BOOT_DST + 32*1024*1024)
366 #define FB_DOWNLOAD_BUF_EXT1_SIZE      (224*1024*1024)
367
368 #define CONFIG_MODEM_CALIBERATE
369
370 #define CONFIG_LCD
371 #ifdef  CONFIG_LCD
372 #define CONFIG_SPLASH_SCREEN
373 #define LCD_BPP LCD_COLOR16
374 //#define CONFIG_LCD_HVGA   1
375 //#define CONFIG_LCD_QVGA   1
376 #define CONFIG_LCD_QHD 1
377 //#define CONFIG_LCD_720P 1
378 //#define CONFIG_LCD_INFO
379 //#define LCD_TEST_PATTERN
380 //#define CONFIG_LCD_LOGO
381 //#define CONFIG_FB_LCD_S6D0139
382 #define CONFIG_FB_LCD_SSD2075_MIPI
383 #define CONFIG_FB_LCD_NT35516_MIPI
384 #define CONFIG_SYS_WHITE_ON_BLACK
385 #ifdef  LCD_TEST_PATTERN
386 #define CONSOLE_COLOR_RED 0xf800 
387 #define CONSOLE_COLOR_GREEN 0x07e0
388 #define CONSOLE_COLOR_YELLOW 0x07e0
389 #define CONSOLE_COLOR_BLUE 0x001f
390 #define CONSOLE_COLOR_MAGENTA 0x001f
391 #define CONSOLE_COLOR_CYAN 0x001f
392 #endif
393 #endif // CONFIG_LCD
394
395 #define CONFIG_SPRD_SYSDUMP
396 #include <asm/sizes.h>
397
398 #ifdef CONFIG_RAM512M
399 #define SPRD_SYSDUMP_MAGIC      ((PHYS_OFFSET_ADDR & (~(SZ_512M - 1))) + SZ_512M - SZ_1M)
400 #elif defined(CONFIG_RAM256M)
401 #define SPRD_SYSDUMP_MAGIC      ((PHYS_OFFSET_ADDR & (~(SZ_256M - 1))) + SZ_256M - SZ_1M)
402 //#elif defined(CONFIG_RAMxxxM)
403 //#define SPRD_SYSDUMP_MAGIC      ((PHYS_OFFSET_ADDR & (~(SZ_xxxM - 1))) + SZ_xxxM - SZ_1M) //xxx maybe 1024 etc
404 #else
405 #error "CONFIG_RAMxxxM macro must be defined"
406 #endif
407
408 #define CALIBRATE_ENUM_MS 3000
409 #define CALIBRATE_IO_MS 2000
410
411 //#define LOW_BAT_ADC_LEVEL 782 /*phone battery adc value low than this value will not boot up*/
412 #define LOW_BAT_VOL            3500 /*phone battery voltage low than this value will not boot up*/
413 #define LOW_BAT_VOL_CHG        3200    //3.3V charger connect
414
415 #define PWR_KEY_DETECT_CNT 12 /*this should match the count of boot_pwr_check() function */
416 #define ALARM_LEAD_SET_MS 0 /* time set for alarm boot in advancd */
417
418 #define PHYS_OFFSET_ADDR                        0x80000000
419 #define TD_CP_OFFSET_ADDR                       0x8000000       /*128*/
420 #define TD_CP_SDRAM_SIZE                        0x1200000       /*18M*/
421 #define WCDMA_CP_OFFSET_ADDR            0x10000000      /*256M*/
422 #define WCDMA_CP_SDRAM_SIZE             0x2100000       /*33M*/
423 #define WCN_CP_OFFSET_ADDR              0x14000000      /*320M*/
424 #define WCN_CP_SDRAM_SIZE               0x281000//0x500000      /*5M*/
425
426 #define SIPC_APCP_RESET_ADDR_SIZE       0xC00   /*3K*/
427 #define SIPC_APCP_RESET_SIZE    0x1000  /*4K*/
428 #define SIPC_TD_APCP_START_ADDR         (PHYS_OFFSET_ADDR + TD_CP_OFFSET_ADDR + TD_CP_SDRAM_SIZE - SIPC_APCP_RESET_SIZE)        /*0x897FF000*/
429 #define SIPC_WCDMA_APCP_START_ADDR      (PHYS_OFFSET_ADDR + WCDMA_CP_OFFSET_ADDR + WCDMA_CP_SDRAM_SIZE - SIPC_APCP_RESET_SIZE) /*0x93FFF000*/
430 #define SIPC_WCN_APCP_START_ADDR                (PHYS_OFFSET_ADDR + WCN_CP_OFFSET_ADDR + WCN_CP_SDRAM_SIZE - SIPC_APCP_RESET_SIZE) /*0x94EFF000*/
431
432 #define CONFIG_RAM_CONSOLE
433
434 #ifdef CONFIG_RAM_CONSOLE
435 #define CONFIG_RAM_CONSOLE_SIZE        0x80000
436 #define CONFIG_RAM_CONSOLE_START    (CONFIG_SYS_NAND_U_BOOT_START + 0x600000)
437 #endif
438 #define CALIBRATION_FLAG_WCDMA   (PHYS_OFFSET_ADDR + WCDMA_CP_OFFSET_ADDR + WCDMA_CP_SDRAM_SIZE - 0x400) /*the last 1K of modem memory area*/
439 #define CALIBRATION_FLAG         CALIBRATION_FLAG_WCDMA
440 //#define CALIBRATION_FLAG           0x89700000
441
442 #define CONFIG_CMD_SOUND 1
443 #define CONFIG_CMD_FOR_HTC 1
444 #define CONFIG_SOUND_CODEC_SPRD_V3 1
445 #define CONFIG_SOUND_DAI_VBC_R2P0 1
446 /* #define CONFIG_SPRD_AUDIO_DEBUG */
447
448 #define CONFIG_RAMDUMP_NO_SPLIT 1 /* Don't split sysdump file */
449 #define USB_PHY_TUNE_VALUE 0x44073e33
450
451 #endif /* __CONFIG_H */