1/* 2 * include/asm-v850/v850e_uart.h -- common V850E on-chip UART driver 3 * 4 * Copyright (C) 2001,02,03 NEC Electronics Corporation 5 * Copyright (C) 2001,02,03 Miles Bader <miles@gnu.org> 6 * 7 * This file is subject to the terms and conditions of the GNU General 8 * Public License. See the file COPYING in the main directory of this 9 * archive for more details. 10 * 11 * Written by Miles Bader <miles@gnu.org> 12 */ 13 14/* There's not actually a single UART implementation used by V850E CPUs, 15 but rather a series of implementations that are all `close' to one 16 another. This file corresponds to the single driver which handles all 17 of them. */ 18 19#ifndef __V850_V850E_UART_H__ 20#define __V850_V850E_UART_H__ 21 22#include <linux/termios.h> 23 24#include <asm/v850e_utils.h> 25#include <asm/types.h> 26#include <asm/machdep.h> /* Pick up chip-specific defs. */ 27 28 29/* Include model-specific definitions. */ 30#ifdef CONFIG_V850E_UART 31# ifdef CONFIG_V850E_UARTB 32# include <asm-v850/v850e_uartb.h> 33# else 34# include <asm-v850/v850e_uarta.h> /* original V850E UART */ 35# endif 36#endif 37 38 39/* Optional capabilities some hardware provides. */ 40 41/* This UART doesn't implement RTS/CTS by default, but some platforms 42 implement them externally, so check to see if <asm/machdep.h> defined 43 anything. */ 44#ifdef V850E_UART_CTS 45#define v850e_uart_cts(n) V850E_UART_CTS(n) 46#else 47#define v850e_uart_cts(n) (1) 48#endif 49 50/* Do the same for RTS. */ 51#ifdef V850E_UART_SET_RTS 52#define v850e_uart_set_rts(n,v) V850E_UART_SET_RTS(n,v) 53#else 54#define v850e_uart_set_rts(n,v) ((void)0) 55#endif 56 57 58/* This is the serial channel to use for the boot console (if desired). */ 59#ifndef V850E_UART_CONSOLE_CHANNEL 60# define V850E_UART_CONSOLE_CHANNEL 0 61#endif 62 63 64#ifndef __ASSEMBLY__ 65 66/* Setup a console using channel 0 of the builtin uart. */ 67extern void v850e_uart_cons_init (unsigned chan); 68 69/* Configure and turn on uart channel CHAN, using the termios `control 70 modes' bits in CFLAGS, and a baud-rate of BAUD. */ 71void v850e_uart_configure (unsigned chan, unsigned cflags, unsigned baud); 72 73#endif /* !__ASSEMBLY__ */ 74 75 76#endif /* __V850_V850E_UART_H__ */ 77