Merge tag 'efi-2020-01-rc2' of https://gitlab.denx.de/u-boot/custodians/u-boot-efi
[oweals/u-boot.git] / include / xyzModem.h
1 /* SPDX-License-Identifier: eCos-2.0 */
2 /*
3  *==========================================================================
4  *
5  *      xyzModem.h
6  *
7  *      RedBoot stream handler for xyzModem protocol
8  *
9  *==========================================================================
10  *#####DESCRIPTIONBEGIN####
11  *
12  * Author(s):    gthomas
13  * Contributors: gthomas
14  * Date:         2000-07-14
15  * Purpose:
16  * Description:
17  *
18  * This code is part of RedBoot (tm).
19  *
20  *####DESCRIPTIONEND####
21  *
22  *==========================================================================
23  */
24
25 #ifndef _XYZMODEM_H_
26 #define _XYZMODEM_H_
27
28 #define xyzModem_xmodem 1
29 #define xyzModem_ymodem 2
30 /* Don't define this until the protocol support is in place */
31 /*#define xyzModem_zmodem 3 */
32
33 #define xyzModem_access   -1
34 #define xyzModem_noZmodem -2
35 #define xyzModem_timeout  -3
36 #define xyzModem_eof      -4
37 #define xyzModem_cancel   -5
38 #define xyzModem_frame    -6
39 #define xyzModem_cksum    -7
40 #define xyzModem_sequence -8
41
42 #define xyzModem_close 1
43 #define xyzModem_abort 2
44
45
46 #define CYGNUM_CALL_IF_SET_COMM_ID_QUERY_CURRENT
47 #define CYGACC_CALL_IF_SET_CONSOLE_COMM(x)
48
49 #define diag_vprintf vprintf
50 #define diag_printf printf
51 #define diag_vsprintf vsprintf
52
53 #define CYGACC_CALL_IF_DELAY_US(x) udelay(x)
54
55 typedef struct {
56     char *filename;
57     int   mode;
58     int   chan;
59 } connection_info_t;
60
61
62
63 int   xyzModem_stream_open(connection_info_t *info, int *err);
64 void  xyzModem_stream_close(int *err);
65 void  xyzModem_stream_terminate(bool method, int (*getc)(void));
66 int   xyzModem_stream_read(char *buf, int size, int *err);
67 char *xyzModem_error(int err);
68
69 #endif /* _XYZMODEM_H_ */