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