[Topic DIscussion] linux 内核编译 (如何正确选择内核驱动)感觉不错转到论坛
Tofloor
poster avatar
jiutian123
deepin
2022-03-22 23:13
Author

image.png

一、首先须要了解 Linux 主机的硬件配备
经过 lspci 命令找到的是目前主机上面的硬件配备。(lspci 命令详解以下)

[root@www ~]# lspci [-vvn]
选项与参数:
-v :显示更多的 PCI 接口装置的详细信息
-vv :比 -v 还要更详细的信息
-n :直接观察 PCI 的 ID 而不是厂商名称

查阅您系统内的 PCI 装置:
[root@www ~]# lspci
#没必要加上任何选项,就可以显示出目前的硬件配备为什么
Host bridge: <==主板芯片
VGA compatible controller <==显卡
Audio device <==音频设备
PCI bridge <==接口插槽
USB Controller <==USB控制器
ISA bridge
IDE interface
SMBus
Ethernet controller <==网卡

04:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd.

查看通常详细信息
[root@www ~]# lspci -v

下面是网卡信息,红色标注的地方就是本机须要的网卡驱动:接口

03:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 0c)
Subsystem: ASUSTeK Computer Inc. Device 8554
Flags: bus master, fast devsel, latency 0, IRQ 27
I/O ports at d000 [size=256]
Memory at f7100000 (64-bit, non-prefetchable) [size=4K]
Memory at f2100000 (64-bit, prefetchable) [size=16K]
Capabilities:
Kernel driver in use: r8169

二、 编译内核驱动选项:

使用 make menuconfig 进入到图形化的编译界面。

使用 / 命令 找到相应的驱动选项位置,而后到相应的位置去勾选便可。

Reply Favorite View the author
All Replies
jiutian123
deepin
2022-03-22 23:28
#1

nsz@nsz:~/迅雷下载/linux-5.17/linux-5.17$ lspci -v
00:00.0 Host bridge: Intel Corporation Xeon E3-1200 v5/E3-1500 v5/6th Gen Core Processor Host Bridge/DRAM Registers (rev 07)
Subsystem: CLEVO/KAPOK Computer Xeon E3-1200 v5/E3-1500 v5/6th Gen Core Processor Host Bridge/DRAM Registers
Flags: bus master, fast devsel, latency 0
Capabilities:
Kernel driver in use: skl_uncore

00:01.0 PCI bridge: Intel Corporation 6th-10th Gen Core Processor PCIe Controller (x16) (rev 07) (prog-if 00 [Normal decode])
Flags: bus master, fast devsel, latency 0, IRQ 122
Bus: primary=00, secondary=01, subordinate=01, sec-latency=0
I/O behind bridge: 0000e000-0000efff
Memory behind bridge: de000000-df0fffff
Prefetchable memory behind bridge: 00000000c0000000-00000000d1ffffff
Capabilities:
Kernel driver in use: pcieport

00:02.0 VGA compatible controller: Intel Corporation HD Graphics 530 (rev 06) (prog-if 00 [VGA controller])
Subsystem: CLEVO/KAPOK Computer HD Graphics 530
Flags: bus master, fast devsel, latency 0, IRQ 128
Memory at dd000000 (64-bit, non-prefetchable) [size=16M]
Memory at a0000000 (64-bit, prefetchable) [size=512M]
I/O ports at f000 [size=64]
[virtual] Expansion ROM at 000c0000 [disabled] [size=128K]
Capabilities:
Kernel driver in use: i915
Kernel modules: i915

00:14.0 USB controller: Intel Corporation 100 Series/C230 Series Chipset Family USB 3.0 xHCI Controller (rev 31) (prog-if 30 [XHCI])
Subsystem: CLEVO/KAPOK Computer 100 Series/C230 Series Chipset Family USB 3.0 xHCI Controller
Flags: bus master, medium devsel, latency 0, IRQ 126
Memory at df210000 (64-bit, non-prefetchable) [size=64K]
Capabilities:
Kernel driver in use: xhci_hcd
Kernel modules: xhci_pci

00:14.2 Signal processing controller: Intel Corporation 100 Series/C230 Series Chipset Family Thermal Subsystem (rev 31)
Subsystem: CLEVO/KAPOK Computer 100 Series/C230 Series Chipset Family Thermal Subsystem
Flags: bus master, fast devsel, latency 0, IRQ 18
Memory at df22e000 (64-bit, non-prefetchable) [size=4K]
Capabilities:
Kernel driver in use: intel_pch_thermal
Kernel modules: intel_pch_thermal

00:16.0 Communication controller: Intel Corporation 100 Series/C230 Series Chipset Family MEI Controller #1 (rev 31)
Subsystem: CLEVO/KAPOK Computer 100 Series/C230 Series Chipset Family MEI Controller
Flags: bus master, fast devsel, latency 0, IRQ 129
Memory at df22d000 (64-bit, non-prefetchable) [size=4K]
Capabilities:
Kernel driver in use: mei_me
Kernel modules: mei_me

