1 // SPDX-License-Identifier: GPL-2.0 2 3 //! UAPI Bindings. 4 //! 5 //! Contains the bindings generated by `bindgen` for UAPI interfaces. 6 //! 7 //! This crate may be used directly by drivers that need to interact with 8 //! userspace APIs. 9 10 #![no_std] 11 #![allow( 12 clippy::all, 13 clippy::as_underscore, 14 clippy::cast_lossless, 15 clippy::ptr_as_ptr, 16 clippy::ref_as_ptr, 17 clippy::undocumented_unsafe_blocks, 18 dead_code, 19 missing_docs, 20 non_camel_case_types, 21 non_upper_case_globals, 22 non_snake_case, 23 improper_ctypes, 24 unreachable_pub, 25 unsafe_op_in_unsafe_fn 26 )] 27 #![cfg_attr(CONFIG_RUSTC_HAS_UNNECESSARY_TRANSMUTES, allow(unnecessary_transmutes))] 28 #![cfg_attr( 29 CONFIG_RUSTC_HAS_SUSPICIOUS_RUNTIME_SYMBOL_DEFINITIONS, 30 allow(suspicious_runtime_symbol_definitions) 31 )] 32 #![feature(cfi_encoding)] 33 34 // Manual definition of blocklisted types. 35 type __kernel_size_t = usize; 36 type __kernel_ssize_t = isize; 37 type __kernel_ptrdiff_t = isize; 38 39 use pin_init::MaybeZeroable; 40 41 include!(concat!(env!("OBJTREE"), "/rust/uapi/uapi_generated.rs")); 42