Поиск адреса памяти параллельного порта в Linux
Я пытаюсь найти базовый (память) адрес параллельного порта, который я подключил к своему ноутбуку через карту PCI Express. Бег lspci -v
показывает, что мой компьютер распознает параллельный порт и выдает порты ввода / вывода (1000 и 1008), но не адрес памяти (другие записи имеют как порты, так и места в памяти… эта карта является единственной записью без адреса памяти). Кроме того, когда я смотрю в /proc/ioports
Я получаю те же порты, которые указаны в lspci. Однако, когда я пытаюсь использовать любой из этих адресов в программе, которую я запускаю (EMC2 для управления шаговыми двигателями), он не находит параллельный порт по этому адресу.
Что было бы действительно здорово, если бы существовал аналог диспетчера устройств Windows -> Порты -> Ресурсы. Есть ли способ сделать это в Ubuntu? Существует ли стандартное расположение памяти для устройств PCI e?
Изменить: выход из lspci -v
04:00.0 Parallel controller: Oxford Semiconductor Ltd Device c110 (prog-if 02)
Subsystem: Oxford Semiconductor Ltd Device c110
Flags: bus master, fast devsel, latency 0, IRQ 18
I/O ports at 1000 [size=8]
I/O ports at 1008 [size=4]
Capabilities: [40] Power Management version 3
Capabilities: [50] Message Signalled Interrupts: Mask- 64bit+ Queue=0/0 Enable-
Capabilities: [70] Express Legacy Endpoint, MSI 00
Capabilities: [100] Device Serial Number 10-01-00-11-11-e0-30-00
Capabilities: [110] Power Budgeting <?>
Kernel driver in use: parport_pc
Kernel modules: parport_pc
И для справки, еще одна запись, которая показывает расположение в памяти:
0c:03.0 FireWire (IEEE 1394): Agere Systems FW322/323 (rev 61) (prog-if 10)
Subsystem: Agere Systems FW322/323
Flags: bus master, fast Back2Back, medium devsel, latency 248, IRQ 19
Memory at 8c000000 (32-bit, non-prefetchable) [size=4K]
Capabilities: [44] Power Management version 2
Kernel driver in use: ohci1394
Kernel modules: firewire-ohci, ohci1394
2 ответа
Пытаться cat /proc/ioports | grep parport
фильтровать вывод ioports.
Быстрый ответ: нет места в памяти для параллельного порта. Параллельным портам назначаются только порты ввода-вывода. Именно так интерфейсы параллельных портов работали на протяжении десятилетий, и никто не чувствовал необходимости создавать несовместимый интерфейс с отображением памяти, для которого потребовались бы специальные драйверы.
Теперь я должен спросить, почему вы собираетесь найти место в памяти порта? Что ты хочешь с этим делать?