alle Komponenten eines ARM-Computers unter Linux auflisten?

alle Komponenten eines ARM-Computers unter Linux auflisten?

Ich habe einen ARM-basierten Computer, der mit Ubuntu Linux (ohne GUI) einwandfrei zu funktionieren scheint. Wie bekomme ich eine Liste aller Komponenten, die sich auf diesem Computer befinden? Wie etwa den Typ des Ethernet-Chips, des WLAN-Chips, Bluetooth, der CPU, des Energieverwaltungschips usw., wenn möglich.

Antwort1

Die Vielfalt der ARM-Implementierungen ist zu groß, um mit Standardtools abgedeckt zu werden.

Wenn Sie tiefer graben, /sys/classwerden Sie alle Ihre Komponenten finden, aber das ist mühsam. Sie können nicht find /sys/class -name namealle Komponenten finden, da es symbolische Links gibt. Sie können auch nicht verwenden, find -Lda es kreisförmige Links gibt.

cat /sys/class/*/*/device/*/{,*/,*/*/}name */*/device/*/name|sort -u

gibt Ihnen einen gewissen Eindruck von den Geräten, aber wenn Sie wirklich wissen möchten, welche Geräte tatsächlich Treiber geladen haben, müssen Sie Ihre manuell durchlesen dmesg.

Antwort2

dmesgZum Auflisten der Hardware in IoT-Geräten sind die Befehle nach cat /proc/cpuinfound normalerweise am nützlichsten lsusb.

Bei den meisten IoT-Marken lsusberweist es sich als nützlich, da beispielsweise Sinovoip (Banana) dazu neigt, einen Großteil der Hardware mit den USB-Controllern zu verbinden.

Das Auflisten ALLER Komponenten ist nicht möglich. Es gibt keine zuverlässigen Methoden, um Komponenten aufzulisten, die über die GPIO- oder I2C-Standards verbunden sind.

Siehe Beispiele für die Himbeere:

cat /proc/cpuinfo, neben der Auflistung aller Kerne/Threads (hier 4 Stück), listet am Ende das Chipsatzmodell, die Revision undin einigen Foren, die Seriennummer. (Sie müssen bis zum Ende scrollen, um sie zu sehen)

pi@raspberrypi:~ $ cat /proc/cpuinfo
processor   : 0
model name   : ARMv7 Processor rev 4 (v7l)
BogoMIPS   : 38.40
Features   : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm crc32 
CPU implementer   : 0x41
CPU architecture: 7
CPU variant   : 0x0
CPU part   : 0xd03
CPU revision   : 4

processor   : 1
model name   : ARMv7 Processor rev 4 (v7l)
BogoMIPS   : 38.40
Features   : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm crc32 
CPU implementer   : 0x41
CPU architecture: 7
CPU variant   : 0x0
CPU part   : 0xd03
CPU revision   : 4

processor   : 2
model name   : ARMv7 Processor rev 4 (v7l)
BogoMIPS   : 38.40
Features   : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm crc32 
CPU implementer   : 0x41
CPU architecture: 7
CPU variant   : 0x0
CPU part   : 0xd03
CPU revision   : 4

processor   : 3
model name   : ARMv7 Processor rev 4 (v7l)
BogoMIPS   : 38.40
Features   : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm crc32 
CPU implementer   : 0x41
CPU architecture: 7
CPU variant   : 0x0
CPU part   : 0xd03
CPU revision   : 4

Hardware   : BCM2709
Revision   : a02082
Serial      : 00000000xxxxxxxx

Und lsusb:

$ lsusb
Bus 001 Device 002: ID 0424:9512 Standard Microsystems Corp.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp.
Bus 001 Device 005: ID 05dc:a781 Lexar Media, Inc.

Antwort3

Die ARM-Architektur hat keinen PCI-Bus. Sie verwendet den AMBA-Bus.

AMBA

ARM-Blockdiagramm

Dmesg gibt Ihnen die meisten Informationen, die Sie benötigen.

Antwort4

Der lshwBefehl gibt eine ziemlich vollständige Auflistung der Komponenten Ihres Computers.

Sie können es auf Ubuntu mit erhalten apt-get install lshw.

verwandte Informationen