00:17.0 SATA controller: Intel Corporation HM170/QM170 Chipset SATA Controller [AHCI Mode] (rev 31) (prog-if 01 [AHCI 1.0])
Subsystem: CLEVO/KAPOK Computer HM170/QM170 Chipset SATA Controller [AHCI Mode]
Flags: bus master, 66MHz, medium devsel, latency 0, IRQ 125
Memory at df228000 (32-bit, non-prefetchable) [size=8K]
Memory at df22c000 (32-bit, non-prefetchable) [size=256]
I/O ports at f090 [size=8]
I/O ports at f080 [size=4]
I/O ports at f060 [size=32]
Memory at df22b000 (32-bit, non-prefetchable) [size=2K]
Capabilities:
Kernel driver in use: ahci
Kernel modules: ahci

00:1c.0 PCI bridge: Intel Corporation 100 Series/C230 Series Chipset Family PCI Express Root Port #5 (rev f1) (prog-if 00 [Normal decode])
Flags: bus master, fast devsel, latency 0, IRQ 123
Bus: primary=00, secondary=02, subordinate=02, sec-latency=0
Capabilities:
Kernel driver in use: pcieport

00:1c.5 PCI bridge: Intel Corporation 100 Series/C230 Series Chipset Family PCI Express Root Port #6 (rev f1) (prog-if 00 [Normal decode])
Flags: bus master, fast devsel, latency 0, IRQ 124
Bus: primary=00, secondary=03, subordinate=03, sec-latency=0
Memory behind bridge: df100000-df1fffff
Capabilities:
Kernel driver in use: pcieport

00:1f.0 ISA bridge: Intel Corporation HM170 Chipset LPC/eSPI Controller (rev 31)
Subsystem: CLEVO/KAPOK Computer HM170 Chipset LPC/eSPI Controller
Flags: bus master, medium devsel, latency 0

00:1f.2 Memory controller: Intel Corporation 100 Series/C230 Series Chipset Family Power Management Controller (rev 31)
Subsystem: CLEVO/KAPOK Computer 100 Series/C230 Series Chipset Family Power Management Controller
Flags: bus master, fast devsel, latency 0
Memory at df224000 (32-bit, non-prefetchable) [size=16K]

00:1f.3 Audio device: Intel Corporation 100 Series/C230 Series Chipset Family HD Audio Controller (rev 31)
Subsystem: CLEVO/KAPOK Computer 100 Series/C230 Series Chipset Family HD Audio Controller
Flags: bus master, fast devsel, latency 32, IRQ 131
Memory at df220000 (64-bit, non-prefetchable) [size=16K]
Memory at df200000 (64-bit, non-prefetchable) [size=64K]
Capabilities:
Kernel driver in use: snd_hda_intel
Kernel modules: snd_hda_intel

00:1f.4 SMBus: Intel Corporation 100 Series/C230 Series Chipset Family SMBus (rev 31)
Subsystem: CLEVO/KAPOK Computer 100 Series/C230 Series Chipset Family SMBus
Flags: medium devsel, IRQ 16
Memory at df22a000 (64-bit, non-prefetchable) [size=256]
I/O ports at f040 [size=32]
Kernel driver in use: i801_smbus
Kernel modules: i2c_i801

01:00.0 VGA compatible controller: NVIDIA Corporation GM204M [GeForce GTX 970M] (rev a1) (prog-if 00 [VGA controller])
Subsystem: CLEVO/KAPOK Computer GM204M [GeForce GTX 970M]
Flags: bus master, fast devsel, latency 0, IRQ 127
Memory at de000000 (32-bit, non-prefetchable) [size=16M]
Memory at c0000000 (64-bit, prefetchable) [size=256M]
Memory at d0000000 (64-bit, prefetchable) [size=32M]
I/O ports at e000 [size=128]
Expansion ROM at df000000 [disabled] [size=512K]
Capabilities:
Kernel driver in use: nouveau
Kernel modules: nvidiafb, nouveau

01:00.1 Audio device: NVIDIA Corporation GM204 High Definition Audio Controller (rev a1)
Subsystem: NVIDIA Corporation GM204 High Definition Audio Controller
Flags: bus master, fast devsel, latency 0, IRQ 17
Memory at df080000 (32-bit, non-prefetchable) [size=16K]
Capabilities:
Kernel driver in use: snd_hda_intel
Kernel modules: snd_hda_intel

03:00.0 Network controller: Intel Corporation Wireless 3165 (rev 81)
Subsystem: Intel Corporation Dual Band Wireless AC 3165
Flags: bus master, fast devsel, latency 0, IRQ 130
Memory at df100000 (64-bit, non-prefetchable) [size=8K]
Capabilities:
Kernel driver in use: iwlwifi
Kernel modules: iwlwifi, wl

Reply View the author
q77190858
deepin
2022-03-22 23:39
#2

收藏了

Reply View the author
Comments
jiutian123
2022-03-23 00:42
在正式编译前须要安装部分软件。 sudo apt update && sudo apt upgrade sudo apt-get install git fakeroot build-essential ncurses-dev xz-utils libssl-dev bc flex libelf-dev bison
jjcui8595
deepin
2022-03-22 23:51
#3

感谢分享,支持一下

Reply View the author
老咸鱼
deepin
2022-03-23 00:38
#4

小白表示,这是天书

Reply View the author
魔法师
deepin
2022-03-23 02:42
#5

不错,确实是网卡驱动
image.png

Reply View the author