Linux で ARM コンピュータのすべてのコンポーネントを一覧表示しますか?

Linux で ARM コンピュータのすべてのコンポーネントを一覧表示しますか?

ARM ベースのコンピューターを持っていますが、Ubuntu Linux (非 GUI) を実行しても問題なく動作するようです。このコンピューターに搭載されているすべてのコンポーネントのリストを取得するにはどうすればよいでしょうか。可能であれば、イーサネット チップ、Wi-Fi チップ、Bluetooth、CPU、電源管理チップなどのタイプも教えてください。

答え1

ARM 実装のバリエーションは多すぎて、標準ツールではカバーできません。

掘り下げていく/sys/classとすべてのコンポーネントが見つかりますが、そうするのは面倒です。find /sys/class -name nameシンボリック リンクがあるため、すべてのコンポーネントを見つけるために を使用することはできません。円形リンクのため、 を使用することもできませんfind -L

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

デバイスの印象は得られますが、実際にロードされたドライバーを持つデバイスを本当に知りたい場合は、 を手動で読み取る必要がありますdmesg

答え2

IoT デバイスのハードウェアを一覧表示する場合、通常、 の後に最も役立つコマンドはとdmesgです。cat /proc/cpuinfolsusb

ほとんどの IoT ブランドでは、lsusbたとえば sinovoip (banana) が多くのハードウェアを USB コントローラーに接続する傾向があるなど、それ自体が有用であることがわかります。

すべてのコンポーネントをリストすることは不可能です。GPIO または i2c 標準を介して接続されたコンポーネントをリストする信頼できる方法はありません。

ラズベリーの例を参照してください:

cat /proc/cpuinfo、すべてのコア/スレッド(ここでは4つ)をリストするほか、最後にチップセットのモデル、リビジョン、いくつかの掲示板では、シリアル番号です。(最後までスライドしないと表示されません)

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

そして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.

答え3

ARM アーキテクチャには PCI バスがありません。AMBA バスを使用します。

アンバ

ARM ブロック図

Dmesg は必要なほとんどの情報を提供します。

答え4

このlshwコマンドは、コンピューターのコンポーネントのかなり完全なリストを表示します。

Ubuntu では を使って入手できますapt-get install lshw

関連情報