xref: /linux-6.15/arch/x86/include/asm/setup_data.h (revision 2afa7994)
1*2afa7994SThomas Zimmermann /* SPDX-License-Identifier: GPL-2.0 */
2*2afa7994SThomas Zimmermann #ifndef _ASM_X86_SETUP_DATA_H
3*2afa7994SThomas Zimmermann #define _ASM_X86_SETUP_DATA_H
4*2afa7994SThomas Zimmermann 
5*2afa7994SThomas Zimmermann #include <uapi/asm/setup_data.h>
6*2afa7994SThomas Zimmermann 
7*2afa7994SThomas Zimmermann #ifndef __ASSEMBLY__
8*2afa7994SThomas Zimmermann 
9*2afa7994SThomas Zimmermann struct pci_setup_rom {
10*2afa7994SThomas Zimmermann 	struct setup_data data;
11*2afa7994SThomas Zimmermann 	uint16_t vendor;
12*2afa7994SThomas Zimmermann 	uint16_t devid;
13*2afa7994SThomas Zimmermann 	uint64_t pcilen;
14*2afa7994SThomas Zimmermann 	unsigned long segment;
15*2afa7994SThomas Zimmermann 	unsigned long bus;
16*2afa7994SThomas Zimmermann 	unsigned long device;
17*2afa7994SThomas Zimmermann 	unsigned long function;
18*2afa7994SThomas Zimmermann 	uint8_t romdata[];
19*2afa7994SThomas Zimmermann };
20*2afa7994SThomas Zimmermann 
21*2afa7994SThomas Zimmermann /* kexec external ABI */
22*2afa7994SThomas Zimmermann struct efi_setup_data {
23*2afa7994SThomas Zimmermann 	u64 fw_vendor;
24*2afa7994SThomas Zimmermann 	u64 __unused;
25*2afa7994SThomas Zimmermann 	u64 tables;
26*2afa7994SThomas Zimmermann 	u64 smbios;
27*2afa7994SThomas Zimmermann 	u64 reserved[8];
28*2afa7994SThomas Zimmermann };
29*2afa7994SThomas Zimmermann 
30*2afa7994SThomas Zimmermann #endif /* __ASSEMBLY__ */
31*2afa7994SThomas Zimmermann 
32*2afa7994SThomas Zimmermann #endif /* _ASM_X86_SETUP_DATA_H */
33