• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

[gelöst] Pci-Parallelport-Schnittstelle von 'Delock'

Bigtux

Member
Hallo!

Ich habe mangels Parallelport auf meinem Mainboard eine PCI-Parallelportschnittstellen-Karte anschaffen müssen.
Diese ist aus dem Haus Delock und wirbt damit Linux tauglich zu sein.
Leider werde ich aus der Anleitung nicht schlau, denn schon der erste Befehl
Code:
more  /proc/pci
endet bei mir mit einer Fehlermeldung.
Kann mir jemand helfen was nicht korrekt ist?

Das hier ist die komplette Anleitung für Linux:(
Code:
Installation Guide for PCI Parallel Ports 

This installation guide describes the procedure to install the Nm9705CV, Nm9735CV, Nm9805CV, Nm9715CV, Nm9835CV, Nm9755CV PCI parallel ports in Linux platform.

Linux kernel provide a 'parport' code to support parallel port (/dev/lp0,  /dev/lp1, /dev/lp2). This code provides the ability to share one port between multiple devices. And it is loadable when kernel is running.

The 'parport' code is split into two parts : generic (which deals with port sharing) and architecture-dependent eg. X86, SPARC. (which deals with actually using the port). Thus, please take the following steps to install 'parport' module!

Check the on-board parallel port's hardware resources

Most likely each motherboard has a built-in parallel port. And its hardware resources are settable with BIOS utility.

Enter the command  more  /proc/pci

The response is similar to the following
      
			Bus 0, Device 11, function 0:
			Serial controller : Unknown vendor Unknown device (rev 01).
			Vendor id=9710, Device id=9705
					Device id=9735
					Device id=9805
					Device id=9815
					Device id=9835
					Device id=9855

			Medium devsel. Fast back-to-back capable. IRQ 11
			
			Board with Nm9705CV part
			I/O at 0xc000 [0xc001]	printer port
			       0xc008 [0xc009]	ECP/EPP config registers

			Board with Nm9735CV part
			I/O at 0xc000 [0xc001]	not used
			       0xc008 [0xc009]	not used
			       0xc010 [0xc011]	printer port
			       0xc018 [0xc019]	ECP/EPP config registers
			
			Board with Nm9805CV part
			I/O at 0xc000 [0xc001]	printer port
			I/O at 0xc400 [0xc401]	ECP/EPP config registers
			I/O at 0xc800 [0xc801]	not used
			I/O at 0xd000 [0xd001]	not used
			I/O at 0xd400 [0xd401]	not used
			I/O at 0xd800 [0xd801]	not used

			Board with Nm9715CV part
			I/O at 0xc000 [0xc001]	printer port 1
			I/O at 0xc400 [0xc401]	ECP/EPP config registers 1
			I/O at 0xc800 [0xc801]	printer port 2
			I/O at 0xd000 [0xd001]	ECP/EPP config registers 2
			I/O at 0xd400 [0xd401]	not used
			I/O at 0xd800 [0xd801]	not used

			Board with Nm9835CV part
			I/O at 0xc000 [0xc001]	not used
			I/O at 0xc400 [0xc401]	not used
			I/O at 0xc800 [0xc801]	printer port
			I/O at 0xd000 [0xd001]	ECP/EPP config registers
			I/O at 0xd400 [0xd401]	not used
			I/O at 0xd800 [0xd801]	not used

			Board with Nm9755CV part
			I/O at 0xc000 [0xc001]	printer port 1
			I/O at 0xc400 [0xc401]	ECP/EPP config registers 1
			I/O at 0xc800 [0xc801]	printer port 2
			I/O at 0xd000 [0xd001]	ECP/EPP config registers 2
			I/O at 0xd400 [0xd401]	not used
			I/O at 0xd800 [0xd801]	not used




Install 'parport' module

To load the generic 'parport' code

Type 			insmod parport.o
         
To load the architecture-dependent code to tell 'parport' code

			insmod parport_pc.o  io=0x378,0xc000,0xc800
			irq=7, irq=11, none
			
			or

			insmod parport_pc.o  io=0x378,0xc000,0xc800
			irq=7,11,none	
		
You have three PC-style ports, one at 0x378 with IRQ 7, one at
0xc000 with  IRQ11, one at 0xc800 with no IRQ.


Check the attached printer device [optional]

Once the architecture-dependent part of the paraport code is loaded into the kernel. You could enter the following command 

 			insmod parport_probe.o 

To check any attached devices and log a message similar to

			parport0: Printer, epson


Then 			/dev/lp0, /dev/lp1 and /dev/lp2 are ready for service
Ich bin aber weder gut genug in English oder in Linux diese Anleitung auch nur ansatzweise zu verstehen :(

Hat jemand eine Ahnung wie ich den Parallelport einschalten kann?
 

whois

Ultimate Guru
Hi

Mit welcher Fehlermeldung?
Wie sollen wir dir helfen wenn du das verschweigst?

BTW. http://uebersetzer.abacho.de/



cu
 
OP
B

Bigtux

Member
whois schrieb:
Hi

Mit welcher Fehlermeldung?
Wie sollen wir dir helfen wenn du das verschweigst?

BTW. http://uebersetzer.abacho.de/



cu

upps, ich dachte ich hätte es im code Bereich gehabt.
Sorry.

Gebe ich als root
Code:
more /proc/pci
ein, erhalte ich nur eine Fehlermeldung:
Code:
/proc/pci: Datei oder Verzeichnis nicht gefunden

Danke für den Abacho-Tip, bisher nutze ich immer "Leo" für Einzelwörter, aber bei diversen Computerbegriffen ist leider oft Fehlanzeige.
 
OP
B

Bigtux

Member
Code:
ls /proc
1     2211  3211  3483  3762  4346    buddyinfo    kallsyms    splash
1094  2231  3223  3492  3771  4347    bus          kcore       stat
1157  2294  3260  3510  3773  439     cmdline      keys        swaps
167   2295  3263  3554  3776  4390    config.gz    key-users   sys
168   2335  3265  3559  3784  485     cpuinfo      kmsg        sysrq-trigger
1773  2350  3273  3578  3786  486     crypto       loadavg     sysvipc
1862  2351  3289  3580  3789  488     devices      locks       timer_list
1863  2365  3293  3587  3793  489     diskstats    mdstat      timer_stats
191   2373  3295  3588  3797  494     dma          meminfo     tty
192   2394  3296  3598  3803  495     driver       misc        uptime
1922  2396  3334  3687  3840  496     execdomains  modules     version
193   25    3391  3719  3885  497     fb           mounts      vmcore
194   26    3421  3721  3886  5       filesystems  mtrr        vmnet
2     27    3425  3722  3909  6       fs           net         vmstat
2179  2868  3453  3724  4     620     interrupts   partitions  zoneinfo
2184  3     3454  3726  4039  621     iomem        scsi
2198  3190  3458  3728  429   acpi    ioports      self
2201  3192  3476  3761  4328  asound  irq          slabinfo

Code:
 more /proc/acpi
ergibt nur die Meldung
Code:
*** /proc/acpi: Verzeichnis ***
jedoch keine Meldung wie in der Anleitung beschrieben.
 

misiu

Moderator
Teammitglied
Wahrscheinlich musst du nur einfach Parport aktivieren:
/etc/modprobe.conf
Abschnitt:
alias parport_lowlevel parport_pc
# options parport_pc io=0x378 irq=none,none
# If you have multiple parallel ports, specify them this way:
# options parport_pc io=0x378,0x278 irq=none,none
"#" rauslöschen vor
# options parport_pc io=0x378 irq=none,none
oder
# options parport_pc io=0x378,0x278 irq=none,none

Allerdings müssen ja die entsprechenden Adressenbereiche
und IRQ-s gesetzt werden:Zitat
To load the architecture-dependent code to tell 'parport' code

insmod parport_pc.o io=0x378,0xc000,0xc800
irq=7, irq=11, none

or

insmod parport_pc.o io=0x378,0xc000,0xc800
irq=7,11,none
Muss also der Abschnitt etwa so aussehen:
alias parport_lowlevel parport_pc
options parport_pc io=0x378,0xc000,0xc800 irq=7,11,none
# If you have multiple parallel ports, specify them this way:
# options parport_pc io=0x378,0x278 irq=none,none

Danach den Rechner neu starten, so dass alles richtig geladen wird.

Falls die Adressenbereiche "0xc000,0xc800"nicht funktionieren
musst du die entweder herausfinden oder einfach die von der
Herstelleranleitung durchprobieren.

MfG
misiu
 
OP
B

Bigtux

Member
Danke für die Antworten.


Ich habe jetzt in den Parport-Abschnitt die Zeilen:
Code:
alias parport_lowlevel parport_pc
options parport_pc io=0x378,0xc000,0xc800 irq=7,11,none
eingefügt.
Reicht das oder muß der "insserv"-Befehl ebenfalls ausgeführt werden?

In der /etc/modprobe.conf
stehen noch zwei andere Zeilen mit denen ich nichts anfangen kann:
Code:
########################################################################
# For parallel port devices, uncomment the following two lines and
# change "frpw" to the protocol type you use
########################################################################

# install paride /sbin/modprobe --ignore-install paride && { /sbin/modprobe --ignore-install frpw; }
# remove paride { /sbin/modprobe -r --ignore-remove frpw; } ; /sbin/modprobe -r --ignore-remove paride

Muß ich da auch noch etwas ändern?

Bisher sähe der abschnitt dann so aus:

Code:
########################################################################
# For parallel port devices, uncomment the following two lines and
# change "frpw" to the protocol type you use
########################################################################

# install paride /sbin/modprobe --ignore-install paride && { /sbin/modprobe --ignore-install frpw; }
# remove paride { /sbin/modprobe -r --ignore-remove frpw; } ; /sbin/modprobe -r --ignore-remove paride
 
########################################################################
# Options; these are examples; uncomment and modify the lines you need
########################################################################
alias parport_lowlevel parport_pc
options parport_pc io=0x378,0xc000,0xc800 irq=7,11,none
# options cdu31a         cdu31a_port=0x340 cdu31a_irq=0
 

misiu

Moderator
Teammitglied
Na dann Reboot und schauen, ob es geht.

Das mit dem:

########################################################################
# For parallel port devices, uncomment the following two lines and
# change "frpw" to the protocol type you use
########################################################################

# install paride /sbin/modprobe --ignore-install paride && { /sbin/modprobe --ignore-install frpw; }
# remove paride { /sbin/modprobe -r --ignore-remove frpw; } ; /sbin/modprobe -r --ignore-remove paride

Betrifft dich nicht.

MfG
misiu
 
OP
B

Bigtux

Member
Hallo!

Gibt es eine Möglichkeit die Funktion der Parallelschnitstelle zu testen, ohne angeschlossenen Drucker?
Dieser trifft leider erst morgen ein.

Ich habe zur Probe in einer VM-Maschine den Parallelport eingeschaltet.
Beim Start dieser Maschine erscheint eine Fehlermeldung, es sei keine Parallelschnittstelle gefunden worden und sie würde deshalb deaktiviert gestartet.

Wenn diese Meldung korrekt ist, so scheint es wohl nicht zu funktionieren :(
 
OP
B

Bigtux

Member
Ich habe in meiner Verzweiflung gerade Ubuntu "Gutsy Gibbon" als LiveCD gestartet.
Dort scheint ein Parallelportcontroller gefunden zu werden:


Stehen dort Informationen, die ich nutzen könnte um das Ding unter 10.3 laufen zu lassen?
 

misiu

Moderator
Teammitglied
Der Abbildung nach ist das 9835, das heißt , diese Adressenbereiche müssen Korrekt sein:
Board with Nm9835CV part
I/O at 0xc000 [0xc001] not used
I/O at 0xc400 [0xc401] not used
I/O at 0xc800 [0xc801] printer port
I/O at 0xd000 [0xd001] ECP/EPP config registers
I/O at 0xd400 [0xd401] not used
I/O at 0xd800 [0xd801] not used

Schau noch welchen IRQ nimmt Ubuntu.

VM kannst du vergessen, da muss zuerst Host richtig Parport unterstützen und auch dann kann es Probleme geben.

MfG
misiu
 
OP
B

Bigtux

Member
Es werden zwei Ports angezeigt.
Linux_device_file zeigt nur /dev/ttyS1 bzw. S2 an.
Wo kann ich die Irqs ablesen?
Ubuntu kenne ich bisher nicht tief genug.

Es müßten jedoch drei Anschlüsse sein.
Wie auf dem Screenshot zu sehen ist, sind dort nur zwei Eintrage.

Der Controller ist eine Mix-Karte mit 1xpar und 2xSer
http://www.delock.de/produkte/suche/1x_Parallel_UND_2x_Seriell_-_PCI_Karte_89004.html

Ich hoffe, Delock ist nicht so etwas wie "Hama" oder "Boeder" ;)
Falls die Karte nichts taugt, bitte Info, ich kann sie noch zurückgeben :)

Danke für die Hilfe.
 

misiu

Moderator
Teammitglied
jengelh schrieb:
Vergiß jegliche Installationshinweise - sind meistens völlllig veraltet.
Code:
grep parport /proc/ioports

Da kann ich zustimmen, die meisten Installationshinweise der Hersteller sind auf ältere Distributionen zugeschnitten oder
zu allgemein.
Die Ausgabe wäre nicht schlecht.
IRQ-s kannst du ähnlich auslesen, es kann sein dass du bei Ubuntu
vor jedem Befehl ein "sudo" setzen musst:
sudo cat /proc/interrupts
oder
sudo more /proc/interrupts

MfG
misiu
 
OP
B

Bigtux

Member
Habe den Befehl
Code:
 grep parport /proc/ioports
eingegeben.

Das Ergebnis sieht folgendermaßen aus:

Code:
grep parport /proc/ioports
0378-037a : parport0
b400-b402 : parport3
b403-b407 : parport3
c000-c002 : parport1
c010-c012 : parport2
 
OP
B

Bigtux

Member
Die IRQs nach dem Befehl
Code:
more /proc/interrupts
lauten
Code:
           CPU0
  0:        249   IO-APIC-edge      timer
  1:        313   IO-APIC-edge      i8042
  6:          5   IO-APIC-edge      floppy
  7:          1   IO-APIC-edge      parport0
  8:          2   IO-APIC-edge      rtc
  9:          0   IO-APIC-fasteoi   acpi
 11:          0   IO-APIC-edge      parport1
 12:      13155   IO-APIC-edge      i8042
 14:      90629   IO-APIC-edge      libata
 15:          0   IO-APIC-edge      libata
 16:      19754   IO-APIC-fasteoi   sata_nv
 17:     136049   IO-APIC-fasteoi   sata_nv, nvidia
 18:          0   IO-APIC-fasteoi   ohci_hcd:usb1
 19:          0   IO-APIC-fasteoi   ehci_hcd:usb2
 20:        382   IO-APIC-fasteoi   CMI8738-MC8
220:     185582   PCI-MSI-edge      eth0
NMI:          0
LOC:     247651
ERR:          1
MIS:          0
 
In /proc/interrupts stehen nur die Gerätetreiber, die auch gerade aktiv sind (es macht kein Sinn, Interrupts bei Serial oder Parallel anzuhaben, wenn keine Userspace-Anwendung drauf hört - öffne /dev/ttyS0 und du wirst sehen, dass in interrupts sich ein serial0 o.ä. wiederfindet). In ioports hingegen findest du die Belegung, die ein Modul in Anspruch nimmt. Und da ich dort parport0-3 sehe, ist doch alles ok (deutet auf Expansionskarten hin), denn wer hat schon 4 Parallelports by default.
 
OP
B

Bigtux

Member
Der Parallelport funktioniert.

Die Zeilen
Code:
alias parport_lowlevel parport_pc
options parport_pc io=0x378,0xc000,0xc010 irq=7,11,none
in der modprobe.conf aktivieren den Parallelport auf meiner Kart mit Nm9735CV-Chip.

Der seit heute angeschlossene Drucker wird in Yast erkannt unter der Adresse /dev/lp3 korrekt eingerichtet.

Leider erkennt VMware den Port immer noch nicht.
"Automatische Suche" schlägt bei der suche nach dem Port fehl.

Danke für eure Hilfe.
 

misiu

Moderator
Teammitglied
Bist du sicher, dass Parport in der Virtuellen Maschine selbst
aktiv ist , bzw. im BIOS der VM?

MfG
misiu
 
OP
B

Bigtux

Member
misiu schrieb:
Bist du sicher, dass Parport in der Virtuellen Maschine selbst
aktiv ist , bzw. im BIOS der VM?

MfG
misiu

Ich bekomme direkt nach Start der VM zwei Meldungen.

Zu jenem Zeitpunkt ist das Gastsystem noch gar nicht gebootet, bzw. noch kein Bios war zu sehen.

Wie in vielen Postings angeregt wurde habe ich "cups" kurzzeitig deaktiviert, allerdings ohne Erfolg.
 
Oben