One easy way is to use lspci -k like this:
sudo lspci -k|grep modules|sort -nr|uniq
Kernel modules: snd_hda_intel
Kernel modules: shpchp
Kernel modules: pata_acpi
Kernel modules: nvidiafb, nouveau, nvidia_drm, nvidia
Kernel modules: mei_me
Kernel modules: lpc_ich
Kernel modules: isci
Kernel modules: ioatdma
Kernel modules: i2c_i801
Kernel modules: e1000e
Kernel modules: ahci
This is a great way of troubleshooting what modules your system actually needs and uses. It's also good for troubleshooting in the case that a device like a NIC or soundcard does not work. It could be that the kernel module is missing and this is an easy way of finding it.
That is the clean version but you could use the full output to understand which device each module is related to.
Let's say you wanted to load the e1000e NIC driver, you would use "modprobe e1000e". If it didn't work or was not found, then you know the issue is a missing kernel module. This either means your kernel does not support the device OR it does not have all of the kernel modules available, installed.
See this for how to install 'extra' kernel modules
reload, kernel, modules, moduels, linux, mint, debian, ubuntu, troubleshootingone, lspci, sudo, grep, nr, uniq, snd_hda_intel, shpchp, pata_acpi, nvidiafb, nouveau, nvidia_drm, nvidia, mei_me, lpc_ich, isci, ioatdma, c_i, ahci, troubleshooting, nic, soundcard, module, output, quot, modprobe, didn, installed, install,