From 9ae144569098381f8fe63b7ca58378d4af9d8d52 Mon Sep 17 00:00:00 2001 From: kraoc Date: Sat, 2 Mar 2024 13:24:31 +0100 Subject: [PATCH] =?UTF-8?q?Modularisation,=20compl=C3=A9ment=20et=20tests?= =?UTF-8?q?=20en=20cours=20des=20options=20(Nvidia)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 11 +- fast-kernel-headers.patch | 4838 +++++++++++++++++++++++++++++++++ kernel.sh | 1720 ++++++------ more-uarches-for-kernel.patch | 2 +- 4 files changed, 5774 insertions(+), 797 deletions(-) create mode 100644 fast-kernel-headers.patch diff --git a/README.md b/README.md index 9862f0a..e578a6b 100644 --- a/README.md +++ b/README.md @@ -11,7 +11,7 @@ Récupération, décompression des sources du Kernel linux sur kernel.org, optim ## Usage -``` +```bash sudo bash kernel.sh [branch] [version] [compile] ``` @@ -21,7 +21,7 @@ sudo bash kernel.sh [branch] [version] [compile] Exemple : -``` +```bash sudo bash kernel.sh 6.x 6.6.10 ``` @@ -40,6 +40,13 @@ sudo bash kernel.sh 6.x 6.6.10 ## CHANGELOG +### 2024-03-02 + +- Modularisation des options par variable de conditionnement +- Ajout du 'Fast Kernel Headers' (désactivé pour le moment) +- Ajustements des options (tests en cours) +- Objectif: permettre l'installation de pilote Nvidia + ### 2024-02-23 - Correction de problèmes de configuration produisant un kernel défaillant diff --git a/fast-kernel-headers.patch b/fast-kernel-headers.patch new file mode 100644 index 0000000..dd8e362 --- /dev/null +++ b/fast-kernel-headers.patch @@ -0,0 +1,4838 @@ +This adds `#include` directives that are necessary, but missing, which +previously went unnnoticed because the missing headers were included +indirectly by other headers somewhere. + +Signed-off-by: Max Kellermann +--- + arch/arm64/kernel/cpufeature.c | 1 + + arch/arm64/kernel/cpuinfo.c | 1 + + arch/arm64/kernel/ftrace.c | 1 + + arch/arm64/kernel/mte.c | 2 ++ + arch/arm64/kvm/arch_timer.c | 2 ++ + arch/arm64/kvm/hypercalls.c | 1 + + arch/arm64/kvm/vgic/vgic-mmio-v3.c | 1 + + arch/arm64/kvm/vgic/vgic-mmio.c | 1 + + arch/arm64/kvm/vgic/vgic-v2.c | 1 + + arch/arm64/kvm/vgic/vgic-v3.c | 1 + + arch/arm64/kvm/vgic/vgic-v4.c | 1 + + arch/x86/events/amd/uncore.c | 1 + + arch/x86/events/intel/uncore.c | 1 + + arch/x86/events/rapl.c | 1 + + arch/x86/kernel/cpu/intel.c | 1 + + arch/x86/kernel/cpu/umwait.c | 1 + + arch/x86/kvm/vmx/nested.c | 1 + + arch/x86/kvm/xen.c | 1 + + arch/x86/platform/efi/runtime-map.c | 1 + + block/blk-cgroup.c | 1 + + block/blk-crypto-sysfs.c | 1 + + block/blk-ia-ranges.c | 1 + + block/blk-iocost.c | 1 + + block/bsg.c | 1 + + block/elevator.h | 1 + + block/holder.c | 1 + + block/kyber-iosched.c | 1 + + block/mq-deadline.c | 1 + + drivers/accel/ivpu/ivpu_pm.c | 1 + + drivers/acpi/pfr_telemetry.c | 1 + + drivers/acpi/sbs.c | 1 + + drivers/ata/pata_parport/pata_parport.c | 1 + + drivers/base/base.h | 5 +++++ + drivers/base/container.c | 1 + + drivers/base/firmware_loader/builtin/main.c | 1 + + drivers/base/soc.c | 1 + + drivers/base/swnode.c | 1 + + drivers/base/topology.c | 2 ++ + drivers/base/transport_class.c | 3 +++ + drivers/block/null_blk/main.c | 1 + + drivers/block/virtio_blk.c | 1 + + drivers/block/xen-blkback/blkback.c | 2 ++ + drivers/block/zram/zcomp.c | 1 + + drivers/bus/mhi/ep/main.c | 1 + + drivers/char/hw_random/virtio-rng.c | 1 + + drivers/char/ipmi/ipmi_msghandler.c | 1 + + drivers/char/misc.c | 1 + + drivers/char/ppdev.c | 1 + + drivers/char/tpm/tpm-chip.c | 1 + + drivers/clk/qcom/clk-regmap-mux-div.h | 1 + + drivers/clk/qcom/gdsc.c | 1 + + drivers/clk/samsung/clk-cpu.h | 2 ++ + drivers/clk/sunxi-ng/ccu_common.h | 1 + + drivers/cpufreq/apple-soc-cpufreq.c | 1 + + drivers/cpufreq/cpufreq_governor.h | 1 + + drivers/cpufreq/freq_table.c | 1 + + drivers/cxl/cxl.h | 3 +++ + drivers/cxl/cxlmem.h | 1 + + drivers/devfreq/event/rockchip-dfi.c | 1 + + drivers/dma-buf/st-dma-fence.c | 1 + + drivers/dma/ioat/sysfs.c | 1 + + drivers/eisa/eisa-bus.c | 1 + + drivers/extcon/devres.c | 1 + + drivers/extcon/extcon.h | 1 + + drivers/firmware/arm_ffa/bus.c | 1 + + drivers/firmware/arm_scmi/bus.c | 1 + + drivers/firmware/edd.c | 1 + + drivers/firmware/efi/libstub/efi-stub-helper.c | 1 + + drivers/firmware/google/gsmi.c | 1 + + drivers/fpga/dfl.c | 2 ++ + drivers/gpio/gpio-tegra.c | 1 + + drivers/gpio/gpio-tegra186.c | 1 + + drivers/gpio/gpio-thunderx.c | 1 + + drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.h | 1 + + drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 1 + + drivers/gpu/drm/amd/amdgpu/amdgpu_ih.h | 3 +++ + drivers/gpu/drm/arm/display/komeda/komeda_color_mgmt.c | 2 ++ + drivers/gpu/drm/i915/i915_perf.c | 1 + + drivers/gpu/drm/i915/i915_perf_types.h | 1 + + drivers/gpu/drm/i915/i915_scatterlist.h | 1 + + drivers/gpu/drm/msm/msm_drv.h | 1 + + drivers/gpu/drm/nouveau/dispnv50/disp.c | 1 + + drivers/gpu/drm/xe/xe_gpu_scheduler.c | 2 ++ + drivers/gpu/drm/xe/xe_guc_ct.h | 2 ++ + drivers/hid/intel-ish-hid/ishtp/bus.c | 1 + + drivers/hwmon/coretemp.c | 1 + + drivers/hwmon/nct6775-core.c | 1 + + drivers/iio/adc/ti-tsc2046.c | 1 + + drivers/infiniband/hw/hfi1/rc.c | 1 + + drivers/infiniband/hw/qib/qib_file_ops.c | 1 + + drivers/infiniband/hw/usnic/usnic_ib_main.c | 1 + + drivers/infiniband/hw/usnic/usnic_ib_sysfs.c | 1 + + drivers/infiniband/sw/rdmavt/cq.c | 1 + + drivers/infiniband/sw/rdmavt/qp.c | 1 + + drivers/infiniband/ulp/srp/ib_srp.c | 1 + + drivers/iommu/virtio-iommu.c | 1 + + drivers/mailbox/mailbox.c | 1 + + drivers/md/bcache/bset.c | 1 + + drivers/md/bcache/sysfs.h | 2 ++ + drivers/media/cec/core/cec-pin.c | 1 + + drivers/media/pci/pt3/pt3.c | 1 + + drivers/memory/tegra/tegra234.c | 1 + + drivers/mfd/abx500-core.c | 1 + + drivers/misc/cardreader/alcor_pci.c | 1 + + drivers/misc/dw-xdata-pcie.c | 1 + + drivers/misc/lkdtm/heap.c | 1 + + drivers/misc/mei/bus.c | 1 + + drivers/misc/mei/client.c | 1 + + drivers/misc/mei/debugfs.c | 1 + + drivers/misc/mei/main.c | 1 + + drivers/misc/pci_endpoint_test.c | 1 + + drivers/misc/vcpu_stall_detector.c | 1 + + drivers/misc/xilinx_sdfec.c | 1 + + drivers/mtd/mtd_blkdevs.c | 1 + + drivers/net/can/spi/mcp251xfd/mcp251xfd-core.c | 1 + + drivers/net/can/spi/mcp251xfd/mcp251xfd-ring.c | 2 ++ + drivers/net/can/spi/mcp251xfd/mcp251xfd-rx.c | 1 + + drivers/net/can/spi/mcp251xfd/mcp251xfd-tef.c | 1 + + drivers/net/ethernet/cortina/gemini.c | 1 + + drivers/net/ethernet/freescale/fec_ptp.c | 1 + + drivers/net/ethernet/hisilicon/hip04_eth.c | 1 + + drivers/net/ethernet/qualcomm/rmnet/rmnet_map_data.c | 1 + + drivers/net/ethernet/ti/am65-cpsw-nuss.c | 1 + + drivers/net/mdio/mdio-mux-meson-gxl.c | 1 + + drivers/net/mdio/mdio-mux-multiplexer.c | 1 + + drivers/net/wireless/mediatek/mt76/mt76x02_usb_core.c | 2 ++ + drivers/net/wireless/virtual/mac80211_hwsim.c | 1 + + drivers/net/wwan/iosm/iosm_ipc_imem.c | 1 + + drivers/nvme/host/nvme.h | 1 + + drivers/nvme/target/fc.c | 1 + + drivers/nvme/target/nvmet.h | 1 + + drivers/of/of_numa.c | 1 + + drivers/pci/controller/vmd.c | 1 + + drivers/pci/pci.c | 1 + + drivers/pci/switch/switchtec.c | 1 + + drivers/perf/thunderx2_pmu.c | 1 + + drivers/platform/chrome/wilco_ec/telemetry.c | 1 + + drivers/platform/x86/amd/pmf/tee-if.c | 1 + + .../platform/x86/dell/dell-wmi-sysman/biosattr-interface.c | 1 + + drivers/platform/x86/dell/dell-wmi-sysman/enum-attributes.c | 2 ++ + drivers/platform/x86/dell/dell-wmi-sysman/int-attributes.c | 2 ++ + .../platform/x86/dell/dell-wmi-sysman/passobj-attributes.c | 3 +++ + .../x86/dell/dell-wmi-sysman/passwordattr-interface.c | 1 + + .../platform/x86/dell/dell-wmi-sysman/string-attributes.c | 2 ++ + drivers/platform/x86/dell/dell-wmi-sysman/sysman.c | 1 + + drivers/platform/x86/hp/hp-bioscfg/bioscfg.c | 1 + + drivers/platform/x86/hp/hp-bioscfg/enum-attributes.c | 3 +++ + drivers/platform/x86/hp/hp-bioscfg/int-attributes.c | 3 +++ + drivers/platform/x86/hp/hp-bioscfg/order-list-attributes.c | 2 ++ + drivers/platform/x86/hp/hp-bioscfg/passwdobj-attributes.c | 3 +++ + drivers/platform/x86/hp/hp-bioscfg/spmobj-attributes.c | 2 ++ + drivers/platform/x86/hp/hp-bioscfg/string-attributes.c | 3 +++ + drivers/platform/x86/hp/hp-bioscfg/surestart-attributes.c | 2 ++ + drivers/platform/x86/intel/pmt/telemetry.c | 1 + + .../x86/intel/uncore-frequency/uncore-frequency-common.c | 1 + + .../x86/intel/uncore-frequency/uncore-frequency-common.h | 1 + + drivers/platform/x86/think-lmi.c | 1 + + drivers/platform/x86/wmi.c | 1 + + drivers/pmdomain/governor.c | 1 + + drivers/power/reset/ltc2952-poweroff.c | 1 + + drivers/powercap/dtpm.c | 1 + + drivers/pps/clients/pps-ktimer.c | 1 + + drivers/pps/clients/pps-ldisc.c | 1 + + drivers/pps/clients/pps_parport.c | 1 + + drivers/pps/kapi.c | 1 + + drivers/pps/pps.c | 1 + + drivers/rtc/class.c | 1 + + drivers/rtc/interface.c | 1 + + drivers/scsi/isci/isci.h | 1 + + drivers/scsi/lpfc/lpfc_init.c | 1 + + drivers/slimbus/slimbus.h | 1 + + drivers/soc/nuvoton/wpcm450-soc.c | 1 + + drivers/soundwire/bus.c | 1 + + drivers/soundwire/intel_auxdevice.c | 1 + + drivers/spi/spi-stm32.c | 1 + + drivers/staging/fbtft/fb_ssd1351.c | 1 + + drivers/target/target_core_fabric_configfs.c | 1 + + drivers/target/target_core_file.c | 1 + + drivers/thermal/devfreq_cooling.c | 1 + + drivers/thermal/intel/intel_powerclamp.c | 1 + + drivers/thermal/intel/therm_throt.c | 1 + + drivers/tty/rpmsg_tty.c | 1 + + drivers/tty/serial/8250/8250_bcm7271.c | 1 + + drivers/tty/serial/8250/8250_port.c | 1 + + drivers/tty/serial/imx.c | 1 + + drivers/tty/serial/serial_base.h | 2 ++ + drivers/tty/serial/sh-sci.c | 1 + + drivers/tty/serial/xilinx_uartps.c | 1 + + drivers/usb/chipidea/otg_fsm.c | 1 + + drivers/usb/dwc2/hcd_queue.c | 1 + + drivers/usb/gadget/function/f_ncm.c | 1 + + drivers/usb/gadget/udc/max3420_udc.c | 1 + + drivers/usb/typec/class.h | 1 + + drivers/usb/typec/pd.c | 1 + + drivers/vfio/group.c | 1 + + drivers/video/fbdev/omap2/omapfb/dss/dsi.c | 1 + + drivers/video/fbdev/omap2/omapfb/dss/pll.c | 1 + + drivers/virt/coco/tsm.c | 1 + + fs/aio.c | 1 + + fs/bcachefs/chardev.c | 1 + + fs/bcachefs/fs.c | 1 + + fs/btrfs/qgroup.c | 1 + + fs/btrfs/sysfs.c | 1 + + fs/buffer.c | 1 + + fs/ceph/metric.h | 2 ++ + fs/ceph/super.h | 1 + + fs/configfs/mount.c | 1 + + fs/crypto/bio.c | 1 + + fs/debugfs/inode.c | 1 + + fs/erofs/data.c | 1 + + fs/erofs/internal.h | 1 + + fs/erofs/super.c | 1 + + fs/eventpoll.c | 1 + + fs/exec.c | 1 + + fs/ext4/sysfs.c | 1 + + fs/f2fs/f2fs.h | 1 + + fs/gfs2/recovery.c | 1 + + fs/gfs2/sys.c | 1 + + fs/hfsplus/wrapper.c | 1 + + fs/iomap/buffered-io.c | 1 + + fs/iomap/direct-io.c | 1 + + fs/namespace.c | 1 + + fs/nfs/nfs42xattr.c | 1 + + fs/ntfs3/fsntfs.c | 3 ++- + fs/ntfs3/super.c | 1 + + fs/pnode.c | 1 + + fs/proc/uptime.c | 1 + + fs/pstore/inode.c | 1 + + fs/reiserfs/reiserfs.h | 1 + + fs/sysctls.c | 1 + + fs/sysfs/mount.c | 1 + + fs/tracefs/inode.c | 1 + + fs/ubifs/io.c | 1 + + fs/ubifs/super.c | 1 + + fs/xfs/xfs_error.c | 1 + + fs/xfs/xfs_sysfs.c | 1 + + fs/zonefs/sysfs.c | 1 + + include/drm/drm_color_mgmt.h | 1 + + include/drm/drm_modeset_lock.h | 1 + + include/drm/gpu_scheduler.h | 1 + + include/linux/backing-dev-defs.h | 5 +++++ + include/linux/bio.h | 1 + + include/linux/blk-integrity.h | 1 + + include/linux/blk-mq.h | 1 + + include/linux/blkdev.h | 2 ++ + include/linux/can/dev.h | 1 + + include/linux/dev_printk.h | 1 + + include/linux/device.h | 1 + + include/linux/device/bus.h | 1 + + include/linux/device/class.h | 1 + + include/linux/dmaengine.h | 1 + + include/linux/dtpm.h | 2 ++ + include/linux/extcon.h | 3 +++ + include/linux/firmware.h | 1 + + include/linux/flex_proportions.h | 1 + + include/linux/framer/framer-provider.h | 1 + + include/linux/futex.h | 1 + + include/linux/hisi_acc_qm.h | 1 + + include/linux/hrtimer.h | 2 ++ + include/linux/iio/iio.h | 1 + + include/linux/ipc.h | 2 ++ + include/linux/memory_hotplug.h | 1 + + include/linux/mm.h | 3 +++ + include/linux/module.h | 1 + + include/linux/mtd/blktrans.h | 1 + + include/linux/ndctl.h | 2 ++ + include/linux/node.h | 2 ++ + include/linux/notifier.h | 1 + + include/linux/ns_common.h | 1 + + include/linux/pm.h | 4 ++++ + include/linux/quotaops.h | 1 + + include/linux/raid_class.h | 2 ++ + include/linux/slab.h | 1 + + include/linux/socket.h | 2 +- + include/linux/soundwire/sdw.h | 1 + + include/linux/spi/spi_bitbang.h | 2 ++ + include/linux/srcutree.h | 2 ++ + include/linux/stackdepot.h | 1 + + include/linux/sunrpc/rpc_pipe_fs.h | 3 +++ + include/linux/trace_recursion.h | 1 + + include/linux/tty_port.h | 2 +- + include/linux/u64_stats_sync.h | 2 ++ + include/linux/wait_bit.h | 3 +++ + include/linux/writeback.h | 1 + + include/linux/ww_mutex.h | 1 + + include/media/media-device.h | 1 + + include/net/netns/ipv6.h | 4 ++++ + include/net/netns/mctp.h | 1 + + include/net/netns/xdp.h | 1 + + include/net/tcp.h | 1 + + include/sound/core.h | 1 + + include/sound/util_mem.h | 1 + + include/trace/events/iommu.h | 3 +-- + include/trace/events/power.h | 1 + + init/init_task.c | 1 + + init/main.c | 1 + + io_uring/cancel.c | 1 + + io_uring/io_uring.c | 1 + + io_uring/timeout.h | 2 ++ + ipc/mq_sysctl.c | 1 + + ipc/mqueue.c | 1 + + ipc/namespace.c | 1 + + ipc/sem.c | 1 + + kernel/bpf/helpers.c | 1 + + kernel/cpu.c | 1 + + kernel/events/core.c | 1 + + kernel/exit.c | 1 + + kernel/fork.c | 1 + + kernel/futex/core.c | 1 + + kernel/futex/pi.c | 1 + + kernel/futex/requeue.c | 1 + + kernel/futex/syscalls.c | 1 + + kernel/futex/waitwake.c | 1 + + kernel/livepatch/core.c | 2 ++ + kernel/livepatch/transition.c | 1 + + kernel/locking/rtmutex.c | 1 + + kernel/locking/rtmutex_common.h | 1 + + kernel/padata.c | 1 + + kernel/panic.c | 1 + + kernel/power/energy_model.c | 1 + + kernel/reboot.c | 1 + + kernel/signal.c | 1 + + kernel/smpboot.c | 1 + + kernel/time/hrtimer.c | 1 + + kernel/time/namespace.c | 1 + + kernel/time/posix-timers.c | 1 + + kernel/time/timer_list.c | 1 + + kernel/trace/trace_osnoise.c | 1 + + kernel/tsacct.c | 1 + + kernel/ucount.c | 1 + + kernel/user.c | 2 ++ + kernel/watchdog.c | 1 + + kernel/workqueue.c | 1 + + lib/cpu_rmap.c | 2 ++ + lib/flex_proportions.c | 2 ++ + lib/group_cpus.c | 1 + + lib/kobject.c | 2 ++ + lib/lockref.c | 2 ++ + lib/objpool.c | 2 ++ + lib/test_lockup.c | 1 + + mm/damon/sysfs-common.c | 1 + + mm/damon/sysfs-schemes.c | 1 + + mm/damon/sysfs.c | 1 + + mm/folio-compat.c | 1 + + mm/khugepaged.c | 1 + + mm/ksm.c | 2 ++ + mm/memory-tiers.c | 1 + + mm/memory_hotplug.c | 1 + + mm/mempolicy.c | 1 + + mm/workingset.c | 1 + + net/can/j1939/bus.c | 2 ++ + net/can/j1939/transport.c | 1 + + net/ceph/string_table.c | 1 + + net/sched/act_gate.c | 1 + + net/xfrm/xfrm_state.c | 1 + + samples/vfio-mdev/mtty.c | 1 + + security/integrity/ima/ima_mok.c | 1 + + security/keys/proc.c | 1 + + sound/soc/intel/avs/avs.h | 1 + + sound/soc/qcom/qdsp6/q6apm.h | 1 + + sound/soc/sof/sof-audio.h | 1 + + 361 files changed, 440 insertions(+), 5 deletions(-) + +diff --git a/arch/arm64/kernel/cpufeature.c b/arch/arm64/kernel/cpufeature.c +index 8d1a634a403e..dc0642d35f5e 100644 +--- a/arch/arm64/kernel/cpufeature.c ++++ b/arch/arm64/kernel/cpufeature.c +@@ -65,6 +65,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/arch/arm64/kernel/cpuinfo.c b/arch/arm64/kernel/cpuinfo.c +index 47043c0d95ec..d30ad1215ab8 100644 +--- a/arch/arm64/kernel/cpuinfo.c ++++ b/arch/arm64/kernel/cpuinfo.c +@@ -23,6 +23,7 @@ + #include + #include + #include ++#include // for __ATTR_RO() + #include + + /* +diff --git a/arch/arm64/kernel/ftrace.c b/arch/arm64/kernel/ftrace.c +index a650f5e11fc5..f6c271405c12 100644 +--- a/arch/arm64/kernel/ftrace.c ++++ b/arch/arm64/kernel/ftrace.c +@@ -10,6 +10,7 @@ + #include + #include + #include ++#include + + #include + #include +diff --git a/arch/arm64/kernel/mte.c b/arch/arm64/kernel/mte.c +index a41ef3213e1e..2b8abe086445 100644 +--- a/arch/arm64/kernel/mte.c ++++ b/arch/arm64/kernel/mte.c +@@ -5,6 +5,7 @@ + + #include + #include ++#include + #include + #include + #include +@@ -13,6 +14,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/arch/arm64/kvm/arch_timer.c b/arch/arm64/kvm/arch_timer.c +index 9dec8c419bf4..a5b47b400dfc 100644 +--- a/arch/arm64/kvm/arch_timer.c ++++ b/arch/arm64/kvm/arch_timer.c +@@ -11,6 +11,8 @@ + #include + #include + #include ++#include ++#include + + #include + #include +diff --git a/arch/arm64/kvm/hypercalls.c b/arch/arm64/kvm/hypercalls.c +index 5763d979d8ca..5aa0b3c106fd 100644 +--- a/arch/arm64/kvm/hypercalls.c ++++ b/arch/arm64/kvm/hypercalls.c +@@ -3,6 +3,7 @@ + + #include + #include ++#include + + #include + +diff --git a/arch/arm64/kvm/vgic/vgic-mmio-v3.c b/arch/arm64/kvm/vgic/vgic-mmio-v3.c +index c15ee1df036a..1dacc5612804 100644 +--- a/arch/arm64/kvm/vgic/vgic-mmio-v3.c ++++ b/arch/arm64/kvm/vgic/vgic-mmio-v3.c +@@ -8,6 +8,7 @@ + #include + #include + #include ++#include + #include + #include + +diff --git a/arch/arm64/kvm/vgic/vgic-mmio.c b/arch/arm64/kvm/vgic/vgic-mmio.c +index cf76523a2194..bde2110e140f 100644 +--- a/arch/arm64/kvm/vgic/vgic-mmio.c ++++ b/arch/arm64/kvm/vgic/vgic-mmio.c +@@ -9,6 +9,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/arch/arm64/kvm/vgic/vgic-v2.c b/arch/arm64/kvm/vgic/vgic-v2.c +index 7e9cdb78f7ce..28adaf9ddf34 100644 +--- a/arch/arm64/kvm/vgic/vgic-v2.c ++++ b/arch/arm64/kvm/vgic/vgic-v2.c +@@ -6,6 +6,7 @@ + #include + #include + #include ++#include + #include + #include + +diff --git a/arch/arm64/kvm/vgic/vgic-v3.c b/arch/arm64/kvm/vgic/vgic-v3.c +index 9465d3706ab9..dc6b5f5008fb 100644 +--- a/arch/arm64/kvm/vgic/vgic-v3.c ++++ b/arch/arm64/kvm/vgic/vgic-v3.c +@@ -6,6 +6,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/arch/arm64/kvm/vgic/vgic-v4.c b/arch/arm64/kvm/vgic/vgic-v4.c +index 74a67ad87f29..40ff8cc2b659 100644 +--- a/arch/arm64/kvm/vgic/vgic-v4.c ++++ b/arch/arm64/kvm/vgic/vgic-v4.c +@@ -9,6 +9,7 @@ + #include + #include + #include ++#include + + #include "vgic.h" + +diff --git a/arch/x86/events/amd/uncore.c b/arch/x86/events/amd/uncore.c +index 5bf03c575812..5c7af7dcff2c 100644 +--- a/arch/x86/events/amd/uncore.c ++++ b/arch/x86/events/amd/uncore.c +@@ -13,6 +13,7 @@ + #include + #include + #include ++#include + #include + + #include +diff --git a/arch/x86/events/intel/uncore.c b/arch/x86/events/intel/uncore.c +index 7927c0b832fa..e1f6a2f3840d 100644 +--- a/arch/x86/events/intel/uncore.c ++++ b/arch/x86/events/intel/uncore.c +@@ -1,4 +1,5 @@ + // SPDX-License-Identifier: GPL-2.0-only ++#include + #include + + #include +diff --git a/arch/x86/events/rapl.c b/arch/x86/events/rapl.c +index 8d98d468b976..030629d12298 100644 +--- a/arch/x86/events/rapl.c ++++ b/arch/x86/events/rapl.c +@@ -55,6 +55,7 @@ + + #define pr_fmt(fmt) "RAPL PMU: " fmt + ++#include + #include + #include + #include +diff --git a/arch/x86/kernel/cpu/intel.c b/arch/x86/kernel/cpu/intel.c +index a927a8fc9624..7c43587e56a4 100644 +--- a/arch/x86/kernel/cpu/intel.c ++++ b/arch/x86/kernel/cpu/intel.c +@@ -11,6 +11,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/arch/x86/kernel/cpu/umwait.c b/arch/x86/kernel/cpu/umwait.c +index 2293efd6ffa6..39bba722a42b 100644 +--- a/arch/x86/kernel/cpu/umwait.c ++++ b/arch/x86/kernel/cpu/umwait.c +@@ -2,6 +2,7 @@ + #include + #include + #include ++#include + + #include + #include +diff --git a/arch/x86/kvm/vmx/nested.c b/arch/x86/kvm/vmx/nested.c +index 6329a306856b..035fca6e5ee0 100644 +--- a/arch/x86/kvm/vmx/nested.c ++++ b/arch/x86/kvm/vmx/nested.c +@@ -1,6 +1,7 @@ + // SPDX-License-Identifier: GPL-2.0 + #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt + ++#include + #include + #include + +diff --git a/arch/x86/kvm/xen.c b/arch/x86/kvm/xen.c +index 4b4e738c6f1b..d2056ae8f34d 100644 +--- a/arch/x86/kvm/xen.c ++++ b/arch/x86/kvm/xen.c +@@ -13,6 +13,7 @@ + #include "lapic.h" + + #include ++#include + #include + #include + +diff --git a/arch/x86/platform/efi/runtime-map.c b/arch/x86/platform/efi/runtime-map.c +index a6f02cef3ca2..a6c7a3480d1a 100644 +--- a/arch/x86/platform/efi/runtime-map.c ++++ b/arch/x86/platform/efi/runtime-map.c +@@ -5,6 +5,7 @@ + + #include + #include ++#include + #include + #include + #include +diff --git a/block/blk-cgroup.c b/block/blk-cgroup.c +index bdbb557feb5a..2e99ac6d0c21 100644 +--- a/block/blk-cgroup.c ++++ b/block/blk-cgroup.c +@@ -29,6 +29,7 @@ + #include + #include + #include ++#include + #include "blk.h" + #include "blk-cgroup.h" + #include "blk-ioprio.h" +diff --git a/block/blk-crypto-sysfs.c b/block/blk-crypto-sysfs.c +index a304434489ba..233d04b9116b 100644 +--- a/block/blk-crypto-sysfs.c ++++ b/block/blk-crypto-sysfs.c +@@ -7,6 +7,7 @@ + */ + + #include ++#include + + #include "blk-crypto-internal.h" + +diff --git a/block/blk-ia-ranges.c b/block/blk-ia-ranges.c +index c9eb4241e048..4a6bb87a0143 100644 +--- a/block/blk-ia-ranges.c ++++ b/block/blk-ia-ranges.c +@@ -7,6 +7,7 @@ + #include + #include + #include ++#include + #include + + #include "blk.h" +diff --git a/block/blk-iocost.c b/block/blk-iocost.c +index 4b0b483a9693..d154161b906a 100644 +--- a/block/blk-iocost.c ++++ b/block/blk-iocost.c +@@ -178,6 +178,7 @@ + #include + #include + #include ++#include + #include + #include + #include "blk-rq-qos.h" +diff --git a/block/bsg.c b/block/bsg.c +index 72157a59b788..9e6635f423a0 100644 +--- a/block/bsg.c ++++ b/block/bsg.c +@@ -7,6 +7,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/block/elevator.h b/block/elevator.h +index 7ca3d7b6ed82..6c107132d536 100644 +--- a/block/elevator.h ++++ b/block/elevator.h +@@ -4,6 +4,7 @@ + + #include + #include ++#include + #include "blk-mq.h" + + struct io_cq; +diff --git a/block/holder.c b/block/holder.c +index 37d18c13d958..a9affd4757cd 100644 +--- a/block/holder.c ++++ b/block/holder.c +@@ -1,6 +1,7 @@ + // SPDX-License-Identifier: GPL-2.0-only + #include + #include ++#include + + struct bd_holder_disk { + struct list_head list; +diff --git a/block/kyber-iosched.c b/block/kyber-iosched.c +index 4155594aefc6..68fe2b6c12de 100644 +--- a/block/kyber-iosched.c ++++ b/block/kyber-iosched.c +@@ -10,6 +10,7 @@ + #include + #include + #include ++#include + + #include + +diff --git a/block/mq-deadline.c b/block/mq-deadline.c +index 1b0de4fc3958..25dee768d2ba 100644 +--- a/block/mq-deadline.c ++++ b/block/mq-deadline.c +@@ -15,6 +15,7 @@ + #include + #include + #include ++#include + + #include + +diff --git a/drivers/accel/ivpu/ivpu_pm.c b/drivers/accel/ivpu/ivpu_pm.c +index f501f27ebafd..8484f7d3bb4d 100644 +--- a/drivers/accel/ivpu/ivpu_pm.c ++++ b/drivers/accel/ivpu/ivpu_pm.c +@@ -4,6 +4,7 @@ + */ + + #include ++#include + #include + #include + #include +diff --git a/drivers/acpi/pfr_telemetry.c b/drivers/acpi/pfr_telemetry.c +index 843f678ade0c..c7d9208e78c0 100644 +--- a/drivers/acpi/pfr_telemetry.c ++++ b/drivers/acpi/pfr_telemetry.c +@@ -15,6 +15,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/drivers/acpi/sbs.c b/drivers/acpi/sbs.c +index 94e3c000df2e..003faea3ad4d 100644 +--- a/drivers/acpi/sbs.c ++++ b/drivers/acpi/sbs.c +@@ -14,6 +14,7 @@ + #include + #include + #include ++#include + + #include + #include +diff --git a/drivers/ata/pata_parport/pata_parport.c b/drivers/ata/pata_parport/pata_parport.c +index a7adfdcb5e27..b21ced9e0a3c 100644 +--- a/drivers/ata/pata_parport/pata_parport.c ++++ b/drivers/ata/pata_parport/pata_parport.c +@@ -3,6 +3,7 @@ + * Copyright 2023 Ondrej Zary + * based on paride.c by Grant R. Guenther + */ ++#include + #include + #include + #include +diff --git a/drivers/base/base.h b/drivers/base/base.h +index eb4c0ace9242..344e7e4012ab 100644 +--- a/drivers/base/base.h ++++ b/drivers/base/base.h +@@ -10,7 +10,12 @@ + * shared outside of the drivers/base/ directory. + * + */ ++ ++#include ++#include + #include ++#include ++#include + + /** + * struct subsys_private - structure to hold the private to the driver core portions of the bus_type/class structure. +diff --git a/drivers/base/container.c b/drivers/base/container.c +index f40588ebc3f5..8ef783dfd76d 100644 +--- a/drivers/base/container.c ++++ b/drivers/base/container.c +@@ -7,6 +7,7 @@ + */ + + #include ++#include + + #include "base.h" + +diff --git a/drivers/base/firmware_loader/builtin/main.c b/drivers/base/firmware_loader/builtin/main.c +index a065c3150897..13bb529ddadf 100644 +--- a/drivers/base/firmware_loader/builtin/main.c ++++ b/drivers/base/firmware_loader/builtin/main.c +@@ -2,6 +2,7 @@ + /* Builtin firmware support */ + + #include ++#include // for memcpy() + #include "../firmware.h" + + /* Only if FW_LOADER=y */ +diff --git a/drivers/base/soc.c b/drivers/base/soc.c +index 282c38aece0d..45365cf04fcd 100644 +--- a/drivers/base/soc.c ++++ b/drivers/base/soc.c +@@ -13,6 +13,7 @@ + #include + #include + #include ++#include + #include + #include + +diff --git a/drivers/base/swnode.c b/drivers/base/swnode.c +index 36512fb75a20..9ee5b270affc 100644 +--- a/drivers/base/swnode.c ++++ b/drivers/base/swnode.c +@@ -7,6 +7,7 @@ + */ + + #include ++#include + #include + #include + #include +diff --git a/drivers/base/topology.c b/drivers/base/topology.c +index 89f98be5c5b9..0526c0ee6640 100644 +--- a/drivers/base/topology.c ++++ b/drivers/base/topology.c +@@ -10,8 +10,10 @@ + */ + #include + #include ++#include + #include + #include ++#include + #include + + #define define_id_show_func(name, fmt) \ +diff --git a/drivers/base/transport_class.c b/drivers/base/transport_class.c +index 09ee2a1e35bb..902b2d74cad8 100644 +--- a/drivers/base/transport_class.c ++++ b/drivers/base/transport_class.c +@@ -26,9 +26,12 @@ + * transport class is framed entirely in terms of generic devices to + * allow it to be used by any physical HBA in the system. + */ ++ ++#include + #include + #include + #include ++#include + + static int transport_remove_classdev(struct attribute_container *cont, + struct device *dev, +diff --git a/drivers/block/null_blk/main.c b/drivers/block/null_blk/main.c +index 293f24cc4122..6de94c111f72 100644 +--- a/drivers/block/null_blk/main.c ++++ b/drivers/block/null_blk/main.c +@@ -8,6 +8,7 @@ + #include + #include + #include ++#include + #include + #include "null_blk.h" + +diff --git a/drivers/block/virtio_blk.c b/drivers/block/virtio_blk.c +index 5bf98fd6a651..64df47bbe6f2 100644 +--- a/drivers/block/virtio_blk.c ++++ b/drivers/block/virtio_blk.c +@@ -3,6 +3,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/drivers/block/xen-blkback/blkback.c b/drivers/block/xen-blkback/blkback.c +index 4defd7f387c7..cd4b4819825b 100644 +--- a/drivers/block/xen-blkback/blkback.c ++++ b/drivers/block/xen-blkback/blkback.c +@@ -37,11 +37,13 @@ + #define pr_fmt(fmt) "xen-blkback: " fmt + + #include ++#include + #include + #include + #include + #include + #include ++#include + + #include + #include +diff --git a/drivers/block/zram/zcomp.c b/drivers/block/zram/zcomp.c +index 55af4efd7983..bc1dcf40fd93 100644 +--- a/drivers/block/zram/zcomp.c ++++ b/drivers/block/zram/zcomp.c +@@ -11,6 +11,7 @@ + #include + #include + #include ++#include // for free_pages() + + #include "zcomp.h" + +diff --git a/drivers/bus/mhi/ep/main.c b/drivers/bus/mhi/ep/main.c +index 65fc1d738bec..e358d192f0d8 100644 +--- a/drivers/bus/mhi/ep/main.c ++++ b/drivers/bus/mhi/ep/main.c +@@ -9,6 +9,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/drivers/char/hw_random/virtio-rng.c b/drivers/char/hw_random/virtio-rng.c +index 7a4b45393acb..8a1bf80b5259 100644 +--- a/drivers/char/hw_random/virtio-rng.c ++++ b/drivers/char/hw_random/virtio-rng.c +@@ -6,6 +6,7 @@ + + #include + #include ++#include // for DEFINE_IDA + #include + #include + #include +diff --git a/drivers/char/ipmi/ipmi_msghandler.c b/drivers/char/ipmi/ipmi_msghandler.c +index b0eedc4595b3..a35d6487867c 100644 +--- a/drivers/char/ipmi/ipmi_msghandler.c ++++ b/drivers/char/ipmi/ipmi_msghandler.c +@@ -23,6 +23,7 @@ + #include + #include + #include ++#include // for DEFINE_IDA + #include + #include + #include +diff --git a/drivers/char/misc.c b/drivers/char/misc.c +index 541edc26ec89..d141e0d4dc94 100644 +--- a/drivers/char/misc.c ++++ b/drivers/char/misc.c +@@ -45,6 +45,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/drivers/char/ppdev.c b/drivers/char/ppdev.c +index ee951b265213..cb9546eac6cc 100644 +--- a/drivers/char/ppdev.c ++++ b/drivers/char/ppdev.c +@@ -53,6 +53,7 @@ + */ + + #include ++#include + #include + #include + #include +diff --git a/drivers/char/tpm/tpm-chip.c b/drivers/char/tpm/tpm-chip.c +index 42b1062e33cd..9fab186d60ef 100644 +--- a/drivers/char/tpm/tpm-chip.c ++++ b/drivers/char/tpm/tpm-chip.c +@@ -20,6 +20,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/drivers/clk/qcom/clk-regmap-mux-div.h b/drivers/clk/qcom/clk-regmap-mux-div.h +index 4df6c8d24c24..49417def20de 100644 +--- a/drivers/clk/qcom/clk-regmap-mux-div.h ++++ b/drivers/clk/qcom/clk-regmap-mux-div.h +@@ -8,6 +8,7 @@ + #define __QCOM_CLK_REGMAP_MUX_DIV_H__ + + #include ++#include + #include "clk-regmap.h" + + /** +diff --git a/drivers/clk/qcom/gdsc.c b/drivers/clk/qcom/gdsc.c +index 5358e28122ab..8860d7726fdc 100644 +--- a/drivers/clk/qcom/gdsc.c ++++ b/drivers/clk/qcom/gdsc.c +@@ -5,6 +5,7 @@ + + #include + #include ++#include + #include + #include + #include +diff --git a/drivers/clk/samsung/clk-cpu.h b/drivers/clk/samsung/clk-cpu.h +index 0164bd9ad021..39ddf58a0172 100644 +--- a/drivers/clk/samsung/clk-cpu.h ++++ b/drivers/clk/samsung/clk-cpu.h +@@ -10,6 +10,8 @@ + + #include "clk.h" + ++#include ++ + /** + * struct exynos_cpuclk_cfg_data - config data to setup cpu clocks + * @prate: frequency of the primary parent clock (in KHz) +diff --git a/drivers/clk/sunxi-ng/ccu_common.h b/drivers/clk/sunxi-ng/ccu_common.h +index 942a72c09437..2edb4a23283c 100644 +--- a/drivers/clk/sunxi-ng/ccu_common.h ++++ b/drivers/clk/sunxi-ng/ccu_common.h +@@ -8,6 +8,7 @@ + + #include + #include ++#include + + #define CCU_FEATURE_FRACTIONAL BIT(0) + #define CCU_FEATURE_VARIABLE_PREDIV BIT(1) +diff --git a/drivers/cpufreq/apple-soc-cpufreq.c b/drivers/cpufreq/apple-soc-cpufreq.c +index 021f423705e1..f1bb29fc6182 100644 +--- a/drivers/cpufreq/apple-soc-cpufreq.c ++++ b/drivers/cpufreq/apple-soc-cpufreq.c +@@ -13,6 +13,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/drivers/cpufreq/cpufreq_governor.h b/drivers/cpufreq/cpufreq_governor.h +index 168c23fd7fca..e67d33d3acb7 100644 +--- a/drivers/cpufreq/cpufreq_governor.h ++++ b/drivers/cpufreq/cpufreq_governor.h +@@ -18,6 +18,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/drivers/cpufreq/freq_table.c b/drivers/cpufreq/freq_table.c +index c4d4643b6ca6..d5f140c2b95e 100644 +--- a/drivers/cpufreq/freq_table.c ++++ b/drivers/cpufreq/freq_table.c +@@ -9,6 +9,7 @@ + + #include + #include ++#include + + /********************************************************************* + * FREQUENCY TABLE HELPERS * +diff --git a/drivers/cxl/cxl.h b/drivers/cxl/cxl.h +index b6017c0c57b4..784bcd943215 100644 +--- a/drivers/cxl/cxl.h ++++ b/drivers/cxl/cxl.h +@@ -7,9 +7,12 @@ + #include + #include + #include ++#include + #include + #include ++#include + #include ++#include + + /** + * DOC: cxl objects +diff --git a/drivers/cxl/cxlmem.h b/drivers/cxl/cxlmem.h +index 5303d6942b88..25081f2cf5c4 100644 +--- a/drivers/cxl/cxlmem.h ++++ b/drivers/cxl/cxlmem.h +@@ -7,6 +7,7 @@ + #include + #include + #include ++#include + #include + #include "cxl.h" + +diff --git a/drivers/devfreq/event/rockchip-dfi.c b/drivers/devfreq/event/rockchip-dfi.c +index e2a1e4463b6f..35eeb63180f7 100644 +--- a/drivers/devfreq/event/rockchip-dfi.c ++++ b/drivers/devfreq/event/rockchip-dfi.c +@@ -22,6 +22,7 @@ + #include + #include + #include ++#include + + #include + #include +diff --git a/drivers/dma-buf/st-dma-fence.c b/drivers/dma-buf/st-dma-fence.c +index b7c6f7ea9e0c..28e5f4cebf5c 100644 +--- a/drivers/dma-buf/st-dma-fence.c ++++ b/drivers/dma-buf/st-dma-fence.c +@@ -11,6 +11,7 @@ + #include + #include + #include ++#include + + #include "selftest.h" + +diff --git a/drivers/dma/ioat/sysfs.c b/drivers/dma/ioat/sysfs.c +index 168adf28c5b1..32a0be07b034 100644 +--- a/drivers/dma/ioat/sysfs.c ++++ b/drivers/dma/ioat/sysfs.c +@@ -5,6 +5,7 @@ + */ + + #include ++#include + #include + #include + #include +diff --git a/drivers/eisa/eisa-bus.c b/drivers/eisa/eisa-bus.c +index 33f0ba11c6ad..40c5f7cecd6b 100644 +--- a/drivers/eisa/eisa-bus.c ++++ b/drivers/eisa/eisa-bus.c +@@ -8,6 +8,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/drivers/extcon/devres.c b/drivers/extcon/devres.c +index f9d52e8ec5cf..a22c2374fd7a 100644 +--- a/drivers/extcon/devres.c ++++ b/drivers/extcon/devres.c +@@ -7,6 +7,7 @@ + */ + + #include "extcon.h" ++#include + + static int devm_extcon_dev_match(struct device *dev, void *res, void *data) + { +diff --git a/drivers/extcon/extcon.h b/drivers/extcon/extcon.h +index 946182687786..b2e0f715d81c 100644 +--- a/drivers/extcon/extcon.h ++++ b/drivers/extcon/extcon.h +@@ -2,6 +2,7 @@ + #ifndef __LINUX_EXTCON_INTERNAL_H__ + #define __LINUX_EXTCON_INTERNAL_H__ + ++#include + #include + + /** +diff --git a/drivers/firmware/arm_ffa/bus.c b/drivers/firmware/arm_ffa/bus.c +index 1c7940ba5539..50914dd5afd6 100644 +--- a/drivers/firmware/arm_ffa/bus.c ++++ b/drivers/firmware/arm_ffa/bus.c +@@ -8,6 +8,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/drivers/firmware/arm_scmi/bus.c b/drivers/firmware/arm_scmi/bus.c +index c15928b8c5cc..4e63209e35de 100644 +--- a/drivers/firmware/arm_scmi/bus.c ++++ b/drivers/firmware/arm_scmi/bus.c +@@ -8,6 +8,7 @@ + #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt + + #include ++#include + #include + #include + #include +diff --git a/drivers/firmware/edd.c b/drivers/firmware/edd.c +index 55dec4eb2c00..1971ff720078 100644 +--- a/drivers/firmware/edd.c ++++ b/drivers/firmware/edd.c +@@ -20,6 +20,7 @@ + * the list of BIOSs which have been reported to implement EDD. + */ + ++#include + #include + #include + #include +diff --git a/drivers/firmware/efi/libstub/efi-stub-helper.c b/drivers/firmware/efi/libstub/efi-stub-helper.c +index bfa30625f5d0..944c69ab4683 100644 +--- a/drivers/firmware/efi/libstub/efi-stub-helper.c ++++ b/drivers/firmware/efi/libstub/efi-stub-helper.c +@@ -9,6 +9,7 @@ + + #include + ++#include + #include + #include + #include +diff --git a/drivers/firmware/google/gsmi.c b/drivers/firmware/google/gsmi.c +index 96ea1fa76d35..ef6168516236 100644 +--- a/drivers/firmware/google/gsmi.c ++++ b/drivers/firmware/google/gsmi.c +@@ -26,6 +26,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/drivers/fpga/dfl.c b/drivers/fpga/dfl.c +index e6d12fbab653..ad5b11ac54df 100644 +--- a/drivers/fpga/dfl.c ++++ b/drivers/fpga/dfl.c +@@ -12,6 +12,8 @@ + */ + #include + #include ++#include ++#include + #include + #include + #include +diff --git a/drivers/gpio/gpio-tegra.c b/drivers/gpio/gpio-tegra.c +index ea5f9cc14bc4..c632bd6d1adf 100644 +--- a/drivers/gpio/gpio-tegra.c ++++ b/drivers/gpio/gpio-tegra.c +@@ -23,6 +23,7 @@ + #include + #include + #include ++#include + + #define GPIO_BANK(x) ((x) >> 5) + #define GPIO_PORT(x) (((x) >> 3) & 0x3) +diff --git a/drivers/gpio/gpio-tegra186.c b/drivers/gpio/gpio-tegra186.c +index d87dd06db40d..02d138cf9e59 100644 +--- a/drivers/gpio/gpio-tegra186.c ++++ b/drivers/gpio/gpio-tegra186.c +@@ -13,6 +13,7 @@ + #include + #include + #include ++#include + #include + + #include +diff --git a/drivers/gpio/gpio-thunderx.c b/drivers/gpio/gpio-thunderx.c +index 8521c6aacace..cd439802a552 100644 +--- a/drivers/gpio/gpio-thunderx.c ++++ b/drivers/gpio/gpio-thunderx.c +@@ -15,6 +15,7 @@ + #include + #include + #include ++#include + + #define GPIO_RX_DAT 0x0 + #define GPIO_TX_SET 0x8 +diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.h b/drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.h +index 85376baaa92f..441cf05fcd6a 100644 +--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.h ++++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.h +@@ -23,6 +23,7 @@ + #ifndef __AMDGPU_CTX_H__ + #define __AMDGPU_CTX_H__ + ++#include + #include + #include + +diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c +index 6a930c98387f..c195166a923b 100644 +--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c ++++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c +@@ -34,6 +34,7 @@ + #include + #include + #include ++#include + + #include + #include +diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ih.h b/drivers/gpu/drm/amd/amdgpu/amdgpu_ih.h +index 508f02eb0cf8..59a5bc9b1120 100644 +--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ih.h ++++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ih.h +@@ -24,6 +24,9 @@ + #ifndef __AMDGPU_IH_H__ + #define __AMDGPU_IH_H__ + ++#include ++#include ++ + /* Maximum number of IVs processed at once */ + #define AMDGPU_IH_MAX_NUM_IVS 32 + +diff --git a/drivers/gpu/drm/arm/display/komeda/komeda_color_mgmt.c b/drivers/gpu/drm/arm/display/komeda/komeda_color_mgmt.c +index d8e449e6ebda..28df5859897c 100644 +--- a/drivers/gpu/drm/arm/display/komeda/komeda_color_mgmt.c ++++ b/drivers/gpu/drm/arm/display/komeda/komeda_color_mgmt.c +@@ -7,6 +7,8 @@ + + #include "komeda_color_mgmt.h" + ++#include // for ARRAY_SIZE() ++ + /* 10bit precision YUV2RGB matrix */ + static const s32 yuv2rgb_bt601_narrow[KOMEDA_N_YUV2RGB_COEFFS] = { + 1192, 0, 1634, +diff --git a/drivers/gpu/drm/i915/i915_perf.c b/drivers/gpu/drm/i915/i915_perf.c +index 2d695818f006..27f9be67514f 100644 +--- a/drivers/gpu/drm/i915/i915_perf.c ++++ b/drivers/gpu/drm/i915/i915_perf.c +@@ -193,6 +193,7 @@ + + #include + #include ++#include + #include + #include + +diff --git a/drivers/gpu/drm/i915/i915_perf_types.h b/drivers/gpu/drm/i915/i915_perf_types.h +index 46445248d193..403caa12cc86 100644 +--- a/drivers/gpu/drm/i915/i915_perf_types.h ++++ b/drivers/gpu/drm/i915/i915_perf_types.h +@@ -9,6 +9,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/drivers/gpu/drm/i915/i915_scatterlist.h b/drivers/gpu/drm/i915/i915_scatterlist.h +index 6cf8a298849f..716e5ab11ce3 100644 +--- a/drivers/gpu/drm/i915/i915_scatterlist.h ++++ b/drivers/gpu/drm/i915/i915_scatterlist.h +@@ -7,6 +7,7 @@ + #ifndef I915_SCATTERLIST_H + #define I915_SCATTERLIST_H + ++#include + #include + #include + #include +diff --git a/drivers/gpu/drm/msm/msm_drv.h b/drivers/gpu/drm/msm/msm_drv.h +index 16a7cbc0b7dd..e7a2d2c3145a 100644 +--- a/drivers/gpu/drm/msm/msm_drv.h ++++ b/drivers/gpu/drm/msm/msm_drv.h +@@ -25,6 +25,7 @@ + #include + #include + #include ++#include + + #include + #include +diff --git a/drivers/gpu/drm/nouveau/dispnv50/disp.c b/drivers/gpu/drm/nouveau/dispnv50/disp.c +index 8d37a694b772..0c3d88ad0b0e 100644 +--- a/drivers/gpu/drm/nouveau/dispnv50/disp.c ++++ b/drivers/gpu/drm/nouveau/dispnv50/disp.c +@@ -28,6 +28,7 @@ + #include "wndw.h" + #include "handles.h" + ++#include + #include + #include + #include +diff --git a/drivers/gpu/drm/xe/xe_gpu_scheduler.c b/drivers/gpu/drm/xe/xe_gpu_scheduler.c +index e4ad1d6ce1d5..0f263dc0dc19 100644 +--- a/drivers/gpu/drm/xe/xe_gpu_scheduler.c ++++ b/drivers/gpu/drm/xe/xe_gpu_scheduler.c +@@ -5,6 +5,8 @@ + + #include "xe_gpu_scheduler.h" + ++#include ++ + static void xe_sched_process_msg_queue(struct xe_gpu_scheduler *sched) + { + if (!READ_ONCE(sched->base.pause_submit)) +diff --git a/drivers/gpu/drm/xe/xe_guc_ct.h b/drivers/gpu/drm/xe/xe_guc_ct.h +index f15f8a4857e0..31b2fbe4c264 100644 +--- a/drivers/gpu/drm/xe/xe_guc_ct.h ++++ b/drivers/gpu/drm/xe/xe_guc_ct.h +@@ -8,6 +8,8 @@ + + #include "xe_guc_ct_types.h" + ++#include ++ + struct drm_printer; + + int xe_guc_ct_init(struct xe_guc_ct *ct); +diff --git a/drivers/hid/intel-ish-hid/ishtp/bus.c b/drivers/hid/intel-ish-hid/ishtp/bus.c +index aa6cb033bb06..4ca13f42e44f 100644 +--- a/drivers/hid/intel-ish-hid/ishtp/bus.c ++++ b/drivers/hid/intel-ish-hid/ishtp/bus.c +@@ -8,6 +8,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/drivers/hwmon/coretemp.c b/drivers/hwmon/coretemp.c +index ba82d1e79c13..457994a41b13 100644 +--- a/drivers/hwmon/coretemp.c ++++ b/drivers/hwmon/coretemp.c +@@ -10,6 +10,7 @@ + #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt + + #include ++#include + #include + #include + #include +diff --git a/drivers/hwmon/nct6775-core.c b/drivers/hwmon/nct6775-core.c +index 8d2ef3145bca..36f7efa05085 100644 +--- a/drivers/hwmon/nct6775-core.c ++++ b/drivers/hwmon/nct6775-core.c +@@ -51,6 +51,7 @@ + #include + #include + #include ++#include + #include + #include + #include "lm75.h" +diff --git a/drivers/iio/adc/ti-tsc2046.c b/drivers/iio/adc/ti-tsc2046.c +index 1bbb51a6683c..d388673500a1 100644 +--- a/drivers/iio/adc/ti-tsc2046.c ++++ b/drivers/iio/adc/ti-tsc2046.c +@@ -11,6 +11,7 @@ + #include + #include + #include ++#include + + #include + +diff --git a/drivers/infiniband/hw/hfi1/rc.c b/drivers/infiniband/hw/hfi1/rc.c +index b36242c9d42c..d5a94a2d144f 100644 +--- a/drivers/infiniband/hw/hfi1/rc.c ++++ b/drivers/infiniband/hw/hfi1/rc.c +@@ -3,6 +3,7 @@ + * Copyright(c) 2015 - 2018 Intel Corporation. + */ + ++#include + #include + #include + #include +diff --git a/drivers/infiniband/hw/qib/qib_file_ops.c b/drivers/infiniband/hw/qib/qib_file_ops.c +index 29e4c59aa23b..dfa4ab446427 100644 +--- a/drivers/infiniband/hw/qib/qib_file_ops.c ++++ b/drivers/infiniband/hw/qib/qib_file_ops.c +@@ -40,6 +40,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/drivers/infiniband/hw/usnic/usnic_ib_main.c b/drivers/infiniband/hw/usnic/usnic_ib_main.c +index 13b654ddd3cc..632f2a171f60 100644 +--- a/drivers/infiniband/hw/usnic/usnic_ib_main.c ++++ b/drivers/infiniband/hw/usnic/usnic_ib_main.c +@@ -39,6 +39,7 @@ + * + */ + ++#include + #include + #include + #include +diff --git a/drivers/infiniband/hw/usnic/usnic_ib_sysfs.c b/drivers/infiniband/hw/usnic/usnic_ib_sysfs.c +index fdb63a8fb997..82e761bff7d5 100644 +--- a/drivers/infiniband/hw/usnic/usnic_ib_sysfs.c ++++ b/drivers/infiniband/hw/usnic/usnic_ib_sysfs.c +@@ -33,6 +33,7 @@ + + #include + #include ++#include + + #include + #include +diff --git a/drivers/infiniband/sw/rdmavt/cq.c b/drivers/infiniband/sw/rdmavt/cq.c +index 82c3f5932249..ba136ac88abc 100644 +--- a/drivers/infiniband/sw/rdmavt/cq.c ++++ b/drivers/infiniband/sw/rdmavt/cq.c +@@ -3,6 +3,7 @@ + * Copyright(c) 2016 - 2018 Intel Corporation. + */ + ++#include + #include + #include + #include "cq.h" +diff --git a/drivers/infiniband/sw/rdmavt/qp.c b/drivers/infiniband/sw/rdmavt/qp.c +index e6203e26cc06..49f74b7c6de8 100644 +--- a/drivers/infiniband/sw/rdmavt/qp.c ++++ b/drivers/infiniband/sw/rdmavt/qp.c +@@ -5,6 +5,7 @@ + + #include + #include ++#include + #include + #include + #include +diff --git a/drivers/infiniband/ulp/srp/ib_srp.c b/drivers/infiniband/ulp/srp/ib_srp.c +index 2916e77f589b..8a9b99ad671f 100644 +--- a/drivers/infiniband/ulp/srp/ib_srp.c ++++ b/drivers/infiniband/ulp/srp/ib_srp.c +@@ -39,6 +39,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/drivers/iommu/virtio-iommu.c b/drivers/iommu/virtio-iommu.c +index 34db37fd9675..6e782f9a29ec 100644 +--- a/drivers/iommu/virtio-iommu.c ++++ b/drivers/iommu/virtio-iommu.c +@@ -10,6 +10,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/drivers/mailbox/mailbox.c b/drivers/mailbox/mailbox.c +index ebff3baf3045..3452fa6784ae 100644 +--- a/drivers/mailbox/mailbox.c ++++ b/drivers/mailbox/mailbox.c +@@ -18,6 +18,7 @@ + #include + #include + #include ++#include + + #include "mailbox.h" + +diff --git a/drivers/md/bcache/bset.c b/drivers/md/bcache/bset.c +index 2bba4d6aaaa2..8460b8d543d8 100644 +--- a/drivers/md/bcache/bset.c ++++ b/drivers/md/bcache/bset.c +@@ -13,6 +13,7 @@ + + #include + #include ++#include // for page_address() + #include + #include + +diff --git a/drivers/md/bcache/sysfs.h b/drivers/md/bcache/sysfs.h +index 65b8bd975ab1..2e06366b7b0b 100644 +--- a/drivers/md/bcache/sysfs.h ++++ b/drivers/md/bcache/sysfs.h +@@ -2,6 +2,8 @@ + #ifndef _BCACHE_SYSFS_H_ + #define _BCACHE_SYSFS_H_ + ++#include ++ + #define KTYPE(type) \ + const struct kobj_type type ## _ktype = { \ + .release = type ## _release, \ +diff --git a/drivers/media/cec/core/cec-pin.c b/drivers/media/cec/core/cec-pin.c +index 330d5d5d86ab..262870863e0a 100644 +--- a/drivers/media/cec/core/cec-pin.c ++++ b/drivers/media/cec/core/cec-pin.c +@@ -6,6 +6,7 @@ + #include + #include + #include ++#include + + #include + #include "cec-pin-priv.h" +diff --git a/drivers/media/pci/pt3/pt3.c b/drivers/media/pci/pt3/pt3.c +index 246f73b8a9e7..e47d8fa88d5e 100644 +--- a/drivers/media/pci/pt3/pt3.c ++++ b/drivers/media/pci/pt3/pt3.c +@@ -13,6 +13,7 @@ + #include + #include + #include ++#include + + #include + #include +diff --git a/drivers/memory/tegra/tegra234.c b/drivers/memory/tegra/tegra234.c +index abff87f917cb..cf595c6460ed 100644 +--- a/drivers/memory/tegra/tegra234.c ++++ b/drivers/memory/tegra/tegra234.c +@@ -6,6 +6,7 @@ + #include + + #include ++#include + #include + #include + +diff --git a/drivers/mfd/abx500-core.c b/drivers/mfd/abx500-core.c +index e896531d0354..db2e1706d987 100644 +--- a/drivers/mfd/abx500-core.c ++++ b/drivers/mfd/abx500-core.c +@@ -7,6 +7,7 @@ + + #include + #include ++#include // for devm_kzalloc() + #include + #include + #include +diff --git a/drivers/misc/cardreader/alcor_pci.c b/drivers/misc/cardreader/alcor_pci.c +index 0142c4bf4f42..d10a81756fe9 100644 +--- a/drivers/misc/cardreader/alcor_pci.c ++++ b/drivers/misc/cardreader/alcor_pci.c +@@ -6,6 +6,7 @@ + */ + + #include ++#include + #include + #include + #include +diff --git a/drivers/misc/dw-xdata-pcie.c b/drivers/misc/dw-xdata-pcie.c +index efd0ca8cc925..fb9b65d7730b 100644 +--- a/drivers/misc/dw-xdata-pcie.c ++++ b/drivers/misc/dw-xdata-pcie.c +@@ -9,6 +9,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/drivers/misc/lkdtm/heap.c b/drivers/misc/lkdtm/heap.c +index b1b316f99703..2ea3574de879 100644 +--- a/drivers/misc/lkdtm/heap.c ++++ b/drivers/misc/lkdtm/heap.c +@@ -8,6 +8,7 @@ + #include + #include + #include ++#include + + static struct kmem_cache *double_free_cache; + static struct kmem_cache *a_cache; +diff --git a/drivers/misc/mei/bus.c b/drivers/misc/mei/bus.c +index f9bcff197615..71251ee2ffdc 100644 +--- a/drivers/misc/mei/bus.c ++++ b/drivers/misc/mei/bus.c +@@ -7,6 +7,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/drivers/misc/mei/client.c b/drivers/misc/mei/client.c +index 9d090fa07516..e7886e1816da 100644 +--- a/drivers/misc/mei/client.c ++++ b/drivers/misc/mei/client.c +@@ -7,6 +7,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/drivers/misc/mei/debugfs.c b/drivers/misc/mei/debugfs.c +index 3b098d4c8e3d..f7a3ea46561a 100644 +--- a/drivers/misc/mei/debugfs.c ++++ b/drivers/misc/mei/debugfs.c +@@ -6,6 +6,7 @@ + + #include + #include ++#include + #include + #include + #include +diff --git a/drivers/misc/mei/main.c b/drivers/misc/mei/main.c +index 79e6f3c1341f..36707eaf7be0 100644 +--- a/drivers/misc/mei/main.c ++++ b/drivers/misc/mei/main.c +@@ -14,6 +14,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/drivers/misc/pci_endpoint_test.c b/drivers/misc/pci_endpoint_test.c +index c38a6083f0a7..fe65f26da400 100644 +--- a/drivers/misc/pci_endpoint_test.c ++++ b/drivers/misc/pci_endpoint_test.c +@@ -9,6 +9,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/drivers/misc/vcpu_stall_detector.c b/drivers/misc/vcpu_stall_detector.c +index 6479c962da1a..be69d9c4a993 100644 +--- a/drivers/misc/vcpu_stall_detector.c ++++ b/drivers/misc/vcpu_stall_detector.c +@@ -17,6 +17,7 @@ + #include + #include + #include ++#include + + #define VCPU_STALL_REG_STATUS (0x00) + #define VCPU_STALL_REG_LOAD_CNT (0x04) +diff --git a/drivers/misc/xilinx_sdfec.c b/drivers/misc/xilinx_sdfec.c +index 94a0ee19bf20..03d0abf740c8 100644 +--- a/drivers/misc/xilinx_sdfec.c ++++ b/drivers/misc/xilinx_sdfec.c +@@ -11,6 +11,7 @@ + */ + + #include ++#include + #include + #include + #include +diff --git a/drivers/mtd/mtd_blkdevs.c b/drivers/mtd/mtd_blkdevs.c +index f0526dcc2162..7e52f6cd0cc2 100644 +--- a/drivers/mtd/mtd_blkdevs.c ++++ b/drivers/mtd/mtd_blkdevs.c +@@ -5,6 +5,7 @@ + * Copyright © 2003-2010 David Woodhouse + */ + ++#include + #include + #include + #include +diff --git a/drivers/net/can/spi/mcp251xfd/mcp251xfd-core.c b/drivers/net/can/spi/mcp251xfd/mcp251xfd-core.c +index eebf967f4711..230d14500ae7 100644 +--- a/drivers/net/can/spi/mcp251xfd/mcp251xfd-core.c ++++ b/drivers/net/can/spi/mcp251xfd/mcp251xfd-core.c +@@ -20,6 +20,7 @@ + #include + #include + #include ++#include + + #include "mcp251xfd.h" + +diff --git a/drivers/net/can/spi/mcp251xfd/mcp251xfd-ring.c b/drivers/net/can/spi/mcp251xfd/mcp251xfd-ring.c +index bfe4caa0c99d..1182bc8dd529 100644 +--- a/drivers/net/can/spi/mcp251xfd/mcp251xfd-ring.c ++++ b/drivers/net/can/spi/mcp251xfd/mcp251xfd-ring.c +@@ -17,6 +17,8 @@ + #include "mcp251xfd.h" + #include "mcp251xfd-ram.h" + ++#include ++ + static inline u8 + mcp251xfd_cmd_prepare_write_reg(const struct mcp251xfd_priv *priv, + union mcp251xfd_write_reg_buf *write_reg_buf, +diff --git a/drivers/net/can/spi/mcp251xfd/mcp251xfd-rx.c b/drivers/net/can/spi/mcp251xfd/mcp251xfd-rx.c +index ced8d9c81f8c..1cfdd6ec3a12 100644 +--- a/drivers/net/can/spi/mcp251xfd/mcp251xfd-rx.c ++++ b/drivers/net/can/spi/mcp251xfd/mcp251xfd-rx.c +@@ -13,6 +13,7 @@ + // + + #include ++#include + + #include "mcp251xfd.h" + +diff --git a/drivers/net/can/spi/mcp251xfd/mcp251xfd-tef.c b/drivers/net/can/spi/mcp251xfd/mcp251xfd-tef.c +index e5bd57b65aaf..75b226a868be 100644 +--- a/drivers/net/can/spi/mcp251xfd/mcp251xfd-tef.c ++++ b/drivers/net/can/spi/mcp251xfd/mcp251xfd-tef.c +@@ -13,6 +13,7 @@ + // + + #include ++#include + + #include "mcp251xfd.h" + +diff --git a/drivers/net/ethernet/cortina/gemini.c b/drivers/net/ethernet/cortina/gemini.c +index 705c3eb19cd3..6ae699443a1b 100644 +--- a/drivers/net/ethernet/cortina/gemini.c ++++ b/drivers/net/ethernet/cortina/gemini.c +@@ -36,6 +36,7 @@ + #include + #include + #include ++#include + + #include + #include +diff --git a/drivers/net/ethernet/freescale/fec_ptp.c b/drivers/net/ethernet/freescale/fec_ptp.c +index 181d9bfbee22..6f36d1ffbc61 100644 +--- a/drivers/net/ethernet/freescale/fec_ptp.c ++++ b/drivers/net/ethernet/freescale/fec_ptp.c +@@ -32,6 +32,7 @@ + #include + #include + #include ++#include + + #include "fec.h" + +diff --git a/drivers/net/ethernet/hisilicon/hip04_eth.c b/drivers/net/ethernet/hisilicon/hip04_eth.c +index b91e7a06b97f..4b75a40daa7f 100644 +--- a/drivers/net/ethernet/hisilicon/hip04_eth.c ++++ b/drivers/net/ethernet/hisilicon/hip04_eth.c +@@ -15,6 +15,7 @@ + #include + #include + #include ++#include + + #define SC_PPE_RESET_DREQ 0x026C + +diff --git a/drivers/net/ethernet/qualcomm/rmnet/rmnet_map_data.c b/drivers/net/ethernet/qualcomm/rmnet/rmnet_map_data.c +index a5e3d1a88305..1c06334a38db 100644 +--- a/drivers/net/ethernet/qualcomm/rmnet/rmnet_map_data.c ++++ b/drivers/net/ethernet/qualcomm/rmnet/rmnet_map_data.c +@@ -9,6 +9,7 @@ + #include + #include + #include ++#include + #include "rmnet_config.h" + #include "rmnet_map.h" + #include "rmnet_private.h" +diff --git a/drivers/net/ethernet/ti/am65-cpsw-nuss.c b/drivers/net/ethernet/ti/am65-cpsw-nuss.c +index 9d2f4ac783e4..45e4d70ad021 100644 +--- a/drivers/net/ethernet/ti/am65-cpsw-nuss.c ++++ b/drivers/net/ethernet/ti/am65-cpsw-nuss.c +@@ -30,6 +30,7 @@ + #include + #include + #include ++#include + #include + + #include "cpsw_ale.h" +diff --git a/drivers/net/mdio/mdio-mux-meson-gxl.c b/drivers/net/mdio/mdio-mux-meson-gxl.c +index 89554021b5cc..b3e680d27e2b 100644 +--- a/drivers/net/mdio/mdio-mux-meson-gxl.c ++++ b/drivers/net/mdio/mdio-mux-meson-gxl.c +@@ -9,6 +9,7 @@ + #include + #include + #include ++#include + #include + + #define ETH_REG2 0x0 +diff --git a/drivers/net/mdio/mdio-mux-multiplexer.c b/drivers/net/mdio/mdio-mux-multiplexer.c +index 569b13383191..97e307d946a8 100644 +--- a/drivers/net/mdio/mdio-mux-multiplexer.c ++++ b/drivers/net/mdio/mdio-mux-multiplexer.c +@@ -6,6 +6,7 @@ + + #include + #include ++#include + #include + #include + +diff --git a/drivers/net/wireless/mediatek/mt76/mt76x02_usb_core.c b/drivers/net/wireless/mediatek/mt76/mt76x02_usb_core.c +index 85a78dea4085..b11bc7ab80a8 100644 +--- a/drivers/net/wireless/mediatek/mt76/mt76x02_usb_core.c ++++ b/drivers/net/wireless/mediatek/mt76/mt76x02_usb_core.c +@@ -5,6 +5,8 @@ + + #include "mt76x02_usb.h" + ++#include ++ + static void mt76x02u_remove_dma_hdr(struct sk_buff *skb) + { + int hdr_len; +diff --git a/drivers/net/wireless/virtual/mac80211_hwsim.c b/drivers/net/wireless/virtual/mac80211_hwsim.c +index a84340c2075f..914c3b63430f 100644 +--- a/drivers/net/wireless/virtual/mac80211_hwsim.c ++++ b/drivers/net/wireless/virtual/mac80211_hwsim.c +@@ -23,6 +23,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/drivers/net/wwan/iosm/iosm_ipc_imem.c b/drivers/net/wwan/iosm/iosm_ipc_imem.c +index 829515a601b3..d11ca25b07bd 100644 +--- a/drivers/net/wwan/iosm/iosm_ipc_imem.c ++++ b/drivers/net/wwan/iosm/iosm_ipc_imem.c +@@ -4,6 +4,7 @@ + */ + + #include ++#include + + #include "iosm_ipc_chnl_cfg.h" + #include "iosm_ipc_devlink.h" +diff --git a/drivers/nvme/host/nvme.h b/drivers/nvme/host/nvme.h +index 030c80818240..0256c21a9243 100644 +--- a/drivers/nvme/host/nvme.h ++++ b/drivers/nvme/host/nvme.h +@@ -13,6 +13,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/drivers/nvme/target/fc.c b/drivers/nvme/target/fc.c +index bda7a3009e85..5fcd8e9619f1 100644 +--- a/drivers/nvme/target/fc.c ++++ b/drivers/nvme/target/fc.c +@@ -6,6 +6,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/drivers/nvme/target/nvmet.h b/drivers/nvme/target/nvmet.h +index 6c8acebe1a1a..cd1b2ae40656 100644 +--- a/drivers/nvme/target/nvmet.h ++++ b/drivers/nvme/target/nvmet.h +@@ -8,6 +8,7 @@ + + #include + #include ++#include + #include + #include + #include +diff --git a/drivers/of/of_numa.c b/drivers/of/of_numa.c +index 5949829a1b00..9681c4dd5d82 100644 +--- a/drivers/of/of_numa.c ++++ b/drivers/of/of_numa.c +@@ -10,6 +10,7 @@ + #include + #include + #include ++#include // for LOCAL_DISTANCE + + #include + +diff --git a/drivers/pci/controller/vmd.c b/drivers/pci/controller/vmd.c +index 87b7856f375a..59291addaeb3 100644 +--- a/drivers/pci/controller/vmd.c ++++ b/drivers/pci/controller/vmd.c +@@ -7,6 +7,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/drivers/pci/pci.c b/drivers/pci/pci.c +index 9ab9b1008d8b..ad0d6194f074 100644 +--- a/drivers/pci/pci.c ++++ b/drivers/pci/pci.c +@@ -24,6 +24,7 @@ + #include + #include + #include ++#include // for DEFINE_IDA + #include + #include + #include +diff --git a/drivers/pci/switch/switchtec.c b/drivers/pci/switch/switchtec.c +index 1804794d0e68..eea031b3f0ef 100644 +--- a/drivers/pci/switch/switchtec.c ++++ b/drivers/pci/switch/switchtec.c +@@ -7,6 +7,7 @@ + #include + #include + ++#include + #include + #include + #include +diff --git a/drivers/perf/thunderx2_pmu.c b/drivers/perf/thunderx2_pmu.c +index 1edb9c03704f..64a06867616d 100644 +--- a/drivers/perf/thunderx2_pmu.c ++++ b/drivers/perf/thunderx2_pmu.c +@@ -9,6 +9,7 @@ + #include + #include + #include ++#include + + /* Each ThunderX2(TX2) Socket has a L3C and DMC UNCORE PMU device. + * Each UNCORE PMU device consists of 4 independent programmable counters. +diff --git a/drivers/platform/chrome/wilco_ec/telemetry.c b/drivers/platform/chrome/wilco_ec/telemetry.c +index b7c616f3d179..4031fc6dd4ad 100644 +--- a/drivers/platform/chrome/wilco_ec/telemetry.c ++++ b/drivers/platform/chrome/wilco_ec/telemetry.c +@@ -30,6 +30,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/drivers/platform/x86/amd/pmf/tee-if.c b/drivers/platform/x86/amd/pmf/tee-if.c +index f8c0177afb0d..c74eed457982 100644 +--- a/drivers/platform/x86/amd/pmf/tee-if.c ++++ b/drivers/platform/x86/amd/pmf/tee-if.c +@@ -9,6 +9,7 @@ + */ + + #include ++#include + #include + #include + #include "pmf.h" +diff --git a/drivers/platform/x86/dell/dell-wmi-sysman/biosattr-interface.c b/drivers/platform/x86/dell/dell-wmi-sysman/biosattr-interface.c +index c2dd2de6bc20..3114a7f5b5ee 100644 +--- a/drivers/platform/x86/dell/dell-wmi-sysman/biosattr-interface.c ++++ b/drivers/platform/x86/dell/dell-wmi-sysman/biosattr-interface.c +@@ -6,6 +6,7 @@ + * Copyright (c) 2020 Dell Inc. + */ + ++#include + #include + #include "dell-wmi-sysman.h" + +diff --git a/drivers/platform/x86/dell/dell-wmi-sysman/enum-attributes.c b/drivers/platform/x86/dell/dell-wmi-sysman/enum-attributes.c +index 8cc212c85266..388844b02777 100644 +--- a/drivers/platform/x86/dell/dell-wmi-sysman/enum-attributes.c ++++ b/drivers/platform/x86/dell/dell-wmi-sysman/enum-attributes.c +@@ -8,6 +8,8 @@ + + #include "dell-wmi-sysman.h" + ++#include ++ + get_instance_id(enumeration); + + static ssize_t current_value_show(struct kobject *kobj, struct kobj_attribute *attr, char *buf) +diff --git a/drivers/platform/x86/dell/dell-wmi-sysman/int-attributes.c b/drivers/platform/x86/dell/dell-wmi-sysman/int-attributes.c +index 951e75b538fa..3adb2e17d786 100644 +--- a/drivers/platform/x86/dell/dell-wmi-sysman/int-attributes.c ++++ b/drivers/platform/x86/dell/dell-wmi-sysman/int-attributes.c +@@ -8,6 +8,8 @@ + + #include "dell-wmi-sysman.h" + ++#include ++ + enum int_properties {MIN_VALUE = 6, MAX_VALUE, SCALAR_INCR}; + + get_instance_id(integer); +diff --git a/drivers/platform/x86/dell/dell-wmi-sysman/passobj-attributes.c b/drivers/platform/x86/dell/dell-wmi-sysman/passobj-attributes.c +index 230e6ee96636..1b2dfc8abbaa 100644 +--- a/drivers/platform/x86/dell/dell-wmi-sysman/passobj-attributes.c ++++ b/drivers/platform/x86/dell/dell-wmi-sysman/passobj-attributes.c +@@ -8,6 +8,9 @@ + + #include "dell-wmi-sysman.h" + ++#include ++#include ++ + enum po_properties {IS_PASS_SET = 1, MIN_PASS_LEN, MAX_PASS_LEN}; + + get_instance_id(po); +diff --git a/drivers/platform/x86/dell/dell-wmi-sysman/passwordattr-interface.c b/drivers/platform/x86/dell/dell-wmi-sysman/passwordattr-interface.c +index 86ec962aace9..c6ea8dbbded3 100644 +--- a/drivers/platform/x86/dell/dell-wmi-sysman/passwordattr-interface.c ++++ b/drivers/platform/x86/dell/dell-wmi-sysman/passwordattr-interface.c +@@ -5,6 +5,7 @@ + * Copyright (c) 2020 Dell Inc. + */ + ++#include + #include + #include "dell-wmi-sysman.h" + +diff --git a/drivers/platform/x86/dell/dell-wmi-sysman/string-attributes.c b/drivers/platform/x86/dell/dell-wmi-sysman/string-attributes.c +index c392f0ecf8b5..a331f9433db5 100644 +--- a/drivers/platform/x86/dell/dell-wmi-sysman/string-attributes.c ++++ b/drivers/platform/x86/dell/dell-wmi-sysman/string-attributes.c +@@ -8,6 +8,8 @@ + + #include "dell-wmi-sysman.h" + ++#include ++ + enum string_properties {MIN_LEN = 6, MAX_LEN}; + + get_instance_id(str); +diff --git a/drivers/platform/x86/dell/dell-wmi-sysman/sysman.c b/drivers/platform/x86/dell/dell-wmi-sysman/sysman.c +index b929b4f82420..02041b2dd7fa 100644 +--- a/drivers/platform/x86/dell/dell-wmi-sysman/sysman.c ++++ b/drivers/platform/x86/dell/dell-wmi-sysman/sysman.c +@@ -11,6 +11,7 @@ + #include + #include + #include ++#include + #include + #include "dell-wmi-sysman.h" + #include "../../firmware_attributes_class.h" +diff --git a/drivers/platform/x86/hp/hp-bioscfg/bioscfg.c b/drivers/platform/x86/hp/hp-bioscfg/bioscfg.c +index 8c9f4f3227fc..c5c73c8aac9f 100644 +--- a/drivers/platform/x86/hp/hp-bioscfg/bioscfg.c ++++ b/drivers/platform/x86/hp/hp-bioscfg/bioscfg.c +@@ -10,6 +10,7 @@ + #include + #include + #include ++#include + #include + #include "bioscfg.h" + #include "../../firmware_attributes_class.h" +diff --git a/drivers/platform/x86/hp/hp-bioscfg/enum-attributes.c b/drivers/platform/x86/hp/hp-bioscfg/enum-attributes.c +index a2402d31c146..b6288aec7b1d 100644 +--- a/drivers/platform/x86/hp/hp-bioscfg/enum-attributes.c ++++ b/drivers/platform/x86/hp/hp-bioscfg/enum-attributes.c +@@ -8,6 +8,9 @@ + + #include "bioscfg.h" + ++#include ++#include ++ + GET_INSTANCE_ID(enumeration); + + static ssize_t current_value_show(struct kobject *kobj, struct kobj_attribute *attr, char *buf) +diff --git a/drivers/platform/x86/hp/hp-bioscfg/int-attributes.c b/drivers/platform/x86/hp/hp-bioscfg/int-attributes.c +index 86b7ac63fec2..5aa009b396d7 100644 +--- a/drivers/platform/x86/hp/hp-bioscfg/int-attributes.c ++++ b/drivers/platform/x86/hp/hp-bioscfg/int-attributes.c +@@ -8,6 +8,9 @@ + + #include "bioscfg.h" + ++#include ++#include ++ + GET_INSTANCE_ID(integer); + + static ssize_t current_value_show(struct kobject *kobj, struct kobj_attribute *attr, char *buf) +diff --git a/drivers/platform/x86/hp/hp-bioscfg/order-list-attributes.c b/drivers/platform/x86/hp/hp-bioscfg/order-list-attributes.c +index 1ff09dfb7d7e..e8b8ccc1cf7c 100644 +--- a/drivers/platform/x86/hp/hp-bioscfg/order-list-attributes.c ++++ b/drivers/platform/x86/hp/hp-bioscfg/order-list-attributes.c +@@ -8,6 +8,8 @@ + + #include "bioscfg.h" + ++#include ++ + GET_INSTANCE_ID(ordered_list); + + static ssize_t current_value_show(struct kobject *kobj, struct kobj_attribute *attr, char *buf) +diff --git a/drivers/platform/x86/hp/hp-bioscfg/passwdobj-attributes.c b/drivers/platform/x86/hp/hp-bioscfg/passwdobj-attributes.c +index f7efe217a4bb..2e05200eb595 100644 +--- a/drivers/platform/x86/hp/hp-bioscfg/passwdobj-attributes.c ++++ b/drivers/platform/x86/hp/hp-bioscfg/passwdobj-attributes.c +@@ -8,6 +8,9 @@ + + #include "bioscfg.h" + ++#include ++#include ++ + GET_INSTANCE_ID(password); + /* + * Clear all passwords copied to memory for a particular +diff --git a/drivers/platform/x86/hp/hp-bioscfg/spmobj-attributes.c b/drivers/platform/x86/hp/hp-bioscfg/spmobj-attributes.c +index 86f90238750c..0ace0adaabf0 100644 +--- a/drivers/platform/x86/hp/hp-bioscfg/spmobj-attributes.c ++++ b/drivers/platform/x86/hp/hp-bioscfg/spmobj-attributes.c +@@ -8,6 +8,8 @@ + + #include "bioscfg.h" + ++#include ++ + static const char * const spm_state_types[] = { + "not provisioned", + "provisioned", +diff --git a/drivers/platform/x86/hp/hp-bioscfg/string-attributes.c b/drivers/platform/x86/hp/hp-bioscfg/string-attributes.c +index f0c20070094d..038e6e9deddf 100644 +--- a/drivers/platform/x86/hp/hp-bioscfg/string-attributes.c ++++ b/drivers/platform/x86/hp/hp-bioscfg/string-attributes.c +@@ -8,6 +8,9 @@ + + #include "bioscfg.h" + ++#include ++#include ++ + #define WMI_STRING_TYPE "HPBIOS_BIOSString" + + GET_INSTANCE_ID(string); +diff --git a/drivers/platform/x86/hp/hp-bioscfg/surestart-attributes.c b/drivers/platform/x86/hp/hp-bioscfg/surestart-attributes.c +index b57e42f29282..3195365be1de 100644 +--- a/drivers/platform/x86/hp/hp-bioscfg/surestart-attributes.c ++++ b/drivers/platform/x86/hp/hp-bioscfg/surestart-attributes.c +@@ -7,6 +7,8 @@ + */ + + #include "bioscfg.h" ++ ++#include + #include + + /* Maximum number of log entries supported when log entry size is 16 +diff --git a/drivers/platform/x86/intel/pmt/telemetry.c b/drivers/platform/x86/intel/pmt/telemetry.c +index 09258564dfc4..4c16360ed2af 100644 +--- a/drivers/platform/x86/intel/pmt/telemetry.c ++++ b/drivers/platform/x86/intel/pmt/telemetry.c +@@ -10,6 +10,7 @@ + + #include + #include ++#include + #include + #include + #include +diff --git a/drivers/platform/x86/intel/uncore-frequency/uncore-frequency-common.c b/drivers/platform/x86/intel/uncore-frequency/uncore-frequency-common.c +index 33bb58dc3f78..e9f18a868911 100644 +--- a/drivers/platform/x86/intel/uncore-frequency/uncore-frequency-common.c ++++ b/drivers/platform/x86/intel/uncore-frequency/uncore-frequency-common.c +@@ -6,6 +6,7 @@ + * + */ + #include ++#include + #include + #include "uncore-frequency-common.h" + +diff --git a/drivers/platform/x86/intel/uncore-frequency/uncore-frequency-common.h b/drivers/platform/x86/intel/uncore-frequency/uncore-frequency-common.h +index 0e5bf507e555..fe37efcf0801 100644 +--- a/drivers/platform/x86/intel/uncore-frequency/uncore-frequency-common.h ++++ b/drivers/platform/x86/intel/uncore-frequency/uncore-frequency-common.h +@@ -10,6 +10,7 @@ + #define __INTEL_UNCORE_FREQ_COMMON_H + + #include ++#include + + /** + * struct uncore_data - Encapsulate all uncore data +diff --git a/drivers/platform/x86/think-lmi.c b/drivers/platform/x86/think-lmi.c +index 3a396b763c49..77c35f1b0a81 100644 +--- a/drivers/platform/x86/think-lmi.c ++++ b/drivers/platform/x86/think-lmi.c +@@ -14,6 +14,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/drivers/platform/x86/wmi.c b/drivers/platform/x86/wmi.c +index 885a16bc059e..b87f397730b9 100644 +--- a/drivers/platform/x86/wmi.c ++++ b/drivers/platform/x86/wmi.c +@@ -22,6 +22,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/drivers/pmdomain/governor.c b/drivers/pmdomain/governor.c +index d1a10eeebd16..8e37c65f5084 100644 +--- a/drivers/pmdomain/governor.c ++++ b/drivers/pmdomain/governor.c +@@ -10,6 +10,7 @@ + #include + #include + #include ++#include + #include + + static int dev_update_qos_constraint(struct device *dev, void *data) +diff --git a/drivers/power/reset/ltc2952-poweroff.c b/drivers/power/reset/ltc2952-poweroff.c +index fa25fbd53934..f94401ed1539 100644 +--- a/drivers/power/reset/ltc2952-poweroff.c ++++ b/drivers/power/reset/ltc2952-poweroff.c +@@ -57,6 +57,7 @@ + #include + #include + #include ++#include + + struct ltc2952_poweroff { + struct hrtimer timer_trigger; +diff --git a/drivers/powercap/dtpm.c b/drivers/powercap/dtpm.c +index ce920f17f45f..bd8127edd8a8 100644 +--- a/drivers/powercap/dtpm.c ++++ b/drivers/powercap/dtpm.c +@@ -18,6 +18,7 @@ + #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt + + #include ++#include + #include + #include + #include +diff --git a/drivers/pps/clients/pps-ktimer.c b/drivers/pps/clients/pps-ktimer.c +index d33106bd7a29..7bb83872bb87 100644 +--- a/drivers/pps/clients/pps-ktimer.c ++++ b/drivers/pps/clients/pps-ktimer.c +@@ -7,6 +7,7 @@ + + #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt + ++#include + #include + #include + #include +diff --git a/drivers/pps/clients/pps-ldisc.c b/drivers/pps/clients/pps-ldisc.c +index 443d6bae19d1..4c2bd74399bc 100644 +--- a/drivers/pps/clients/pps-ldisc.c ++++ b/drivers/pps/clients/pps-ldisc.c +@@ -7,6 +7,7 @@ + + #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt + ++#include + #include + #include + #include +diff --git a/drivers/pps/clients/pps_parport.c b/drivers/pps/clients/pps_parport.c +index 42f93d4c6ee3..9f9389158042 100644 +--- a/drivers/pps/clients/pps_parport.c ++++ b/drivers/pps/clients/pps_parport.c +@@ -15,6 +15,7 @@ + + #include + #include ++#include + #include + #include + #include +diff --git a/drivers/pps/kapi.c b/drivers/pps/kapi.c +index d9d566f70ed1..1df337bf5e7b 100644 +--- a/drivers/pps/kapi.c ++++ b/drivers/pps/kapi.c +@@ -7,6 +7,7 @@ + + #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt + ++#include + #include + #include + #include +diff --git a/drivers/pps/pps.c b/drivers/pps/pps.c +index 5d19baae6a38..a689fd42ccaa 100644 +--- a/drivers/pps/pps.c ++++ b/drivers/pps/pps.c +@@ -15,6 +15,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/drivers/rtc/class.c b/drivers/rtc/class.c +index 921ee1827974..0a4853d45ec0 100644 +--- a/drivers/rtc/class.c ++++ b/drivers/rtc/class.c +@@ -14,6 +14,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/drivers/rtc/interface.c b/drivers/rtc/interface.c +index 1b63111cdda2..58f7d3a19dfe 100644 +--- a/drivers/rtc/interface.c ++++ b/drivers/rtc/interface.c +@@ -9,6 +9,7 @@ + */ + + #include ++#include + #include + #include + #include +diff --git a/drivers/scsi/isci/isci.h b/drivers/scsi/isci/isci.h +index 4e6b1decbca7..4b9d92bff598 100644 +--- a/drivers/scsi/isci/isci.h ++++ b/drivers/scsi/isci/isci.h +@@ -57,6 +57,7 @@ + #define __ISCI_H__ + + #include ++#include + #include + + #define DRV_NAME "isci" +diff --git a/drivers/scsi/lpfc/lpfc_init.c b/drivers/scsi/lpfc/lpfc_init.c +index 70bcee64bc8c..ee966d95b470 100644 +--- a/drivers/scsi/lpfc/lpfc_init.c ++++ b/drivers/scsi/lpfc/lpfc_init.c +@@ -41,6 +41,7 @@ + #include + #include + #include ++#include + + #include + #include +diff --git a/drivers/slimbus/slimbus.h b/drivers/slimbus/slimbus.h +index 00a7f112574b..29e9229a683c 100644 +--- a/drivers/slimbus/slimbus.h ++++ b/drivers/slimbus/slimbus.h +@@ -7,6 +7,7 @@ + #define _DRIVERS_SLIMBUS_H + #include + #include ++#include + #include + #include + #include +diff --git a/drivers/soc/nuvoton/wpcm450-soc.c b/drivers/soc/nuvoton/wpcm450-soc.c +index c5e0d11c383b..d4a0cd4b406d 100644 +--- a/drivers/soc/nuvoton/wpcm450-soc.c ++++ b/drivers/soc/nuvoton/wpcm450-soc.c +@@ -6,6 +6,7 @@ + */ + + #include ++#include + #include + #include + #include +diff --git a/drivers/soundwire/bus.c b/drivers/soundwire/bus.c +index f3fec15c3112..4165f8b52804 100644 +--- a/drivers/soundwire/bus.c ++++ b/drivers/soundwire/bus.c +@@ -3,6 +3,7 @@ + + #include + #include ++#include + #include + #include + #include +diff --git a/drivers/soundwire/intel_auxdevice.c b/drivers/soundwire/intel_auxdevice.c +index 93698532deac..724e9ed2f537 100644 +--- a/drivers/soundwire/intel_auxdevice.c ++++ b/drivers/soundwire/intel_auxdevice.c +@@ -9,6 +9,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/drivers/spi/spi-stm32.c b/drivers/spi/spi-stm32.c +index e61302ef3c21..aeb009a79ba6 100644 +--- a/drivers/spi/spi-stm32.c ++++ b/drivers/spi/spi-stm32.c +@@ -17,6 +17,7 @@ + #include + #include + #include ++#include + #include + #include + +diff --git a/drivers/staging/fbtft/fb_ssd1351.c b/drivers/staging/fbtft/fb_ssd1351.c +index b8d55aa8c5c7..ca4145ee1f67 100644 +--- a/drivers/staging/fbtft/fb_ssd1351.c ++++ b/drivers/staging/fbtft/fb_ssd1351.c +@@ -1,4 +1,5 @@ + // SPDX-License-Identifier: GPL-2.0 ++#include + #include + #include + #include +diff --git a/drivers/target/target_core_fabric_configfs.c b/drivers/target/target_core_fabric_configfs.c +index 7156a4dc1ca7..2d208da07163 100644 +--- a/drivers/target/target_core_fabric_configfs.c ++++ b/drivers/target/target_core_fabric_configfs.c +@@ -24,6 +24,7 @@ + #include + #include + #include ++#include + #include + + #include +diff --git a/drivers/target/target_core_file.c b/drivers/target/target_core_file.c +index 4d447520bab8..a907e646f45c 100644 +--- a/drivers/target/target_core_file.c ++++ b/drivers/target/target_core_file.c +@@ -14,6 +14,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/drivers/thermal/devfreq_cooling.c b/drivers/thermal/devfreq_cooling.c +index 262e62ab6cf2..6593679a7304 100644 +--- a/drivers/thermal/devfreq_cooling.c ++++ b/drivers/thermal/devfreq_cooling.c +@@ -10,6 +10,7 @@ + * registered, the devfreq cooling won't react to it. + */ + ++#include + #include + #include + #include +diff --git a/drivers/thermal/intel/intel_powerclamp.c b/drivers/thermal/intel/intel_powerclamp.c +index bc6eb0dd66a4..9266874463b4 100644 +--- a/drivers/thermal/intel/intel_powerclamp.c ++++ b/drivers/thermal/intel/intel_powerclamp.c +@@ -31,6 +31,7 @@ + #include + #include + #include ++#include + #include + + #include +diff --git a/drivers/thermal/intel/therm_throt.c b/drivers/thermal/intel/therm_throt.c +index e69868e868eb..62e13a1b2dea 100644 +--- a/drivers/thermal/intel/therm_throt.c ++++ b/drivers/thermal/intel/therm_throt.c +@@ -14,6 +14,7 @@ + * Credits: Adapted from Zwane Mwaikambo's original code in mce_intel.c. + * Inspired by Ross Biro's and Al Borchers' counter code. + */ ++#include + #include + #include + #include +diff --git a/drivers/tty/rpmsg_tty.c b/drivers/tty/rpmsg_tty.c +index 60a2915f5cfe..8a936c72ecd6 100644 +--- a/drivers/tty/rpmsg_tty.c ++++ b/drivers/tty/rpmsg_tty.c +@@ -12,6 +12,7 @@ + + #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt + ++#include + #include + #include + #include +diff --git a/drivers/tty/serial/8250/8250_bcm7271.c b/drivers/tty/serial/8250/8250_bcm7271.c +index 504c4c020857..f4af9373ff05 100644 +--- a/drivers/tty/serial/8250/8250_bcm7271.c ++++ b/drivers/tty/serial/8250/8250_bcm7271.c +@@ -22,6 +22,7 @@ + #include + #include + #include ++#include + + #include "8250.h" + +diff --git a/drivers/tty/serial/8250/8250_port.c b/drivers/tty/serial/8250/8250_port.c +index c37905ea3cae..16c483d4ecf1 100644 +--- a/drivers/tty/serial/8250/8250_port.c ++++ b/drivers/tty/serial/8250/8250_port.c +@@ -32,6 +32,7 @@ + #include + #include + #include ++#include + + #include + #include +diff --git a/drivers/tty/serial/imx.c b/drivers/tty/serial/imx.c +index 4aa72d5aeafb..87100d28fc92 100644 +--- a/drivers/tty/serial/imx.c ++++ b/drivers/tty/serial/imx.c +@@ -27,6 +27,7 @@ + #include + #include + #include ++#include + + #include + #include +diff --git a/drivers/tty/serial/serial_base.h b/drivers/tty/serial/serial_base.h +index c74c548f0db6..27c260e08205 100644 +--- a/drivers/tty/serial/serial_base.h ++++ b/drivers/tty/serial/serial_base.h +@@ -6,6 +6,8 @@ + * Author: Tony Lindgren + */ + ++#include ++ + #define to_serial_base_ctrl_device(d) container_of((d), struct serial_ctrl_device, dev) + #define to_serial_base_port_device(d) container_of((d), struct serial_port_device, dev) + +diff --git a/drivers/tty/serial/sh-sci.c b/drivers/tty/serial/sh-sci.c +index a85e7b9a2e49..1398cef67446 100644 +--- a/drivers/tty/serial/sh-sci.c ++++ b/drivers/tty/serial/sh-sci.c +@@ -48,6 +48,7 @@ + #include + #include + #include ++#include + + #ifdef CONFIG_SUPERH + #include +diff --git a/drivers/tty/serial/xilinx_uartps.c b/drivers/tty/serial/xilinx_uartps.c +index 5f48ec37cb25..1f07145e5a68 100644 +--- a/drivers/tty/serial/xilinx_uartps.c ++++ b/drivers/tty/serial/xilinx_uartps.c +@@ -25,6 +25,7 @@ + #include + #include + #include ++#include + + #define CDNS_UART_TTY_NAME "ttyPS" + #define CDNS_UART_NAME "xuartps" +diff --git a/drivers/usb/chipidea/otg_fsm.c b/drivers/usb/chipidea/otg_fsm.c +index c17516c29b63..522a5f3c0eb9 100644 +--- a/drivers/usb/chipidea/otg_fsm.c ++++ b/drivers/usb/chipidea/otg_fsm.c +@@ -21,6 +21,7 @@ + #include + #include + #include ++#include + + #include "ci.h" + #include "bits.h" +diff --git a/drivers/usb/dwc2/hcd_queue.c b/drivers/usb/dwc2/hcd_queue.c +index 0d4495c6b9f7..e539dcce7b55 100644 +--- a/drivers/usb/dwc2/hcd_queue.c ++++ b/drivers/usb/dwc2/hcd_queue.c +@@ -18,6 +18,7 @@ + #include + #include + #include ++#include + + #include + #include +diff --git a/drivers/usb/gadget/function/f_ncm.c b/drivers/usb/gadget/function/f_ncm.c +index ca5d5f564998..96a5084a0a4f 100644 +--- a/drivers/usb/gadget/function/f_ncm.c ++++ b/drivers/usb/gadget/function/f_ncm.c +@@ -17,6 +17,7 @@ + #include + #include + #include ++#include + + #include + +diff --git a/drivers/usb/gadget/udc/max3420_udc.c b/drivers/usb/gadget/udc/max3420_udc.c +index 89e8cf2a2a7d..f92b914a5c04 100644 +--- a/drivers/usb/gadget/udc/max3420_udc.c ++++ b/drivers/usb/gadget/udc/max3420_udc.c +@@ -26,6 +26,7 @@ + #include + #include + #include ++#include + + #define MAX3420_MAX_EPS 4 + #define MAX3420_EP_MAX_PACKET 64 /* Same for all Endpoints */ +diff --git a/drivers/usb/typec/class.h b/drivers/usb/typec/class.h +index 759b98355eeb..f57abf701dc5 100644 +--- a/drivers/usb/typec/class.h ++++ b/drivers/usb/typec/class.h +@@ -4,6 +4,7 @@ + #define __USB_TYPEC_CLASS__ + + #include ++#include + #include + + struct typec_mux; +diff --git a/drivers/usb/typec/pd.c b/drivers/usb/typec/pd.c +index b9cca2be76fc..aa73642e104c 100644 +--- a/drivers/usb/typec/pd.c ++++ b/drivers/usb/typec/pd.c +@@ -6,6 +6,7 @@ + * Author: Heikki Krogerus + */ + ++#include + #include + #include + +diff --git a/drivers/vfio/group.c b/drivers/vfio/group.c +index 610a429c6191..2fc062fc13c7 100644 +--- a/drivers/vfio/group.c ++++ b/drivers/vfio/group.c +@@ -11,6 +11,7 @@ + */ + + #include ++#include + #include + #include + #include "vfio.h" +diff --git a/drivers/video/fbdev/omap2/omapfb/dss/dsi.c b/drivers/video/fbdev/omap2/omapfb/dss/dsi.c +index b7eb17a16ec4..c20a184acb1a 100644 +--- a/drivers/video/fbdev/omap2/omapfb/dss/dsi.c ++++ b/drivers/video/fbdev/omap2/omapfb/dss/dsi.c +@@ -30,6 +30,7 @@ + #include + #include + #include ++#include + + #include