如何在 Linux 中使用终端查找硬件/芯片组名称

如何在 Linux 中使用终端查找硬件/芯片组名称

如何可靠地确定机器的芯片组?我尝试在装有 Linux Mint 的旧 Asus K50IJ 上使用 lspcihwinfolshw和 dmidecode命令,但输出没有提供有关北桥的足够精确的信息。我在华硕网站上发现其芯片组是 Intel® Mobile GL40 Express +ICH9M,但如果可能的话,我希望能够仅使用终端找到该芯片组。上面的命令返回很多信息,但不是我正在寻找的信息。例如,一行输出lspci是:

Host bridge: Intel corporation Mobile 4 Series Chipset Memory Controller Hub (rev09)

但我的输出期望是:

Intel® Mobile GL40 Express Chipset +ICH9M

的输出lspci将芯片组范围缩小到此列表,但仍有很多可供选择: https://ark.intel.com/content/www/us/en/ark/products/series/34468/intel-4-series-chipsets.html

由于有关 SATA 控制器的输出,我可以识别南桥:

  PCI 1f.2: 0106 SATA controller (AHCI 1.0)
  [Created at pci.378]
  Unique ID: w7Y8.1UWGXuPHmx0
  SysFS ID: /devices/pci0000:00/0000:00:1f.2
  SysFS BusID: 0000:00:1f.2
  Hardware Class: storage
  Model: "Intel 82801IBM/IEM (ICH9M/ICH9M-E) 4 port SATA Controller [AHCI mode]
  Vendor: pci 0x8086 "Intel Corporation"

这样,我就可以检查与 GL40 北桥配对的 Intel 芯片组列表。但对于一条简单的信息来说,感觉需要做很多工作,特别是因为在我的其他机器上, lspci输出了精确的芯片组型号名称。

(回复评论)完整输出lspci -nn -d 8086

00:00.0 Host bridge [0600]: Intel Corporation Mobile 4 Series Chipset Memory Controller Hub [8086:2a40] (rev 09)
00:02.0 VGA compatible controller [0300]: Intel Corporation Mobile 4 Series Chipset Integrated Graphics Controller [8086:2a42] (rev 09)
00:02.1 Display controller [0380]: Intel Corporation Mobile 4 Series Chipset Integrated Graphics Controller [8086:2a43] (rev 09)
00:1a.0 USB controller [0c03]: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #4 [8086:2937] (rev 03)
00:1a.1 USB controller [0c03]: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #5 [8086:2938] (rev 03)
00:1a.2 USB controller [0c03]: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #6 [8086:2939] (rev 03)
00:1a.7 USB controller [0c03]: Intel Corporation 82801I (ICH9 Family) USB2 EHCI Controller #2 [8086:293c] (rev 03)
00:1b.0 Audio device [0403]: Intel Corporation 82801I (ICH9 Family) HD Audio Controller [8086:293e] (rev 03)
00:1c.0 PCI bridge [0604]: Intel Corporation 82801I (ICH9 Family) PCI Express Port 1 [8086:2940] (rev 03)
00:1c.1 PCI bridge [0604]: Intel Corporation 82801I (ICH9 Family) PCI Express Port 2 [8086:2942] (rev 03)
00:1c.5 PCI bridge [0604]: Intel Corporation 82801I (ICH9 Family) PCI Express Port 6 [8086:294a] (rev 03)
00:1d.0 USB controller [0c03]: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #1 [8086:2934] (rev 03)
00:1d.1 USB controller [0c03]: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #2 [8086:2935] (rev 03)
00:1d.2 USB controller [0c03]: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #3 [8086:2936] (rev 03)
00:1d.7 USB controller [0c03]: Intel Corporation 82801I (ICH9 Family) USB2 EHCI Controller #1 [8086:293a] (rev 03)
00:1e.0 PCI bridge [0604]: Intel Corporation 82801 Mobile PCI Bridge [8086:2448] (rev 93)
00:1f.0 ISA bridge [0601]: Intel Corporation ICH9M LPC Interface Controller [8086:2919] (rev 03)
00:1f.2 SATA controller [0106]: Intel Corporation 82801IBM/IEM (ICH9M/ICH9M-E) 4 port SATA Controller [AHCI mode] [8086:2929] (rev 03)

输出cat /proc/cpuinfo

