Поиск адреса памяти параллельного порта в Linux - PullRequest
6 голосов
/ 12 января 2012

Я пытаюсь найти базовый (память) адрес параллельного порта, который я подключил к своему ноутбуку через карту PCI Express. Запуск lspci -v показывает, что мой компьютер распознает параллельный порт и выдает порты ввода-вывода (1000 и 1008), но не адрес памяти (другие записи имеют как порты, так и области памяти… эта карта является единственной записью без адреса памяти) , Кроме того, когда я смотрю в /proc/ioports, я получаю те же порты, что и в lspci. Однако, когда я пытаюсь использовать любой из этих адресов в программе, которую я запускаю (EMC2 для управления шаговыми двигателями), он не находит параллельный порт по этому адресу.

Что было бы действительно здорово, если бы существовал аналог диспетчера устройств Windows -> Порты -> Ресурсы. Есть ли способ сделать это в Ubuntu? Существует ли стандартное расположение памяти для устройств PCIe?

Edit: Выход из 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 ]

4 голосов
/ 02 мая 2013

Попробуйте cat /proc/ioports | grep parport отфильтровать вывод ioports.

2 голосов
/ 05 апреля 2012

Быстрый ответ: там есть нет места в памяти для параллельного порта.Параллельным портам назначаются только порты ввода-вывода.Именно так интерфейсы параллельных портов работали на протяжении десятилетий, и никто не чувствовал необходимости создавать несовместимый интерфейс с отображением памяти, для которого потребовались бы специальные драйверы.

Теперь я должен спросить, почему вы собираетесь найти портместо в памяти?Что ты хочешь с этим делать?

...