Поиск информации об оборудовании в linux без lspci

у меня есть устройство ARM под управлением ArchLinux. Устройство, похоже, не имеет шины PCI, даже если у него есть USB.

[root@alarm ~]# lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 002: ID 05e3:0608 Genesys Logic, Inc. USB-2.0 4-Port HUB
[root@alarm ~]# lspci
pcilib: Cannot open /proc/bus/pci
lspci: Cannot find any working access method.
[root@alarm ~]# 

Я хочу найти то, что другие чипсеты. Например, я знаю, что есть звуковая карта и видеокарта, способная HDMI. Такой чип не ставится на USB-линия.

Я посмотрел конфигурацию ядра, которая в настоящее время работает на устройстве в /proc/config.ГЗ, в нем перечислены следующим образом:

#
# Bus support
#
CONFIG_ARM_AMBA=y
# CONFIG_PCI_SYSCALL is not set
# CONFIG_ARCH_SUPPORTS_MSI is not set
# CONFIG_PCCARD is not set

Я не знаю, что такое Амба. Один тщательный поиск google возвращает эту запись в базе данных ядра, но без фактического объяснения, кроме как не использовать его, если вы не знаете, что делаете.

использование lshw также не показывает больше:

[root@alarm ~]# lshw
alarm                     
    description: Computer
    width: 32 bits
  *-core
       description: Motherboard
       physical id: 0
     *-memory
          description: System memory
          physical id: 0
          size: 307MiB
     *-cpu
          physical id: 1
          bus info: cpu@0
          size: 1008MHz
          capacity: 1008MHz
          capabilities: cpufreq
  *-network
       description: Ethernet interface
       physical id: 1
       logical name: eth0
       serial: 00:01:02:03:04:05
       size: 10Mbit/s
       capacity: 100Mbit/s
       capabilities: ethernet physical tp mii 10bt 10bt-fd 100bt 100bt-fd autonegotiation
       configuration: autonegotiation=off broadcast=yes driver=wemac driverversion=1.01 duplex=half ip=192.168.1.1 link=yes multicast=yes port=MII speed=10Mbit/s
[root@alarm ~]# 

в этом ядре нет загруженных модулей:

[root@alarm ~]# lsmod
Module                  Size  Used by
[root@alarm ~]# 

кроме того, hwinfo, кажется, не доступен:

[root@alarm ~]# pacman -Syu
:: Synchronizing package databases...
 core is up to date
 extra is up to date
 community is up to date
 alarm is up to date
 aur is up to date
:: Starting full system upgrade...
 there is nothing to do
[root@alarm ~]# pacman -S hwinfo
error: target not found: hwinfo
[root@alarm ~]# hwinfo
-bash: hwinfo: command not found
[root@alarm ~]# 

мне нужно знать, какие чипы используются в этой системе, чтобы я мог скомпилировать в правильном видео модули драйверов, Как узнать, что это такое в системе без работающего lspci?

5
задан tudor
источник

3 ответов

вот мой официальный ответ после вашего ответа на мои комментарии. Я мог бы ошибаться в некоторых из них и приветствовать исправления.

Я не уверен, когда Intel начала включать PCIe (который является программно-совместимым расширением PCI) в свои процессоры. Тем не менее, это не было так в течение большей части времени x86. PCI действительно является частью всей "платформы ПК", которая включает в себя ряд других вещей, которые являются стандартными и ожидаемыми, такими как standard ISA порты / адрес ввода / вывода / IRQ для устройств и тому подобное.

откат немного до того, как PCI был вокруг-в основном, за исключением неудачной попытки ввести стандарт PnP с ISAPNP, вы на самом деле не "зондировали" некоторые устройства. Обычно вам нужно будет предположить, что они существовали заранее. Вы могли бы, конечно, тестовые регистры и то, что не видеть, если вещи реагируют так, как ожидалось,но вы тогда попасть в беду, если другое устройство там, возможно, в результате зависает, и т.д. Там на самом деле не способ "сканирования" шины ISA. Или действительно любая другая шина, которая не поддерживает концепции PnP стандартизированным способом.

