Add configuration for Wave Share Open1788 (fragmentary)
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5537 42af7a65-404d-4744-a932-0658087f49c3
This commit is contained in:
parent
b1c26dd6b3
commit
40aa300aef
125
arch/Kconfig
125
arch/Kconfig
@ -103,6 +103,131 @@ source arch/x86/Kconfig
|
||||
source arch/z16/Kconfig
|
||||
source arch/z80/Kconfig
|
||||
|
||||
comment "External Memory Configuration"
|
||||
|
||||
config ARCH_HAVE_EXTNAND
|
||||
bool
|
||||
|
||||
config ARCH_HAVE_EXTNOR
|
||||
bool
|
||||
|
||||
config ARCH_HAVE_EXTDRAM
|
||||
bool
|
||||
|
||||
config ARCH_HAVE_EXTSRAM0
|
||||
bool
|
||||
|
||||
config ARCH_HAVE_EXTSRAM1
|
||||
bool
|
||||
|
||||
config ARCH_EXTNAND
|
||||
bool "Configure external NAND"
|
||||
default n
|
||||
depends on ARCH_HAVE_EXTNAND
|
||||
---help---
|
||||
Configure external NAND memory and, if applicable, map then external
|
||||
NAND into the memory map.
|
||||
|
||||
if ARCH_EXTNAND
|
||||
|
||||
config ARCH_EXTNANDSIZE
|
||||
int "External NAND size"
|
||||
default 0
|
||||
---help---
|
||||
Size of the external NAND in bytes.
|
||||
|
||||
endif
|
||||
|
||||
config ARCH_EXTNOR
|
||||
bool "Configure external NOR memory"
|
||||
default n
|
||||
depends on ARCH_HAVE_EXTNOR
|
||||
---help---
|
||||
Configure external NOR memory and, if applicable, map then external
|
||||
NOR into the memory map.
|
||||
|
||||
if ARCH_EXTNOR
|
||||
|
||||
config ARCH_EXTNORSIZE
|
||||
int "External NOR size"
|
||||
default 0
|
||||
---help---
|
||||
Size of the external NOR in bytes.
|
||||
|
||||
endif
|
||||
|
||||
config ARCH_EXTDRAM
|
||||
bool "Configure external DRAM"
|
||||
default n
|
||||
depends on ARCH_HAVE_EXTDRAM
|
||||
---help---
|
||||
Configure external DRAM memory and, if applicable, map then external
|
||||
DRAM into the memory map.
|
||||
|
||||
if ARCH_EXTDRAM
|
||||
|
||||
config ARCH_EXTDRAMSIZE
|
||||
int "External SDRAM size"
|
||||
default 0
|
||||
---help---
|
||||
Size of the external SDRAM in bytes.
|
||||
|
||||
config ARCH_EXTDRAMHEAP
|
||||
bool "Add external SDRAM to the heap"
|
||||
default y
|
||||
---help---
|
||||
Add the external SDRAM into the heap.
|
||||
|
||||
endif
|
||||
|
||||
config ARCH_EXTSRAM0
|
||||
bool "Configure external SRAM (Bank 0)"
|
||||
default n
|
||||
depends on ARCH_HAVE_EXTSRAM0
|
||||
---help---
|
||||
Configure external SRAM Bank 0 memory and, if applicable, map then
|
||||
external SRAM Bank 0 into the memory map.
|
||||
|
||||
if ARCH_EXTSRAM0
|
||||
|
||||
config ARCH_EXTSRAM0SIZE
|
||||
int "External SRAM size"
|
||||
default 0
|
||||
---help---
|
||||
Size of the external SRAM Bank 0 in bytes.
|
||||
|
||||
config ARCH_EXTSRAM0HEAP
|
||||
bool "Add external SRAM (Bank 0) to the heap"
|
||||
default y
|
||||
---help---
|
||||
Add external SRAM Bank 0 into the heap.
|
||||
|
||||
endif
|
||||
|
||||
config ARCH_EXTSRAM1
|
||||
bool "Configure external SRAM (Bank 1)"
|
||||
default n
|
||||
depends on ARCH_HAVE_EXTSRAM1
|
||||
---help---
|
||||
Configure external SRAM Bank 1 memory and, if applicable, map then
|
||||
external SRAM Bank 1 into the memory map.
|
||||
|
||||
if ARCH_EXTSRAM1
|
||||
|
||||
config ARCH_EXTSRAM1SIZE
|
||||
int "External SRAM1 size"
|
||||
default 0
|
||||
---help---
|
||||
Size of the external SRAM Bank 1 in bytes.
|
||||
|
||||
config ARCH_EXTSRAM1HEAP
|
||||
bool "Add external SRAM (Bank 1) to the heap"
|
||||
default y
|
||||
---help---
|
||||
Add external SRAM Bank 1 into the heap.
|
||||
|
||||
endif
|
||||
|
||||
comment "Architecture Options"
|
||||
|
||||
config ARCH_NOINTC
|
||||
|
@ -104,9 +104,17 @@ config ARCH_FAMILY_LPC176X
|
||||
|
||||
config ARCH_FAMILY_LPC177X
|
||||
bool
|
||||
select ARCH_HAVE_EXTNAND
|
||||
select ARCH_HAVE_EXTSRAM0
|
||||
select ARCH_HAVE_EXTDRAM
|
||||
select ARCH_HAVE_EXTNOR
|
||||
|
||||
config ARCH_FAMILY_LPC178X
|
||||
bool
|
||||
select ARCH_HAVE_EXTNAND
|
||||
select ARCH_HAVE_EXTSRAM0
|
||||
select ARCH_HAVE_EXTDRAM
|
||||
select ARCH_HAVE_EXTNOR
|
||||
|
||||
menu "LPC17xx Peripheral Support"
|
||||
|
||||
|
@ -12,15 +12,31 @@ choice
|
||||
|
||||
config ARCH_CHIP_LPC3130
|
||||
bool "LPC3130"
|
||||
select ARCH_HAVE_EXTNAN
|
||||
select ARCH_HAVE_EXTSRAM0
|
||||
select ARCH_HAVE_EXTSRAM1
|
||||
select ARCH_HAVE_EXTDRAM
|
||||
|
||||
config ARCH_CHIP_LPC3131
|
||||
bool "LPC3131"
|
||||
select ARCH_HAVE_EXTNAND
|
||||
select ARCH_HAVE_EXTSRAM0
|
||||
select ARCH_HAVE_EXTSRAM1
|
||||
select ARCH_HAVE_EXTDRAM
|
||||
|
||||
config ARCH_CHIP_LPC3152
|
||||
bool "LPC3152"
|
||||
select ARCH_HAVE_EXTNAND
|
||||
select ARCH_HAVE_EXTSRAM0
|
||||
select ARCH_HAVE_EXTSRAM1
|
||||
select ARCH_HAVE_EXTDRAM
|
||||
|
||||
config ARCH_CHIP_LPC3154
|
||||
bool "LPC3154"
|
||||
select ARCH_HAVE_EXTNAND
|
||||
select ARCH_HAVE_EXTSRAM0
|
||||
select ARCH_HAVE_EXTSRAM1
|
||||
select ARCH_HAVE_EXTDRAM
|
||||
|
||||
endchoice
|
||||
|
||||
@ -48,79 +64,12 @@ config LPC31_BUILDROOT
|
||||
|
||||
endchoice
|
||||
|
||||
menu "LPC31xx Memory Mapping"
|
||||
|
||||
config LPC31_EXTNAND
|
||||
bool "Map external NAND"
|
||||
default n
|
||||
---help---
|
||||
Map external NAND into the memory map.
|
||||
|
||||
config LPC31_EXTSDRAM
|
||||
bool "Map external SDRAM"
|
||||
default n
|
||||
---help---
|
||||
Map external SDRAM into the memory map.
|
||||
|
||||
config LPC31_EXTSDRAMHEAP
|
||||
bool "Add external SDRAM to the heap"
|
||||
default y
|
||||
depends on LPC31_EXTSDRAM
|
||||
---help---
|
||||
Add external SDRAM into the heap.
|
||||
|
||||
config LPC31_EXTSDRAMSIZE
|
||||
int "External SDRAM size"
|
||||
depends on LPC31_EXTSDRAM
|
||||
---help---
|
||||
Size of the external SDRAM.
|
||||
|
||||
config LPC31_SDRAMHCLK
|
||||
int "External SDRAM HCLK"
|
||||
depends on LPC31_EXTSDRAM
|
||||
depends on ARCH_EXTSDRAM
|
||||
---help---
|
||||
The SDRAM HCLK may be specified here (if not, it will be calculated).
|
||||
|
||||
config LPC31_EXTSRAM0
|
||||
bool "Map external SRAM0"
|
||||
default n
|
||||
---help---
|
||||
Map external SRAM0 into the memory map.
|
||||
|
||||
config LPC31_EXTSRAM0HEAP
|
||||
bool "Add external SRAM0 to the heap"
|
||||
default y
|
||||
depends on LPC31_EXTSRAM0
|
||||
---help---
|
||||
Add external SRAM0 into the heap.
|
||||
|
||||
config LPC31_EXTSRAM0SIZE
|
||||
int "External SRAM size"
|
||||
depends on LPC31_EXTSRAM0
|
||||
---help---
|
||||
Size of the external SRAM.
|
||||
|
||||
config LPC31_EXTSRAM1
|
||||
bool "Map external SRAM0"
|
||||
default n
|
||||
---help---
|
||||
Map external SRAM1 into the memory map.
|
||||
|
||||
config LPC31_EXTSRAM1HEAP
|
||||
bool "Add external SRAM1 to the heap"
|
||||
default y
|
||||
depends on LPC31_EXTSRAM1
|
||||
---help---
|
||||
Add external SRAM1 into the heap.
|
||||
|
||||
config LPC31_EXTSRAM1SIZE
|
||||
int "External SRAM1 size"
|
||||
depends on LPC31_EXTSRAM1
|
||||
---help---
|
||||
Size of the external SRAM1.
|
||||
|
||||
endmenu
|
||||
|
||||
menu "LPC31xx Peripheral Support"
|
||||
|
||||
config LPC31_UART
|
||||
|
@ -67,31 +67,31 @@
|
||||
* memory regions that we have been asked to add to the heap.
|
||||
*/
|
||||
|
||||
#if defined(CONFIG_LPC31_EXTSRAM0) && defined(CONFIG_LPC31_EXTSRAM0HEAP)
|
||||
# if defined(CONFIG_LPC31_EXTSRAM1) && defined(CONFIG_LPC31_EXTSRAM1HEAP)
|
||||
# if defined(CONFIG_LPC31_EXTSDRAM) && defined(CONFIG_LPC31_EXTSDRAMHEAP)
|
||||
#if defined(CONFIG_ARCH_EXTSRAM0) && defined(CONFIG_ARCH_EXTSRAM0HEAP)
|
||||
# if defined(CONFIG_ARCH_EXTSRAM1) && defined(CONFIG_ARCH_EXTSRAM1HEAP)
|
||||
# if defined(CONFIG_ARCH_EXTDRAM) && defined(CONFIG_ARCH_EXTDRAMHEAP)
|
||||
# /* SRAM+EXTSRAM0+EXTSRAM1+EXTSDRAM */
|
||||
# define LPC31_NEXT_REGIONS 4
|
||||
# else
|
||||
# /* SRAM+EXTSRAM0+EXTSRAM1 */
|
||||
# define LPC31_NEXT_REGIONS 3
|
||||
# endif
|
||||
# elif defined(CONFIG_LPC31_EXTSDRAM) && defined(CONFIG_LPC31_EXTSDRAMHEAP)
|
||||
# elif defined(CONFIG_ARCH_EXTDRAM) && defined(CONFIG_ARCH_EXTDRAMHEAP)
|
||||
# /* SRAM+EXTSRAM0+EXTSDRAM */
|
||||
# define LPC31_NEXT_REGIONS 3
|
||||
# else
|
||||
# /* SRAM+EXTSRAM0 */
|
||||
# define LPC31_NEXT_REGIONS 2
|
||||
# endif
|
||||
#elif defined(CONFIG_LPC31_EXTSRAM1) && defined(CONFIG_LPC31_EXTSRAM1HEAP)
|
||||
# if defined(CONFIG_LPC31_EXTSDRAM) && defined(CONFIG_LPC31_EXTSDRAMHEAP)
|
||||
#elif defined(CONFIG_ARCH_EXTSRAM1) && defined(CONFIG_ARCH_EXTSRAM1HEAP)
|
||||
# if defined(CONFIG_ARCH_EXTDRAM) && defined(CONFIG_ARCH_EXTDRAMHEAP)
|
||||
# /* SRAM+EXTSRAM1+EXTSDRAM */
|
||||
# define LPC31_NEXT_REGIONS 3
|
||||
# else
|
||||
# /* SRAM+EXTSRAM1 */
|
||||
# define LPC31_NEXT_REGIONS 2
|
||||
# endif
|
||||
#elif defined(CONFIG_LPC31_EXTSDRAM) && defined(CONFIG_LPC31_EXTSDRAMHEAP)
|
||||
#elif defined(CONFIG_ARCH_EXTDRAM) && defined(CONFIG_ARCH_EXTDRAMHEAP)
|
||||
# /* SRAM+EXTSDRAM */
|
||||
# define LPC31_NEXT_REGIONS 2
|
||||
#else
|
||||
@ -105,13 +105,13 @@
|
||||
# else
|
||||
# error "CONFIG_MM_REGIONS is too large for the selected memory regions"
|
||||
# endif
|
||||
# if defined(CONFIG_LPC31_EXTSRAM0) && defined(CONFIG_LPC31_EXTSRAM0HEAP)
|
||||
# if defined(CONFIG_ARCH_EXTSRAM0) && defined(CONFIG_ARCH_EXTSRAM0HEAP)
|
||||
# error "External SRAM0 is selected for heap"
|
||||
# endif
|
||||
# if defined(CONFIG_LPC31_EXTSRAM1) && defined(CONFIG_LPC31_EXTSRAM1HEAP)
|
||||
# if defined(CONFIG_ARCH_EXTSRAM1) && defined(CONFIG_ARCH_EXTSRAM1HEAP)
|
||||
# error "External SRAM1 is selected for heap"
|
||||
# endif
|
||||
# if defined(CONFIG_LPC31_EXTSDRAM) && defined(CONFIG_LPC31_EXTSDRAMHEAP)
|
||||
# if defined(CONFIG_ARCH_EXTDRAM) && defined(CONFIG_ARCH_EXTDRAMHEAP)
|
||||
# error "External SRAM1 is selected for heap"
|
||||
# endif
|
||||
#endif
|
||||
@ -191,16 +191,16 @@ void up_allocate_heap(FAR void **heap_start, size_t *heap_size)
|
||||
#if CONFIG_MM_REGIONS > 1
|
||||
void up_addregion(void)
|
||||
{
|
||||
#if defined(CONFIG_LPC31_EXTSRAM0) && defined(CONFIG_LPC31_EXTSRAM0HEAP)
|
||||
mm_addregion((FAR void*)LPC31_EXTSRAM0_VSECTION, CONFIG_LPC31_EXTSRAM0SIZE);
|
||||
#if defined(CONFIG_ARCH_EXTSRAM0) && defined(CONFIG_ARCH_EXTSRAM0HEAP)
|
||||
mm_addregion((FAR void*)LPC31_EXTSRAM0_VSECTION, CONFIG_ARCH_EXTSRAM0SIZE);
|
||||
#endif
|
||||
|
||||
#if defined(CONFIG_LPC31_EXTSRAM1) && defined(CONFIG_LPC31_EXTSRAM1HEAP)
|
||||
mm_addregion((FAR void*)LPC31_EXTSRAM1_VSECTION, CONFIG_LPC31_EXTSRAM1SIZE);
|
||||
#if defined(CONFIG_ARCH_EXTSRAM1) && defined(CONFIG_ARCH_EXTSRAM1HEAP)
|
||||
mm_addregion((FAR void*)LPC31_EXTSRAM1_VSECTION, CONFIG_ARCH_EXTSRAM1SIZE);
|
||||
#endif
|
||||
|
||||
#if defined(CONFIG_LPC31_EXTSDRAM) && defined(CONFIG_LPC31_EXTSDRAMHEAP)
|
||||
mm_addregion((FAR void*)LPC31_EXTSDRAM_VSECTION, CONFIG_LPC31_EXTSDRAMSIZE);
|
||||
#if defined(CONFIG_ARCH_EXTDRAM) && defined(CONFIG_ARCH_EXTDRAMHEAP)
|
||||
mm_addregion((FAR void*)LPC31_EXTSDRAM_VSECTION, CONFIG_ARCH_EXTDRAMSIZE);
|
||||
#endif
|
||||
}
|
||||
#endif
|
||||
|
@ -112,17 +112,17 @@ static const struct section_mapping_s section_mapping[] =
|
||||
LPC31_MCI_MMUFLAGS, LPC31_MCI_NSECTIONS},
|
||||
{ LPC31_USBOTG_PSECTION, LPC31_USBOTG_VSECTION,
|
||||
LPC31_USBOTG_MMUFLAGS, LPC31_USBOTG_NSECTIONS},
|
||||
#if defined(CONFIG_LPC31_EXTSRAM0) && CONFIG_LPC31_EXTSRAM0SIZE > 0
|
||||
#if defined(CONFIG_ARCH_EXTSRAM0) && CONFIG_ARCH_EXTSRAM0SIZE > 0
|
||||
{ LPC31_EXTSRAM_PSECTION, LPC31_EXTSRAM_VSECTION,
|
||||
LPC31_EXTSDRAM_MMUFLAGS, LPC31_EXTSRAM_NSECTIONS},
|
||||
#endif
|
||||
#if defined(CONFIG_LPC31_EXTSDRAM) && CONFIG_LPC31_EXTSDRAMSIZE > 0
|
||||
#if defined(CONFIG_ARCH_EXTDRAM) && CONFIG_ARCH_EXTDRAMSIZE > 0
|
||||
{ LPC31_EXTSDRAM0_PSECTION, LPC31_EXTSDRAM0_VSECTION,
|
||||
LPC31_EXTSDRAM_MMUFLAGS, LPC31_EXTSDRAM0_NSECTIONS},
|
||||
#endif
|
||||
{ LPC31_INTC_PSECTION, LPC31_INTC_VSECTION,
|
||||
LPC31_INTC_MMUFLAGS, LPC31_INTC_NSECTIONS},
|
||||
#ifdef CONFIG_LPC31_EXTNAND
|
||||
#ifdef CONFIG_ARCH_EXTNAND
|
||||
{ LPC31_NAND_PSECTION, LPC31_NAND_VSECTION
|
||||
LPC31_NAND_MMUFLAGS, LPC31_NAND_NSECTIONS},
|
||||
#endif
|
||||
|
@ -81,7 +81,7 @@
|
||||
/* 0x60001000-0x6fffffff: Reserved */
|
||||
#define LPC31_NAND_PSECTION 0x70000000 /* 0x70000000-0x700007ff: NANDFLASH Ctrl 2Kb */
|
||||
/* 0x70000800-0xffffffff: Reserved */
|
||||
#ifdef CONFIG_LPC31_EXTNAND /* End of the physical address space */
|
||||
#ifdef CONFIG_ARCH_EXTNAND /* End of the physical address space */
|
||||
# define LPC31_LAST_PSECTION (LPC31_NAND_PSECTION + (1 << 20))
|
||||
#else
|
||||
# define LPC31_LAST_PSECTION (LPC31_INTC_PSECTION + (1 << 20))
|
||||
@ -176,8 +176,8 @@
|
||||
* the size of the SDRAM installed.
|
||||
*/
|
||||
|
||||
#if defined(CONFIG_LPC31_EXTSDRAM) && CONFIG_LPC31_EXTSDRAMSIZE > 0
|
||||
# define LPC31_EXTSDRAM0_NSECTIONS _NSECTIONS(CONFIG_LPC31_EXTSDRAMSIZE)
|
||||
#if defined(CONFIG_ARCH_EXTDRAM) && CONFIG_ARCH_EXTDRAMSIZE > 0
|
||||
# define LPC31_EXTSDRAM0_NSECTIONS _NSECTIONS(CONFIG_ARCH_EXTDRAMSIZE)
|
||||
#endif
|
||||
|
||||
/* Section MMU Flags */
|
||||
@ -233,7 +233,7 @@
|
||||
# define LPC31_INTC_VSECTION 0x60000000 /* 0x60000000-0x60000fff: Interrupt controller 4Kb */
|
||||
# define LPC31_NAND_VSECTION 0x70000000 /* 0x70000000-0x700007ff: NANDFLASH Ctrl 2Kb */
|
||||
#
|
||||
# ifdef CONFIG_LPC31_EXTNAND /* End of the virtual address space */
|
||||
# ifdef CONFIG_ARCH_EXTNAND /* End of the virtual address space */
|
||||
# define LPC31_LAST_VSECTION (LPC31_NAND_VSECTION + (1 << 20))
|
||||
# else
|
||||
# define LPC31_LAST_VSECTION (LPC31_INTC_VSECTION + (1 << 20))
|
||||
|
Loading…
Reference in New Issue
Block a user