From 87958bca215626face5c560778baed9f240c2604 Mon Sep 17 00:00:00 2001 From: patacongo Date: Mon, 18 Feb 2008 18:22:06 +0000 Subject: [PATCH] Still detangling lowuart stuff git-svn-id: https://nuttx.svn.sourceforge.net/svnroot/nuttx/trunk@709 7fd9a85b-ad96-42d3-883c-3090e2eb8679 --- nuttx/arch/z80/src/common/up_internal.h | 9 ++++++++- nuttx/configs/xtrs/include/board.h | 3 +++ nuttx/configs/xtrs/nsh/defconfig | 7 +++++++ nuttx/configs/xtrs/ostest/defconfig | 7 +++++++ nuttx/configs/xtrs/pashello/defconfig | 6 ++++++ nuttx/configs/xtrs/src/xtr_lowputc.c | 8 ++++---- nuttx/configs/xtrs/src/xtr_serial.c | 6 +++--- nuttx/configs/z80sim/include/board.h | 3 +++ nuttx/configs/z80sim/nsh/defconfig | 7 +++++++ nuttx/configs/z80sim/ostest/defconfig | 7 +++++++ nuttx/configs/z80sim/pashello/defconfig | 7 +++++++ nuttx/configs/z80sim/src/z80_lowputc.c | 8 ++++---- nuttx/configs/z80sim/src/z80_serial.c | 6 +++--- nuttx/configs/z8encore000zco/ostest/defconfig | 6 ++++++ 14 files changed, 75 insertions(+), 15 deletions(-) diff --git a/nuttx/arch/z80/src/common/up_internal.h b/nuttx/arch/z80/src/common/up_internal.h index 15da824c3..ec3f6b811 100644 --- a/nuttx/arch/z80/src/common/up_internal.h +++ b/nuttx/arch/z80/src/common/up_internal.h @@ -66,10 +66,17 @@ /* Determine which (if any) console driver to use */ #if CONFIG_NFILE_DESCRIPTORS == 0 || defined(CONFIG_DEV_LOWCONSOLE) -# define CONFIG_USE_LOWUARTINIT 1 +# undef CONFIG_USE_SERIALDRIVER +# undef CONFIG_USE_EARLYSERIALINIT +# ifdef CONFIG_HAVE_LOWUARTINIT +# define CONFIG_USE_LOWUARTINIT 1 +# else +# undef CONFIG_USE_LOWUARTINIT +# endif #elif defined(CONFIG_DEV_CONSOLE) && CONFIG_NFILE_DESCRIPTORS > 0 # define CONFIG_USE_SERIALDRIVER 1 # define CONFIG_USE_EARLYSERIALINIT 1 +# undef CONFIG_USE_LOWUARTINIT #endif /**************************************************************************** diff --git a/nuttx/configs/xtrs/include/board.h b/nuttx/configs/xtrs/include/board.h index 97282fe55..7a3050d6f 100644 --- a/nuttx/configs/xtrs/include/board.h +++ b/nuttx/configs/xtrs/include/board.h @@ -60,6 +60,9 @@ extern "C" { #define EXTERN extern #endif +EXTERN void z80_lowputc(char ch) __naked; +EXTERN char z80_lowgetc(void) __naked; + #undef EXTERN #if defined(__cplusplus) } diff --git a/nuttx/configs/xtrs/nsh/defconfig b/nuttx/configs/xtrs/nsh/defconfig index 62d4047b3..d5467c869 100644 --- a/nuttx/configs/xtrs/nsh/defconfig +++ b/nuttx/configs/xtrs/nsh/defconfig @@ -110,8 +110,13 @@ CONFIG_LINKER_CODE_AREA=0x5300 # CONFIG_JULIAN_TIME - Enables Julian time conversions # CONFIG_START_YEAR, CONFIG_START_MONTH, CONFIG_START_DAY - # Used to initialize the internal time logic. +# CONFIG_HAVE_LOWUARTINIT - Provides low-level UART initialization +# logic as up_lowuartinit (only needed if there is no +# serial driver). # CONFIG_DEV_CONSOLE - Set if architecture-specific logic # provides /dev/console. Enables stdout, stderr, stdin. +# CONFIG_DEV_LOWCONSOLE - Use the simple, low-level serial console +# driver (minimul support) # CONFIG_EXAMPLE=nsh CONFIG_DEBUG=n @@ -125,7 +130,9 @@ CONFIG_START_YEAR=2007 CONFIG_START_MONTH=2 CONFIG_START_DAY=21 CONFIG_JULIAN_TIME=n +CONFIG_HAVE_LOWUARTINIT=n CONFIG_DEV_CONSOLE=n +CONFIG_DEV_LOWCONSOLE=n # # The following can be used to disable categories of diff --git a/nuttx/configs/xtrs/ostest/defconfig b/nuttx/configs/xtrs/ostest/defconfig index 4561837e0..e7cda9a36 100644 --- a/nuttx/configs/xtrs/ostest/defconfig +++ b/nuttx/configs/xtrs/ostest/defconfig @@ -110,8 +110,13 @@ CONFIG_LINKER_CODE_AREA=0x5300 # CONFIG_JULIAN_TIME - Enables Julian time conversions # CONFIG_START_YEAR, CONFIG_START_MONTH, CONFIG_START_DAY - # Used to initialize the internal time logic. +# CONFIG_HAVE_LOWUARTINIT - Provides low-level UART initialization +# logic as up_lowuartinit (only needed if there is no +# serial driver). # CONFIG_DEV_CONSOLE - Set if architecture-specific logic # provides /dev/console. Enables stdout, stderr, stdin. +# CONFIG_DEV_LOWCONSOLE - Use the simple, low-level serial console +# driver (minimul support) # CONFIG_EXAMPLE=ostest CONFIG_DEBUG=n @@ -125,7 +130,9 @@ CONFIG_START_YEAR=2008 CONFIG_START_MONTH=2 CONFIG_START_DAY=21 CONFIG_JULIAN_TIME=n +CONFIG_HAVE_LOWUARTINIT=n CONFIG_DEV_CONSOLE=n +CONFIG_DEV_LOWCONSOLE=n # # The following can be used to disable categories of diff --git a/nuttx/configs/xtrs/pashello/defconfig b/nuttx/configs/xtrs/pashello/defconfig index 824f86d02..7246a8b16 100644 --- a/nuttx/configs/xtrs/pashello/defconfig +++ b/nuttx/configs/xtrs/pashello/defconfig @@ -110,8 +110,13 @@ CONFIG_LINKER_CODE_AREA=0x5300 # CONFIG_JULIAN_TIME - Enables Julian time conversions # CONFIG_START_YEAR, CONFIG_START_MONTH, CONFIG_START_DAY - # Used to initialize the internal time logic. +# CONFIG_HAVE_LOWUARTINIT - Provides low-level UART initialization +# logic as up_lowuartinit (only needed if there is no +# serial driver). # CONFIG_DEV_CONSOLE - Set if architecture-specific logic # provides /dev/console. Enables stdout, stderr, stdin. +# CONFIG_DEV_LOWCONSOLE - Use the simple, low-level serial console +# driver (minimul support) # CONFIG_EXAMPLE=pashello CONFIG_DEBUG=n @@ -125,6 +130,7 @@ CONFIG_START_YEAR=2008 CONFIG_START_MONTH=2 CONFIG_START_DAY=21 CONFIG_JULIAN_TIME=n +CONFIG_HAVE_LOWUARTINIT=n CONFIG_DEV_CONSOLE=n CONFIG_DEV_LOWCONSOLE=n diff --git a/nuttx/configs/xtrs/src/xtr_lowputc.c b/nuttx/configs/xtrs/src/xtr_lowputc.c index be1628444..c85f540d2 100644 --- a/nuttx/configs/xtrs/src/xtr_lowputc.c +++ b/nuttx/configs/xtrs/src/xtr_lowputc.c @@ -77,10 +77,10 @@ ********************************************************************************/ /******************************************************************************** - * Name: up_lowputc + * Name: z80_lowputc ********************************************************************************/ -void up_lowputc(char ch) __naked +void z80_lowputc(char ch) __naked { _asm ld hl, #2 @@ -92,10 +92,10 @@ void up_lowputc(char ch) __naked } /******************************************************************************** - * Name: up_lowgetc + * Name: z80_lowgetc ********************************************************************************/ -char up_lowgetc(void) __naked +char z80_lowgetc(void) __naked { _asm call _TRS80_M3_KBDSCN ;0x002b diff --git a/nuttx/configs/xtrs/src/xtr_serial.c b/nuttx/configs/xtrs/src/xtr_serial.c index dbe69df67..b6a90baf1 100644 --- a/nuttx/configs/xtrs/src/xtr_serial.c +++ b/nuttx/configs/xtrs/src/xtr_serial.c @@ -277,7 +277,7 @@ static int up_ioctl(struct file *filep, int cmd, unsigned long arg) static int up_receive(struct uart_dev_s *dev, uint32 *status) { -// uint8 ch = up_lowgetc(); +// uint8 ch = z80_lowputc(); *status = 0; return ch; @@ -318,7 +318,7 @@ static boolean up_rxavailable(struct uart_dev_s *dev) static void up_send(struct uart_dev_s *dev, int ch) { - up_lowputc(ch); + z80_lowputc(ch); } /**************************************************************************** @@ -409,6 +409,6 @@ void up_serialinit(void) int up_putc(int ch) { - up_lowputc(ch); + z80_lowputc(ch); return 0; } diff --git a/nuttx/configs/z80sim/include/board.h b/nuttx/configs/z80sim/include/board.h index eb7aa3685..4cc4b97da 100644 --- a/nuttx/configs/z80sim/include/board.h +++ b/nuttx/configs/z80sim/include/board.h @@ -55,6 +55,9 @@ extern "C" { #define EXTERN extern #endif +EXTERN void z80_lowputc(char ch) __naked; +EXTERN char z80_lowgetc(void) __naked; + #undef EXTERN #if defined(__cplusplus) } diff --git a/nuttx/configs/z80sim/nsh/defconfig b/nuttx/configs/z80sim/nsh/defconfig index aa852ef8a..190f7af9c 100644 --- a/nuttx/configs/z80sim/nsh/defconfig +++ b/nuttx/configs/z80sim/nsh/defconfig @@ -103,8 +103,13 @@ CONFIG_HAVE_LIBM=n # CONFIG_JULIAN_TIME - Enables Julian time conversions # CONFIG_START_YEAR, CONFIG_START_MONTH, CONFIG_START_DAY - # Used to initialize the internal time logic. +# CONFIG_HAVE_LOWUARTINIT - Provides low-level UART initialization +# logic as up_lowuartinit (only needed if there is no +# serial driver). # CONFIG_DEV_CONSOLE - Set if architecture-specific logic # provides /dev/console. Enables stdout, stderr, stdin. +# CONFIG_DEV_LOWCONSOLE - Use the simple, low-level serial console +# driver (minimul support) # CONFIG_EXAMPLE=nsh CONFIG_DEBUG=n @@ -118,7 +123,9 @@ CONFIG_START_YEAR=2007 CONFIG_START_MONTH=2 CONFIG_START_DAY=21 CONFIG_JULIAN_TIME=n +CONFIG_HAVE_LOWUARTINIT=n CONFIG_DEV_CONSOLE=y +CONFIG_DEV_LOWCONSOLE=n # # The following can be used to disable categories of diff --git a/nuttx/configs/z80sim/ostest/defconfig b/nuttx/configs/z80sim/ostest/defconfig index 50eaec587..3907e75b7 100644 --- a/nuttx/configs/z80sim/ostest/defconfig +++ b/nuttx/configs/z80sim/ostest/defconfig @@ -103,8 +103,13 @@ CONFIG_HAVE_LIBM=n # CONFIG_JULIAN_TIME - Enables Julian time conversions # CONFIG_START_YEAR, CONFIG_START_MONTH, CONFIG_START_DAY - # Used to initialize the internal time logic. +# CONFIG_HAVE_LOWUARTINIT - Provides low-level UART initialization +# logic as up_lowuartinit (only needed if there is no +# serial driver). # CONFIG_DEV_CONSOLE - Set if architecture-specific logic # provides /dev/console. Enables stdout, stderr, stdin. +# CONFIG_DEV_LOWCONSOLE - Use the simple, low-level serial console +# driver (minimul support) # CONFIG_EXAMPLE=ostest CONFIG_DEBUG=n @@ -118,7 +123,9 @@ CONFIG_START_YEAR=2007 CONFIG_START_MONTH=2 CONFIG_START_DAY=21 CONFIG_JULIAN_TIME=n +CONFIG_HAVE_LOWUARTINIT=n CONFIG_DEV_CONSOLE=n +CONFIG_DEV_LOWCONSOLE=n # # The following can be used to disable categories of diff --git a/nuttx/configs/z80sim/pashello/defconfig b/nuttx/configs/z80sim/pashello/defconfig index e56c00e2a..6f2649084 100644 --- a/nuttx/configs/z80sim/pashello/defconfig +++ b/nuttx/configs/z80sim/pashello/defconfig @@ -103,8 +103,13 @@ CONFIG_HAVE_LIBM=n # CONFIG_JULIAN_TIME - Enables Julian time conversions # CONFIG_START_YEAR, CONFIG_START_MONTH, CONFIG_START_DAY - # Used to initialize the internal time logic. +# CONFIG_HAVE_LOWUARTINIT - Provides low-level UART initialization +# logic as up_lowuartinit (only needed if there is no +# serial driver). # CONFIG_DEV_CONSOLE - Set if architecture-specific logic # provides /dev/console. Enables stdout, stderr, stdin. +# CONFIG_DEV_LOWCONSOLE - Use the simple, low-level serial console +# driver (minimul support) # CONFIG_EXAMPLE=pashello CONFIG_DEBUG=n @@ -119,7 +124,9 @@ CONFIG_START_MONTH=2 CONFIG_START_DAY=21 CONFIG_JULIAN_TIME=n CONFIG_DEV_CONSOLE=y +CONFIG_HAVE_LOWUARTINIT=n CONFIG_DEV_LOWCONSOLE=y +CONFIG_DEV_LOWCONSOLE=n # # The following can be used to disable categories of diff --git a/nuttx/configs/z80sim/src/z80_lowputc.c b/nuttx/configs/z80sim/src/z80_lowputc.c index 4996272f9..269d37f92 100644 --- a/nuttx/configs/z80sim/src/z80_lowputc.c +++ b/nuttx/configs/z80sim/src/z80_lowputc.c @@ -69,13 +69,13 @@ ********************************************************************************/ /******************************************************************************** - * Name: up_lowputc + * Name: z80_lowputc * * Data sent to port 0xbe are echoed on stdout by the simulation * ********************************************************************************/ -void up_lowputc(char ch) __naked +void z80_lowputc(char ch) __naked { _asm ld hl, #2 @@ -87,13 +87,13 @@ void up_lowputc(char ch) __naked } /******************************************************************************** - * Name: up_lowgetc + * Name: z80_lowgetc * * Data from stdin can be received on port 0xbe in the simulation * ********************************************************************************/ -char up_lowgetc(void) __naked +char z80_lowgetc(void) __naked { _asm in a, (0xbe) diff --git a/nuttx/configs/z80sim/src/z80_serial.c b/nuttx/configs/z80sim/src/z80_serial.c index 42b0eecc1..974b51b8f 100644 --- a/nuttx/configs/z80sim/src/z80_serial.c +++ b/nuttx/configs/z80sim/src/z80_serial.c @@ -227,7 +227,7 @@ static int up_ioctl(struct file *filep, int cmd, unsigned long arg) static int up_receive(struct uart_dev_s *dev, uint32 *status) { - uint8 ch = up_lowgetc(); + uint8 ch = z80_getputc(); *status = 0; return ch; } @@ -267,7 +267,7 @@ static boolean up_rxavailable(struct uart_dev_s *dev) static void up_send(struct uart_dev_s *dev, int ch) { - up_lowputc(ch); + z80_lowputc(ch); } /**************************************************************************** @@ -358,7 +358,7 @@ void up_serialinit(void) int up_putc(int ch) { - up_lowputc(ch); + z80_lowputc(ch); return 0; } diff --git a/nuttx/configs/z8encore000zco/ostest/defconfig b/nuttx/configs/z8encore000zco/ostest/defconfig index 7f864c456..78b532622 100644 --- a/nuttx/configs/z8encore000zco/ostest/defconfig +++ b/nuttx/configs/z8encore000zco/ostest/defconfig @@ -137,8 +137,13 @@ CONFIG_HAVE_LIBM=n # CONFIG_JULIAN_TIME - Enables Julian time conversions # CONFIG_START_YEAR, CONFIG_START_MONTH, CONFIG_START_DAY - # Used to initialize the internal time logic. +# CONFIG_HAVE_LOWUARTINIT - Provides low-level UART initialization +# logic as up_lowuartinit (only needed if there is no +# serial driver). # CONFIG_DEV_CONSOLE - Set if architecture-specific logic # provides /dev/console. Enables stdout, stderr, stdin. +# CONFIG_DEV_LOWCONSOLE - Use the simple, low-level serial console +# driver (minimul support) # CONFIG_EXAMPLE=ostest CONFIG_DEBUG=y @@ -152,6 +157,7 @@ CONFIG_START_YEAR=2008 CONFIG_START_MONTH=2 CONFIG_START_DAY=17 CONFIG_JULIAN_TIME=n +CONFIG_HAVE_LOWUARTINIT=y CONFIG_DEV_CONSOLE=n CONFIG_DEV_LOWCONSOLE=n