2 * (C) Copyright 2009 DENX Software Engineering
\r
3 * Author: John Rigby <jrigby@gmail.com>
\r
5 * This program is free software; you can redistribute it and/or
\r
6 * modify it under the terms of the GNU General Public License as
\r
7 * published by the Free Software Foundation; either version 2 of
\r
8 * the License, or (at your option) any later version.
\r
10 * This program is distributed in the hope that it will be useful,
\r
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
\r
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
\r
13 * GNU General Public License for more details.
\r
15 * You should have received a copy of the GNU General Public License
\r
16 * along with this program; if not, write to the Free Software
\r
17 * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
\r
24 //#define CONFIG_OF_LIBFDT
\r
25 //#ifdef CONFIG_OF_LIBFDT
\r
26 //MACH_TYPE_SC8830=2014
\r
28 #define DT_PLATFROM_ID 8830
\r
29 #define DT_HARDWARE_ID 1
\r
30 #define DT_SOC_VER 0x20000
\r
32 //only used in fdl2 .in uart download, the debug infors from serial will break the download process.
\r
33 #define CONFIG_FDL2_PRINT 0
\r
34 #define BOOT_NATIVE_LINUX 1
\r
35 #define BOOT_NATIVE_LINUX_MODEM 1
\r
36 #define CALIBRATION_FLAG 0x897FFC00
\r
37 #define CALIBRATION_FLAG_WCDMA 0x93FFEC00
\r
38 #define CONFIG_SILENT_CONSOLE
\r
39 #define CONFIG_GPIOLIB 1
\r
40 //#define NAND_DEBUG
\r
42 #define CONFIG_SDRAMDISK
\r
43 #define U_BOOT_SPRD_VER 1
\r
44 /*#define SPRD_EVM_TAG_ON 1*/
\r
45 #ifdef SPRD_EVM_TAG_ON
\r
46 #define SPRD_EVM_ADDR_START 0x00026000
\r
47 #define SPRD_EVM_TAG(_x) (*(((unsigned long *)SPRD_EVM_ADDR_START)+_x) = *(volatile unsigned long *)0x87003004)
\r
49 #define CONFIG_L2_OFF 1
\r
51 #define BOOT_DEBUG 1
\r
53 #define CONFIG_YAFFS2 1
\r
55 #define BOOT_PART "boot"
\r
56 //#define BOOT_PART "kernel"
\r
57 #define RECOVERY_PART "recovery"
\r
59 * SPREADTRUM BIGPHONE board - SoC Configuration
\r
61 #define CONFIG_SP8830
\r
62 #define CONFIG_SC8830
\r
63 #define CONFIG_SC9620OPENPHONE
\r
64 #define CONFIG_SP8830WCN
\r
65 #define CONFIG_NOT_BOOT_W_MODEM
\r
66 #define CONFIG_NOT_BOOT_TD_MODEM
\r
68 #define WCNMODEM_SIZE (0x800000)
\r
70 //#define CONFIG_SUPPORT_TD
\r
71 #define TDDSP_ADR 0x88020000
\r
72 #define TDFIXNV_ADR 0x89060000
\r
73 #define TDRUNTIMENV_ADR 0x890a0000
\r
74 #define TDMODEM_ADR 0x88300000
\r
75 #define CONFIG_SUPPORT_WIFI
\r
76 #define WCNMODEM_ADR 0x94060000
\r
77 #define WCNFIXNV_ADR 0x94000000
\r
78 #define WCNRUNTIMENV_ADR 0x94020000
\r
79 #define CP0_CODE_COPY_ADR 0x50000000
\r
80 #define CP1_CODE_COPY_ADR 0x50001800
\r
81 #define CP2_CODE_COPY_ADR 0x50003000
\r
82 #define CP_SOFT_RST_ADR 0x402B00A8
\r
83 #define PD_CP0_SYS_CFG_ADR 0x402B003C
\r
84 #define PD_CP1_SYS_CFG_ADR 0x402B0050
\r
85 #define PD_CP2_SYS_CFG_ADR 0x402B0060
\r
86 #define PD_CP2_ARM9_CFG_ADR 0x402B0054
\r
87 #define PWR_STATUS1_DBG_ADR 0x402B00B8
\r
88 #define PWR_STATUS2_DBG_ADR 0x402B00BC
\r
89 #define PWR_STATUS3_DBG_ADR 0x402B00C0
\r
91 #define CONFIG_AUTODLOADER
\r
92 #define CONFIG_SIMLOCK_ENABLE
\r
94 #define CHIP_ENDIAN_LITTLE
\r
95 #define _LITTLE_ENDIAN 1
\r
97 #define CONFIG_RAM512M
\r
99 #define CONFIG_EMMC_BOOT
\r
101 #ifdef CONFIG_EMMC_BOOT
\r
102 #define EMMC_SECTOR_SIZE 512
\r
105 #define CONFIG_FS_EXT4
\r
106 #define CONFIG_EXT4_WRITE
\r
107 #define CONFIG_CMD_EXT4
\r
108 #define CONFIG_CMD_EXT4_WRITE
\r
110 //#define CONFIG_TIGER_MMC
\r
111 #define CONFIG_UEFI_PARTITION
\r
112 #define CONFIG_EFI_PARTITION
\r
113 #define CONFIG_EXT4_SPARSE_DOWNLOAD
\r
114 //#define CONFIG_EMMC_SPL
\r
115 #define CONFIG_SYS_EMMC_U_BOOT_SECTOR_NUM ((CONFIG_SYS_NAND_U_BOOT_SIZE+EMMC_SECTOR_SIZE-1)/EMMC_SECTOR_SIZE)
\r
122 #define CONFIG_CMD_MMC
\r
123 #ifdef CONFIG_CMD_MMC
\r
124 #define CONFIG_CMD_FAT 1
\r
125 #define CONFIG_FAT_WRITE 1
\r
126 #define CONFIG_MMC 1
\r
127 #define CONFIG_GENERIC_MMC 1
\r
128 #define CONFIG_SDHCI 1
\r
129 #define CONFIG_SDHCI_CTRL_NO_HISPD 1 /* disable high speed control */
\r
130 #define CONFIG_SYS_MMC_MAX_BLK_COUNT 0x1000
\r
131 #define CONFIG_MMC_SDMA 1
\r
132 #define CONFIG_MV_SDHCI 1
\r
133 #define CONFIG_DOS_PARTITION 1
\r
134 #define CONFIG_EFI_PARTITION 1
\r
135 #define CONFIG_SYS_MMC_NUM 1
\r
136 #define CONFIG_SYS_MMC_BASE {0x20600000}
\r
137 #define CONFIG_SYS_SD_BASE 0x20300000
\r
140 #define BB_DRAM_TYPE_256MB_32BIT
\r
142 #define CONFIG_SYS_HZ 1000
\r
143 #define CONFIG_SPRD_TIMER_CLK 1000 /*32768*/
\r
145 //#define CONFIG_SYS_HUSH_PARSER
\r
147 #ifdef CONFIG_SYS_HUSH_PARSER
\r
148 #define CONFIG_SYS_PROMPT_HUSH_PS2 "> "
\r
151 #define FIXNV_SIZE (128 * 1024)
\r
152 #define MODEM_SIZE (0x800000)
\r
153 #define DSP_SIZE (0x2E0000)
\r
154 #define VMJALUNA_SIZE (0x64000) /* 400K */
\r
155 #define RUNTIMENV_SIZE (3*128 * 1024)
\r
156 #define CONFIG_SPL_LOAD_LEN (0x6000)
\r
159 /*#define CMDLINE_NEED_CONV */
\r
161 #define WATCHDOG_LOAD_VALUE 0x4000
\r
162 #define CONFIG_SYS_STACK_SIZE 0x400
\r
163 //#define CONFIG_SYS_TEXT_BASZE 0x80f00000
\r
165 //#define CONFIG_SYS_MONITOR_LEN (256 << 10) /* 256 kB for U-Boot */
\r
167 /* NAND BOOT is the only boot method */
\r
168 #define CONFIG_NAND_U_BOOT
\r
169 #define DYNAMIC_CRC_TABLE
\r
170 /* Start copying real U-boot from the second page */
\r
171 #define CONFIG_SYS_NAND_U_BOOT_OFFS 0x40000
\r
172 #define CONFIG_SYS_NAND_U_BOOT_SIZE 0x8A000
\r
173 #define RAM_TYPPE_IS_SDRAM 0
\r
174 //#define FPGA_TRACE_DOWNLOAD //for download image from trace
\r
176 /* Load U-Boot to this address */
\r
177 #define CONFIG_SYS_NAND_U_BOOT_DST 0x8f800000
\r
178 #define CONFIG_SYS_NAND_U_BOOT_START CONFIG_SYS_NAND_U_BOOT_DST
\r
179 #define CONFIG_SYS_SDRAM_BASE 0x80000000
\r
180 #define CONFIG_SYS_SDRAM_END (CONFIG_SYS_SDRAM_BASE + 256*1024*1024)
\r
182 #ifdef CONFIG_NAND_SPL
\r
183 #define CONFIG_SYS_INIT_SP_ADDR (CONFIG_SYS_SDRAM_END - 0x40000)
\r
186 #define CONFIG_MMU_TABLE_ADDR (0x00020000)
\r
187 #define CONFIG_SYS_INIT_SP_ADDR \
\r
188 (CONFIG_SYS_SDRAM_END - 0x10000 - GENERATED_GBL_DATA_SIZE)
\r
190 #define CONFIG_SKIP_LOWLEVEL_INIT
\r
193 #define CONFIG_HW_WATCHDOG
\r
194 //#define CONFIG_AUTOBOOT //used for FPGA test, auto boot other image
\r
195 //#define CONFIG_DISPLAY_CPUINFO
\r
197 #define CONFIG_CMDLINE_TAG 1 /* enable passing of ATAGs */
\r
198 #define CONFIG_SETUP_MEMORY_TAGS 1
\r
199 #define CONFIG_INITRD_TAG 1
\r
205 #define CONFIG_SYS_MALLOC_LEN (2 << 20) /* 1 MiB */
\r
207 * Board has 2 32MB banks of DRAM but there is a bug when using
\r
208 * both so only the first is configured
\r
210 #define CONFIG_NR_DRAM_BANKS 1
\r
212 #define PHYS_SDRAM_1 0x80000000
\r
213 #define PHYS_SDRAM_1_SIZE 0x10000000
\r
214 #if (CONFIG_NR_DRAM_BANKS == 2)
\r
215 #define PHYS_SDRAM_2 0x90000000
\r
216 #define PHYS_SDRAM_2_SIZE 0x10000000
\r
218 /* 8MB DRAM test */
\r
219 #define CONFIG_SYS_MEMTEST_START PHYS_SDRAM_1
\r
220 #define CONFIG_SYS_MEMTEST_END (PHYS_SDRAM_1+0x0800000)
\r
221 #define CONFIG_STACKSIZE (256 * 1024) /* regular stack */
\r
226 #define CONFIG_SPRD_UART 1
\r
227 #define CONFIG_SYS_SC8800X_UART1 1
\r
228 #define CONFIG_CONS_INDEX 1 /* use UART0 for console */
\r
229 #define CONFIG_BAUDRATE 115200 /* Default baud rate */
\r
230 #define CONFIG_SYS_BAUDRATE_TABLE { 9600, 19200, 38400, 57600, 115200 }
\r
231 #define CONFIG_SPRD_SPI
\r
232 #define CONFIG_SPRD_I2C
\r
233 #define CONFIG_SC8830_I2C
\r
235 * Flash & Environment
\r
237 /* No NOR flash present */
\r
238 #define CONFIG_SYS_MONITOR_LEN ((CONFIG_SYS_NAND_U_BOOT_OFFS)+(CONFIG_SYS_NAND_U_BOOT_SIZE))
\r
239 #define CONFIG_SYS_NO_FLASH 1
\r
240 #define CONFIG_ENV_IS_NOWHERE
\r
241 #define CONFIG_ENV_SIZE (128 * 1024)
\r
243 #define CONFIG_ENV_IS_IN_NAND
\r
244 #define CONFIG_ENV_OFFSET CONFIG_SYS_MONITOR_LEN
\r
245 #define CONFIG_ENV_OFFSET_REDUND (CONFIG_ENV_OFFSET + CONFIG_ENV_SIZE)
\r
249 #define DDR_CLK 464
\r
250 //---these three macro below,only one can be open
\r
251 //#define DDR_LPDDR1
\r
255 //#define DDR_AUTO_DETECT
\r
256 #define DDR_TYPE DRAM_LPDDR2_1CS_4G_X32
\r
257 //#define DDR_TYPE DRAM_LPDDR2_1CS_8G_X32
\r
258 //#define DDR_TYPE DRAM_LPDDR2_2CS_8G_X32
\r
259 //#define DDR_TYPE DRAM_LPDDR2_2CS_16G_X32
\r
260 //#define DDR_TYPE DRAM_DDR3_1CS_2G_X8_4P
\r
261 //#define DDR_TYPE DRAM_DDR3_1CS_4G_X16_2P
\r
263 #define DDR3_DLL_ON TRUE
\r
264 //#define DLL_BYPASS
\r
265 #define DDR_APB_CLK 128
\r
266 #define DDR_DFS_SUPPORT
\r
267 #define DDR_DFS_VAL_BASE 0X1c00
\r
269 //#define DDR_SCAN_SUPPORT
\r
270 #define MEM_IO_DS LPDDR2_DS_40R
\r
272 #define PUBL_LPDDR1_DS PUBL_LPDDR1_DS_48OHM
\r
273 #define PUBL_LPDDR2_DS PUBL_LPDDR2_DS_40OHM
\r
274 #define PUBL_DDR3_DS PUBL_DDR3_DS_34OHM
\r
279 #define CONFIG_NAND_SC8830
\r
280 #define CONFIG_SPRD_NAND_REGS_BASE (0x21100000)
\r
281 #define CONFIG_SYS_MAX_NAND_DEVICE 1
\r
282 #define CONFIG_SYS_NAND_BASE (0x21100000)
\r
283 //#define CONFIG_JFFS2_NAND
\r
284 //#define CONFIG_SPRD_NAND_HWECC
\r
285 #define CONFIG_SYS_NAND_HW_ECC
\r
286 #define CONFIG_SYS_NAND_LARGEPAGE
\r
287 //#define CONFIG_SYS_NAND_5_ADDR_CYCLE
\r
289 #define CONFIG_SYS_64BIT_VSPRINTF
\r
291 #define CONFIG_CMD_MTDPARTS
\r
292 #define CONFIG_MTD_PARTITIONS
\r
293 #define CONFIG_MTD_DEVICE
\r
294 #define CONFIG_CMD_UBI
\r
295 #define CONFIG_RBTREE
\r
297 /* U-Boot general configuration */
\r
298 #define CONFIG_SYS_PROMPT "=> " /* Monitor Command Prompt */
\r
299 #define CONFIG_SYS_CBSIZE 1024 /* Console I/O Buffer Size */
\r
300 /* Print buffer sz */
\r
301 #define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE + \
\r
302 sizeof(CONFIG_SYS_PROMPT) + 16)
\r
303 #define CONFIG_SYS_MAXARGS 32 /* max number of command args */
\r
304 /* Boot Argument Buffer Size */
\r
305 #define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE
\r
306 #define CONFIG_CMDLINE_EDITING
\r
307 #define CONFIG_SYS_LONGHELP
\r
309 /* support OS choose */
\r
310 #undef CONFIG_BOOTM_NETBSD
\r
311 #undef CONFIG_BOOTM_RTEMS
\r
313 /* U-Boot commands */
\r
314 #include <config_cmd_default.h>
\r
315 #define CONFIG_CMD_NAND
\r
316 #undef CONFIG_CMD_FPGA
\r
317 #undef CONFIG_CMD_LOADS
\r
318 #undef CONFIG_CMD_NET
\r
319 #undef CONFIG_CMD_NFS
\r
320 #undef CONFIG_CMD_SETGETDCR
\r
322 #define CONFIG_ENV_OVERWRITE
\r
324 #ifdef SPRD_EVM_TAG_ON
\r
325 #define CONFIG_BOOTDELAY 0
\r
327 #define CONFIG_BOOTDELAY 0
\r
328 #define CONFIG_ZERO_BOOTDELAY_CHECK
\r
331 #define CONFIG_LOADADDR (CONFIG_SYS_TEXT_BASE - CONFIG_SYS_MALLOC_LEN - 4*1024*1024) /* loadaddr env var */
\r
332 #define CONFIG_SYS_LOAD_ADDR CONFIG_LOADADDR
\r
334 #define xstr(s) str(s)
\r
337 #define MTDIDS_DEFAULT "nand0=sprd-nand"
\r
338 #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)"
\r
339 #define CONFIG_BOOTARGS "mem=512M loglevel=1 console=ttyS1,115200n8 init=/init " MTDPARTS_DEFAULT
\r
341 #define COPY_LINUX_KERNEL_SIZE (0x600000)
\r
342 #define LINUX_INITRD_NAME "modem"
\r
344 #define CONFIG_BOOTCOMMAND "cboot normal"
\r
345 #define CONFIG_EXTRA_ENV_SETTINGS ""
\r
347 #ifdef CONFIG_CMD_NET
\r
348 #define CONFIG_IPADDR 192.168.10.2
\r
349 #define CONFIG_SERVERIP 192.168.10.5
\r
350 #define CONFIG_NETMASK 255.255.255.0
\r
351 #define CONFIG_USBNET_DEVADDR 26:03:ee:00:87:9f
\r
352 #define CONFIG_USBNET_HOSTADDR 9a:04:c7:d6:30:d0
\r
355 #define CONFIG_NET_MULTI
\r
356 #define CONFIG_CMD_DNS
\r
357 #define CONFIG_CMD_NFS
\r
358 #define CONFIG_CMD_RARP
\r
359 #define CONFIG_CMD_PING
\r
360 /*#define CONFIG_CMD_SNTP */
\r
363 #define CONFIG_USB_CORE_IP_293A
\r
364 #define CONFIG_USB_GADGET_SC8800G
\r
365 #define CONFIG_USB_DWC
\r
366 #define CONFIG_USB_GADGET_DUALSPEED
\r
367 //#define CONFIG_USB_ETHER
\r
368 #define CONFIG_CMD_FASTBOOT
\r
369 #define SCRATCH_ADDR (CONFIG_SYS_SDRAM_BASE + 0x100000)
\r
370 #define FB_DOWNLOAD_BUF_SIZE (CONFIG_SYS_NAND_U_BOOT_DST - SCRATCH_ADDR-0x800000)
\r
371 #define SCRATCH_ADDR_EXT1 (CONFIG_SYS_NAND_U_BOOT_DST + 32*1024*1024)
\r
372 #define FB_DOWNLOAD_BUF_EXT1_SIZE (224*1024*1024)
\r
374 #define CONFIG_MODEM_CALIBERATE
\r
378 #define CONFIG_SPLASH_SCREEN
\r
379 #define LCD_BPP LCD_COLOR16
\r
380 //#define CONFIG_LCD_HVGA 1
\r
381 //#define CONFIG_LCD_QVGA 1
\r
382 //#define CONFIG_LCD_QHD 1
\r
383 #define CONFIG_LCD_720P 1
\r
384 //#define CONFIG_LCD_INFO
\r
385 //#define LCD_TEST_PATTERN
\r
386 //#define CONFIG_LCD_LOGO
\r
387 //#define CONFIG_FB_LCD_S6D0139
\r
388 #define CONFIG_FB_LCD_SSD2075_MIPI
\r
389 #define CONFIG_FB_LCD_NT35516_MIPI
\r
390 #define CONFIG_FB_LCD_OTM1283A_MIPI
\r
391 #define CONFIG_SYS_WHITE_ON_BLACK
\r
392 #ifdef LCD_TEST_PATTERN
\r
393 #define CONSOLE_COLOR_RED 0xf800
\r
394 #define CONSOLE_COLOR_GREEN 0x07e0
\r
395 #define CONSOLE_COLOR_YELLOW 0x07e0
\r
396 #define CONSOLE_COLOR_BLUE 0x001f
\r
397 #define CONSOLE_COLOR_MAGENTA 0x001f
\r
398 #define CONSOLE_COLOR_CYAN 0x001f
\r
400 #endif // CONFIG_LCD
\r
402 #define CONFIG_SPRD_SYSDUMP
\r
403 #include <asm/sizes.h>
\r
404 #define SPRD_SYSDUMP_MAGIC ((PHYS_OFFSET_ADDR & (~(SZ_512M - 1))) + SZ_512M - SZ_1M)
\r
407 #define CALIBRATE_ENUM_MS 3000
\r
408 #define CALIBRATE_IO_MS 2000
\r
410 //#define LOW_BAT_ADC_LEVEL 782 /*phone battery adc value low than this value will not boot up*/
\r
411 #define LOW_BAT_VOL 3500 /*phone battery voltage low than this value will not boot up*/
\r
412 #define LOW_BAT_VOL_CHG 3300 //3.3V charger connect
\r
414 #define PWR_KEY_DETECT_CNT 12 /*this should match the count of boot_pwr_check() function */
\r
415 #define ALARM_LEAD_SET_MS 0 /* time set for alarm boot in advancd */
\r
417 #define PHYS_OFFSET_ADDR 0x80000000
\r
418 #define TD_CP_OFFSET_ADDR 0x8000000 /*128*/
\r
419 #define TD_CP_SDRAM_SIZE 0x1200000 /*18M*/
\r
420 //#define WCDMA_CP_OFFSET_ADDR 0x10000000 /*256M*/
\r
421 //#define WCDMA_CP_SDRAM_SIZE 0x4000000 /*64M*/
\r
422 #define WCN_CP_OFFSET_ADDR 0x14000000 /*320M*/
\r
423 #define WCN_CP_SDRAM_SIZE 0x400000 /*4M*/
\r
425 #define SIPC_APCP_RESET_ADDR_SIZE 0xC00 /*3K*/
\r
426 #define SIPC_APCP_RESET_SIZE 0x1000 /*4K*/
\r
427 #define SIPC_TD_APCP_START_ADDR (PHYS_OFFSET_ADDR + TD_CP_OFFSET_ADDR + TD_CP_SDRAM_SIZE - SIPC_APCP_RESET_SIZE) /*0x897FF000*/
\r
428 //#define SIPC_WCDMA_APCP_START_ADDR (PHYS_OFFSET_ADDR + WCDMA_CP_OFFSET_ADDR + WCDMA_CP_SDRAM_SIZE - SIPC_APCP_RESET_SIZE) /*0x93FFF000*/
\r
429 #define SIPC_WCN_APCP_START_ADDR (PHYS_OFFSET_ADDR + WCN_CP_OFFSET_ADDR + WCN_CP_SDRAM_SIZE - SIPC_APCP_RESET_SIZE) /*0x94EFF000*/
\r
431 #define CONFIG_RAM_CONSOLE
\r
433 #ifdef CONFIG_RAM_CONSOLE
\r
434 #define CONFIG_RAM_CONSOLE_SIZE 0x80000
\r
435 #define CONFIG_RAM_CONSOLE_START (CONFIG_SYS_NAND_U_BOOT_START + 0x600000)
\r
437 //#define CALIBRATION_FLAG 0x89700000
\r
439 #define CONFIG_CMD_SOUND 1
\r
440 #define CONFIG_CMD_FOR_HTC 1
\r
441 #define CONFIG_SOUND_CODEC_SPRD_V3 1
\r
442 #define CONFIG_SOUND_DAI_VBC_R2P0 1
\r
443 /* #define CONFIG_SPRD_AUDIO_DEBUG */
\r
445 #define CONFIG_RAMDUMP_NO_SPLIT 1 /* Don't split sysdump file */
\r
446 #define USB_PHY_TUNE_VALUE 0x44077e33 /*transfer this value to kernel usb_hw.c to improve signal quality*/
\r
448 /*control the CP need to boot*/
\r
449 #define modem_cp0_enable 0
\r
450 #define modem_cp1_enable 0
\r
451 #define modem_cp2_enable 1
\r
453 #endif /* __CONFIG_H */
\r