forked from Archive/PX4-Autopilot
More z180 serial logic
git-svn-id: http://svn.code.sf.net/p/nuttx/code/trunk@5437 42af7a65-404d-4744-a932-0658087f49c3
This commit is contained in:
parent
9ef2bd0745
commit
67b2e69b23
|
@ -18,6 +18,7 @@ config ARCH_CHIP_Z8018006VSG
|
|||
select ARCH_CHIP_Z180
|
||||
select ARCH_CHIP_Z80180
|
||||
select ADDRENV
|
||||
select HAVE_LOWSERIALINIT
|
||||
---help---
|
||||
Z180: 68-pin PLCC Z80180
|
||||
|
||||
|
@ -26,6 +27,7 @@ config ARCH_CHIP_Z8018010VSG
|
|||
select ARCH_CHIP_Z180
|
||||
select ARCH_CHIP_Z80180
|
||||
select ADDRENV
|
||||
select HAVE_LOWSERIALINIT
|
||||
---help---
|
||||
Z180: 68-pin PLCC Z80180
|
||||
|
||||
|
@ -34,6 +36,7 @@ config ARCH_CHIP_Z8018008VSG
|
|||
select ARCH_CHIP_Z180
|
||||
select ARCH_CHIP_Z80180
|
||||
select ADDRENV
|
||||
select HAVE_LOWSERIALINIT
|
||||
---help---
|
||||
Z180: 68-pin PLCC Z80180
|
||||
|
||||
|
@ -42,6 +45,7 @@ config ARCH_CHIP_Z8018010FSG
|
|||
select ARCH_CHIP_Z180
|
||||
select ARCH_CHIP_Z80180
|
||||
select ADDRENV
|
||||
select HAVE_LOWSERIALINIT
|
||||
---help---
|
||||
Z180: 80-pin QFP (11 pins N/C) Z80180
|
||||
|
||||
|
@ -50,6 +54,7 @@ config ARCH_CHIP_Z8018008VEG
|
|||
select ARCH_CHIP_Z180
|
||||
select ARCH_CHIP_Z80180
|
||||
select ADDRENV
|
||||
select HAVE_LOWSERIALINIT
|
||||
---help---
|
||||
Z180: 68-pin PLCC Z80180
|
||||
|
||||
|
@ -58,6 +63,7 @@ config ARCH_CHIP_Z8018006VEG
|
|||
select ARCH_CHIP_Z180
|
||||
select ARCH_CHIP_Z80180
|
||||
select ADDRENV
|
||||
select HAVE_LOWSERIALINIT
|
||||
---help---
|
||||
Z180: 68-pin PLCC Z80180
|
||||
|
||||
|
@ -66,6 +72,7 @@ config ARCH_CHIP_Z8018006PSG
|
|||
select ARCH_CHIP_Z180
|
||||
select ARCH_CHIP_Z80180
|
||||
select ADDRENV
|
||||
select HAVE_LOWSERIALINIT
|
||||
---help---
|
||||
Z180: 64-pin DIP 6 MHz 5V Z80180
|
||||
|
||||
|
@ -74,6 +81,7 @@ config ARCH_CHIP_Z8018008FSG
|
|||
select ARCH_CHIP_Z180
|
||||
select ARCH_CHIP_Z80180
|
||||
select ADDRENV
|
||||
select HAVE_LOWSERIALINIT
|
||||
---help---
|
||||
Z180: 80-pin QFP (11 pins N/C) 8MHz 5V Z80180
|
||||
|
||||
|
@ -82,6 +90,7 @@ config ARCH_CHIP_Z8018010PSG
|
|||
select ARCH_CHIP_Z180
|
||||
select ARCH_CHIP_Z80180
|
||||
select ADDRENV
|
||||
select HAVE_LOWSERIALINIT
|
||||
---help---
|
||||
Z180: 64-pin DIP 10MHz 5V Z80180
|
||||
|
||||
|
@ -90,6 +99,7 @@ config ARCH_CHIP_Z8018006PEG
|
|||
select ARCH_CHIP_Z180
|
||||
select ARCH_CHIP_Z80180
|
||||
select ADDRENV
|
||||
select HAVE_LOWSERIALINIT
|
||||
---help---
|
||||
Z180: 64-pin DIP 6MHz 5V Z80180
|
||||
|
||||
|
@ -98,6 +108,7 @@ config ARCH_CHIP_Z8018010VEG
|
|||
select ARCH_CHIP_Z180
|
||||
select ARCH_CHIP_Z80180
|
||||
select ADDRENV
|
||||
select HAVE_LOWSERIALINIT
|
||||
---help---
|
||||
68-pin PLCC 10MHz 5V Z80180
|
||||
|
||||
|
@ -106,6 +117,7 @@ config ARCH_CHIP_Z8018010PEG
|
|||
select ARCH_CHIP_Z180
|
||||
select ARCH_CHIP_Z80180
|
||||
select ADDRENV
|
||||
select HAVE_LOWSERIALINIT
|
||||
---help---
|
||||
Z180: 64-pin DIP 10MHz 5V Z80180
|
||||
|
||||
|
@ -114,6 +126,7 @@ config ARCH_CHIP_Z8018008PSG
|
|||
select ARCH_CHIP_Z180
|
||||
select ARCH_CHIP_Z80180
|
||||
select ADDRENV
|
||||
select HAVE_LOWSERIALINIT
|
||||
---help---
|
||||
Z180: 64-pin DIP 8MHz 5V Z80180
|
||||
|
||||
|
@ -122,6 +135,7 @@ config ARCH_CHIP_Z8018006FSG
|
|||
select ARCH_CHIP_Z180
|
||||
select ARCH_CHIP_Z80180
|
||||
select ADDRENV
|
||||
select HAVE_LOWSERIALINIT
|
||||
---help---
|
||||
Z180: 80-pin QFP (11 pins N/C) 6MHz 5V Z80180
|
||||
|
||||
|
@ -130,30 +144,35 @@ config ARCH_CHIP_Z8018000XSO
|
|||
select ARCH_CHIP_Z180
|
||||
select ARCH_CHIP_Z80180
|
||||
select ADDRENV
|
||||
select HAVE_LOWSERIALINIT
|
||||
|
||||
config ARCH_CHIP_Z8018010FEG
|
||||
bool "Z8018010FEG"
|
||||
select ARCH_CHIP_Z180
|
||||
select ARCH_CHIP_Z80180
|
||||
select ADDRENV
|
||||
select HAVE_LOWSERIALINIT
|
||||
|
||||
config ARCH_CHIP_Z8018000WSO
|
||||
bool "Z8018000WSO"
|
||||
select ARCH_CHIP_Z180
|
||||
select ARCH_CHIP_Z80180
|
||||
select ADDRENV
|
||||
select HAVE_LOWSERIALINIT
|
||||
|
||||
config ARCH_CHIP_Z8018008PEG
|
||||
bool "Z8018008PEG"
|
||||
select ARCH_CHIP_Z180
|
||||
select ARCH_CHIP_Z80180
|
||||
select ADDRENV
|
||||
select HAVE_LOWSERIALINIT
|
||||
|
||||
config ARCH_CHIP_Z8018110FEG
|
||||
bool "Z8018110FEG"
|
||||
select ARCH_CHIP_Z180
|
||||
select ARCH_CHIP_Z80181
|
||||
select ADDRENV
|
||||
select HAVE_LOWSERIALINIT
|
||||
---help---
|
||||
Z180: 100-pin QFP Z80181
|
||||
|
||||
|
@ -162,6 +181,7 @@ config ARCH_CHIP_Z8018233FSG
|
|||
select ARCH_CHIP_Z180
|
||||
select ARCH_CHIP_Z80182
|
||||
select ADDRENV
|
||||
select HAVE_LOWSERIALINIT
|
||||
---help---
|
||||
100-pin QFP Z80182
|
||||
|
||||
|
@ -170,6 +190,7 @@ config ARCH_CHIP_Z8018220AEG
|
|||
select ARCH_CHIP_Z180
|
||||
select ARCH_CHIP_Z80182
|
||||
select ADDRENV
|
||||
select HAVE_LOWSERIALINIT
|
||||
---help---
|
||||
Z180: 100-pin LQFP 20MHz 5V Z80182
|
||||
|
||||
|
@ -178,6 +199,7 @@ config ARCH_CHIP_Z8018216FSG
|
|||
select ARCH_CHIP_Z180
|
||||
select ARCH_CHIP_Z80182
|
||||
select ADDRENV
|
||||
select HAVE_LOWSERIALINIT
|
||||
---help---
|
||||
Z180: 100-pin QFP 16MHz 5V Z80182
|
||||
|
||||
|
@ -186,6 +208,7 @@ config ARCH_CHIP_Z8018216ASG
|
|||
select ARCH_CHIP_Z180
|
||||
select ARCH_CHIP_Z80182
|
||||
select ADDRENV
|
||||
select HAVE_LOWSERIALINIT
|
||||
---help---
|
||||
Z180: 100-pin LQFP Z80182
|
||||
|
||||
|
@ -194,6 +217,7 @@ config ARCH_CHIP_Z8018233ASG
|
|||
select ARCH_CHIP_Z180
|
||||
select ARCH_CHIP_Z80182
|
||||
select ADDRENV
|
||||
select HAVE_LOWSERIALINIT
|
||||
---help---
|
||||
Z180: 100-pin LQFP 33MHz 5V Z80182
|
||||
|
||||
|
@ -202,6 +226,7 @@ config ARCH_CHIP_Z8019520FSG
|
|||
select ARCH_CHIP_Z180
|
||||
select ARCH_CHIP_Z80195
|
||||
select ADDRENV
|
||||
select HAVE_LOWSERIALINIT
|
||||
---help---
|
||||
Z180: 100-pin QFP 20MHz 5V Z80195
|
||||
|
||||
|
@ -210,6 +235,7 @@ config ARCH_CHIP_Z8019533FSG
|
|||
select ARCH_CHIP_Z180
|
||||
select ARCH_CHIP_Z80195
|
||||
select ADDRENV
|
||||
select HAVE_LOWSERIALINIT
|
||||
---help---
|
||||
Z180: 100-pin QFP 33MHz 5V Z80195
|
||||
|
||||
|
@ -218,6 +244,7 @@ config ARCH_CHIP_Z8L18020VSG
|
|||
select ARCH_CHIP_Z180
|
||||
select ARCH_CHIP_Z8L180
|
||||
select ADDRENV
|
||||
select HAVE_LOWSERIALINIT
|
||||
---help---
|
||||
Z180: 68-pinn PLCC Z8L180
|
||||
|
||||
|
@ -226,6 +253,7 @@ config ARCH_CHIP_Z8L18020FSG
|
|||
select ARCH_CHIP_Z180
|
||||
select ARCH_CHIP_Z8L180
|
||||
select ADDRENV
|
||||
select HAVE_LOWSERIALINIT
|
||||
---help---
|
||||
Z180: 80-pin GFP 20MHz 3.3V Z8L180
|
||||
|
||||
|
@ -234,12 +262,14 @@ config ARCH_CHIP_Z8L18020PSG
|
|||
select ARCH_CHIP_Z180
|
||||
select ARCH_CHIP_Z8L180
|
||||
select ADDRENV
|
||||
select HAVE_LOWSERIALINIT
|
||||
|
||||
config ARCH_CHIP_Z8L18220ASG
|
||||
bool "Z8L18220ASG"
|
||||
select ARCH_CHIP_Z180
|
||||
select ARCH_CHIP_Z8L182
|
||||
select ADDRENV
|
||||
select HAVE_LOWSERIALINIT
|
||||
---help---
|
||||
Z180: 100-pin LQFP Z8L182
|
||||
|
||||
|
@ -248,6 +278,7 @@ config ARCH_CHIP_Z8L18220FSG
|
|||
select ARCH_CHIP_Z180
|
||||
select ARCH_CHIP_Z8L182
|
||||
select ADDRENV
|
||||
select HAVE_LOWSERIALINIT
|
||||
---help---
|
||||
100-pin QFP 20MHz 3.3V Z8L182
|
||||
|
||||
|
@ -256,12 +287,14 @@ config ARCH_CHIP_Z8L18220AEG
|
|||
select ARCH_CHIP_Z180
|
||||
select ARCH_CHIP_Z8L182
|
||||
select ADDRENV
|
||||
select HAVE_LOWSERIALINIT
|
||||
|
||||
config ARCH_CHIP_Z8S18020VSG
|
||||
bool "Z8S18020VSG"
|
||||
select ARCH_CHIP_Z180
|
||||
select ARCH_CHIP_Z8S180
|
||||
select ADDRENV
|
||||
select HAVE_LOWSERIALINIT
|
||||
---help---
|
||||
Z180: 68-pin PLCC Z8S180
|
||||
|
||||
|
@ -270,6 +303,7 @@ config ARCH_CHIP_Z8S18020VSG1960
|
|||
select ARCH_CHIP_Z180
|
||||
select ARCH_CHIP_Z8S180
|
||||
select ADDRENV
|
||||
select HAVE_LOWSERIALINIT
|
||||
---help---
|
||||
Z180: 68-pin PLCC Z8S180
|
||||
|
||||
|
@ -278,6 +312,7 @@ config ARCH_CHIP_Z8S18033VSG
|
|||
select ARCH_CHIP_Z180
|
||||
select ARCH_CHIP_Z8S180
|
||||
select ADDRENV
|
||||
select HAVE_LOWSERIALINIT
|
||||
---help---
|
||||
Z180: 68-pin PLCC Z8S180
|
||||
|
||||
|
@ -286,6 +321,7 @@ config ARCH_CHIP_Z8S18010FSG
|
|||
select ARCH_CHIP_Z180
|
||||
select ARCH_CHIP_Z8S180
|
||||
select ADDRENV
|
||||
select HAVE_LOWSERIALINIT
|
||||
---help---
|
||||
80-pin QFP Z8S180
|
||||
|
||||
|
@ -294,6 +330,7 @@ config ARCH_CHIP_Z8S18010VEG
|
|||
select ARCH_CHIP_Z180
|
||||
select ARCH_CHIP_Z8S180
|
||||
select ADDRENV
|
||||
select HAVE_LOWSERIALINIT
|
||||
---help---
|
||||
Z180: 68-pin PLCC Z8S180
|
||||
|
||||
|
@ -302,6 +339,7 @@ config ARCH_CHIP_Z8S18020VEG
|
|||
select ARCH_CHIP_Z180
|
||||
select ARCH_CHIP_Z8S180
|
||||
select ADDRENV
|
||||
select HAVE_LOWSERIALINIT
|
||||
---help---
|
||||
Z180: 68-pin PLCC Z8S180
|
||||
|
||||
|
@ -310,6 +348,7 @@ config ARCH_CHIP_Z8S18010VSG
|
|||
select ARCH_CHIP_Z180
|
||||
select ARCH_CHIP_Z8S180
|
||||
select ADDRENV
|
||||
select HAVE_LOWSERIALINIT
|
||||
---help---
|
||||
Z180: 68-pin PLCC Z8S180
|
||||
|
||||
|
@ -318,6 +357,7 @@ config ARCH_CHIP_Z8S18020PSG
|
|||
select ARCH_CHIP_Z180
|
||||
select ARCH_CHIP_Z8S180
|
||||
select ADDRENV
|
||||
select HAVE_LOWSERIALINIT
|
||||
---help---
|
||||
64-pin DIP 10Mhz 5V Z8S180
|
||||
|
||||
|
@ -326,6 +366,7 @@ config ARCH_CHIP_Z8S18033FSG
|
|||
select ARCH_CHIP_Z180
|
||||
select ARCH_CHIP_Z8S180
|
||||
select ADDRENV
|
||||
select HAVE_LOWSERIALINIT
|
||||
---help---
|
||||
Z180: 80-pin QFP 33MHz 5V Z8S180
|
||||
|
||||
|
@ -334,6 +375,7 @@ config ARCH_CHIP_Z8S18033FEG
|
|||
select ARCH_CHIP_Z180
|
||||
select ARCH_CHIP_Z8S180
|
||||
select ADDRENV
|
||||
select HAVE_LOWSERIALINIT
|
||||
---help---
|
||||
Z180: 80-pin QFP 33MHz 5V Z8S180
|
||||
|
||||
|
@ -342,6 +384,7 @@ config ARCH_CHIP_Z8S18020FSG
|
|||
select ARCH_CHIP_Z180
|
||||
select ARCH_CHIP_Z8S180
|
||||
select ADDRENV
|
||||
select HAVE_LOWSERIALINIT
|
||||
---help---
|
||||
Z180: 80-pin QFP 20MHz 5V Z8S180
|
||||
|
||||
|
@ -350,6 +393,7 @@ config ARCH_CHIP_Z8S18033VEG
|
|||
select ARCH_CHIP_Z180
|
||||
select ARCH_CHIP_Z8S180
|
||||
select ADDRENV
|
||||
select HAVE_LOWSERIALINIT
|
||||
---help---
|
||||
Z180: 68-pin PLCC 33MHz 5V Z8S180
|
||||
|
||||
|
@ -358,6 +402,7 @@ config ARCH_CHIP_Z8S18010PSG
|
|||
select ARCH_CHIP_Z180
|
||||
select ARCH_CHIP_Z8S180
|
||||
select ADDRENV
|
||||
select HAVE_LOWSERIALINIT
|
||||
---help---
|
||||
Z180: 64-pin DIP 10MHz 5V Z8S180
|
||||
|
||||
|
@ -366,25 +411,28 @@ config ARCH_CHIP_Z8S18020FEG
|
|||
select ARCH_CHIP_Z180
|
||||
select ARCH_CHIP_Z8S180
|
||||
select ADDRENV
|
||||
select HAVE_LOWSERIALINIT
|
||||
|
||||
config ARCH_CHIP_Z8S18010PEG
|
||||
bool "Z8S18010PEG"
|
||||
select ARCH_CHIP_Z180
|
||||
select ARCH_CHIP_Z8S180
|
||||
select ADDRENV
|
||||
select HAVE_LOWSERIALINIT
|
||||
|
||||
config ARCH_CHIP_Z8S18010FEG
|
||||
bool "Z8S18010FEG"
|
||||
select ARCH_CHIP_Z180
|
||||
select ARCH_CHIP_Z8S180
|
||||
select ADDRENV
|
||||
select HAVE_LOWSERIALINIT
|
||||
|
||||
config ARCH_CHIP_Z8F6403
|
||||
bool "Z8F6403"
|
||||
select ARCH_CHIP_Z8
|
||||
select ARCH_CHIP_Z8F640X
|
||||
select ENDIAN_BIG
|
||||
select HAVE_LOWUARTINIT
|
||||
select HAVE_LOWSERIALINIT
|
||||
---help---
|
||||
ZiLOG Z8F6403 (z8 Encore)
|
||||
|
||||
|
@ -393,28 +441,28 @@ config ARCH_CHIP_Z8F6423
|
|||
select ARCH_CHIP_Z8
|
||||
select ARCH_CHIP_Z8F642X
|
||||
select ENDIAN_BIG
|
||||
select HAVE_LOWUARTINIT
|
||||
select HAVE_LOWSERIALINIT
|
||||
---help---
|
||||
ZiLOG Z8F6423 (z8 Encore)
|
||||
|
||||
config ARCH_CHIP_EZ80F91
|
||||
bool "EZ80F91"
|
||||
select ARCH_CHIP_EZ80
|
||||
select HAVE_LOWUARTINIT
|
||||
select HAVE_LOWSERIALINIT
|
||||
---help---
|
||||
ZiLOG EZ80F91 (ez80 Acclaim)
|
||||
|
||||
config ARCH_CHIP_EZ80F92
|
||||
bool "EZ80F92"
|
||||
select ARCH_CHIP_EZ80
|
||||
select HAVE_LOWUARTINIT
|
||||
select HAVE_LOWSERIALINIT
|
||||
---help---
|
||||
ZiLOG EZ80F92 (ez80 Acclaim)
|
||||
|
||||
config ARCH_CHIP_EZ80F93
|
||||
bool "EZ80F93"
|
||||
select ARCH_CHIP_EZ80
|
||||
select HAVE_LOWUARTINIT
|
||||
select HAVE_LOWSERIALINIT
|
||||
---help---
|
||||
ZiLOG EZ80F93 (ez80 Acclaim)
|
||||
|
||||
|
@ -456,7 +504,7 @@ config ARCH_CHIP_Z8
|
|||
config ARCH_CHIP_EZ80
|
||||
bool
|
||||
|
||||
config HAVE_LOWUARTINIT
|
||||
config HAVE_LOWSERIALINIT
|
||||
bool
|
||||
|
||||
config ARCH_CHIP
|
||||
|
|
|
@ -161,8 +161,8 @@ void up_initialize(void)
|
|||
|
||||
/* Initialize the serial device driver */
|
||||
|
||||
#ifdef USE_LOWUARTINIT
|
||||
up_lowuartinit();
|
||||
#ifdef USE_LOWSERIALINIT
|
||||
up_lowserialinit();
|
||||
#endif
|
||||
|
||||
/* Initialize the console device driver */
|
||||
|
|
|
@ -70,14 +70,14 @@
|
|||
|
||||
#if CONFIG_NFILE_DESCRIPTORS == 0 || defined(CONFIG_DEV_LOWCONSOLE)
|
||||
# undef USE_SERIALDRIVER
|
||||
# ifdef CONFIG_HAVE_LOWUARTINIT
|
||||
# define USE_LOWUARTINIT 1
|
||||
# ifdef CONFIG_HAVE_LOWSERIALINIT
|
||||
# define USE_LOWSERIALINIT 1
|
||||
# else
|
||||
# undef USE_LOWUARTINIT
|
||||
# undef USE_LOWSERIALINIT
|
||||
# endif
|
||||
#elif defined(CONFIG_DEV_CONSOLE) && CONFIG_NFILE_DESCRIPTORS > 0
|
||||
# define USE_SERIALDRIVER 1
|
||||
# undef USE_LOWUARTINIT
|
||||
# undef USE_LOWSERIALINIT
|
||||
#endif
|
||||
|
||||
/****************************************************************************
|
||||
|
@ -105,8 +105,8 @@ extern "C" {
|
|||
EXTERN void up_irqinitialize(void);
|
||||
EXTERN int up_timerisr(int irq, FAR chipreg_t *regs);
|
||||
|
||||
#ifdef USE_LOWUARTINIT
|
||||
EXTERN void up_lowuartinit(void);
|
||||
#ifdef USE_LOWSERIALINIT
|
||||
EXTERN void up_lowserialinit(void);
|
||||
#endif
|
||||
|
||||
/* Defined in up_doirq.c */
|
||||
|
|
|
@ -49,7 +49,7 @@
|
|||
#include "chip/chip.h"
|
||||
#include "common/up_internal.h"
|
||||
|
||||
#ifdef USE_LOWUARTINIT
|
||||
#ifdef USE_LOWSERIALINIT
|
||||
|
||||
/****************************************************************************
|
||||
* Private Definitions
|
||||
|
@ -176,10 +176,10 @@ static void ez80_setbaud(void)
|
|||
****************************************************************************/
|
||||
|
||||
/****************************************************************************
|
||||
* Name: up_lowuartinit
|
||||
* Name: up_lowserialinit
|
||||
****************************************************************************/
|
||||
|
||||
void up_lowuartinit(void)
|
||||
void up_lowserialinit(void)
|
||||
{
|
||||
#ifdef HAVE_SERIAL
|
||||
uint8_t regval;
|
||||
|
@ -253,4 +253,4 @@ void up_lowuartinit(void)
|
|||
#endif /* HAVE_SERIAL */
|
||||
}
|
||||
|
||||
#endif /* USE_LOWUARTINIT */
|
||||
#endif /* USE_LOWSERIALINIT */
|
||||
|
|
|
@ -156,14 +156,14 @@ config Z180_UART1
|
|||
config Z180_SCC
|
||||
bool "SCC"
|
||||
default n
|
||||
depends on ARCH_CHIP_Z8L181
|
||||
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_Z8L182 && !Z180_PORTC
|
||||
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.
|
||||
|
@ -171,7 +171,7 @@ config Z180_ESCCA
|
|||
config Z180_ESCCB
|
||||
bool "ESCC Channel B"
|
||||
default n
|
||||
depends on ARCH_CHIP_Z8L182 && !Z180_MIMIC
|
||||
depends on (ARCH_CHIP_Z80182 || ARCH_CHIP_Z8L182) && !Z180_MIMIC
|
||||
---help---
|
||||
Select to enable a serial port on ESCC Channel B
|
||||
|
||||
|
@ -196,14 +196,14 @@ config Z180_TMR1
|
|||
config Z180_PORTA
|
||||
bool "PORT A"
|
||||
default n
|
||||
depends on ARCH_CHIP_Z8L181 || ARCH_CHIP_Z8L182 || !Z180_CTC
|
||||
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_Z8L181 || ARCH_CHIP_Z8L182
|
||||
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
|
||||
|
@ -212,21 +212,21 @@ config Z180_PORTB
|
|||
config Z180_PORTC
|
||||
bool "PORT C"
|
||||
default n
|
||||
depends on ARCH_CHIP_Z8L182 && !Z180_ESCCA
|
||||
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_Z8L181
|
||||
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_Z8L182 && !Z180_ESCCB
|
||||
depends on ARCH_CHIP_Z80182 || ARCH_CHIP_Z8L182
|
||||
---help---
|
||||
Select to enable the 16550 MIMIC
|
||||
|
||||
|
|
|
@ -58,5 +58,5 @@ CHIP_ASRCS += z180_vectors.asm
|
|||
endif
|
||||
|
||||
CHIP_CSRCS = z180_copystate.c z180_initialstate.c z180_io.c z180_irq.c
|
||||
CHIP_CSRCS += z180_modifiyreg8.c z180_mmu.c z180_registerdump.c
|
||||
CHIP_CSRCS += z180_schedulesigaction.c z180_sigdeliver.c
|
||||
CHIP_CSRCS += z180_lowscc.c z180_lowserial.c z180_modifiyreg8.c z180_mmu.c
|
||||
CHIP_CSRCS += z180_registerdump.c z180_schedulesigaction.c z180_sigdeliver.c
|
||||
|
|
|
@ -68,10 +68,18 @@
|
|||
|
||||
/* Are any UARTs enabled? */
|
||||
|
||||
#undef HAVE_UART
|
||||
#undef HAVE_SCC
|
||||
#undef HAVE_SERIAL
|
||||
#if defined(CONFIG_Z180_UART0) || defined(CONFIG_Z180_UART1) || \
|
||||
defined(CONFIG_Z180_SCC) || defined(CONFIG_Z180_ESCCA) || \
|
||||
|
||||
#if defined(CONFIG_Z180_UART0) || defined(CONFIG_Z180_UART1)
|
||||
# define HAVE_UART 1
|
||||
# define HAVE_SERIAL 1
|
||||
#endif
|
||||
|
||||
#if defined(CONFIG_Z180_SCC) || defined(CONFIG_Z180_ESCCA) || \
|
||||
defined(CONFIG_Z180_ESCCB)
|
||||
# define HAVE_SCC 1
|
||||
# define HAVE_SERIAL 1
|
||||
#endif
|
||||
|
||||
|
@ -101,28 +109,39 @@
|
|||
|
||||
/* Is there a serial console? There should be at most one defined. */
|
||||
|
||||
#undef HAVE_UART_CONSOLE
|
||||
#undef HAVE_SCC_CONSOLE
|
||||
#undef HAVE_SERIAL_CONSOLE
|
||||
|
||||
#if defined(CONFIG_Z180_UART0_SERIAL_CONSOLE)
|
||||
# undef CONFIG_Z180_UART1_SERIAL_CONSOLE
|
||||
# undef CONFIG_Z180_SCC_SERIAL_CONSOLE
|
||||
# undef CONFIG_Z180_ESCCA_SERIAL_CONSOLE
|
||||
# undef CONFIG_Z180_ESCCB_SERIAL_CONSOLE
|
||||
# define HAVE_UART_CONSOLE 1
|
||||
# define HAVE_SERIAL_CONSOLE 1
|
||||
|
||||
#elif defined(CONFIG_Z180_UART1_SERIAL_CONSOLE)
|
||||
# undef CONFIG_Z180_SCC_SERIAL_CONSOLE
|
||||
# undef CONFIG_Z180_ESCCA_SERIAL_CONSOLE
|
||||
# undef CONFIG_Z180_ESCCB_SERIAL_CONSOLE
|
||||
# define HAVE_UART_CONSOLE 1
|
||||
# define HAVE_SERIAL_CONSOLE 1
|
||||
|
||||
#elif defined(CONFIG_Z180_ESCC_SERIAL_CONSOLE)
|
||||
# undef CONFIG_Z180_ESCCA_SERIAL_CONSOLE
|
||||
# undef CONFIG_Z180_ESCCB_SERIAL_CONSOLE
|
||||
# define HAVE_SCC_CONSOLE 1
|
||||
# define HAVE_SERIAL_CONSOLE 1
|
||||
|
||||
#elif defined(CONFIG_Z180_ESCCA_SERIAL_CONSOLE)
|
||||
# undef CONFIG_Z180_ESCCB_SERIAL_CONSOLE
|
||||
# define HAVE_SCC_CONSOLE 1
|
||||
# define HAVE_SERIAL_CONSOLE 1
|
||||
|
||||
#elif defined(CONFIG_Z180_ESCCB_SERIAL_CONSOLE)
|
||||
# define HAVE_SCC_CONSOLE 1
|
||||
# define HAVE_SERIAL_CONSOLE 1
|
||||
#else
|
||||
# undef HAVE_SERIAL_CONSOLE
|
||||
#endif
|
||||
|
||||
/************************************************************************************
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/****************************************************************************
|
||||
* arch/z80/src/z180/z180_loweruart.c
|
||||
* arch/z80/src/z180/z180_lowscc.c
|
||||
*
|
||||
* Copyright (C) 2012 Gregory Nutt. All rights reserved.
|
||||
* Author: Gregory Nutt <gnutt@nuttx.org>
|
||||
|
@ -48,9 +48,9 @@
|
|||
|
||||
#include "chip/chip.h"
|
||||
#include "common/up_internal.h"
|
||||
#include "z80_config.h"
|
||||
#include "z180_config.h"
|
||||
|
||||
#ifdef USE_LOWUARTINIT
|
||||
#if defined(USE_LOWSERIALINIT) && defined(HAVE_SCC)
|
||||
|
||||
/****************************************************************************
|
||||
* Private Definitions
|
||||
|
@ -66,7 +66,7 @@
|
|||
# define CONSOLE_2STOP CONFIG_Z180_SCC_2STOP
|
||||
# define CONSOLE_PARITY CONFIG_Z180_SCC_PARITY
|
||||
|
||||
#elif defined(CONFIG_Z180_ESCCB_SERIAL_CONSOLE)
|
||||
#elif defined(CONFIG_Z180_ESCCA_SERIAL_CONSOLE)
|
||||
# define CONSOLE_CR Z182_ESCCA_CR
|
||||
# define CONSOLE_DR Z182_ESCCA_DR
|
||||
# define CONSOLE_BAUD CONFIG_Z180_ESCCA_BAUD
|
||||
|
@ -90,24 +90,34 @@
|
|||
* Private Functions
|
||||
****************************************************************************/
|
||||
|
||||
#if defined(HAVE_SERIAL_CONSOLE) && !defined(CONFIG_SUPPRESS_UART_CONFIG)
|
||||
static void z180_setbaud(void)
|
||||
/****************************************************************************
|
||||
* Name: z180_scc_setbaud
|
||||
*
|
||||
* Description:
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
#if defined(HAVE_SCC_CONSOLE) && !defined(CONFIG_SUPPRESS_UART_CONFIG)
|
||||
static void z180_scc_setbaud(void)
|
||||
{
|
||||
#warning "Missing logic"
|
||||
}
|
||||
#endif /* HAVE_SERIAL_CONSOLE && !CONFIG_SUPPRESS_UART_CONFIG */
|
||||
#endif /* HAVE_SCC_CONSOLE && !CONFIG_SUPPRESS_UART_CONFIG */
|
||||
|
||||
/****************************************************************************
|
||||
* Public Functions
|
||||
****************************************************************************/
|
||||
|
||||
/****************************************************************************
|
||||
* Name: up_lowuartinit
|
||||
* Name: z180_scc_lowinit
|
||||
*
|
||||
* Description:
|
||||
* Called early in the boot sequence to initialize the [E]SCC channel(s)
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
void up_lowuartinit(void)
|
||||
void z180_scc_lowinit(void)
|
||||
{
|
||||
#ifdef HAVE_SERIAL
|
||||
#warning "Missing logic"
|
||||
|
||||
/* Configure for usage of {E]SCC channels (whether or not we have a console) */
|
||||
|
@ -126,10 +136,33 @@ void up_lowuartinit(void)
|
|||
|
||||
/* Configure the console for immediate usage */
|
||||
|
||||
#if defined(HAVE_SERIAL_CONSOLE) && !defined(CONFIG_SUPPRESS_UART_CONFIG)
|
||||
#if defined(HAVE_SCC_CONSOLE) && !defined(CONFIG_SUPPRESS_UART_CONFIG)
|
||||
#warning "Missing logic"
|
||||
#endif /* HAVE_SERIAL_CONSOLE && !CONFIG_SUPPRESS_UART_CONFIG */
|
||||
#endif /* HAVE_SERIAL */
|
||||
#endif /* HAVE_SCC_CONSOLE && !CONFIG_SUPPRESS_UART_CONFIG */
|
||||
}
|
||||
|
||||
#endif /* USE_LOWUARTINIT */
|
||||
/****************************************************************************
|
||||
* Name: z180_putc
|
||||
*
|
||||
* Description:
|
||||
* Low-level character output
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
#ifdef HAVE_SCC_CONSOLE
|
||||
void z180_putc(uint8_t ch) __naked
|
||||
{
|
||||
__asm
|
||||
txbe:
|
||||
in0 a,(CONSOLE_CR) ; Read RR0
|
||||
bit 2, a ; Bit 2, Tx buffer empty?
|
||||
jr z, txbe ; No, wait until the Tx buffer is empty
|
||||
|
||||
ld a, 4(ix) ; Character to output
|
||||
out (CONSOLE_DR), a ; Send it
|
||||
ret
|
||||
__endasm;
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* USE_LOWSERIALINIT && HAVE_SCC*/
|
||||
|
|
|
@ -0,0 +1,112 @@
|
|||
/****************************************************************************
|
||||
* arch/z80/src/z180/z180_lowserial.c
|
||||
*
|
||||
* Copyright (C) 2012 Gregory Nutt. All rights reserved.
|
||||
* Author: Gregory Nutt <gnutt@nuttx.org>
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
* are met:
|
||||
*
|
||||
* 1. Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
* 2. Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in
|
||||
* the documentation and/or other materials provided with the
|
||||
* distribution.
|
||||
* 3. Neither the name NuttX nor the names of its contributors may be
|
||||
* used to endorse or promote products derived from this software
|
||||
* without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
|
||||
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
|
||||
* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
||||
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
|
||||
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
|
||||
* AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
|
||||
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
/****************************************************************************
|
||||
* Included Files
|
||||
****************************************************************************/
|
||||
|
||||
#include <nuttx/config.h>
|
||||
|
||||
#include "common/up_internal.h"
|
||||
|
||||
#include "z180_config.h"
|
||||
#include "z180_serial.h"
|
||||
|
||||
#ifdef HAVE_SERIAL
|
||||
|
||||
/****************************************************************************
|
||||
* Private Definitions
|
||||
****************************************************************************/
|
||||
|
||||
/****************************************************************************
|
||||
* Private Data
|
||||
****************************************************************************/
|
||||
|
||||
/****************************************************************************
|
||||
* Private Functions
|
||||
****************************************************************************/
|
||||
|
||||
/****************************************************************************
|
||||
* Public Functions
|
||||
****************************************************************************/
|
||||
|
||||
/****************************************************************************
|
||||
* Name: up_lowserialinit
|
||||
*
|
||||
* Description:
|
||||
* Called early in the boot sequence to initialize the serial ports
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
#ifdef USE_LOWSERIALINIT
|
||||
void up_lowserialinit(void)
|
||||
{
|
||||
/* Initialize UART and [E]SCC serial devices */
|
||||
|
||||
z180_uart_lowinit();
|
||||
z180_scc_lowinit();
|
||||
}
|
||||
#endif
|
||||
|
||||
/****************************************************************************
|
||||
* Name: up_putc/up_lowputc
|
||||
*
|
||||
* Description:
|
||||
* Low-level console output
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
#ifdef USE_SERIALDRIVER
|
||||
int up_lowputc(int ch)
|
||||
#else
|
||||
int up_putc(int ch)
|
||||
#endif
|
||||
{
|
||||
/* Check for LF */
|
||||
|
||||
if (ch == '\n')
|
||||
{
|
||||
/* Output CR before LF */
|
||||
|
||||
z180_putc('\r');
|
||||
}
|
||||
|
||||
/* Output the character */
|
||||
|
||||
z180_putc(ch);
|
||||
return ch;
|
||||
}
|
||||
|
||||
#endif /* HAVE_SERIAL */
|
|
@ -0,0 +1,148 @@
|
|||
/****************************************************************************
|
||||
* arch/z80/src/z180/z180_lowuart.c
|
||||
*
|
||||
* Copyright (C) 2012 Gregory Nutt. All rights reserved.
|
||||
* Author: Gregory Nutt <gnutt@nuttx.org>
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
* are met:
|
||||
*
|
||||
* 1. Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
* 2. Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in
|
||||
* the documentation and/or other materials provided with the
|
||||
* distribution.
|
||||
* 3. Neither the name NuttX nor the names of its contributors may be
|
||||
* used to endorse or promote products derived from this software
|
||||
* without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
|
||||
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
|
||||
* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
||||
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
|
||||
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
|
||||
* AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
|
||||
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
/****************************************************************************
|
||||
* Included Files
|
||||
****************************************************************************/
|
||||
|
||||
#include <nuttx/config.h>
|
||||
|
||||
#include <stdint.h>
|
||||
#include <string.h>
|
||||
|
||||
#include <arch/io.h>
|
||||
#include <nuttx/arch.h>
|
||||
#include <nuttx/sched.h>
|
||||
|
||||
#include "chip/chip.h"
|
||||
#include "common/up_internal.h"
|
||||
#include "z180_config.h"
|
||||
|
||||
#if defined(USE_LOWSERIALINIT) && defined(HAVE_UART)
|
||||
|
||||
/****************************************************************************
|
||||
* Private Definitions
|
||||
****************************************************************************/
|
||||
|
||||
/* Select UART parameters for the selected console */
|
||||
|
||||
#if defined(CONFIG_Z180_UART0_SERIAL_CONSOLE)
|
||||
# define CONSOLE_CR Z181_UART0_CR
|
||||
# define CONSOLE_DR Z181_UART0_DR
|
||||
# define CONSOLE_BAUD CONFIG_Z180_UART0_BAUD
|
||||
# define CONSOLE_BITS CONFIG_Z180_UART0_BITS
|
||||
# define CONSOLE_2STOP CONFIG_Z180_UART0_2STOP
|
||||
# define CONSOLE_PARITY CONFIG_Z180_UART0_PARITY
|
||||
|
||||
#elif defined(CONFIG_Z180_UART1_SERIAL_CONSOLE)
|
||||
# define CONSOLE_CR Z182_UART1_CR
|
||||
# define CONSOLE_DR Z182_UART1_DR
|
||||
# define CONSOLE_BAUD CONFIG_Z180_UART1_BAUD
|
||||
# define CONSOLE_BITS CONFIG_Z180_UART1_BITS
|
||||
# define CONSOLE_2STOP CONFIG_Z180_UART1_2STOP
|
||||
# define CONSOLE_PARITY CONFIG_Z180_UART1_PARITY
|
||||
#endif
|
||||
|
||||
/****************************************************************************
|
||||
* Private Data
|
||||
****************************************************************************/
|
||||
|
||||
/****************************************************************************
|
||||
* Private Functions
|
||||
****************************************************************************/
|
||||
|
||||
/****************************************************************************
|
||||
* Name: z180_uart_setbaud
|
||||
*
|
||||
* Description:
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
#if defined(HAVE_UART_CONSOLE) && !defined(CONFIG_SUPPRESS_UART_CONFIG)
|
||||
static void z180_uart_setbaud(void)
|
||||
{
|
||||
#warning "Missing logic"
|
||||
}
|
||||
#endif /* HAVE_UART_CONSOLE && !CONFIG_SUPPRESS_UART_CONFIG */
|
||||
|
||||
/****************************************************************************
|
||||
* Public Functions
|
||||
****************************************************************************/
|
||||
|
||||
/****************************************************************************
|
||||
* Name: z180_uart_lowinit
|
||||
*
|
||||
* Description:
|
||||
* Called early in the boot sequence to initialize the [E]SCC channel(s)
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
void z180_uart_lowinit(void)
|
||||
{
|
||||
#warning "Missing logic"
|
||||
|
||||
/* Configure for usage of {E]SCC channels (whether or not we have a console) */
|
||||
|
||||
#ifdef CONFIG_Z180_UART0
|
||||
#warning "Missing logic"
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_Z180_UART1
|
||||
#warning "Missing logic"
|
||||
#endif
|
||||
|
||||
/* Configure the console for immediate usage */
|
||||
|
||||
#if defined(HAVE_UART_CONSOLE) && !defined(CONFIG_SUPPRESS_UART_CONFIG)
|
||||
#warning "Missing logic"
|
||||
#endif /* HAVE_UART0_CONSOLE && !CONFIG_SUPPRESS_UART_CONFIG */
|
||||
}
|
||||
|
||||
/****************************************************************************
|
||||
* Name: z180_putc
|
||||
*
|
||||
* Description:
|
||||
* Low-level character output
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
#ifdef HAVE_UART_CONSOLE
|
||||
void z180_putc(uint8_t ch)
|
||||
{
|
||||
#warning "Missing logic"
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* USE_LOWSERIALINIT && HAVE_UART*/
|
|
@ -58,6 +58,9 @@
|
|||
#include "os_internal.h"
|
||||
#include "up_internal.h"
|
||||
|
||||
#include "z180_config.h"
|
||||
#include "z180_serial.h"
|
||||
|
||||
#ifdef USE_SERIALDRIVER
|
||||
|
||||
/****************************************************************************
|
||||
|
@ -619,79 +622,12 @@ void up_serialinit(void)
|
|||
int up_putc(int ch)
|
||||
{
|
||||
#ifdef CONSOLE_DEV
|
||||
#warning "Missing logic"
|
||||
/* Disable [E]SCC interrupts and perform the low-level output */
|
||||
|
||||
z180_disableuartint(priv);
|
||||
|
||||
/* Check for LF */
|
||||
|
||||
if (ch == '\n')
|
||||
{
|
||||
/* Output CR before LF*/
|
||||
#warning "Missing logic"
|
||||
|
||||
}
|
||||
|
||||
/* Output the character */
|
||||
|
||||
#warning "Missing logic"
|
||||
|
||||
/* Wait for the character to be sent before re-enabling interrupts */
|
||||
|
||||
#warning "Missing logic"
|
||||
up_lowputc(ch);
|
||||
z180_restoreuartint(priv);
|
||||
return ch;
|
||||
#endif
|
||||
}
|
||||
|
||||
#else /* USE_SERIALDRIVER */
|
||||
|
||||
/****************************************************************************
|
||||
* Definitions
|
||||
****************************************************************************/
|
||||
|
||||
/****************************************************************************
|
||||
* Private Function Prototypes
|
||||
****************************************************************************/
|
||||
|
||||
/****************************************************************************
|
||||
* Private Variables
|
||||
****************************************************************************/
|
||||
|
||||
/****************************************************************************
|
||||
* Private Functions
|
||||
****************************************************************************/
|
||||
|
||||
/****************************************************************************
|
||||
* Name: z180_putc
|
||||
****************************************************************************/
|
||||
|
||||
static void z180_putc(int ch)
|
||||
{
|
||||
#warning "Missing logic"
|
||||
}
|
||||
|
||||
/****************************************************************************
|
||||
* Public Functions
|
||||
****************************************************************************/
|
||||
|
||||
/****************************************************************************
|
||||
* Name: up_putc
|
||||
****************************************************************************/
|
||||
|
||||
int up_putc(int ch)
|
||||
{
|
||||
/* Check for LF */
|
||||
|
||||
if (ch == '\n')
|
||||
{
|
||||
/* Output CR before LF */
|
||||
|
||||
z180_putc('\r');
|
||||
}
|
||||
|
||||
/* Output character */
|
||||
|
||||
z180_putc(ch);
|
||||
return ch;
|
||||
}
|
||||
|
||||
#endif /* USE_SERIALDRIVER */
|
||||
|
|
|
@ -0,0 +1,109 @@
|
|||
/****************************************************************************
|
||||
* arch/z80/src/z180/z180_serial.h
|
||||
*
|
||||
* Copyright (C) 2012 Gregory Nutt. All rights reserved.
|
||||
* Author: Gregory Nutt <gnutt@nuttx.org>
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
* are met:
|
||||
*
|
||||
* 1. Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
* 2. Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in
|
||||
* the documentation and/or other materials provided with the
|
||||
* distribution.
|
||||
* 3. Neither the name NuttX nor the names of its contributors may be
|
||||
* used to endorse or promote products derived from this software
|
||||
* without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
|
||||
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
|
||||
* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
||||
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
|
||||
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
|
||||
* AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
|
||||
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
#ifndef __ARCH_Z80_SRC_Z180_Z180_SERIAL_H
|
||||
#define __ARCH_Z80_SRC_Z180_Z180_SERIAL_H
|
||||
|
||||
/****************************************************************************
|
||||
* Included Files
|
||||
****************************************************************************/
|
||||
|
||||
#include <nuttx/config.h>
|
||||
|
||||
#include "up_internal.h"
|
||||
#include "z180_config.h"
|
||||
|
||||
/****************************************************************************
|
||||
* Pre-processor Definitions
|
||||
****************************************************************************/
|
||||
|
||||
/****************************************************************************
|
||||
* Public Functions
|
||||
****************************************************************************/
|
||||
|
||||
/****************************************************************************
|
||||
* Name: z180_uart_lowinit
|
||||
*
|
||||
* Description:
|
||||
* Called early in the boot sequence to initialize the UART(s)
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
#ifdef HAVE_UART
|
||||
void z180_uart_lowinit(void);
|
||||
#else
|
||||
# define z180_uart_lowinit()
|
||||
#endif
|
||||
|
||||
/****************************************************************************
|
||||
* Name: z180_scc_lowinit
|
||||
*
|
||||
* Description:
|
||||
* Called early in the boot sequence to initialize the [E]SCC channel(s)
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
#ifdef HAVE_SCC
|
||||
void z180_scc_lowinit(void);
|
||||
#else
|
||||
# define z180_scc_lowinit()
|
||||
#endif
|
||||
|
||||
/****************************************************************************
|
||||
* Name: z180_putc
|
||||
*
|
||||
* Description:
|
||||
* Low-level character output
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
void z180_putc(uint8_t ch) __naked;
|
||||
|
||||
/****************************************************************************
|
||||
* Name: up_putc/up_lowputc
|
||||
*
|
||||
* Description:
|
||||
* Low-level console output
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
#ifdef USE_SERIALDRIVER
|
||||
int up_lowputc(int ch);
|
||||
#else
|
||||
int up_putc(int ch);
|
||||
# define up_lowputc(ch) up_putc(ch)
|
||||
#endif
|
||||
|
||||
#endif /* __ARCH_Z80_SRC_Z180_Z180_SERIAL_H */
|
|
@ -49,7 +49,7 @@
|
|||
#include "chip/chip.h"
|
||||
#include "common/up_internal.h"
|
||||
|
||||
#ifdef USE_LOWUARTINIT
|
||||
#ifdef USE_LOWSERIALINIT
|
||||
|
||||
extern uint32_t get_freq(void);
|
||||
|
||||
|
@ -70,10 +70,10 @@ extern uint32_t get_freq(void);
|
|||
****************************************************************************/
|
||||
|
||||
/****************************************************************************
|
||||
* Name: z8_lowuartinit
|
||||
* Name: up_lowserialinit
|
||||
****************************************************************************/
|
||||
|
||||
void up_lowuartinit(void)
|
||||
void up_lowserialinit(void)
|
||||
{
|
||||
uint32_t freq = get_freq();
|
||||
uint16_t brg;
|
||||
|
@ -127,4 +127,4 @@ void up_lowuartinit(void)
|
|||
putreg8(0xc0, U1CTL0); /* Transmit enable, Receive enable, no Parity, 1 Stop bit */
|
||||
#endif
|
||||
}
|
||||
#endif /* USE_LOWUARTINIT */
|
||||
#endif /* USE_LOWSERIALINIT */
|
||||
|
|
|
@ -99,7 +99,7 @@ CONFIG_EZ80_UART0=y
|
|||
# CONFIG_EZ80_UART1 is not set
|
||||
# CONFIG_EZ80_UART2 is not set
|
||||
# CONFIG_EZ80_EMAC is not set
|
||||
CONFIG_HAVE_LOWUARTINIT=y
|
||||
CONFIG_HAVE_LOWSERIALINIT=y
|
||||
|
||||
#
|
||||
# Architecture Options
|
||||
|
|
|
@ -115,7 +115,7 @@ CONFIG_START_YEAR=2009
|
|||
CONFIG_START_MONTH=3
|
||||
CONFIG_START_DAY=14
|
||||
CONFIG_JULIAN_TIME=n
|
||||
CONFIG_HAVE_LOWUARTINIT=y
|
||||
CONFIG_HAVE_LOWSERIALINIT=y
|
||||
CONFIG_DEV_CONSOLE=y
|
||||
CONFIG_DEV_LOWCONSOLE=y
|
||||
CONFIG_MUTEX_TYPES=n
|
||||
|
|
|
@ -115,7 +115,7 @@ CONFIG_START_YEAR=2009
|
|||
CONFIG_START_MONTH=3
|
||||
CONFIG_START_DAY=14
|
||||
CONFIG_JULIAN_TIME=n
|
||||
CONFIG_HAVE_LOWUARTINIT=y
|
||||
CONFIG_HAVE_LOWSERIALINIT=y
|
||||
CONFIG_DEV_CONSOLE=y
|
||||
CONFIG_DEV_LOWCONSOLE=y
|
||||
CONFIG_MUTEX_TYPES=n
|
||||
|
|
|
@ -115,7 +115,7 @@ CONFIG_START_YEAR=2009
|
|||
CONFIG_START_MONTH=3
|
||||
CONFIG_START_DAY=14
|
||||
CONFIG_JULIAN_TIME=n
|
||||
CONFIG_HAVE_LOWUARTINIT=y
|
||||
CONFIG_HAVE_LOWSERIALINIT=y
|
||||
CONFIG_DEV_CONSOLE=y
|
||||
CONFIG_DEV_LOWCONSOLE=y
|
||||
CONFIG_MUTEX_TYPES=n
|
||||
|
|
|
@ -115,7 +115,7 @@ CONFIG_START_YEAR=2009
|
|||
CONFIG_START_MONTH=3
|
||||
CONFIG_START_DAY=14
|
||||
CONFIG_JULIAN_TIME=n
|
||||
CONFIG_HAVE_LOWUARTINIT=y
|
||||
CONFIG_HAVE_LOWSERIALINIT=y
|
||||
CONFIG_DEV_CONSOLE=y
|
||||
CONFIG_DEV_LOWCONSOLE=n
|
||||
CONFIG_MUTEX_TYPES=n
|
||||
|
|
|
@ -99,7 +99,7 @@ CONFIG_EZ80_UART0=y
|
|||
# CONFIG_EZ80_UART1 is not set
|
||||
# CONFIG_EZ80_UART2 is not set
|
||||
# CONFIG_EZ80_EMAC is not set
|
||||
CONFIG_HAVE_LOWUARTINIT=y
|
||||
CONFIG_HAVE_LOWSERIALINIT=y
|
||||
CONFIG_ARCH_TIMERHOOK=y
|
||||
|
||||
#
|
||||
|
|
|
@ -115,7 +115,7 @@ CONFIG_START_YEAR=2009
|
|||
CONFIG_START_MONTH=3
|
||||
CONFIG_START_DAY=14
|
||||
CONFIG_JULIAN_TIME=n
|
||||
CONFIG_HAVE_LOWUARTINIT=y
|
||||
CONFIG_HAVE_LOWSERIALINIT=y
|
||||
CONFIG_DEV_CONSOLE=y
|
||||
CONFIG_DEV_LOWCONSOLE=y
|
||||
CONFIG_MUTEX_TYPES=n
|
||||
|
|
|
@ -119,6 +119,7 @@ CONFIG_ARCH_CHIP_Z8018216FSG=y
|
|||
# CONFIG_ARCH_CHIP_EZ80F93 is not set
|
||||
CONFIG_ARCH_CHIP_Z180=y
|
||||
CONFIG_ARCH_CHIP_Z80182=y
|
||||
CONFIG_HAVE_LOWSERIALINIT=y
|
||||
CONFIG_LINKER_HOME_AREA=0x0000
|
||||
CONFIG_LINKER_CODE_AREA=0x0200
|
||||
CONFIG_LINKER_DATA_AREA=0x8000
|
||||
|
@ -135,8 +136,25 @@ CONFIG_Z180_PHYSHEAP_END=0x100000
|
|||
#
|
||||
# Z180 Peripheral Support
|
||||
#
|
||||
CONFIG_Z180_UART0=y
|
||||
CONFIG_Z180_UART1=y
|
||||
# CONFIG_Z180_UART0 is not set
|
||||
# CONFIG_Z180_UART1 is not set
|
||||
CONFIG_Z180_ESCCA=y
|
||||
# CONFIG_Z180_ESCCB is not set
|
||||
# CONFIG_Z180_TMR1 is not set
|
||||
# CONFIG_Z180_PORTA is not set
|
||||
# CONFIG_Z180_PORTB is not set
|
||||
# CONFIG_Z180_MIMIC is not set
|
||||
CONFIG_Z180_ESCCA_SERIAL_CONSOLE=y
|
||||
|
||||
#
|
||||
# ESCC Channel A Configuration
|
||||
#
|
||||
CONFIG_Z180_ESCCA_RXBUFSIZE=64
|
||||
CONFIG_Z180_ESCCA_TXBUFSIZE=64
|
||||
CONFIG_Z180_ESCCA_BAUD=9600
|
||||
CONFIG_Z180_ESCCA_BITS=8
|
||||
CONFIG_Z180_ESCCA_PARITY=0
|
||||
CONFIG_Z180_ESCCA_2STOP=0
|
||||
|
||||
#
|
||||
# Architecture Options
|
||||
|
@ -261,32 +279,6 @@ CONFIG_DEV_NULL=y
|
|||
CONFIG_SERIAL=y
|
||||
CONFIG_DEV_LOWCONSOLE=y
|
||||
# CONFIG_16550_UART is not set
|
||||
CONFIG_ARCH_HAVE_UART0=y
|
||||
CONFIG_ARCH_HAVE_UART1=y
|
||||
CONFIG_MCU_SERIAL=y
|
||||
CONFIG_UART0_SERIAL_CONSOLE=y
|
||||
# CONFIG_UART1_SERIAL_CONSOLE is not set
|
||||
# CONFIG_NO_SERIAL_CONSOLE is not set
|
||||
|
||||
#
|
||||
# UART0 Configuration
|
||||
#
|
||||
CONFIG_UART0_RXBUFSIZE=64
|
||||
CONFIG_UART0_TXBUFSIZE=64
|
||||
CONFIG_UART0_BAUD=115200
|
||||
CONFIG_UART0_BITS=8
|
||||
CONFIG_UART0_PARITY=0
|
||||
CONFIG_UART0_2STOP=0
|
||||
|
||||
#
|
||||
# UART1 Configuration
|
||||
#
|
||||
CONFIG_UART1_RXBUFSIZE=64
|
||||
CONFIG_UART1_TXBUFSIZE=64
|
||||
CONFIG_UART1_BAUD=115200
|
||||
CONFIG_UART1_BITS=8
|
||||
CONFIG_UART1_PARITY=0
|
||||
CONFIG_UART1_2STOP=0
|
||||
# CONFIG_USBDEV is not set
|
||||
# CONFIG_USBHOST is not set
|
||||
# CONFIG_WIRELESS is not set
|
||||
|
|
|
@ -88,7 +88,7 @@ CONFIG_ARCH_CHIP_Z8F6403=y
|
|||
# CONFIG_ARCH_CHIP_EZ80F93 is not set
|
||||
CONFIG_ARCH_CHIP_Z8F640X=y
|
||||
CONFIG_ARCH_CHIP_Z8=y
|
||||
CONFIG_HAVE_LOWUARTINIT=y
|
||||
CONFIG_HAVE_LOWSERIALINIT=y
|
||||
CONFIG_Z8_UART0=y
|
||||
CONFIG_Z8_UART1=y
|
||||
|
||||
|
|
|
@ -88,7 +88,7 @@ CONFIG_ARCH_CHIP_Z8F6423=y
|
|||
# CONFIG_ARCH_CHIP_EZ80F93 is not set
|
||||
CONFIG_ARCH_CHIP_Z8F642X=y
|
||||
CONFIG_ARCH_CHIP_Z8=y
|
||||
CONFIG_HAVE_LOWUARTINIT=y
|
||||
CONFIG_HAVE_LOWSERIALINIT=y
|
||||
CONFIG_Z8_UART0=y
|
||||
CONFIG_Z8_UART1=y
|
||||
|
||||
|
|
Loading…
Reference in New Issue