Commit | Line | Data |
---|---|---|
c906108c | 1 | /* Serial port emulation via sockets. |
e2882c85 | 2 | Copyright (C) 1998-2018 Free Software Foundation, Inc. |
c906108c SS |
3 | |
4 | This file is part of the GNU simulators. | |
5 | ||
6 | This program is free software; you can redistribute it and/or modify | |
7 | it under the terms of the GNU General Public License as published by | |
4744ac1b JB |
8 | the Free Software Foundation; either version 3 of the License, or |
9 | (at your option) any later version. | |
c906108c SS |
10 | |
11 | This program is distributed in the hope that it will be useful, | |
12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
14 | GNU General Public License for more details. | |
15 | ||
4744ac1b JB |
16 | You should have received a copy of the GNU General Public License |
17 | along with this program. If not, see <http://www.gnu.org/licenses/>. */ | |
c906108c SS |
18 | |
19 | #ifndef DV_SOCKSER_H | |
20 | #define DV_SOCKSER_H | |
21 | ||
3649cb06 MF |
22 | #include "sim-inline.h" |
23 | ||
c906108c | 24 | /* bits in result of dev_sockser_status */ |
e8a76151 MF |
25 | #define DV_SOCKSER_INPUT_EMPTY 0x1 |
26 | #define DV_SOCKSER_OUTPUT_EMPTY 0x2 | |
27 | #define DV_SOCKSER_DISCONNECTED 0x4 | |
c906108c | 28 | |
3649cb06 MF |
29 | #ifdef HAVE_DV_SOCKSER |
30 | ||
c906108c SS |
31 | /* FIXME: later add a device ptr arg */ |
32 | extern int dv_sockser_status (SIM_DESC); | |
33 | int dv_sockser_write (SIM_DESC, unsigned char); | |
6ab5626b | 34 | int dv_sockser_write_buffer (SIM_DESC, const unsigned char *, unsigned); |
c906108c SS |
35 | int dv_sockser_read (SIM_DESC); |
36 | ||
8406bb59 MF |
37 | SIM_RC dv_sockser_install (SIM_DESC); |
38 | ||
3649cb06 MF |
39 | #else |
40 | ||
41 | /* If dv-sockser isn't available, provide stub functions. */ | |
42 | ||
43 | STATIC_INLINE int | |
44 | dv_sockser_status (SIM_DESC sd) | |
45 | { | |
46 | return (DV_SOCKSER_INPUT_EMPTY | | |
47 | DV_SOCKSER_OUTPUT_EMPTY | | |
48 | DV_SOCKSER_DISCONNECTED); | |
49 | } | |
50 | ||
51 | STATIC_INLINE int | |
52 | dv_sockser_write (SIM_DESC sd, unsigned char c) | |
53 | { | |
54 | return -1; | |
55 | } | |
56 | ||
57 | STATIC_INLINE int | |
58 | dv_sockser_write_buffer (SIM_DESC sd, const unsigned char *buffer, | |
59 | unsigned nr_bytes) | |
60 | { | |
61 | return -1; | |
62 | } | |
63 | ||
64 | STATIC_INLINE int | |
65 | dv_sockser_read (SIM_DESC sd) | |
66 | { | |
67 | return -1; | |
68 | } | |
69 | ||
70 | #endif /* HAVE_DV_SOCKSER */ | |
71 | ||
c906108c | 72 | #endif /* DV_SOCKSER_H */ |