mirror of
https://github.com/espressif/binutils-gdb.git
synced 2025-06-18 08:38:10 +08:00
Initial creation of sourceware repository
This commit is contained in:
212
gdb/rdi-share/unixcomm.h
Normal file
212
gdb/rdi-share/unixcomm.h
Normal file
@ -0,0 +1,212 @@
|
||||
/*
|
||||
* Copyright (C) 1995 Advanced RISC Machines Limited. All rights reserved.
|
||||
*
|
||||
* This software may be freely used, copied, modified, and distributed
|
||||
* provided that the above copyright notice is preserved in all copies of the
|
||||
* software.
|
||||
*/
|
||||
|
||||
/* -*-C-*-
|
||||
*
|
||||
* $Revision$
|
||||
* $Date$
|
||||
*
|
||||
*/
|
||||
#ifndef angsd_unixcomm_h
|
||||
#define angsd_unixcomm_h
|
||||
|
||||
#include <errno.h>
|
||||
|
||||
#if defined(BSD)
|
||||
# define ERRNO_FOR_BLOCKED_IO EWOULDBLOCK
|
||||
#else
|
||||
# define ERRNO_FOR_BLOCKED_IO EAGAIN
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Function: Unix_MatchValidSerialDevice
|
||||
* Purpose: check that the serial driver/port name is valid
|
||||
* and return the actual device name if it is.
|
||||
*
|
||||
* Params:
|
||||
* Input: name Name of device going to be used
|
||||
*
|
||||
* Returns:
|
||||
* OK: Pointer to name of the device matched
|
||||
* Error or unrecognised deivce: 0
|
||||
*/
|
||||
extern const char *Unix_MatchValidSerialDevice(const char *name);
|
||||
|
||||
/*
|
||||
* Function: Unix_IsSerialInUse
|
||||
* Purpose: check whether the serial port is in use
|
||||
*
|
||||
* Params:
|
||||
* Input: Nothing
|
||||
*
|
||||
* Returns:
|
||||
* OK: 0 Serial device not in use
|
||||
* Error: -1 Serial device in use
|
||||
*/
|
||||
extern int Unix_IsSerialInUse(void);
|
||||
|
||||
/*
|
||||
* Function: Unix_OpenSerial
|
||||
* Purpose: open the serial port
|
||||
*
|
||||
* Params:
|
||||
* Input: name Name of device to open
|
||||
*
|
||||
* Returns: Unix 'open' returns
|
||||
*/
|
||||
extern int Unix_OpenSerial(const char *name);
|
||||
|
||||
/*
|
||||
* Function: Unix_CloseSerial
|
||||
* Purpose: close the serial port
|
||||
*
|
||||
* Params:
|
||||
* Input: Nothing
|
||||
*
|
||||
* Returns: Nothing
|
||||
*/
|
||||
extern void Unix_CloseSerial(void);
|
||||
|
||||
/*
|
||||
* Function: Unix_ReadSerial
|
||||
* Purpose: reads a specified number of bytes (or less) from the serial port
|
||||
*
|
||||
* Params:
|
||||
* Input: buf Buffer to store read bytes
|
||||
* n Maximum number of bytes to read
|
||||
*
|
||||
* Returns: Unix 'read' returns
|
||||
*/
|
||||
extern int Unix_ReadSerial(unsigned char *buf, int n, bool block);
|
||||
|
||||
/*
|
||||
* Function: Unix_WriteSerial
|
||||
* Purpose: writes a specified number of bytes (or less) to the serial port
|
||||
*
|
||||
* Params:
|
||||
* Input: buf Buffer to write bytes from
|
||||
* n Maximum number of bytes to write
|
||||
*
|
||||
* Returns: Unix 'write' returns
|
||||
*/
|
||||
extern int Unix_WriteSerial(unsigned char *buf, int n);
|
||||
|
||||
/*
|
||||
* Function: Unix_ResetSerial
|
||||
* Purpose: resets the serial port for another operation
|
||||
*
|
||||
* Params:
|
||||
* Input: Nothing
|
||||
*
|
||||
* Returns: Nothing
|
||||
*/
|
||||
extern void Unix_ResetSerial(void);
|
||||
|
||||
/*
|
||||
* Function: Unix_SetSerialBaudRate
|
||||
* Purpose: check that the serial driver/port name is valid
|
||||
*
|
||||
* Params:
|
||||
* Input: baudrate termios value for baud rate
|
||||
*
|
||||
* Returns: Nothing
|
||||
*/
|
||||
extern void Unix_SetSerialBaudRate(int baudrate);
|
||||
|
||||
/*
|
||||
* Function: Unix_ioctlNonBlocking
|
||||
* Purpose: sets the serial port to non-blocking IO
|
||||
*
|
||||
* Params:
|
||||
* Input: Nothing
|
||||
*
|
||||
* Returns: Nothing
|
||||
*/
|
||||
extern void Unix_ioctlNonBlocking(void);
|
||||
|
||||
/*
|
||||
* Function: Unix_IsValidParallelDevice
|
||||
* Purpose: check whether the combined serial and parallel device specification
|
||||
* is ok, and return the ports selected
|
||||
*
|
||||
* Params:
|
||||
* Input: portstring - is a string which specifies which serial
|
||||
* and parallel ports are to be used. Can
|
||||
* include s=<val> and p=<val> separated by a
|
||||
* comma.
|
||||
*
|
||||
* Returns:
|
||||
* Output: *sername - returns the device name of the chosen serial port
|
||||
* *parname - returns the device name of the chosen parallel port
|
||||
* If either of these is NULL on return then the match failed.
|
||||
*/
|
||||
extern void Unix_IsValidParallelDevice(
|
||||
const char *portstring, char **sername, char **parname
|
||||
);
|
||||
|
||||
/*
|
||||
* Function: Unix_IsParallelInUse
|
||||
* Purpose: check whether the parallel port is in use
|
||||
*
|
||||
* Params:
|
||||
* Input: Nothing
|
||||
*
|
||||
* Returns:
|
||||
* OK: 0 Parallel device not in use
|
||||
* Error: -1 Parallel device in use
|
||||
*/
|
||||
extern int Unix_IsParallelInUse(void);
|
||||
|
||||
/*
|
||||
* Function: Unix_OpenParallel
|
||||
* Purpose: open the parallel port
|
||||
*
|
||||
* Params:
|
||||
* Input: name Name of device to open
|
||||
*
|
||||
* Returns: Unix 'open' returns
|
||||
*/
|
||||
extern int Unix_OpenParallel(const char *name);
|
||||
|
||||
/*
|
||||
* Function: Unix_CloseParallel
|
||||
* Purpose: close the parallel port
|
||||
*
|
||||
* Params:
|
||||
* Input: Nothing
|
||||
*
|
||||
* Returns: Nothing
|
||||
*/
|
||||
extern void Unix_CloseParallel(void);
|
||||
|
||||
/*
|
||||
* Function: Unix_WriteParallel
|
||||
* Purpose: writes a specified number of bytes (or less) to the parallel port
|
||||
*
|
||||
* Params:
|
||||
* Input: buf Buffer to write bytes from
|
||||
* n Maximum number of bytes to write
|
||||
*
|
||||
* Returns: Unix 'write' returns
|
||||
*/
|
||||
extern unsigned int Unix_WriteParallel(unsigned char *buf, int n);
|
||||
|
||||
/*
|
||||
* Function: Unix_ResetParallel
|
||||
* Purpose: resets the parallel port for another operation
|
||||
*
|
||||
* Params:
|
||||
* Input: Nothing
|
||||
*
|
||||
* Returns: Nothing
|
||||
*/
|
||||
extern void Unix_ResetParallel(void);
|
||||
|
||||
#endif /* ndef angsd_unixcomm_h */
|
||||
|
||||
/* EOF unixcomm.h */
|
Reference in New Issue
Block a user