1 #ifndef CYGONCE_CONFIG_KEYS_H
2 #define CYGONCE_CONFIG_KEYS_H
3 // ====================================================================
7 // Device I/O "Keys" for get/put config functions
9 // ====================================================================
10 //####ECOSGPLCOPYRIGHTBEGIN####
11 // -------------------------------------------
12 // This file is part of eCos, the Embedded Configurable Operating System.
13 // Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc.
15 // eCos is free software; you can redistribute it and/or modify it under
16 // the terms of the GNU General Public License as published by the Free
17 // Software Foundation; either version 2 or (at your option) any later version.
19 // eCos is distributed in the hope that it will be useful, but WITHOUT ANY
20 // WARRANTY; without even the implied warranty of MERCHANTABILITY or
21 // FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
24 // You should have received a copy of the GNU General Public License along
25 // with eCos; if not, write to the Free Software Foundation, Inc.,
26 // 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
28 // As a special exception, if other files instantiate templates or use macros
29 // or inline functions from this file, or you compile this file and link it
30 // with other works to produce a work based on this file, this file does not
31 // by itself cause the resulting work to be covered by the GNU General Public
32 // License. However the source code for this file must still be made available
33 // in accordance with section (3) of the GNU General Public License.
35 // This exception does not invalidate any other reasons why a work based on
36 // this file might be covered by the GNU General Public License.
38 // Alternative licenses for eCos may be arranged by contacting Red Hat, Inc.
39 // at http://sources.redhat.com/ecos/ecos-license/
40 // -------------------------------------------
41 //####ECOSGPLCOPYRIGHTEND####
42 // ====================================================================
43 //#####DESCRIPTIONBEGIN####
46 // Contributors: gthomas,jskov,grante,jlarmour
48 // Purpose: Repository for all get/put config "keys"
51 //####DESCRIPTIONEND####
53 // ====================================================================
55 // This file contains all of the 'key' values used by all I/O components.
56 // It is placed in this single repository to make it easy to reduce conflicts.
58 // ======== 0x0100 Serial ====================================================
59 // Get/Set configuration 'key' values for low-level serial I/O
61 #define CYG_IO_GET_CONFIG_SERIAL_INFO 0x0101
62 #define CYG_IO_GET_CONFIG_SERIAL_OUTPUT_DRAIN 0x0102
63 #define CYG_IO_GET_CONFIG_SERIAL_OUTPUT_FLUSH 0x0103
64 #define CYG_IO_SET_CONFIG_SERIAL_OUTPUT_FLUSH CYG_IO_GET_CONFIG_SERIAL_OUTPUT_FLUSH
65 #define CYG_IO_GET_CONFIG_SERIAL_INPUT_FLUSH 0x0104
66 #define CYG_IO_SET_CONFIG_SERIAL_INPUT_FLUSH CYG_IO_GET_CONFIG_SERIAL_INPUT_FLUSH
67 #define CYG_IO_GET_CONFIG_SERIAL_ABORT 0x0105
68 #define CYG_IO_GET_CONFIG_SERIAL_BUFFER_INFO 0x0111
69 #define CYG_IO_GET_CONFIG_SERIAL_FLOW_CONTROL_METHOD 0x0112
71 #define CYG_IO_SET_CONFIG_SERIAL_INFO 0x0181
72 #define CYG_IO_SET_CONFIG_SERIAL_HW_RX_FLOW_THROTTLE 0x0184
73 #define CYG_IO_SET_CONFIG_SERIAL_HW_FLOW_CONFIG 0x0185
74 #define CYG_IO_SET_CONFIG_SERIAL_FLOW_CONTROL_METHOD 0x0186
75 #define CYG_IO_SET_CONFIG_SERIAL_FLOW_CONTROL_FORCE 0x0187
76 #define CYG_IO_SET_CONFIG_SERIAL_STATUS_CALLBACK 0x0188
77 #define CYG_IO_SET_CONFIG_SERIAL_HW_BREAK 0x0189
79 // Compatibility values. Use of these is deprecated, the generic symbols
80 // should be used instead.
81 #define CYG_IO_GET_CONFIG_SERIAL_READ_BLOCKING CYG_IO_GET_CONFIG_READ_BLOCKING
82 #define CYG_IO_GET_CONFIG_SERIAL_WRITE_BLOCKING CYG_IO_GET_CONFIG_WRITE_BLOCKING
83 #define CYG_IO_SET_CONFIG_SERIAL_READ_BLOCKING CYG_IO_SET_CONFIG_READ_BLOCKING
84 #define CYG_IO_SET_CONFIG_SERIAL_WRITE_BLOCKING CYG_IO_SET_CONFIG_WRITE_BLOCKING
86 // ======== 0x0200 TTY =======================================================
87 // Get/Set configuration 'key' values for tty-like driver
88 #define CYG_IO_GET_CONFIG_TTY_INFO 0x0201 // Get channel configuration
89 #define CYG_IO_SET_CONFIG_TTY_INFO 0x0281 // Set channel configuration
92 // ======== 0x0300 DSP =======================================================
93 // Get/Set configuration 'key' values for low-level DSP I/O
94 #define CYG_IO_GET_CONFIG_DSP_OUTPUT_DRAIN 0x0301
95 #define CYG_IO_GET_CONFIG_DSP_OUTPUT_FLUSH 0x0302
96 #define CYG_IO_GET_CONFIG_DSP_INPUT_FLUSH 0x0303
97 #define CYG_IO_GET_CONFIG_DSP_ABORT 0x0304
98 #define CYG_IO_GET_CONFIG_DSP_INPUT_OVERFLOW_RESET 0x0307
100 // Compatibility values. Use of these is deprecated, the generic symbols
101 // should be used instead.
102 #define CYG_IO_GET_CONFIG_DSP_READ_BLOCKING CYG_IO_GET_CONFIG_READ_BLOCKING
103 #define CYG_IO_GET_CONFIG_DSP_WRITE_BLOCKING CYG_IO_GET_CONFIG_WRITE_BLOCKING
104 #define CYG_IO_SET_CONFIG_DSP_READ_BLOCKING CYG_IO_SET_CONFIG_READ_BLOCKING
105 #define CYG_IO_SET_CONFIG_DSP_WRITE_BLOCKING CYG_IO_SET_CONFIG_WRITE_BLOCKING
107 // ======== 0x400 DSP =======================================================
108 // Get/Set configuration 'key' values for termios emulation
110 #define CYG_IO_GET_CONFIG_TERMIOS 0x0400
111 #define CYG_IO_SET_CONFIG_TERMIOS 0x0401
113 // ======== 0x600 FLASH =====================================================
114 // Get/Set configuration 'key' values for FLASH drivers
116 #define CYG_IO_GET_CONFIG_FLASH_ERASE 0x600
117 #define CYG_IO_GET_CONFIG_FLASH_QUERY 0x601
118 #define CYG_IO_GET_CONFIG_FLASH_LOCK 0x602
119 #define CYG_IO_GET_CONFIG_FLASH_UNLOCK 0x603
120 #define CYG_IO_GET_CONFIG_FLASH_VERIFY 0x604
121 #define CYG_IO_GET_CONFIG_FLASH_DEVSIZE 0x605
122 #define CYG_IO_GET_CONFIG_FLASH_BLOCKSIZE 0x606
124 #define CYG_IO_SET_CONFIG_FLASH_FIS_NAME 0x680
126 // ======== 0x700 DISK =======================================================
127 // Get/Set configuration 'key' values for DISK I/O
129 #define CYG_IO_GET_CONFIG_DISK_INFO 0x700
131 // ======== 0x800 CAN ========================================================
132 // Get/Set configuration 'key' values for DISK I/O
134 #define CYG_IO_GET_CONFIG_CAN_INFO 0x0801
135 #define CYG_IO_GET_CONFIG_CAN_BUFFER_INFO 0x0802
136 #define CYG_IO_GET_CONFIG_CAN_TIMEOUT 0x0803
138 #define CYG_IO_SET_CONFIG_CAN_INFO 0x0881
139 #define CYG_IO_SET_CONFIG_CAN_TIMEOUT 0x0883
140 #define CYG_IO_SET_CONFIG_CAN_RTR_BUF 0x0884
142 // ======== 0x1000 Generic ===================================================
143 // Get/Set configuration 'key' values that can apply to more than one
146 #define CYG_IO_GET_CONFIG_READ_BLOCKING 0x1001
147 #define CYG_IO_GET_CONFIG_WRITE_BLOCKING 0x1002
149 #define CYG_IO_SET_CONFIG_READ_BLOCKING 0x1081
150 #define CYG_IO_SET_CONFIG_WRITE_BLOCKING 0x1082
153 #endif /* CYGONCE_CONFIG_KEYS_H */
154 /* EOF config_keys.h */