Add <devctl.h> per POSIX 1003.26-2003
This commit is contained in:
		
							
								
								
									
										51
									
								
								newlib/libc/include/devctl.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										51
									
								
								newlib/libc/include/devctl.h
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,51 @@ | ||||
| /* | ||||
|  * Copyright (c) 2016 Joel Sherrill <joel@rtems.org>.  All rights reserved. | ||||
|  * | ||||
|  * Redistribution and use in source and binary forms, with or without | ||||
|  * modification, are permitted provided that the following conditions | ||||
|  * are met: | ||||
|  * 1. Redistributions of source code must retain the above copyright | ||||
|  *    notice, this list of conditions and the following disclaimer. | ||||
|  * 2. Redistributions in binary form must reproduce the above copyright | ||||
|  *    notice, this list of conditions and the following disclaimer in the | ||||
|  *    documentation and/or other materials provided with the distribution. | ||||
|  * | ||||
|  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND | ||||
|  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE | ||||
|  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE | ||||
|  * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE | ||||
|  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||
|  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS | ||||
|  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) | ||||
|  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT | ||||
|  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY | ||||
|  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF | ||||
|  * SUCH DAMAGE. | ||||
|  */ | ||||
|  | ||||
| #ifndef _POSIX_DEVCTL_h_ | ||||
| #define _POSIX_DEVCTL_h_ | ||||
|  | ||||
| /* | ||||
|  * The posix_devctl() method is defined by POSIX 1003.26-2003. Aside | ||||
|  * from the single method, it adds the following requirements: | ||||
|  * | ||||
|  *   + define _POSIX_26_VERSION to 200312L | ||||
|  *   + add _SC_POSIX_26_VERSION in <unistd.h>. Return _POSIX_26_VERSION | ||||
|  *   + application must define _POSIX_26_C_SOURCE to use posix_devctl(). | ||||
|  *   + posix_devctl() is prototyped in <devctl.h> | ||||
|  */ | ||||
|  | ||||
| #ifdef _POSIX_26_C_SOURCE | ||||
| #include <stddef.h> | ||||
|  | ||||
| int posix_devctl( | ||||
|   int            fd, | ||||
|   int            dcmd, | ||||
|   void *restrict dev_data_ptr, | ||||
|   size_t         nbyte, | ||||
|   int *restrict  dev_info_ptr | ||||
| ); | ||||
| #endif | ||||
|  | ||||
| #endif | ||||
| @@ -366,6 +366,9 @@ extern "C" { | ||||
| /* UNIX98 added some new pthread mutex attributes */ | ||||
| #define _UNIX98_THREAD_MUTEX_ATTRIBUTES         1 | ||||
|  | ||||
| /* POSIX 1003.26-2003 defined device control method */ | ||||
| #define _POSIX_26_VERSION			200312L | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /* XMK loosely adheres to POSIX -- 1003.1 */ | ||||
|   | ||||
| @@ -459,6 +459,7 @@ int	_EXFUN(unlinkat, (int, const char *, int)); | ||||
| #define _SC_LEVEL4_CACHE_SIZE           137 | ||||
| #define _SC_LEVEL4_CACHE_ASSOC          138 | ||||
| #define _SC_LEVEL4_CACHE_LINESIZE       139 | ||||
| #define _SC_POSIX_26_VERSION            140 | ||||
|  | ||||
| /* | ||||
|  *  pathconf values per IEEE Std 1003.1, 2008 Edition | ||||
|   | ||||
		Reference in New Issue
	
	Block a user