одна из вещей, ACPI должен был решить, чтобы обеспечить некоторые таблицы информации, которые сказали вам, что ISA устройства были встроены. Еще до ACPI с BIOS консультировались бы, чтобы решить, сколько дисководов гибких дисков было в системе. Вот почему на старых системах, даже если у вас нет подключенной дискеты, вы увидите диск A: в Windows, Если у вас есть BIOS установить, чтобы сказать, что есть один.

Так вы можете спросить как самомоднейшие OS определяют или взаимодействуют с набором микросхем PCI. Большую часть времени чипсет появляется как устройство на самой шине PCI. Регистры интерфейса PCI "pre-exist" на известных стандартных положениях в платформе ПК. Программная развертка через все шлицы прибора и функции в космосе PCI возможна здесь. Для Иса ничего подобного не существует. Если прибор на шине с ISA, то регистры отвечают нагружанный / сохраненный к, и на этом все. Ты не можешь разговаривать с самим автобусом.

кстати, чипсет PCI может даже иметь возможность управлять мостом" PCI-ISA " и привнести некоторые функции PnP в шину ISA (или теперь LPC). Хотя, Айза говорит, что ты сам по себе.

нет такой стандартной платформы для ARM. не сейчас, во всяком случае. Есть много уникальных платформ, на которых работают процессоры ARM. Шины PCI, I2C и SDIO (и, возможно, больше я не знаю) есть общность между некоторыми из них, но опять же, есть ARM платформы, которые не имеют ни одного из них. ACPI не реализован на ARM AFAIK, за исключением Microsoft Surface RT. без работы со стандартизированной шиной, которая поддерживает некоторое понятие PnP, на самом деле нет никакого способа "зондировать" что-либо. Вам нужно иметь предвидение за пределами системы оборудования, которое должно быть там. U-Boot - это широко используемый загрузчик ARM, который требует поддержки и должен быть построен для конкретной платформы он предназначен для работы. Это что-то вроде стандарта, но даже тогда он обычно строится на платформе из моего понимания.

некоторые краткие Google показывает, что это устройство имеет "Мали 400" видео чипсет. Дальнейший поиск приносит Мали драйвер GPU исходный код сайт. Я немного заржавел, но я посмотрел на него. Кажется, что вы должны делать, когда вы строите драйвер, сообщите ему адреса, которые он должен ударить, чтобы поговорите с GPU. Я действительно не погрузился в источник слишком глубоко, но меня бы не удивило, если бы он не разговаривал с автобусом, а просто загружал / сохранял из памяти напрямую.

поэтому я не думаю, что есть общий ответ для всех платформ ARM, к сожалению.

9
отвечен LawrenceC 2013-05-02 23:58:43
источник

Вы можете попробовать hwinfo. Это в архивном хранилище.

$ hwinfo --gfxcard
08: PCI 02.0: 0300 VGA compatible controller (VGA)              
[Created at pci.318]
Unique ID: _Znp.jjHn_gm8Jz5
SysFS ID: /devices/pci0000:00/0000:00:02.0
SysFS BusID: 0000:00:02.0
Hardware Class: graphics card
Model: "Intel VGA compatible controller"
Vendor: pci 0x8086 "Intel Corporation"
Device: pci 0x0162 
SubVendor: pci 0x1849 "ASRock Incorporation"
SubDevice: pci 0x0162 
Revision: 0x09
Driver: "i915"
Driver Modules: "drm"
Memory Range: 0xf7800000-0xf7bfffff (rw,non-prefetchable)
Memory Range: 0xe0000000-0xefffffff (ro,non-prefetchable)
I/O Ports: 0xf000-0xf03f (rw)
IRQ: 57 (6 events)
Module Alias: "pci:v00008086d00000162sv00001849sd00000162bc03sc00i00"
Driver Info #0:
Driver Status: i915 is active
Driver Activation Cmd: "modprobe i915"
Config Status: cfg=new, avail=yes, need=no, active=unknown

Primary display adapter: #8
1
отвечен ssmy 2013-04-25 04:22:50
источник

dmesg может предоставить некоторую информацию

и

cat /proc/devices
find /proc

lshw стоит попробовать перестроить

0
отвечен rzr 2013-10-12 10:06:22
источник

Другие вопросы arm bus drivers graphics-card linux