Sto cercando di trovare l'indirizzo di base (memoria) di una porta parallela che ho collegato al mio portatile tramite una scheda PCI Express. L'esecuzione di lspci -v
indica che il mio computer riconosce la porta parallela e fornisce le porte I/O (1000 e 1008) ma non l'indirizzo di memoria (altre voci hanno entrambe le porte e le posizioni di memoria ... questa scheda è l'unica voce senza un indirizzo di memoria). Inoltre, quando guardo in /proc/ioports
ottengo le stesse porte fornite in lspci. Tuttavia, quando provo a utilizzare uno di questi indirizzi nel programma che sto utilizzando (EMC2 per controllare i motori passo-passo), non trova una porta parallela a quell'indirizzo.Ricerca dell'indirizzo di memoria di una porta parallela su Linux
Che cosa sarebbe veramente grande se ci fosse un analogo a Windows Device Manager -> Porte -> Risorse. C'è un modo per farlo in Ubuntu? Esiste una posizione di memoria standard per i dispositivi PCIe?
Edit: L'output di 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
E per riferimento, un'altra voce che mostra la posizione di memoria:
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
È possibile allegare l'output di 'lspci -w' sulla scheda della porta parallela? Posso dirti che non esiste una posizione di memoria standard per i dispositivi PCIe e che le porte parallele non hanno spesso aree di indirizzi di memoria. –
@adrian lspci si lamenta che -w non è un flag valido. Ho letto che 0x378, 0x278 e 0x3BC sono le tre posizioni standard per una porta parallela, ma la mia non sembra essere in nessuno di quei punti. C'è un modo per determinare l'indirizzo di memoria da un numero di porta I/O? – Sam
Accourding to EMC2 documentation http://wiki.linuxcnc.org/emcinfo.pl?TroubleShooting devi scaricare il modulo del kernel linux parport_pc perché probabilmente prende il controllo degli indirizzi delle porte parallele e il tuo software non può accedervi. Usa 'lsmod' e' rmmod' per rimuovere tutti i moduli collegati a parport (come parport_pc, parport, ppdev) e riprova. – Zuljin