x86/setup: Move UAPI setup structures into setup_data.h
authorThomas Zimmermann <tzimmermann@suse.de>
Fri, 12 Jan 2024 09:44:36 +0000 (10:44 +0100)
committerBorislav Petkov (AMD) <bp@alien8.de>
Tue, 30 Jan 2024 14:17:06 +0000 (15:17 +0100)
commitefd7def00406ac57400501cdc76d0d95d4691927
tree597d6bdcf6fd24b68c4dcb24e1f910654fa45572
parent41bccc98fb7931d63d03f326a746ac4d429c1dd3
x86/setup: Move UAPI setup structures into setup_data.h

The type definition of struct pci_setup_rom in <asm/pci.h> requires
struct setup_data from <asm/bootparam.h>. Many drivers include
<linux/pci.h>, but do not use boot parameters. Changes to bootparam.h or
its included header files could easily trigger a large, unnecessary
rebuild of the kernel.

Moving struct setup_data and related code into its own header file
avoids including <asm/bootparam.h> in <asm/pci.h>. Instead include the
new header <asm/screen_data.h> and remove the include statement for
x86_init.h, which is unnecessary but pulls in bootparams.h.

Suggested-by: Ard Biesheuvel <ardb@kernel.org>
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
Signed-off-by: Borislav Petkov (AMD) <bp@alien8.de>
Reviewed-by: Ard Biesheuvel <ardb@kernel.org>
Link: https://lore.kernel.org/r/20240112095000.8952-2-tzimmermann@suse.de
arch/x86/include/asm/pci.h
arch/x86/include/uapi/asm/bootparam.h
arch/x86/include/uapi/asm/setup_data.h [new file with mode: 0644]