• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Copyright 2019 The ChromiumOS Authors
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 
5 #![allow(warnings)]
6 
7 /* automatically generated by rust-bindgen */
8 
9 // manually added, needs to be included when this crate gets automated bindgen
10 use zerocopy::AsBytes;
11 use zerocopy::FromBytes;
12 
13 pub const MPC_SIGNATURE: &'static [u8; 5usize] = b"PCMP\x00";
14 pub const MP_PROCESSOR: ::std::os::raw::c_uint = 0;
15 pub const MP_BUS: ::std::os::raw::c_uint = 1;
16 pub const MP_IOAPIC: ::std::os::raw::c_uint = 2;
17 pub const MP_INTSRC: ::std::os::raw::c_uint = 3;
18 pub const MP_LINTSRC: ::std::os::raw::c_uint = 4;
19 pub const MP_TRANSLATION: ::std::os::raw::c_uint = 192;
20 pub const CPU_ENABLED: ::std::os::raw::c_uint = 1;
21 pub const CPU_BOOTPROCESSOR: ::std::os::raw::c_uint = 2;
22 pub const CPU_STEPPING_MASK: ::std::os::raw::c_uint = 15;
23 pub const CPU_MODEL_MASK: ::std::os::raw::c_uint = 240;
24 pub const CPU_FAMILY_MASK: ::std::os::raw::c_uint = 3840;
25 pub const BUSTYPE_EISA: &'static [u8; 5usize] = b"EISA\x00";
26 pub const BUSTYPE_ISA: &'static [u8; 4usize] = b"ISA\x00";
27 pub const BUSTYPE_INTERN: &'static [u8; 7usize] = b"INTERN\x00";
28 pub const BUSTYPE_MCA: &'static [u8; 4usize] = b"MCA\x00";
29 pub const BUSTYPE_VL: &'static [u8; 3usize] = b"VL\x00";
30 pub const BUSTYPE_PCI: &'static [u8; 4usize] = b"PCI\x00";
31 pub const BUSTYPE_PCMCIA: &'static [u8; 7usize] = b"PCMCIA\x00";
32 pub const BUSTYPE_CBUS: &'static [u8; 5usize] = b"CBUS\x00";
33 pub const BUSTYPE_CBUSII: &'static [u8; 7usize] = b"CBUSII\x00";
34 pub const BUSTYPE_FUTURE: &'static [u8; 7usize] = b"FUTURE\x00";
35 pub const BUSTYPE_MBI: &'static [u8; 4usize] = b"MBI\x00";
36 pub const BUSTYPE_MBII: &'static [u8; 5usize] = b"MBII\x00";
37 pub const BUSTYPE_MPI: &'static [u8; 4usize] = b"MPI\x00";
38 pub const BUSTYPE_MPSA: &'static [u8; 5usize] = b"MPSA\x00";
39 pub const BUSTYPE_NUBUS: &'static [u8; 6usize] = b"NUBUS\x00";
40 pub const BUSTYPE_TC: &'static [u8; 3usize] = b"TC\x00";
41 pub const BUSTYPE_VME: &'static [u8; 4usize] = b"VME\x00";
42 pub const BUSTYPE_XPRESS: &'static [u8; 7usize] = b"XPRESS\x00";
43 pub const MPC_APIC_USABLE: ::std::os::raw::c_uint = 1;
44 pub const MP_IRQDIR_DEFAULT: ::std::os::raw::c_uint = 0;
45 pub const MP_IRQDIR_HIGH: ::std::os::raw::c_uint = 1;
46 pub const MP_IRQDIR_LOW: ::std::os::raw::c_uint = 3;
47 pub const MP_LEVEL_TRIGGER: ::std::os::raw::c_uint = 0xc;
48 pub const MP_APIC_ALL: ::std::os::raw::c_uint = 255;
49 pub const MPC_OEM_SIGNATURE: &'static [u8; 5usize] = b"_OEM\x00";
50 #[repr(C)]
51 #[derive(Debug, Default, Copy, FromBytes, AsBytes)]
52 pub struct mpf_intel {
53     pub signature: [::std::os::raw::c_char; 4usize],
54     pub physptr: ::std::os::raw::c_uint,
55     pub length: ::std::os::raw::c_uchar,
56     pub specification: ::std::os::raw::c_uchar,
57     pub checksum: ::std::os::raw::c_uchar,
58     pub feature1: ::std::os::raw::c_uchar,
59     pub feature2: ::std::os::raw::c_uchar,
60     pub feature3: ::std::os::raw::c_uchar,
61     pub feature4: ::std::os::raw::c_uchar,
62     pub feature5: ::std::os::raw::c_uchar,
63 }
64 #[test]
bindgen_test_layout_mpf_intel()65 fn bindgen_test_layout_mpf_intel() {
66     assert_eq!(
67         ::std::mem::size_of::<mpf_intel>(),
68         16usize,
69         concat!("Size of: ", stringify!(mpf_intel))
70     );
71     assert_eq!(
72         ::std::mem::align_of::<mpf_intel>(),
73         4usize,
74         concat!("Alignment of ", stringify!(mpf_intel))
75     );
76     assert_eq!(
77         unsafe { &(*(0 as *const mpf_intel)).signature as *const _ as usize },
78         0usize,
79         concat!(
80             "Alignment of field: ",
81             stringify!(mpf_intel),
82             "::",
83             stringify!(signature)
84         )
85     );
86     assert_eq!(
87         unsafe { &(*(0 as *const mpf_intel)).physptr as *const _ as usize },
88         4usize,
89         concat!(
90             "Alignment of field: ",
91             stringify!(mpf_intel),
92             "::",
93             stringify!(physptr)
94         )
95     );
96     assert_eq!(
97         unsafe { &(*(0 as *const mpf_intel)).length as *const _ as usize },
98         8usize,
99         concat!(
100             "Alignment of field: ",
101             stringify!(mpf_intel),
102             "::",
103             stringify!(length)
104         )
105     );
106     assert_eq!(
107         unsafe { &(*(0 as *const mpf_intel)).specification as *const _ as usize },
108         9usize,
109         concat!(
110             "Alignment of field: ",
111             stringify!(mpf_intel),
112             "::",
113             stringify!(specification)
114         )
115     );
116     assert_eq!(
117         unsafe { &(*(0 as *const mpf_intel)).checksum as *const _ as usize },
118         10usize,
119         concat!(
120             "Alignment of field: ",
121             stringify!(mpf_intel),
122             "::",
123             stringify!(checksum)
124         )
125     );
126     assert_eq!(
127         unsafe { &(*(0 as *const mpf_intel)).feature1 as *const _ as usize },
128         11usize,
129         concat!(
130             "Alignment of field: ",
131             stringify!(mpf_intel),
132             "::",
133             stringify!(feature1)
134         )
135     );
136     assert_eq!(
137         unsafe { &(*(0 as *const mpf_intel)).feature2 as *const _ as usize },
138         12usize,
139         concat!(
140             "Alignment of field: ",
141             stringify!(mpf_intel),
142             "::",
143             stringify!(feature2)
144         )
145     );
146     assert_eq!(
147         unsafe { &(*(0 as *const mpf_intel)).feature3 as *const _ as usize },
148         13usize,
149         concat!(
150             "Alignment of field: ",
151             stringify!(mpf_intel),
152             "::",
153             stringify!(feature3)
154         )
155     );
156     assert_eq!(
157         unsafe { &(*(0 as *const mpf_intel)).feature4 as *const _ as usize },
158         14usize,
159         concat!(
160             "Alignment of field: ",
161             stringify!(mpf_intel),
162             "::",
163             stringify!(feature4)
164         )
165     );
166     assert_eq!(
167         unsafe { &(*(0 as *const mpf_intel)).feature5 as *const _ as usize },
168         15usize,
169         concat!(
170             "Alignment of field: ",
171             stringify!(mpf_intel),
172             "::",
173             stringify!(feature5)
174         )
175     );
176 }
177 impl Clone for mpf_intel {
clone(&self) -> Self178     fn clone(&self) -> Self {
179         *self
180     }
181 }
182 #[repr(C)]
183 #[derive(Debug, Default, Copy, FromBytes, AsBytes)]
184 pub struct mpc_table {
185     pub signature: [::std::os::raw::c_char; 4usize],
186     pub length: ::std::os::raw::c_ushort,
187     pub spec: ::std::os::raw::c_char,
188     pub checksum: ::std::os::raw::c_char,
189     pub oem: [::std::os::raw::c_char; 8usize],
190     pub productid: [::std::os::raw::c_char; 12usize],
191     pub oemptr: ::std::os::raw::c_uint,
192     pub oemsize: ::std::os::raw::c_ushort,
193     pub oemcount: ::std::os::raw::c_ushort,
194     pub lapic: ::std::os::raw::c_uint,
195     pub reserved: ::std::os::raw::c_uint,
196 }
197 #[test]
bindgen_test_layout_mpc_table()198 fn bindgen_test_layout_mpc_table() {
199     assert_eq!(
200         ::std::mem::size_of::<mpc_table>(),
201         44usize,
202         concat!("Size of: ", stringify!(mpc_table))
203     );
204     assert_eq!(
205         ::std::mem::align_of::<mpc_table>(),
206         4usize,
207         concat!("Alignment of ", stringify!(mpc_table))
208     );
209     assert_eq!(
210         unsafe { &(*(0 as *const mpc_table)).signature as *const _ as usize },
211         0usize,
212         concat!(
213             "Alignment of field: ",
214             stringify!(mpc_table),
215             "::",
216             stringify!(signature)
217         )
218     );
219     assert_eq!(
220         unsafe { &(*(0 as *const mpc_table)).length as *const _ as usize },
221         4usize,
222         concat!(
223             "Alignment of field: ",
224             stringify!(mpc_table),
225             "::",
226             stringify!(length)
227         )
228     );
229     assert_eq!(
230         unsafe { &(*(0 as *const mpc_table)).spec as *const _ as usize },
231         6usize,
232         concat!(
233             "Alignment of field: ",
234             stringify!(mpc_table),
235             "::",
236             stringify!(spec)
237         )
238     );
239     assert_eq!(
240         unsafe { &(*(0 as *const mpc_table)).checksum as *const _ as usize },
241         7usize,
242         concat!(
243             "Alignment of field: ",
244             stringify!(mpc_table),
245             "::",
246             stringify!(checksum)
247         )
248     );
249     assert_eq!(
250         unsafe { &(*(0 as *const mpc_table)).oem as *const _ as usize },
251         8usize,
252         concat!(
253             "Alignment of field: ",
254             stringify!(mpc_table),
255             "::",
256             stringify!(oem)
257         )
258     );
259     assert_eq!(
260         unsafe { &(*(0 as *const mpc_table)).productid as *const _ as usize },
261         16usize,
262         concat!(
263             "Alignment of field: ",
264             stringify!(mpc_table),
265             "::",
266             stringify!(productid)
267         )
268     );
269     assert_eq!(
270         unsafe { &(*(0 as *const mpc_table)).oemptr as *const _ as usize },
271         28usize,
272         concat!(
273             "Alignment of field: ",
274             stringify!(mpc_table),
275             "::",
276             stringify!(oemptr)
277         )
278     );
279     assert_eq!(
280         unsafe { &(*(0 as *const mpc_table)).oemsize as *const _ as usize },
281         32usize,
282         concat!(
283             "Alignment of field: ",
284             stringify!(mpc_table),
285             "::",
286             stringify!(oemsize)
287         )
288     );
289     assert_eq!(
290         unsafe { &(*(0 as *const mpc_table)).oemcount as *const _ as usize },
291         34usize,
292         concat!(
293             "Alignment of field: ",
294             stringify!(mpc_table),
295             "::",
296             stringify!(oemcount)
297         )
298     );
299     assert_eq!(
300         unsafe { &(*(0 as *const mpc_table)).lapic as *const _ as usize },
301         36usize,
302         concat!(
303             "Alignment of field: ",
304             stringify!(mpc_table),
305             "::",
306             stringify!(lapic)
307         )
308     );
309     assert_eq!(
310         unsafe { &(*(0 as *const mpc_table)).reserved as *const _ as usize },
311         40usize,
312         concat!(
313             "Alignment of field: ",
314             stringify!(mpc_table),
315             "::",
316             stringify!(reserved)
317         )
318     );
319 }
320 impl Clone for mpc_table {
clone(&self) -> Self321     fn clone(&self) -> Self {
322         *self
323     }
324 }
325 #[repr(C)]
326 #[derive(Debug, Default, Copy, FromBytes, AsBytes)]
327 pub struct mpc_cpu {
328     pub type_: ::std::os::raw::c_uchar,
329     pub apicid: ::std::os::raw::c_uchar,
330     pub apicver: ::std::os::raw::c_uchar,
331     pub cpuflag: ::std::os::raw::c_uchar,
332     pub cpufeature: ::std::os::raw::c_uint,
333     pub featureflag: ::std::os::raw::c_uint,
334     pub reserved: [::std::os::raw::c_uint; 2usize],
335 }
336 #[test]
bindgen_test_layout_mpc_cpu()337 fn bindgen_test_layout_mpc_cpu() {
338     assert_eq!(
339         ::std::mem::size_of::<mpc_cpu>(),
340         20usize,
341         concat!("Size of: ", stringify!(mpc_cpu))
342     );
343     assert_eq!(
344         ::std::mem::align_of::<mpc_cpu>(),
345         4usize,
346         concat!("Alignment of ", stringify!(mpc_cpu))
347     );
348     assert_eq!(
349         unsafe { &(*(0 as *const mpc_cpu)).type_ as *const _ as usize },
350         0usize,
351         concat!(
352             "Alignment of field: ",
353             stringify!(mpc_cpu),
354             "::",
355             stringify!(type_)
356         )
357     );
358     assert_eq!(
359         unsafe { &(*(0 as *const mpc_cpu)).apicid as *const _ as usize },
360         1usize,
361         concat!(
362             "Alignment of field: ",
363             stringify!(mpc_cpu),
364             "::",
365             stringify!(apicid)
366         )
367     );
368     assert_eq!(
369         unsafe { &(*(0 as *const mpc_cpu)).apicver as *const _ as usize },
370         2usize,
371         concat!(
372             "Alignment of field: ",
373             stringify!(mpc_cpu),
374             "::",
375             stringify!(apicver)
376         )
377     );
378     assert_eq!(
379         unsafe { &(*(0 as *const mpc_cpu)).cpuflag as *const _ as usize },
380         3usize,
381         concat!(
382             "Alignment of field: ",
383             stringify!(mpc_cpu),
384             "::",
385             stringify!(cpuflag)
386         )
387     );
388     assert_eq!(
389         unsafe { &(*(0 as *const mpc_cpu)).cpufeature as *const _ as usize },
390         4usize,
391         concat!(
392             "Alignment of field: ",
393             stringify!(mpc_cpu),
394             "::",
395             stringify!(cpufeature)
396         )
397     );
398     assert_eq!(
399         unsafe { &(*(0 as *const mpc_cpu)).featureflag as *const _ as usize },
400         8usize,
401         concat!(
402             "Alignment of field: ",
403             stringify!(mpc_cpu),
404             "::",
405             stringify!(featureflag)
406         )
407     );
408     assert_eq!(
409         unsafe { &(*(0 as *const mpc_cpu)).reserved as *const _ as usize },
410         12usize,
411         concat!(
412             "Alignment of field: ",
413             stringify!(mpc_cpu),
414             "::",
415             stringify!(reserved)
416         )
417     );
418 }
419 impl Clone for mpc_cpu {
clone(&self) -> Self420     fn clone(&self) -> Self {
421         *self
422     }
423 }
424 #[repr(C)]
425 #[derive(Debug, Default, Copy, FromBytes, AsBytes)]
426 pub struct mpc_bus {
427     pub type_: ::std::os::raw::c_uchar,
428     pub busid: ::std::os::raw::c_uchar,
429     pub bustype: [::std::os::raw::c_uchar; 6usize],
430 }
431 #[test]
bindgen_test_layout_mpc_bus()432 fn bindgen_test_layout_mpc_bus() {
433     assert_eq!(
434         ::std::mem::size_of::<mpc_bus>(),
435         8usize,
436         concat!("Size of: ", stringify!(mpc_bus))
437     );
438     assert_eq!(
439         ::std::mem::align_of::<mpc_bus>(),
440         1usize,
441         concat!("Alignment of ", stringify!(mpc_bus))
442     );
443     assert_eq!(
444         unsafe { &(*(0 as *const mpc_bus)).type_ as *const _ as usize },
445         0usize,
446         concat!(
447             "Alignment of field: ",
448             stringify!(mpc_bus),
449             "::",
450             stringify!(type_)
451         )
452     );
453     assert_eq!(
454         unsafe { &(*(0 as *const mpc_bus)).busid as *const _ as usize },
455         1usize,
456         concat!(
457             "Alignment of field: ",
458             stringify!(mpc_bus),
459             "::",
460             stringify!(busid)
461         )
462     );
463     assert_eq!(
464         unsafe { &(*(0 as *const mpc_bus)).bustype as *const _ as usize },
465         2usize,
466         concat!(
467             "Alignment of field: ",
468             stringify!(mpc_bus),
469             "::",
470             stringify!(bustype)
471         )
472     );
473 }
474 impl Clone for mpc_bus {
clone(&self) -> Self475     fn clone(&self) -> Self {
476         *self
477     }
478 }
479 #[repr(C)]
480 #[derive(Debug, Default, Copy, FromBytes, AsBytes)]
481 pub struct mpc_ioapic {
482     pub type_: ::std::os::raw::c_uchar,
483     pub apicid: ::std::os::raw::c_uchar,
484     pub apicver: ::std::os::raw::c_uchar,
485     pub flags: ::std::os::raw::c_uchar,
486     pub apicaddr: ::std::os::raw::c_uint,
487 }
488 #[test]
bindgen_test_layout_mpc_ioapic()489 fn bindgen_test_layout_mpc_ioapic() {
490     assert_eq!(
491         ::std::mem::size_of::<mpc_ioapic>(),
492         8usize,
493         concat!("Size of: ", stringify!(mpc_ioapic))
494     );
495     assert_eq!(
496         ::std::mem::align_of::<mpc_ioapic>(),
497         4usize,
498         concat!("Alignment of ", stringify!(mpc_ioapic))
499     );
500     assert_eq!(
501         unsafe { &(*(0 as *const mpc_ioapic)).type_ as *const _ as usize },
502         0usize,
503         concat!(
504             "Alignment of field: ",
505             stringify!(mpc_ioapic),
506             "::",
507             stringify!(type_)
508         )
509     );
510     assert_eq!(
511         unsafe { &(*(0 as *const mpc_ioapic)).apicid as *const _ as usize },
512         1usize,
513         concat!(
514             "Alignment of field: ",
515             stringify!(mpc_ioapic),
516             "::",
517             stringify!(apicid)
518         )
519     );
520     assert_eq!(
521         unsafe { &(*(0 as *const mpc_ioapic)).apicver as *const _ as usize },
522         2usize,
523         concat!(
524             "Alignment of field: ",
525             stringify!(mpc_ioapic),
526             "::",
527             stringify!(apicver)
528         )
529     );
530     assert_eq!(
531         unsafe { &(*(0 as *const mpc_ioapic)).flags as *const _ as usize },
532         3usize,
533         concat!(
534             "Alignment of field: ",
535             stringify!(mpc_ioapic),
536             "::",
537             stringify!(flags)
538         )
539     );
540     assert_eq!(
541         unsafe { &(*(0 as *const mpc_ioapic)).apicaddr as *const _ as usize },
542         4usize,
543         concat!(
544             "Alignment of field: ",
545             stringify!(mpc_ioapic),
546             "::",
547             stringify!(apicaddr)
548         )
549     );
550 }
551 impl Clone for mpc_ioapic {
clone(&self) -> Self552     fn clone(&self) -> Self {
553         *self
554     }
555 }
556 #[repr(C)]
557 #[derive(Debug, Default, Copy, FromBytes, AsBytes)]
558 pub struct mpc_intsrc {
559     pub type_: ::std::os::raw::c_uchar,
560     pub irqtype: ::std::os::raw::c_uchar,
561     pub irqflag: ::std::os::raw::c_ushort,
562     pub srcbus: ::std::os::raw::c_uchar,
563     pub srcbusirq: ::std::os::raw::c_uchar,
564     pub dstapic: ::std::os::raw::c_uchar,
565     pub dstirq: ::std::os::raw::c_uchar,
566 }
567 #[test]
bindgen_test_layout_mpc_intsrc()568 fn bindgen_test_layout_mpc_intsrc() {
569     assert_eq!(
570         ::std::mem::size_of::<mpc_intsrc>(),
571         8usize,
572         concat!("Size of: ", stringify!(mpc_intsrc))
573     );
574     assert_eq!(
575         ::std::mem::align_of::<mpc_intsrc>(),
576         2usize,
577         concat!("Alignment of ", stringify!(mpc_intsrc))
578     );
579     assert_eq!(
580         unsafe { &(*(0 as *const mpc_intsrc)).type_ as *const _ as usize },
581         0usize,
582         concat!(
583             "Alignment of field: ",
584             stringify!(mpc_intsrc),
585             "::",
586             stringify!(type_)
587         )
588     );
589     assert_eq!(
590         unsafe { &(*(0 as *const mpc_intsrc)).irqtype as *const _ as usize },
591         1usize,
592         concat!(
593             "Alignment of field: ",
594             stringify!(mpc_intsrc),
595             "::",
596             stringify!(irqtype)
597         )
598     );
599     assert_eq!(
600         unsafe { &(*(0 as *const mpc_intsrc)).irqflag as *const _ as usize },
601         2usize,
602         concat!(
603             "Alignment of field: ",
604             stringify!(mpc_intsrc),
605             "::",
606             stringify!(irqflag)
607         )
608     );
609     assert_eq!(
610         unsafe { &(*(0 as *const mpc_intsrc)).srcbus as *const _ as usize },
611         4usize,
612         concat!(
613             "Alignment of field: ",
614             stringify!(mpc_intsrc),
615             "::",
616             stringify!(srcbus)
617         )
618     );
619     assert_eq!(
620         unsafe { &(*(0 as *const mpc_intsrc)).srcbusirq as *const _ as usize },
621         5usize,
622         concat!(
623             "Alignment of field: ",
624             stringify!(mpc_intsrc),
625             "::",
626             stringify!(srcbusirq)
627         )
628     );
629     assert_eq!(
630         unsafe { &(*(0 as *const mpc_intsrc)).dstapic as *const _ as usize },
631         6usize,
632         concat!(
633             "Alignment of field: ",
634             stringify!(mpc_intsrc),
635             "::",
636             stringify!(dstapic)
637         )
638     );
639     assert_eq!(
640         unsafe { &(*(0 as *const mpc_intsrc)).dstirq as *const _ as usize },
641         7usize,
642         concat!(
643             "Alignment of field: ",
644             stringify!(mpc_intsrc),
645             "::",
646             stringify!(dstirq)
647         )
648     );
649 }
650 impl Clone for mpc_intsrc {
clone(&self) -> Self651     fn clone(&self) -> Self {
652         *self
653     }
654 }
655 pub const mp_irq_source_types_mp_INT: mp_irq_source_types = 0;
656 pub const mp_irq_source_types_mp_NMI: mp_irq_source_types = 1;
657 pub const mp_irq_source_types_mp_SMI: mp_irq_source_types = 2;
658 pub const mp_irq_source_types_mp_ExtINT: mp_irq_source_types = 3;
659 pub type mp_irq_source_types = ::std::os::raw::c_uint;
660 #[repr(C)]
661 #[derive(Debug, Default, Copy, FromBytes, AsBytes)]
662 pub struct mpc_lintsrc {
663     pub type_: ::std::os::raw::c_uchar,
664     pub irqtype: ::std::os::raw::c_uchar,
665     pub irqflag: ::std::os::raw::c_ushort,
666     pub srcbusid: ::std::os::raw::c_uchar,
667     pub srcbusirq: ::std::os::raw::c_uchar,
668     pub destapic: ::std::os::raw::c_uchar,
669     pub destapiclint: ::std::os::raw::c_uchar,
670 }
671 #[test]
bindgen_test_layout_mpc_lintsrc()672 fn bindgen_test_layout_mpc_lintsrc() {
673     assert_eq!(
674         ::std::mem::size_of::<mpc_lintsrc>(),
675         8usize,
676         concat!("Size of: ", stringify!(mpc_lintsrc))
677     );
678     assert_eq!(
679         ::std::mem::align_of::<mpc_lintsrc>(),
680         2usize,
681         concat!("Alignment of ", stringify!(mpc_lintsrc))
682     );
683     assert_eq!(
684         unsafe { &(*(0 as *const mpc_lintsrc)).type_ as *const _ as usize },
685         0usize,
686         concat!(
687             "Alignment of field: ",
688             stringify!(mpc_lintsrc),
689             "::",
690             stringify!(type_)
691         )
692     );
693     assert_eq!(
694         unsafe { &(*(0 as *const mpc_lintsrc)).irqtype as *const _ as usize },
695         1usize,
696         concat!(
697             "Alignment of field: ",
698             stringify!(mpc_lintsrc),
699             "::",
700             stringify!(irqtype)
701         )
702     );
703     assert_eq!(
704         unsafe { &(*(0 as *const mpc_lintsrc)).irqflag as *const _ as usize },
705         2usize,
706         concat!(
707             "Alignment of field: ",
708             stringify!(mpc_lintsrc),
709             "::",
710             stringify!(irqflag)
711         )
712     );
713     assert_eq!(
714         unsafe { &(*(0 as *const mpc_lintsrc)).srcbusid as *const _ as usize },
715         4usize,
716         concat!(
717             "Alignment of field: ",
718             stringify!(mpc_lintsrc),
719             "::",
720             stringify!(srcbusid)
721         )
722     );
723     assert_eq!(
724         unsafe { &(*(0 as *const mpc_lintsrc)).srcbusirq as *const _ as usize },
725         5usize,
726         concat!(
727             "Alignment of field: ",
728             stringify!(mpc_lintsrc),
729             "::",
730             stringify!(srcbusirq)
731         )
732     );
733     assert_eq!(
734         unsafe { &(*(0 as *const mpc_lintsrc)).destapic as *const _ as usize },
735         6usize,
736         concat!(
737             "Alignment of field: ",
738             stringify!(mpc_lintsrc),
739             "::",
740             stringify!(destapic)
741         )
742     );
743     assert_eq!(
744         unsafe { &(*(0 as *const mpc_lintsrc)).destapiclint as *const _ as usize },
745         7usize,
746         concat!(
747             "Alignment of field: ",
748             stringify!(mpc_lintsrc),
749             "::",
750             stringify!(destapiclint)
751         )
752     );
753 }
754 impl Clone for mpc_lintsrc {
clone(&self) -> Self755     fn clone(&self) -> Self {
756         *self
757     }
758 }
759 #[repr(C)]
760 #[derive(Debug, Default, Copy)]
761 pub struct mpc_oemtable {
762     pub signature: [::std::os::raw::c_char; 4usize],
763     pub length: ::std::os::raw::c_ushort,
764     pub rev: ::std::os::raw::c_char,
765     pub checksum: ::std::os::raw::c_char,
766     pub mpc: [::std::os::raw::c_char; 8usize],
767 }
768 #[test]
bindgen_test_layout_mpc_oemtable()769 fn bindgen_test_layout_mpc_oemtable() {
770     assert_eq!(
771         ::std::mem::size_of::<mpc_oemtable>(),
772         16usize,
773         concat!("Size of: ", stringify!(mpc_oemtable))
774     );
775     assert_eq!(
776         ::std::mem::align_of::<mpc_oemtable>(),
777         2usize,
778         concat!("Alignment of ", stringify!(mpc_oemtable))
779     );
780     assert_eq!(
781         unsafe { &(*(0 as *const mpc_oemtable)).signature as *const _ as usize },
782         0usize,
783         concat!(
784             "Alignment of field: ",
785             stringify!(mpc_oemtable),
786             "::",
787             stringify!(signature)
788         )
789     );
790     assert_eq!(
791         unsafe { &(*(0 as *const mpc_oemtable)).length as *const _ as usize },
792         4usize,
793         concat!(
794             "Alignment of field: ",
795             stringify!(mpc_oemtable),
796             "::",
797             stringify!(length)
798         )
799     );
800     assert_eq!(
801         unsafe { &(*(0 as *const mpc_oemtable)).rev as *const _ as usize },
802         6usize,
803         concat!(
804             "Alignment of field: ",
805             stringify!(mpc_oemtable),
806             "::",
807             stringify!(rev)
808         )
809     );
810     assert_eq!(
811         unsafe { &(*(0 as *const mpc_oemtable)).checksum as *const _ as usize },
812         7usize,
813         concat!(
814             "Alignment of field: ",
815             stringify!(mpc_oemtable),
816             "::",
817             stringify!(checksum)
818         )
819     );
820     assert_eq!(
821         unsafe { &(*(0 as *const mpc_oemtable)).mpc as *const _ as usize },
822         8usize,
823         concat!(
824             "Alignment of field: ",
825             stringify!(mpc_oemtable),
826             "::",
827             stringify!(mpc)
828         )
829     );
830 }
831 impl Clone for mpc_oemtable {
clone(&self) -> Self832     fn clone(&self) -> Self {
833         *self
834     }
835 }
836 pub const mp_bustype_MP_BUS_ISA: mp_bustype = 1;
837 pub const mp_bustype_MP_BUS_EISA: mp_bustype = 2;
838 pub const mp_bustype_MP_BUS_PCI: mp_bustype = 3;
839 pub type mp_bustype = ::std::os::raw::c_uint;
840