processor       : 0
vendor_id       : GenuineIntel
cpu family      : 6
model           : 23
model name      : Pentium(R) Dual-Core CPU       T4300  @ 2.10GHz
stepping        : 10
microcode       : 0xa0b
cpu MHz         : 1196.901
cache size      : 1024 KB
physical id     : 0
siblings        : 2
core id         : 0
cpu cores       : 2
apicid          : 0
initial apicid  : 0
fpu             : yes
fpu_exception   : yes
cpuid level     : 13
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx lm constant_tsc arch_perfmon pebs bts rep_good nopl cpuid aperfmperf pni dtes64 monitor ds_cpl est tm2 ssse3 cx16 xtpr pdcm xsave lahf_lm pti dtherm
bugs            : cpu_meltdown spectre_v1 spectre_v2 spec_store_bypass l1tf mds swapgs itlb_multihit
bogomips        : 4189.09
clflush size    : 64
cache_alignment : 64
address sizes   : 36 bits physical, 48 bits virtual
power management:

processor       : 1
vendor_id       : GenuineIntel
cpu family      : 6
model           : 23
model name      : Pentium(R) Dual-Core CPU       T4300  @ 2.10GHz
stepping        : 10
microcode       : 0xa0b
cpu MHz         : 1196.897
cache size      : 1024 KB
physical id     : 0
siblings        : 2
core id         : 1
cpu cores       : 2
apicid          : 1
initial apicid  : 1
fpu             : yes
fpu_exception   : yes
cpuid level     : 13
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx lm constant_tsc arch_perfmon pebs bts rep_good nopl cpuid aperfmperf pni dtes64 monitor ds_cpl est tm2 ssse3 cx16 xtpr pdcm xsave lahf_lm pti dtherm
bugs            : cpu_meltdown spectre_v1 spectre_v2 spec_store_bypass l1tf mds swapgs itlb_multihit
bogomips        : 4189.09
clflush size    : 64
cache_alignment : 64
address sizes   : 36 bits physical, 48 bits virtual
power management:

编辑,输出sudo lspci -vv -d 8086:2a40

00:00.0 Host bridge: Intel Corporation Mobile 4 Series Chipset Memory Controller Hub (rev 09)
        Subsystem: ASUSTeK Computer Inc. Mobile 4 Series Chipset Memory Controller Hub
        Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
        Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort+ >SERR- <PERR- INTx-
        Latency: 0
        Capabilities: [e0] Vendor Specific Information: Len=0a <?>

我不知道在哪里查看输出lspci -xxx -d 8086:2a40

00:00.0 Host bridge: Intel Corporation Mobile 4 Series Chipset Memory Controller Hub (rev 09)
00: 86 80 40 2a 06 00 90 20 09 00 00 06 00 00 00 00
10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
20: 00 00 00 00 00 00 00 00 00 00 00 00 43 10 67 18
30: 00 00 00 00 e0 00 00 00 00 00 00 00 00 00 00 00
40: 01 90 d1 fe 00 00 00 00 01 00 d1 fe 00 00 00 00
50: 00 00 50 03 19 00 00 00 00 00 00 00 00 00 00 00
60: 01 00 00 e0 00 00 00 00 01 80 d1 fe 00 00 00 00
70: 00 00 00 00 00 00 00 00 01 08 00 00 00 00 00 00
80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
90: 10 11 11 00 00 33 33 00 40 00 4f 00 00 1a 38 00
a0: 20 00 00 14 00 00 00 00 00 00 00 00 00 00 00 00
b0: 00 c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00
c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
d0: 00 00 00 00 00 00 00 00 00 00 00 00 70 02 00 00
e0: 09 00 0a 61 b1 6d 51 1f b9 e1 00 00 00 00 00 00
f0: 00 00 00 00 00 00 00 00 a0 0f 09 00 00 00 00 00

答案1

您的特定芯片组的 PCI id 由该系列中的四个变体共享,区分它们需要查看 PCI 配置寄存器中的功能标识符。第 19.1.36 条数据表有详细信息;相关信息存储在配置寄存器中的偏移量 0xE5 处,该偏移量处的位 2 到 4 将告诉您您拥有哪种变体:

  • 111=PM45
  • 001 = GM45
  • 011 = GL40
  • 100 = GS45

您应该能够看到这一点lspci -xxx -d 8086:2a40。但我怀疑您是否会找到一个实用程序,可以使用此信息为您提供芯片组的名称。

在您的情况下,输出中的相关行lspci -xxx

e0: 09 00 0a 61 b1 6d 51 1f b9 e1 00 00 00 00 00 00

这需要倒着读; 80 个功能位是 0xE1B91F516DB1610A0009。位 44:42 是 011(该行中的第六个值是 0x6D、0b01101101,其中的位 4:2 是 011)。

答案2

neofetch如果您安装了大多数 Linux 存储库(对于 Mint)中可用的命令“ ”,sudo apt install neofetch则该命令的输出将包括 CPU 芯片组信息。

相关内容