xref: /rk3399_rockchip-uboot/include/configs/sh7785lcr.h (revision 8a7507a8a394f4fccbd7eb730910cf62de6f8d32)
10d53a47dSNobuhiro Iwamatsu /*
20d53a47dSNobuhiro Iwamatsu  * Configuation settings for the Renesas Technology R0P7785LC0011RL board
30d53a47dSNobuhiro Iwamatsu  *
40d53a47dSNobuhiro Iwamatsu  * Copyright (C) 2008 Yoshihiro Shimoda <shimoda.yoshihiro@renesas.com>
50d53a47dSNobuhiro Iwamatsu  *
61a459660SWolfgang Denk  * SPDX-License-Identifier:	GPL-2.0+
70d53a47dSNobuhiro Iwamatsu  */
80d53a47dSNobuhiro Iwamatsu 
90d53a47dSNobuhiro Iwamatsu #ifndef __SH7785LCR_H
100d53a47dSNobuhiro Iwamatsu #define __SH7785LCR_H
110d53a47dSNobuhiro Iwamatsu 
120d53a47dSNobuhiro Iwamatsu #define CONFIG_CPU_SH7785	1
130d53a47dSNobuhiro Iwamatsu #define CONFIG_SH7785LCR	1
140d53a47dSNobuhiro Iwamatsu 
150d53a47dSNobuhiro Iwamatsu #define CONFIG_EXTRA_ENV_SETTINGS					\
160d53a47dSNobuhiro Iwamatsu 	"bootdevice=0:1\0"						\
170d53a47dSNobuhiro Iwamatsu 	"usbload=usb reset;usbboot;usb stop;bootm\0"
180d53a47dSNobuhiro Iwamatsu 
19*18a40e84SVladimir Zapolskiy #define CONFIG_DISPLAY_BOARDINFO
200d53a47dSNobuhiro Iwamatsu #undef	CONFIG_SHOW_BOOT_PROGRESS
210d53a47dSNobuhiro Iwamatsu 
220d53a47dSNobuhiro Iwamatsu /* MEMORY */
23ada93182SYoshihiro Shimoda #if defined(CONFIG_SH_32BIT)
2459272c6bSNobuhiro Iwamatsu #define CONFIG_SYS_TEXT_BASE		0x8FF80000
25915d6b7dSNobuhiro Iwamatsu /* 0x40000000 - 0x47FFFFFF does not use */
26915d6b7dSNobuhiro Iwamatsu #define CONFIG_SH_SDRAM_OFFSET		(0x8000000)
27915d6b7dSNobuhiro Iwamatsu #define SH7785LCR_SDRAM_PHYS_BASE	(0x40000000 + CONFIG_SH_SDRAM_OFFSET)
28915d6b7dSNobuhiro Iwamatsu #define SH7785LCR_SDRAM_BASE		(0x80000000 + CONFIG_SH_SDRAM_OFFSET)
29ada93182SYoshihiro Shimoda #define SH7785LCR_SDRAM_SIZE		(384 * 1024 * 1024)
30ada93182SYoshihiro Shimoda #define SH7785LCR_FLASH_BASE_1		(0xa0000000)
31ada93182SYoshihiro Shimoda #define SH7785LCR_FLASH_BANK_SIZE	(64 * 1024 * 1024)
32ada93182SYoshihiro Shimoda #define SH7785LCR_USB_BASE		(0xa6000000)
33ada93182SYoshihiro Shimoda #else
3459272c6bSNobuhiro Iwamatsu #define CONFIG_SYS_TEXT_BASE		0x0FF80000
350d53a47dSNobuhiro Iwamatsu #define SH7785LCR_SDRAM_BASE		(0x08000000)
360d53a47dSNobuhiro Iwamatsu #define SH7785LCR_SDRAM_SIZE		(128 * 1024 * 1024)
370d53a47dSNobuhiro Iwamatsu #define SH7785LCR_FLASH_BASE_1		(0xa0000000)
380d53a47dSNobuhiro Iwamatsu #define SH7785LCR_FLASH_BANK_SIZE	(64 * 1024 * 1024)
390d53a47dSNobuhiro Iwamatsu #define SH7785LCR_USB_BASE		(0xb4000000)
40ada93182SYoshihiro Shimoda #endif
410d53a47dSNobuhiro Iwamatsu 
426d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_LONGHELP
436d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PBSIZE		256
446d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_BAUDRATE_TABLE	{ 115200 }
450d53a47dSNobuhiro Iwamatsu 
460d53a47dSNobuhiro Iwamatsu /* SCIF */
470d53a47dSNobuhiro Iwamatsu #define CONFIG_CONS_SCIF1	1
480d53a47dSNobuhiro Iwamatsu #define CONFIG_SCIF_EXT_CLOCK	1
490d53a47dSNobuhiro Iwamatsu 
506d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MEMTEST_START	(SH7785LCR_SDRAM_BASE)
516d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MEMTEST_END		(CONFIG_SYS_MEMTEST_START + \
520d53a47dSNobuhiro Iwamatsu 					(SH7785LCR_SDRAM_SIZE) - \
530d53a47dSNobuhiro Iwamatsu 					 4 * 1024 * 1024)
546d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #undef	CONFIG_SYS_ALT_MEMTEST
556d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #undef	CONFIG_SYS_MEMTEST_SCRATCH
566d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #undef	CONFIG_SYS_LOADS_BAUD_CHANGE
570d53a47dSNobuhiro Iwamatsu 
586d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SDRAM_BASE	(SH7785LCR_SDRAM_BASE)
596d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SDRAM_SIZE	(SH7785LCR_SDRAM_SIZE)
606d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_LOAD_ADDR	(CONFIG_SYS_SDRAM_BASE + 16 * 1024 * 1024)
610d53a47dSNobuhiro Iwamatsu 
626d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MONITOR_BASE	(SH7785LCR_FLASH_BASE_1)
636d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MONITOR_LEN		(512 * 1024)
646d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MALLOC_LEN		(512 * 1024)
656d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_BOOTMAPSZ		(8 * 1024 * 1024)
660d53a47dSNobuhiro Iwamatsu 
670d53a47dSNobuhiro Iwamatsu /* FLASH */
681c98172eSNobuhiro Iwamatsu #define CONFIG_FLASH_CFI_DRIVER
696d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_FLASH_CFI
706d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #undef	CONFIG_SYS_FLASH_QUIET_TEST
716d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_FLASH_EMPTY_INFO
726d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_FLASH_BASE		(SH7785LCR_FLASH_BASE_1)
736d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MAX_FLASH_SECT	512
740d53a47dSNobuhiro Iwamatsu 
756d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MAX_FLASH_BANKS	1
766d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_FLASH_BANKS_LIST	{ CONFIG_SYS_FLASH_BASE + \
770d53a47dSNobuhiro Iwamatsu 				 (0 * SH7785LCR_FLASH_BANK_SIZE) }
780d53a47dSNobuhiro Iwamatsu 
796d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_FLASH_ERASE_TOUT	(3 * 1000)
806d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_FLASH_WRITE_TOUT	(3 * 1000)
816d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_FLASH_LOCK_TOUT	(3 * 1000)
826d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_FLASH_UNLOCK_TOUT	(3 * 1000)
830d53a47dSNobuhiro Iwamatsu 
846d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #undef	CONFIG_SYS_FLASH_PROTECTION
856d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #undef	CONFIG_SYS_DIRECT_FLASH_TFTP
860d53a47dSNobuhiro Iwamatsu 
870d53a47dSNobuhiro Iwamatsu /* R8A66597 */
880d53a47dSNobuhiro Iwamatsu #define CONFIG_USB_R8A66597_HCD
890d53a47dSNobuhiro Iwamatsu #define CONFIG_R8A66597_BASE_ADDR	SH7785LCR_USB_BASE
900d53a47dSNobuhiro Iwamatsu #define CONFIG_R8A66597_XTAL		0x0000	/* 12MHz */
910d53a47dSNobuhiro Iwamatsu #define CONFIG_R8A66597_LDRV		0x8000	/* 3.3V */
920d53a47dSNobuhiro Iwamatsu #define CONFIG_R8A66597_ENDIAN		0x0000	/* little */
930d53a47dSNobuhiro Iwamatsu 
940d53a47dSNobuhiro Iwamatsu /* PCI Controller */
950d53a47dSNobuhiro Iwamatsu #define CONFIG_SH4_PCI
960d53a47dSNobuhiro Iwamatsu #define CONFIG_SH7780_PCI
97ada93182SYoshihiro Shimoda #if defined(CONFIG_SH_32BIT)
98ada93182SYoshihiro Shimoda #define CONFIG_SH7780_PCI_LSR	0x1ff00001
99ada93182SYoshihiro Shimoda #define CONFIG_SH7780_PCI_LAR	0x5f000000
100ada93182SYoshihiro Shimoda #define CONFIG_SH7780_PCI_BAR	0x5f000000
101ada93182SYoshihiro Shimoda #else
10206b18163SYoshihiro Shimoda #define CONFIG_SH7780_PCI_LSR	0x07f00001
10306b18163SYoshihiro Shimoda #define CONFIG_SH7780_PCI_LAR	CONFIG_SYS_SDRAM_SIZE
10406b18163SYoshihiro Shimoda #define CONFIG_SH7780_PCI_BAR	CONFIG_SYS_SDRAM_SIZE
105ada93182SYoshihiro Shimoda #endif
1060d53a47dSNobuhiro Iwamatsu #define CONFIG_PCI_SCAN_SHOW	1
1070d53a47dSNobuhiro Iwamatsu 
1080d53a47dSNobuhiro Iwamatsu #define CONFIG_PCI_MEM_BUS	0xFD000000	/* Memory space base addr */
1090d53a47dSNobuhiro Iwamatsu #define CONFIG_PCI_MEM_PHYS	CONFIG_PCI_MEM_BUS
1100d53a47dSNobuhiro Iwamatsu #define CONFIG_PCI_MEM_SIZE	0x01000000	/* Size of Memory window */
1110d53a47dSNobuhiro Iwamatsu 
1120d53a47dSNobuhiro Iwamatsu #define CONFIG_PCI_IO_BUS	0xFE200000	/* IO space base address */
1130d53a47dSNobuhiro Iwamatsu #define CONFIG_PCI_IO_PHYS	CONFIG_PCI_IO_BUS
1140d53a47dSNobuhiro Iwamatsu #define CONFIG_PCI_IO_SIZE	0x00200000	/* Size of IO window */
1150d53a47dSNobuhiro Iwamatsu 
116ada93182SYoshihiro Shimoda #if defined(CONFIG_SH_32BIT)
117ada93182SYoshihiro Shimoda #define CONFIG_PCI_SYS_PHYS	SH7785LCR_SDRAM_PHYS_BASE
118ada93182SYoshihiro Shimoda #else
119b3061b40SYoshihiro Shimoda #define CONFIG_PCI_SYS_PHYS	CONFIG_SYS_SDRAM_BASE
120ada93182SYoshihiro Shimoda #endif
121ada93182SYoshihiro Shimoda #define CONFIG_PCI_SYS_BUS	CONFIG_SYS_SDRAM_BASE
122b3061b40SYoshihiro Shimoda #define CONFIG_PCI_SYS_SIZE	CONFIG_SYS_SDRAM_SIZE
123b3061b40SYoshihiro Shimoda 
1240d53a47dSNobuhiro Iwamatsu /* ENV setting */
1250d53a47dSNobuhiro Iwamatsu #define CONFIG_ENV_OVERWRITE	1
1260e8d1586SJean-Christophe PLAGNIOL-VILLARD #define CONFIG_ENV_SECT_SIZE	(256 * 1024)
1270e8d1586SJean-Christophe PLAGNIOL-VILLARD #define CONFIG_ENV_SIZE		(CONFIG_ENV_SECT_SIZE)
1286d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_ENV_ADDR		(CONFIG_SYS_FLASH_BASE + CONFIG_SYS_MONITOR_LEN)
1296d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_ENV_OFFSET		(CONFIG_ENV_ADDR - CONFIG_SYS_FLASH_BASE)
1300e8d1586SJean-Christophe PLAGNIOL-VILLARD #define CONFIG_ENV_SIZE_REDUND	(CONFIG_ENV_SECT_SIZE)
1310d53a47dSNobuhiro Iwamatsu 
1320d53a47dSNobuhiro Iwamatsu /* Board Clock */
1330d53a47dSNobuhiro Iwamatsu /* The SCIF used external clock. system clock only used timer. */
1340d53a47dSNobuhiro Iwamatsu #define CONFIG_SYS_CLK_FREQ	50000000
135684a501eSNobuhiro Iwamatsu #define CONFIG_SH_TMU_CLK_FREQ CONFIG_SYS_CLK_FREQ
136684a501eSNobuhiro Iwamatsu #define CONFIG_SH_SCIF_CLK_FREQ CONFIG_SYS_CLK_FREQ
137be45c632SJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_TMU_CLK_DIV		4
1380d53a47dSNobuhiro Iwamatsu 
1390d53a47dSNobuhiro Iwamatsu #endif	/* __SH7785LCR_H */
140