summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libcpu/sh/sh7045/include/sci.h
blob: dc34371d48a87a96372f5b2f1d9906fcb27dfe0e (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
/*
 *  Driver for the sh2 704x on-chip serial devices (sci)
 *
 *  Authors: Ralf Corsepius (corsepiu@faw.uni-ulm.de) and
 *           Bernd Becker (becker@faw.uni-ulm.de)
 *
 *  COPYRIGHT (c) 1997-1998, FAW Ulm, Germany
 *
 *  This program 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.
 *
 *
 *  COPYRIGHT (c) 1998.
 *  On-Line Applications Research Corporation (OAR).
 *
 *  The license and distribution terms for this file may be
 *  found in the file LICENSE in this distribution or at
 *  http://www.rtems.org/license/LICENSE.
 */

#ifndef _sh_sci_h
#define _sh_sci_h

#include <rtems/libio.h>

#ifdef __cplusplus
extern "C" {
#endif

/*
 * Devices are set to 9600 bps, 8 databits, 1 stopbit, no
 * parity and asynchronous mode by default.
 *
 * NOTE:
 *       The onboard serial devices of the SH do not support hardware
 *       handshake.
 */

#define DEVSCI_DRIVER_TABLE_ENTRY \
  { sh_sci_initialize, sh_sci_open, sh_sci_close, sh_sci_read, \
      sh_sci_write, sh_sci_control }

extern rtems_device_driver sh_sci_initialize(
  rtems_device_major_number,
  rtems_device_minor_number,
  void *
);

extern rtems_device_driver sh_sci_open(
  rtems_device_major_number,
  rtems_device_minor_number,
  void *
);

extern rtems_device_driver sh_sci_close(
  rtems_device_major_number,
  rtems_device_minor_number,
  void *
);

extern rtems_device_driver sh_sci_read(
  rtems_device_major_number,
  rtems_device_minor_number,
  void *
);

extern rtems_device_driver sh_sci_write(
  rtems_device_major_number,
  rtems_device_minor_number,
  void *
);

extern rtems_device_driver sh_sci_control(
  rtems_device_major_number,
  rtems_device_minor_number,
  void *
);

extern const rtems_termios_callbacks * sh_sci_get_termios_handlers(
  bool poll
);


#ifdef __cplusplus
}
#endif

#endif