nuttx/arch/z80/src/z180/Kconfig

477 lines
11 KiB
Plaintext
Raw Normal View History

#
# For a description of the syntax of this configuration file,
# see misc/tools/kconfig-language.txt.
#
if ARCH_CHIP_Z180
choice
prompt "Toolchain Selection"
default Z180_TOOLCHAIN_SDCCW if HOST_WINDOWS
default Z180_TOOLCHAIN_SDCCL if !HOST_WINDOWS
config Z180_TOOLCHAIN_SDCCL
bool "SDCC for Linux, MAC OSX, or Cygwin"
depends on !WINDOWS_NATIVE
config Z180_TOOLCHAIN_SDCCW
bool "SDCC for Windows"
depends on HOST_WINDOWS
endchoice
config LINKER_HOME_AREA
hex "Physical start of _HOME area"
default 0x0000
---help---
Physical address of the start of the linker HOME area. Default: 0x0000
config LINKER_CODE_AREA
hex "Physical start of _CODE area"
default 0x0200
---help---
Physical address of the start of the linker _CODE area. Default: 0x0200
config LINKER_DATA_AREA
hex "Physical start of _DATA area"
default 0x8000
---help---
Physical address of the start of the linker _DATA area. Default: 0x8000
config LINKER_ROM_AT_0000
bool "ROM at Physical 0x0000"
default n
---help---
Some architectures may have ROM located at physical address zero. In this
case, a special version of the "head" file must be used.
config Z180_BANKAREA_VIRTBASE
hex "Virtual Start of Bank Area"
default 0x8000
---help---
This setting provides the virtual address of the start of the Bank Area.
NOTE that 0x0000 <= Z180_BANKAREA_BASE <= Z180_COMMONAREA_BASE is required!
Default: 0x8000
NuttX Memory Organization:
Common Area 0: This area holds the common NuttX code that is
directly call-able from all application threads. Common Area
always starts at virtual address 0x0000 and extends to the
Bank Area
Base Area: This area holds the common NuttX data (including the
share-able heap) that is accessible from all applications and
extends to Common Area 1.
NOTE: That is execution from RAM, the common NuttX code and
data may be contiguous and lie in the same region (either
Common Area 0 or the Bank Area). The two regions above would
apply in a ROM'ed system, where Common Area 1 is ROM and the
Base Area is RAM.
Common Area 1: This area holds the code and data that is unique
to a particular task. his area extends to the end of the virtual
address space. All tasks share the same virtual Common Area 2
virtual address (but each has a unique mapping to different,
underlying physical addresses).
config Z180_BANKAREA_PHYSBASE
hex "Physical Start of Bank Area"
default 0x08000
---help---
This setting provides the physical address of the start of the Bank Area.
Default: 0x08000
config Z180_COMMON1AREA_VIRTBASE
hex "Virtual Start of Common Area 1"
default 0xc000
---help---
This setting provides the virtual address of the start of the Common
Area 1. NOTE that 0x0000 <= Z180_BANKAREA_BASE <= Z180_COMMONAREA_BASE
is required! Default: 0xc000
NuttX Memory Organization:
Common Area 0: This area holds the common NuttX code that is
directly call-able from all application threads. Common Area
always starts at virtual address 0x0000 and extends to the
Bank Area
Base Area: This area holds the common NuttX data (including the
share-able heap) that is accessible from all applications and
extends to Common Area 1.
NOTE: That is execution from RAM, the common NuttX code and
data may be contiguous and lie in the same region (either
Common Area 0 or the Bank Area). The two regions above would
apply in a ROM'ed system, where Common Area 1 is ROM and the
Base Area is RAM.
Common Area 1: This area holds the code and data that is unique
to a particular task. his area extends to the end of the virtual
address space. All tasks share the same virtual Common Area 2
virtual address (but each has a unique mapping to different,
underlying physical addresses).
config Z180_PHYSHEAP_START
hex "Physical Start of Free Memory"
default 0x0c000
---help---
This setting provides the physical address of the start of free physical
memory that will be used to allocate memory for tasks (Common Area 1).
Default: 0x0c000
config Z180_PHYSHEAP_END
hex "Physical End(+1) of Free Memory"
default 0x100000
---help---
This setting provides the physical address of the end(+1) of free physical
memory that will be used to allocate memory for tasks (Common Area 1).
Default: 0x100000
config ARCH_HAVEHEAD
bool "Board-specific Head File"
default n
---help---
Use a board-specific version of the "head" file in the
configs/<board-name>/src directory
menu "Z180 Peripheral Support"
config Z180_UART0
bool "UART0"
default n
---help---
Select to enable a serial port on UART0. On the Z8x182, bits 0-4 of
port B will not be available if ASCI channel 0 is selected.
config Z180_UART1
bool "UART1"
default n
---help---
Select to enable a serial port on UART1. On the Z8x182, bits 5-7 of
port B will not be available if ASCI channel 0 is selected.
config Z180_SCC
bool "SCC"
default n
depends on ARCH_CHIP_Z80181 || ARCH_CHIP_Z8L181
---help---
Select to enable a serial port on the SCC
config Z180_ESCCA
bool "ESCC Channel A"
default n
depends on ARCH_CHIP_Z80182 || ARCH_CHIP_Z8L182
---help---
Select to enable a serial port on ESCC Channel A. Not available
if port C is selected.
config Z180_ESCCB
bool "ESCC Channel B"
default n
depends on (ARCH_CHIP_Z80182 || ARCH_CHIP_Z8L182) && !Z180_MIMIC
---help---
Select to enable a serial port on ESCC Channel B
config Z180_PRT1
bool "Timer 1"
default n
---help---
Select to enable a Programmable Reload Timer 1 (PRT1, PRT0 is used
by NuttX as the system timer)
# config Z180_DMA0
# bool "DMA0"
# default n
# ---help---
# Select to enable support for DMA0
#
# config Z180_DMA1
# bool "DMA1"
# default n
# ---help---
# Select to enable support for DMA1
config Z180_PORTA
bool "PORT A"
default n
depends on (ARCH_CHIP_Z80181 || ARCH_CHIP_Z8L181 || ARCH_CHIP_Z80182 || ARCH_CHIP_Z8L182) && !Z180_CTC
---help---
Select to enable a Port A (called PIA1 on the Z8x181)
config Z180_PORTB
bool "PORT B"
default n
depends on ARCH_CHIP_Z80181 || ARCH_CHIP_Z8L181 || ARCH_CHIP_Z80182 || ARCH_CHIP_Z8L182
---help---
Select to enable a Port B (called PIA2 on the Z8x181). On the Z8x182,
Bits 5-7 will not be available if ASCI channel 1 is used; Bits 0-4 will
not be available if ASCI channel 0 is used.
config Z180_PORTC
bool "PORT C"
default n
depends on (ARCH_CHIP_Z80182 || ARCH_CHIP_Z8L182) && !Z180_ESCCA
---help---
Select to enable a Port C. Not available if ESCC channel A is selected.
config Z180_CTC
bool "CTC"
default n
depends on ARCH_CHIP_Z80181 || ARCH_CHIP_Z8L181
---help---
Select to enable the Counter/Timer (CTC)
config Z180_MIMIC
bool "16550 MIMIC"
default n
depends on ARCH_CHIP_Z80182 || ARCH_CHIP_Z8L182
---help---
Select to enable the 16550 MIMIC
endmenu
choice
prompt "Serial console"
default NO_SERIAL_CONSOLE
config Z180_UART0_SERIAL_CONSOLE
bool "UART0"
depends on Z180_UART0
config Z180_UART1_SERIAL_CONSOLE
bool "UART1"
depends on Z180_UART1
config Z180_SCC_SERIAL_CONSOLE
bool "SCC"
depends on Z180_SCC
config Z180_ESCCA_SERIAL_CONSOLE
bool "ESCC Channel A"
depends on Z180_ESCCA
config Z180_ESCCB_SERIAL_CONSOLE
bool "ESCC Channel B"
depends on Z180_ESCCB
endchoice
menu "UART0 Configuration"
depends on Z180_UART0
config Z180_UART0_RXBUFSIZE
int "Receive Buffer Size"
default 64
help
Characters are buffered as they are received. This specifies
the size of the receive buffer.
config Z180_UART0_TXBUFSIZE
int "Transmit Buffer Size"
default 64
help
Characters are buffered before being sent. This specifies
the size of the transmit buffer.
config Z180_UART0_BAUD
int "Baud Rate"
default 9600
help
The configured BAUD of the SCC.
config Z180_UART0_BITS
int "Character Size"
default 8
help
The number of bits in one character. Must be either 5, 6, 7, or 8.
config Z180_UART0_PARITY
int "Parity Setting"
default 0
help
0=no parity, 1=odd parity, 2=even parity
config Z180_UART0_2STOP
int "use 2 stop bits"
default 0
help
1=Two stop bits
endmenu
menu "UART1 Configuration"
depends on Z180_UART1
config Z180_UART1_RXBUFSIZE
int "Receive Buffer Size"
default 64
help
Characters are buffered as they are received. This specifies
the size of the receive buffer.
config Z180_UART1_TXBUFSIZE
int "Transmit Buffer Size"
default 64
help
Characters are buffered before being sent. This specifies
the size of the transmit buffer.
config Z180_UART1_BAUD
int "Baud Rate"
default 9600
help
The configured BAUD of the SCC.
config Z180_UART1_BITS
int "Character Size"
default 8
help
The number of bits in one character. Must be either 5, 6, 7, or 8.
config Z180_UART1_PARITY
int "Parity Setting"
default 0
help
0=no parity, 1=odd parity, 2=even parity
config Z180_UART1_2STOP
int "use 2 stop bits"
default 0
help
1=Two stop bits
endmenu
menu "SCC Configuration"
depends on Z180_SCC
config Z180_SCC_RXBUFSIZE
int "Receive Buffer Size"
default 64
help
Characters are buffered as they are received. This specifies
the size of the receive buffer.
config Z180_SCC_TXBUFSIZE
int "Transmit Buffer Size"
default 64
help
Characters are buffered before being sent. This specifies
the size of the transmit buffer.
config Z180_SCC_BAUD
int "Baud Rate"
default 9600
help
The configured BAUD of the SCC.
config Z180_SCC_BITS
int "Character Size"
default 8
help
The number of bits in one character. Must be either 5, 6, 7, or 8.
config Z180_SCC_PARITY
int "Parity Setting"
default 0
help
0=no parity, 1=odd parity, 2=even parity
config Z180_SCC_2STOP
int "use 2 stop bits"
default 0
help
1=Two stop bits
endmenu
menu "ESCC Channel A Configuration"
depends on Z180_ESCCA
config Z180_ESCCA_RXBUFSIZE
int "Receive Buffer Size"
default 64
help
Characters are buffered as they are received. This specifies
the size of the receive buffer.
config Z180_ESCCA_TXBUFSIZE
int "Transmit Buffer Size"
default 64
help
Characters are buffered before being sent. This specifies
the size of the transmit buffer.
config Z180_ESCCA_BAUD
int "Baud Rate"
default 9600
help
The configured BAUD of the SCC.
config Z180_ESCCA_BITS
int "Character Size"
default 8
help
The number of bits in one character. Must be either 5, 6, 7, or 8.
config Z180_ESCCA_PARITY
int "Parity Setting"
default 0
help
0=no parity, 1=odd parity, 2=even parity
config Z180_ESCCA_2STOP
int "use 2 stop bits"
default 0
help
1=Two stop bits
endmenu
menu "ESCC Channel B Configuration"
depends on Z180_ESCCB
config Z180_ESCCB_RXBUFSIZE
int "Receive Buffer Size"
default 64
help
Characters are buffered as they are received. This specifies
the size of the receive buffer.
config Z180_ESCCB_TXBUFSIZE
int "Transmit Buffer Size"
default 64
help
Characters are buffered before being sent. This specifies
the size of the transmit buffer.
config Z180_ESCCB_BAUD
int "Baud Rate"
default 9600
help
The configured BAUD of the SCC.
config Z180_ESCCB_BITS
int "Character Size"
default 8
help
The number of bits in one character. Must be either 5, 6, 7, or 8.
config Z180_ESCCB_PARITY
int "Parity Setting"
default 0
help
0=no parity, 1=odd parity, 2=even parity
config Z180_ESCCB_2STOP
int "use 2 stop bits"
default 0
help
1=Two stop bits
endmenu
endif