1 /* automatically generated by tools/bindgen-all-the-things */ 2 3 #![allow(clippy::missing_safety_doc)] 4 #![allow(clippy::undocumented_unsafe_blocks)] 5 #![allow(clippy::upper_case_acronyms)] 6 #![allow(non_upper_case_globals)] 7 #![allow(non_camel_case_types)] 8 #![allow(non_snake_case)] 9 #![allow(dead_code)] 10 11 // Added by kernel_loader/bindgen.sh 12 use zerocopy::FromBytes; 13 use zerocopy::Immutable; 14 use zerocopy::IntoBytes; 15 use zerocopy::KnownLayout; 16 17 pub const EM_NONE: u32 = 0; 18 pub const EM_M32: u32 = 1; 19 pub const EM_SPARC: u32 = 2; 20 pub const EM_386: u32 = 3; 21 pub const EM_68K: u32 = 4; 22 pub const EM_88K: u32 = 5; 23 pub const EM_486: u32 = 6; 24 pub const EM_860: u32 = 7; 25 pub const EM_MIPS: u32 = 8; 26 pub const EM_MIPS_RS3_LE: u32 = 10; 27 pub const EM_MIPS_RS4_BE: u32 = 10; 28 pub const EM_PARISC: u32 = 15; 29 pub const EM_SPARC32PLUS: u32 = 18; 30 pub const EM_PPC: u32 = 20; 31 pub const EM_PPC64: u32 = 21; 32 pub const EM_SPU: u32 = 23; 33 pub const EM_ARM: u32 = 40; 34 pub const EM_SH: u32 = 42; 35 pub const EM_SPARCV9: u32 = 43; 36 pub const EM_H8_300: u32 = 46; 37 pub const EM_IA_64: u32 = 50; 38 pub const EM_X86_64: u32 = 62; 39 pub const EM_S390: u32 = 22; 40 pub const EM_CRIS: u32 = 76; 41 pub const EM_M32R: u32 = 88; 42 pub const EM_MN10300: u32 = 89; 43 pub const EM_OPENRISC: u32 = 92; 44 pub const EM_ARCOMPACT: u32 = 93; 45 pub const EM_XTENSA: u32 = 94; 46 pub const EM_BLACKFIN: u32 = 106; 47 pub const EM_UNICORE: u32 = 110; 48 pub const EM_ALTERA_NIOS2: u32 = 113; 49 pub const EM_TI_C6000: u32 = 140; 50 pub const EM_HEXAGON: u32 = 164; 51 pub const EM_NDS32: u32 = 167; 52 pub const EM_AARCH64: u32 = 183; 53 pub const EM_TILEPRO: u32 = 188; 54 pub const EM_MICROBLAZE: u32 = 189; 55 pub const EM_TILEGX: u32 = 191; 56 pub const EM_ARCV2: u32 = 195; 57 pub const EM_RISCV: u32 = 243; 58 pub const EM_BPF: u32 = 247; 59 pub const EM_CSKY: u32 = 252; 60 pub const EM_LOONGARCH: u32 = 258; 61 pub const EM_FRV: u32 = 21569; 62 pub const EM_ALPHA: u32 = 36902; 63 pub const EM_CYGNUS_M32R: u32 = 36929; 64 pub const EM_S390_OLD: u32 = 41872; 65 pub const EM_CYGNUS_MN10300: u32 = 48879; 66 pub const PT_NULL: u32 = 0; 67 pub const PT_LOAD: u32 = 1; 68 pub const PT_DYNAMIC: u32 = 2; 69 pub const PT_INTERP: u32 = 3; 70 pub const PT_NOTE: u32 = 4; 71 pub const PT_SHLIB: u32 = 5; 72 pub const PT_PHDR: u32 = 6; 73 pub const PT_TLS: u32 = 7; 74 pub const PT_LOOS: u32 = 1610612736; 75 pub const PT_HIOS: u32 = 1879048191; 76 pub const PT_LOPROC: u32 = 1879048192; 77 pub const PT_HIPROC: u32 = 2147483647; 78 pub const PT_GNU_EH_FRAME: u32 = 1685382480; 79 pub const PT_GNU_STACK: u32 = 1685382481; 80 pub const PT_GNU_RELRO: u32 = 1685382482; 81 pub const PT_GNU_PROPERTY: u32 = 1685382483; 82 pub const PT_AARCH64_MEMTAG_MTE: u32 = 1879048194; 83 pub const PN_XNUM: u32 = 65535; 84 pub const ET_NONE: u32 = 0; 85 pub const ET_REL: u32 = 1; 86 pub const ET_EXEC: u32 = 2; 87 pub const ET_DYN: u32 = 3; 88 pub const ET_CORE: u32 = 4; 89 pub const ET_LOPROC: u32 = 65280; 90 pub const ET_HIPROC: u32 = 65535; 91 pub const DT_NULL: u32 = 0; 92 pub const DT_NEEDED: u32 = 1; 93 pub const DT_PLTRELSZ: u32 = 2; 94 pub const DT_PLTGOT: u32 = 3; 95 pub const DT_HASH: u32 = 4; 96 pub const DT_STRTAB: u32 = 5; 97 pub const DT_SYMTAB: u32 = 6; 98 pub const DT_RELA: u32 = 7; 99 pub const DT_RELASZ: u32 = 8; 100 pub const DT_RELAENT: u32 = 9; 101 pub const DT_STRSZ: u32 = 10; 102 pub const DT_SYMENT: u32 = 11; 103 pub const DT_INIT: u32 = 12; 104 pub const DT_FINI: u32 = 13; 105 pub const DT_SONAME: u32 = 14; 106 pub const DT_RPATH: u32 = 15; 107 pub const DT_SYMBOLIC: u32 = 16; 108 pub const DT_REL: u32 = 17; 109 pub const DT_RELSZ: u32 = 18; 110 pub const DT_RELENT: u32 = 19; 111 pub const DT_PLTREL: u32 = 20; 112 pub const DT_DEBUG: u32 = 21; 113 pub const DT_TEXTREL: u32 = 22; 114 pub const DT_JMPREL: u32 = 23; 115 pub const DT_ENCODING: u32 = 32; 116 pub const OLD_DT_LOOS: u32 = 1610612736; 117 pub const DT_LOOS: u32 = 1610612749; 118 pub const DT_HIOS: u32 = 1879044096; 119 pub const DT_VALRNGLO: u32 = 1879047424; 120 pub const DT_VALRNGHI: u32 = 1879047679; 121 pub const DT_ADDRRNGLO: u32 = 1879047680; 122 pub const DT_ADDRRNGHI: u32 = 1879047935; 123 pub const DT_VERSYM: u32 = 1879048176; 124 pub const DT_RELACOUNT: u32 = 1879048185; 125 pub const DT_RELCOUNT: u32 = 1879048186; 126 pub const DT_FLAGS_1: u32 = 1879048187; 127 pub const DT_VERDEF: u32 = 1879048188; 128 pub const DT_VERDEFNUM: u32 = 1879048189; 129 pub const DT_VERNEED: u32 = 1879048190; 130 pub const DT_VERNEEDNUM: u32 = 1879048191; 131 pub const OLD_DT_HIOS: u32 = 1879048191; 132 pub const DT_LOPROC: u32 = 1879048192; 133 pub const DT_HIPROC: u32 = 2147483647; 134 pub const STB_LOCAL: u32 = 0; 135 pub const STB_GLOBAL: u32 = 1; 136 pub const STB_WEAK: u32 = 2; 137 pub const STT_NOTYPE: u32 = 0; 138 pub const STT_OBJECT: u32 = 1; 139 pub const STT_FUNC: u32 = 2; 140 pub const STT_SECTION: u32 = 3; 141 pub const STT_FILE: u32 = 4; 142 pub const STT_COMMON: u32 = 5; 143 pub const STT_TLS: u32 = 6; 144 pub const EI_NIDENT: u32 = 16; 145 pub const PF_R: u32 = 4; 146 pub const PF_W: u32 = 2; 147 pub const PF_X: u32 = 1; 148 pub const SHT_NULL: u32 = 0; 149 pub const SHT_PROGBITS: u32 = 1; 150 pub const SHT_SYMTAB: u32 = 2; 151 pub const SHT_STRTAB: u32 = 3; 152 pub const SHT_RELA: u32 = 4; 153 pub const SHT_HASH: u32 = 5; 154 pub const SHT_DYNAMIC: u32 = 6; 155 pub const SHT_NOTE: u32 = 7; 156 pub const SHT_NOBITS: u32 = 8; 157 pub const SHT_REL: u32 = 9; 158 pub const SHT_SHLIB: u32 = 10; 159 pub const SHT_DYNSYM: u32 = 11; 160 pub const SHT_NUM: u32 = 12; 161 pub const SHT_LOPROC: u32 = 1879048192; 162 pub const SHT_HIPROC: u32 = 2147483647; 163 pub const SHT_LOUSER: u32 = 2147483648; 164 pub const SHT_HIUSER: u32 = 4294967295; 165 pub const SHF_WRITE: u32 = 1; 166 pub const SHF_ALLOC: u32 = 2; 167 pub const SHF_EXECINSTR: u32 = 4; 168 pub const SHF_RELA_LIVEPATCH: u32 = 1048576; 169 pub const SHF_RO_AFTER_INIT: u32 = 2097152; 170 pub const SHF_MASKPROC: u32 = 4026531840; 171 pub const SHN_UNDEF: u32 = 0; 172 pub const SHN_LORESERVE: u32 = 65280; 173 pub const SHN_LOPROC: u32 = 65280; 174 pub const SHN_HIPROC: u32 = 65311; 175 pub const SHN_LIVEPATCH: u32 = 65312; 176 pub const SHN_ABS: u32 = 65521; 177 pub const SHN_COMMON: u32 = 65522; 178 pub const SHN_HIRESERVE: u32 = 65535; 179 pub const EI_MAG0: u32 = 0; 180 pub const EI_MAG1: u32 = 1; 181 pub const EI_MAG2: u32 = 2; 182 pub const EI_MAG3: u32 = 3; 183 pub const EI_CLASS: u32 = 4; 184 pub const EI_DATA: u32 = 5; 185 pub const EI_VERSION: u32 = 6; 186 pub const EI_OSABI: u32 = 7; 187 pub const EI_PAD: u32 = 8; 188 pub const ELFMAG0: u32 = 127; 189 pub const ELFMAG1: u8 = 69u8; 190 pub const ELFMAG2: u8 = 76u8; 191 pub const ELFMAG3: u8 = 70u8; 192 pub const ELFMAG: &[u8; 5] = b"\x7FELF\0"; 193 pub const SELFMAG: u32 = 4; 194 pub const ELFCLASSNONE: u32 = 0; 195 pub const ELFCLASS32: u32 = 1; 196 pub const ELFCLASS64: u32 = 2; 197 pub const ELFCLASSNUM: u32 = 3; 198 pub const ELFDATANONE: u32 = 0; 199 pub const ELFDATA2LSB: u32 = 1; 200 pub const ELFDATA2MSB: u32 = 2; 201 pub const EV_NONE: u32 = 0; 202 pub const EV_CURRENT: u32 = 1; 203 pub const EV_NUM: u32 = 2; 204 pub const ELFOSABI_NONE: u32 = 0; 205 pub const ELFOSABI_LINUX: u32 = 3; 206 pub const ELF_OSABI: u32 = 0; 207 pub const NT_PRSTATUS: u32 = 1; 208 pub const NT_PRFPREG: u32 = 2; 209 pub const NT_PRPSINFO: u32 = 3; 210 pub const NT_TASKSTRUCT: u32 = 4; 211 pub const NT_AUXV: u32 = 6; 212 pub const NT_SIGINFO: u32 = 1397311305; 213 pub const NT_FILE: u32 = 1179208773; 214 pub const NT_PRXFPREG: u32 = 1189489535; 215 pub const NT_PPC_VMX: u32 = 256; 216 pub const NT_PPC_SPE: u32 = 257; 217 pub const NT_PPC_VSX: u32 = 258; 218 pub const NT_PPC_TAR: u32 = 259; 219 pub const NT_PPC_PPR: u32 = 260; 220 pub const NT_PPC_DSCR: u32 = 261; 221 pub const NT_PPC_EBB: u32 = 262; 222 pub const NT_PPC_PMU: u32 = 263; 223 pub const NT_PPC_TM_CGPR: u32 = 264; 224 pub const NT_PPC_TM_CFPR: u32 = 265; 225 pub const NT_PPC_TM_CVMX: u32 = 266; 226 pub const NT_PPC_TM_CVSX: u32 = 267; 227 pub const NT_PPC_TM_SPR: u32 = 268; 228 pub const NT_PPC_TM_CTAR: u32 = 269; 229 pub const NT_PPC_TM_CPPR: u32 = 270; 230 pub const NT_PPC_TM_CDSCR: u32 = 271; 231 pub const NT_PPC_PKEY: u32 = 272; 232 pub const NT_PPC_DEXCR: u32 = 273; 233 pub const NT_PPC_HASHKEYR: u32 = 274; 234 pub const NT_386_TLS: u32 = 512; 235 pub const NT_386_IOPERM: u32 = 513; 236 pub const NT_X86_XSTATE: u32 = 514; 237 pub const NT_X86_SHSTK: u32 = 516; 238 pub const NT_X86_XSAVE_LAYOUT: u32 = 517; 239 pub const NT_S390_HIGH_GPRS: u32 = 768; 240 pub const NT_S390_TIMER: u32 = 769; 241 pub const NT_S390_TODCMP: u32 = 770; 242 pub const NT_S390_TODPREG: u32 = 771; 243 pub const NT_S390_CTRS: u32 = 772; 244 pub const NT_S390_PREFIX: u32 = 773; 245 pub const NT_S390_LAST_BREAK: u32 = 774; 246 pub const NT_S390_SYSTEM_CALL: u32 = 775; 247 pub const NT_S390_TDB: u32 = 776; 248 pub const NT_S390_VXRS_LOW: u32 = 777; 249 pub const NT_S390_VXRS_HIGH: u32 = 778; 250 pub const NT_S390_GS_CB: u32 = 779; 251 pub const NT_S390_GS_BC: u32 = 780; 252 pub const NT_S390_RI_CB: u32 = 781; 253 pub const NT_S390_PV_CPU_DATA: u32 = 782; 254 pub const NT_ARM_VFP: u32 = 1024; 255 pub const NT_ARM_TLS: u32 = 1025; 256 pub const NT_ARM_HW_BREAK: u32 = 1026; 257 pub const NT_ARM_HW_WATCH: u32 = 1027; 258 pub const NT_ARM_SYSTEM_CALL: u32 = 1028; 259 pub const NT_ARM_SVE: u32 = 1029; 260 pub const NT_ARM_PAC_MASK: u32 = 1030; 261 pub const NT_ARM_PACA_KEYS: u32 = 1031; 262 pub const NT_ARM_PACG_KEYS: u32 = 1032; 263 pub const NT_ARM_TAGGED_ADDR_CTRL: u32 = 1033; 264 pub const NT_ARM_PAC_ENABLED_KEYS: u32 = 1034; 265 pub const NT_ARM_SSVE: u32 = 1035; 266 pub const NT_ARM_ZA: u32 = 1036; 267 pub const NT_ARM_ZT: u32 = 1037; 268 pub const NT_ARM_FPMR: u32 = 1038; 269 pub const NT_ARM_POE: u32 = 1039; 270 pub const NT_ARC_V2: u32 = 1536; 271 pub const NT_VMCOREDD: u32 = 1792; 272 pub const NT_MIPS_DSP: u32 = 2048; 273 pub const NT_MIPS_FP_MODE: u32 = 2049; 274 pub const NT_MIPS_MSA: u32 = 2050; 275 pub const NT_RISCV_CSR: u32 = 2304; 276 pub const NT_RISCV_VECTOR: u32 = 2305; 277 pub const NT_LOONGARCH_CPUCFG: u32 = 2560; 278 pub const NT_LOONGARCH_CSR: u32 = 2561; 279 pub const NT_LOONGARCH_LSX: u32 = 2562; 280 pub const NT_LOONGARCH_LASX: u32 = 2563; 281 pub const NT_LOONGARCH_LBT: u32 = 2564; 282 pub const NT_LOONGARCH_HW_BREAK: u32 = 2565; 283 pub const NT_LOONGARCH_HW_WATCH: u32 = 2566; 284 pub const NT_GNU_PROPERTY_TYPE_0: u32 = 5; 285 pub const GNU_PROPERTY_AARCH64_FEATURE_1_AND: u32 = 3221225472; 286 pub const GNU_PROPERTY_AARCH64_FEATURE_1_BTI: u32 = 1; 287 pub const false_: _bindgen_ty_1 = 0; 288 pub const true_: _bindgen_ty_1 = 1; 289 pub type _bindgen_ty_1 = ::std::os::raw::c_uint; 290 pub type Elf32_Addr = u32; 291 pub type Elf32_Half = u16; 292 pub type Elf32_Off = u32; 293 pub type Elf32_Word = u32; 294 pub type Elf64_Addr = u64; 295 pub type Elf64_Half = u16; 296 pub type Elf64_Off = u64; 297 pub type Elf64_Word = u32; 298 pub type Elf64_Xword = u64; 299 #[repr(C)] 300 #[derive(Debug, Default, Copy, Clone, FromBytes, Immutable, IntoBytes, KnownLayout)] 301 pub struct elf32_hdr { 302 pub e_ident: [::std::os::raw::c_uchar; 16usize], 303 pub e_type: Elf32_Half, 304 pub e_machine: Elf32_Half, 305 pub e_version: Elf32_Word, 306 pub e_entry: Elf32_Addr, 307 pub e_phoff: Elf32_Off, 308 pub e_shoff: Elf32_Off, 309 pub e_flags: Elf32_Word, 310 pub e_ehsize: Elf32_Half, 311 pub e_phentsize: Elf32_Half, 312 pub e_phnum: Elf32_Half, 313 pub e_shentsize: Elf32_Half, 314 pub e_shnum: Elf32_Half, 315 pub e_shstrndx: Elf32_Half, 316 } 317 pub type Elf32_Ehdr = elf32_hdr; 318 #[repr(C)] 319 #[derive(Debug, Default, Copy, Clone, FromBytes, Immutable, IntoBytes, KnownLayout)] 320 pub struct elf64_hdr { 321 pub e_ident: [::std::os::raw::c_uchar; 16usize], 322 pub e_type: Elf64_Half, 323 pub e_machine: Elf64_Half, 324 pub e_version: Elf64_Word, 325 pub e_entry: Elf64_Addr, 326 pub e_phoff: Elf64_Off, 327 pub e_shoff: Elf64_Off, 328 pub e_flags: Elf64_Word, 329 pub e_ehsize: Elf64_Half, 330 pub e_phentsize: Elf64_Half, 331 pub e_phnum: Elf64_Half, 332 pub e_shentsize: Elf64_Half, 333 pub e_shnum: Elf64_Half, 334 pub e_shstrndx: Elf64_Half, 335 } 336 pub type Elf64_Ehdr = elf64_hdr; 337 #[repr(C)] 338 #[derive(Debug, Default, Copy, Clone, FromBytes, Immutable, IntoBytes, KnownLayout)] 339 pub struct elf32_phdr { 340 pub p_type: Elf32_Word, 341 pub p_offset: Elf32_Off, 342 pub p_vaddr: Elf32_Addr, 343 pub p_paddr: Elf32_Addr, 344 pub p_filesz: Elf32_Word, 345 pub p_memsz: Elf32_Word, 346 pub p_flags: Elf32_Word, 347 pub p_align: Elf32_Word, 348 } 349 pub type Elf32_Phdr = elf32_phdr; 350 #[repr(C)] 351 #[derive(Debug, Default, Copy, Clone, FromBytes, Immutable, IntoBytes, KnownLayout)] 352 pub struct elf64_phdr { 353 pub p_type: Elf64_Word, 354 pub p_flags: Elf64_Word, 355 pub p_offset: Elf64_Off, 356 pub p_vaddr: Elf64_Addr, 357 pub p_paddr: Elf64_Addr, 358 pub p_filesz: Elf64_Xword, 359 pub p_memsz: Elf64_Xword, 360 pub p_align: Elf64_Xword, 361 } 362 pub type Elf64_Phdr = elf64_phdr; 363