1 # ====================================================================
5 # eCos IO configuration data
7 # ====================================================================
8 #####ECOSGPLCOPYRIGHTBEGIN####
9 ## -------------------------------------------
10 ## This file is part of eCos, the Embedded Configurable Operating System.
11 ## Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc.
13 ## eCos is free software; you can redistribute it and/or modify it under
14 ## the terms of the GNU General Public License as published by the Free
15 ## Software Foundation; either version 2 or (at your option) any later version.
17 ## eCos is distributed in the hope that it will be useful, but WITHOUT ANY
18 ## WARRANTY; without even the implied warranty of MERCHANTABILITY or
19 ## FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
22 ## You should have received a copy of the GNU General Public License along
23 ## with eCos; if not, write to the Free Software Foundation, Inc.,
24 ## 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
26 ## As a special exception, if other files instantiate templates or use macros
27 ## or inline functions from this file, or you compile this file and link it
28 ## with other works to produce a work based on this file, this file does not
29 ## by itself cause the resulting work to be covered by the GNU General Public
30 ## License. However the source code for this file must still be made available
31 ## in accordance with section (3) of the GNU General Public License.
33 ## This exception does not invalidate any other reasons why a work based on
34 ## this file might be covered by the GNU General Public License.
36 ## Alternative licenses for eCos may be arranged by contacting Red Hat, Inc.
37 ## at http://sources.redhat.com/ecos/ecos-license/
38 ## -------------------------------------------
39 #####ECOSGPLCOPYRIGHTEND####
40 # ====================================================================
41 ######DESCRIPTIONBEGIN####
43 # Author(s): Uwe Kindler
44 # Original data: gthomas
48 #####DESCRIPTIONEND####
50 # ====================================================================
52 cdl_package CYGPKG_IO_CAN {
53 display "CAN device drivers"
58 This option enables drivers for basic I/O services on
62 compile -library=libextras.a can.c
65 puts $::cdl_header "/***** proc output start *****/"
66 puts $::cdl_header "#include <pkgconf/system.h>"
67 puts $::cdl_header "#ifdef CYGDAT_IO_CAN_DEVICE_HEADER"
68 puts $::cdl_header "# include CYGDAT_IO_CAN_DEVICE_HEADER"
69 puts $::cdl_header "#endif "
70 puts $::cdl_header "/****** proc output end ******/"
73 cdl_interface CYGINT_IO_CAN_TIMESTAMP {
74 display "CAN driver supports timestamps"
77 cdl_option CYGOPT_IO_CAN_SUPPORT_TIMESTAMP {
78 display "Support CAN event timestamps"
79 requires { CYGINT_IO_CAN_TIMESTAMP > 0 }
82 If the CAN hardware driver supports some kind of timestamps
83 then this option enables propagation of timestamps to higher layers.
84 This may add some extra code to hardware drivers."
87 cdl_option CYGOPT_IO_CAN_TX_EVENT_SUPPORT {
88 display "Support TX events"
91 This option enables support for TX events. If a CAN message is
92 transmitted successfully a TX event will be inserted into the
93 receive event queue and propagated to higher layers. If this
94 option is enabled the RX event queue will be filled faster."
97 cdl_component CYGPKG_IO_CAN_DEVICES {
98 display "Hardware CAN device drivers"
102 This option enables the hardware device drivers
103 for the current platform."
106 cdl_option CYGOPT_IO_CAN_SUPPORT_NONBLOCKING {
107 display "Support non-blocking read and write calls"
110 This option enables extra code in the generic CAN driver
111 which allows clients to switch read() and write() call
112 semantics from blocking to non-blocking."
115 cdl_component CYGOPT_IO_CAN_SUPPORT_TIMEOUTS {
116 display "Support read/write timeouts"
119 active_if CYGPKG_KERNEL
120 requires CYGMFN_KERNEL_SYNCH_CONDVAR_TIMED_WAIT
121 requires CYGOPT_IO_CAN_SUPPORT_NONBLOCKING
123 Read and write operations are blocking calls. If no CAN message
124 arrives for a long time the calling thread remains blocked. If
125 nonblocking calls are enabled but the call should return after
126 a certain amount of time then this option should be enabled."
128 cdl_option CYGNUM_IO_CAN_DEFAULT_TIMEOUT_READ {
129 display "Default read timeout."
133 The initial timeout value in clock ticks for cyg_io_read() calls."
136 cdl_option CYGNUM_IO_CAN_DEFAULT_TIMEOUT_WRITE {
137 display "Default write timeout."
141 The initial timeout value in clock ticks for cyg_io_write() calls."
145 cdl_component CYGPKG_IO_CAN_OPTIONS {
146 display "CAN device driver build options"
149 Package specific build options including control over
150 compiler flags used only in building this package,
151 and details of which tests are built."
154 cdl_option CYGPKG_IO_CAN_CFLAGS_ADD {
155 display "Additional compiler flags"
160 This option modifies the set of compiler flags for
161 building the CAN device drivers. These flags are used in addition
162 to the set of global flags."
165 cdl_option CYGPKG_IO_CAN_CFLAGS_REMOVE {
166 display "Suppressed compiler flags"
171 This option modifies the set of compiler flags for
172 building the CAN device drivers. These flags are removed from
173 the set of global flags if present."