blob: d2fd3686a86090adf64685311f518ee6ae4afc09 [file] [log] [blame]
/* sys/sio.h -- Utility methods to read/write the SIO
Copyright 2000 Free Software Foundation, Inc.
Written by Stephane Carrez (stcarrez@worldnet.fr)
This file is part of GEL.
GEL is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License** as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.
GEL is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with GEL; see the file COPYING. If not, write to
the Free Software Foundation, 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
#ifndef _SYS_SIO_H
#define _SYS_SIO_H
#include <sys/param.h>
#include <sys/ports.h>
#ifdef __cplusplus
extern "C" {
#endif
extern void serial_init (void);
/* Return != 0 if there is something to read on the serial line. */
extern unsigned char serial_receive_pending (void);
/* Wait until the SIO has finished to send the character. */
extern void serial_flush (void);
/* Return != 0 if serial port is ready to send another char. */
extern unsigned char serial_send_ready (void);
/* Send the character on the serial line. */
extern void serial_send (char c);
/* Wait for a character on the serial line and return it. */
extern unsigned char serial_recv (void);
/** Write the string on the serial line.
@param msg null terminated string to write.
@see serial_init, serial_send
*/
extern void serial_print (const char *msg);
/** Wait for a string from serial line.
@param msg buffer that will hold the string.
@see serial_init, serial_recv
*/
extern void serial_getline (char *buf);
#ifdef mc6811
//# include <asm-m68hc11/sio.h>
#endif
#ifdef mc68hcs12
# include <asm-m68hcs12/sio.h>
#elif defined(mc6812)
//# include <asm-m68hc12/sio.h>
#endif
#ifdef __cplusplus
};
#endif
#endif /* _SYS_SIO_H */